summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--doc/cross-compilation.xml59
-rw-r--r--doc/languages-frameworks/python.md3
-rw-r--r--doc/languages-frameworks/rust.md4
-rw-r--r--lib/attrsets.nix19
-rw-r--r--lib/composable-derivation.nix4
-rw-r--r--lib/customisation.nix2
-rw-r--r--lib/default.nix14
-rw-r--r--lib/deprecated.nix4
-rw-r--r--lib/fetchers.nix2
-rw-r--r--lib/licenses.nix5
-rw-r--r--lib/lists.nix2
-rw-r--r--lib/maintainers.nix9
-rw-r--r--lib/modules.nix2
-rw-r--r--lib/platforms.nix24
-rw-r--r--lib/strings.nix4
-rw-r--r--lib/systems.nix126
-rw-r--r--lib/systems/default.nix23
-rw-r--r--lib/systems/doubles.nix44
-rw-r--r--lib/systems/parse.nix173
-rw-r--r--lib/systems/platforms.nix486
-rw-r--r--lib/tests.nix14
-rw-r--r--lib/tests/release.nix57
-rw-r--r--lib/tests/systems.nix31
-rw-r--r--lib/trivial.nix17
-rw-r--r--lib/types.nix2
-rw-r--r--maintainers/scripts/all-tarballs.nix2
-rw-r--r--nixos/doc/manual/release-notes/rl-1709.xml2
-rw-r--r--nixos/lib/test-driver/Machine.pm18
-rw-r--r--nixos/lib/testing.nix5
-rwxr-xr-xnixos/maintainers/scripts/gce/create-gce.sh28
-rw-r--r--nixos/modules/config/fonts/fontconfig-penultimate.nix2
-rw-r--r--nixos/modules/config/fonts/fontconfig-ultimate.nix10
-rw-r--r--nixos/modules/config/fonts/fontconfig.nix2
-rw-r--r--nixos/modules/config/fonts/fonts.nix1
-rw-r--r--nixos/modules/config/shells-environment.nix3
-rw-r--r--nixos/modules/hardware/all-firmware.nix1
-rw-r--r--nixos/modules/installer/tools/nixos-install.sh153
-rw-r--r--nixos/modules/installer/tools/nixos-prepare-root.sh105
-rw-r--r--nixos/modules/installer/tools/tools.nix13
-rw-r--r--nixos/modules/module-list.nix6
-rw-r--r--nixos/modules/programs/command-not-found/command-not-found.nix93
-rw-r--r--nixos/modules/programs/command-not-found/command-not-found.pl2
-rw-r--r--nixos/modules/programs/slock.nix26
-rw-r--r--nixos/modules/programs/ssmtp.nix45
-rw-r--r--nixos/modules/security/acme.nix9
-rw-r--r--nixos/modules/security/polkit.nix2
-rw-r--r--nixos/modules/services/audio/slimserver.nix69
-rw-r--r--nixos/modules/services/cluster/kubernetes.nix39
-rw-r--r--nixos/modules/services/continuous-integration/hydra/default.nix2
-rw-r--r--nixos/modules/services/databases/cassandra.nix8
-rw-r--r--nixos/modules/services/databases/mongodb.nix2
-rw-r--r--nixos/modules/services/hardware/bluetooth.nix31
-rw-r--r--nixos/modules/services/hardware/tlp.nix3
-rw-r--r--nixos/modules/services/logging/graylog.nix5
-rw-r--r--nixos/modules/services/misc/autorandr.nix43
-rw-r--r--nixos/modules/services/misc/bepasty.nix36
-rw-r--r--nixos/modules/services/misc/cgminer.nix2
-rwxr-xr-xnixos/modules/services/misc/confd.nix2
-rw-r--r--nixos/modules/services/misc/etcd.nix2
-rw-r--r--nixos/modules/services/misc/matrix-synapse.nix25
-rw-r--r--nixos/modules/services/misc/nix-daemon.nix4
-rw-r--r--nixos/modules/services/misc/plex.nix5
-rw-r--r--nixos/modules/services/misc/taskserver/default.nix2
-rw-r--r--nixos/modules/services/monitoring/collectd.nix2
-rw-r--r--nixos/modules/services/monitoring/grafana.nix12
-rw-r--r--nixos/modules/services/monitoring/graphite.nix2
-rw-r--r--nixos/modules/services/monitoring/prometheus/default.nix9
-rw-r--r--nixos/modules/services/network-filesystems/netatalk.nix2
-rw-r--r--nixos/modules/services/network-filesystems/samba.nix2
-rw-r--r--nixos/modules/services/network-filesystems/tahoe.nix6
-rw-r--r--nixos/modules/services/networking/aiccu.nix15
-rw-r--r--nixos/modules/services/networking/avahi-daemon.nix34
-rw-r--r--nixos/modules/services/networking/btsync.nix9
-rw-r--r--nixos/modules/services/networking/dhcpcd.nix3
-rw-r--r--nixos/modules/services/networking/firefox/sync-server.nix2
-rw-r--r--nixos/modules/services/networking/i2pd.nix20
-rw-r--r--nixos/modules/services/networking/ircd-hybrid/default.nix2
-rw-r--r--nixos/modules/services/networking/keepalived/default.nix245
-rw-r--r--nixos/modules/services/networking/keepalived/virtual-ip-options.nix50
-rw-r--r--nixos/modules/services/networking/keepalived/vrrp-options.nix121
-rw-r--r--nixos/modules/services/networking/mosquitto.nix2
-rw-r--r--nixos/modules/services/networking/murmur.nix10
-rw-r--r--nixos/modules/services/networking/networkmanager.nix7
-rw-r--r--nixos/modules/services/networking/prosody.nix4
-rw-r--r--nixos/modules/services/networking/searx.nix15
-rw-r--r--nixos/modules/services/networking/smokeping.nix7
-rw-r--r--nixos/modules/services/networking/ssh/sshd.nix2
-rw-r--r--nixos/modules/services/networking/sslh.nix2
-rw-r--r--nixos/modules/services/networking/znc.nix2
-rw-r--r--nixos/modules/services/scheduling/fcron.nix8
-rw-r--r--nixos/modules/services/security/oauth2_proxy.nix17
-rw-r--r--nixos/modules/services/system/earlyoom.nix96
-rw-r--r--nixos/modules/services/torrent/transmission.nix3
-rw-r--r--nixos/modules/services/web-apps/atlassian/crowd.nix2
-rw-r--r--nixos/modules/services/web-apps/quassel-webserver.nix4
-rw-r--r--nixos/modules/services/web-apps/tt-rss.nix2
-rw-r--r--nixos/modules/services/web-servers/lighttpd/gitweb.nix3
-rw-r--r--nixos/modules/services/x11/compton.nix4
-rw-r--r--nixos/modules/services/x11/display-managers/default.nix10
-rw-r--r--nixos/modules/services/x11/display-managers/sddm.nix2
-rw-r--r--nixos/modules/services/x11/hardware/multitouch.nix2
-rw-r--r--nixos/modules/services/x11/unclutter.nix5
-rw-r--r--nixos/modules/services/x11/window-managers/default.nix1
-rw-r--r--nixos/modules/services/x11/window-managers/fvwm.nix41
-rw-r--r--nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py2
-rw-r--r--nixos/modules/system/boot/luksroot.nix51
-rw-r--r--nixos/modules/system/boot/readonly-mountpoint.c20
-rw-r--r--nixos/modules/system/boot/stage-2-init.sh68
-rw-r--r--nixos/modules/system/boot/stage-2.nix19
-rw-r--r--nixos/modules/system/boot/systemd-lib.nix2
-rw-r--r--nixos/modules/system/boot/systemd.nix3
-rw-r--r--nixos/modules/tasks/filesystems.nix2
-rw-r--r--nixos/modules/tasks/network-interfaces-scripted.nix35
-rw-r--r--nixos/modules/tasks/powertop.nix27
-rw-r--r--nixos/modules/virtualisation/amazon-image.nix6
-rw-r--r--nixos/modules/virtualisation/amazon-options.nix10
-rw-r--r--nixos/modules/virtualisation/google-compute-image.nix9
-rw-r--r--nixos/release.nix2
-rw-r--r--nixos/tests/installer.nix18
-rw-r--r--nixos/tests/postgresql.nix62
-rw-r--r--pkgs/applications/altcoins/default.nix4
-rw-r--r--pkgs/applications/altcoins/ethabi.nix10
-rw-r--r--pkgs/applications/altcoins/ethrun.nix24
-rw-r--r--pkgs/applications/altcoins/hivemind.nix39
-rw-r--r--pkgs/applications/audio/abcde/default.nix4
-rw-r--r--pkgs/applications/audio/guitarix/default.nix4
-rw-r--r--pkgs/applications/audio/mopidy/default.nix2
-rw-r--r--pkgs/applications/audio/spotify/default.nix29
-rw-r--r--pkgs/applications/audio/x42-plugins/default.nix4
-rw-r--r--pkgs/applications/audio/yasr/default.nix10
-rw-r--r--pkgs/applications/editors/atom/default.nix4
-rw-r--r--pkgs/applications/editors/atom/env.nix1
-rw-r--r--pkgs/applications/editors/brackets/default.nix41
-rw-r--r--pkgs/applications/editors/emacs-modes/elpa-generated.nix34
-rw-r--r--pkgs/applications/editors/emacs-modes/melpa-generated.nix4420
-rw-r--r--pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix1657
-rw-r--r--pkgs/applications/editors/jetbrains/common.nix (renamed from pkgs/applications/editors/idea/common.nix)4
-rw-r--r--pkgs/applications/editors/jetbrains/default.nix (renamed from pkgs/applications/editors/idea/default.nix)273
-rw-r--r--pkgs/applications/editors/jucipp/default.nix73
-rw-r--r--pkgs/applications/editors/kakoune/default.nix19
-rw-r--r--pkgs/applications/editors/lighttable/default.nix2
-rw-r--r--pkgs/applications/editors/nano/default.nix14
-rw-r--r--pkgs/applications/editors/texstudio/default.nix9
-rw-r--r--pkgs/applications/editors/textadept/default.nix21
-rw-r--r--pkgs/applications/editors/vscode/default.nix45
-rw-r--r--pkgs/applications/graphics/darktable/default.nix4
-rw-r--r--pkgs/applications/graphics/digikam/default.nix3
-rw-r--r--pkgs/applications/graphics/djview/default.nix6
-rw-r--r--pkgs/applications/graphics/inkscape/default.nix7
-rw-r--r--pkgs/applications/graphics/shotwell/default.nix6
-rw-r--r--pkgs/applications/graphics/tesseract/4.x.nix61
-rw-r--r--pkgs/applications/graphics/tesseract/default.nix38
-rw-r--r--pkgs/applications/kde/default.nix1
-rw-r--r--pkgs/applications/kde/kolourpaint.nix28
-rw-r--r--pkgs/applications/misc/albert/default.nix4
-rw-r--r--pkgs/applications/misc/buku/default.nix11
-rw-r--r--pkgs/applications/misc/calibre/default.nix6
-rw-r--r--pkgs/applications/misc/dbvisualizer/default.nix12
-rw-r--r--pkgs/applications/misc/gammu/bashcomp-dir.patch17
-rw-r--r--pkgs/applications/misc/gammu/default.nix18
-rw-r--r--pkgs/applications/misc/gammu/systemd.patch30
-rw-r--r--pkgs/applications/misc/golden-cheetah/default.nix4
-rw-r--r--pkgs/applications/misc/gpsbabel/clang-4.patch22
-rw-r--r--pkgs/applications/misc/gpsbabel/default.nix14
-rw-r--r--pkgs/applications/misc/gpxsee/default.nix24
-rw-r--r--pkgs/applications/misc/hugo/default.nix4
-rw-r--r--pkgs/applications/misc/hugo/deps.nix339
-rw-r--r--pkgs/applications/misc/josm/default.nix4
-rw-r--r--pkgs/applications/misc/keepassx/community.nix4
-rw-r--r--pkgs/applications/misc/latte-dock/default.nix45
-rw-r--r--pkgs/applications/misc/polybar/default.nix6
-rw-r--r--pkgs/applications/misc/robomongo/default.nix86
-rw-r--r--pkgs/applications/misc/robomongo/robomongo.patch61
-rw-r--r--pkgs/applications/misc/tint2/default.nix4
-rw-r--r--pkgs/applications/misc/verbiste/default.nix24
-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/firefox-bin/default.nix1
-rw-r--r--pkgs/applications/networking/browsers/firefox/default.nix38
-rw-r--r--pkgs/applications/networking/browsers/google-chrome/default.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/qutebrowser/default.nix9
-rw-r--r--pkgs/applications/networking/browsers/torbrowser/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/vivaldi/default.nix11
-rw-r--r--pkgs/applications/networking/cluster/minikube/default.nix19
-rw-r--r--pkgs/applications/networking/cluster/panamax/api/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/terraform/default.nix22
-rw-r--r--pkgs/applications/networking/cluster/terragrunt/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/terragrunt/deps.nix18
-rw-r--r--pkgs/applications/networking/davmail/default.nix32
-rw-r--r--pkgs/applications/networking/droopy/default.nix2
-rw-r--r--pkgs/applications/networking/dropbox/default.nix13
-rw-r--r--pkgs/applications/networking/feedreaders/rss2email/default.nix29
-rw-r--r--pkgs/applications/networking/gdrive/default.nix24
-rw-r--r--pkgs/applications/networking/instant-messengers/dino/default.nix62
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/carbons/default.nix25
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-facebook/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/quaternion/default.nix47
-rw-r--r--pkgs/applications/networking/instant-messengers/tensor/default.nix55
-rw-r--r--pkgs/applications/networking/mailreaders/astroid/default.nix10
-rw-r--r--pkgs/applications/networking/mailreaders/astroid/propagate-environment.patch13
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/default.nix5
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/default.nix9
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/mutt.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix14
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix476
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/default.nix156
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/gcc6.patch75
-rw-r--r--pkgs/applications/networking/mumble/default.nix6
-rw-r--r--pkgs/applications/networking/remote/teamviewer/default.nix14
-rw-r--r--pkgs/applications/networking/syncthing/default.nix4
-rw-r--r--pkgs/applications/office/beancount/default.nix4
-rw-r--r--pkgs/applications/office/fava/default.nix14
-rw-r--r--pkgs/applications/science/biology/diamond/default.nix41
-rw-r--r--pkgs/applications/science/biology/diamond/diamond-0.8.36-no-warning.patch20
-rw-r--r--pkgs/applications/science/biology/platypus/default.nix2
-rw-r--r--pkgs/applications/science/misc/simgrid/default.nix17
-rw-r--r--pkgs/applications/version-management/git-and-tools/default.nix8
-rw-r--r--pkgs/applications/version-management/git-and-tools/ghq/default.nix33
-rw-r--r--pkgs/applications/version-management/git-and-tools/ghq/deps.nix38
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-open/default.nix32
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-recent/default.nix41
-rw-r--r--pkgs/applications/version-management/git-and-tools/tig/default.nix31
-rw-r--r--pkgs/applications/version-management/git-and-tools/transcrypt/default.nix4
-rw-r--r--pkgs/applications/version-management/git-lfs/default.nix31
-rw-r--r--pkgs/applications/version-management/gitkraken/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix6
-rw-r--r--pkgs/applications/version-management/mercurial/default.nix4
-rw-r--r--pkgs/applications/version-management/pijul/default.nix6
-rw-r--r--pkgs/applications/version-management/tortoisehg/default.nix4
-rw-r--r--pkgs/applications/video/handbrake/default.nix11
-rw-r--r--pkgs/applications/video/kodi/default.nix13
-rw-r--r--pkgs/applications/video/openshot-qt/default.nix40
-rw-r--r--pkgs/applications/video/openshot-qt/libopenshot.nix4
-rw-r--r--pkgs/applications/video/streamlink/default.nix12
-rw-r--r--pkgs/applications/video/vlc/default.nix21
-rw-r--r--pkgs/applications/virtualization/docker-distribution/default.nix4
-rw-r--r--pkgs/applications/virtualization/docker/default.nix266
-rw-r--r--pkgs/applications/window-managers/fvwm/default.nix1
-rw-r--r--pkgs/applications/window-managers/i3/default.nix2
-rw-r--r--pkgs/applications/window-managers/ratpoison/default.nix17
-rw-r--r--pkgs/applications/window-managers/spectrwm/default.nix5
-rw-r--r--pkgs/applications/window-managers/sway/default.nix7
-rw-r--r--pkgs/applications/window-managers/trayer/default.nix12
-rw-r--r--pkgs/build-support/build-fhs-userenv/env.nix5
-rw-r--r--pkgs/build-support/buildenv/default.nix4
-rw-r--r--pkgs/build-support/docker/default.nix15
-rw-r--r--pkgs/build-support/fetchurl/default.nix2
-rw-r--r--pkgs/build-support/rust/default.nix23
-rwxr-xr-xpkgs/build-support/rust/fetch-cargo-deps32
-rw-r--r--pkgs/data/fonts/comic-relief/default.nix2
-rw-r--r--pkgs/data/fonts/envypn-font/default.nix36
-rw-r--r--pkgs/data/fonts/fontconfig-penultimate/default.nix4
-rw-r--r--pkgs/data/fonts/iosevka/default.nix4
-rw-r--r--pkgs/data/fonts/source-han-sans/default.nix5
-rw-r--r--pkgs/data/fonts/source-han-serif/default.nix59
-rw-r--r--pkgs/data/icons/elementary-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/hicolor-icon-theme/default.nix2
-rw-r--r--pkgs/data/misc/iana-etc/default.nix9
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/adwaita-icon-theme/default.nix2
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/baobab/default.nix17
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/gnome-keyring/default.nix13
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/gnome-settings-daemon/default.nix12
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/gtksourceview/default.nix2
-rw-r--r--pkgs/desktops/gnome-3/3.22/misc/gitg/default.nix9
-rw-r--r--pkgs/desktops/gnome-3/3.22/misc/gitg/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/3.22/misc/libgit2-glib/src.nix6
-rw-r--r--pkgs/desktops/mate/mate-icon-theme/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-themes/default.nix8
-rw-r--r--pkgs/desktops/plasma-5/plasma-nm/0002-openvpn-binary-path.patch13
-rw-r--r--pkgs/desktops/plasma-5/plasma-nm/default.nix7
-rw-r--r--pkgs/desktops/xfce/art/xfwm4-themes.nix21
-rw-r--r--pkgs/desktops/xfce/default.nix1
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin.nix4
-rw-r--r--pkgs/development/beam-modules/build-rebar3.nix2
-rwxr-xr-xpkgs/development/compilers/arm-frc-linux-gnueabi-gcc/default.nix98
-rwxr-xr-xpkgs/development/compilers/arm-frc-linux-gnueabi-gcc/minorSOname.patch49
-rwxr-xr-xpkgs/development/compilers/arm-frc-linux-gnueabi-gcc/no-nested-deprecated-warnings.patch22
-rw-r--r--pkgs/development/compilers/cmucl/binary.nix4
-rw-r--r--pkgs/development/compilers/dale/default.nix37
-rw-r--r--pkgs/development/compilers/dtc/default.nix4
-rw-r--r--pkgs/development/compilers/elm/packages/elm-format.nix3
-rw-r--r--pkgs/development/compilers/emscripten-fastcomp/default.nix6
-rw-r--r--pkgs/development/compilers/emscripten/default.nix4
-rw-r--r--pkgs/development/compilers/fsharp41/default.nix87
-rw-r--r--pkgs/development/compilers/gcc/6/darwin-const-correct.patch25
-rw-r--r--pkgs/development/compilers/gcc/6/default.nix3
-rw-r--r--pkgs/development/compilers/gcc/snapshot/default.nix4
-rw-r--r--pkgs/development/compilers/ghcjs/base.nix3
-rw-r--r--pkgs/development/compilers/ghcjs/head.nix2
-rw-r--r--pkgs/development/compilers/ghcjs/stage2.nix1
-rw-r--r--pkgs/development/compilers/glslang/default.nix11
-rw-r--r--pkgs/development/compilers/glslang/install-headers.patch35
-rw-r--r--pkgs/development/compilers/halvm/2.4.0.nix10
-rw-r--r--pkgs/development/compilers/llvm/4/default.nix4
-rw-r--r--pkgs/development/compilers/ocaml/4.04.nix4
-rw-r--r--pkgs/development/compilers/openjdk/8.nix20
-rw-r--r--pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix6
-rw-r--r--pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix6
-rw-r--r--pkgs/development/compilers/ponyc/default.nix4
-rw-r--r--pkgs/development/compilers/purescript/psc-package/default.nix26
-rw-r--r--pkgs/development/compilers/rust/cargo.nix6
-rw-r--r--pkgs/development/compilers/sbcl/1.2.5.nix84
-rw-r--r--pkgs/development/compilers/sbcl/bootstrap.nix9
-rw-r--r--pkgs/development/compilers/sbcl/default.nix4
-rw-r--r--pkgs/development/compilers/scala/2.11.nix4
-rw-r--r--pkgs/development/compilers/scala/default.nix4
-rw-r--r--pkgs/development/guile-modules/guile-sdl2/default.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix59
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-6.12.x.nix2
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-7.0.x.nix1
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix12
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-7.2.x.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-7.4.x.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-7.6.x.nix11
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix13
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-head.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-ghcjs.nix10
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml259
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix5
-rw-r--r--pkgs/development/haskell-modules/default.nix102
-rw-r--r--pkgs/development/haskell-modules/generic-builder.nix15
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix5980
-rw-r--r--pkgs/development/haskell-modules/lib.nix7
-rw-r--r--pkgs/development/haskell-modules/make-package-set.nix107
-rw-r--r--pkgs/development/haskell-modules/patches/hdbus-semicolons.patch34
-rw-r--r--pkgs/development/interpreters/hy/default.nix7
-rw-r--r--pkgs/development/interpreters/octave/default.nix8
-rw-r--r--pkgs/development/interpreters/octave/hg.nix75
-rw-r--r--pkgs/development/interpreters/picolisp/default.nix4
-rw-r--r--pkgs/development/interpreters/python/catch_conflicts/README.md13
-rw-r--r--pkgs/development/interpreters/python/catch_conflicts/catch_conflicts.py (renamed from pkgs/development/interpreters/python/catch_conflicts.py)0
-rw-r--r--pkgs/development/interpreters/python/cpython/3.6/default.nix12
-rw-r--r--pkgs/development/interpreters/python/mk-python-derivation.nix9
-rw-r--r--pkgs/development/interpreters/ruby/default.nix30
-rw-r--r--pkgs/development/interpreters/ruby/patchsets.nix23
-rw-r--r--pkgs/development/interpreters/ruby/rvm-patchsets.nix6
-rw-r--r--pkgs/development/java-modules/build-maven-package.nix2
-rw-r--r--pkgs/development/libraries/NSPlist/default.nix21
-rw-r--r--pkgs/development/libraries/PlistCpp/default.nix22
-rwxr-xr-xpkgs/development/libraries/arm-frc-linux-gnueabi-eglibc/default.nix65
-rwxr-xr-xpkgs/development/libraries/arm-frc-linux-gnueabi-linux-api-headers/default.nix43
-rw-r--r--pkgs/development/libraries/aspell/default.nix27
-rw-r--r--pkgs/development/libraries/at-spi2-core/default.nix4
-rw-r--r--pkgs/development/libraries/botan/generic.nix4
-rw-r--r--pkgs/development/libraries/ffmpeg-full/default.nix8
-rw-r--r--pkgs/development/libraries/gdbm/default.nix4
-rw-r--r--pkgs/development/libraries/gdk-pixbuf/default.nix4
-rw-r--r--pkgs/development/libraries/geoclue/2.0.nix22
-rw-r--r--pkgs/development/libraries/git2/default.nix4
-rw-r--r--pkgs/development/libraries/glfw/3.x.nix3
-rw-r--r--pkgs/development/libraries/glibc/common.nix3
-rw-r--r--pkgs/development/libraries/glibc/fix-i686-memchr.patch23
-rw-r--r--pkgs/development/libraries/gmp/6.x.nix4
-rw-r--r--pkgs/development/libraries/gnutls/3.5.10.nix10
-rw-r--r--pkgs/development/libraries/gnutls/3.5.nix12
-rw-r--r--pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch9
-rw-r--r--pkgs/development/libraries/gtk+/3.x.nix4
-rw-r--r--pkgs/development/libraries/gtk-mac-integration/default.nix7
-rw-r--r--pkgs/development/libraries/hidapi/default.nix8
-rw-r--r--pkgs/development/libraries/hivex/default.nix4
-rw-r--r--pkgs/development/libraries/hivex/hivex-syms.patch6
-rw-r--r--pkgs/development/libraries/itk/default.nix15
-rw-r--r--pkgs/development/libraries/leptonica/default.nix36
-rw-r--r--pkgs/development/libraries/libbap/default.nix29
-rw-r--r--pkgs/development/libraries/libbsd/darwin.patch675
-rw-r--r--pkgs/development/libraries/libbsd/default.nix10
-rw-r--r--pkgs/development/libraries/libdrm/default.nix4
-rw-r--r--pkgs/development/libraries/libgudev/default.nix18
-rw-r--r--pkgs/development/libraries/libguestfs/default.nix29
-rw-r--r--pkgs/development/libraries/libguestfs/libguestfs-syms.patch8
-rw-r--r--pkgs/development/libraries/libiconv/default.nix5
-rw-r--r--pkgs/development/libraries/liblastfm/default.nix4
-rw-r--r--pkgs/development/libraries/libpng/default.nix4
-rw-r--r--pkgs/development/libraries/libproxy/default.nix10
-rw-r--r--pkgs/development/libraries/libpst/default.nix4
-rw-r--r--pkgs/development/libraries/libqtav/default.nix63
-rw-r--r--pkgs/development/libraries/libressl/2.5.nix4
-rw-r--r--pkgs/development/libraries/libsigsegv/aarch64.patch12
-rw-r--r--pkgs/development/libraries/libsigsegv/default.nix13
-rw-r--r--pkgs/development/libraries/libsndfile/default.nix4
-rw-r--r--pkgs/development/libraries/libvirt/default.nix5
-rw-r--r--pkgs/development/libraries/libx86emu/default.nix4
-rw-r--r--pkgs/development/libraries/lzo/default.nix4
-rw-r--r--pkgs/development/libraries/mapnik/default.nix6
-rw-r--r--pkgs/development/libraries/mesa/default.nix6
-rw-r--r--pkgs/development/libraries/mlt/default.nix4
-rw-r--r--pkgs/development/libraries/neardal/default.nix2
-rw-r--r--pkgs/development/libraries/nix-plugins/default.nix20
-rw-r--r--pkgs/development/libraries/nss/default.nix6
-rw-r--r--pkgs/development/libraries/opal/default.nix2
-rw-r--r--pkgs/development/libraries/oracle-instantclient/default.nix50
-rw-r--r--pkgs/development/libraries/pango/default.nix4
-rw-r--r--pkgs/development/libraries/podofo/default.nix8
-rw-r--r--pkgs/development/libraries/pugixml/default.nix3
-rw-r--r--pkgs/development/libraries/pugixml/no-long-long.patch19
-rw-r--r--pkgs/development/libraries/qt-5/5.6/qtbase/default.nix4
-rw-r--r--pkgs/development/libraries/qt-5/5.6/qtwebengine/default.nix32
-rw-r--r--pkgs/development/libraries/qt-5/5.8/default.nix8
-rw-r--r--pkgs/development/libraries/qt-5/5.8/qtbase/default.nix8
-rw-r--r--pkgs/development/libraries/qt-5/5.8/qtdeclarative/default.nix16
-rw-r--r--pkgs/development/libraries/qt-5/5.8/qtmacextras.nix10
-rw-r--r--pkgs/development/libraries/qt-5/5.8/qtmultimedia.nix11
-rw-r--r--pkgs/development/libraries/qt-5/5.8/qtsensors.nix4
-rw-r--r--pkgs/development/libraries/qt-5/5.8/qtserialport/default.nix6
-rw-r--r--pkgs/development/libraries/qt-5/5.8/qttools/cmake-paths.patch5
-rw-r--r--pkgs/development/libraries/qt-5/5.8/qttools/default.nix21
-rw-r--r--pkgs/development/libraries/qt-5/5.8/qtwebengine/default.nix29
-rw-r--r--pkgs/development/libraries/qt-5/5.8/qtwebkit/0004-icucore-darwin.patch11
-rw-r--r--pkgs/development/libraries/qt-5/5.8/qtwebkit/default.nix14
-rw-r--r--pkgs/development/libraries/safefile/default.nix30
-rw-r--r--pkgs/development/libraries/science/math/openblas/default.nix1
-rw-r--r--pkgs/development/libraries/science/math/suitesparse/4.2.nix2
-rw-r--r--pkgs/development/libraries/science/math/suitesparse/default.nix10
-rw-r--r--pkgs/development/libraries/usbredir/default.nix2
-rw-r--r--pkgs/development/libraries/vulkan-loader/default.nix7
-rw-r--r--pkgs/development/libraries/vulkan-loader/fallback-paths.patch52
-rw-r--r--pkgs/development/libraries/vulkan-loader/use-xdg-paths.patch322
-rw-r--r--pkgs/development/libraries/webkitgtk/2.14.nix58
-rw-r--r--pkgs/development/libraries/webkitgtk/PR-152650-2.patch62
-rw-r--r--pkgs/development/libraries/webkitgtk/PR-153138.patch26
-rw-r--r--pkgs/development/libraries/webkitgtk/PR-157554.patch33
-rw-r--r--pkgs/development/libraries/webkitgtk/PR-157574.patch62
-rw-r--r--pkgs/development/libraries/wiredtiger/default.nix7
-rw-r--r--pkgs/development/libraries/wxGTK-2.8/default.nix13
-rw-r--r--pkgs/development/libraries/wxGTK-2.9/default.nix9
-rw-r--r--pkgs/development/libraries/wxGTK-3.0/default.nix9
-rw-r--r--pkgs/development/libraries/wxsqlite3/default.nix10
-rw-r--r--pkgs/development/libraries/xbase/default.nix2
-rwxr-xr-xpkgs/development/lisp-modules/clwrapper/cl-wrapper.sh33
-rwxr-xr-xpkgs/development/lisp-modules/clwrapper/common-lisp.sh2
-rw-r--r--pkgs/development/lisp-modules/clwrapper/default.nix28
-rw-r--r--pkgs/development/lisp-modules/clwrapper/setup-hook.sh16
-rw-r--r--pkgs/development/lisp-modules/define-package.nix41
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-aliases.nix13
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd-ext-tables.nix29
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd-ext-wiki-links.nix29
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd-youtube.nix29
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/anaphora.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/array-utils.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/babel-streams.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/babel.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/blackbird.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/bordeaux-threads.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/caveman.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-examples.nix28
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-grovel.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-libffi.nix29
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-toolchain.nix28
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-uffi-compat.nix28
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/chipz.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/chunga.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/circular-streams.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl+ssl.nix21
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-aa.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-annot.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-anonfun.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ansi-text.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-base.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-repl.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-ssl.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-util.nix13
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-base64.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-colors.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-cookie.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-dbi.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-emb.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fad.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fuse-meta-fs.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fuse.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-json.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-l10n-cldr.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-l10n.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-libuv.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-markup.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-mysql.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-paths-ttf.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-postgres.nix21
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre-template.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre-unicode.nix33
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-project.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-reexport.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-smtp.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-store.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-annot.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-anonfun.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-markup.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-test-more.nix21
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-unicode.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-unification.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-utilities.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-vectors.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-who.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clack-v1-compat.nix30
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix24
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/closer-mop.nix19
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/closure-common.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clsql.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clss.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clx-truetype.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/clx.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/command-line-arguments.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/css-lite.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-dom.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-klacks.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-test.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-xml.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-mysql.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-postgres.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/dbd-sqlite3.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix29
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/do-urlencode.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/documentation-utils.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/drakma.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/esrap.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/external-program.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/fast-http.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/fast-io.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/flexi-streams.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/form-fiddle.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/http-body.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/hu.dwim.asdf.nix19
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/hu.dwim.def.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/hunchentoot.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/idna.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/iolib.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/iterate.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/jonathan.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-middleware-backtrace.nix37
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-util.nix38
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/lack.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/let-plus.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/lev.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/local-time.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/lquery.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/map-set.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/md5.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/metabang-bind.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/myway.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/named-readtables.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/nibbles.nix19
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/optima.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/parenscript.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/pcall.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/proc-parse.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/prove.nix21
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/puri.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/query-fs.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/quri.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/rfc2388.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/salza2.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/smart-buffer.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/split-sequence.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/sqlite.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/static-vectors.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix23
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/swap-bytes.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-backtrace.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-features.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-garbage.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-gray-streams.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-indent.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-mimes.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-types.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-utf-8.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/uffi.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/uiop.nix13
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/usocket.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/vom.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/woo.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/wookie.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/xmls.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/xsubseq.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/yason.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-output/zpb-ttf.nix9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-overrides.lisp1
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix55
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt12
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix.nix235
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix/nix-package.emb9
-rw-r--r--pkgs/development/lisp-modules/quicklisp-to-nix/top-package.emb5
-rw-r--r--pkgs/development/node-packages/node-packages-v4.nix2337
-rw-r--r--pkgs/development/node-packages/node-packages-v6.nix1892
-rw-r--r--pkgs/development/node-packages/node-packages.json1
-rw-r--r--pkgs/development/ocaml-modules/bap/default.nix62
-rw-r--r--pkgs/development/ocaml-modules/batteries/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/llvm/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/lwt/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/menhir/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/menhir/generic.nix2
-rw-r--r--pkgs/development/ocaml-modules/mtime/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/nocrypto/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/notty/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/ocaml-libvirt/default.nix20
-rw-r--r--pkgs/development/ocaml-modules/vg/default.nix14
-rw-r--r--pkgs/development/pharo/vm/build-vm.nix2
-rw-r--r--pkgs/development/pure-modules/octave/default.nix4
-rw-r--r--pkgs/development/python-modules/bap/default.nix23
-rw-r--r--pkgs/development/python-modules/csscompressor.nix20
-rw-r--r--pkgs/development/python-modules/distro/default.nix26
-rw-r--r--pkgs/development/python-modules/django/1_10.nix4
-rw-r--r--pkgs/development/python-modules/htmlmin.nix20
-rw-r--r--pkgs/development/python-modules/iso-639/default.nix19
-rw-r--r--pkgs/development/python-modules/iso3166/default.nix28
-rw-r--r--pkgs/development/python-modules/node-semver/default.nix21
-rw-r--r--pkgs/development/python-modules/phonenumbers/default.nix17
-rw-r--r--pkgs/development/python-modules/pluginbase/default.nix21
-rw-r--r--pkgs/development/python-modules/pyocr-tesseract.patch316
-rw-r--r--pkgs/development/python-modules/typeguard/default.nix38
-rw-r--r--pkgs/development/r-modules/default.nix3
-rw-r--r--pkgs/development/ruby-modules/gem-config/default.nix2
-rw-r--r--pkgs/development/tools/analysis/cppcheck/default.nix9
-rw-r--r--pkgs/development/tools/analysis/lcov/default.nix4
-rw-r--r--pkgs/development/tools/analysis/radare2/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/apache-maven/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/conan/default.nix28
-rw-r--r--pkgs/development/tools/build-managers/gradle/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/sbt/default.nix4
-rw-r--r--pkgs/development/tools/chefdk/Gemfile.lock386
-rw-r--r--pkgs/development/tools/chefdk/default.nix2
-rw-r--r--pkgs/development/tools/chefdk/gemset.nix1254
-rw-r--r--pkgs/development/tools/compile-daemon/default.nix25
-rw-r--r--pkgs/development/tools/compile-daemon/deps.nix48
-rw-r--r--pkgs/development/tools/continuous-integration/jenkins/default.nix4
-rw-r--r--pkgs/development/tools/coursier/default.nix12
-rw-r--r--pkgs/development/tools/electron/default.nix6
-rw-r--r--pkgs/development/tools/godot/default.nix4
-rwxr-xr-xpkgs/development/tools/misc/arm-frc-linux-gnueabi-binutils/default.nix50
-rw-r--r--pkgs/development/tools/misc/cwebbin/default.nix5
-rw-r--r--pkgs/development/tools/misc/hydra/default.nix1
-rw-r--r--pkgs/development/tools/misc/icon-naming-utils/default.nix2
-rw-r--r--pkgs/development/tools/misc/intel-gpu-tools/default.nix9
-rw-r--r--pkgs/development/tools/misc/pkgconfig/default.nix17
-rw-r--r--pkgs/development/tools/misc/pmccabe/default.nix6
-rw-r--r--pkgs/development/tools/misc/pmccabe/getopt_on_darwin.patch15
-rw-r--r--pkgs/development/tools/misc/strace/default.nix4
-rw-r--r--pkgs/development/tools/ocaml/jbuilder/default.nix6
-rw-r--r--pkgs/development/tools/pypi2nix/default.nix36
-rw-r--r--pkgs/development/tools/rq/default.nix49
-rw-r--r--pkgs/development/tools/rtags/default.nix12
-rw-r--r--pkgs/development/tools/rust/rustup/0001-use-hardcoded-dynamic-linker.patch75
-rw-r--r--pkgs/development/tools/rust/rustup/default.nix55
-rw-r--r--pkgs/development/tools/scalafmt/default.nix4
-rw-r--r--pkgs/development/tools/skopeo/default.nix9
-rw-r--r--pkgs/development/tools/skopeo/path.patch25
-rw-r--r--pkgs/development/tools/spirv-tools/default.nix13
-rw-r--r--pkgs/development/tools/unity3d/default.nix19
-rw-r--r--pkgs/development/tools/vogl/default.nix4
-rw-r--r--pkgs/development/tools/xcbuild/platform.nix81
-rw-r--r--pkgs/development/tools/xcbuild/toolchain.nix5
-rw-r--r--pkgs/development/tools/xib2nib/default.nix22
-rw-r--r--pkgs/development/web/nodejs/v7.nix4
-rw-r--r--pkgs/games/exult/default.nix2
-rw-r--r--pkgs/games/instead-launcher/default.nix32
-rw-r--r--pkgs/games/instead-launcher/path.patch39
-rw-r--r--pkgs/games/nethack/default.nix4
-rw-r--r--pkgs/games/steam/chrootenv.nix1
-rw-r--r--pkgs/games/steam/runtime-wrapped.nix1
-rw-r--r--pkgs/games/urbanterror/default.nix12
-rw-r--r--pkgs/misc/cups/default.nix7
-rw-r--r--pkgs/misc/cups/drivers/estudio/default.nix54
-rw-r--r--pkgs/misc/emulators/wine/sources.nix12
-rw-r--r--pkgs/misc/screensavers/slock/default.nix18
-rw-r--r--pkgs/misc/screensavers/xautolock/default.nix2
-rw-r--r--pkgs/misc/themes/flat-plat/default.nix11
-rw-r--r--pkgs/misc/themes/greybird/default.nix6
-rw-r--r--pkgs/misc/vim-plugins/default.nix6
-rw-r--r--pkgs/os-specific/darwin/apple-sdk/default.nix1
-rw-r--r--pkgs/os-specific/darwin/apple-source-releases/Libsystem/default.nix6
-rw-r--r--pkgs/os-specific/darwin/apple-source-releases/Libsystem/reexported_libraries41
-rw-r--r--pkgs/os-specific/darwin/cctools/ld-tbd-v2.patch98
-rw-r--r--pkgs/os-specific/darwin/cctools/port.nix10
-rw-r--r--pkgs/os-specific/darwin/cctools/undo-unknown-triple.patch17
-rw-r--r--pkgs/os-specific/darwin/install_name_tool/default.nix29
-rw-r--r--pkgs/os-specific/linux/blcr/default.nix6
-rw-r--r--pkgs/os-specific/linux/broadcom-sta/default.nix7
-rw-r--r--pkgs/os-specific/linux/broadcom-sta/linux-4.8.patch64
-rw-r--r--pkgs/os-specific/linux/firejail/default.nix8
-rw-r--r--pkgs/os-specific/linux/firejail/default.upstream2
-rw-r--r--pkgs/os-specific/linux/firmware/rtl8192su-firmware/default.nix36
-rw-r--r--pkgs/os-specific/linux/i2c-tools/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/common-config.nix5
-rw-r--r--pkgs/os-specific/linux/kernel/generate-config.pl3
-rw-r--r--pkgs/os-specific/linux/kernel/generic.nix3
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.10.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-grsecurity.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/patches.nix6
-rw-r--r--pkgs/os-specific/linux/kmod/default.nix7
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/default.nix10
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/fs52243.patch14
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/generic.nix18
-rw-r--r--pkgs/os-specific/linux/procps-ng/default.nix9
-rw-r--r--pkgs/os-specific/linux/sysdig/default.nix2
-rw-r--r--pkgs/os-specific/linux/tcp-wrappers/default.nix2
-rw-r--r--pkgs/os-specific/linux/wireguard/default.nix4
-rw-r--r--pkgs/servers/cayley/default.nix30
-rw-r--r--pkgs/servers/cayley/deps.nix272
-rw-r--r--pkgs/servers/consul/default.nix4
-rw-r--r--pkgs/servers/dns/knot-resolver/default.nix6
-rw-r--r--pkgs/servers/dns/nsd/default.nix4
-rw-r--r--pkgs/servers/emby/default.nix4
-rw-r--r--pkgs/servers/http/nginx/mainline.nix4
-rw-r--r--pkgs/servers/matrix-synapse/default.nix5
-rw-r--r--pkgs/servers/monitoring/sensu/Gemfile.lock33
-rw-r--r--pkgs/servers/monitoring/sensu/gemset.nix40
-rw-r--r--pkgs/servers/plex/default.nix17
-rw-r--r--pkgs/servers/radarr/default.nix4
-rw-r--r--pkgs/servers/shishi/default.nix7
-rw-r--r--pkgs/servers/slimserver/default.nix97
-rw-r--r--pkgs/servers/sonarr/default.nix4
-rw-r--r--pkgs/servers/unifi/default.nix4
-rw-r--r--pkgs/shells/lambda-mod-zsh-theme/default.nix30
-rw-r--r--pkgs/shells/rssh/default.nix2
-rw-r--r--pkgs/stdenv/darwin/default.nix24
-rw-r--r--pkgs/stdenv/darwin/make-bootstrap-tools.nix2
-rw-r--r--pkgs/stdenv/linux/bootstrap-files/armv5tel.nix8
-rw-r--r--pkgs/stdenv/linux/bootstrap-files/armv6l.nix8
-rw-r--r--pkgs/stdenv/linux/bootstrap-files/armv7l.nix8
-rw-r--r--pkgs/stdenv/linux/make-bootstrap-tools-cross.nix3
-rw-r--r--pkgs/stdenv/linux/make-bootstrap-tools.nix2
-rw-r--r--pkgs/tools/X11/xpra/default.nix8
-rw-r--r--pkgs/tools/admin/google-cloud-sdk/default.nix8
-rw-r--r--pkgs/tools/archivers/p7zip/default.nix8
-rw-r--r--pkgs/tools/archivers/sharutils/default.nix22
-rw-r--r--pkgs/tools/audio/darkice/default.nix2
-rw-r--r--pkgs/tools/audio/glyr/default.nix31
-rw-r--r--pkgs/tools/audio/mpdris2/default.nix4
-rw-r--r--pkgs/tools/backup/bup/default.nix6
-rw-r--r--pkgs/tools/compression/advancecomp/default.nix2
-rw-r--r--pkgs/tools/compression/brotli/default.nix4
-rw-r--r--pkgs/tools/compression/upx/default.nix35
-rw-r--r--pkgs/tools/compression/xz/default.nix4
-rw-r--r--pkgs/tools/compression/zstdmt/default.nix4
-rw-r--r--pkgs/tools/filesystems/bonnie/bonnie-homebrew.patch157
-rw-r--r--pkgs/tools/filesystems/bonnie/default.nix10
-rw-r--r--pkgs/tools/filesystems/ceph/generic.nix9
-rw-r--r--pkgs/tools/filesystems/dosfstools/default.nix10
-rw-r--r--pkgs/tools/filesystems/f2fs-tools/default.nix15
-rw-r--r--pkgs/tools/filesystems/gcsfuse/default.nix2
-rw-r--r--pkgs/tools/filesystems/glusterfs/default.nix6
-rw-r--r--pkgs/tools/filesystems/mtools/UNUSED-darwin.patch11
-rw-r--r--pkgs/tools/filesystems/mtools/default.nix9
-rw-r--r--pkgs/tools/filesystems/ntfs-3g/default.nix4
-rw-r--r--pkgs/tools/graphics/asymptote/default.nix8
-rw-r--r--pkgs/tools/graphics/epstool/default.nix25
-rw-r--r--pkgs/tools/graphics/epstool/gcc43.patch20
-rw-r--r--pkgs/tools/graphics/flam3/default.nix2
-rw-r--r--pkgs/tools/graphics/icoutils/default.nix4
-rw-r--r--pkgs/tools/misc/autorandr/default.nix42
-rw-r--r--pkgs/tools/misc/buildtorrent/default.nix19
-rw-r--r--pkgs/tools/misc/clac/default.nix30
-rw-r--r--pkgs/tools/misc/coreutils/default.nix2
-rw-r--r--pkgs/tools/misc/exa/default.nix48
-rw-r--r--pkgs/tools/misc/fzf/default.nix4
-rw-r--r--pkgs/tools/misc/fzf/deps.nix8
-rw-r--r--pkgs/tools/misc/keychain/default.nix7
-rw-r--r--pkgs/tools/misc/less/default.nix4
-rw-r--r--pkgs/tools/misc/mktorrent/default.nix18
-rw-r--r--pkgs/tools/misc/osm2pgsql/default.nix28
-rw-r--r--pkgs/tools/misc/picocom/default.nix4
-rw-r--r--pkgs/tools/misc/rrdtool/default.nix4
-rw-r--r--pkgs/tools/misc/scanmem/default.nix2
-rw-r--r--pkgs/tools/misc/units/default.nix4
-rw-r--r--pkgs/tools/misc/yle-dl/default.nix4
-rw-r--r--pkgs/tools/misc/youtube-dl/default.nix4
-rw-r--r--pkgs/tools/networking/cjdns/default.nix10
-rw-r--r--pkgs/tools/networking/dropbear/default.nix10
-rw-r--r--pkgs/tools/networking/inetutils/default.nix10
-rw-r--r--pkgs/tools/networking/inetutils/service-name.patch11
-rw-r--r--pkgs/tools/networking/iperf/3.nix4
-rw-r--r--pkgs/tools/networking/jwhois/default.nix2
-rw-r--r--pkgs/tools/networking/jwhois/service-name.patch17
-rw-r--r--pkgs/tools/networking/lftp/default.nix4
-rw-r--r--pkgs/tools/networking/netcat-openbsd/default.nix4
-rw-r--r--pkgs/tools/networking/network-manager-applet/default.nix13
-rw-r--r--pkgs/tools/networking/network-manager/PppdPath.patch8
-rw-r--r--pkgs/tools/networking/network-manager/default.nix36
-rw-r--r--pkgs/tools/networking/network-manager/l2tp.nix6
-rw-r--r--pkgs/tools/networking/ntp/default.nix4
-rw-r--r--pkgs/tools/networking/ntp/seccomp.patch44
-rw-r--r--pkgs/tools/networking/nuttcp/default.nix2
-rw-r--r--pkgs/tools/networking/openssh/default.nix39
-rw-r--r--pkgs/tools/networking/openvpn/default.nix2
-rw-r--r--pkgs/tools/networking/openvpn/systemd-notify.patch22
-rw-r--r--pkgs/tools/networking/speedtest-cli/default.nix4
-rw-r--r--pkgs/tools/networking/ssmtp/default.nix9
-rw-r--r--pkgs/tools/networking/ssmtp/ssmtp_support_AuthPassFile_parameter.patch69
-rw-r--r--pkgs/tools/networking/strongswan/default.nix4
-rw-r--r--pkgs/tools/networking/stunnel/default.nix4
-rw-r--r--pkgs/tools/networking/zerotierone/default.nix4
-rw-r--r--pkgs/tools/package-management/cargo-edit/default.nix27
-rw-r--r--pkgs/tools/package-management/nix/default.nix56
-rw-r--r--pkgs/tools/package-management/rpm/default.nix17
-rw-r--r--pkgs/tools/package-management/rpm/rpm-4.13.0.1-bfd-config.patch11
-rw-r--r--pkgs/tools/security/ecryptfs/helper.nix2
-rw-r--r--pkgs/tools/security/gnupg/1compat.nix1
-rw-r--r--pkgs/tools/security/gnupg/21.nix4
-rw-r--r--pkgs/tools/security/nitrokey-app/FixInstallDestination.patch54
-rw-r--r--pkgs/tools/security/nitrokey-app/default.nix16
-rw-r--r--pkgs/tools/security/pass/default.nix3
-rw-r--r--pkgs/tools/security/pass/set-correct-program-name-for-sleep.patch69
-rw-r--r--pkgs/tools/security/pinentry-mac/default.nix18
-rw-r--r--pkgs/tools/system/fio/default.nix4
-rw-r--r--pkgs/tools/system/hwinfo/default.nix2
-rw-r--r--pkgs/tools/system/logcheck/default.nix2
-rw-r--r--pkgs/tools/system/pciutils/default.nix6
-rw-r--r--pkgs/tools/system/pciutils/module-dir.diff23
-rw-r--r--pkgs/tools/system/safecopy/default.nix2
-rw-r--r--pkgs/tools/text/fanficfare/default.nix23
-rw-r--r--pkgs/tools/text/gawk/default.nix9
-rw-r--r--pkgs/tools/text/kdiff3/default.nix13
-rw-r--r--pkgs/tools/text/patchutils/default.nix6
-rw-r--r--pkgs/tools/text/patchutils/drop-comments.patch84
-rwxr-xr-xpkgs/tools/typesetting/lout/builder.sh2
-rw-r--r--pkgs/tools/video/atomicparsley/casts.patch38
-rw-r--r--pkgs/tools/video/atomicparsley/default.nix35
-rw-r--r--pkgs/top-level/aliases.nix1
-rw-r--r--pkgs/top-level/all-packages.nix281
-rw-r--r--pkgs/top-level/default.nix16
-rw-r--r--pkgs/top-level/dotnet-packages.nix77
-rw-r--r--pkgs/top-level/ocaml-packages.nix2
-rw-r--r--pkgs/top-level/perl-packages.nix175
-rw-r--r--pkgs/top-level/platforms.nix493
-rw-r--r--pkgs/top-level/pure-packages.nix4
-rw-r--r--pkgs/top-level/python-packages.nix90
-rw-r--r--pkgs/top-level/release-cross.nix24
-rw-r--r--pkgs/top-level/release-lib.nix18
-rw-r--r--pkgs/top-level/release-python.nix4
-rw-r--r--pkgs/top-level/release-small.nix2
-rw-r--r--pkgs/top-level/release.nix30
-rw-r--r--pkgs/top-level/rust-packages.nix8
845 files changed, 23968 insertions, 12256 deletions
diff --git a/doc/cross-compilation.xml b/doc/cross-compilation.xml
index 8e981a4318e..06a8919c2a1 100644
--- a/doc/cross-compilation.xml
+++ b/doc/cross-compilation.xml
@@ -37,16 +37,9 @@
     </para>
     <para>
       In Nixpkgs, these three platforms are defined as attribute sets under the names <literal>buildPlatform</literal>, <literal>hostPlatform</literal>, and <literal>targetPlatform</literal>.
-      All are guaranteed to contain at least a <varname>platform</varname> field, which contains detailed information on the platform.
       All three are always defined at the top level, so 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, .. }: ...</programlisting>
     </para>
-    <warning><para>
-      These platforms should all have the same structure in all scenarios, but that is currently not the case.
-      When not cross-compiling, they will each contain a <literal>system</literal> field with a short 2-part, hyphen-separated summering string name for the platform.
-      But, when when cross compiling, <literal>hostPlatform</literal> and <literal>targetPlatform</literal> may instead contain <literal>config</literal> with a fuller 3- or 4-part string in the manner of LLVM.
-      We should have all 3 platforms always contain both, and maybe give <literal>config</literal> a better name while we are at it.
-    </para></warning>
     <variablelist>
       <varlistentry>
         <term><varname>buildPlatform</varname></term>
@@ -83,7 +76,7 @@
             Nixpkgs tries to avoid this where possible too, but still, because the concept of a target platform is so ingrained now in Autoconf and other tools, it is best to support it as is.
             Tools like LLVM that don't need up-front target platforms can safely ignore it like normal packages, and it will do no harm.
           </para>
-          </listitem>
+        </listitem>
       </varlistentry>
     </variablelist>
     <note><para>
@@ -91,6 +84,56 @@
       This field defined as <varname>hostPlatform</varname> when the host and build platforms differ, but otherwise not defined at all.
       This field is obsolete and will soon disappear—please do not use it.
     </para></note>
+    <para>
+      The exact scheme these fields is a bit ill-defined due to a long and convoluted evolution, but this is slowly being cleaned up.
+      For now, here are few fields can count on them containing:
+    </para>
+    <variablelist>
+      <varlistentry>
+        <term><varname>system</varname></term>
+        <listitem>
+          <para>
+            This is a two-component shorthand for the platform.
+            Examples of this would be "x86_64-darwin" and "i686-linux"; see <literal>lib.systems.doubles</literal> for more.
+            This format isn't very standard, but has built-in support in Nix, such as the <varname>builtins.currentSystem</varname> impure string.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><varname>config</varname></term>
+        <listitem>
+          <para>
+            This is a 3- or 4- component shorthand for the platform.
+            Examples of this would be "x86_64-unknown-linux-gnu" and "aarch64-apple-darwin14".
+            This is a standard format called the "LLVM target triple", as they are pioneered by LLVM and traditionally just used for the <varname>targetPlatform</varname>.
+            This format is strictly more informative than the "Nix host double", as the previous format could analogously be termed.
+            This needs a better name than <varname>config</varname>!
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><varname>parsed</varname></term>
+        <listitem>
+          <para>
+            This is a nix representation of a parsed LLVM target triple with white-listed components.
+            This can be specified directly, or actually parsed from the <varname>config</varname>.
+            [Technically, only one need be specified and the others can be inferred, though the precision of inference may not be very good.]
+            See <literal>lib.systems.parse</literal> for the exact representation, along with some <literal>is*</literal>predicates.
+            These predicates are superior to the ones in <varname>stdenv</varname> as they aren't tied to the build platform (host, as previously discussed, would be a saner default).
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><varname>platform</varname></term>
+        <listitem>
+          <para>
+            This is, quite frankly, a dumping ground of ad-hoc settings (it's an attribute set).
+            See <literal>lib.systems.platforms</literal> for examples—there's hopefully one in there that will work verbatim for each platform one is working.
+            Please help us triage these flags and give them better homes!
+          </para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
   </section>
 
   <section>
diff --git a/doc/languages-frameworks/python.md b/doc/languages-frameworks/python.md
index da7706726b4..b127ba2faae 100644
--- a/doc/languages-frameworks/python.md
+++ b/doc/languages-frameworks/python.md
@@ -628,6 +628,9 @@ with import <nixpkgs> {};
 In contrast to `python.buildEnv`, `python.withPackages` does not support the more advanced options
 such as `ignoreCollisions = true` or `postBuild`. If you need them, you have to use `python.buildEnv`.
 
+Python 2 namespace packages may provide `__init__.py` that collide. In that case `python.buildEnv` 
+should be used with `ignoreCollisions = true`.
+
 ### Development mode
 
 Development or editable mode is supported. To develop Python packages
diff --git a/doc/languages-frameworks/rust.md b/doc/languages-frameworks/rust.md
index 657e1642d2d..ef6ebc392b3 100644
--- a/doc/languages-frameworks/rust.md
+++ b/doc/languages-frameworks/rust.md
@@ -17,8 +17,8 @@ into the `environment.systemPackages` or bring them into scope with
 `nix-shell -p rustStable.rustc -p rustStable.cargo`.
 
 There are also `rustBeta` and `rustNightly` package sets available.
-These are not updated very regulary. For daily builds see
-[Using the Rust nightlies overlay](#using-the-rust-nightlies-overlay)
+These are not updated very regulary. For daily builds use either rustup from
+nixpkgs or use the [Rust nightlies overlay](#using-the-rust-nightlies-overlay).
 
 ## Packaging Rust applications
 
diff --git a/lib/attrsets.nix b/lib/attrsets.nix
index f9e6b7495fc..d2946f6ca9c 100644
--- a/lib/attrsets.nix
+++ b/lib/attrsets.nix
@@ -2,7 +2,7 @@
 
 let
   inherit (builtins) head tail length;
-  inherit (import ./trivial.nix) or;
+  inherit (import ./trivial.nix) and or;
   inherit (import ./default.nix) fold;
   inherit (import ./strings.nix) concatStringsSep;
   inherit (import ./lists.nix) concatMap concatLists all deepSeqList;
@@ -116,7 +116,7 @@ rec {
     listToAttrs (concatMap (name: let v = set.${name}; in if pred name v then [(nameValuePair name v)] else []) (attrNames set));
 
 
-  /* Filter an attribute set recursivelly by removing all attributes for
+  /* Filter an attribute set recursively by removing all attributes for
      which the given predicate return false.
 
      Example:
@@ -334,7 +334,7 @@ rec {
       value = f name (catAttrs name sets);
     }) names);
 
-  /* Implentation note: Common names  appear multiple times in the list of
+  /* Implementation note: Common names  appear multiple times in the list of
      names, hopefully this does not affect the system because the maximal
      laziness avoid computing twice the same expression and listToAttrs does
      not care about duplicated attribute names.
@@ -353,7 +353,7 @@ rec {
   zipAttrs = zipAttrsWith (name: values: values);
 
   /* Does the same as the update operator '//' except that attributes are
-     merged until the given pedicate is verified.  The predicate should
+     merged until the given predicate is verified.  The predicate should
      accept 3 arguments which are the path to reach the attribute, a part of
      the first attribute set and a part of the second attribute set.  When
      the predicate is verified, the value of the first attribute set is
@@ -417,18 +417,15 @@ rec {
 
   /* Returns true if the pattern is contained in the set. False otherwise.
 
-     FIXME(zimbatm): this example doesn't work !!!
-
      Example:
-       sys = mkSystem { }
-       matchAttrs { cpu = { bits = 64; }; } sys
+       matchAttrs { cpu = {}; } { cpu = { bits = 64; }; }
        => true
    */
-  matchAttrs = pattern: attrs:
-    fold or false (attrValues (zipAttrsWithNames (attrNames pattern) (n: values:
+  matchAttrs = pattern: attrs: assert isAttrs pattern;
+    fold and true (attrValues (zipAttrsWithNames (attrNames pattern) (n: values:
       let pat = head values; val = head (tail values); in
       if length values == 1 then false
-      else if isAttrs pat then isAttrs val && matchAttrs head values
+      else if isAttrs pat then isAttrs val && matchAttrs pat val
       else pat == val
     ) [pattern attrs]));
 
diff --git a/lib/composable-derivation.nix b/lib/composable-derivation.nix
index 5442dcedeab..5e55ac023f1 100644
--- a/lib/composable-derivation.nix
+++ b/lib/composable-derivation.nix
@@ -39,7 +39,7 @@ let inherit (lib) nv nvs; in
   #
   # issues:
   # * its complicated to understand
-  # * some "features" such as exact merge behaviour are burried in mergeAttrBy
+  # * some "features" such as exact merge behaviour are buried in mergeAttrBy
   #   and defaultOverridableDelayableArgs assuming the default behaviour does
   #   the right thing in the common case
   # * Eelco once said using such fix style functions are slow to evaluate
@@ -48,7 +48,7 @@ let inherit (lib) nv nvs; in
   #   / add patches the way you want without having to declare function arguments
   #
   # nice features:
-  # declaring "optional featuers" is modular. For instance:
+  # declaring "optional features" is modular. For instance:
   #   flags.curl = {
   #     configureFlags = ["--with-curl=${curl.dev}" "--with-curlwrappers"];
   #     buildInputs = [curl openssl];
diff --git a/lib/customisation.nix b/lib/customisation.nix
index a6c24f083a5..4853290db54 100644
--- a/lib/customisation.nix
+++ b/lib/customisation.nix
@@ -10,7 +10,7 @@ rec {
 
   /* `overrideDerivation drv f' takes a derivation (i.e., the result
      of a call to the builtin function `derivation') and returns a new
-     derivation in which the attributes of the original are overriden
+     derivation in which the attributes of the original are overridden
      according to the function `f'.  The function `f' is called with
      the original derivation attributes.
 
diff --git a/lib/default.nix b/lib/default.nix
index 09a64f754d8..e692637abf1 100644
--- a/lib/default.nix
+++ b/lib/default.nix
@@ -1,3 +1,8 @@
+/* Library of low-level helper functions for nix expressions.
+ *
+ * Please implement (mostly) exhaustive unit tests
+ * for new functions in `./tests.nix'.
+ */
 let
 
   # trivial, often used functions
@@ -22,8 +27,7 @@ let
 
   # constants
   licenses = import ./licenses.nix;
-  platforms = import ./platforms.nix;
-  systems = import ./systems.nix;
+  systems = import ./systems;
 
   # misc
   debug = import ./debug.nix;
@@ -42,13 +46,15 @@ in
             attrsets lists strings stringsWithDeps
             customisation maintainers meta sources
             modules options types
-            licenses platforms systems
+            licenses systems
             debug generators misc
             sandbox fetchers filesystem;
+
+    # back-compat aliases
+    platforms = systems.doubles;
   }
   # !!! don't include everything at top-level; perhaps only the most
   # commonly used functions.
   // trivial // lists // strings // stringsWithDeps // attrsets // sources
   // options // types // meta // debug // misc // modules
-  // systems
   // customisation
diff --git a/lib/deprecated.nix b/lib/deprecated.nix
index 45a3893fc22..983e8d26892 100644
--- a/lib/deprecated.nix
+++ b/lib/deprecated.nix
@@ -253,11 +253,11 @@ rec {
   # eg { a = 7; } {  a = [ 2 3 ]; } becomes { a = [ 7 2 3 ]; }
   mergeAttrsConcatenateValues = mergeAttrsWithFunc ( a: b: (toList a) ++ (toList b) );
 
-  # merges attributes using //, if a name exisits in both attributes
+  # merges attributes using //, if a name exists in both attributes
   # an error will be triggered unless its listed in mergeLists
   # so you can mergeAttrsNoOverride { buildInputs = [a]; } { buildInputs = [a]; } {} to get
   # { buildInputs = [a b]; }
-  # merging buildPhase does'nt really make sense. The cases will be rare where appending /prefixing will fit your needs?
+  # merging buildPhase doesn't really make sense. The cases will be rare where appending /prefixing will fit your needs?
   # in these cases the first buildPhase will override the second one
   # ! deprecated, use mergeAttrByFunc instead
   mergeAttrsNoOverride = { mergeLists ? ["buildInputs" "propagatedBuildInputs"],
diff --git a/lib/fetchers.nix b/lib/fetchers.nix
index 19d89d6c407..21f28c32ef7 100644
--- a/lib/fetchers.nix
+++ b/lib/fetchers.nix
@@ -1,4 +1,4 @@
-# snippets that can be shared by mutliple fetchers (pkgs/build-support)
+# snippets that can be shared by multiple fetchers (pkgs/build-support)
 {
 
   proxyImpureEnvVars = [
diff --git a/lib/licenses.nix b/lib/licenses.nix
index 4d4a3c1a954..000a55224ea 100644
--- a/lib/licenses.nix
+++ b/lib/licenses.nix
@@ -357,6 +357,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
     fullName = "Lucent Public License v1.02";
   };
 
+  miros = {
+    fullname = "MirOS License";
+    url = https://opensource.org/licenses/MirOS;
+  };
+
   # spdx.org does not (yet) differentiate between the X11 and Expat versions
   # for details see http://en.wikipedia.org/wiki/MIT_License#Various_versions
   mit = spdx {
diff --git a/lib/lists.nix b/lib/lists.nix
index 82d5ba0124c..fd746f4f97b 100644
--- a/lib/lists.nix
+++ b/lib/lists.nix
@@ -191,7 +191,7 @@ rec {
   */
   optional = cond: elem: if cond then [elem] else [];
 
-  /* Return a list or an empty list, dependening on a boolean value.
+  /* Return a list or an empty list, depending on a boolean value.
 
      Example:
        optionals true [ 2 3 ]
diff --git a/lib/maintainers.nix b/lib/maintainers.nix
index 776b87c80f7..9f24d183625 100644
--- a/lib/maintainers.nix
+++ b/lib/maintainers.nix
@@ -60,6 +60,7 @@
   bachp = "Pascal Bach <pascal.bach@nextrem.ch>";
   badi = "Badi' Abdul-Wahid <abdulwahidc@gmail.com>";
   balajisivaraman = "Balaji Sivaraman<sivaraman.balaji@gmail.com>";
+  basvandijk = "Bas van Dijk <v.dijk.bas@gmail.com>";
   Baughn = "Svein Ove Aas <sveina@gmail.com>";
   bcarrell = "Brandon Carrell <brandoncarrell@gmail.com>";
   bcdarwin = "Ben Darwin <bcdarwin@gmail.com>";
@@ -105,6 +106,7 @@
   codsl = "codsl <codsl@riseup.net>";
   codyopel = "Cody Opel <codyopel@gmail.com>";
   colemickens = "Cole Mickens <cole.mickens@gmail.com>";
+  colescott = "Cole Scott <colescottsf@gmail.com>";
   copumpkin = "Dan Peebles <pumpkingod@gmail.com>";
   corngood = "David McFarland <corngood@gmail.com>";
   coroa = "Jonas Hörsch <jonas@chaoflow.net>";
@@ -160,6 +162,7 @@
   eleanor = "Dejan Lukan <dejan@proteansec.com>";
   elitak = "Eric Litak <elitak@gmail.com>";
   ellis = "Ellis Whitehead <nixos@ellisw.net>";
+  eperuffo = "Emanuele Peruffo <info@emanueleperuffo.com>";
   epitrochoid = "Mabry Cervin <mpcervin@uncg.edu>";
   ericbmerritt = "Eric Merritt <eric@afiniate.com>";
   ericsagnes = "Eric Sagnes <eric.sagnes@gmail.com>";
@@ -217,6 +220,7 @@
   ianwookim = "Ian-Woo Kim <ianwookim@gmail.com>";
   igsha = "Igor Sharonov <igor.sharonov@gmail.com>";
   ikervagyok = "Balázs Lengyel <ikervagyok@gmail.com>";
+  infinisil = "Silvan Mosberger <infinisil@icloud.com";
   ivan-tkatchev = "Ivan Tkatchev <tkatchev@gmail.com>";
   j-keck = "Jürgen Keck <jhyphenkeck@gmail.com>";
   jagajaga = "Arseniy Seroka <ars.seroka@gmail.com>";
@@ -234,6 +238,7 @@
   jgillich = "Jakob Gillich <jakob@gillich.me>";
   jhhuh = "Ji-Haeng Huh <jhhuh.note@gmail.com>";
   jirkamarsik = "Jirka Marsik <jiri.marsik89@gmail.com>";
+  jlesquembre = "José Luis Lafuente <jl@lafuente.me>";
   joachifm = "Joachim Fasting <joachifm@fastmail.fm>";
   joamaki = "Jussi Maki <joamaki@gmail.com>";
   joelmo = "Joel Moberg <joel.moberg@gmail.com>";
@@ -243,6 +248,7 @@
   jonafato = "Jon Banafato <jon@jonafato.com>";
   jpbernardy = "Jean-Philippe Bernardy <jeanphilippe.bernardy@gmail.com>";
   jpierre03 = "Jean-Pierre PRUNARET <nix@prunetwork.fr>";
+  jpotier = "Martin Potier <jpo.contributes.to.nixos@marvid.fr>";
   jraygauthier = "Raymond Gauthier <jraygauthier@gmail.com>";
   juliendehos = "Julien Dehos <dehos@lisic.univ-littoral.fr>";
   jwiegley = "John Wiegley <johnw@newartisans.com>";
@@ -456,6 +462,7 @@
   ryantm = "Ryan Mulligan <ryan@ryantm.com>";
   rycee = "Robert Helgesson <robert@rycee.net>";
   ryneeverett = "Ryne Everett <ryneeverett@gmail.com>";
+  rzetterberg = "Richard Zetterberg <richard.zetterberg@gmail.com>";
   s1lvester = "Markus Silvester <s1lvester@bockhacker.me>";
   samuelrivas = "Samuel Rivas <samuelrivas@gmail.com>";
   sander = "Sander van der Burg <s.vanderburg@tudelft.nl>";
@@ -472,6 +479,7 @@
   shell = "Shell Turner <cam.turn@gmail.com>";
   shlevy = "Shea Levy <shea@shealevy.com>";
   siddharthist = "Langston Barrett <langston.barrett@gmail.com>";
+  sigma = "Yann Hodique <yann.hodique@gmail.com>";
   simonvandel = "Simon Vandel Sillesen <simon.vandel@gmail.com>";
   sjagoe = "Simon Jagoe <simon@simonjagoe.com>";
   sjmackenzie = "Stewart Mackenzie <setori88@gmail.com>";
@@ -500,6 +508,7 @@
   tailhook = "Paul Colomiets <paul@colomiets.name>";
   takikawa = "Asumu Takikawa <asumu@igalia.com>";
   taktoa = "Remy Goldschmidt <taktoa@gmail.com>";
+  taku0 = "Takuo Yonezawa <mxxouy6x3m_github@tatapa.org>";
   tavyc = "Octavian Cerna <octavian.cerna@gmail.com>";
   teh = "Tom Hunger <tehunger@gmail.com>";
   telotortium = "Robert Irelan <rirelan@gmail.com>";
diff --git a/lib/modules.nix b/lib/modules.nix
index 862488310d8..91e2eae0595 100644
--- a/lib/modules.nix
+++ b/lib/modules.nix
@@ -423,7 +423,7 @@ rec {
     in concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
 
   /* Sort a list of properties.  The sort priority of a property is
-     1000 by default, but can be overriden by wrapping the property
+     1000 by default, but can be overridden by wrapping the property
      using mkOrder. */
   sortProperties = defs:
     let
diff --git a/lib/platforms.nix b/lib/platforms.nix
deleted file mode 100644
index 6b56e1734ad..00000000000
--- a/lib/platforms.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-let lists = import ./lists.nix; in
-
-rec {
-  all = linux ++ darwin ++ cygwin ++ freebsd ++ openbsd ++ netbsd ++ illumos;
-  allBut = platforms: lists.filter (x: !(builtins.elem x platforms)) all;
-  none = [];
-
-  arm = ["armv5tel-linux" "armv6l-linux" "armv7l-linux" ];
-  i686 = ["i686-linux" "i686-freebsd" "i686-netbsd" "i686-cygwin"];
-  mips = [ "mips64el-linux" ];
-  x86_64 = ["x86_64-linux" "x86_64-darwin" "x86_64-freebsd" "x86_64-openbsd" "x86_64-netbsd" "x86_64-cygwin"];
-
-  cygwin = ["i686-cygwin" "x86_64-cygwin"];
-  darwin = ["x86_64-darwin"];
-  freebsd = ["i686-freebsd" "x86_64-freebsd"];
-  gnu = linux; /* ++ hurd ++ kfreebsd ++ ... */
-  illumos = ["x86_64-solaris"];
-  linux = ["i686-linux" "x86_64-linux" "armv5tel-linux" "armv6l-linux" "armv7l-linux" "aarch64-linux" "mips64el-linux"];
-  netbsd = ["i686-netbsd" "x86_64-netbsd"];
-  openbsd = ["i686-openbsd" "x86_64-openbsd"];
-  unix = linux ++ darwin ++ freebsd ++ openbsd ++ netbsd ++ illumos;
-
-  mesaPlatforms = ["i686-linux" "x86_64-linux" "x86_64-darwin" "armv5tel-linux" "armv6l-linux" "armv7l-linux" "aarch64-linux"];
-}
diff --git a/lib/strings.nix b/lib/strings.nix
index ffa93c8e454..d48624257cf 100644
--- a/lib/strings.nix
+++ b/lib/strings.nix
@@ -126,8 +126,8 @@ rec {
   */
   makePerlPath = makeSearchPathOutput "lib" "lib/perl5/site_perl";
 
-  /* Dependening on the boolean `cond', return either the given string
-     or the empty string. Useful to contatenate against a bigger string.
+  /* Depending on the boolean `cond', return either the given string
+     or the empty string. Useful to concatenate against a bigger string.
 
      Example:
        optionalString true "some-string"
diff --git a/lib/systems.nix b/lib/systems.nix
deleted file mode 100644
index 92d8bdf892b..00000000000
--- a/lib/systems.nix
+++ /dev/null
@@ -1,126 +0,0 @@
-# Define the list of system with their properties.  Only systems tested for
-# Nixpkgs are listed below
-
-with import ./lists.nix;
-with import ./types.nix;
-with import ./attrsets.nix;
-
-let
-  lib = import ./default.nix;
-  setTypes = type:
-    mapAttrs (name: value:
-      setType type ({inherit name;} // value)
-    );
-in
-
-rec {
-
-  isSignificantByte = isType "significant-byte";
-  significantBytes = setTypes "significant-byte" {
-    bigEndian = {};
-    littleEndian = {};
-  };
-
-
-  isCpuType = x: isType "cpu-type" x
-    && elem x.bits [8 16 32 64 128]
-    && (8 < x.bits -> isSignificantByte x.significantByte);
-
-  cpuTypes = with significantBytes;
-    setTypes "cpu-type" {
-      arm =      { bits = 32; significantByte = littleEndian; };
-      armv5tel = { bits = 32; significantByte = littleEndian; };
-      armv7l   = { bits = 32; significantByte = littleEndian; };
-      i686 =     { bits = 32; significantByte = littleEndian; };
-      powerpc =  { bits = 32; significantByte = bigEndian; };
-      x86_64 =   { bits = 64; significantByte = littleEndian; };
-    };
-
-
-  isExecFormat = isType "exec-format";
-  execFormats = setTypes "exec-format" {
-    aout = {}; # a.out
-    elf = {};
-    macho = {};
-    pe = {};
-    unknow = {};
-  };
-
-
-  isKernel = isType "kernel";
-  kernels = with execFormats;
-    setTypes "kernel" {
-      cygwin =  { execFormat = pe; };
-      darwin =  { execFormat = macho; };
-      freebsd = { execFormat = elf; };
-      linux =   { execFormat = elf; };
-      netbsd =  { execFormat = elf; };
-      none =    { execFormat = unknow; };
-      openbsd = { execFormat = elf; };
-      win32 =   { execFormat = pe; };
-    };
-
-
-  isArchitecture = isType "architecture";
-  architectures = setTypes "architecture" {
-    apple = {};
-    pc = {};
-    unknow = {};
-  };
-
-
-  isSystem = x: isType "system" x
-    && isCpuType x.cpu
-    && isArchitecture x.arch
-    && isKernel x.kernel;
-
-  mkSystem = {
-    cpu ? cpuTypes.i686,
-    arch ? architectures.pc,
-    kernel ? kernels.linux,
-    name ? "${cpu.name}-${arch.name}-${kernel.name}"
-  }: setType "system" {
-    inherit name cpu arch kernel;
-  };
-
-
-  is64Bit = matchAttrs { cpu = { bits = 64; }; };
-  isDarwin = matchAttrs { kernel = kernels.darwin; };
-  isi686 = matchAttrs { cpu = cpuTypes.i686; };
-  isLinux = matchAttrs { kernel = kernels.linux; };
-
-
-  # This should revert the job done by config.guess from the gcc compiler.
-  mkSystemFromString = s: let
-    l = lib.splitString "-" s;
-
-    getCpu = name:
-      attrByPath [name] (throw "Unknow cpuType `${name}'.")
-        cpuTypes;
-    getArch = name:
-      attrByPath [name] (throw "Unknow architecture `${name}'.")
-        architectures;
-    getKernel = name:
-      attrByPath [name] (throw "Unknow kernel `${name}'.")
-        kernels;
-
-    system =
-      if builtins.length l == 2 then
-        mkSystem rec {
-          name = s;
-          cpu = getCpu (head l);
-          arch =
-            if isDarwin system
-            then architectures.apple
-            else architectures.pc;
-          kernel = getKernel (head (tail l));
-        }
-      else
-        mkSystem {
-          name = s;
-          cpu = getCpu (head l);
-          arch = getArch (head (tail l));
-          kernel = getKernel (head (tail (tail l)));
-        };
-  in assert isSystem system; system;
-}
diff --git a/lib/systems/default.nix b/lib/systems/default.nix
new file mode 100644
index 00000000000..d956969a18f
--- /dev/null
+++ b/lib/systems/default.nix
@@ -0,0 +1,23 @@
+rec {
+  doubles = import ./doubles.nix;
+  parse = import ./parse.nix;
+  platforms = import ./platforms.nix;
+
+  # Elaborate a `localSystem` or `crossSystem` so that it contains everything
+  # necessary.
+  #
+  # `parsed` is inferred from args, both because there are two options with one
+  # clearly prefered, and to prevent cycles. A simpler fixed point where the RHS
+  # always just used `final.*` would fail on both counts.
+  elaborate = args: let
+    final = {
+      # Prefer to parse `config` as it is strictly more informative.
+      parsed = parse.mkSystemFromString (if args ? config then args.config else args.system);
+      # Either of these can be losslessly-extracted from `parsed` iff parsing succeeds.
+      system = parse.doubleFromSystem final.parsed;
+      config = parse.tripleFromSystem final.parsed;
+      # Just a guess, based on `system`
+      platform = platforms.selectBySystem final.system;
+    } // args;
+  in final;
+}
diff --git a/lib/systems/doubles.nix b/lib/systems/doubles.nix
new file mode 100644
index 00000000000..2622ddf4be1
--- /dev/null
+++ b/lib/systems/doubles.nix
@@ -0,0 +1,44 @@
+let lists = import ../lists.nix; in
+let parse = import ./parse.nix; in
+let inherit (import ../attrsets.nix) matchAttrs; in
+
+let
+  all = [
+    "aarch64-linux"
+    "armv5tel-linux" "armv6l-linux" "armv7l-linux"
+
+    "mips64el-linux"
+
+    "i686-cygwin" "i686-freebsd" "i686-linux" "i686-netbsd" "i686-openbsd"
+
+    "x86_64-cygwin" "x86_64-darwin" "x86_64-freebsd" "x86_64-linux"
+    "x86_64-netbsd" "x86_64-openbsd" "x86_64-solaris"
+  ];
+
+  allParsed = map parse.mkSystemFromString all;
+
+  filterDoubles = f: map parse.doubleFromSystem (lists.filter f allParsed);
+
+in rec {
+  inherit all;
+
+  allBut = platforms: lists.filter (x: !(builtins.elem x platforms)) all;
+  none = [];
+
+  arm = filterDoubles (matchAttrs { cpu = { family = "arm"; bits = 32; }; });
+  i686 = filterDoubles parse.isi686;
+  mips = filterDoubles (matchAttrs { cpu = { family = "mips"; }; });
+  x86_64 = filterDoubles parse.isx86_64;
+
+  cygwin = filterDoubles (matchAttrs { kernel = parse.kernels.cygwin; });
+  darwin = filterDoubles parse.isDarwin;
+  freebsd = filterDoubles (matchAttrs { kernel = parse.kernels.freebsd; });
+  gnu = filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnu; }); # Should be better
+  illumos = filterDoubles (matchAttrs { kernel = parse.kernels.solaris; });
+  linux = filterDoubles parse.isLinux;
+  netbsd = filterDoubles (matchAttrs { kernel = parse.kernels.netbsd; });
+  openbsd = filterDoubles (matchAttrs { kernel = parse.kernels.openbsd; });
+  unix = filterDoubles parse.isUnix;
+
+  mesaPlatforms = ["i686-linux" "x86_64-linux" "x86_64-darwin" "armv5tel-linux" "armv6l-linux" "armv7l-linux" "aarch64-linux"];
+}
diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix
new file mode 100644
index 00000000000..f6315b8ad2a
--- /dev/null
+++ b/lib/systems/parse.nix
@@ -0,0 +1,173 @@
+# Define the list of system with their properties.  Only systems tested for
+# Nixpkgs are listed below
+
+with import ../lists.nix;
+with import ../types.nix;
+with import ../attrsets.nix;
+
+let
+  lib = import ../default.nix;
+  setTypesAssert = type: pred:
+    mapAttrs (name: value:
+      #assert pred value;
+      setType type ({ inherit name; } // value));
+  setTypes = type: setTypesAssert type (_: true);
+
+in
+
+rec {
+
+  isSignificantByte = isType "significant-byte";
+  significantBytes = setTypes "significant-byte" {
+    bigEndian = {};
+    littleEndian = {};
+  };
+
+
+  isCpuType = isType "cpu-type";
+  cpuTypes = with significantBytes; setTypesAssert "cpu-type"
+    (x: elem x.bits [8 16 32 64 128]
+        && (if 8 < x.bits
+            then isSignificantByte x.significantByte
+            else !(x ? significantByte)))
+  {
+    arm      = { bits = 32; significantByte = littleEndian; family = "arm"; };
+    armv5tel = { bits = 32; significantByte = littleEndian; family = "arm"; };
+    armv6l   = { bits = 32; significantByte = littleEndian; family = "arm"; };
+    armv7a   = { bits = 32; significantByte = littleEndian; family = "arm"; };
+    armv7l   = { bits = 32; significantByte = littleEndian; family = "arm"; };
+    aarch64  = { bits = 64; significantByte = littleEndian; family = "arm"; };
+    i686     = { bits = 32; significantByte = littleEndian; family = "x86"; };
+    x86_64   = { bits = 64; significantByte = littleEndian; family = "x86"; };
+    mips64el = { bits = 32; significantByte = littleEndian; family = "mips"; };
+    powerpc  = { bits = 32; significantByte = bigEndian;    family = "powerpc"; };
+  };
+
+  isVendor = isType "vendor";
+  vendors = setTypes "vendor" {
+    apple = {};
+    pc = {};
+    unknown = {};
+  };
+
+  isExecFormat = isType "exec-format";
+  execFormats = setTypes "exec-format" {
+    aout = {}; # a.out
+    elf = {};
+    macho = {};
+    pe = {};
+    unknown = {};
+  };
+
+  isKernelFamily = isType "kernel-family";
+  kernelFamilies = setTypes "kernel-family" {
+    bsd = {};
+    unix = {};
+    windows-nt = {};
+    dos = {};
+  };
+
+  isKernel = x: isType "kernel" x;
+  kernels = with execFormats; with kernelFamilies; setTypesAssert "kernel"
+    (x: isExecFormat x.execFormat && all isKernelFamily (attrValues x.families))
+  {
+    cygwin  = { execFormat = pe;      families = { inherit /*unix*/ windows-nt; }; };
+    darwin  = { execFormat = macho;   families = { inherit unix; }; };
+    freebsd = { execFormat = elf;     families = { inherit unix bsd; }; };
+    linux   = { execFormat = elf;     families = { inherit unix; }; };
+    netbsd  = { execFormat = elf;     families = { inherit unix bsd; }; };
+    none    = { execFormat = unknown; families = { inherit unix; }; };
+    openbsd = { execFormat = elf;     families = { inherit unix bsd; }; };
+    solaris = { execFormat = elf;     families = { inherit unix; }; };
+    win32   = { execFormat = pe;      families = { inherit dos; }; };
+  };
+
+
+  isAbi = isType "abi";
+  abis = setTypes "abi" {
+    gnu = {};
+    msvc = {};
+    eabi = {};
+    androideabi = {};
+    unknown = {};
+  };
+
+  isSystem = isType "system";
+  mkSystem = { cpu, vendor, kernel, abi }:
+    assert isCpuType cpu && isVendor vendor && isKernel kernel && isAbi abi;
+    setType "system" {
+      inherit cpu vendor kernel abi;
+    };
+
+  is64Bit = matchAttrs { cpu = { bits = 64; }; };
+  is32Bit = matchAttrs { cpu = { bits = 32; }; };
+  isi686 = matchAttrs { cpu = cpuTypes.i686; };
+  isx86_64 = matchAttrs { cpu = cpuTypes.x86_64; };
+
+  isDarwin = matchAttrs { kernel = kernels.darwin; };
+  isLinux = matchAttrs { kernel = kernels.linux; };
+  isUnix = matchAttrs { kernel = { families = { inherit (kernelFamilies) unix; }; }; };
+  isWindows = s: matchAttrs { kernel = { families = { inherit (kernelFamilies) windows-nt; }; }; } s
+              || matchAttrs { kernel = { families = { inherit (kernelFamilies) dos; }; }; } s;
+
+
+  mkSkeletonFromList = l: {
+    "2" =    { cpu = elemAt l 0;                      kernel = elemAt l 1;                   };
+    "4" =    { cpu = elemAt l 0; vendor = elemAt l 1; kernel = elemAt l 2; abi = elemAt l 3; };
+    "3" = # Awkwards hacks, beware!
+      if elemAt l 1 == "apple"
+        then { cpu = elemAt l 0; vendor = "apple";    kernel = elemAt l 2;                   }
+      else if (elemAt l 1 == "linux") || (elemAt l 2 == "gnu")
+        then { cpu = elemAt l 0;                      kernel = elemAt l 1; abi = elemAt l 2; }
+      else throw "Target specification with 3 components is ambiguous";
+  }.${toString (length l)}
+    or (throw "system string has invalid number of hyphen-separated components");
+
+  # This should revert the job done by config.guess from the gcc compiler.
+  mkSystemFromSkeleton = { cpu
+                         , # Optional, but fallback too complex for here.
+                           # Inferred below instead.
+                           vendor ? assert false; null
+                         , kernel
+                         , # Also inferred below
+                           abi    ? assert false; null
+                         } @ args: let
+    getCpu = name:
+      attrByPath [name] (throw "Unknown CPU type: ${name}")
+        cpuTypes;
+    getVendor = name:
+      attrByPath [name] (throw "Unknown vendor: ${name}")
+        vendors;
+    getKernel = name:
+      attrByPath [name] (throw "Unknown kernel: ${name}")
+        kernels;
+    getAbi = name:
+      attrByPath [name] (throw "Unknown ABI: ${name}")
+        abis;
+
+    system = rec {
+      cpu = getCpu args.cpu;
+      vendor =
+        /**/ if args ? vendor    then getVendor args.vendor
+        else if isDarwin  system then vendors.apple
+        else if isWindows system then vendors.pc
+        else                     vendors.unknown;
+      kernel = getKernel args.kernel;
+      abi =
+        /**/ if args ? abi       then getAbi args.abi
+        else if isLinux   system then abis.gnu
+        else if isWindows system then abis.gnu
+        else                     abis.unknown;
+    };
+
+  in mkSystem system;
+
+  mkSystemFromString = s: mkSystemFromSkeleton (mkSkeletonFromList (lib.splitString "-" s));
+
+  doubleFromSystem = { cpu, vendor, kernel, abi, ... }: "${cpu.name}-${kernel.name}";
+
+  tripleFromSystem = { cpu, vendor, kernel, abi, ... } @ sys: assert isSystem sys; let
+    optAbi = lib.optionalString (abi != abis.unknown) "-${abi.name}";
+  in "${cpu.name}-${vendor.name}-${kernel.name}${optAbi}";
+
+}
diff --git a/lib/systems/platforms.nix b/lib/systems/platforms.nix
new file mode 100644
index 00000000000..4322c8e2ff6
--- /dev/null
+++ b/lib/systems/platforms.nix
@@ -0,0 +1,486 @@
+rec {
+  pcBase = {
+    name = "pc";
+    uboot = null;
+    kernelHeadersBaseConfig = "defconfig";
+    kernelBaseConfig = "defconfig";
+    # Build whatever possible as a module, if not stated in the extra config.
+    kernelAutoModules = true;
+    kernelTarget = "bzImage";
+  };
+
+  pc64 = pcBase // { kernelArch = "x86_64"; };
+
+  pc32 = pcBase // { kernelArch = "i386"; };
+
+  pc32_simplekernel = pc32 // {
+    kernelAutoModules = false;
+  };
+
+  pc64_simplekernel = pc64 // {
+    kernelAutoModules = false;
+  };
+
+  sheevaplug = {
+    name = "sheevaplug";
+    kernelMajor = "2.6";
+    kernelHeadersBaseConfig = "multi_v5_defconfig";
+    kernelBaseConfig = "multi_v5_defconfig";
+    kernelArch = "arm";
+    kernelAutoModules = false;
+    kernelExtraConfig = ''
+      BLK_DEV_RAM y
+      BLK_DEV_INITRD y
+      BLK_DEV_CRYPTOLOOP m
+      BLK_DEV_DM m
+      DM_CRYPT m
+      MD y
+      REISERFS_FS m
+      BTRFS_FS m
+      XFS_FS m
+      JFS_FS m
+      EXT4_FS m
+      USB_STORAGE_CYPRESS_ATACB m
+
+      # mv cesa requires this sw fallback, for mv-sha1
+      CRYPTO_SHA1 y
+      # Fast crypto
+      CRYPTO_TWOFISH y
+      CRYPTO_TWOFISH_COMMON y
+      CRYPTO_BLOWFISH y
+      CRYPTO_BLOWFISH_COMMON y
+
+      IP_PNP y
+      IP_PNP_DHCP y
+      NFS_FS y
+      ROOT_NFS y
+      TUN m
+      NFS_V4 y
+      NFS_V4_1 y
+      NFS_FSCACHE y
+      NFSD m
+      NFSD_V2_ACL y
+      NFSD_V3 y
+      NFSD_V3_ACL y
+      NFSD_V4 y
+      NETFILTER y
+      IP_NF_IPTABLES y
+      IP_NF_FILTER y
+      IP_NF_MATCH_ADDRTYPE y
+      IP_NF_TARGET_LOG y
+      IP_NF_MANGLE y
+      IPV6 m
+      VLAN_8021Q m
+
+      CIFS y
+      CIFS_XATTR y
+      CIFS_POSIX y
+      CIFS_FSCACHE y
+      CIFS_ACL y
+
+      WATCHDOG y
+      WATCHDOG_CORE y
+      ORION_WATCHDOG m
+
+      ZRAM m
+      NETCONSOLE m
+
+      # Disable OABI to have seccomp_filter (required for systemd)
+      # https://github.com/raspberrypi/firmware/issues/651
+      OABI_COMPAT n
+
+      # Fail to build
+      DRM n
+      SCSI_ADVANSYS n
+      USB_ISP1362_HCD n
+      SND_SOC n
+      SND_ALI5451 n
+      FB_SAVAGE n
+      SCSI_NSP32 n
+      ATA_SFF n
+      SUNGEM n
+      IRDA n
+      ATM_HE n
+      SCSI_ACARD n
+      BLK_DEV_CMD640_ENHANCED n
+
+      FUSE_FS m
+
+      # systemd uses cgroups
+      CGROUPS y
+
+      # Latencytop
+      LATENCYTOP y
+
+      # Ubi for the mtd
+      MTD_UBI y
+      UBIFS_FS y
+      UBIFS_FS_XATTR y
+      UBIFS_FS_ADVANCED_COMPR y
+      UBIFS_FS_LZO y
+      UBIFS_FS_ZLIB y
+      UBIFS_FS_DEBUG n
+
+      # Kdb, for kernel troubles
+      KGDB y
+      KGDB_SERIAL_CONSOLE y
+      KGDB_KDB y
+    '';
+    kernelMakeFlags = [ "LOADADDR=0x0200000" ];
+    kernelTarget = "uImage";
+    uboot = "sheevaplug";
+    # Only for uboot = uboot :
+    ubootConfig = "sheevaplug_config";
+    kernelDTB = true; # Beyond 3.10
+    gcc = {
+      arch = "armv5te";
+      float = "soft";
+    };
+  };
+
+  raspberrypi = {
+    name = "raspberrypi";
+    kernelMajor = "2.6";
+    kernelHeadersBaseConfig = "bcm2835_defconfig";
+    kernelBaseConfig = "bcmrpi_defconfig";
+    kernelDTB = true;
+    kernelArch = "arm";
+    kernelAutoModules = false;
+    kernelExtraConfig = ''
+      BLK_DEV_RAM y
+      BLK_DEV_INITRD y
+      BLK_DEV_CRYPTOLOOP m
+      BLK_DEV_DM m
+      DM_CRYPT m
+      MD y
+      REISERFS_FS m
+      BTRFS_FS y
+      XFS_FS m
+      JFS_FS y
+      EXT4_FS y
+
+      IP_PNP y
+      IP_PNP_DHCP y
+      NFS_FS y
+      ROOT_NFS y
+      TUN m
+      NFS_V4 y
+      NFS_V4_1 y
+      NFS_FSCACHE y
+      NFSD m
+      NFSD_V2_ACL y
+      NFSD_V3 y
+      NFSD_V3_ACL y
+      NFSD_V4 y
+      NETFILTER y
+      IP_NF_IPTABLES y
+      IP_NF_FILTER y
+      IP_NF_MATCH_ADDRTYPE y
+      IP_NF_TARGET_LOG y
+      IP_NF_MANGLE y
+      IPV6 m
+      VLAN_8021Q m
+
+      CIFS y
+      CIFS_XATTR y
+      CIFS_POSIX y
+      CIFS_FSCACHE y
+      CIFS_ACL y
+
+      ZRAM m
+
+      # Disable OABI to have seccomp_filter (required for systemd)
+      # https://github.com/raspberrypi/firmware/issues/651
+      OABI_COMPAT n
+
+      # Fail to build
+      DRM n
+      SCSI_ADVANSYS n
+      USB_ISP1362_HCD n
+      SND_SOC n
+      SND_ALI5451 n
+      FB_SAVAGE n
+      SCSI_NSP32 n
+      ATA_SFF n
+      SUNGEM n
+      IRDA n
+      ATM_HE n
+      SCSI_ACARD n
+      BLK_DEV_CMD640_ENHANCED n
+
+      FUSE_FS m
+
+      # nixos mounts some cgroup
+      CGROUPS y
+
+      # Latencytop
+      LATENCYTOP y
+    '';
+    kernelTarget = "zImage";
+    uboot = null;
+    gcc = {
+      arch = "armv6";
+      fpu = "vfp";
+      float = "hard";
+    };
+  };
+
+  raspberrypi2 = armv7l-hf-multiplatform // {
+    name = "raspberrypi2";
+    kernelBaseConfig = "bcm2709_defconfig";
+    kernelDTB = true;
+    kernelAutoModules = false;
+    kernelExtraConfig = ''
+      BLK_DEV_RAM y
+      BLK_DEV_INITRD y
+      BLK_DEV_CRYPTOLOOP m
+      BLK_DEV_DM m
+      DM_CRYPT m
+      MD y
+      REISERFS_FS m
+      BTRFS_FS y
+      XFS_FS m
+      JFS_FS y
+      EXT4_FS y
+
+      IP_PNP y
+      IP_PNP_DHCP y
+      NFS_FS y
+      ROOT_NFS y
+      TUN m
+      NFS_V4 y
+      NFS_V4_1 y
+      NFS_FSCACHE y
+      NFSD m
+      NFSD_V2_ACL y
+      NFSD_V3 y
+      NFSD_V3_ACL y
+      NFSD_V4 y
+      NETFILTER y
+      IP_NF_IPTABLES y
+      IP_NF_FILTER y
+      IP_NF_MATCH_ADDRTYPE y
+      IP_NF_TARGET_LOG y
+      IP_NF_MANGLE y
+      IPV6 m
+      VLAN_8021Q m
+
+      CIFS y
+      CIFS_XATTR y
+      CIFS_POSIX y
+      CIFS_FSCACHE y
+      CIFS_ACL y
+
+      ZRAM m
+
+      # Disable OABI to have seccomp_filter (required for systemd)
+      # https://github.com/raspberrypi/firmware/issues/651
+      OABI_COMPAT n
+
+      # Fail to build
+      DRM n
+      SCSI_ADVANSYS n
+      USB_ISP1362_HCD n
+      SND_SOC n
+      SND_ALI5451 n
+      FB_SAVAGE n
+      SCSI_NSP32 n
+      ATA_SFF n
+      SUNGEM n
+      IRDA n
+      ATM_HE n
+      SCSI_ACARD n
+      BLK_DEV_CMD640_ENHANCED n
+
+      FUSE_FS m
+
+      # nixos mounts some cgroup
+      CGROUPS y
+
+      # Latencytop
+      LATENCYTOP y
+
+      # Disable the common config Xen, it doesn't build on ARM
+      XEN? n
+    '';
+    kernelTarget = "zImage";
+    uboot = null;
+  };
+
+  guruplug = sheevaplug // {
+    # Define `CONFIG_MACH_GURUPLUG' (see
+    # <http://kerneltrap.org/mailarchive/git-commits-head/2010/5/19/33618>)
+    # and other GuruPlug-specific things.  Requires the `guruplug-defconfig'
+    # patch.
+
+    kernelBaseConfig = "guruplug_defconfig";
+    #kernelHeadersBaseConfig = "guruplug_defconfig";
+  };
+
+  fuloong2f_n32 = {
+    name = "fuloong2f_n32";
+    kernelMajor = "2.6";
+    kernelHeadersBaseConfig = "fuloong2e_defconfig";
+    kernelBaseConfig = "lemote2f_defconfig";
+    kernelArch = "mips";
+    kernelAutoModules = false;
+    kernelExtraConfig = ''
+      MIGRATION n
+      COMPACTION n
+
+      # nixos mounts some cgroup
+      CGROUPS y
+
+      BLK_DEV_RAM y
+      BLK_DEV_INITRD y
+      BLK_DEV_CRYPTOLOOP m
+      BLK_DEV_DM m
+      DM_CRYPT m
+      MD y
+      REISERFS_FS m
+      EXT4_FS m
+      USB_STORAGE_CYPRESS_ATACB m
+
+      IP_PNP y
+      IP_PNP_DHCP y
+      IP_PNP_BOOTP y
+      NFS_FS y
+      ROOT_NFS y
+      TUN m
+      NFS_V4 y
+      NFS_V4_1 y
+      NFS_FSCACHE y
+      NFSD m
+      NFSD_V2_ACL y
+      NFSD_V3 y
+      NFSD_V3_ACL y
+      NFSD_V4 y
+
+      # Fail to build
+      DRM n
+      SCSI_ADVANSYS n
+      USB_ISP1362_HCD n
+      SND_SOC n
+      SND_ALI5451 n
+      FB_SAVAGE n
+      SCSI_NSP32 n
+      ATA_SFF n
+      SUNGEM n
+      IRDA n
+      ATM_HE n
+      SCSI_ACARD n
+      BLK_DEV_CMD640_ENHANCED n
+
+      FUSE_FS m
+
+      # Needed for udev >= 150
+      SYSFS_DEPRECATED_V2 n
+
+      VGA_CONSOLE n
+      VT_HW_CONSOLE_BINDING y
+      SERIAL_8250_CONSOLE y
+      FRAMEBUFFER_CONSOLE y
+      EXT2_FS y
+      EXT3_FS y
+      REISERFS_FS y
+      MAGIC_SYSRQ y
+
+      # The kernel doesn't boot at all, with FTRACE
+      FTRACE n
+    '';
+    kernelTarget = "vmlinux";
+    uboot = null;
+    gcc.arch = "loongson2f";
+  };
+
+  beaglebone = armv7l-hf-multiplatform // {
+    name = "beaglebone";
+    kernelBaseConfig = "omap2plus_defconfig";
+    kernelAutoModules = false;
+    kernelExtraConfig = ""; # TBD kernel config
+    kernelTarget = "zImage";
+    uboot = null;
+  };
+
+  armv7l-hf-multiplatform = {
+    name = "armv7l-hf-multiplatform";
+    kernelMajor = "2.6"; # Using "2.6" enables 2.6 kernel syscalls in glibc.
+    kernelHeadersBaseConfig = "multi_v7_defconfig";
+    kernelBaseConfig = "multi_v7_defconfig";
+    kernelArch = "arm";
+    kernelDTB = true;
+    kernelAutoModules = true;
+    kernelPreferBuiltin = true;
+    uboot = null;
+    kernelTarget = "zImage";
+    kernelExtraConfig = ''
+      # Fix broken sunxi-sid nvmem driver.
+      TI_CPTS y
+
+      # Hangs ODROID-XU4
+      ARM_BIG_LITTLE_CPUIDLE n
+    '';
+    gcc = {
+      # Some table about fpu flags:
+      # http://community.arm.com/servlet/JiveServlet/showImage/38-1981-3827/blogentry-103749-004812900+1365712953_thumb.png
+      # Cortex-A5: -mfpu=neon-fp16
+      # Cortex-A7 (rpi2): -mfpu=neon-vfpv4
+      # Cortex-A8 (beaglebone): -mfpu=neon
+      # Cortex-A9: -mfpu=neon-fp16
+      # Cortex-A15: -mfpu=neon-vfpv4
+
+      # More about FPU:
+      # https://wiki.debian.org/ArmHardFloatPort/VfpComparison
+
+      # vfpv3-d16 is what Debian uses and seems to be the best compromise: NEON is not supported in e.g. Scaleway or Tegra 2,
+      # and the above page suggests NEON is only an improvement with hand-written assembly.
+      arch = "armv7-a";
+      fpu = "vfpv3-d16";
+      float = "hard";
+
+      # For Raspberry Pi the 2 the best would be:
+      #   cpu = "cortex-a7";
+      #   fpu = "neon-vfpv4";
+    };
+  };
+
+  aarch64-multiplatform = {
+    name = "aarch64-multiplatform";
+    kernelMajor = "2.6"; # Using "2.6" enables 2.6 kernel syscalls in glibc.
+    kernelHeadersBaseConfig = "defconfig";
+    kernelBaseConfig = "defconfig";
+    kernelArch = "arm64";
+    kernelDTB = true;
+    kernelAutoModules = true;
+    kernelPreferBuiltin = true;
+    kernelExtraConfig = ''
+      # Raspberry Pi 3 stuff. Not needed for kernels >= 4.10.
+      ARCH_BCM2835 y
+      BCM2835_MBOX y
+      BCM2835_WDT y
+      RASPBERRYPI_FIRMWARE y
+      RASPBERRYPI_POWER y
+      SERIAL_8250_BCM2835AUX y
+      SERIAL_8250_EXTENDED y
+      SERIAL_8250_SHARE_IRQ y
+
+      # Cavium ThunderX stuff.
+      PCI_HOST_THUNDER_ECAM y
+    '';
+    uboot = null;
+    kernelTarget = "Image";
+    gcc = {
+      arch = "armv8-a";
+    };
+  };
+
+  selectBySystem = system: {
+      "i686-linux" = pc32;
+      "x86_64-linux" = pc64;
+      "armv5tel-linux" = sheevaplug;
+      "armv6l-linux" = raspberrypi;
+      "armv7l-linux" = armv7l-hf-multiplatform;
+      "aarch64-linux" = aarch64-multiplatform;
+      "mips64el-linux" = fuloong2f_n32;
+    }.${system} or pcBase;
+}
diff --git a/lib/tests.nix b/lib/tests.nix
index 1a9a5accd1c..995a743fe43 100644
--- a/lib/tests.nix
+++ b/lib/tests.nix
@@ -231,7 +231,7 @@ runTests {
     };
     in {
       expr = generators.toJSON {} val;
-      # trival implementation
+      # trivial implementation
       expected = builtins.toJSON val;
   };
 
@@ -243,7 +243,7 @@ runTests {
     };
     in {
       expr = generators.toYAML {} val;
-      # trival implementation
+      # trivial implementation
       expected = builtins.toJSON val;
   };
 
@@ -277,4 +277,14 @@ runTests {
     expected = [ "2001" "db8" "0" "0042" "" "8a2e" "370" "" ];
   };
 
+  testComposeExtensions = {
+    expr = let obj = makeExtensible (self: { foo = self.bar; });
+               f = self: super: { bar = false; baz = true; };
+               g = self: super: { bar = super.baz or false; };
+               f_o_g = composeExtensions f g;
+               composed = obj.extend f_o_g;
+           in composed.foo;
+    expected = true;
+  };
+
 }
diff --git a/lib/tests/release.nix b/lib/tests/release.nix
index f9f57424f7d..dfa4ca2676d 100644
--- a/lib/tests/release.nix
+++ b/lib/tests/release.nix
@@ -1,31 +1,40 @@
-{ nixpkgs }:
+{ nixpkgs ? { outPath = (import ../.).cleanSource ../..; revCount = 1234; shortRev = "abcdef"; }
+, # The platforms for which we build Nixpkgs.
+  supportedSystems ? [ builtins.currentSystem ]
+, # Strip most of attributes when evaluating to spare memory usage
+  scrubJobs ? true
+}:
 
-with import ../.. { };
+with import ../../pkgs/top-level/release-lib.nix { inherit supportedSystems scrubJobs; };
 with lib;
 
-stdenv.mkDerivation {
-  name = "nixpkgs-lib-tests";
-  buildInputs = [ nix ];
-  NIX_PATH="nixpkgs=${nixpkgs}";
+{
+  systems = import ./systems.nix { inherit lib assertTrue; };
 
-  buildCommand = ''
-    datadir="${nix}/share"
-    export TEST_ROOT=$(pwd)/test-tmp
-    export NIX_BUILD_HOOK=
-    export NIX_CONF_DIR=$TEST_ROOT/etc
-    export NIX_DB_DIR=$TEST_ROOT/db
-    export NIX_LOCALSTATE_DIR=$TEST_ROOT/var
-    export NIX_LOG_DIR=$TEST_ROOT/var/log/nix
-    export NIX_MANIFESTS_DIR=$TEST_ROOT/var/nix/manifests
-    export NIX_STATE_DIR=$TEST_ROOT/var/nix
-    export NIX_STORE_DIR=$TEST_ROOT/store
-    export PAGER=cat
-    cacheDir=$TEST_ROOT/binary-cache
-    nix-store --init
+  moduleSystem = pkgs.stdenv.mkDerivation {
+    name = "nixpkgs-lib-tests";
+    buildInputs = [ pkgs.nix ];
+    NIX_PATH="nixpkgs=${nixpkgs}";
 
-    cd ${nixpkgs}/lib/tests
-    ./modules.sh
+    buildCommand = ''
+      datadir="${pkgs.nix}/share"
+      export TEST_ROOT=$(pwd)/test-tmp
+      export NIX_BUILD_HOOK=
+      export NIX_CONF_DIR=$TEST_ROOT/etc
+      export NIX_DB_DIR=$TEST_ROOT/db
+      export NIX_LOCALSTATE_DIR=$TEST_ROOT/var
+      export NIX_LOG_DIR=$TEST_ROOT/var/log/nix
+      export NIX_MANIFESTS_DIR=$TEST_ROOT/var/nix/manifests
+      export NIX_STATE_DIR=$TEST_ROOT/var/nix
+      export NIX_STORE_DIR=$TEST_ROOT/store
+      export PAGER=cat
+      cacheDir=$TEST_ROOT/binary-cache
+      nix-store --init
 
-    touch $out
-  '';
+      cd ${nixpkgs}/lib/tests
+      ./modules.sh
+
+      touch $out
+    '';
+  };
 }
diff --git a/lib/tests/systems.nix b/lib/tests/systems.nix
new file mode 100644
index 00000000000..5eacc0defaf
--- /dev/null
+++ b/lib/tests/systems.nix
@@ -0,0 +1,31 @@
+# We assert that the new algorithmic way of generating these lists matches the
+# way they were hard-coded before.
+#
+# One might think "if we exhaustively test, what's the point of procedurally
+# calculating the lists anyway?". The answer is one can mindlessly update these
+# tests as new platforms become supported, and then just give the diff a quick
+# sanity check before committing :).
+{ lib, assertTrue }:
+
+with lib.systems.doubles;
+
+let mseteq = x: y: lib.sort lib.lessThan x == lib.sort lib.lessThan y; in
+
+{
+  all = assertTrue (mseteq all (linux ++ darwin ++ cygwin ++ freebsd ++ openbsd ++ netbsd ++ illumos));
+
+  arm = assertTrue (mseteq arm [ "armv5tel-linux" "armv6l-linux" "armv7l-linux" ]);
+  i686 = assertTrue (mseteq i686 [ "i686-linux" "i686-freebsd" "i686-netbsd" "i686-openbsd" "i686-cygwin" ]);
+  mips = assertTrue (mseteq mips [ "mips64el-linux" ]);
+  x86_64 = assertTrue (mseteq x86_64 [ "x86_64-linux" "x86_64-darwin" "x86_64-freebsd" "x86_64-openbsd" "x86_64-netbsd" "x86_64-cygwin" "x86_64-solaris" ]);
+
+  cygwin = assertTrue (mseteq cygwin [ "i686-cygwin" "x86_64-cygwin" ]);
+  darwin = assertTrue (mseteq darwin [ "x86_64-darwin" ]);
+  freebsd = assertTrue (mseteq freebsd [ "i686-freebsd" "x86_64-freebsd" ]);
+  gnu = assertTrue (mseteq gnu (linux /* ++ hurd ++ kfreebsd ++ ... */));
+  illumos = assertTrue (mseteq illumos [ "x86_64-solaris" ]);
+  linux = assertTrue (mseteq linux [ "i686-linux" "x86_64-linux" "armv5tel-linux" "armv6l-linux" "armv7l-linux" "aarch64-linux" "mips64el-linux" ]);
+  netbsd = assertTrue (mseteq netbsd [ "i686-netbsd" "x86_64-netbsd" ]);
+  openbsd = assertTrue (mseteq openbsd [ "i686-openbsd" "x86_64-openbsd" ]);
+  unix = assertTrue (mseteq unix (linux ++ darwin ++ freebsd ++ openbsd ++ netbsd ++ illumos));
+}
diff --git a/lib/trivial.nix b/lib/trivial.nix
index 40499b2b509..735aa55e0dc 100644
--- a/lib/trivial.nix
+++ b/lib/trivial.nix
@@ -30,6 +30,11 @@ rec {
   /* boolean “and” */
   and = x: y: x && y;
 
+  /* Convert a boolean to a string.
+     Note that toString on a bool returns "1" and "".
+  */
+  boolToString = b: if b then "true" else "false";
+
   /* Merge two attribute sets shallowly, right side trumps left
 
      Example:
@@ -80,6 +85,15 @@ rec {
   # argument, but it's nice this way if several uses of `extends` are cascaded.
   extends = f: rattrs: self: let super = rattrs self; in super // f self super;
 
+  # Compose two extending functions of the type expected by 'extends'
+  # into one where changes made in the first are available in the
+  # 'super' of the second
+  composeExtensions =
+    f: g: self: super:
+      let fApplied = f self super;
+          super' = super // fApplied;
+      in fApplied // g self super';
+
   # Create an overridable, recursive attribute set. For example:
   #
   #     nix-repl> obj = makeExtensible (self: { })
@@ -108,6 +122,9 @@ rec {
   # Flip the order of the arguments of a binary function.
   flip = f: a: b: f b a;
 
+  # Apply function if argument is non-null
+  mapNullable = f: a: if isNull a then a else f a;
+
   # Pull in some builtins not included elsewhere.
   inherit (builtins)
     pathExists readFile isBool isFunction
diff --git a/lib/types.nix b/lib/types.nix
index c834cc8e653..45122759bfc 100644
--- a/lib/types.nix
+++ b/lib/types.nix
@@ -52,7 +52,7 @@ rec {
     { # Human-readable representation of the type, should be equivalent to
       # the type function name.
       name
-    , # Description of the type, defined recursively by embedding the the wrapped type if any.
+    , # Description of the type, defined recursively by embedding the wrapped type if any.
       description ? null
     , # Function applied to each definition that should return true if
       # its type-correct, false otherwise.
diff --git a/maintainers/scripts/all-tarballs.nix b/maintainers/scripts/all-tarballs.nix
index 552f8802296..d981a1fa7db 100644
--- a/maintainers/scripts/all-tarballs.nix
+++ b/maintainers/scripts/all-tarballs.nix
@@ -14,5 +14,5 @@ removeAttrs (import ../../pkgs/top-level/release.nix
     supportedSystems = [ "x86_64-linux" ];
   })
   [ # Remove jobs whose evaluation depends on a writable Nix store.
-    "tarball" "unstable"
+    "tarball" "unstable" "darwin-tested"
   ]
diff --git a/nixos/doc/manual/release-notes/rl-1709.xml b/nixos/doc/manual/release-notes/rl-1709.xml
index bd999b60013..5fba4c34ec8 100644
--- a/nixos/doc/manual/release-notes/rl-1709.xml
+++ b/nixos/doc/manual/release-notes/rl-1709.xml
@@ -35,6 +35,8 @@ following incompatible changes:</para>
 <itemizedlist>
   <listitem>
     <para>
+      Top-level <literal>idea</literal> package collection was renamed.
+      All JetBrains IDEs are now at <literal>jetbrains</literal>.
     </para>
   </listitem>
 </itemizedlist>
diff --git a/nixos/lib/test-driver/Machine.pm b/nixos/lib/test-driver/Machine.pm
index 30664406b26..c619264eb94 100644
--- a/nixos/lib/test-driver/Machine.pm
+++ b/nixos/lib/test-driver/Machine.pm
@@ -542,16 +542,20 @@ sub getScreenText {
     $self->nest("performing optical character recognition", sub {
         my $tmpbase = Cwd::abs_path(".")."/ocr";
         my $tmpin = $tmpbase."in.ppm";
-        my $tmpout = "$tmpbase.ppm";
 
         $self->sendMonitorCommand("screendump $tmpin");
-        system("ppmtopgm $tmpin | pamscale 4 -filter=lanczos > $tmpout") == 0
-            or die "cannot scale screenshot";
+
+        my $magickArgs = "-filter Catrom -density 72 -resample 300 "
+                       . "-contrast -normalize -despeckle -type grayscale "
+                       . "-sharpen 1 -posterize 3 -negate -gamma 100 "
+                       . "-blur 1x65535";
+        my $tessArgs = "-c debug_file=/dev/null --psm 11 --oem 2";
+
+        $text = `convert $magickArgs $tmpin tiff:- | tesseract - - $tessArgs`;
+        my $status = $? >> 8;
         unlink $tmpin;
-        system("tesseract $tmpout $tmpbase") == 0 or die "OCR failed";
-        unlink $tmpout;
-        $text = read_file("$tmpbase.txt");
-        unlink "$tmpbase.txt";
+
+        die "OCR failed with exit code $status" if $status != 0;
     });
     return $text;
 }
diff --git a/nixos/lib/testing.nix b/nixos/lib/testing.nix
index 8539fef0a19..58c447c76db 100644
--- a/nixos/lib/testing.nix
+++ b/nixos/lib/testing.nix
@@ -93,7 +93,7 @@ rec {
 
       vms = map (m: m.config.system.build.vm) (lib.attrValues nodes);
 
-      ocrProg = tesseract;
+      ocrProg = tesseract_4.override { enableLanguages = [ "eng" ]; };
 
       # Generate onvenience wrappers for running the test driver
       # interactively with the specified network, and for starting the
@@ -111,7 +111,8 @@ rec {
           vms=($(for i in ${toString vms}; do echo $i/bin/run-*-vm; done))
           wrapProgram $out/bin/nixos-test-driver \
             --add-flags "''${vms[*]}" \
-            ${lib.optionalString enableOCR "--prefix PATH : '${ocrProg}/bin'"} \
+            ${lib.optionalString enableOCR
+              "--prefix PATH : '${ocrProg}/bin:${imagemagick}/bin'"} \
             --run "testScript=\"\$(cat $out/test-script)\"" \
             --set testScript '$testScript' \
             --set VLANS '${toString vlans}'
diff --git a/nixos/maintainers/scripts/gce/create-gce.sh b/nixos/maintainers/scripts/gce/create-gce.sh
index 7f8a0d23027..ef1801fe54b 100755
--- a/nixos/maintainers/scripts/gce/create-gce.sh
+++ b/nixos/maintainers/scripts/gce/create-gce.sh
@@ -1,15 +1,23 @@
-#! /bin/sh -e
+#!/usr/bin/env nix-shell
+#! nix-shell -i bash -p google-cloud-sdk
 
-BUCKET_NAME=${BUCKET_NAME:-nixos-images}
-export NIX_PATH=nixpkgs=../../../..
-export NIXOS_CONFIG=$(dirname $(readlink -f $0))/../../../modules/virtualisation/google-compute-image.nix
-export TIMESTAMP=$(date +%Y%m%d%H%M)
+set -euo pipefail
+
+BUCKET_NAME="${BUCKET_NAME:-nixos-images}"
+TIMESTAMP="$(date +%Y%m%d%H%M)"
+export TIMESTAMP
 
 nix-build '<nixpkgs/nixos>' \
-   -A config.system.build.googleComputeImage --argstr system x86_64-linux -o gce --option extra-binary-caches http://hydra.nixos.org -j 10
+   -A config.system.build.googleComputeImage \
+   --arg configuration "{ imports = [ <nixpkgs/nixos/modules/virtualisation/google-compute-image.nix> ]; }" \
+   --argstr system x86_64-linux \
+   -o gce \
+   -j 10
 
-img=$(echo gce/*.tar.gz)
-if ! gsutil ls gs://${BUCKET_NAME}/$(basename $img); then
-  gsutil cp $img gs://${BUCKET_NAME}/$(basename $img)
+img_path=$(echo gce/*.tar.gz)
+img_name=$(basename "$img_path")
+img_id=$(echo "$img_name" | sed 's|.raw.tar.gz$||;s|\.|-|g;s|_|-|g')
+if ! gsutil ls "gs://${BUCKET_NAME}/$img_name"; then
+  gsutil cp "$img_path" "gs://${BUCKET_NAME}/$img_name"
 fi
-gcloud compute images create $(basename $img .raw.tar.gz | sed 's|\.|-|' | sed 's|_|-|') --source-uri gs://${BUCKET_NAME}/$(basename $img)
+gcloud compute images create "$img_id" --source-uri "gs://${BUCKET_NAME}/$img_name"
diff --git a/nixos/modules/config/fonts/fontconfig-penultimate.nix b/nixos/modules/config/fonts/fontconfig-penultimate.nix
index 83d6532774e..3e163b8ec51 100644
--- a/nixos/modules/config/fonts/fontconfig-penultimate.nix
+++ b/nixos/modules/config/fonts/fontconfig-penultimate.nix
@@ -5,7 +5,7 @@ with lib;
 let
   cfg = config.fonts.fontconfig;
 
-  fcBool = x: "<bool>" + (if x then "true" else "false") + "</bool>";
+  fcBool = x: "<bool>" + (boolToString x) + "</bool>";
 
   # back-supported fontconfig version and package
   # version is used for font cache generation
diff --git a/nixos/modules/config/fonts/fontconfig-ultimate.nix b/nixos/modules/config/fonts/fontconfig-ultimate.nix
index e412146a039..1bf9fdb1984 100644
--- a/nixos/modules/config/fonts/fontconfig-ultimate.nix
+++ b/nixos/modules/config/fonts/fontconfig-ultimate.nix
@@ -63,6 +63,15 @@ in
               <literal>none</literal> disables the substitutions.
             '';
           };
+
+          preset = mkOption {
+            type = types.enum ["ultimate1" "ultimate2" "ultimate3" "ultimate4" "ultimate5" "osx" "windowsxp"];
+            default = "ultimate3";
+            description = ''
+              FreeType rendering settings preset. Any of the presets may be
+              customized by setting environment variables.
+            '';
+          };
         };
       };
     };
@@ -72,6 +81,7 @@ in
   config = mkIf (config.fonts.fontconfig.enable && cfg.enable) {
 
     fonts.fontconfig.confPackages = [ confPkg ];
+    environment.variables."INFINALITY_FT" = cfg.preset;
 
   };
 
diff --git a/nixos/modules/config/fonts/fontconfig.nix b/nixos/modules/config/fonts/fontconfig.nix
index d44b583447a..12f5ca2e799 100644
--- a/nixos/modules/config/fonts/fontconfig.nix
+++ b/nixos/modules/config/fonts/fontconfig.nix
@@ -20,7 +20,7 @@ with lib;
 
 let cfg = config.fonts.fontconfig;
 
-    fcBool = x: "<bool>" + (if x then "true" else "false") + "</bool>";
+    fcBool = x: "<bool>" + (boolToString x) + "</bool>";
 
     # back-supported fontconfig version and package
     # version is used for font cache generation
diff --git a/nixos/modules/config/fonts/fonts.nix b/nixos/modules/config/fonts/fonts.nix
index af3d93fc1bc..0dd01df9da7 100644
--- a/nixos/modules/config/fonts/fonts.nix
+++ b/nixos/modules/config/fonts/fonts.nix
@@ -37,6 +37,7 @@ with lib;
         pkgs.xorg.fontbhlucidatypewriter75dpi
         pkgs.dejavu_fonts
         pkgs.freefont_ttf
+        pkgs.gyre-fonts # TrueType substitutes for standard PostScript fonts
         pkgs.liberation_ttf
         pkgs.xorg.fontbh100dpi
         pkgs.xorg.fontmiscmisc
diff --git a/nixos/modules/config/shells-environment.nix b/nixos/modules/config/shells-environment.nix
index 8a7b3ea0bfd..152493151fd 100644
--- a/nixos/modules/config/shells-environment.nix
+++ b/nixos/modules/config/shells-environment.nix
@@ -168,9 +168,6 @@ in
 
          ${cfg.extraInit}
 
-         # The setuid/setcap wrappers override other bin directories.
-         export PATH="${config.security.wrapperDir}:$PATH"
-
          # ~/bin if it exists overrides other bin directories.
          export PATH="$HOME/bin:$PATH"
        '';
diff --git a/nixos/modules/hardware/all-firmware.nix b/nixos/modules/hardware/all-firmware.nix
index fb8e1ccab66..bc82bfd066c 100644
--- a/nixos/modules/hardware/all-firmware.nix
+++ b/nixos/modules/hardware/all-firmware.nix
@@ -26,6 +26,7 @@ with lib;
       firmwareLinuxNonfree
       intel2200BGFirmware
       rtl8723bs-firmware
+      rtl8192su-firmware
     ];
   };
 
diff --git a/nixos/modules/installer/tools/nixos-install.sh b/nixos/modules/installer/tools/nixos-install.sh
index 57bc249360e..e2ae2ee9fdf 100644
--- a/nixos/modules/installer/tools/nixos-install.sh
+++ b/nixos/modules/installer/tools/nixos-install.sh
@@ -87,38 +87,6 @@ if ! test -e "$mountPoint"; then
     exit 1
 fi
 
-
-# Mount some stuff in the target root directory.
-mkdir -m 0755 -p $mountPoint/dev $mountPoint/proc $mountPoint/sys $mountPoint/etc $mountPoint/run $mountPoint/home
-mkdir -m 01777 -p $mountPoint/tmp
-mkdir -m 0755 -p $mountPoint/tmp/root
-mkdir -m 0755 -p $mountPoint/var
-mkdir -m 0700 -p $mountPoint/root
-mount --rbind /dev $mountPoint/dev
-mount --rbind /proc $mountPoint/proc
-mount --rbind /sys $mountPoint/sys
-mount --rbind / $mountPoint/tmp/root
-mount -t tmpfs -o "mode=0755" none $mountPoint/run
-rm -rf $mountPoint/var/run
-ln -s /run $mountPoint/var/run
-for f in /etc/resolv.conf /etc/hosts; do rm -f $mountPoint/$f; [ -f "$f" ] && cp -Lf $f $mountPoint/etc/; done
-for f in /etc/passwd /etc/group;      do touch $mountPoint/$f; [ -f "$f" ] && mount --rbind -o ro $f $mountPoint/$f; done
-
-cp -Lf "@cacert@" "$mountPoint/tmp/ca-cert.crt"
-export SSL_CERT_FILE=/tmp/ca-cert.crt
-# For Nix 1.7
-export CURL_CA_BUNDLE=/tmp/ca-cert.crt
-
-if [ -n "$runChroot" ]; then
-    if ! [ -L $mountPoint/nix/var/nix/profiles/system ]; then
-        echo "$0: installation not finished; cannot chroot into installation directory"
-        exit 1
-    fi
-    ln -s /nix/var/nix/profiles/system $mountPoint/run/current-system
-    exec chroot $mountPoint "${chrootCommand[@]}"
-fi
-
-
 # Get the path of the NixOS configuration file.
 if test -z "$NIXOS_CONFIG"; then
     NIXOS_CONFIG=/etc/nixos/configuration.nix
@@ -130,121 +98,60 @@ if [ ! -e "$mountPoint/$NIXOS_CONFIG" ] && [ -z "$closure" ]; then
 fi
 
 
-# Create the necessary Nix directories on the target device, if they
-# don't already exist.
-mkdir -m 0755 -p \
-    $mountPoint/nix/var/nix/gcroots \
-    $mountPoint/nix/var/nix/temproots \
-    $mountPoint/nix/var/nix/userpool \
-    $mountPoint/nix/var/nix/profiles \
-    $mountPoint/nix/var/nix/db \
-    $mountPoint/nix/var/log/nix/drvs
-
-mkdir -m 1775 -p $mountPoint/nix/store
-chown @root_uid@:@nixbld_gid@ $mountPoint/nix/store
-
-
-# There is no daemon in the chroot.
-unset NIX_REMOTE
-
-
-# We don't have locale-archive in the chroot, so clear $LANG.
-export LANG=
-export LC_ALL=
-export LC_TIME=
-
-
 # Builds will use users that are members of this group
 extraBuildFlags+=(--option "build-users-group" "$buildUsersGroup")
 
-
 # Inherit binary caches from the host
+# TODO: will this still work with Nix 1.12 now that it has no perl? Probably not... 
 binary_caches="$(@perl@/bin/perl -I @nix@/lib/perl5/site_perl/*/* -e 'use Nix::Config; Nix::Config::readConfig; print $Nix::Config::config{"binary-caches"};')"
 extraBuildFlags+=(--option "binary-caches" "$binary_caches")
 
+nixpkgs="$(readlink -f "$(nix-instantiate --find-file nixpkgs)")"
+export NIX_PATH="nixpkgs=$nixpkgs:nixos-config=$mountPoint/$NIXOS_CONFIG"
+unset NIXOS_CONFIG
 
-# Copy Nix to the Nix store on the target device, unless it's already there.
-if ! NIX_DB_DIR=$mountPoint/nix/var/nix/db nix-store --check-validity @nix@ 2> /dev/null; then
-    echo "copying Nix to $mountPoint...."
-    for i in $(@perl@/bin/perl @pathsFromGraph@ @nixClosure@); do
-        echo "  $i"
-        chattr -R -i $mountPoint/$i 2> /dev/null || true # clear immutable bit
-        @rsync@/bin/rsync -a $i $mountPoint/nix/store/
-    done
-
-    # Register the paths in the Nix closure as valid.  This is necessary
-    # to prevent them from being deleted the first time we install
-    # something.  (I.e., Nix will see that, e.g., the glibc path is not
-    # valid, delete it to get it out of the way, but as a result nothing
-    # will work anymore.)
-    chroot $mountPoint @nix@/bin/nix-store --register-validity < @nixClosure@
-fi
-
-
-# Create the required /bin/sh symlink; otherwise lots of things
-# (notably the system() function) won't work.
-mkdir -m 0755 -p $mountPoint/bin
-# !!! assuming that @shell@ is in the closure
-ln -sf @shell@ $mountPoint/bin/sh
+# TODO: do I need to set NIX_SUBSTITUTERS here or is the --option binary-caches above enough?
 
 
-# Build hooks likely won't function correctly in the minimal chroot; just disable them.
-unset NIX_BUILD_HOOK
+# A place to drop temporary closures
+trap "rm -rf $tmpdir" EXIT
+tmpdir="$(mktemp -d)"
 
-# Make the build below copy paths from the CD if possible.  Note that
-# /tmp/root in the chroot is the root of the CD.
-export NIX_OTHER_STORES=/tmp/root/nix:$NIX_OTHER_STORES
-
-p=@nix@/libexec/nix/substituters
-export NIX_SUBSTITUTERS=$p/copy-from-other-stores.pl:$p/download-from-binary-cache.pl
+# Build a closure (on the host; we then copy it into the guest)
+function closure() {
+    nix-build "${extraBuildFlags[@]}" --no-out-link -E "with import <nixpkgs> {}; runCommand \"closure\" { exportReferencesGraph = [ \"x\" (buildEnv { name = \"env\"; paths = [ ($1) stdenv ]; }) ]; } \"cp x \$out\""
+}
 
+system_closure="$tmpdir/system.closure"
 
 if [ -z "$closure" ]; then
-    # Get the absolute path to the NixOS/Nixpkgs sources.
-    nixpkgs="$(readlink -f $(nix-instantiate --find-file nixpkgs))"
-
-    nixEnvAction="-f <nixpkgs/nixos> --set -A system"
+    expr="(import <nixpkgs/nixos> {}).system"
+    system_root="$(nix-build -E "$expr")"
+    system_closure="$(closure "$expr")"
 else
-    nixpkgs=""
-    nixEnvAction="--set $closure"
+    system_root=$closure
+    # Create a temporary file ending in .closure (so nixos-prepare-root knows to --import it) to transport the store closure
+    # to the filesytem we're preparing. Also delete it on exit!
+    nix-store --export $(nix-store -qR $closure) > $system_closure
 fi
 
-# Build the specified Nix expression in the target store and install
-# it into the system configuration profile.
-echo "building the system configuration..."
-NIX_PATH="nixpkgs=/tmp/root/$nixpkgs:nixos-config=$NIXOS_CONFIG" NIXOS_CONFIG= \
-    chroot $mountPoint @nix@/bin/nix-env \
-    "${extraBuildFlags[@]}" -p /nix/var/nix/profiles/system $nixEnvAction
+channel_root="$(nix-env -p /nix/var/nix/profiles/per-user/root/channels -q nixos --no-name --out-path 2>/dev/null || echo -n "")"
+channel_closure="$tmpdir/channel.closure"
+nix-store --export $channel_root > $channel_closure
 
+# Populate the target root directory with the basics
+@prepare_root@/bin/nixos-prepare-root $mountPoint $channel_root $system_root @nixClosure@ $system_closure $channel_closure
 
-# Copy the NixOS/Nixpkgs sources to the target as the initial contents
-# of the NixOS channel.
-mkdir -m 0755 -p $mountPoint/nix/var/nix/profiles
-mkdir -m 1777 -p $mountPoint/nix/var/nix/profiles/per-user
-mkdir -m 0755 -p $mountPoint/nix/var/nix/profiles/per-user/root
-srcs=$(nix-env "${extraBuildFlags[@]}" -p /nix/var/nix/profiles/per-user/root/channels -q nixos --no-name --out-path 2>/dev/null || echo -n "")
-if [ -z "$noChannelCopy" ] && [ -n "$srcs" ]; then
-    echo "copying NixOS/Nixpkgs sources..."
-    chroot $mountPoint @nix@/bin/nix-env \
-        "${extraBuildFlags[@]}" -p /nix/var/nix/profiles/per-user/root/channels -i "$srcs" --quiet
-fi
-mkdir -m 0700 -p $mountPoint/root/.nix-defexpr
-ln -sfn /nix/var/nix/profiles/per-user/root/channels $mountPoint/root/.nix-defexpr/channels
-
-
-# Get rid of the /etc bind mounts.
-for f in /etc/passwd /etc/group; do [ -f "$f" ] && umount $mountPoint/$f; done
+# nixos-prepare-root doesn't currently do anything with file ownership, so we set it up here instead
+chown @root_uid@:@nixbld_gid@ $mountPoint/nix/store
 
+mount --rbind /dev $mountPoint/dev
+mount --rbind /proc $mountPoint/proc
+mount --rbind /sys $mountPoint/sys
 
 # Grub needs an mtab.
 ln -sfn /proc/mounts $mountPoint/etc/mtab
 
-
-# Mark the target as a NixOS installation, otherwise
-# switch-to-configuration will chicken out.
-touch $mountPoint/etc/NIXOS
-
-
 # Switch to the new system configuration.  This will install Grub with
 # a menu default pointing at the kernel/initrd/etc of the new
 # configuration.
diff --git a/nixos/modules/installer/tools/nixos-prepare-root.sh b/nixos/modules/installer/tools/nixos-prepare-root.sh
new file mode 100644
index 00000000000..c374330f846
--- /dev/null
+++ b/nixos/modules/installer/tools/nixos-prepare-root.sh
@@ -0,0 +1,105 @@
+#! @shell@
+
+# This script's goal is to perform all "static" setup of a filesystem structure from pre-built store paths. Everything
+# in here should run in a non-root context and inside a Nix builder. It's designed primarily to be called from image-
+# building scripts and from nixos-install, but because it makes very few assumptions about the context in which it runs,
+# it could be useful in other contexts as well.
+#
+# Current behavior:
+#  - set up basic filesystem structure
+#  - make Nix store etc.
+#  - copy Nix, system, channel, and misceallaneous closures to target Nix store
+#  - register validity of all paths in the target store
+#  - set up channel and system profiles
+
+# Ensure a consistent umask.
+umask 0022
+
+set -e
+
+mountPoint="$1"
+channel="$2"
+system="$3"
+shift 3
+closures="$@"
+
+PATH="@coreutils@/bin:@nix@/bin:@perl@/bin:@utillinux@/bin:@rsync@/bin"
+
+if ! test -e "$mountPoint"; then
+    echo "mount point $mountPoint doesn't exist"
+    exit 1
+fi
+
+# Create a few of the standard directories in the target root directory.
+mkdir -m 0755 -p $mountPoint/dev $mountPoint/proc $mountPoint/sys $mountPoint/etc $mountPoint/run $mountPoint/home
+mkdir -m 01777 -p $mountPoint/tmp
+mkdir -m 0755 -p $mountPoint/tmp/root
+mkdir -m 0755 -p $mountPoint/var
+mkdir -m 0700 -p $mountPoint/root
+
+ln -s /run $mountPoint/var/run
+
+# Create the necessary Nix directories on the target device
+mkdir -m 0755 -p \
+    $mountPoint/nix/var/nix/gcroots \
+    $mountPoint/nix/var/nix/temproots \
+    $mountPoint/nix/var/nix/userpool \
+    $mountPoint/nix/var/nix/profiles \
+    $mountPoint/nix/var/nix/db \
+    $mountPoint/nix/var/log/nix/drvs
+
+mkdir -m 1775 -p $mountPoint/nix/store
+
+# All Nix operations below should operate on our target store, not /nix/store.
+# N.B: this relies on Nix 1.12 or higher
+export NIX_REMOTE=local?root=$mountPoint
+
+# Copy our closures to the Nix store on the target mount point, unless they're already there.
+for i in $closures; do
+    # We support closures both in the format produced by `nix-store --export` and by `exportReferencesGraph`,
+    # mostly because there doesn't seem to be a single format that can be produced outside of a nix build and
+    # inside one. See https://github.com/NixOS/nix/issues/1242 for more discussion.
+    if [[ "$i" =~ \.closure$ ]]; then
+        echo "importing serialized closure $i to $mountPoint..."
+        nix-store --import < $i
+    else
+        # There has to be a better way to do this, right?
+        echo "copying closure $i to $mountPoint..."
+        for j in $(perl @pathsFromGraph@ $i); do
+            echo "  $j... "
+            rsync -a $j $mountPoint/nix/store/
+        done
+
+        nix-store --register-validity < $i
+    fi
+done
+
+# Create the required /bin/sh symlink; otherwise lots of things
+# (notably the system() function) won't work.
+if [ ! -x $mountPoint/@shell@ ]; then
+    echo "Error: @shell@ wasn't included in the closure" >&2
+    exit 1
+fi
+mkdir -m 0755 -p $mountPoint/bin
+ln -sf @shell@ $mountPoint/bin/sh
+
+echo "setting the system closure to '$system'..."
+nix-env "${extraBuildFlags[@]}" -p $mountPoint/nix/var/nix/profiles/system --set "$system"
+
+ln -sfn /nix/var/nix/profiles/system $mountPoint/run/current-system
+
+# Copy the NixOS/Nixpkgs sources to the target as the initial contents of the NixOS channel.
+mkdir -m 0755 -p $mountPoint/nix/var/nix/profiles
+mkdir -m 1777 -p $mountPoint/nix/var/nix/profiles/per-user
+mkdir -m 0755 -p $mountPoint/nix/var/nix/profiles/per-user/root
+
+if [ -z "$noChannelCopy" ] && [ -n "$channel" ]; then
+    echo "copying channel..."
+    nix-env --option build-use-substitutes false "${extraBuildFlags[@]}" -p $mountPoint/nix/var/nix/profiles/per-user/root/channels --set "$channel" --quiet
+fi
+mkdir -m 0700 -p $mountPoint/root/.nix-defexpr
+ln -sfn /nix/var/nix/profiles/per-user/root/channels $mountPoint/root/.nix-defexpr/channels
+
+# Mark the target as a NixOS installation, otherwise switch-to-configuration will chicken out.
+touch $mountPoint/etc/NIXOS
+
diff --git a/nixos/modules/installer/tools/tools.nix b/nixos/modules/installer/tools/tools.nix
index a35f6ad8ae5..a3bae78c0ff 100644
--- a/nixos/modules/installer/tools/tools.nix
+++ b/nixos/modules/installer/tools/tools.nix
@@ -4,7 +4,6 @@
 { config, pkgs, modulesPath, ... }:
 
 let
-
   cfg = config.installer;
 
   makeProg = args: pkgs.substituteAll (args // {
@@ -17,6 +16,14 @@ let
     src = ./nixos-build-vms/nixos-build-vms.sh;
   };
 
+  nixos-prepare-root = makeProg {
+    name = "nixos-prepare-root";
+    src = ./nixos-prepare-root.sh;
+
+    nix = pkgs.nixUnstable;
+    inherit (pkgs) perl pathsFromGraph rsync utillinux coreutils;
+  };
+
   nixos-install = makeProg {
     name = "nixos-install";
     src = ./nixos-install.sh;
@@ -26,6 +33,7 @@ let
     cacert = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt";
     root_uid = config.ids.uids.root;
     nixbld_gid = config.ids.gids.nixbld;
+    prepare_root = nixos-prepare-root;
 
     nixClosure = pkgs.runCommand "closure"
       { exportReferencesGraph = ["refs" config.nix.package.out]; }
@@ -69,6 +77,7 @@ in
 
     environment.systemPackages =
       [ nixos-build-vms
+        nixos-prepare-root
         nixos-install
         nixos-rebuild
         nixos-generate-config
@@ -77,7 +86,7 @@ in
       ];
 
     system.build = {
-      inherit nixos-install nixos-generate-config nixos-option nixos-rebuild;
+      inherit nixos-install nixos-prepare-root nixos-generate-config nixos-option nixos-rebuild;
     };
 
   };
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 0035368273c..530ae1d1cf0 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -89,6 +89,7 @@
   ./programs/nano.nix
   ./programs/oblogout.nix
   ./programs/screen.nix
+  ./programs/slock.nix
   ./programs/shadow.nix
   ./programs/shell.nix
   ./programs/spacefm.nix
@@ -130,6 +131,7 @@
   ./services/audio/liquidsoap.nix
   ./services/audio/mpd.nix
   ./services/audio/mopidy.nix
+  ./services/audio/slimserver.nix
   ./services/audio/squeezelite.nix
   ./services/audio/ympd.nix
   ./services/backup/almir.nix
@@ -247,6 +249,7 @@
   ./services/mail/rmilter.nix
   ./services/misc/apache-kafka.nix
   ./services/misc/autofs.nix
+  ./services/misc/autorandr.nix
   ./services/misc/bepasty.nix
   ./services/misc/canto-daemon.nix
   ./services/misc/calibre-server.nix
@@ -417,6 +420,7 @@
   ./services/networking/i2p.nix
   ./services/networking/iodine.nix
   ./services/networking/ircd-hybrid/default.nix
+  ./services/networking/keepalived/default.nix
   ./services/networking/kippo.nix
   ./services/networking/kresd.nix
   ./services/networking/lambdabot.nix
@@ -529,6 +533,7 @@
   ./services/system/cgmanager.nix
   ./services/system/cloud-init.nix
   ./services/system/dbus.nix
+  ./services/system/earlyoom.nix
   ./services/system/kerberos.nix
   ./services/system/nscd.nix
   ./services/system/uptimed.nix
@@ -656,6 +661,7 @@
   ./tasks/scsi-link-power-management.nix
   ./tasks/swraid.nix
   ./tasks/trackpoint.nix
+  ./tasks/powertop.nix
   ./testing/service-runner.nix
   ./virtualisation/container-config.nix
   ./virtualisation/containers.nix
diff --git a/nixos/modules/programs/command-not-found/command-not-found.nix b/nixos/modules/programs/command-not-found/command-not-found.nix
index 9741aa7ca53..6fb926fe1d5 100644
--- a/nixos/modules/programs/command-not-found/command-not-found.nix
+++ b/nixos/modules/programs/command-not-found/command-not-found.nix
@@ -8,13 +8,14 @@
 with lib;
 
 let
-
+  cfg = config.programs.command-not-found;
   commandNotFound = pkgs.substituteAll {
     name = "command-not-found";
     dir = "bin";
     src = ./command-not-found.pl;
     isExecutable = true;
     inherit (pkgs) perl;
+    inherit (cfg) dbPath;
     perlFlags = concatStrings (map (path: "-I ${path}/lib/perl5/site_perl ")
       [ pkgs.perlPackages.DBI pkgs.perlPackages.DBDSQLite pkgs.perlPackages.StringShellQuote ]);
   };
@@ -22,50 +23,66 @@ let
 in
 
 {
+  options.programs.command-not-found = {
+
+    enable = mkEnableOption "command-not-found hook for interactive shell";
+
+    dbPath = mkOption {
+      default = "/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite" ;
+      description = ''
+        Absolute path to programs.sqlite.
+
+        By default this file will be provided by your channel
+        (nixexprs.tar.xz).
+      '';
+      type = types.path;
+    };
+  };
 
-  programs.bash.interactiveShellInit =
-    ''
-      # This function is called whenever a command is not found.
-      command_not_found_handle() {
-        local p=/run/current-system/sw/bin/command-not-found
-        if [ -x $p -a -f /nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite ]; then
-          # Run the helper program.
-          $p "$@"
-          # Retry the command if we just installed it.
-          if [ $? = 126 ]; then
-            "$@"
+  config = mkIf cfg.enable {
+    programs.bash.interactiveShellInit =
+      ''
+        # This function is called whenever a command is not found.
+        command_not_found_handle() {
+          local p=${commandNotFound}
+          if [ -x $p -a -f ${cfg.dbPath} ]; then
+            # Run the helper program.
+            $p "$@"
+            # Retry the command if we just installed it.
+            if [ $? = 126 ]; then
+              "$@"
+            else
+              return 127
+            fi
           else
+            echo "$1: command not found" >&2
             return 127
           fi
-        else
-          echo "$1: command not found" >&2
-          return 127
-        fi
-      }
-    '';
+        }
+      '';
 
-  programs.zsh.interactiveShellInit =
-    ''
-      # This function is called whenever a command is not found.
-      command_not_found_handler() {
-        local p=/run/current-system/sw/bin/command-not-found
-        if [ -x $p -a -f /nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite ]; then
-          # Run the helper program.
-          $p "$@"
+    programs.zsh.interactiveShellInit =
+      ''
+        # This function is called whenever a command is not found.
+        command_not_found_handler() {
+          local p=${commandNotFound}
+          if [ -x $p -a -f ${cfg.dbPath} ]; then
+            # Run the helper program.
+            $p "$@"
 
-          # Retry the command if we just installed it.
-          if [ $? = 126 ]; then
-            "$@"
+            # Retry the command if we just installed it.
+            if [ $? = 126 ]; then
+              "$@"
+            fi
+          else
+            # Indicate than there was an error so ZSH falls back to its default handler
+            echo "$1: command not found" >&2
+            return 127
           fi
-        else
-          # Indicate than there was an error so ZSH falls back to its default handler
-          return 127
-        fi
-      }
-    '';
+        }
+      '';
 
-  environment.systemPackages = [ commandNotFound ];
-
-  # TODO: tab completion for uninstalled commands! :-)
+    environment.systemPackages = [ commandNotFound ];
+  };
 
 }
diff --git a/nixos/modules/programs/command-not-found/command-not-found.pl b/nixos/modules/programs/command-not-found/command-not-found.pl
index 5bdda26592e..ab7aa204653 100644
--- a/nixos/modules/programs/command-not-found/command-not-found.pl
+++ b/nixos/modules/programs/command-not-found/command-not-found.pl
@@ -8,7 +8,7 @@ use Config;
 
 my $program = $ARGV[0];
 
-my $dbPath = "/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite";
+my $dbPath = "@dbPath@";
 
 my $dbh = DBI->connect("dbi:SQLite:dbname=$dbPath", "", "")
     or die "cannot open database `$dbPath'";
diff --git a/nixos/modules/programs/slock.nix b/nixos/modules/programs/slock.nix
new file mode 100644
index 00000000000..0e1281e62cd
--- /dev/null
+++ b/nixos/modules/programs/slock.nix
@@ -0,0 +1,26 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.programs.slock;
+
+in
+{
+  options = {
+    programs.slock = {
+      enable = mkOption {
+        default = false;
+        type = types.bool;
+        description = ''
+          Whether to install slock screen locker with setuid wrapper.
+        '';
+      };
+    };
+  };
+
+  config = mkIf cfg.enable {
+    environment.systemPackages = [ pkgs.slock ];
+    security.wrappers.slock.source = "${pkgs.slock.out}/bin/slock";
+  };
+}
diff --git a/nixos/modules/programs/ssmtp.nix b/nixos/modules/programs/ssmtp.nix
index 7d0cb332099..44756171b74 100644
--- a/nixos/modules/programs/ssmtp.nix
+++ b/nixos/modules/programs/ssmtp.nix
@@ -39,7 +39,8 @@ in
         example = "mail.example.org";
         description = ''
           The host name of the default mail server to use to deliver
-          e-mail.
+          e-mail. Can also contain a port number (ex: mail.example.org:587),
+          defaults to port 25 if no port is given.
         '';
       };
 
@@ -95,9 +96,28 @@ in
         example = "correctHorseBatteryStaple";
         description = ''
           Password used for SMTP auth. (STORED PLAIN TEXT, WORLD-READABLE IN NIX STORE)
+
+          It's recommended to use <option>authPassFile</option>
+          which takes precedence over <option>authPass</option>.
+        '';
+      };
+
+      authPassFile = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        example = "/run/keys/ssmtp-authpass";
+        description = ''
+          Path to a file that contains the password used for SMTP auth. The file
+          should not contain a trailing newline, if the password does not contain one.
+          This file should be readable by the users that need to execute ssmtp.
+
+          <option>authPassFile</option> takes precedence over <option>authPass</option>.
+
+          Warning: when <option>authPass</option> is non-empty <option>authPassFile</option>
+          defaults to a file in the WORLD-READABLE Nix store containing that password.
         '';
       };
-      
+
       setSendmail = mkOption {
         type = types.bool;
         default = true;
@@ -111,21 +131,28 @@ in
 
   config = mkIf cfg.directDelivery {
 
+    networking.defaultMailServer.authPassFile = mkIf (cfg.authPass != "")
+      (mkDefault (toString (pkgs.writeTextFile {
+        name = "ssmtp-authpass";
+        text = cfg.authPass;
+      })));
+
     environment.etc."ssmtp/ssmtp.conf".text =
+      let yesNo = yes : if yes then "YES" else "NO"; in
       ''
         MailHub=${cfg.hostName}
         FromLineOverride=YES
-        ${if cfg.root != "" then "root=${cfg.root}" else ""}
-        ${if cfg.domain != "" then "rewriteDomain=${cfg.domain}" else ""}
-        UseTLS=${if cfg.useTLS then "YES" else "NO"}
-        UseSTARTTLS=${if cfg.useSTARTTLS then "YES" else "NO"}
+        ${optionalString (cfg.root   != "") "root=${cfg.root}"}
+        ${optionalString (cfg.domain != "") "rewriteDomain=${cfg.domain}"}
+        UseTLS=${yesNo cfg.useTLS}
+        UseSTARTTLS=${yesNo cfg.useSTARTTLS}
         #Debug=YES
-        ${if cfg.authUser != "" then "AuthUser=${cfg.authUser}" else ""}
-        ${if cfg.authPass != "" then "AuthPass=${cfg.authPass}" else ""}
+        ${optionalString (cfg.authUser != "")       "AuthUser=${cfg.authUser}"}
+        ${optionalString (!isNull cfg.authPassFile) "AuthPassFile=${cfg.authPassFile}"}
       '';
 
     environment.systemPackages = [pkgs.ssmtp];
-    
+
     services.mail.sendmailSetuidWrapper = mkIf cfg.setSendmail {
       program = "sendmail";
       source = "${pkgs.ssmtp}/bin/sendmail";
diff --git a/nixos/modules/security/acme.nix b/nixos/modules/security/acme.nix
index ada198e0e58..5301ac14805 100644
--- a/nixos/modules/security/acme.nix
+++ b/nixos/modules/security/acme.nix
@@ -19,6 +19,12 @@ let
         '';
       };
 
+      domain = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        description = "Domain to fetch certificate for (defaults to the entry name)";
+      };
+
       email = mkOption {
         type = types.nullOr types.str;
         default = null;
@@ -157,9 +163,10 @@ in
           servicesLists = mapAttrsToList certToServices cfg.certs;
           certToServices = cert: data:
               let
+                domain = if data.domain != null then data.domain else cert;
                 cpath = "${cfg.directory}/${cert}";
                 rights = if data.allowKeysForGroup then "750" else "700";
-                cmdline = [ "-v" "-d" cert "--default_root" data.webroot "--valid_min" cfg.validMin ]
+                cmdline = [ "-v" "-d" domain "--default_root" data.webroot "--valid_min" cfg.validMin ]
                           ++ optionals (data.email != null) [ "--email" data.email ]
                           ++ concatMap (p: [ "-f" p ]) data.plugins
                           ++ concatLists (mapAttrsToList (name: root: [ "-d" (if root == null then name else "${name}:${root}")]) data.extraDomains);
diff --git a/nixos/modules/security/polkit.nix b/nixos/modules/security/polkit.nix
index 8d9d5348063..7e59408a5b0 100644
--- a/nixos/modules/security/polkit.nix
+++ b/nixos/modules/security/polkit.nix
@@ -64,7 +64,7 @@ in
     systemd.packages = [ pkgs.polkit.out ];
 
     systemd.services.polkit.restartTriggers = [ config.system.path ];
-    systemd.services.polkit.unitConfig.X-StopIfChanged = false;
+    systemd.services.polkit.stopIfChanged = false;
 
     # The polkit daemon reads action/rule files
     environment.pathsToLink = [ "/share/polkit-1" ];
diff --git a/nixos/modules/services/audio/slimserver.nix b/nixos/modules/services/audio/slimserver.nix
new file mode 100644
index 00000000000..7d661dd6040
--- /dev/null
+++ b/nixos/modules/services/audio/slimserver.nix
@@ -0,0 +1,69 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+  cfg = config.services.slimserver;
+
+in {
+  options = {
+
+    services.slimserver = {
+
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to enable slimserver.
+        '';
+      };
+
+      package = mkOption {
+        type = types.package;
+        default = pkgs.slimserver;
+        defaultText = "pkgs.slimserver";
+        description = "Slimserver package to use.";
+      };
+
+      dataDir = mkOption {
+        type = types.path;
+        default = "/var/lib/slimserver";
+        description = ''
+          The directory where slimserver stores its state, tag cache,
+          playlists etc.
+        '';
+      };
+    };
+  };
+
+
+  ###### implementation
+
+  config = mkIf cfg.enable {
+
+    systemd.services.slimserver = {
+      after = [ "network.target" ];
+      description = "Slim Server for Logitech Squeezebox Players";
+      wantedBy = [ "multi-user.target" ];
+
+      preStart = "mkdir -p ${cfg.dataDir} && chown -R slimserver:slimserver ${cfg.dataDir}";
+      serviceConfig = {
+        User = "slimserver";
+        PermissionsStartOnly = true;
+        ExecStart = "${cfg.package}/slimserver.pl --logdir ${cfg.dataDir}/logs --prefsdir ${cfg.dataDir}/prefs --cachedir ${cfg.dataDir}/cache";
+      };
+    };
+
+    users = {
+      users.slimserver = {
+        description = "Slimserver daemon user";
+        home = cfg.dataDir;
+        group = "slimserver";
+      };
+      groups.slimserver = {};
+    };
+  };
+
+}
+
diff --git a/nixos/modules/services/cluster/kubernetes.nix b/nixos/modules/services/cluster/kubernetes.nix
index 9ccc7295019..f58306ab63e 100644
--- a/nixos/modules/services/cluster/kubernetes.nix
+++ b/nixos/modules/services/cluster/kubernetes.nix
@@ -45,7 +45,7 @@ let
   cniConfig = pkgs.buildEnv {
     name = "kubernetes-cni-config";
     paths = imap (i: entry:
-      pkgs.writeTextDir "${10+i}-${entry.type}.conf" (builtins.toJSON entry)
+      pkgs.writeTextDir "${toString (10+i)}-${entry.type}.conf" (builtins.toJSON entry)
     ) cfg.kubelet.cni.config;
   };
 
@@ -597,7 +597,7 @@ in {
     (mkIf cfg.kubelet.enable {
       systemd.services.kubelet = {
         description = "Kubernetes Kubelet Service";
-        wantedBy = [ "multi-user.target" ];
+        wantedBy = [ "kubernetes.target" ];
         after = [ "network.target" "docker.service" "kube-apiserver.service" ];
         path = with pkgs; [ gitMinimal openssh docker utillinux iproute ethtool thin-provisioning-tools iptables ];
         preStart = ''
@@ -606,14 +606,15 @@ in {
           ${concatMapStringsSep "\n" (p: "ln -fs ${p.plugins}/* /opt/cni/bin") cfg.kubelet.cni.packages}
         '';
         serviceConfig = {
+          Slice = "kubernetes.slice";
           ExecStart = ''${cfg.package}/bin/kubelet \
             --pod-manifest-path=${manifests} \
             --kubeconfig=${kubeconfig} \
             --require-kubeconfig \
             --address=${cfg.kubelet.address} \
             --port=${toString cfg.kubelet.port} \
-            --register-node=${if cfg.kubelet.registerNode then "true" else "false"} \
-            --register-schedulable=${if cfg.kubelet.registerSchedulable then "true" else "false"} \
+            --register-node=${boolToString cfg.kubelet.registerNode} \
+            --register-schedulable=${boolToString cfg.kubelet.registerSchedulable} \
             ${optionalString (cfg.kubelet.tlsCertFile != null)
               "--tls-cert-file=${cfg.kubelet.tlsCertFile}"} \
             ${optionalString (cfg.kubelet.tlsKeyFile != null)
@@ -621,7 +622,7 @@ in {
             --healthz-bind-address=${cfg.kubelet.healthz.bind} \
             --healthz-port=${toString cfg.kubelet.healthz.port} \
             --hostname-override=${cfg.kubelet.hostname} \
-            --allow-privileged=${if cfg.kubelet.allowPrivileged then "true" else "false"} \
+            --allow-privileged=${boolToString cfg.kubelet.allowPrivileged} \
             --root-dir=${cfg.dataDir} \
             --cadvisor_port=${toString cfg.kubelet.cadvisorPort} \
             ${optionalString (cfg.kubelet.clusterDns != "")
@@ -655,9 +656,10 @@ in {
     (mkIf cfg.apiserver.enable {
       systemd.services.kube-apiserver = {
         description = "Kubernetes Kubelet Service";
-        wantedBy = [ "multi-user.target" ];
+        wantedBy = [ "kubernetes.target" ];
         after = [ "network.target" "docker.service" ];
         serviceConfig = {
+          Slice = "kubernetes.slice";
           ExecStart = ''${cfg.package}/bin/kube-apiserver \
             --etcd-servers=${concatStringsSep "," cfg.etcd.servers} \
             ${optionalString (cfg.etcd.caFile != null)
@@ -670,14 +672,14 @@ in {
             --bind-address=0.0.0.0 \
             ${optionalString (cfg.apiserver.advertiseAddress != null)
               "--advertise-address=${cfg.apiserver.advertiseAddress}"} \
-            --allow-privileged=${if cfg.apiserver.allowPrivileged then "true" else "false"} \
+            --allow-privileged=${boolToString cfg.apiserver.allowPrivileged}\
             ${optionalString (cfg.apiserver.tlsCertFile != null)
               "--tls-cert-file=${cfg.apiserver.tlsCertFile}"} \
             ${optionalString (cfg.apiserver.tlsKeyFile != null)
               "--tls-private-key-file=${cfg.apiserver.tlsKeyFile}"} \
             ${optionalString (cfg.apiserver.tokenAuth != null)
               "--token-auth-file=${cfg.apiserver.tokenAuth}"} \
-            --kubelet-https=${if cfg.apiserver.kubeletHttps then "true" else "false"} \
+            --kubelet-https=${boolToString cfg.apiserver.kubeletHttps} \
             ${optionalString (cfg.apiserver.kubeletClientCaFile != null)
               "--kubelet-certificate-authority=${cfg.apiserver.kubeletClientCaFile}"} \
             ${optionalString (cfg.apiserver.kubeletClientCertFile != null)
@@ -713,13 +715,14 @@ in {
     (mkIf cfg.scheduler.enable {
       systemd.services.kube-scheduler = {
         description = "Kubernetes Scheduler Service";
-        wantedBy = [ "multi-user.target" ];
+        wantedBy = [ "kubernetes.target" ];
         after = [ "kube-apiserver.service" ];
         serviceConfig = {
+          Slice = "kubernetes.slice";
           ExecStart = ''${cfg.package}/bin/kube-scheduler \
             --address=${cfg.scheduler.address} \
             --port=${toString cfg.scheduler.port} \
-            --leader-elect=${if cfg.scheduler.leaderElect then "true" else "false"} \
+            --leader-elect=${boolToString cfg.scheduler.leaderElect} \
             --kubeconfig=${kubeconfig} \
             ${optionalString cfg.verbose "--v=6"} \
             ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
@@ -735,16 +738,17 @@ in {
     (mkIf cfg.controllerManager.enable {
       systemd.services.kube-controller-manager = {
         description = "Kubernetes Controller Manager Service";
-        wantedBy = [ "multi-user.target" ];
+        wantedBy = [ "kubernetes.target" ];
         after = [ "kube-apiserver.service" ];
         serviceConfig = {
           RestartSec = "30s";
           Restart = "on-failure";
+          Slice = "kubernetes.slice";
           ExecStart = ''${cfg.package}/bin/kube-controller-manager \
             --address=${cfg.controllerManager.address} \
             --port=${toString cfg.controllerManager.port} \
             --kubeconfig=${kubeconfig} \
-            --leader-elect=${if cfg.controllerManager.leaderElect then "true" else "false"} \
+            --leader-elect=${boolToString cfg.controllerManager.leaderElect} \
             ${if (cfg.controllerManager.serviceAccountKeyFile!=null)
               then "--service-account-private-key-file=${cfg.controllerManager.serviceAccountKeyFile}"
               else "--service-account-private-key-file=/var/run/kubernetes/apiserver.key"} \
@@ -767,10 +771,11 @@ in {
     (mkIf cfg.proxy.enable {
       systemd.services.kube-proxy = {
         description = "Kubernetes Proxy Service";
-        wantedBy = [ "multi-user.target" ];
+        wantedBy = [ "kubernetes.target" ];
         after = [ "kube-apiserver.service" ];
         path = [pkgs.iptables];
         serviceConfig = {
+          Slice = "kubernetes.slice";
           ExecStart = ''${cfg.package}/bin/kube-proxy \
             --kubeconfig=${kubeconfig} \
             --bind-address=${cfg.proxy.address} \
@@ -786,9 +791,10 @@ in {
     (mkIf cfg.dns.enable {
       systemd.services.kube-dns = {
         description = "Kubernetes Dns Service";
-        wantedBy = [ "multi-user.target" ];
+        wantedBy = [ "kubernetes.target" ];
         after = [ "kube-apiserver.service" ];
         serviceConfig = {
+          Slice = "kubernetes.slice";
           ExecStart = ''${cfg.package}/bin/kube-dns \
             --kubecfg-file=${kubeconfig} \
             --dns-port=${toString cfg.dns.port} \
@@ -836,6 +842,11 @@ in {
         cfg.proxy.enable ||
         cfg.dns.enable
     ) {
+      systemd.targets.kubernetes = {
+        description = "Kubernetes";
+        wantedBy = [ "multi-user.target" ];
+      };
+
       systemd.tmpfiles.rules = [
         "d /opt/cni/bin 0755 root root -"
         "d /var/run/kubernetes 0755 kubernetes kubernetes -"
diff --git a/nixos/modules/services/continuous-integration/hydra/default.nix b/nixos/modules/services/continuous-integration/hydra/default.nix
index fa550f68b33..57f592a2e55 100644
--- a/nixos/modules/services/continuous-integration/hydra/default.nix
+++ b/nixos/modules/services/continuous-integration/hydra/default.nix
@@ -328,7 +328,7 @@ in
           IN_SYSTEMD = "1"; # to get log severity levels
         };
         serviceConfig =
-          { ExecStart = "@${cfg.package}/bin/hydra-queue-runner hydra-queue-runner -v --option build-use-substitutes ${if cfg.useSubstitutes then "true" else "false"}";
+          { ExecStart = "@${cfg.package}/bin/hydra-queue-runner hydra-queue-runner -v --option build-use-substitutes ${boolToString cfg.useSubstitutes}";
             ExecStopPost = "${cfg.package}/bin/hydra-queue-runner --unlock";
             User = "hydra-queue-runner";
             Restart = "always";
diff --git a/nixos/modules/services/databases/cassandra.nix b/nixos/modules/services/databases/cassandra.nix
index 5df4ae57f80..1e5cd8f5413 100644
--- a/nixos/modules/services/databases/cassandra.nix
+++ b/nixos/modules/services/databases/cassandra.nix
@@ -21,8 +21,8 @@ let
   cassandraConf = ''
     cluster_name: ${cfg.clusterName}
     num_tokens: 256
-    auto_bootstrap: ${if cfg.autoBootstrap then "true" else "false"}
-    hinted_handoff_enabled: ${if cfg.hintedHandOff then "true" else "false"}
+    auto_bootstrap: ${boolToString cfg.autoBootstrap}
+    hinted_handoff_enabled: ${boolToString cfg.hintedHandOff}
     hinted_handoff_throttle_in_kb: ${builtins.toString cfg.hintedHandOffThrottle}
     max_hints_delivery_threads: 2
     max_hint_window_in_ms: 10800000 # 3 hours
@@ -62,7 +62,7 @@ let
     rpc_keepalive: true
     rpc_server_type: sync
     thrift_framed_transport_size_in_mb: 15
-    incremental_backups: ${if cfg.incrementalBackups then "true" else "false"}
+    incremental_backups: ${boolToString cfg.incrementalBackups}
     snapshot_before_compaction: false
     auto_snapshot: true
     column_index_size_in_kb: 64
@@ -89,7 +89,7 @@ let
       truststore: ${cfg.trustStorePath}
       truststore_password: ${cfg.trustStorePassword}
     client_encryption_options:
-      enabled: ${if cfg.clientEncryption then "true" else "false"}
+      enabled: ${boolToString cfg.clientEncryption}
       keystore: ${cfg.keyStorePath}
       keystore_password: ${cfg.keyStorePassword}
     internode_compression: all
diff --git a/nixos/modules/services/databases/mongodb.nix b/nixos/modules/services/databases/mongodb.nix
index 38e46a0c6ef..c56564f57f3 100644
--- a/nixos/modules/services/databases/mongodb.nix
+++ b/nixos/modules/services/databases/mongodb.nix
@@ -4,8 +4,6 @@ with lib;
 
 let
 
-  b2s = x: if x then "true" else "false";
-
   cfg = config.services.mongodb;
 
   mongodb = cfg.package;
diff --git a/nixos/modules/services/hardware/bluetooth.nix b/nixos/modules/services/hardware/bluetooth.nix
index f1fcb436934..4a8cd86b0b1 100644
--- a/nixos/modules/services/hardware/bluetooth.nix
+++ b/nixos/modules/services/hardware/bluetooth.nix
@@ -6,9 +6,7 @@ let
   bluez-bluetooth = pkgs.bluez;
   cfg = config.hardware.bluetooth;
 
-in
-
-{
+in {
 
   ###### interface
 
@@ -32,6 +30,8 @@ in
         '';
         description = ''
           Set additional configuration for system-wide bluetooth (/etc/bluetooth/main.conf).
+
+          NOTE: We already include [Policy], so any configuration under the Policy group should come first.
         '';
       };
     };
@@ -45,7 +45,12 @@ in
     environment.systemPackages = [ bluez-bluetooth pkgs.openobex pkgs.obexftp ];
 
     environment.etc = singleton {
-      source = pkgs.writeText "main.conf" cfg.extraConfig;
+      source = pkgs.writeText "main.conf" ''
+        [Policy]
+        AutoEnable=${lib.boolToString cfg.powerOnBoot}
+
+        ${cfg.extraConfig}
+      '';
       target = "bluetooth/main.conf";
     };
 
@@ -53,29 +58,11 @@ in
     services.dbus.packages = [ bluez-bluetooth ];
     systemd.packages       = [ bluez-bluetooth ];
 
-    services.udev.extraRules = optionalString cfg.powerOnBoot ''
-      ACTION=="add", KERNEL=="hci[0-9]*", ENV{SYSTEMD_WANTS}="bluetooth-power@%k.service"
-    '';
-
     systemd.services = {
       bluetooth = {
         wantedBy = [ "bluetooth.target" ];
         aliases  = [ "dbus-org.bluez.service" ];
       };
-
-      "bluetooth-power@" = mkIf cfg.powerOnBoot {
-        description = "Power up bluetooth controller";
-        after = [
-          "bluetooth.service"
-          "suspend.target"
-          "sys-subsystem-bluetooth-devices-%i.device"
-        ];
-        wantedBy = [ "suspend.target" ];
-
-        serviceConfig.Type      = "oneshot";
-        serviceConfig.ExecStart = "${pkgs.bluez.out}/bin/hciconfig %i up";
-      };
-
     };
 
     systemd.user.services = {
diff --git a/nixos/modules/services/hardware/tlp.nix b/nixos/modules/services/hardware/tlp.nix
index f36a9e7b459..3b108c87edd 100644
--- a/nixos/modules/services/hardware/tlp.nix
+++ b/nixos/modules/services/hardware/tlp.nix
@@ -58,6 +58,9 @@ in
     powerManagement.cpuFreqGovernor = null;
 
     systemd.services = {
+      "systemd-rfkill@".enable = false;
+      "systemd-rfkill".enable = false;
+
       tlp = {
         description = "TLP system startup/shutdown";
 
diff --git a/nixos/modules/services/logging/graylog.nix b/nixos/modules/services/logging/graylog.nix
index 95283096662..9f0fb11f025 100644
--- a/nixos/modules/services/logging/graylog.nix
+++ b/nixos/modules/services/logging/graylog.nix
@@ -4,16 +4,15 @@ with lib;
 
 let
   cfg = config.services.graylog;
-  configBool = b: if b then "true" else "false";
 
   confFile = pkgs.writeText "graylog.conf" ''
-    is_master = ${configBool cfg.isMaster}
+    is_master = ${boolToString cfg.isMaster}
     node_id_file = ${cfg.nodeIdFile}
     password_secret = ${cfg.passwordSecret}
     root_username = ${cfg.rootUsername}
     root_password_sha2 = ${cfg.rootPasswordSha2}
     elasticsearch_cluster_name = ${cfg.elasticsearchClusterName}
-    elasticsearch_discovery_zen_ping_multicast_enabled = ${configBool cfg.elasticsearchDiscoveryZenPingMulticastEnabled}
+    elasticsearch_discovery_zen_ping_multicast_enabled = ${boolToString cfg.elasticsearchDiscoveryZenPingMulticastEnabled}
     elasticsearch_discovery_zen_ping_unicast_hosts = ${cfg.elasticsearchDiscoveryZenPingUnicastHosts}
     message_journal_dir = ${cfg.messageJournalDir}
     mongodb_uri = ${cfg.mongodbUri}
diff --git a/nixos/modules/services/misc/autorandr.nix b/nixos/modules/services/misc/autorandr.nix
new file mode 100644
index 00000000000..6746f3fec69
--- /dev/null
+++ b/nixos/modules/services/misc/autorandr.nix
@@ -0,0 +1,43 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+  cfg = config.services.autorandr;
+
+in {
+
+  options = {
+
+    services.autorandr = {
+      enable = mkEnableOption "handling of hotplug and sleep events by autorandr";
+    };
+
+  };
+
+  config = mkIf cfg.enable {
+
+    services.udev.packages = [ pkgs.autorandr ];
+
+    environment.systemPackages = [ pkgs.autorandr ];
+
+    # systemd.unitPackages = [ pkgs.autorandr ];
+    systemd.services.autorandr = {
+      unitConfig = {
+        Description = "autorandr execution hook";
+        After = [ "sleep.target" ];
+        StartLimitInterval = "5";
+        StartLimitBurst = "1";
+      };
+      serviceConfig = {
+        ExecStart = "${pkgs.autorandr}/bin/autorandr --batch --change --default default";
+        Type = "oneshot";
+        RemainAfterExit = false;
+      };
+      wantedBy = [ "sleep.target" ];
+    };
+
+  };
+
+}
diff --git a/nixos/modules/services/misc/bepasty.nix b/nixos/modules/services/misc/bepasty.nix
index 52719222db6..4d78cddcb54 100644
--- a/nixos/modules/services/misc/bepasty.nix
+++ b/nixos/modules/services/misc/bepasty.nix
@@ -21,7 +21,7 @@ in
         configure a number of bepasty servers which will be started with
         gunicorn.
         '';
-      type = with types ; attrsOf (submodule ({
+      type = with types ; attrsOf (submodule ({ config, ... } : {
 
         options = {
 
@@ -34,7 +34,6 @@ in
             default = "127.0.0.1:8000";
           };
 
-
           dataDir = mkOption {
             type = types.str;
             description = ''
@@ -73,10 +72,28 @@ in
             type = types.str;
             description = ''
               server secret for safe session cookies, must be set.
+
+              Warning: this secret is stored in the WORLD-READABLE Nix store!
+
+              It's recommended to use <option>secretKeyFile</option>
+              which takes precedence over <option>secretKey</option>.
               '';
             default = "";
           };
 
+          secretKeyFile = mkOption {
+            type = types.nullOr types.str;
+            default = null;
+            description = ''
+              A file that contains the server secret for safe session cookies, must be set.
+
+              <option>secretKeyFile</option> takes precedence over <option>secretKey</option>.
+
+              Warning: when <option>secretKey</option> is non-empty <option>secretKeyFile</option>
+              defaults to a file in the WORLD-READABLE Nix store containing that secret.
+              '';
+          };
+
           workDir = mkOption {
             type = types.str;
             description = ''
@@ -87,11 +104,22 @@ in
           };
 
         };
+        config = {
+          secretKeyFile = mkDefault (
+            if config.secretKey != ""
+            then toString (pkgs.writeTextFile {
+              name = "bepasty-secret-key";
+              text = config.secretKey;
+            })
+            else null
+          );
+        };
       }));
     };
   };
 
   config = mkIf cfg.enable {
+
     environment.systemPackages = [ bepasty ];
 
     # creates gunicorn systemd service for each configured server
@@ -115,7 +143,7 @@ in
           serviceConfig = {
             Type = "simple";
             PrivateTmp = true;
-            ExecStartPre = assert server.secretKey != ""; pkgs.writeScript "bepasty-server.${name}-init" ''
+            ExecStartPre = assert !isNull server.secretKeyFile; pkgs.writeScript "bepasty-server.${name}-init" ''
               #!/bin/sh
               mkdir -p "${server.workDir}"
               mkdir -p "${server.dataDir}"
@@ -123,7 +151,7 @@ in
               cat > ${server.workDir}/bepasty-${name}.conf <<EOF
               SITENAME="${name}"
               STORAGE_FILESYSTEM_DIRECTORY="${server.dataDir}"
-              SECRET_KEY="${server.secretKey}"
+              SECRET_KEY="$(cat "${server.secretKeyFile}")"
               DEFAULT_PERMISSIONS="${server.defaultPermissions}"
               ${server.extraConfig}
               EOF
diff --git a/nixos/modules/services/misc/cgminer.nix b/nixos/modules/services/misc/cgminer.nix
index 5f97cc03414..d5071d8ff76 100644
--- a/nixos/modules/services/misc/cgminer.nix
+++ b/nixos/modules/services/misc/cgminer.nix
@@ -6,7 +6,7 @@ let
   cfg = config.services.cgminer;
 
   convType = with builtins;
-    v: if isBool v then (if v then "true" else "false") else toString v;
+    v: if isBool v then boolToString v else toString v;
   mergedHwConfig =
     mapAttrsToList (n: v: ''"${n}": "${(concatStringsSep "," (map convType v))}"'')
       (foldAttrs (n: a: [n] ++ a) [] cfg.hardware);
diff --git a/nixos/modules/services/misc/confd.nix b/nixos/modules/services/misc/confd.nix
index fe13013286b..8e9bec15dd4 100755
--- a/nixos/modules/services/misc/confd.nix
+++ b/nixos/modules/services/misc/confd.nix
@@ -12,7 +12,7 @@ let
     nodes = [ ${concatMapStringsSep "," (s: ''"${s}"'') cfg.nodes}, ]
     prefix = "${cfg.prefix}"
     log-level = "${cfg.logLevel}"
-    watch = ${if cfg.watch then "true" else "false"}
+    watch = ${boolToString cfg.watch}
   '';
 
 in {
diff --git a/nixos/modules/services/misc/etcd.nix b/nixos/modules/services/misc/etcd.nix
index 1de02d76ba0..7c91462883f 100644
--- a/nixos/modules/services/misc/etcd.nix
+++ b/nixos/modules/services/misc/etcd.nix
@@ -119,7 +119,7 @@ in {
     extraConf = mkOption {
       description = ''
         Etcd extra configuration. See
-        <link xlink:href='https://github.com/coreos/etcd/blob/master/Documentation/configuration.md#environment-variables' />
+        <link xlink:href='https://github.com/coreos/etcd/blob/master/Documentation/op-guide/configuration.md#configuration-flags' />
       '';
       type = types.attrsOf types.str;
       default = {};
diff --git a/nixos/modules/services/misc/matrix-synapse.nix b/nixos/modules/services/misc/matrix-synapse.nix
index 4a1bea50c14..ae9826968b1 100644
--- a/nixos/modules/services/misc/matrix-synapse.nix
+++ b/nixos/modules/services/misc/matrix-synapse.nix
@@ -5,9 +5,8 @@ with lib;
 let
   cfg = config.services.matrix-synapse;
   logConfigFile = pkgs.writeText "log_config.yaml" cfg.logConfig;
-  mkResource = r: ''{names: ${builtins.toJSON r.names}, compress: ${fromBool r.compress}}'';
-  mkListener = l: ''{port: ${toString l.port}, bind_address: "${l.bind_address}", type: ${l.type}, tls: ${fromBool l.tls}, x_forwarded: ${fromBool l.x_forwarded}, resources: [${concatStringsSep "," (map mkResource l.resources)}]}'';
-  fromBool = x: if x then "true" else "false";
+  mkResource = r: ''{names: ${builtins.toJSON r.names}, compress: ${boolToString r.compress}}'';
+  mkListener = l: ''{port: ${toString l.port}, bind_address: "${l.bind_address}", type: ${l.type}, tls: ${boolToString l.tls}, x_forwarded: ${boolToString l.x_forwarded}, resources: [${concatStringsSep "," (map mkResource l.resources)}]}'';
   configFile = pkgs.writeText "homeserver.yaml" ''
 ${optionalString (cfg.tls_certificate_path != null) ''
 tls_certificate_path: "${cfg.tls_certificate_path}"
@@ -18,7 +17,7 @@ tls_private_key_path: "${cfg.tls_private_key_path}"
 ${optionalString (cfg.tls_dh_params_path != null) ''
 tls_dh_params_path: "${cfg.tls_dh_params_path}"
 ''}
-no_tls: ${fromBool cfg.no_tls}
+no_tls: ${boolToString cfg.no_tls}
 ${optionalString (cfg.bind_port != null) ''
 bind_port: ${toString cfg.bind_port}
 ''}
@@ -30,7 +29,7 @@ bind_host: "${cfg.bind_host}"
 ''}
 server_name: "${cfg.server_name}"
 pid_file: "/var/run/matrix-synapse.pid"
-web_client: ${fromBool cfg.web_client}
+web_client: ${boolToString cfg.web_client}
 ${optionalString (cfg.public_baseurl != null) ''
 public_baseurl: "${cfg.public_baseurl}"
 ''}
@@ -58,8 +57,8 @@ media_store_path: "/var/lib/matrix-synapse/media"
 uploads_path: "/var/lib/matrix-synapse/uploads"
 max_upload_size: "${cfg.max_upload_size}"
 max_image_pixels: "${cfg.max_image_pixels}"
-dynamic_thumbnails: ${fromBool cfg.dynamic_thumbnails}
-url_preview_enabled: ${fromBool cfg.url_preview_enabled}
+dynamic_thumbnails: ${boolToString cfg.dynamic_thumbnails}
+url_preview_enabled: ${boolToString cfg.url_preview_enabled}
 ${optionalString (cfg.url_preview_enabled == true) ''
 url_preview_ip_range_blacklist: ${builtins.toJSON cfg.url_preview_ip_range_blacklist}
 url_preview_ip_range_whitelist: ${builtins.toJSON cfg.url_preview_ip_range_whitelist}
@@ -67,10 +66,10 @@ url_preview_url_blacklist: ${builtins.toJSON cfg.url_preview_url_blacklist}
 ''}
 recaptcha_private_key: "${cfg.recaptcha_private_key}"
 recaptcha_public_key: "${cfg.recaptcha_public_key}"
-enable_registration_captcha: ${fromBool cfg.enable_registration_captcha}
+enable_registration_captcha: ${boolToString cfg.enable_registration_captcha}
 turn_uris: ${builtins.toJSON cfg.turn_uris}
 turn_shared_secret: "${cfg.turn_shared_secret}"
-enable_registration: ${fromBool cfg.enable_registration}
+enable_registration: ${boolToString cfg.enable_registration}
 ${optionalString (cfg.registration_shared_secret != null) ''
 registration_shared_secret: "${cfg.registration_shared_secret}"
 ''}
@@ -78,15 +77,15 @@ recaptcha_siteverify_api: "https://www.google.com/recaptcha/api/siteverify"
 turn_user_lifetime: "${cfg.turn_user_lifetime}"
 user_creation_max_duration: ${cfg.user_creation_max_duration}
 bcrypt_rounds: ${cfg.bcrypt_rounds}
-allow_guest_access: ${fromBool cfg.allow_guest_access}
+allow_guest_access: ${boolToString cfg.allow_guest_access}
 trusted_third_party_id_servers: ${builtins.toJSON cfg.trusted_third_party_id_servers}
 room_invite_state_types: ${builtins.toJSON cfg.room_invite_state_types}
 ${optionalString (cfg.macaroon_secret_key != null) ''
   macaroon_secret_key: "${cfg.macaroon_secret_key}"
 ''}
-expire_access_token: ${fromBool cfg.expire_access_token}
-enable_metrics: ${fromBool cfg.enable_metrics}
-report_stats: ${fromBool cfg.report_stats}
+expire_access_token: ${boolToString cfg.expire_access_token}
+enable_metrics: ${boolToString cfg.enable_metrics}
+report_stats: ${boolToString cfg.report_stats}
 signing_key_path: "/var/lib/matrix-synapse/homeserver.signing.key"
 key_refresh_interval: "${cfg.key_refresh_interval}"
 perspectives:
diff --git a/nixos/modules/services/misc/nix-daemon.nix b/nixos/modules/services/misc/nix-daemon.nix
index 4fe89838e29..bf1304ee7ac 100644
--- a/nixos/modules/services/misc/nix-daemon.nix
+++ b/nixos/modules/services/misc/nix-daemon.nix
@@ -41,12 +41,12 @@ let
         build-users-group = nixbld
         build-max-jobs = ${toString (cfg.maxJobs)}
         build-cores = ${toString (cfg.buildCores)}
-        build-use-sandbox = ${if (builtins.isBool cfg.useSandbox) then (if cfg.useSandbox then "true" else "false") else cfg.useSandbox}
+        build-use-sandbox = ${if (builtins.isBool cfg.useSandbox) then boolToString cfg.useSandbox else cfg.useSandbox}
         build-sandbox-paths = ${toString cfg.sandboxPaths} /bin/sh=${sh} $(echo $extraPaths)
         binary-caches = ${toString cfg.binaryCaches}
         trusted-binary-caches = ${toString cfg.trustedBinaryCaches}
         binary-cache-public-keys = ${toString cfg.binaryCachePublicKeys}
-        auto-optimise-store = ${if cfg.autoOptimiseStore then "true" else "false"}
+        auto-optimise-store = ${boolToString cfg.autoOptimiseStore}
         ${optionalString cfg.requireSignedBinaryCaches ''
           signed-binary-caches = *
         ''}
diff --git a/nixos/modules/services/misc/plex.nix b/nixos/modules/services/misc/plex.nix
index f6bf2dee986..9c0bea8d3bf 100644
--- a/nixos/modules/services/misc/plex.nix
+++ b/nixos/modules/services/misc/plex.nix
@@ -93,7 +93,9 @@ in
         # why this is done.
         test -d "${cfg.dataDir}/.skeleton" || mkdir "${cfg.dataDir}/.skeleton"
         for db in "com.plexapp.plugins.library.db"; do
-            cp "${cfg.package}/usr/lib/plexmediaserver/Resources/base_$db" "${cfg.dataDir}/.skeleton/$db"
+            if [ ! -e  "${cfg.dataDir}/.skeleton/$db" ]; then
+              cp "${cfg.package}/usr/lib/plexmediaserver/Resources/base_$db" "${cfg.dataDir}/.skeleton/$db"
+            fi
             chmod u+w "${cfg.dataDir}/.skeleton/$db"
             chown ${cfg.user}:${cfg.group} "${cfg.dataDir}/.skeleton/$db"
         done
@@ -136,6 +138,7 @@ in
         Group = cfg.group;
         PermissionsStartOnly = "true";
         ExecStart = "/bin/sh -c ${cfg.package}/usr/lib/plexmediaserver/Plex\\ Media\\ Server";
+        KillSignal = "SIGQUIT";
         Restart = "on-failure";
       };
       environment = {
diff --git a/nixos/modules/services/misc/taskserver/default.nix b/nixos/modules/services/misc/taskserver/default.nix
index ba9f52f1904..ab9a6ce32f4 100644
--- a/nixos/modules/services/misc/taskserver/default.nix
+++ b/nixos/modules/services/misc/taskserver/default.nix
@@ -128,7 +128,7 @@ let
         certBits = cfg.pki.auto.bits;
         clientExpiration = cfg.pki.auto.expiration.client;
         crlExpiration = cfg.pki.auto.expiration.crl;
-        isAutoConfig = if needToCreateCA then "True" else "False";
+        isAutoConfig = boolToString needToCreateCA;
       }}" > "$out/main.py"
       cat > "$out/setup.py" <<EOF
       from setuptools import setup
diff --git a/nixos/modules/services/monitoring/collectd.nix b/nixos/modules/services/monitoring/collectd.nix
index 641da60e9ad..79a8a1ff5ae 100644
--- a/nixos/modules/services/monitoring/collectd.nix
+++ b/nixos/modules/services/monitoring/collectd.nix
@@ -8,7 +8,7 @@ let
   conf = pkgs.writeText "collectd.conf" ''
     BaseDir "${cfg.dataDir}"
     PIDFile "${cfg.pidFile}"
-    AutoLoadPlugin ${if cfg.autoLoadPlugin then "true" else "false"}
+    AutoLoadPlugin ${boolToString cfg.autoLoadPlugin}
     Hostname "${config.networking.hostName}"
 
     LoadPlugin syslog
diff --git a/nixos/modules/services/monitoring/grafana.nix b/nixos/modules/services/monitoring/grafana.nix
index 97806d5d83e..4fbacef788f 100644
--- a/nixos/modules/services/monitoring/grafana.nix
+++ b/nixos/modules/services/monitoring/grafana.nix
@@ -5,8 +5,6 @@ with lib;
 let
   cfg = config.services.grafana;
 
-  b2s = val: if val then "true" else "false";
-
   envOptions = {
     PATHS_DATA = cfg.dataDir;
     PATHS_PLUGINS = "${cfg.dataDir}/plugins";
@@ -32,16 +30,16 @@ let
     SECURITY_ADMIN_PASSWORD = cfg.security.adminPassword;
     SECURITY_SECRET_KEY = cfg.security.secretKey;
 
-    USERS_ALLOW_SIGN_UP = b2s cfg.users.allowSignUp;
-    USERS_ALLOW_ORG_CREATE = b2s cfg.users.allowOrgCreate;
-    USERS_AUTO_ASSIGN_ORG = b2s cfg.users.autoAssignOrg;
+    USERS_ALLOW_SIGN_UP = boolToString cfg.users.allowSignUp;
+    USERS_ALLOW_ORG_CREATE = boolToString cfg.users.allowOrgCreate;
+    USERS_AUTO_ASSIGN_ORG = boolToString cfg.users.autoAssignOrg;
     USERS_AUTO_ASSIGN_ORG_ROLE = cfg.users.autoAssignOrgRole;
 
-    AUTH_ANONYMOUS_ENABLED = b2s cfg.auth.anonymous.enable;
+    AUTH_ANONYMOUS_ENABLED = boolToString cfg.auth.anonymous.enable;
     AUTH_ANONYMOUS_ORG_NAME = cfg.auth.anonymous.org_name;
     AUTH_ANONYMOUS_ORG_ROLE = cfg.auth.anonymous.org_role;
 
-    ANALYTICS_REPORTING_ENABLED = b2s cfg.analytics.reporting.enable;
+    ANALYTICS_REPORTING_ENABLED = boolToString cfg.analytics.reporting.enable;
   } // cfg.extraOptions;
 
 in {
diff --git a/nixos/modules/services/monitoring/graphite.nix b/nixos/modules/services/monitoring/graphite.nix
index c5352e5887d..98931e65bb5 100644
--- a/nixos/modules/services/monitoring/graphite.nix
+++ b/nixos/modules/services/monitoring/graphite.nix
@@ -4,7 +4,7 @@ with lib;
 
 let
   cfg = config.services.graphite;
-  writeTextOrNull = f: t: if t == null then null else pkgs.writeTextDir f t;
+  writeTextOrNull = f: t: mapNullable (pkgs.writeTextDir f) t;
 
   dataDir = cfg.dataDir;
 
diff --git a/nixos/modules/services/monitoring/prometheus/default.nix b/nixos/modules/services/monitoring/prometheus/default.nix
index cf9deccbffe..b9435c02b1d 100644
--- a/nixos/modules/services/monitoring/prometheus/default.nix
+++ b/nixos/modules/services/monitoring/prometheus/default.nix
@@ -116,6 +116,13 @@ let
           The URL scheme with which to fetch metrics from targets.
         '';
       };
+      params = mkOption {
+        type = types.attrsOf (types.listOf types.str);
+        default = {};
+        description = ''
+          Optional HTTP URL parameters.
+        '';
+      };
       basic_auth = mkOption {
         type = types.nullOr (types.submodule {
           options = {
@@ -134,7 +141,7 @@ let
           };
         });
         default = null;
-        apply = x: if x == null then null else _filter x;
+        apply = x: mapNullable _filter x;
         description = ''
           Optional http login credentials for metrics scraping.
         '';
diff --git a/nixos/modules/services/network-filesystems/netatalk.nix b/nixos/modules/services/network-filesystems/netatalk.nix
index bff54406a2b..1dd869043f0 100644
--- a/nixos/modules/services/network-filesystems/netatalk.nix
+++ b/nixos/modules/services/network-filesystems/netatalk.nix
@@ -9,7 +9,7 @@ let
   extmapFile = pkgs.writeText "extmap.conf" cfg.extmap;
 
   afpToString = x: if builtins.typeOf x == "bool"
-                   then (if x then "true" else "false")
+                   then boolToString x
                    else toString x;
 
   volumeConfig = name:
diff --git a/nixos/modules/services/network-filesystems/samba.nix b/nixos/modules/services/network-filesystems/samba.nix
index 6ae5292fc30..87c4f7a8ebc 100644
--- a/nixos/modules/services/network-filesystems/samba.nix
+++ b/nixos/modules/services/network-filesystems/samba.nix
@@ -5,7 +5,7 @@ with lib;
 let
 
   smbToString = x: if builtins.typeOf x == "bool"
-                   then (if x then "true" else "false")
+                   then boolToString x
                    else toString x;
 
   cfg = config.services.samba;
diff --git a/nixos/modules/services/network-filesystems/tahoe.nix b/nixos/modules/services/network-filesystems/tahoe.nix
index 3d78ac096a2..9815a5434ee 100644
--- a/nixos/modules/services/network-filesystems/tahoe.nix
+++ b/nixos/modules/services/network-filesystems/tahoe.nix
@@ -290,14 +290,14 @@ in
                 shares.total = ${toString settings.client.shares.total}
 
                 [storage]
-                enabled = ${if settings.storage.enable then "true" else "false"}
+                enabled = ${boolToString settings.storage.enable}
                 reserved_space = ${settings.storage.reservedSpace}
 
                 [helper]
-                enabled = ${if settings.helper.enable then "true" else "false"}
+                enabled = ${boolToString settings.helper.enable}
 
                 [sftpd]
-                enabled = ${if settings.sftpd.enable then "true" else "false"}
+                enabled = ${boolToString settings.sftpd.enable}
                 ${optionalString (settings.sftpd.port != null)
                   "port = ${toString settings.sftpd.port}"}
                 ${optionalString (settings.sftpd.hostPublicKeyFile != null)
diff --git a/nixos/modules/services/networking/aiccu.nix b/nixos/modules/services/networking/aiccu.nix
index aeb0910d624..ac755270951 100644
--- a/nixos/modules/services/networking/aiccu.nix
+++ b/nixos/modules/services/networking/aiccu.nix
@@ -5,7 +5,6 @@ with lib;
 let
 
   cfg = config.services.aiccu;
-  showBool = b: if b then "true" else "false";
   notNull = a: ! isNull a;
   configFile = pkgs.writeText "aiccu.conf" ''
     ${if notNull cfg.username then "username " + cfg.username else ""}
@@ -13,16 +12,16 @@ let
     protocol ${cfg.protocol}
     server ${cfg.server}
     ipv6_interface ${cfg.interfaceName}
-    verbose ${showBool cfg.verbose}
+    verbose ${boolToString cfg.verbose}
     daemonize true
-    automatic ${showBool cfg.automatic}
-    requiretls ${showBool cfg.requireTLS}
+    automatic ${boolToString cfg.automatic}
+    requiretls ${boolToString cfg.requireTLS}
     pidfile ${cfg.pidFile}
-    defaultroute ${showBool cfg.defaultRoute}
+    defaultroute ${boolToString cfg.defaultRoute}
     ${if notNull cfg.setupScript then cfg.setupScript else ""}
-    makebeats ${showBool cfg.makeHeartBeats}
-    noconfigure ${showBool cfg.noConfigure}
-    behindnat ${showBool cfg.behindNAT}
+    makebeats ${boolToString cfg.makeHeartBeats}
+    noconfigure ${boolToString cfg.noConfigure}
+    behindnat ${boolToString cfg.behindNAT}
     ${if cfg.localIPv4Override then "local_ipv4_override" else ""}
   '';
 
diff --git a/nixos/modules/services/networking/avahi-daemon.nix b/nixos/modules/services/networking/avahi-daemon.nix
index 6a786e75bbc..3985f8561d3 100644
--- a/nixos/modules/services/networking/avahi-daemon.nix
+++ b/nixos/modules/services/networking/avahi-daemon.nix
@@ -7,31 +7,32 @@ let
 
   cfg = config.services.avahi;
 
+  yesNo = yes : if yes then "yes" else "no";
+
   avahiDaemonConf = with cfg; pkgs.writeText "avahi-daemon.conf" ''
     [server]
     ${# Users can set `networking.hostName' to the empty string, when getting
       # a host name from DHCP.  In that case, let Avahi take whatever the
       # current host name is; setting `host-name' to the empty string in
       # `avahi-daemon.conf' would be invalid.
-      if hostName != ""
-      then "host-name=${hostName}"
-      else ""}
+      optionalString (hostName != "") "host-name=${hostName}"}
     browse-domains=${concatStringsSep ", " browseDomains}
-    use-ipv4=${if ipv4 then "yes" else "no"}
-    use-ipv6=${if ipv6 then "yes" else "no"}
+    use-ipv4=${yesNo ipv4}
+    use-ipv6=${yesNo ipv6}
     ${optionalString (interfaces!=null) "allow-interfaces=${concatStringsSep "," interfaces}"}
     ${optionalString (domainName!=null) "domain-name=${domainName}"}
+    allow-point-to-point=${yesNo allowPointToPoint}
 
     [wide-area]
-    enable-wide-area=${if wideArea then "yes" else "no"}
+    enable-wide-area=${yesNo wideArea}
 
     [publish]
-    disable-publishing=${if publish.enable then "no" else "yes"}
-    disable-user-service-publishing=${if publish.userServices then "no" else "yes"}
-    publish-addresses=${if publish.userServices || publish.addresses then "yes" else "no"}
-    publish-hinfo=${if publish.hinfo then "yes" else "no"}
-    publish-workstation=${if publish.workstation then "yes" else "no"}
-    publish-domain=${if publish.domain then "yes" else "no"}
+    disable-publishing=${yesNo (!publish.enable)}
+    disable-user-service-publishing=${yesNo (!publish.userServices)}
+    publish-addresses=${yesNo (publish.userServices || publish.addresses)}
+    publish-hinfo=${yesNo publish.hinfo}
+    publish-workstation=${yesNo publish.workstation}
+    publish-domain=${yesNo publish.domain}
   '';
 
 in
@@ -98,6 +99,15 @@ in
         '';
       };
 
+      allowPointToPoint = mkOption {
+        default = false;
+        description= ''
+          Whether to use POINTTOPOINT interfaces. Might make mDNS unreliable due to usually large
+          latencies with such links and opens a potential security hole by allowing mDNS access from Internet
+          connections. Use with care and YMMV!
+        '';
+      };
+
       wideArea = mkOption {
         default = true;
         description = ''Whether to enable wide-area service discovery.'';
diff --git a/nixos/modules/services/networking/btsync.nix b/nixos/modules/services/networking/btsync.nix
index 92e9fa7be41..6e479a5860a 100644
--- a/nixos/modules/services/networking/btsync.nix
+++ b/nixos/modules/services/networking/btsync.nix
@@ -9,7 +9,6 @@ let
 
   listenAddr = cfg.httpListenAddr + ":" + (toString cfg.httpListenPort);
 
-  boolStr = x: if x then "true" else "false";
   optionalEmptyStr = b: v: optionalString (b != "") v;
 
   webUIConfig = optionalString cfg.enableWebUI
@@ -31,7 +30,7 @@ let
   sharedFoldersRecord =
     concatStringsSep "," (map (entry:
       let helper = attr: v:
-        if (entry ? attr) then boolStr entry.attr else boolStr v;
+        if (entry ? attr) then boolToString entry.attr else boolToString v;
       in
       ''
         {
@@ -65,11 +64,11 @@ let
         "listening_port":  ${toString cfg.listeningPort},
         "use_gui":         false,
 
-        "check_for_updates": ${boolStr cfg.checkForUpdates},
-        "use_upnp":          ${boolStr cfg.useUpnp},
+        "check_for_updates": ${boolToString cfg.checkForUpdates},
+        "use_upnp":          ${boolToString cfg.useUpnp},
         "download_limit":    ${toString cfg.downloadLimit},
         "upload_limit":      ${toString cfg.uploadLimit},
-        "lan_encrypt_data":  ${boolStr cfg.encryptLAN},
+        "lan_encrypt_data":  ${boolToString cfg.encryptLAN},
 
         ${webUIConfig}
         ${sharedFoldersConfig}
diff --git a/nixos/modules/services/networking/dhcpcd.nix b/nixos/modules/services/networking/dhcpcd.nix
index 7eeceb7407c..cdba14be21f 100644
--- a/nixos/modules/services/networking/dhcpcd.nix
+++ b/nixos/modules/services/networking/dhcpcd.nix
@@ -71,8 +71,7 @@ let
           # anything ever again ("couldn't resolve ..., giving up on
           # it"), so we silently lose time synchronisation. This also
           # applies to openntpd.
-          ${config.systemd.package}/bin/systemctl try-restart ntpd.service
-          ${config.systemd.package}/bin/systemctl try-restart openntpd.service
+          ${config.systemd.package}/bin/systemctl try-reload-or-restart ntpd.service openntpd.service || true
       fi
 
       ${cfg.runHook}
diff --git a/nixos/modules/services/networking/firefox/sync-server.nix b/nixos/modules/services/networking/firefox/sync-server.nix
index 5c14ceff6a0..3a95b9c4ec9 100644
--- a/nixos/modules/services/networking/firefox/sync-server.nix
+++ b/nixos/modules/services/networking/firefox/sync-server.nix
@@ -19,7 +19,7 @@ let
     [syncserver]
     public_url = ${cfg.publicUrl}
     ${optionalString (cfg.sqlUri != "") "sqluri = ${cfg.sqlUri}"}
-    allow_new_users = ${if cfg.allowNewUsers then "true" else "false"}
+    allow_new_users = ${boolToString cfg.allowNewUsers}
 
     [browserid]
     backend = tokenserver.verifiers.LocalVerifier
diff --git a/nixos/modules/services/networking/i2pd.nix b/nixos/modules/services/networking/i2pd.nix
index c5b27350b3c..24a3196bed4 100644
--- a/nixos/modules/services/networking/i2pd.nix
+++ b/nixos/modules/services/networking/i2pd.nix
@@ -10,8 +10,6 @@ let
 
   extip = "EXTIP=\$(${pkgs.curl.bin}/bin/curl -sLf \"http://jsonip.com\" | ${pkgs.gawk}/bin/awk -F'\"' '{print $4}')";
 
-  toYesNo = b: if b then "true" else "false";
-
   mkEndpointOpt = name: addr: port: {
     enable = mkEnableOption name;
     name = mkOption {
@@ -76,10 +74,10 @@ let
 
   i2pdConf = pkgs.writeText "i2pd.conf"
   ''
-  ipv4 = ${toYesNo cfg.enableIPv4}
-  ipv6 = ${toYesNo cfg.enableIPv6}
-  notransit = ${toYesNo cfg.notransit}
-  floodfill = ${toYesNo cfg.floodfill}
+  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}"}
@@ -88,14 +86,14 @@ let
   transittunnels = ${toString cfg.limits.transittunnels}
 
   [upnp]
-  enabled = ${toYesNo cfg.upnp.enable}
+  enabled = ${boolToString cfg.upnp.enable}
   name = ${cfg.upnp.name}
 
   [precomputation]
-  elgamal = ${toYesNo cfg.precomputation.elgamal}
+  elgamal = ${boolToString cfg.precomputation.elgamal}
 
   [reseed]
-  verify = ${toYesNo cfg.reseed.verify}
+  verify = ${boolToString cfg.reseed.verify}
   file = ${cfg.reseed.file}
   urls = ${builtins.concatStringsSep "," cfg.reseed.urls}
 
@@ -107,11 +105,11 @@ let
       (proto: let portStr = toString proto.port; in
         ''
           [${proto.name}]
-          enabled = ${toYesNo proto.enable}
+          enabled = ${boolToString proto.enable}
           address = ${proto.address}
           port = ${toString proto.port}
           ${if proto ? keys then "keys = ${proto.keys}" else ""}
-          ${if proto ? auth then "auth = ${toYesNo proto.auth}" 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 ""}
diff --git a/nixos/modules/services/networking/ircd-hybrid/default.nix b/nixos/modules/services/networking/ircd-hybrid/default.nix
index ede57c5046d..bd583fb020e 100644
--- a/nixos/modules/services/networking/ircd-hybrid/default.nix
+++ b/nixos/modules/services/networking/ircd-hybrid/default.nix
@@ -12,7 +12,7 @@ let
     substFiles = [ "=>/conf" ./ircd.conf ];
     inherit (pkgs) ircdHybrid coreutils su iproute gnugrep procps;
 
-    ipv6Enabled = if config.networking.enableIPv6 then "true" else "false";
+    ipv6Enabled = boolToString config.networking.enableIPv6;
 
     inherit (cfg) serverName sid description adminEmail
             extraPort;
diff --git a/nixos/modules/services/networking/keepalived/default.nix b/nixos/modules/services/networking/keepalived/default.nix
new file mode 100644
index 00000000000..378cd936584
--- /dev/null
+++ b/nixos/modules/services/networking/keepalived/default.nix
@@ -0,0 +1,245 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+  cfg = config.services.keepalived;
+
+  keepalivedConf = pkgs.writeText "keepalived.conf" ''
+    global_defs {
+      ${snmpGlobalDefs}
+      ${cfg.extraGlobalDefs}
+    }
+
+    ${vrrpInstancesStr}
+    ${cfg.extraConfig}
+  '';
+
+  snmpGlobalDefs = with cfg.snmp; optionalString enable (
+    optionalString (socket != null) "snmp_socket ${socket}\n"
+    + optionalString enableKeepalived "enable_snmp_keepalived\n"
+    + optionalString enableChecker "enable_snmp_checker\n"
+    + optionalString enableRfc "enable_snmp_rfc\n"
+    + optionalString enableRfcV2 "enable_snmp_rfcv2\n"
+    + optionalString enableRfcV3 "enable_snmp_rfcv3\n"
+    + optionalString enableTraps "enable_traps"
+  );
+
+  vrrpInstancesStr = concatStringsSep "\n" (map (i:
+    ''
+      vrrp_instance ${i.name} {
+        interface ${i.interface}
+        state ${i.state}
+        virtual_router_id ${toString i.virtualRouterId}
+        priority ${toString i.priority}
+        ${optionalString i.noPreempt "nopreempt"}
+
+        ${optionalString i.useVmac (
+          "use_vmac" + optionalString (i.vmacInterface != null) " ${i.vmacInterface}"
+        )}
+        ${optionalString i.vmacXmitBase "vmac_xmit_base"}
+
+        ${optionalString (i.unicastSrcIp != null) "unicast_src_ip ${i.unicastSrcIp}"}
+        unicast_peer {
+          ${concatStringsSep "\n" i.unicastPeers}
+        }
+
+        virtual_ipaddress {
+          ${concatMapStringsSep "\n" virtualIpLine i.virtualIps}
+        }
+
+        ${i.extraConfig}
+      }
+    ''
+  ) vrrpInstances);
+
+  virtualIpLine = (ip:
+    ip.addr
+    + optionalString (notNullOrEmpty ip.brd) " brd ${ip.brd}"
+    + optionalString (notNullOrEmpty ip.dev) " dev ${ip.dev}"
+    + optionalString (notNullOrEmpty ip.scope) " scope ${ip.scope}"
+    + optionalString (notNullOrEmpty ip.label) " label ${ip.label}"
+  );
+
+  notNullOrEmpty = s: !(s == null || s == "");
+
+  vrrpInstances = mapAttrsToList (iName: iConfig:
+    {
+      name = iName;
+    } // iConfig
+  ) cfg.vrrpInstances;
+
+  vrrpInstanceAssertions = i: [
+    { assertion = i.interface != "";
+      message = "services.keepalived.vrrpInstances.${i.name}.interface option cannot be empty.";
+    }
+    { assertion = i.virtualRouterId >= 0 && i.virtualRouterId <= 255;
+      message = "services.keepalived.vrrpInstances.${i.name}.virtualRouterId must be an integer between 0..255.";
+    }
+    { assertion = i.priority >= 0 && i.priority <= 255;
+      message = "services.keepalived.vrrpInstances.${i.name}.priority must be an integer between 0..255.";
+    }
+    { assertion = i.vmacInterface == null || i.useVmac;
+      message = "services.keepalived.vrrpInstances.${i.name}.vmacInterface has no effect when services.keepalived.vrrpInstances.${i.name}.useVmac is not set.";
+    }
+    { assertion = !i.vmacXmitBase || i.useVmac;
+      message = "services.keepalived.vrrpInstances.${i.name}.vmacXmitBase has no effect when services.keepalived.vrrpInstances.${i.name}.useVmac is not set.";
+    }
+  ] ++ flatten (map (virtualIpAssertions i.name) i.virtualIps);
+
+  virtualIpAssertions = vrrpName: ip: [
+    { assertion = ip.addr != "";
+      message = "The 'addr' option for an services.keepalived.vrrpInstances.${vrrpName}.virtualIps entry cannot be empty.";
+    }
+  ];
+
+  pidFile = "/run/keepalived.pid";
+
+in
+{
+
+  options = {
+    services.keepalived = {
+
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to enable Keepalived.
+        '';
+      };
+
+      snmp = {
+
+        enable = mkOption {
+          type = types.bool;
+          default = false;
+          description = ''
+            Whether to enable the builtin AgentX subagent.
+          '';
+        };
+
+        socket = mkOption {
+          type = types.nullOr types.str;
+          default = null;
+          description = ''
+            Socket to use for connecting to SNMP master agent. If this value is
+            set to null, keepalived's default will be used, which is
+            unix:/var/agentx/master, unless using a network namespace, when the
+            default is udp:localhost:705.
+          '';
+        };
+
+        enableKeepalived = mkOption {
+          type = types.bool;
+          default = false;
+          description = ''
+            Enable SNMP handling of vrrp element of KEEPALIVED MIB.
+          '';
+        };
+
+        enableChecker = mkOption {
+          type = types.bool;
+          default = false;
+          description = ''
+            Enable SNMP handling of checker element of KEEPALIVED MIB.
+          '';
+        };
+
+        enableRfc = mkOption {
+          type = types.bool;
+          default = false;
+          description = ''
+            Enable SNMP handling of RFC2787 and RFC6527 VRRP MIBs.
+          '';
+        };
+
+        enableRfcV2 = mkOption {
+          type = types.bool;
+          default = false;
+          description = ''
+            Enable SNMP handling of RFC2787 VRRP MIB.
+          '';
+        };
+
+        enableRfcV3 = mkOption {
+          type = types.bool;
+          default = false;
+          description = ''
+            Enable SNMP handling of RFC6527 VRRP MIB.
+          '';
+        };
+
+        enableTraps = mkOption {
+          type = types.bool;
+          default = false;
+          description = ''
+            Enable SNMP traps.
+          '';
+        };
+
+      };
+
+      vrrpInstances = mkOption {
+        type = types.attrsOf (types.submodule (import ./vrrp-options.nix {
+          inherit lib;
+        }));
+        default = {};
+        description = "Declarative vhost config";
+      };
+
+      extraGlobalDefs = mkOption {
+        type = types.lines;
+        default = "";
+        description = ''
+          Extra lines to be added verbatim to the 'global_defs' block of the
+          configuration file
+        '';
+      };
+
+      extraConfig = mkOption {
+        type = types.lines;
+        default = "";
+        description = ''
+          Extra lines to be added verbatim to the configuration file.
+        '';
+      };
+
+    };
+  };
+
+  config = mkIf cfg.enable {
+
+    assertions = flatten (map vrrpInstanceAssertions vrrpInstances);
+
+    systemd.timers.keepalived-boot-delay = {
+      description = "Keepalive Daemon delay to avoid instant transition to MASTER state";
+      after = [ "network.target" "network-online.target" "syslog.target" ];
+      requires = [ "network-online.target" ];
+      wantedBy = [ "multi-user.target" ];
+      timerConfig = {
+        OnActiveSec = "5s";
+        Unit = "keepalived.service";
+      };
+    };
+
+    systemd.services.keepalived = {
+      description = "Keepalive Daemon (LVS and VRRP)";
+      after = [ "network.target" "network-online.target" "syslog.target" ];
+      wants = [ "network-online.target" ];
+      serviceConfig = {
+        Type = "forking";
+        PIDFile = pidFile;
+        KillMode = "process";
+        ExecStart = "${pkgs.keepalived}/sbin/keepalived"
+          + " -f ${keepalivedConf}"
+          + " -p ${pidFile}"
+          + optionalString cfg.snmp.enable " --snmp";
+        ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+        Restart = "always";
+        RestartSec = "1s";
+      };
+    };
+  };
+}
diff --git a/nixos/modules/services/networking/keepalived/virtual-ip-options.nix b/nixos/modules/services/networking/keepalived/virtual-ip-options.nix
new file mode 100644
index 00000000000..1b8889b1b47
--- /dev/null
+++ b/nixos/modules/services/networking/keepalived/virtual-ip-options.nix
@@ -0,0 +1,50 @@
+{ lib } :
+
+with lib;
+{
+  options = {
+
+    addr = mkOption {
+      type = types.str;
+      description = ''
+        IP address, optionally with a netmask: IPADDR[/MASK]
+      '';
+    };
+
+    brd = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      description = ''
+        The broadcast address on the interface.
+      '';
+    };
+
+    dev = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      description = ''
+        The name of the device to add the address to.
+      '';
+    };
+
+    scope = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      description = ''
+        The scope of the area where this address is valid.
+      '';
+    };
+
+    label = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      description = ''
+        Each address may be tagged with a label string. In order to preserve
+        compatibility with Linux-2.0 net aliases, this string must coincide with
+        the name of the device or must be prefixed with the device name followed
+        by colon.
+      '';
+    };
+
+  };
+}
diff --git a/nixos/modules/services/networking/keepalived/vrrp-options.nix b/nixos/modules/services/networking/keepalived/vrrp-options.nix
new file mode 100644
index 00000000000..79eff3ae541
--- /dev/null
+++ b/nixos/modules/services/networking/keepalived/vrrp-options.nix
@@ -0,0 +1,121 @@
+{ lib } :
+
+with lib;
+{
+  options = {
+
+    interface = mkOption {
+      type = types.str;
+      description = ''
+        Interface for inside_network, bound by vrrp.
+      '';
+    };
+
+    state = mkOption {
+      type = types.enum [ "MASTER" "BACKUP" ];
+      default = "BACKUP";
+      description = ''
+        Initial state. As soon as the other machine(s) come up, an election will
+        be held and the machine with the highest "priority" will become MASTER.
+        So the entry here doesn't matter a whole lot.
+      '';
+    };
+
+    virtualRouterId = mkOption {
+      type = types.int;
+      description = ''
+        Arbitrary unique number 0..255. Used to differentiate multiple instances
+        of vrrpd running on the same NIC (and hence same socket).
+      '';
+    };
+
+    priority = mkOption {
+      type = types.int;
+      default = 100;
+      description = ''
+        For electing MASTER, highest priority wins. To be MASTER, make 50 more
+        than other machines.
+      '';
+    };
+
+    noPreempt = mkOption {
+      type = types.bool;
+      default = false;
+      description = ''
+        VRRP will normally preempt a lower priority machine when a higher
+        priority machine comes online. "nopreempt" allows the lower priority
+        machine to maintain the master role, even when a higher priority machine
+        comes back online. NOTE: For this to work, the initial state of this
+        entry must be BACKUP.
+      '';
+    };
+
+    useVmac = mkOption {
+      type = types.bool;
+      default = false;
+      description = ''
+        Use VRRP Virtual MAC.
+      '';
+    };
+
+    vmacInterface = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      description = ''
+         Name of the vmac interface to use. keepalived will come up with a name
+         if you don't specify one.
+      '';
+    };
+
+    vmacXmitBase = mkOption {
+      type = types.bool;
+      default = false;
+      description = ''
+        Send/Recv VRRP messages from base interface instead of VMAC interface.
+      '';
+    };
+
+    unicastSrcIp = mkOption {
+      type = types.nullOr types.str;
+      default = null;
+      description = ''
+         Default IP for binding vrrpd is the primary IP on interface. If you
+         want to hide location of vrrpd, use this IP as src_addr for unicast
+         vrrp packets.
+      '';
+    };
+
+    unicastPeers = mkOption {
+      type = types.listOf types.str;
+      default = [];
+      description = ''
+        Do not send VRRP adverts over VRRP multicast group. Instead it sends
+        adverts to the following list of ip addresses using unicast design
+        fashion. It can be cool to use VRRP FSM and features in a networking
+        environment where multicast is not supported! IP Addresses specified can
+        IPv4 as well as IPv6.
+      '';
+    };
+
+    virtualIps = mkOption {
+      type = types.listOf (types.submodule (import ./virtual-ip-options.nix {
+        inherit lib;
+      }));
+      default = [];
+      example = literalExample ''
+        TODO: Example
+      '';
+      description = "Declarative vhost config";
+    };
+
+    extraConfig = mkOption {
+      type = types.lines;
+      default = "";
+      description = ''
+        Extra lines to be added verbatim to the vrrp_instance section.
+      '';
+    };
+
+  };
+
+}
diff --git a/nixos/modules/services/networking/mosquitto.nix b/nixos/modules/services/networking/mosquitto.nix
index 2325424ff3c..5451500b56f 100644
--- a/nixos/modules/services/networking/mosquitto.nix
+++ b/nixos/modules/services/networking/mosquitto.nix
@@ -16,7 +16,7 @@ let
     pid_file /run/mosquitto/pid
     acl_file ${aclFile}
     persistence true
-    allow_anonymous ${if cfg.allowAnonymous then "true" else "false"}
+    allow_anonymous ${boolToString cfg.allowAnonymous}
     bind_address ${cfg.host}
     port ${toString cfg.port}
     ${listenerConf}
diff --git a/nixos/modules/services/networking/murmur.nix b/nixos/modules/services/networking/murmur.nix
index 81f968ae9fe..13d7c3254f9 100644
--- a/nixos/modules/services/networking/murmur.nix
+++ b/nixos/modules/services/networking/murmur.nix
@@ -26,21 +26,21 @@ let
 
     textmessagelength=${toString cfg.textMsgLength}
     imagemessagelength=${toString cfg.imgMsgLength}
-    allowhtml=${if cfg.allowHtml then "true" else "false"}
+    allowhtml=${boolToString cfg.allowHtml}
     logdays=${toString cfg.logDays}
-    bonjour=${if cfg.bonjour then "true" else "false"}
-    sendversion=${if cfg.sendVersion then "true" else "false"}
+    bonjour=${boolToString cfg.bonjour}
+    sendversion=${boolToString cfg.sendVersion}
 
     ${if cfg.registerName     == "" then "" else "registerName="+cfg.registerName}
     ${if cfg.registerPassword == "" then "" else "registerPassword="+cfg.registerPassword}
     ${if cfg.registerUrl      == "" then "" else "registerUrl="+cfg.registerUrl}
     ${if cfg.registerHostname == "" then "" else "registerHostname="+cfg.registerHostname}
 
-    certrequired=${if cfg.clientCertRequired then "true" else "false"}
+    certrequired=${boolToString cfg.clientCertRequired}
     ${if cfg.sslCert == "" then "" else "sslCert="+cfg.sslCert}
     ${if cfg.sslKey  == "" then "" else "sslKey="+cfg.sslKey}
     ${if cfg.sslCa   == "" then "" else "sslCA="+cfg.sslCa}
-    
+
     ${cfg.extraConfig}
   '';
 in
diff --git a/nixos/modules/services/networking/networkmanager.nix b/nixos/modules/services/networking/networkmanager.nix
index 7255ffc5af4..220107a2411 100644
--- a/nixos/modules/services/networking/networkmanager.nix
+++ b/nixos/modules/services/networking/networkmanager.nix
@@ -162,9 +162,9 @@ in {
         type = types.listOf (types.submodule {
           options = {
             source = mkOption {
-              type = types.str;
+              type = types.path;
               description = ''
-                A script source.
+                A script.
               '';
             };
 
@@ -224,7 +224,7 @@ in {
              target = "NetworkManager/dispatcher.d/02overridedns";
            }
       ++ lib.imap (i: s: {
-        text = s.source;
+        inherit (s) source;
         target = "NetworkManager/dispatcher.d/${dispatcherTypesSubdirMap.${s.type}}03userscript${lib.fixedWidthNumber 4 i}";
       }) cfg.dispatcherScripts;
 
@@ -241,6 +241,7 @@ in {
     users.extraUsers = [{
       name = "nm-openvpn";
       uid = config.ids.uids.nm-openvpn;
+      extraGroups = [ "networkmanager" ];
     }];
 
     systemd.packages = cfg.packages;
diff --git a/nixos/modules/services/networking/prosody.nix b/nixos/modules/services/networking/prosody.nix
index feaa007de15..fb9c9dc67f2 100644
--- a/nixos/modules/services/networking/prosody.nix
+++ b/nixos/modules/services/networking/prosody.nix
@@ -219,7 +219,7 @@ in
 
       data_path = "/var/lib/prosody"
 
-      allow_registration = ${ if cfg.allowRegistration then "true" else "false" };
+      allow_registration = ${boolToString cfg.allowRegistration};
 
       ${ optionalString cfg.modules.console "console_enabled = true;" }
 
@@ -244,7 +244,7 @@ in
 
       ${ lib.concatStringsSep "\n" (lib.mapAttrsToList (n: v: ''
         VirtualHost "${v.domain}"
-          enabled = ${if v.enabled then "true" else "false"};
+          enabled = ${boolToString v.enabled};
           ${ optionalString (v.ssl != null) (createSSLOptsStr v.ssl) }
           ${ v.extraConfig }
         '') cfg.virtualHosts) }
diff --git a/nixos/modules/services/networking/searx.nix b/nixos/modules/services/networking/searx.nix
index 3520c6d3f7d..e0eef9ed96f 100644
--- a/nixos/modules/services/networking/searx.nix
+++ b/nixos/modules/services/networking/searx.nix
@@ -18,17 +18,12 @@ in
 
     services.searx = {
 
-      enable = mkOption {
-        type = types.bool;
-        default = false;
-        description = "
-          Whether to enable the Searx server. See https://github.com/asciimoo/searx
-        ";
-      };
+      enable = mkEnableOption
+        "the searx server. See https://github.com/asciimoo/searx";
 
       configFile = mkOption {
-        type = types.path;
-        default = "";
+        type = types.nullOr types.path;
+        default = null;
         description = "
           The path of the Searx server configuration file. If no file
           is specified, a default file is used (default config file has
@@ -72,7 +67,7 @@ in
           User = "searx";
           ExecStart = "${cfg.package}/bin/searx-run";
         };
-      } // (optionalAttrs (configFile != "") {
+      } // (optionalAttrs (configFile != null) {
         environment.SEARX_SETTINGS_PATH = configFile;
       });
 
diff --git a/nixos/modules/services/networking/smokeping.nix b/nixos/modules/services/networking/smokeping.nix
index bac79474527..c5c131cb4c5 100644
--- a/nixos/modules/services/networking/smokeping.nix
+++ b/nixos/modules/services/networking/smokeping.nix
@@ -288,8 +288,11 @@ in
     };
     systemd.services.smokeping = {
       wantedBy = [ "multi-user.target"];
-      serviceConfig.User = cfg.user;
-      serviceConfig.PermissionsStartOnly = true;
+      serviceConfig = {
+        User = cfg.user;
+        PermissionsStartOnly = true;
+        Restart = "on-failure";
+      };
       preStart = ''
         mkdir -m 0755 -p ${smokepingHome}/cache ${smokepingHome}/data
         rm -f ${smokepingHome}/cropper
diff --git a/nixos/modules/services/networking/ssh/sshd.nix b/nixos/modules/services/networking/ssh/sshd.nix
index 42b50d0426a..bebf4e145ca 100644
--- a/nixos/modules/services/networking/ssh/sshd.nix
+++ b/nixos/modules/services/networking/ssh/sshd.nix
@@ -316,8 +316,6 @@ in
 
         UsePAM yes
 
-        UsePrivilegeSeparation sandbox
-
         AddressFamily ${if config.networking.enableIPv6 then "any" else "inet"}
         ${concatMapStrings (port: ''
           Port ${toString port}
diff --git a/nixos/modules/services/networking/sslh.nix b/nixos/modules/services/networking/sslh.nix
index bd584a3a85d..e3d65c49fbf 100644
--- a/nixos/modules/services/networking/sslh.nix
+++ b/nixos/modules/services/networking/sslh.nix
@@ -5,7 +5,7 @@ with lib;
 let
   cfg = config.services.sslh;
   configFile = pkgs.writeText "sslh.conf" ''
-    verbose: ${if cfg.verbose then "true" else "false"};
+    verbose: ${boolToString cfg.verbose};
     foreground: true;
     inetd: false;
     numeric: false;
diff --git a/nixos/modules/services/networking/znc.nix b/nixos/modules/services/networking/znc.nix
index 6d68b790e86..1c63d800e26 100644
--- a/nixos/modules/services/networking/znc.nix
+++ b/nixos/modules/services/networking/znc.nix
@@ -35,7 +35,7 @@ let
             Port = ${toString confOpts.port}
             IPv4 = true
             IPv6 = true
-            SSL = ${if confOpts.useSSL then "true" else "false"}
+            SSL = ${boolToString confOpts.useSSL}
     </Listener>
     
     <User ${confOpts.userName}>
diff --git a/nixos/modules/services/scheduling/fcron.nix b/nixos/modules/services/scheduling/fcron.nix
index bd1ecb40969..bc631bdd044 100644
--- a/nixos/modules/services/scheduling/fcron.nix
+++ b/nixos/modules/services/scheduling/fcron.nix
@@ -143,10 +143,12 @@ in
       };
 
       preStart = ''
-        ${pkgs.coreutils}/bin/mkdir -m 0770 -p /var/spool/fcron
-        ${pkgs.coreutils}/bin/chown -R fcron:fcron /var/spool/fcron
+        install \
+          --mode 0770 \
+          --owner fcron \
+          --group fcron \
+          --directory /var/spool/fcron
         # load system crontab file
-        set -x
         #${pkgs.fcron}/bin/fcrontab -u systab ${pkgs.writeText "systab" cfg.systab}
       '';
 
diff --git a/nixos/modules/services/security/oauth2_proxy.nix b/nixos/modules/services/security/oauth2_proxy.nix
index caa7d9d5081..e292fd9851e 100644
--- a/nixos/modules/services/security/oauth2_proxy.nix
+++ b/nixos/modules/services/security/oauth2_proxy.nix
@@ -10,9 +10,6 @@ let
   #   repeatedArgs (arg: "--arg=${arg}") args
   repeatedArgs = concatMapStringsSep " ";
 
-  # 'toString' doesn't quite do what we want for bools.
-  fromBool = x: if x then "true" else "false";
-
   # oauth2_proxy provides many options that are only relevant if you are using
   # a certain provider. This set maps from provider name to a function that
   # takes the configuration and returns a string that can be inserted into the
@@ -49,24 +46,24 @@ let
     --client-secret='${cfg.clientSecret}' \
     ${optionalString (!isNull cfg.cookie.domain) "--cookie-domain='${cfg.cookie.domain}'"} \
     --cookie-expire='${cfg.cookie.expire}' \
-    --cookie-httponly=${fromBool cfg.cookie.httpOnly} \
+    --cookie-httponly=${boolToString cfg.cookie.httpOnly} \
     --cookie-name='${cfg.cookie.name}' \
     --cookie-secret='${cfg.cookie.secret}' \
-    --cookie-secure=${fromBool cfg.cookie.secure} \
+    --cookie-secure=${boolToString cfg.cookie.secure} \
     ${optionalString (!isNull cfg.cookie.refresh) "--cookie-refresh='${cfg.cookie.refresh}'"} \
     ${optionalString (!isNull cfg.customTemplatesDir) "--custom-templates-dir='${cfg.customTemplatesDir}'"} \
     ${repeatedArgs (x: "--email-domain='${x}'") cfg.email.domains} \
     --http-address='${cfg.httpAddress}' \
-    ${optionalString (!isNull cfg.htpasswd.file) "--htpasswd-file='${cfg.htpasswd.file}' --display-htpasswd-form=${fromBool cfg.htpasswd.displayForm}"} \
+    ${optionalString (!isNull cfg.htpasswd.file) "--htpasswd-file='${cfg.htpasswd.file}' --display-htpasswd-form=${boolToString cfg.htpasswd.displayForm}"} \
     ${optionalString (!isNull cfg.loginURL) "--login-url='${cfg.loginURL}'"} \
-    --pass-access-token=${fromBool cfg.passAccessToken} \
-    --pass-basic-auth=${fromBool cfg.passBasicAuth} \
-    --pass-host-header=${fromBool cfg.passHostHeader} \
+    --pass-access-token=${boolToString cfg.passAccessToken} \
+    --pass-basic-auth=${boolToString cfg.passBasicAuth} \
+    --pass-host-header=${boolToString cfg.passHostHeader} \
     --proxy-prefix='${cfg.proxyPrefix}' \
     ${optionalString (!isNull cfg.profileURL) "--profile-url='${cfg.profileURL}'"} \
     ${optionalString (!isNull cfg.redeemURL) "--redeem-url='${cfg.redeemURL}'"} \
     ${optionalString (!isNull cfg.redirectURL) "--redirect-url='${cfg.redirectURL}'"} \
-    --request-logging=${fromBool cfg.requestLogging} \
+    --request-logging=${boolToString cfg.requestLogging} \
     ${optionalString (!isNull cfg.scope) "--scope='${cfg.scope}'"} \
     ${repeatedArgs (x: "--skip-auth-regex='${x}'") cfg.skipAuthRegexes} \
     ${optionalString (!isNull cfg.signatureKey) "--signature-key='${cfg.signatureKey}'"} \
diff --git a/nixos/modules/services/system/earlyoom.nix b/nixos/modules/services/system/earlyoom.nix
new file mode 100644
index 00000000000..daa46838bfa
--- /dev/null
+++ b/nixos/modules/services/system/earlyoom.nix
@@ -0,0 +1,96 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  ecfg = config.services.earlyoom;
+in
+{
+  options = {
+    services.earlyoom = {
+
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Enable early out of memory killing.
+        '';
+      };
+
+      freeMemThreshold = mkOption {
+        type = types.int;
+        default = 10;
+        description = ''
+          Minimum of availabe memory (in percent).
+          If the free memory falls below this threshold and the analog is true for
+          <option>services.earlyoom.freeSwapThreshold</option>
+          the killing begins.
+        '';
+      };
+
+      freeSwapThreshold = mkOption {
+        type = types.int;
+        default = 10;
+        description = ''
+          Minimum of availabe swap space (in percent).
+          If the available swap space falls below this threshold and the analog
+          is true for <option>services.earlyoom.freeMemThreshold</option>
+          the killing begins.
+        '';
+      };
+
+      useKernelOOMKiller= mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Use kernel OOM killer instead of own user-space implementation.
+        '';
+      };
+
+      ignoreOOMScoreAdjust = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Ignore oom_score_adjust values of processes.
+          User-space implementation only.
+        '';
+      };
+
+      enableDebugInfo = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Enable debugging messages.
+        '';
+      };
+    };
+  };
+
+  config = mkIf ecfg.enable {
+    assertions = [
+      { assertion = ecfg.freeMemThreshold > 0 && ecfg.freeMemThreshold <= 100;
+        message = "Needs to be a positive percentage"; }
+      { assertion = ecfg.freeSwapThreshold > 0 && ecfg.freeSwapThreshold <= 100;
+        message = "Needs to be a positive percentage"; }
+      { assertion = !ecfg.useKernelOOMKiller || !ecfg.ignoreOOMScoreAdjust;
+        message = "Both options in conjunction do not make sense"; }
+    ];
+
+    systemd.services.earlyoom = {
+      description = "Early OOM Daemon for Linux";
+      wantedBy = [ "multi-user.target" ];
+      serviceConfig = {
+        StandardOutput = "null";
+        StandardError = "syslog";
+        ExecStart = ''
+          ${pkgs.earlyoom}/bin/earlyoom \
+          -m ${toString ecfg.freeMemThreshold} \
+          -s ${toString ecfg.freeSwapThreshold} \
+          ${optionalString ecfg.useKernelOOMKiller "-k"} \
+          ${optionalString ecfg.ignoreOOMScoreAdjust "-i"} \
+          ${optionalString ecfg.enableDebugInfo "-d"}
+        '';
+      };
+    };
+  };
+}
diff --git a/nixos/modules/services/torrent/transmission.nix b/nixos/modules/services/torrent/transmission.nix
index 5b2e4ca1606..1f319df794b 100644
--- a/nixos/modules/services/torrent/transmission.nix
+++ b/nixos/modules/services/torrent/transmission.nix
@@ -15,8 +15,7 @@ let
 
   # Strings must be quoted, ints and bools must not (for settings.json).
   toOption = x:
-    if x == true then "true"
-    else if x == false then "false"
+    if isBool x then boolToString x
     else if isInt x then toString x
     else toString ''"${x}"'';
 
diff --git a/nixos/modules/services/web-apps/atlassian/crowd.nix b/nixos/modules/services/web-apps/atlassian/crowd.nix
index 7ff7dc4e574..b54c91d7de9 100644
--- a/nixos/modules/services/web-apps/atlassian/crowd.nix
+++ b/nixos/modules/services/web-apps/atlassian/crowd.nix
@@ -137,7 +137,7 @@ in
 
         sed -e 's,port="8095",port="${toString cfg.listenPort}" address="${cfg.listenAddress}",' \
         '' + (lib.optionalString cfg.proxy.enable ''
-          -e 's,compression="on",compression="off" protocol="HTTP/1.1" proxyName="${cfg.proxy.name}" proxyPort="${toString cfg.proxy.port}" scheme="${cfg.proxy.scheme}" secure="${toString cfg.proxy.secure}",' \
+          -e 's,compression="on",compression="off" protocol="HTTP/1.1" proxyName="${cfg.proxy.name}" proxyPort="${toString cfg.proxy.port}" scheme="${cfg.proxy.scheme}" secure="${boolToString cfg.proxy.secure}",' \
         '') + ''
           ${pkg}/apache-tomcat/conf/server.xml.dist > ${cfg.home}/server.xml
       '';
diff --git a/nixos/modules/services/web-apps/quassel-webserver.nix b/nixos/modules/services/web-apps/quassel-webserver.nix
index d19e4bc5827..2ba5698d6cb 100644
--- a/nixos/modules/services/web-apps/quassel-webserver.nix
+++ b/nixos/modules/services/web-apps/quassel-webserver.nix
@@ -12,11 +12,11 @@ let
         port: ${toString cfg.quasselCorePort},  // quasselcore port
         initialBacklogLimit: ${toString cfg.initialBacklogLimit},  // Amount of backlogs to fetch per buffer on connection
         backlogLimit: ${toString cfg.backlogLimit},  // Amount of backlogs to fetch per buffer after first retrieval
-        securecore: ${if cfg.secureCore then "true" else "false"},  // Connect to the core using SSL
+        securecore: ${boolToString cfg.secureCore},  // Connect to the core using SSL
         theme: '${cfg.theme}'  // Default UI theme
       },
       themes: ['default', 'darksolarized'],  //  Available themes
-      forcedefault: ${if cfg.forceHostAndPort then "true" else "false"},  // Will force default host and port to be used, and will hide the corresponding fields in the UI
+      forcedefault: ${boolToString cfg.forceHostAndPort},  // Will force default host and port to be used, and will hide the corresponding fields in the UI
       prefixpath: '${cfg.prefixPath}'  // Configure this if you use a reverse proxy
     };
   '';
diff --git a/nixos/modules/services/web-apps/tt-rss.nix b/nixos/modules/services/web-apps/tt-rss.nix
index 5193814da72..76b0ee6da96 100644
--- a/nixos/modules/services/web-apps/tt-rss.nix
+++ b/nixos/modules/services/web-apps/tt-rss.nix
@@ -6,8 +6,6 @@ let
 
   configVersion = 26;
 
-  boolToString = b: if b then "true" else "false";
-
   cacheDir = "cache";
   lockDir = "lock";
   feedIconsDir = "feed-icons";
diff --git a/nixos/modules/services/web-servers/lighttpd/gitweb.nix b/nixos/modules/services/web-servers/lighttpd/gitweb.nix
index f12cc973446..c8d9836b0b6 100644
--- a/nixos/modules/services/web-servers/lighttpd/gitweb.nix
+++ b/nixos/modules/services/web-servers/lighttpd/gitweb.nix
@@ -60,7 +60,8 @@ in
               "/gitweb/"        => "${pkgs.git}/share/gitweb/gitweb.cgi"
           )
           setenv.add-environment = (
-              "GITWEB_CONFIG" => "${gitwebConfigFile}"
+              "GITWEB_CONFIG" => "${gitwebConfigFile}",
+              "HOME" => "${cfg.projectroot}"
           )
       }
     '';
diff --git a/nixos/modules/services/x11/compton.nix b/nixos/modules/services/x11/compton.nix
index d1f7f164e64..d75d24830f8 100644
--- a/nixos/modules/services/x11/compton.nix
+++ b/nixos/modules/services/x11/compton.nix
@@ -83,7 +83,7 @@ in {
         "focused = 1" 
       ];
       description = ''
-        List of condition of windows that should have no shadow.
+        List of conditions of windows that should not be faded.
         See <literal>compton(1)</literal> man page for more examples.
       '';
     };
@@ -123,7 +123,7 @@ in {
         "focused = 1" 
       ];
       description = ''
-        List of condition of windows that should have no shadow.
+        List of conditions of windows that should have no shadow.
         See <literal>compton(1)</literal> man page for more examples.
       '';
     };
diff --git a/nixos/modules/services/x11/display-managers/default.nix b/nixos/modules/services/x11/display-managers/default.nix
index 4e2c0e01ca0..543fd939914 100644
--- a/nixos/modules/services/x11/display-managers/default.nix
+++ b/nixos/modules/services/x11/display-managers/default.nix
@@ -32,8 +32,14 @@ let
     ''
       #! ${pkgs.bash}/bin/bash
 
-      # Handle being called by SDDM.
-      if test "''${1:0:1}" = / ; then eval exec $1 $2 ; fi
+      # SDDM splits "Exec" line in .desktop file by whitespace and pass script path as $1
+      if [[ "$0" = "$1" ]]; then
+        # remove superfluous $1 again
+        shift
+        # join arguments again and evaluate them in a shell context
+        # to interpret shell quoting
+        eval exec "$0" "$@"
+      fi
 
       ${optionalString cfg.displayManager.logToJournal ''
         if [ -z "$_DID_SYSTEMD_CAT" ]; then
diff --git a/nixos/modules/services/x11/display-managers/sddm.nix b/nixos/modules/services/x11/display-managers/sddm.nix
index affc1261d19..99c03ca81c2 100644
--- a/nixos/modules/services/x11/display-managers/sddm.nix
+++ b/nixos/modules/services/x11/display-managers/sddm.nix
@@ -59,7 +59,7 @@ let
     [Autologin]
     User=${cfg.autoLogin.user}
     Session=${defaultSessionName}.desktop
-    Relogin=${if cfg.autoLogin.relogin then "true" else "false"}
+    Relogin=${boolToString cfg.autoLogin.relogin}
     ''}
 
     ${cfg.extraConfig}
diff --git a/nixos/modules/services/x11/hardware/multitouch.nix b/nixos/modules/services/x11/hardware/multitouch.nix
index 0e9eb021494..c03bb3b494f 100644
--- a/nixos/modules/services/x11/hardware/multitouch.nix
+++ b/nixos/modules/services/x11/hardware/multitouch.nix
@@ -74,7 +74,7 @@ in {
           MatchIsTouchpad "on"
           Identifier "Touchpads"
           Driver "mtrack"
-          Option "IgnorePalm" "${if cfg.ignorePalm then "true" else "false"}"
+          Option "IgnorePalm" "${boolToString cfg.ignorePalm}"
           Option "ClickFinger1" "${builtins.elemAt cfg.buttonsMap 0}"
           Option "ClickFinger2" "${builtins.elemAt cfg.buttonsMap 1}"
           Option "ClickFinger3" "${builtins.elemAt cfg.buttonsMap 2}"
diff --git a/nixos/modules/services/x11/unclutter.nix b/nixos/modules/services/x11/unclutter.nix
index 6c789b7578f..a22e5ac2c95 100644
--- a/nixos/modules/services/x11/unclutter.nix
+++ b/nixos/modules/services/x11/unclutter.nix
@@ -60,7 +60,10 @@ in {
       serviceConfig.ExecStart = ''
         ${cfg.package}/bin/unclutter \
           -idle ${toString cfg.timeout} \
-          -display :${toString config.services.xserver.display} \
+          -display :${toString (
+             let display = config.services.xserver.display;
+             in if display != null then display else 0
+          )} \
           -jitter ${toString (cfg.threeshold - 1)} \
           ${optionalString cfg.keystroke "-keystroke"} \
           ${concatMapStrings (x: " -"+x) cfg.extraOptions} \
diff --git a/nixos/modules/services/x11/window-managers/default.nix b/nixos/modules/services/x11/window-managers/default.nix
index 42785b25158..32ef34bdad2 100644
--- a/nixos/modules/services/x11/window-managers/default.nix
+++ b/nixos/modules/services/x11/window-managers/default.nix
@@ -15,6 +15,7 @@ in
     ./dwm.nix
     ./exwm.nix
     ./fluxbox.nix
+    ./fvwm.nix
     ./herbstluftwm.nix
     ./i3.nix
     ./jwm.nix
diff --git a/nixos/modules/services/x11/window-managers/fvwm.nix b/nixos/modules/services/x11/window-managers/fvwm.nix
new file mode 100644
index 00000000000..9a51b9cd660
--- /dev/null
+++ b/nixos/modules/services/x11/window-managers/fvwm.nix
@@ -0,0 +1,41 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.xserver.windowManager.fvwm;
+  fvwm = pkgs.fvwm.override { gestures = cfg.gestures; };
+in
+
+{
+
+  ###### interface
+
+  options = {
+    services.xserver.windowManager.fvwm = {
+      enable = mkEnableOption "Fvwm window manager";
+
+      gestures = mkOption {
+        default = false;
+        type = types.bool;
+        description = "Whether or not to enable libstroke for gesture support";
+      };
+    };
+  };
+
+
+  ###### implementation
+
+  config = mkIf cfg.enable {
+    services.xserver.windowManager.session = singleton
+      { name = "fvwm";
+        start =
+          ''
+            ${fvwm}/bin/fvwm &
+            waitPID=$!
+          '';
+      };
+
+    environment.systemPackages = [ fvwm ];
+  };
+}
diff --git a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py
index d5e00129a82..704c574b822 100644
--- a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py
+++ b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py
@@ -1,4 +1,4 @@
-#! @python3@/bin/python3
+#! @python3@/bin/python3 -B
 import argparse
 import shutil
 import os
diff --git a/nixos/modules/system/boot/luksroot.nix b/nixos/modules/system/boot/luksroot.nix
index 8978b73749b..6e867b67439 100644
--- a/nixos/modules/system/boot/luksroot.nix
+++ b/nixos/modules/system/boot/luksroot.nix
@@ -6,29 +6,38 @@ let
   luks = config.boot.initrd.luks;
 
   openCommand = name': { name, device, header, keyFile, keyFileSize, allowDiscards, yubikey, ... }: assert name' == name; ''
-    # Wait for luksRoot to appear, e.g. if on a usb drive.
-    # XXX: copied and adapted from stage-1-init.sh - should be
-    # available as a function.
-    if ! test -e ${device}; then
-        echo -n "waiting 10 seconds for device ${device} to appear..."
-        for try in $(seq 10); do
-            sleep 1
-            if test -e ${device}; then break; fi
-            echo -n .
-        done
-        echo "ok"
-    fi
+
+    # Wait for a target (e.g. device, keyFile, header, ...) to appear.
+    wait_target() {
+        local name="$1"
+        local target="$2"
+
+        if [ ! -e $target ]; then
+            echo -n "Waiting 10 seconds for $name $target to appear"
+            local success=false;
+            for try in $(seq 10); do
+                echo -n "."
+                sleep 1
+                if [ -e $target ]; then success=true break; fi
+            done
+            if [ $success = true ]; then
+                echo " - success";
+            else
+                echo " - failure";
+            fi
+        fi
+    }
+
+    # Wait for luksRoot (and optionally keyFile and/or header) to appear, e.g.
+    # if on a USB drive.
+    wait_target "device" ${device}
 
     ${optionalString (keyFile != null) ''
-    if ! test -e ${keyFile}; then
-        echo -n "waiting 10 seconds for key file ${keyFile} to appear..."
-        for try in $(seq 10); do
-            sleep 1
-            if test -e ${keyFile}; then break; fi
-            echo -n .
-        done
-        echo "ok"
-    fi
+      wait_target "key file" ${keyFile}
+    ''}
+
+    ${optionalString (header != null) ''
+      wait_target "header" ${header}
     ''}
 
     open_normally() {
diff --git a/nixos/modules/system/boot/readonly-mountpoint.c b/nixos/modules/system/boot/readonly-mountpoint.c
deleted file mode 100644
index 27b66687382..00000000000
--- a/nixos/modules/system/boot/readonly-mountpoint.c
+++ /dev/null
@@ -1,20 +0,0 @@
-#include <sys/statvfs.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-int main(int argc, char ** argv) {
-	struct statvfs stat;
-	if (argc != 2) {
-		fprintf(stderr, "Usage: %s PATH", argv[0]);
-		exit(2);
-	}
-	if (statvfs(argv[1], &stat) != 0) {
-		perror("statvfs");
-		exit(3);
-	}
-	if (stat.f_flag & ST_RDONLY)
-		exit(0);
-	else
-		exit(1);
-}
-
diff --git a/nixos/modules/system/boot/stage-2-init.sh b/nixos/modules/system/boot/stage-2-init.sh
index f827e530f87..46aed44bf10 100644
--- a/nixos/modules/system/boot/stage-2-init.sh
+++ b/nixos/modules/system/boot/stage-2-init.sh
@@ -2,7 +2,22 @@
 
 systemConfig=@systemConfig@
 
-export HOME=/root
+export HOME=/root PATH="@path@"
+
+
+# Process the kernel command line.
+for o in $(</proc/cmdline); do
+    case $o in
+        boot.debugtrace)
+            # Show each command.
+            set -x
+            ;;
+        resume=*)
+            set -- $(IFS==; echo $o)
+            resumeDevice=$2
+            ;;
+    esac
+done
 
 
 # Print a greeting.
@@ -11,21 +26,6 @@ echo -e "\e[1;32m<<< NixOS Stage 2 >>>\e[0m"
 echo
 
 
-# Set the PATH.
-setPath() {
-    local dirs="$1"
-    export PATH=/empty
-    for i in $dirs; do
-        PATH=$PATH:$i/bin
-        if test -e $i/sbin; then
-            PATH=$PATH:$i/sbin
-        fi
-    done
-}
-
-setPath "@path@"
-
-
 # Normally, stage 1 mounts the root filesystem read/writable.
 # However, in some environments, stage 2 is executed directly, and the
 # root is read-only.  So make it writable here.
@@ -61,7 +61,9 @@ echo "booting system configuration $systemConfig" > /dev/kmsg
 chown -f 0:30000 /nix/store
 chmod -f 1775 /nix/store
 if [ -n "@readOnlyStore@" ]; then
-    if ! readonly-mountpoint /nix/store; then
+    if ! [[ "$(findmnt --noheadings --output OPTIONS /nix/store)" =~ ro(,|$) ]]; then
+        # FIXME when linux < 4.5 is EOL, switch to atomic bind mounts
+        #mount /nix/store /nix/store -o bind,remount,ro
         mount --bind /nix/store /nix/store
         mount -o remount,ro,bind /nix/store
     fi
@@ -75,31 +77,12 @@ rm -f /etc/mtab* # not that we care about stale locks
 ln -s /proc/mounts /etc/mtab
 
 
-# Process the kernel command line.
-for o in $(cat /proc/cmdline); do
-    case $o in
-        boot.debugtrace)
-            # Show each command.
-            set -x
-            ;;
-        resume=*)
-            set -- $(IFS==; echo $o)
-            resumeDevice=$2
-            ;;
-    esac
-done
-
-
 # More special file systems, initialise required directories.
 [ -e /proc/bus/usb ] && mount -t usbfs usbfs /proc/bus/usb # UML doesn't have USB by default
 mkdir -m 01777 -p /tmp
-mkdir -m 0755 -p /var /var/log /var/lib /var/db
-mkdir -m 0755 -p /nix/var
-mkdir -m 0700 -p /root
-chmod 0700 /root
-mkdir -m 0755 -p /bin # for the /bin/sh symlink
-mkdir -m 0755 -p /home
-mkdir -m 0755 -p /etc/nixos
+mkdir -m 0755 -p /var/{log,lib,db} /nix/var /etc/nixos/ \
+    /run/lock /home /bin # for the /bin/sh symlink
+install -m 0700 -d /root
 
 
 # Miscellaneous boot time cleanup.
@@ -111,9 +94,6 @@ rm -f /etc/{group,passwd,shadow}.lock
 rm -rf /nix/var/nix/gcroots/tmp /nix/var/nix/temproots
 
 
-mkdir -m 0755 -p /run/lock
-
-
 # For backwards compatibility, symlink /var/run to /run, and /var/lock
 # to /run/lock.
 ln -s /run /var/run
@@ -127,8 +107,8 @@ fi
 
 
 # Use /etc/resolv.conf supplied by systemd-nspawn, if applicable.
-if [ -n "@useHostResolvConf@" -a -e /etc/resolv.conf ]; then
-    cat /etc/resolv.conf | resolvconf -m 1000 -a host
+if [ -n "@useHostResolvConf@" ] && [ -e /etc/resolv.conf ]; then
+    resolvconf -m 1000 -a host </etc/resolv.conf
 fi
 
 # Log the script output to /dev/kmsg or /run/log/stage-2-init.log.
diff --git a/nixos/modules/system/boot/stage-2.nix b/nixos/modules/system/boot/stage-2.nix
index 7e4ec2a4a67..8db6d2d2f73 100644
--- a/nixos/modules/system/boot/stage-2.nix
+++ b/nixos/modules/system/boot/stage-2.nix
@@ -7,15 +7,6 @@ let
   kernel = config.boot.kernelPackages.kernel;
   activateConfiguration = config.system.activationScripts.script;
 
-  readonlyMountpoint = pkgs.stdenv.mkDerivation {
-    name = "readonly-mountpoint";
-    unpackPhase = "true";
-    installPhase = ''
-      mkdir -p $out/bin
-      cc -O3 ${./readonly-mountpoint.c} -o $out/bin/readonly-mountpoint
-    '';
-  };
-
   bootStage2 = pkgs.substituteAll {
     src = ./stage-2-init.sh;
     shellDebug = "${pkgs.bashInteractive}/bin/bash";
@@ -23,11 +14,11 @@ let
     inherit (config.nix) readOnlyStore;
     inherit (config.networking) useHostResolvConf;
     inherit (config.system.build) earlyMountScript;
-    path =
-      [ pkgs.coreutils
-        pkgs.utillinux
-        pkgs.openresolv
-      ] ++ optional config.nix.readOnlyStore readonlyMountpoint;
+    path = lib.makeBinPath [
+      pkgs.coreutils
+      pkgs.utillinux
+      pkgs.openresolv
+    ];
     postBootCommands = pkgs.writeText "local-cmds"
       ''
         ${config.boot.postBootCommands}
diff --git a/nixos/modules/system/boot/systemd-lib.nix b/nixos/modules/system/boot/systemd-lib.nix
index 7dbf3b25cdb..7c01f8ea9b7 100644
--- a/nixos/modules/system/boot/systemd-lib.nix
+++ b/nixos/modules/system/boot/systemd-lib.nix
@@ -10,7 +10,7 @@ rec {
 
   makeUnit = name: unit:
     let
-      pathSafeName = lib.replaceChars ["@" ":" "\\"] ["-" "-" "-"] name;
+      pathSafeName = lib.replaceChars ["@" ":" "\\" "[" "]"] ["-" "-" "-" "" ""] name;
     in
     if unit.enable then
       pkgs.runCommand "unit-${pathSafeName}"
diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix
index bff6739db61..f798862513c 100644
--- a/nixos/modules/system/boot/systemd.nix
+++ b/nixos/modules/system/boot/systemd.nix
@@ -829,7 +829,8 @@ in
 
     # Some overrides to upstream units.
     systemd.services."systemd-backlight@".restartIfChanged = false;
-    systemd.services."systemd-rfkill@".restartIfChanged = false;
+    systemd.services."systemd-fsck@".restartIfChanged = false;
+    systemd.services."systemd-fsck@".path = [ config.system.path ];
     systemd.services."user@".restartIfChanged = false;
     systemd.services.systemd-journal-flush.restartIfChanged = false;
     systemd.services.systemd-random-seed.restartIfChanged = false;
diff --git a/nixos/modules/tasks/filesystems.nix b/nixos/modules/tasks/filesystems.nix
index 9f30eb61146..3951d617f6f 100644
--- a/nixos/modules/tasks/filesystems.nix
+++ b/nixos/modules/tasks/filesystems.nix
@@ -221,7 +221,7 @@ in
 
     environment.etc.fstab.text =
       let
-        fsToSkipCheck = [ "none" "btrfs" "zfs" "tmpfs" "nfs" "vboxsf" "glusterfs" ];
+        fsToSkipCheck = [ "none" "bindfs" "btrfs" "zfs" "tmpfs" "nfs" "vboxsf" "glusterfs" ];
         skipCheck = fs: fs.noCheck || fs.device == "none" || builtins.elem fs.fsType fsToSkipCheck;
       in ''
         # This is a generated file.  Do not edit!
diff --git a/nixos/modules/tasks/network-interfaces-scripted.nix b/nixos/modules/tasks/network-interfaces-scripted.nix
index f30906b84a2..f6f104ce7a6 100644
--- a/nixos/modules/tasks/network-interfaces-scripted.nix
+++ b/nixos/modules/tasks/network-interfaces-scripted.nix
@@ -120,7 +120,7 @@ let
                     optionalString (cfg.defaultGatewayWindowSize != null)
                       "window ${toString cfg.defaultGatewayWindowSize}"} ${
                     optionalString (cfg.defaultGateway.interface != null)
-                      "dev ${cfg.defaultGateway.interface}"} || true
+                      "dev ${cfg.defaultGateway.interface}"} proto static || true
                 ''}
                 ${optionalString (cfg.defaultGateway6 != null && cfg.defaultGateway6.address != "") ''
                   # FIXME: get rid of "|| true" (necessary to make it idempotent).
@@ -130,7 +130,7 @@ let
                     optionalString (cfg.defaultGatewayWindowSize != null)
                       "window ${toString cfg.defaultGatewayWindowSize}"} ${
                     optionalString (cfg.defaultGateway6.interface != null)
-                      "dev ${cfg.defaultGateway6.interface}"} || true
+                      "dev ${cfg.defaultGateway6.interface}"} proto static || true
                 ''}
               '';
           };
@@ -159,35 +159,42 @@ let
             after = [ "network-pre.target" ] ++ (deviceDependency i.name);
             serviceConfig.Type = "oneshot";
             serviceConfig.RemainAfterExit = true;
+            # Restart rather than stop+start this unit to prevent the
+            # network from dying during switch-to-configuration.
+            stopIfChanged = false;
             path = [ pkgs.iproute ];
             script =
               ''
+                # FIXME: shouldn't this be done in network-link?
                 echo "bringing up interface..."
                 ip link set "${i.name}" up
 
-                restart_network_interfaces=false
+                state="/run/nixos/network/addresses/${i.name}"
+
+                mkdir -p $(dirname "$state")
+
               '' + flip concatMapStrings (ips) (ip:
                 let
                   address = "${ip.address}/${toString ip.prefixLength}";
                 in
                 ''
-                  echo "checking ip ${address}..."
+                  echo "${address}" >> $state
                   if out=$(ip addr add "${address}" dev "${i.name}" 2>&1); then
-                    echo "added ip ${address}..."
+                    echo "added ip ${address}"
                   elif ! echo "$out" | grep "File exists" >/dev/null 2>&1; then
                     echo "failed to add ${address}"
                     exit 1
                   fi
                 '');
-            preStop = flip concatMapStrings (ips) (ip:
-                let
-                  address = "${ip.address}/${toString ip.prefixLength}";
-                in
-                ''
-                  echo -n "deleting ${address}..."
-                  ip addr del "${address}" dev "${i.name}" >/dev/null 2>&1 || echo -n " Failed"
-                  echo ""
-                '');
+            preStop = ''
+              state="/run/nixos/network/addresses/${i.name}"
+              while read address; do
+                echo -n "deleting $address..."
+                ip addr del "$address" dev "${i.name}" >/dev/null 2>&1 || echo -n " Failed"
+                echo ""
+              done < "$state"
+              rm -f "$state"
+            '';
           };
 
         createTunDevice = i: nameValuePair "${i.name}-netdev"
diff --git a/nixos/modules/tasks/powertop.nix b/nixos/modules/tasks/powertop.nix
new file mode 100644
index 00000000000..6f57f5f5c25
--- /dev/null
+++ b/nixos/modules/tasks/powertop.nix
@@ -0,0 +1,27 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.powerManagment.powertop;
+in {
+  ###### interface
+
+  options.powerManagment.powertop.enable = mkEnableOption "powertop auto tuning on startup";
+
+  ###### implementation
+
+  config = mkIf (cfg.enable) {
+    systemd.services = {
+      powertop = {
+        wantedBy = [ "multi-user.target" ];
+        description = "Powertop tunings";
+        serviceConfig = {
+          Type = "oneshot";
+          RemainAfterExit = "yes";
+          ExecStart = "${pkgs.powertop}/bin/powertop --auto-tune";
+        };
+      };
+    };
+  };
+}
diff --git a/nixos/modules/virtualisation/amazon-image.nix b/nixos/modules/virtualisation/amazon-image.nix
index 80e481d79b9..3e47710361a 100644
--- a/nixos/modules/virtualisation/amazon-image.nix
+++ b/nixos/modules/virtualisation/amazon-image.nix
@@ -15,6 +15,12 @@ let cfg = config.ec2; in
 
   config = {
 
+    assertions = [
+      { assertion = cfg.hvm;
+        message = "Paravirtualized EC2 instances are no longer supported.";
+      }
+    ];
+
     virtualisation.growPartition = cfg.hvm;
 
     fileSystems."/" = {
diff --git a/nixos/modules/virtualisation/amazon-options.nix b/nixos/modules/virtualisation/amazon-options.nix
index cba77d3edd1..349fd3adfc9 100644
--- a/nixos/modules/virtualisation/amazon-options.nix
+++ b/nixos/modules/virtualisation/amazon-options.nix
@@ -3,7 +3,7 @@
   options = {
     ec2 = {
       hvm = lib.mkOption {
-        default = false;
+        default = lib.versionAtLeast config.system.stateVersion "17.03";
         internal = true;
         description = ''
           Whether the EC2 instance is a HVM instance.
@@ -11,12 +11,4 @@
       };
     };
   };
-
-  config = {
-    assertions = [
-      { assertion = config.ec2.hvm;
-        message = "Paravirtualized EC2 instances are no longer supported.";
-      }
-    ];
-  };
 }
diff --git a/nixos/modules/virtualisation/google-compute-image.nix b/nixos/modules/virtualisation/google-compute-image.nix
index a3dd3bd55d1..5673d55b339 100644
--- a/nixos/modules/virtualisation/google-compute-image.nix
+++ b/nixos/modules/virtualisation/google-compute-image.nix
@@ -2,10 +2,10 @@
 
 with lib;
 let
-  diskSize = "100G";
+  diskSize = "1G";
 in
 {
-  imports = [ ../profiles/headless.nix ../profiles/qemu-guest.nix ];
+  imports = [ ../profiles/headless.nix ../profiles/qemu-guest.nix ./grow-partition.nix ];
 
   # https://cloud.google.com/compute/docs/tutorials/building-images
   networking.firewall.enable = mkDefault false;
@@ -94,7 +94,10 @@ in
         ''
     );
 
-  fileSystems."/".label = "nixos";
+  fileSystems."/" = {
+    device = "/dev/disk/by-label/nixos";
+    autoResize = true;
+  };
 
   boot.kernelParams = [ "console=ttyS0" "panic=1" "boot.panic_on_fail" ];
   boot.initrd.kernelModules = [ "virtio_scsi" ];
diff --git a/nixos/release.nix b/nixos/release.nix
index 5f9a5b0e064..95b284cb705 100644
--- a/nixos/release.nix
+++ b/nixos/release.nix
@@ -288,8 +288,8 @@ in rec {
   tests.pam-oath-login = callTest tests/pam-oath-login.nix {};
   #tests.panamax = hydraJob (import tests/panamax.nix { system = "x86_64-linux"; });
   tests.peerflix = callTest tests/peerflix.nix {};
+  tests.postgresql = callSubTests tests/postgresql.nix {};
   tests.pgjwt = callTest tests/pgjwt.nix {};
-  tests.postgresql = callTest tests/postgresql.nix {};
   tests.printing = callTest tests/printing.nix {};
   tests.proxy = callTest tests/proxy.nix {};
   tests.pumpio = callTest tests/pump.io.nix {};
diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix
index 35dd00fe630..3ab3c1bac48 100644
--- a/nixos/tests/installer.nix
+++ b/nixos/tests/installer.nix
@@ -34,6 +34,12 @@ let
           boot.loader.systemd-boot.enable = true;
         ''}
 
+        users.extraUsers.alice = {
+          isNormalUser = true;
+          home = "/home/alice";
+          description = "Alice Foobar";
+        };
+
         hardware.enableAllFirmware = lib.mkForce false;
 
         ${replaceChars ["\n"] ["\n  "] extraConfig}
@@ -96,7 +102,7 @@ let
       $machine->shutdown;
 
       # Now see if we can boot the installation.
-      $machine = createMachine({ ${hdFlags} qemuFlags => "${qemuFlags}" });
+      $machine = createMachine({ ${hdFlags} qemuFlags => "${qemuFlags}", name => "boot-after-install" });
 
       # For example to enter LUKS passphrase.
       ${preBootCommands}
@@ -118,11 +124,17 @@ let
       $machine->waitForUnit("swap.target");
       $machine->succeed("cat /proc/swaps | grep -q /dev");
 
+      # Check that the store is in good shape
+      $machine->succeed("nix-store --verify --check-contents >&2");
+
       # Check whether the channel works.
       $machine->succeed("nix-env -iA nixos.procps >&2");
       $machine->succeed("type -tP ps | tee /dev/stderr") =~ /.nix-profile/
           or die "nix-env failed";
 
+      # Check that the daemon works, and that non-root users can run builds (this will build a new profile generation through the daemon)
+      $machine->succeed("su alice -l -c 'nix-env -iA nixos.procps' >&2");
+
       # We need to a writable nix-store on next boot.
       $machine->copyFileFromHost(
           "${ makeConfig { inherit bootLoader grubVersion grubDevice grubIdentifier extraConfig; forceGrubReinstallCount = 1; } }",
@@ -139,7 +151,7 @@ let
       $machine->shutdown;
 
       # Check whether a writable store build works
-      $machine = createMachine({ ${hdFlags} qemuFlags => "${qemuFlags}" });
+      $machine = createMachine({ ${hdFlags} qemuFlags => "${qemuFlags}", name => "rebuild-switch" });
       ${preBootCommands}
       $machine->waitForUnit("multi-user.target");
       $machine->copyFileFromHost(
@@ -150,7 +162,7 @@ let
 
       # And just to be sure, check that the machine still boots after
       # "nixos-rebuild switch".
-      $machine = createMachine({ ${hdFlags} qemuFlags => "${qemuFlags}" });
+      $machine = createMachine({ ${hdFlags} qemuFlags => "${qemuFlags}", "boot-after-rebuild-switch" });
       ${preBootCommands}
       $machine->waitForUnit("network.target");
       $machine->shutdown;
diff --git a/nixos/tests/postgresql.nix b/nixos/tests/postgresql.nix
index f17384b44ba..1f4f43a2666 100644
--- a/nixos/tests/postgresql.nix
+++ b/nixos/tests/postgresql.nix
@@ -1,26 +1,46 @@
-import ./make-test.nix ({ pkgs, ...} : {
-  name = "postgresql";
-  meta = with pkgs.stdenv.lib.maintainers; {
-    maintainers = [ zagy ];
-  };
-
-  nodes = {
-    master =
-      { pkgs, config, ... }:
+{ system ? builtins.currentSystem }:
+with import ../lib/testing.nix { inherit system; };
+with pkgs.lib;
+let
+  postgresql-versions = pkgs.callPackages ../../pkgs/servers/sql/postgresql { };
+  test-sql = pkgs.writeText "postgresql-test" ''
+    CREATE EXTENSION pgcrypto; -- just to check if lib loading works
+    CREATE TABLE sth (
+      id int
+    );
+    INSERT INTO sth (id) VALUES (1);
+    INSERT INTO sth (id) VALUES (1);
+    INSERT INTO sth (id) VALUES (1);
+    INSERT INTO sth (id) VALUES (1);
+    INSERT INTO sth (id) VALUES (1);
+  '';
+  make-postgresql-test = postgresql-name: postgresql-package: {
+    name = postgresql-name;
+    meta = with pkgs.stdenv.lib.maintainers; {
+      maintainers = [ zagy ];
+    };
 
+    machine = {pkgs, config, ...}:
       {
+        services.postgresql.package=postgresql-package;
         services.postgresql.enable = true;
-        services.postgresql.initialScript =  pkgs.writeText "postgresql-init.sql"
-          ''
-          CREATE ROLE postgres WITH superuser login createdb;
-          '';
       };
-  };
 
-  testScript = ''
-    startAll;
-    $master->waitForUnit("postgresql");
-    $master->sleep(10); # Hopefully this is long enough!!
-    $master->succeed("echo 'select 1' | sudo -u postgres psql");
-  '';
-})
+    testScript = ''
+      $machine->start;
+      $machine->waitForUnit("postgresql");
+      # postgresql should be available just after unit start
+      $machine->succeed("cat ${test-sql} | psql postgres");
+      $machine->shutdown; # make sure that postgresql survive restart (bug #1735)
+      sleep(2);
+      $machine->start;
+      $machine->waitForUnit("postgresql");
+      $machine->fail('test $(psql postgres -tAc "SELECT * FROM sth;"|wc -l) -eq 3');
+      $machine->succeed('test $(psql postgres -tAc "SELECT * FROM sth;"|wc -l) -eq 5');
+      $machine->fail('test $(psql postgres -tAc "SELECT * FROM sth;"|wc -l) -eq 4');
+      $machine->shutdown;
+    '';
+
+  };
+in
+  mapAttrs' (p-name: p-package: {name=p-name; value=make-postgresql-test p-name p-package;}) postgresql-versions
diff --git a/pkgs/applications/altcoins/default.nix b/pkgs/applications/altcoins/default.nix
index fbc3d1c36f9..4386ebe4a91 100644
--- a/pkgs/applications/altcoins/default.nix
+++ b/pkgs/applications/altcoins/default.nix
@@ -22,6 +22,9 @@ rec {
   freicoin = callPackage ./freicoin.nix { boost = pkgs.boost155; };
   go-ethereum = callPackage ./go-ethereum.nix { };
 
+  hivemind = callPackage ./hivemind.nix { withGui = true; };
+  hivemindd = callPackage ./hivemind.nix { withGui = false; };
+
   litecoin  = callPackage ./litecoin.nix { withGui = true; };
   litecoind = callPackage ./litecoin.nix { withGui = false; };
 
@@ -32,6 +35,7 @@ rec {
   namecoind = callPackage ./namecoind.nix { };
 
   ethabi = callPackage ./ethabi.nix { };
+  ethrun = callPackage ./ethrun.nix { };
 
   primecoin  = callPackage ./primecoin.nix { withGui = true; };
   primecoind = callPackage ./primecoin.nix { withGui = false; };
diff --git a/pkgs/applications/altcoins/ethabi.nix b/pkgs/applications/altcoins/ethabi.nix
index b92a656c083..d2532e0d41e 100644
--- a/pkgs/applications/altcoins/ethabi.nix
+++ b/pkgs/applications/altcoins/ethabi.nix
@@ -4,16 +4,16 @@ with rustPlatform;
 
 buildRustPackage rec {
   name = "ethabi-${version}";
-  version = "0.2.1";
+  version = "1.0.4";
 
   src = fetchFromGitHub {
-    owner = "ethcore";
+    owner = "paritytech";
     repo = "ethabi";
-    rev = "fbed04984cab0db8767e01054ee16271b8e36281";
-    sha256 = "1zgyyg1i5wmz8l1405yg5jmq4ddq530sl7018pkkc7l6cjj3bbhd";
+    rev = "18ddc983d77b2a97e6c322abcc23bec59940d65f";
+    sha256 = "1rg7ydvnhlg8w6blilm3cv6v4q51x1hgrbkln2ikhpdq0vakp5fd";
   };
 
-  depsSha256 = "0srxv0wbhvyflc967lkpd2mx5nk7asx2cbxa0qxvas16wy6vxz52";
+  depsSha256 = "1n4rxipna307r4xppb2iaads7kpa3yjv99fimvpn8l0f999ir2rz";
 
   meta = {
     description = "Ethereum function call encoding (ABI) utility";
diff --git a/pkgs/applications/altcoins/ethrun.nix b/pkgs/applications/altcoins/ethrun.nix
new file mode 100644
index 00000000000..f61a5884fd4
--- /dev/null
+++ b/pkgs/applications/altcoins/ethrun.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, rustPlatform }:
+
+with rustPlatform;
+
+buildRustPackage rec {
+  name = "ethrun-${version}";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "dapphub";
+    repo = "ethrun";
+    rev = "v${version}";
+    sha256 = "1w651g4p2mc4ljp20l8lwvfx3l3fzyp6gf2izr85vyb1wjbaccqn";
+  };
+
+  depsSha256 = "14x8pbjgkz0g724lnvd9mi2alqd6fipjljw6xsraf9gqwijn1knq";
+
+  meta = {
+    description = "Directly run Ethereum bytecode";
+    homepage = https://github.com/dapphub/ethrun/;
+    maintainers = [stdenv.lib.maintainers.dbrock];
+    inherit version;
+  };
+}
diff --git a/pkgs/applications/altcoins/hivemind.nix b/pkgs/applications/altcoins/hivemind.nix
new file mode 100644
index 00000000000..1b2682f7d4c
--- /dev/null
+++ b/pkgs/applications/altcoins/hivemind.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook, openssl, db48, boost
+, zlib, miniupnpc, qt4, utillinux, protobuf, qrencode, libevent
+, withGui }:
+
+with stdenv.lib;
+stdenv.mkDerivation rec {
+  name = "hivemind" + (toString (optional (!withGui) "d")) + "-" + version;
+  version = "unstable";
+
+  src = fetchFromGitHub {
+    owner = "bitcoin-hivemind";
+    repo = "hivemind";
+    rev = "147973cfe76867410578d91d6f0a8df105cab4e0";
+    sha256 = "1ndqqma1b0sh2gn7cl8d9fg44q0g2g42jr2y0nifkjgfjn3c7l5h";
+  };
+
+  nativeBuildInputs = [ pkgconfig autoreconfHook ];
+  buildInputs = [ openssl db48 boost zlib
+                  miniupnpc protobuf libevent]
+                  ++ optionals stdenv.isLinux [ utillinux ]
+                  ++ optionals withGui [ qt4 qrencode ];
+
+  configureFlags = [ "--with-boost-libdir=${boost.out}/lib" 
+                     "--with-incompatible-bdb"
+                   ] ++ optionals withGui [ "--with-gui=qt4" ];
+
+  meta = {
+    description = "Peer-to-Peer oracle protocol";
+    longDescription= ''
+      Hivemind is a Peer-to-Peer Oracle Protocol which absorbs accurate data
+      into a blockchain so that Bitcoin-users can speculate in Prediction
+      Markets.
+    '';
+    homepage = "https://bitcoinhivemind.com";
+    maintainers = with maintainers; [ canndrew ];
+    license = licenses.mit;
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/audio/abcde/default.nix b/pkgs/applications/audio/abcde/default.nix
index 2f8a6fcdad6..a729d5cd4ef 100644
--- a/pkgs/applications/audio/abcde/default.nix
+++ b/pkgs/applications/audio/abcde/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, libcdio, cddiscid, wget, bash, which, vorbis-tools, id3v2, eyeD3
-, lame, flac, eject, mkcue
+, lame, flac, eject, mkcue, glyr
 , perl, DigestSHA, MusicBrainz, MusicBrainzDiscID
 , makeWrapper }:
 
@@ -52,7 +52,7 @@ in
          --replace '#!/usr/bin/perl' '#!${perl}/bin/perl'
 
       wrapProgram "$out/bin/abcde" --prefix PATH ":" \
-        ${stdenv.lib.makeBinPath [ "$out" which libcdio cddiscid wget vorbis-tools id3v2 eyeD3 lame flac ]}
+        ${stdenv.lib.makeBinPath [ "$out" which libcdio cddiscid wget vorbis-tools id3v2 eyeD3 lame flac glyr ]}
 
       wrapProgram "$out/bin/cddb-tool" --prefix PATH ":" \
         "${wget}/bin"
diff --git a/pkgs/applications/audio/guitarix/default.nix b/pkgs/applications/audio/guitarix/default.nix
index 642cbbd23f6..6073008d541 100644
--- a/pkgs/applications/audio/guitarix/default.nix
+++ b/pkgs/applications/audio/guitarix/default.nix
@@ -12,11 +12,11 @@ in
 
 stdenv.mkDerivation rec {
   name = "guitarix-${version}";
-  version = "0.35.2";
+  version = "0.35.3";
 
   src = fetchurl {
     url = "mirror://sourceforge/guitarix/guitarix2-${version}.tar.xz";
-    sha256 = "1qj3adjhg511jygbjkl9k5v0gcjmg6ifc479rspfyf45m383pp3p";
+    sha256 = "0pvw4ijkq6lcn45vrif9b4mqmgzi0qg1dp5b33kb5zan6n1aci4j";
   };
 
   nativeBuildInputs = [ gettext intltool wrapGAppsHook pkgconfig python2 ];
diff --git a/pkgs/applications/audio/mopidy/default.nix b/pkgs/applications/audio/mopidy/default.nix
index 856da9f742e..7dae614a8f7 100644
--- a/pkgs/applications/audio/mopidy/default.nix
+++ b/pkgs/applications/audio/mopidy/default.nix
@@ -17,7 +17,7 @@ pythonPackages.buildPythonApplication rec {
   nativeBuildInputs = [ wrapGAppsHook ];
 
   buildInputs = with gst_all_1; [
-    gst-plugins-base gst-plugins-good gst-plugins-ugly
+    gst-plugins-base gst-plugins-good gst-plugins-ugly gst-plugins-bad
     glib_networking gobjectIntrospection
   ];
 
diff --git a/pkgs/applications/audio/spotify/default.nix b/pkgs/applications/audio/spotify/default.nix
index 1d1d0d6a6f0..765f0e9e5a7 100644
--- a/pkgs/applications/audio/spotify/default.nix
+++ b/pkgs/applications/audio/spotify/default.nix
@@ -8,7 +8,7 @@ let
   # Please update the stable branch!
   # Latest version number can be found at:
   # http://repository-origin.spotify.com/pool/non-free/s/spotify-client/
-  version = "1.0.52.717.g2f08534a-47";
+  version = "1.0.53.758.gde3fc4b2-33";
 
   deps = [
     alsaLib
@@ -51,23 +51,24 @@ in
 stdenv.mkDerivation {
   name = "spotify-${version}";
 
-  src =
-    fetchurl {
-      url = "https://repository-origin.spotify.com/pool/non-free/s/spotify-client/spotify-client_${version}_amd64.deb";
-      sha256 = "1xqd4pjb69zmbac5fq3pckgr4khlkzfkx8b029qzjc2hi52zfnj7";
-    };
+  src = fetchurl {
+    url = "https://repository-origin.spotify.com/pool/non-free/s/spotify-client/spotify-client_${version}_amd64.deb";
+    sha256 = "1sh6bv23yx0fcbmf60c2yyi6411ij85k4jalpjlck2w26nfj1b3g";
+  };
 
   buildInputs = [ dpkg makeWrapper ];
 
+  doConfigure = false;
+  doBuild = false;
+  dontStrip = true;
+  dontPatchELF = true;
+
   unpackPhase = ''
     runHook preUnpack
     dpkg-deb -x $src .
     runHook postUnpack
   '';
 
-  configurePhase = "runHook preConfigure; runHook postConfigure";
-  buildPhase = "runHook preBuild; runHook postBuild";
-
   installPhase =
     ''
       runHook preInstall
@@ -110,13 +111,11 @@ stdenv.mkDerivation {
       runHook postInstall
     '';
 
-  dontStrip = true;
-  dontPatchELF = true;
-
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://www.spotify.com/;
     description = "Play music from the Spotify music service";
-    license = stdenv.lib.licenses.unfree;
-    maintainers = with stdenv.lib.maintainers; [ eelco ftrvxmtrx sheenobu mudri ];
+    license = licenses.unfree;
+    maintainers = with maintainers; [ eelco ftrvxmtrx sheenobu mudri ];
+    platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/applications/audio/x42-plugins/default.nix b/pkgs/applications/audio/x42-plugins/default.nix
index 69288880cb2..a0fcfe81102 100644
--- a/pkgs/applications/audio/x42-plugins/default.nix
+++ b/pkgs/applications/audio/x42-plugins/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig
 , libltc, libsndfile, libsamplerate, ftgl, freefont_ttf, libjack2
-, mesa_glu, lv2, mesa, gtk2, cairo, pango, fftwFloat, zita-convolver }:
+, mesa_glu, lv2, gtk2, cairo, pango, fftwFloat, zita-convolver }:
 
 stdenv.mkDerivation rec {
   version = "20161230";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "1yni9c17kl2pi9lqxip07b6g6lyfii1pch5czp183113gk54fwj5";
   };
 
-  buildInputs = [ mesa_glu ftgl freefont_ttf libjack2 libltc libsndfile libsamplerate lv2 mesa gtk2 cairo pango fftwFloat pkgconfig  zita-convolver];
+  buildInputs = [ mesa_glu ftgl freefont_ttf libjack2 libltc libsndfile libsamplerate lv2 gtk2 cairo pango fftwFloat pkgconfig  zita-convolver];
 
   makeFlags = [ "PREFIX=$(out)" "FONTFILE=${freefont_ttf}/share/fonts/truetype/FreeSansBold.ttf" ];
 
diff --git a/pkgs/applications/audio/yasr/default.nix b/pkgs/applications/audio/yasr/default.nix
index b700cc0bd83..1008d3e8e98 100644
--- a/pkgs/applications/audio/yasr/default.nix
+++ b/pkgs/applications/audio/yasr/default.nix
@@ -2,26 +2,26 @@
 
 stdenv.mkDerivation rec {
   name = "yasr-${version}";
-  
+
   version = "0.6.9";
-  
+
   src = fetchurl {
     url = "https://sourceforge.net/projects/yasr/files/yasr/${version}/${name}.tar.gz";
     sha256 = "1prv9r9y6jb5ga5578ldiw507fa414m60xhlvjl29278p3x7rwa1";
   };
-  
+
   patches = [
     ./10_fix_openpty_forkpty_declarations
     ./20_maxpathlen
     ./30_conf
     ./40_dectalk_extended_chars
   ]; # taken from the debian yasr package
-  
+
   meta = {
     homepage = "http://yasr.sourceforge.net";
     description = "A general-purpose console screen reader";
     longDescription = "Yasr is a general-purpose console screen reader for GNU/Linux and other Unix-like operating systems.";
-    platforms = stdenv.lib.platforms.unix;
+    platforms = stdenv.lib.platforms.linux;
     license = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [ jhhuh ];
   };
diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix
index 60e17982b5b..e9546c16d62 100644
--- a/pkgs/applications/editors/atom/default.nix
+++ b/pkgs/applications/editors/atom/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "atom-${version}";
-  version = "1.15.0";
+  version = "1.16.0";
 
   src = fetchurl {
     url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
-    sha256 = "0w790b9m94m28bx7n94pg2zjxrcjf13228lsb0pl8kyfsk2k2glx";
+    sha256 = "10qzhfz34i7x7z5fv5a73a6aiwxvanyn0v825a6yz9qfc2mg4shd";
     name = "${name}.deb";
   };
 
diff --git a/pkgs/applications/editors/atom/env.nix b/pkgs/applications/editors/atom/env.nix
index 228a21dc430..8f6c5f5c290 100644
--- a/pkgs/applications/editors/atom/env.nix
+++ b/pkgs/applications/editors/atom/env.nix
@@ -10,6 +10,7 @@ let
     xorg.libXrender xorg.libX11 xorg.libXext xorg.libXdamage xorg.libXtst
     xorg.libXcomposite xorg.libXi xorg.libXfixes xorg.libXrandr
     xorg.libXcursor xorg.libxkbfile xorg.libXScrnSaver libcap systemd libnotify
+    xorg.libxcb
   ];
 
   libPathNative = lib.makeLibraryPath packages;
diff --git a/pkgs/applications/editors/brackets/default.nix b/pkgs/applications/editors/brackets/default.nix
index bba66366e6b..23cb16c0733 100644
--- a/pkgs/applications/editors/brackets/default.nix
+++ b/pkgs/applications/editors/brackets/default.nix
@@ -1,28 +1,24 @@
 { stdenv, fetchurl, buildEnv, gtk2, glib, gdk_pixbuf, alsaLib, nss, nspr, gconf
 , cups, libgcrypt_1_5, systemd, makeWrapper, dbus }:
+with stdenv.lib;
+
 let
-  bracketsEnv = buildEnv {
-    name = "env-brackets";
-    paths = [
-      gtk2 glib gdk_pixbuf stdenv.cc.cc.lib alsaLib nss nspr gconf cups libgcrypt_1_5
-      dbus.lib systemd.lib
-    ];
-  };
+  bracketsLibs = makeLibraryPath [
+    gtk2 glib gdk_pixbuf stdenv.cc.cc.lib alsaLib nss nspr gconf cups libgcrypt_1_5 dbus systemd
+  ];
 in
 stdenv.mkDerivation rec {
   name = "brackets-${version}";
-  version = "1.8";
+  version = "1.9";
 
   src = fetchurl {
     url = "https://github.com/adobe/brackets/releases/download/release-${version}/Brackets.Release.${version}.64-bit.deb";
-    sha256 = "0b2k0vv1qwmsg1wckp71yrb86zp8zisskmzzvx9ir19bma9jzr42";
+    sha256 = "0c4l2rr0853xd21kw8hhxlmrx8mqwb7iqa2k24zvwyjp4nnwkgbp";
     name = "${name}.deb";
   };
 
   phases = [ "installPhase" "fixupPhase" ];
 
-  buildInputs = [ makeWrapper ];
-
   installPhase = ''
     mkdir -p $out
     ar p $src data.tar.xz | tar -C $out -xJ
@@ -33,27 +29,26 @@ stdenv.mkDerivation rec {
 
     ln -s ${systemd.lib}/lib/libudev.so.1 $out/opt/brackets/lib/libudev.so.0
 
+    substituteInPlace $out/opt/brackets/brackets.desktop \
+      --replace "Exec=/opt/brackets/brackets" "Exec=brackets"
+    mkdir -p $out/share/applications
+    ln -s $out/opt/brackets/brackets.desktop $out/share/applications/
+  '';
+
+  postFixup = ''
     patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-      --set-rpath "${bracketsEnv}/lib:${bracketsEnv}/lib64" \
+      --set-rpath "${bracketsLibs}:$out/opt/brackets/lib" \
       $out/opt/brackets/Brackets
 
     patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+      --set-rpath "${bracketsLibs}" \
       $out/opt/brackets/Brackets-node
 
-    patchelf \
-      --set-rpath "${bracketsEnv}/lib:${bracketsEnv}/lib64" \
+    patchelf --set-rpath "${bracketsLibs}" \
       $out/opt/brackets/lib/libcef.so
-
-    wrapProgram $out/opt/brackets/brackets \
-      --prefix LD_LIBRARY_PATH : "${bracketsEnv}/lib:${bracketsEnv}/lib64"
-
-    substituteInPlace $out/opt/brackets/brackets.desktop \
-      --replace "Exec=/opt/brackets/brackets" "Exec=brackets"
-    mkdir -p $out/share/applications
-    ln -s $out/opt/brackets/brackets.desktop $out/share/applications/
   '';
 
-  meta = with stdenv.lib; {
+  meta = {
     description = "An open source code editor for the web, written in JavaScript, HTML and CSS";
     homepage = http://brackets.io/;
     license = licenses.mit;
diff --git a/pkgs/applications/editors/emacs-modes/elpa-generated.nix b/pkgs/applications/editors/emacs-modes/elpa-generated.nix
index 868f9619ce2..34472bf8637 100644
--- a/pkgs/applications/editors/emacs-modes/elpa-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/elpa-generated.nix
@@ -175,10 +175,10 @@
       }) {};
     auctex = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
         pname = "auctex";
-        version = "11.90.0";
+        version = "11.90.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/auctex-11.90.0.tar";
-          sha256 = "04nsndwcf0dimgc2p1yzzrymc36amzdnjg0158nxplmjkzdp28gy";
+          url = "https://elpa.gnu.org/packages/auctex-11.90.1.tar";
+          sha256 = "0bn5pg6v7zgqxs080bzrsx6789nzdx4622m3020ymzl66017nf0r";
         };
         packageRequires = [];
         meta = {
@@ -644,10 +644,10 @@
     el-search = callPackage ({ elpaBuild, emacs, fetchurl, lib, stream }:
     elpaBuild {
         pname = "el-search";
-        version = "1.3";
+        version = "1.3.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/el-search-1.3.tar";
-          sha256 = "0hg7jppdsaxy285bdaban1i096bjx21pqmczz7w9f3nr34n28pyn";
+          url = "https://elpa.gnu.org/packages/el-search-1.3.1.tar";
+          sha256 = "01f5pyalw60dr36w007mvvxry548zrhixzmba1sad19531bry7fc";
         };
         packageRequires = [ emacs stream ];
         meta = {
@@ -681,14 +681,14 @@
           license = lib.licenses.free;
         };
       }) {};
-    enwc = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
+    enwc = callPackage ({ elpaBuild, emacs, fetchurl, lib }: elpaBuild {
         pname = "enwc";
-        version = "1.0";
+        version = "2.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/enwc-1.0.tar";
-          sha256 = "19mjkcgnacygzwm5dsayrwpbzfxadp9kdmmghrk1vir2hwixgv8y";
+          url = "https://elpa.gnu.org/packages/enwc-2.0.tar";
+          sha256 = "17w35b06am5n19nlq00ni5w3jvys9i7swyw4glb7081d2jbij2mn";
         };
-        packageRequires = [];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/enwc.html";
           license = lib.licenses.free;
@@ -820,10 +820,10 @@
     gnorb = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
     elpaBuild {
         pname = "gnorb";
-        version = "1.2.1";
+        version = "1.2.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/gnorb-1.2.1.tar";
-          sha256 = "0mip0czvpdl26xz9wamii5azj9bacjhdg0jgkrxyv17vqqlbag9x";
+          url = "https://elpa.gnu.org/packages/gnorb-1.2.3.tar";
+          sha256 = "1bqm08i2aam4v4gfzyxfmic0rg0ka7cns38khwj42vhwgv045xc7";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -940,10 +940,10 @@
       }) {};
     ivy = callPackage ({ elpaBuild, emacs, fetchurl, lib }: elpaBuild {
         pname = "ivy";
-        version = "0.8.0";
+        version = "0.9.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ivy-0.8.0.tar";
-          sha256 = "1c1impdk1p082v6nb9lms4n258z6ngz8ra90cshprs0ingrk705p";
+          url = "https://elpa.gnu.org/packages/ivy-0.9.1.tar";
+          sha256 = "1jfc3zf6ln7i8pp5j0fpsai2w847v5g77b5fzlxbgvj80g3v5887";
         };
         packageRequires = [ emacs ];
         meta = {
diff --git a/pkgs/applications/editors/emacs-modes/melpa-generated.nix b/pkgs/applications/editors/emacs-modes/melpa-generated.nix
index 70ea1d58cf8..082301e254b 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-generated.nix
@@ -316,12 +316,12 @@
     ac-clang = callPackage ({ auto-complete, cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, pos-tip, yasnippet }:
     melpaBuild {
         pname = "ac-clang";
-        version = "20161202.725";
+        version = "20170330.1108";
         src = fetchFromGitHub {
           owner = "yaruopooner";
           repo = "ac-clang";
-          rev = "ad75d193bb8962136e1ecac04d33352dd70fb72e";
-          sha256 = "0pchbhcs3bjf8r6f24lcf29in011502ncr2gi72faww6iz0pb285";
+          rev = "c4aab21df64011916039e18094e189533018e115";
+          sha256 = "1ac8rw0r4x1plrwy6xwswy5mj5h1r975y8wvx01g2j8an41xhlms";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ffe0485048b85825f5e8ba95917d8c9dc64fe5de/recipes/ac-clang";
@@ -793,6 +793,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    ac-rtags = callPackage ({ auto-complete, fetchFromGitHub, fetchurl, lib, melpaBuild, rtags }:
+    melpaBuild {
+        pname = "ac-rtags";
+        version = "20170402.653";
+        src = fetchFromGitHub {
+          owner = "Andersbakken";
+          repo = "rtags";
+          rev = "f1f8709556f25d0cef12b1d4dff5ca0b09a890a0";
+          sha256 = "05r888crk8y5fi4xvarrnr89wjjrrzzdr4bfmd0kzq83vs0azr77";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/ac-rtags";
+          sha256 = "1w9v32di9135mm598c4506gxf0xr5jyz8dyd9dhga5d60q7g9641";
+          name = "ac-rtags";
+        };
+        packageRequires = [ auto-complete rtags ];
+        meta = {
+          homepage = "https://melpa.org/#/ac-rtags";
+          license = lib.licenses.free;
+        };
+      }) {};
     ac-skk = callPackage ({ auto-complete, cl-lib ? null, ddskk, fetchFromGitHub, fetchurl, lib, melpaBuild, tinysegmenter }:
     melpaBuild {
         pname = "ac-skk";
@@ -867,8 +888,8 @@
           sha256 = "1yplf5klgjjzx3cb1ihqb9f9cwn898l0vhasc3cwiqz6ldyq2na8";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1ea85eca9cf2df3f8c06709dfb44b339b8bdbc6c/recipes/ace-flyspell";
-          sha256 = "0f24qrpcvyg7h6ylyggn4zrbydci537iigshac1d8yywsr0j47gd";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ace-flyspell";
+          sha256 = "1zgywb90cg64nllbbk0x9ipm6znyc5yh7vkajrrnw06r5vabyp9y";
           name = "ace-flyspell";
         };
         packageRequires = [ avy ];
@@ -1035,8 +1056,8 @@
           sha256 = "06bsrnhhpncmk6jpcnvmjdb0ccz6z34ksf2ywp00l1c343p90v38";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/10bb2de9c6b938fa12deff1e2748bfd0a345891a/recipes/ace-pinyin";
-          sha256 = "18gmj71zd0i6yx8ifjxsqz2v81jx0j37f5kxllf31w7fj32ymbkc";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ace-pinyin";
+          sha256 = "1b3asvzm3k66lsdkmlsgmnf8xlyic8zv294j1iahzkwm6bzqj8wd";
           name = "ace-pinyin";
         };
         packageRequires = [ ace-jump-mode avy pinyinlib ];
@@ -1149,6 +1170,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    add-hooks = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "add-hooks";
+        version = "20170410.2133";
+        src = fetchFromGitHub {
+          owner = "nickmccurdy";
+          repo = "add-hooks";
+          rev = "73f2ac34529f4ea0c9fc9f333531d082032d4025";
+          sha256 = "1gnnnydvmkgqzbfnc0wx386il5kcgfxdba3vq7c9p6cqxslpd8k5";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/901f846aef46d512dc0a1770bab7f07c0ae330cd/recipes/add-hooks";
+          sha256 = "09a5b3prznibkb5igfn8x3vsjrlkh3534zycs8g25g4li87mcb6p";
+          name = "add-hooks";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/add-hooks";
+          license = lib.licenses.free;
+        };
+      }) {};
     add-node-modules-path = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "add-node-modules-path";
@@ -1173,12 +1215,12 @@
     addressbook-bookmark = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "addressbook-bookmark";
-        version = "20161130.150";
+        version = "20170331.1209";
         src = fetchFromGitHub {
           owner = "thierryvolpiatto";
           repo = "addressbook-bookmark";
-          rev = "ad3c73369b804a48803fdfdf2ab613e6220260de";
-          sha256 = "012kfqkmpagn8jrp09acpx631qmjim7b33j0pahv1fcqhin89pn6";
+          rev = "54c4e57b000d54cedb3d791d054d293c8f45f2fe";
+          sha256 = "17g4j5yc7phnn95cya8sw13jm1219j1yrjzdcvadi5xdwlb9gxgz";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a497aec6e27efa627068542cae5a16c01c3c6d3c/recipes/addressbook-bookmark";
@@ -1202,8 +1244,8 @@
           sha256 = "199da15f6p84809z33w3m35lrk9bgx8qpgnxsxgisli373mpzvd8";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/70a3b6a7b43c76b0ce3b350f5c8d657bf4f7fb04/recipes/adoc-mode";
-          sha256 = "0wgagcsh0fkb51fy17ilrs20z2vzdpmz97vpwijcfy2b9rypxq15";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/adoc-mode";
+          sha256 = "0jd3zr4zpb4qqn504azl0y02cryv7n9wphv64b0fbpipr7w5hm2c";
           name = "adoc-mode";
         };
         packageRequires = [ markup-faces ];
@@ -1261,8 +1303,8 @@
         src = fetchFromGitHub {
           owner = "Wilfred";
           repo = "ag.el";
-          rev = "754d0fea35059c583b9613c7924cebba74fe1319";
-          sha256 = "0s9idrnzvd8sdx266s3p4jgpx0zd7s0cb7f48wp319xmqh448p84";
+          rev = "b390f212947546498a098f2ceb16033709ff32fd";
+          sha256 = "0x6p79bcn8g4r8736j977hz3qwyd9c2p4qkaq88jbfhvxyzkpdaa";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/67f410ac3a58a038e194bcf174bc0a8ceceafb9a/recipes/ag";
@@ -1420,22 +1462,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    alchemist = callPackage ({ company, dash, elixir-mode, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, pkg-info }:
+    alchemist = callPackage ({ company, dash, elixir-mode, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, pkg-info, s }:
     melpaBuild {
         pname = "alchemist";
-        version = "20170118.142";
+        version = "20170402.2339";
         src = fetchFromGitHub {
           owner = "tonini";
           repo = "alchemist.el";
-          rev = "20a0c043b5df66ee1f731e1ffe53d5697915b626";
-          sha256 = "1szmjcim9mmzm45f7pb39gr0kf3y7x0kdhgvvbl9fbdzrphn02mx";
+          rev = "46d09a6abaa8adf5e06184b77d04638ff3aa9087";
+          sha256 = "1wvbn4capcf049y33633b4v8k1aqwi94lscif810f7p3m0xdai30";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6616dc61d17c5bd89bc4d226baab24a1f8e49b3e/recipes/alchemist";
           sha256 = "18jxw0zb7y34qbm4bcpfpb2656f0h9grmrbfskgp4ra4q5q3n369";
           name = "alchemist";
         };
-        packageRequires = [ company dash elixir-mode emacs pkg-info ];
+        packageRequires = [ company dash elixir-mode emacs pkg-info s ];
         meta = {
           homepage = "https://melpa.org/#/alchemist";
           license = lib.licenses.free;
@@ -1448,8 +1490,8 @@
         src = fetchFromGitHub {
           owner = "jgkamat";
           repo = "alda-mode";
-          rev = "deeb659b1b1c6ec57a38875e9daf1f76f9b5c013";
-          sha256 = "1z462b2cvfqz1pdrba89ag4v9mvw1dzsrzc219fz06f2xcpyz2v2";
+          rev = "921b1d39ee1122c0f6935598dc17aaa904e74819";
+          sha256 = "01zz3h6q3djqmb3l6s9jld8x1zx2m0x1qskxzywnyfh8hcvbqy6f";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2612c494a2b6bd43ffbbaef88ce9ee6327779158/recipes/alda-mode";
@@ -1546,22 +1588,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    all-the-icons = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, font-lock-plus, lib, melpaBuild }:
+    all-the-icons = callPackage ({ emacs, fetchFromGitHub, fetchurl, font-lock-plus, lib, melpaBuild }:
     melpaBuild {
         pname = "all-the-icons";
-        version = "20170328.2313";
+        version = "20170417.201";
         src = fetchFromGitHub {
           owner = "domtronn";
           repo = "all-the-icons.el";
-          rev = "e7c8f824d542fd946dfe695ef370dd57a218d03c";
-          sha256 = "0y5mf6iwyqsfl6xa00pkv23d52dadk1zgcmkx91i0ls3jb1cvarg";
+          rev = "9c6a36842aedf9960c5fa81ffe8ba9745dd9cb86";
+          sha256 = "0kam8p4nid1rmmr5jw3l8728fd5c9s67gabyacky7qnfa0klja5s";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/604c01aa15927bd122260529ff0f4bb6a8168b7e/recipes/all-the-icons";
           sha256 = "00ba4gkfvg38l4s0gsb4asvv1hfw9yjl2786imybzy7bkg9f9x3q";
           name = "all-the-icons";
         };
-        packageRequires = [ dash emacs font-lock-plus ];
+        packageRequires = [ emacs font-lock-plus ];
         meta = {
           homepage = "https://melpa.org/#/all-the-icons";
           license = lib.licenses.free;
@@ -1578,8 +1620,8 @@
           sha256 = "1siwrcfpj9wnrq5q0y5yhbqnh081db0v4kzvxiiqs3idppdnddxg";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cf8e432e3cd316ffeb7e0b68b855e23bcc3b9491/recipes/all-the-icons-dired";
-          sha256 = "0fbl3i3wi2ka43xri0i30x561115hmv3j75vpkyzz3g1m9w006br";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/all-the-icons-dired";
+          sha256 = "1qj639z24ln29hv6c51g1vsa2jsy4qrlhf8c7d5w9bxcrcn2fnr9";
           name = "all-the-icons-dired";
         };
         packageRequires = [ all-the-icons emacs ];
@@ -1625,8 +1667,8 @@
         src = fetchFromGitHub {
           owner = "immerrr";
           repo = "ample-regexps.el";
-          rev = "c806766693827a9ca12a6a07f6294260d6ef776e";
-          sha256 = "17kdv4447dyjaz2chi1f8hlrry8pgvjgxivvk48r9yzi1crjd1zj";
+          rev = "cbe91e148cac1ee8e223874dc956ed4cf607f046";
+          sha256 = "1mm4icrwx4mscp7kbbmlc34995r164dhrfczn5ybkyxjzzf76jn1";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6a5c72dfb52d55b2b22c91f115b32fff14f2f61e/recipes/ample-regexps";
@@ -1684,12 +1726,12 @@
     anaconda-mode = callPackage ({ dash, emacs, f, fetchFromGitHub, fetchurl, lib, melpaBuild, pythonic, s }:
     melpaBuild {
         pname = "anaconda-mode";
-        version = "20170329.836";
+        version = "20170405.301";
         src = fetchFromGitHub {
           owner = "proofit404";
           repo = "anaconda-mode";
-          rev = "14061ecfbde5f58a0f807eafc7c1871ff178cea0";
-          sha256 = "05lq97xfdmw34yh1jy4b7ypks5nf3jjcrx12lk0jxhhgcr7j2lv3";
+          rev = "6141aba393e992308d01b550f0b96add62440b04";
+          sha256 = "1gkkjnmczpvaw020vw1gbda3dv0h1g7fzdqs3rigwlzzajc96bj4";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e03b698fd3fe5b80bdd24ce01f7fba28e9da0da8/recipes/anaconda-mode";
@@ -1879,8 +1921,8 @@
           sha256 = "06gs5ln3w1xvq8f8k9225rwiipbh9cs0dzyyb7z05717rmqixcc4";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8b528544841995045fb1f8344aaaa38946bb3915/recipes/annoying-arrows-mode";
-          sha256 = "13bwqv3mv7kgi1gms58f5g03q5g7q98n4vv6n28zqmppxm5z33s7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/annoying-arrows-mode";
+          sha256 = "1vswlfypn6ijn0wwa3dsqkz5n3pillpmli2ha4q9snhd3a667vyh";
           name = "annoying-arrows-mode";
         };
         packageRequires = [ cl-lib ];
@@ -2269,16 +2311,16 @@
     anything-tramp = callPackage ({ anything, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "anything-tramp";
-        version = "20170325.1036";
+        version = "20170412.445";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-anything-tramp";
-          rev = "4e5f2ceb4624a633b809cb7ac671425fa061586b";
-          sha256 = "1jzyxxk8c9dfr5d3i89cq7apjlrwc3278nn1fr7hlcg05nv2lfwl";
+          rev = "08bf0752e5b885a0492fbd0d7790668683c87797";
+          sha256 = "13026l259vbbgi7q0lb6jb7d54z6jgapv0d2qlprh9mlqjf32xic";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/bf5be5351cb187dff8388865ac424f8e5be71639/recipes/anything-tramp";
-          sha256 = "1dpah5c35j552ixbd9mw2400vnfbibwhk1ihyz2n8b1c06syfny1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/anything-tramp";
+          sha256 = "053bi7b6d9aa6xwsgm0yxbklbs5sl3dgi529gsapj30lw68lh1vh";
           name = "anything-tramp";
         };
         packageRequires = [ anything emacs ];
@@ -2298,8 +2340,8 @@
           sha256 = "1y6s45k3f2x30fc9d5dv1v3cypj9wylx56khs5zxczgk5ky1ffp4";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/04ac359d02d91725c8fc451b17bc2f06a7fe57a5/recipes/anzu";
-          sha256 = "0i2ia0jisj31vc2pjx9bhv8jccbp24q7c406x3nhh9hxjzs1f41i";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/anzu";
+          sha256 = "181hzwy9bc0zfhax26p20q9cjibrmi9ngps5fa3ja5g6scxfs9g1";
           name = "anzu";
         };
         packageRequires = [ emacs ];
@@ -2347,16 +2389,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    apache-mode = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    apache-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "apache-mode";
-        version = "20150828.714";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/apache-mode.el";
-          sha256 = "1jndhcjvj6s1clmyyphl5ss5267c7b5a58fz8gbp1ffk1d9ylfik";
+        version = "20170407.1140";
+        src = fetchFromGitHub {
+          owner = "zonuexe";
+          repo = "apache-mode";
+          rev = "8fd0d4db7ede5d4e360630235ede3beb1ba56cdf";
+          sha256 = "0lawq0xx0y2kn89r633lb8kr4zkrbcm53dv8dylmv7lli9a7g1y9";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a6da3640b72496e2b32e6ed21aa39df87af9f7f3/recipes/apache-mode";
-          sha256 = "1a1pj3bk0gplfx217yd6qdn7qrhfbkx2bhkk33k0gq5sia6rzs44";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/b5216c40e60c5a69a6235c15b432b5e9bdda6fd3/recipes/apache-mode";
+          sha256 = "0f8r3xnnidcm9ahj8c3s1vxk6yqk3ra34nrc19r76xyprbb2sjsm";
           name = "apache-mode";
         };
         packageRequires = [];
@@ -2513,12 +2558,12 @@
     apropospriate-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "apropospriate-theme";
-        version = "20170321.907";
+        version = "20170414.1333";
         src = fetchFromGitHub {
           owner = "waymondo";
           repo = "apropospriate-theme";
-          rev = "09f2f184445f179c3c888a4a9b6cafea82a0ca99";
-          sha256 = "000bihb4i07d5djf2b1hdyxm2yynnq5sirry1qgvn5wmrvny586l";
+          rev = "8d79047d58bf30e01cc9851431e7ee093c6bc60a";
+          sha256 = "1ijdyd3a5hxanz1wm4fxzsnnr00dwlwivj12533n9wrx029bkg4z";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1da33013f15825ab656260ce7453b8127e0286f4/recipes/apropospriate-theme";
@@ -2549,6 +2594,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    arch-packer = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
+    melpaBuild {
+        pname = "arch-packer";
+        version = "20170417.346";
+        src = fetchFromGitHub {
+          owner = "brotzeitmacher";
+          repo = "arch-packer";
+          rev = "4a37e8fb9fadfb9f4e75a042231192b0a582b40d";
+          sha256 = "0l36f5hnz4k556hkx42qsp2df9g319znnqq5mqgabykqbdd604hs";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/39f13017cde2d209a58dc45f0df25dc723398b72/recipes/arch-packer";
+          sha256 = "06gmkc63ys6diiwbhdjyn17yhvs91nxdhqkydmm18553pzsmcy72";
+          name = "arch-packer";
+        };
+        packageRequires = [ emacs s ];
+        meta = {
+          homepage = "https://melpa.org/#/arch-packer";
+          license = lib.licenses.free;
+        };
+      }) {};
     archive-region = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "archive-region";
@@ -2704,8 +2770,8 @@
           sha256 = "05fjsj5nmc05cmsi0qj914dqdwk8rll1d4dwhn0crw36p2ivql75";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a6da3640b72496e2b32e6ed21aa39df87af9f7f3/recipes/ascii";
-          sha256 = "0jb63f7qwhfbz0n4yrvnvx03cjqly3mqsc3rq9mgf4svy2zw702r";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ascii";
+          sha256 = "0f90anxrpnb8k1lqmz0iim4yp20riy19palwmdyl840hz69m98cd";
           name = "ascii";
         };
         packageRequires = [];
@@ -2756,22 +2822,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    assess = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, lib, m-buffer, melpaBuild }:
+    assess = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, m-buffer, melpaBuild }:
     melpaBuild {
         pname = "assess";
-        version = "20161203.327";
+        version = "20170413.409";
         src = fetchFromGitHub {
           owner = "phillord";
           repo = "assess";
-          rev = "47ce039423f660174d097698615aaad6c77e87fb";
-          sha256 = "16b0fdz1nj25bkzb3hyarwa2zgk23dn9598a4ljbr9smdl2pdv6b";
+          rev = "87118057b3ae0e6542fa5e22050eb44d6efe8baa";
+          sha256 = "0cilb32zr38x9kfzfyr1ciag5pzbgp1dk62r7lhn8dxc2ip6f11j";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6f917a34506193f2674b195569dfd3c13ba62c1d/recipes/assess";
           sha256 = "0xj3f48plwxmibax00qn15ya7s0h560xzwr8nkwl5r151v1mc9rr";
           name = "assess";
         };
-        packageRequires = [ dash emacs m-buffer ];
+        packageRequires = [ emacs m-buffer ];
         meta = {
           homepage = "https://melpa.org/#/assess";
           license = lib.licenses.free;
@@ -2788,8 +2854,8 @@
           sha256 = "1hjyac7dm0yvg5y32fii6508wwhl5q493i8ikf3fszafz03nc6sc";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6a0fe448e82f42cad0fdaa40c964032892fedd83/recipes/async";
-          sha256 = "063ci4f35x1zm9ixy110i5ds0vsrcafpixrz3xkvpnfqdn29si3f";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/async";
+          sha256 = "0s2qrmkqqfgi1ilzbj0rfk27f89p4dycdl1lqkbsm23j0zya53w4";
           name = "async";
         };
         packageRequires = [];
@@ -2830,8 +2896,8 @@
           sha256 = "0rnnvr8x1czphbinby2z2dga7ikwgd13d7zhgmp3ggamzyaz6nf1";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f6ab31b9371236fe1f3bf8e68c93d0bad8e14d24/recipes/@";
-          sha256 = "0w91qx955z67w2yh8kf86b58bb3b6s6490mmbky8467knf2q83qz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/@";
+          sha256 = "0da0xqk8fhz8aij3zmpp4bz3plpvfq2riyy17i7ny4ralxb3g08z";
           name = "at";
         };
         packageRequires = [ emacs queue ];
@@ -2910,8 +2976,8 @@
         src = fetchFromGitHub {
           owner = "tom-tan";
           repo = "auctex-latexmk";
-          rev = "b7053f71f578ffb0d247f8a9e8d5152efd86e096";
-          sha256 = "0slihygr74vyijnyzssckapscxmdd7zlgrs0wvmpw9hnjzwwzzql";
+          rev = "0315925ac9a892e73859cf4b720f36f2727f47f1";
+          sha256 = "0cdc2wkyqs4c6iypkynm0s540isp7yyyavp80rg5x3cid3hsbinm";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3f48af615c56f093dff417a5d3b705f9993c518f/recipes/auctex-latexmk";
@@ -3906,12 +3972,12 @@
     avy = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "avy";
-        version = "20170326.1157";
+        version = "20170411.608";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "avy";
-          rev = "0c30cdba9e601c9e719b8b00101d2af9f93d2042";
-          sha256 = "18sklj4hc8qybcrqymm6144dz6y8hf34s6szxis3flnnhx1x6a06";
+          rev = "f2bedeeb5804a4863bb53aca6f77195f7d530c38";
+          sha256 = "1p2l6zqls2c8v1ahn9rkfj6vvcsx1ymd0rd590scj8kqhjjyq3n7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/77fac7a702d4086fb860514e377037acedc60412/recipes/avy";
@@ -3969,12 +4035,12 @@
     avy-migemo = callPackage ({ avy, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, migemo }:
     melpaBuild {
         pname = "avy-migemo";
-        version = "20161229.605";
+        version = "20170411.858";
         src = fetchFromGitHub {
           owner = "momomo5717";
           repo = "avy-migemo";
-          rev = "26e87aa7905a252b797e0bf592c9ff9eede165c1";
-          sha256 = "1bfrc7wxnzhjn07psa5z1cflxxr1k8qc4jgsz5w7ds3sn48aji48";
+          rev = "97020c34176538480cfd28004f16f9b5494315e6";
+          sha256 = "1dgjkhcsb1iyjcwbjyccr7550lczg74jl7w1g7kif8g0df0mc5g6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6a02db29eb3e4b76b4a9cdbc966df5a1bd35dec0/recipes/avy-migemo";
@@ -4016,8 +4082,8 @@
           sha256 = "1r1vbi1r3rdbkyb2naciqwja7hxigjhqfxsfcinnygabsi7fw9aw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/04101ec2a234a0f95faab6fa664e54413365ba9a/recipes/awk-it";
-          sha256 = "1rnrm9jf9wvfrwyylhj0bfrz9140945lc87lrh21caf7q88fpvkw";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/awk-it";
+          sha256 = "0qic9m7c31sq4xgx7hnkhj0j0mfy26smghg266lrp5jii833qlz3";
           name = "awk-it";
         };
         packageRequires = [];
@@ -4095,8 +4161,8 @@
         src = fetchFromGitHub {
           owner = "hung-phan";
           repo = "babel-repl";
-          rev = "0faa2f6518a2b46236f116ca1736a314f7d9c034";
-          sha256 = "0sp0ja0346k401q5zpx3zl4pnxp4ml2jqkgk7z8i08rhdbp0c4nr";
+          rev = "e619c16e349a1ee7bd0ee0d7f3650d33bff73fc3";
+          sha256 = "1174r0gjpn5z3pnf32qlpqhmdfvskcd2vqgicvmqzjsrysj3fypn";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/dfd4ac01ea16fcbc6e9343a953a2f278c5874d3d/recipes/babel-repl";
@@ -4229,8 +4295,8 @@
           sha256 = "0a6adsxvmw3mgji17is75jrq3ifmzpch8rwqqyfgc99xzndvab7l";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/01f3deade0759830ed2e70e00e596915be5f5c11/recipes/badwolf-theme";
-          sha256 = "03plkzpmlh0pgfp1c9padsh4w2g23clsznym8x4jabxnk0ynhq41";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/badwolf-theme";
+          sha256 = "15n33l0iaq2pk70rpw7qdm8dlwcinfclpnlr3bs7vcb1dknp4g9v";
           name = "badwolf-theme";
         };
         packageRequires = [ emacs ];
@@ -4284,12 +4350,12 @@
     base16-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "base16-theme";
-        version = "20170326.1839";
+        version = "20170415.1600";
         src = fetchFromGitHub {
           owner = "belak";
           repo = "base16-emacs";
-          rev = "87b91379661f627cb1cecabfd648d6a3838cd448";
-          sha256 = "1fb4mhz17x235lasqqwzb0jacvl96h3lsjf7mkhdwzxp3p26l4gf";
+          rev = "51d952579b5f91d92c386394d9ea8cd6535284f5";
+          sha256 = "08i7zl8b1y3xn60imjvwri8zr7695f72rcdj7a9m1x8bwzipzrb0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/30862f6be74882cfb57fb031f7318d3fd15551e3/recipes/base16-theme";
@@ -4334,8 +4400,8 @@
           sha256 = "1sq6mmg5361z30psn6x2ylpr8yxsbg3d47qai9px7p889p63384l";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/bdf8a23771774f630baa41b24375cb57f90fbb2e/recipes/basic-c-compile";
-          sha256 = "07p35wg426ap0awgk4vg5n36s5jbfs3fi5djl8jq93jr6xs9imbc";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/basic-c-compile";
+          sha256 = "0g595d1vd97b5qqydpb6cr3ibgcm08cw8c154h35vz3cl4w86mwd";
           name = "basic-c-compile";
         };
         packageRequires = [ cl-lib f ];
@@ -4429,13 +4495,13 @@
         pname = "bbdb";
         version = "20170129.2224";
         src = fetchgit {
-          url = "git://git.savannah.nongnu.org/bbdb.git";
+          url = "https://git.savannah.nongnu.org/git/bbdb.git";
           rev = "8998b3416b36873f4e49454879f2eed20c31b384";
           sha256 = "086ivc9j7vninb46kzparg7zjmdsv346gqig6ki73889wym1m7xn";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6b6801fe29cb6fb6183f0babf528375d14f966b3/recipes/bbdb";
-          sha256 = "0zhs4psa9b9yf9hxm19q5znsny11cdp23pya3rrlmj39j4jfn73j";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/bbdb";
+          sha256 = "0mm8n3dbi8lap3pjr97n2f675iy7sg476sm1vxygbc3j67rq1zb2";
           name = "bbdb";
         };
         packageRequires = [];
@@ -4497,8 +4563,8 @@
           sha256 = "07plwm5nh58qya03l8z0iaqh8bmyhywx7qiffkf803n8wwjb3kdn";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f0e8f0aadc5a46df9d4c1bfdf77d69e839914124/recipes/bbdb-china";
-          sha256 = "111lf256zxlnylfmwis0pngbpj73p59s520v8abbm7pn82k2m72b";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/bbdb-china";
+          sha256 = "1clrl3gk036w8q3p2f189jp6wv1y3xv037v77rg87dyz0yjs61py";
           name = "bbdb-china";
         };
         packageRequires = [ bbdb-vcard chinese-pyim ];
@@ -4514,8 +4580,8 @@
         src = fetchFromGitLab {
           owner = "iankelling";
           repo = "bbdb-csv-import";
-          rev = "21c775d776be1a6b3a096912bcdb53dab6bfaa31";
-          sha256 = "0amdn5hd72108ylss90yk550w6vzvsg91l29dycbfr8a3hrfs22x";
+          rev = "dc9e722d1c1fcd55b71625ee3f05a4921851d186";
+          sha256 = "0jkrznrfdh562bwy0adg1pzmqh6i766b5ki41g4pr9wcbmh937sn";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/76ac7178ee5381e08ae881f3fc6061106eeb1c1d/recipes/bbdb-csv-import";
@@ -4560,8 +4626,8 @@
           sha256 = "04yxky7qxh0s4y4addry85qd1074l97frhp0hw77xd1bc7n5zzg0";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f0e8f0aadc5a46df9d4c1bfdf77d69e839914124/recipes/bbdb-handy";
-          sha256 = "0qv1lw4fv9w9c1ypzpbnvkm6ypqrzqpwyw5gpi7n9almxpd8d68z";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/bbdb-handy";
+          sha256 = "16wjnsw4p7y21zmpa69vpwydsv5i479czk3y79cnn7s4ap69jmm8";
           name = "bbdb-handy";
         };
         packageRequires = [ bbdb ];
@@ -4644,8 +4710,8 @@
           sha256 = "0d5b7zyl2vg621w1ll2lw3kjz5hx6lqxc0jivh0i449gckk5pzkm";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/bc1d68a1d232016db004d145b9a40bcfbf400aa6/recipes/bdo";
-          sha256 = "0vp8am2x11abxganw90025w9qxnqjdkj015592glbbzpa6338nfl";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/bdo";
+          sha256 = "1n2kpaps6992nxl0v1003czcbw1k4xq906an56694wkh05az505j";
           name = "bdo";
         };
         packageRequires = [];
@@ -4657,12 +4723,12 @@
     beacon = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, seq }:
     melpaBuild {
         pname = "beacon";
-        version = "20161004.756";
+        version = "20170404.906";
         src = fetchFromGitHub {
           owner = "Malabarba";
           repo = "beacon";
-          rev = "c9d86457d43decf61810006752544d7f7bd5a61d";
-          sha256 = "132ixmzjz3sg15qvdbv3s8p6dv3bz7vwlhs50dax0z19dr79cda0";
+          rev = "f1a3ff5ea8fecf9bf250205de66aedf0bf49c35b";
+          sha256 = "0wr2ffwbi5w23a7hbdmn5ijfy5gmizrmy75zj6m1bz4mbw23ccvn";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d09cfab21be800831644218e9c8c4433087951c0/recipes/beacon";
@@ -4809,8 +4875,8 @@
           sha256 = "08w3z4srbz478rmnnzjmbbd5bknady417x7s0r3nxszkxfpn3iy5";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/fc553c9fb6de69dafe9fbe44a955b307f4d9507f/recipes/better-shell";
-          sha256 = "1mr39xz8chnc28zw1rrw5yqf44v44pby7ki22yyz6rp1j5ishp4v";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/better-shell";
+          sha256 = "0si8nj18i3jlhdb8m6f21rmi0lxians34vhw4xhvxw2yr9l85lj6";
           name = "better-shell";
         };
         packageRequires = [ emacs ];
@@ -4906,12 +4972,12 @@
     bibretrieve = callPackage ({ auctex, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "bibretrieve";
-        version = "20131013.1132";
+        version = "20170417.620";
         src = fetchFromGitHub {
           owner = "pzorin";
           repo = "bibretrieve";
-          rev = "aff34c6e1a074ac4fd574d8e66fd9e0760585419";
-          sha256 = "0rwy4k06nd9a31hpyqs0fxp45dpddbvbhwcw1gzx4f73qmgawq9b";
+          rev = "813730a8967e003ca67342cc45b62c17cda77a7c";
+          sha256 = "0wy2013azglz095w4w3g693hr6f68z2fbwpc6gixr85rd0pk9hh9";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e548e0cf8babaf32f1db58099599a72cebdbb84d/recipes/bibretrieve";
@@ -4994,8 +5060,8 @@
         src = fetchFromGitHub {
           owner = "jwiegley";
           repo = "use-package";
-          rev = "a354568ec2af8444b741f595a3a7183e3f67ad58";
-          sha256 = "19aaqcaycq1msfgvvnlqkzqqijbzqzc015k69pbg41l5bvrwnqcq";
+          rev = "0139f85595a10b9e50e38f3d8d59f70cf4f3a2a2";
+          sha256 = "1zv2an1mzks51j46j2gvizjmh7k5frzw7qja9kh9lvighl2qrg2v";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d39d33af6b6c9af9fe49bda319ea05c711a1b16e/recipes/bind-key";
@@ -5040,8 +5106,8 @@
           sha256 = "1cw8zxcj7ygj73dc8xf6b4sdjrwxfl6h07mrwym8anllqs2v0fa6";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5653d2b6c2a9b33cfed867e7f6e552d4ed90b181/recipes/bing-dict";
-          sha256 = "0s5pd08rcnvmgi1hw17xbzvswlv0yni6h2h2gccrjmf6izi8whh1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/bing-dict";
+          sha256 = "1cqjndq8xm2bwjvdj95dn377bp9r6rrkp1z4a45faj408mipahli";
           name = "bing-dict";
         };
         packageRequires = [];
@@ -5113,6 +5179,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    bitbucket = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, request, s }:
+    melpaBuild {
+        pname = "bitbucket";
+        version = "20170404.2146";
+        src = fetchFromGitHub {
+          owner = "tjaartvdwalt";
+          repo = "bitbucket.el";
+          rev = "5e663da1bd38a14c1ecf4d66a79d4321ac833bcf";
+          sha256 = "1sikayb6i1k40zdl4j9n04xcmsf74py5vmcjbvli7k8b3ar7l5l5";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/9cf87389e6a5d868850d27e077202e1e52eaf4aa/recipes/bitbucket";
+          sha256 = "1d0v6hvmxky3k2m89b7xm1igx9fmzvhdpn1bi8zln61m4zgr3yz0";
+          name = "bitbucket";
+        };
+        packageRequires = [ emacs request s ];
+        meta = {
+          homepage = "https://melpa.org/#/bitbucket";
+          license = lib.licenses.free;
+        };
+      }) {};
     bitlbee = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "bitlbee";
@@ -5145,8 +5232,8 @@
           sha256 = "00xbcgx4snz4sd7q7ys24rsnf5wdxjn402v8y5dgn4ayx88y1rrj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e62944dfef1c0c259524bacf1c82e68571acaf30/recipes/blackboard-bold-mode";
-          sha256 = "0zip1v96mdmz2z9hakn9asg5c1gm68i4mdmrsccqig3s60zrxvhz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/blackboard-bold-mode";
+          sha256 = "08fmzm5lblkk503zr4d6hkp45075pwwd8zinngasrsf1r01isksj";
           name = "blackboard-bold-mode";
         };
         packageRequires = [ cl-lib ];
@@ -5448,10 +5535,10 @@
       }) {};
     bookmark-plus = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
         pname = "bookmark-plus";
-        version = "20170312.1135";
+        version = "20170331.1856";
         src = fetchurl {
           url = "https://www.emacswiki.org/emacs/download/bookmark+.el";
-          sha256 = "0vr5v6laav6hhx8g9v4pjdmfjcc2bylvvjwzfby9a4s838dakgkr";
+          sha256 = "0iqvlwqilwpqlymj8iynw2miifl28h1g7z10q08rly2430fnmi37";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4327b4dd464ebb00c2acdd496274dedf912cdf92/recipes/bookmark+";
@@ -5488,12 +5575,12 @@
     boon = callPackage ({ dash, emacs, expand-region, fetchFromGitHub, fetchurl, lib, melpaBuild, multiple-cursors }:
     melpaBuild {
         pname = "boon";
-        version = "20170318.1312";
+        version = "20170406.1153";
         src = fetchFromGitHub {
           owner = "jyp";
           repo = "boon";
-          rev = "d9f0545708bbbbe3df23b2b91cdd2824beb0df56";
-          sha256 = "0crqwyhzkwpi7c0rqcgmgqx6g4f8fw9gd9nh0ii6p5agiw140yj8";
+          rev = "6dd44cdef13c3695a2890c0329f0d870cce8dfdb";
+          sha256 = "0rfc4zgyijl9gcbf1bf1hnsx2pwl02jmxxj372z7nsvjwhwc20w9";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/boon";
@@ -5677,16 +5764,16 @@
     browse-at-remote = callPackage ({ cl-lib ? null, f, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
     melpaBuild {
         pname = "browse-at-remote";
-        version = "20170302.2236";
+        version = "20170330.1452";
         src = fetchFromGitHub {
           owner = "rmuslimov";
           repo = "browse-at-remote";
-          rev = "6de3e242e7b11ee2cb942547ac01823fada52605";
-          sha256 = "09c4hsg02bmws65z4396j1yavx96785l6h3yl6s91qgx4byq9l17";
+          rev = "7a34d6579a98d13b2887addab25947ea96502de9";
+          sha256 = "1ybb9gyw1b4fjbh02lj632vc89m9yq91dvshnbnzg0wbr77d33xr";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/203e177f09eac4ebb8c7e3532bd82f749f8e2607/recipes/browse-at-remote";
-          sha256 = "1d40b9j3pc6iy3l25062k7f52aq0vk9sizdwd7wii3v5nciczv6w";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/browse-at-remote";
+          sha256 = "0s088ba047azba60rlfn3jbqr321vnm953i7dqw2gj9xml90kbm4";
           name = "browse-at-remote";
         };
         packageRequires = [ cl-lib f s ];
@@ -5840,12 +5927,12 @@
     bts-github = callPackage ({ bts, fetchFromGitHub, fetchurl, gh, lib, melpaBuild }:
     melpaBuild {
         pname = "bts-github";
-        version = "20150108.27";
+        version = "20170401.549";
         src = fetchFromGitHub {
           owner = "aki2o";
           repo = "emacs-bts-github";
-          rev = "57c23f2b842f6775f0bbbdff97eeec78474be6bc";
-          sha256 = "1sfr3j11jz4k9jnfa9i05bp4v5vkil38iyrgsp3kxf15797b9dg9";
+          rev = "ef2cf9202dc2128e5efdb613bfde9276a8cd95ad";
+          sha256 = "173i9n4c8mg93gpc7ljxh3nhm4lq2c04yhrvjz6fwwwqvmnkha5f";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6f3e87699181877e50d75a89e2ee76e403fc9317/recipes/bts-github";
@@ -5991,8 +6078,8 @@
           sha256 = "0d87cl7a4rcd6plbjyf26vaar7imwd18z24xdi4dz734m9zbkg6r";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5b1245af5b838e4e782cf323813ba143a7666ac4/recipes/buffer-stack";
-          sha256 = "00vxfd4ki5pqf9n9vbmn1441vn2y14bdr1v05h46hswf13b4hzrn";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/buffer-stack";
+          sha256 = "0lnd5mh20b4isa6m930dzibw3v4jyzp1ryvmz8irca28xfn0hjln";
           name = "buffer-stack";
         };
         packageRequires = [];
@@ -6180,8 +6267,8 @@
           sha256 = "1viq7cb41r8klr8i38c5zjrhdnww31gh4j51xdgy4v2lc3z321zi";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8b528544841995045fb1f8344aaaa38946bb3915/recipes/buster-mode";
-          sha256 = "1qndhchc8y27x49znhnc4rny1ynfcplr64rczrlbj53qmkxn5am7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/buster-mode";
+          sha256 = "0nylkxy9qlj1h5v0pja4g315xcj5qzvkys4dsnzbh3xq4xzyj6xj";
           name = "buster-mode";
         };
         packageRequires = [];
@@ -6256,12 +6343,12 @@
     buttercup = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "buttercup";
-        version = "20170316.1516";
+        version = "20170401.703";
         src = fetchFromGitHub {
           owner = "jorgenschaefer";
           repo = "emacs-buttercup";
-          rev = "677d6d3c253e69bee9e310911605833e79253ee3";
-          sha256 = "0h8kq3p2ksyiqn4f6z7flq15q3dxps2fp5a8zzfpxbs67k13nrf3";
+          rev = "f60ed2a563b3867a98ab41290b46572789c43272";
+          sha256 = "11axmbqvak8djldjp9kqcaz7q6dxkig9h193l5javgf78pfcdlki";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d4b187cb5b3cc5b546bfa6b94b6792e6363242d1/recipes/buttercup";
@@ -6390,8 +6477,8 @@
           sha256 = "1hp6dk84vvgkmj5lzghvqlpq3axwzgx9c7gly2yx6497fgf9jlby";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/096d45e6fee9ec514b853d946bf0ce77a5c33ebc/recipes/cache";
-          sha256 = "0lzj0h23g6alqcmd20ack53p72g9i09dp9x0bp3rdw5izcfkvhh3";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cache";
+          sha256 = "15pj7f4n0lk8qqsfafdj19iy0hz4xpfcf2fnby7ziq2dldyqrax9";
           name = "cache";
         };
         packageRequires = [];
@@ -6529,12 +6616,12 @@
     calfw = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "calfw";
-        version = "20170320.506";
+        version = "20170410.1920";
         src = fetchFromGitHub {
           owner = "kiwanami";
           repo = "emacs-calfw";
-          rev = "136dce009a26e7d8a8064af422c2cf8170e852c5";
-          sha256 = "1hiip8hfl7myimgba7ggs1ki1pk3ag7nyfa8j2zzm87n93g5xia4";
+          rev = "c538d3746449b4f0e16b16aad3073d4f7379d805";
+          sha256 = "0r42cagvmvvib76kd15nd9ix55ys6i549vxnls4z16s864695zpa";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1d1aaab9844413a5fff992509935b399b5154c3d/recipes/calfw";
@@ -6558,8 +6645,8 @@
           sha256 = "14n5rci4bkbl7037xvkd69gfxnjlgvd2j1xzciqcgz92f06ir3xi";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d9791feacdf46836d22ee907394b7242387804b9/recipes/calfw-gcal";
-          sha256 = "182p56wiycrm2cjzmlqabksyshpk7nga68jf80vjjmaavp5xqsq8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/calfw-gcal";
+          sha256 = "0pzjs8kvf9vxdzziq7zd59vniq21k4a6yygpv4fz2by3s3bvnrid";
           name = "calfw-gcal";
         };
         packageRequires = [];
@@ -6614,13 +6701,13 @@
         pname = "caml";
         version = "20151009.845";
         src = fetchsvn {
-          url = "http://caml.inria.fr/svn/ocaml/trunk/emacs/";
+          url = "https://caml.inria.fr/svn/ocaml/trunk/emacs/";
           rev = "16556";
           sha256 = "16qw82m87i1fcnsccqcvr9l6p2cy0jdhljsgaivq0q10hdmbgqdw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/55c90eb51ac6a69383c8b63987235d325f43fdb0/recipes/caml";
-          sha256 = "0kxrn9s1h2l05akcdcj6fd3g6x5wbi511mf14g9glcn8azyfs698";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/caml";
+          sha256 = "1s05s3dqxlz2qhvjr3j9akb56finpmpbnsjb5pmjnzflhc4y01cf";
           name = "caml";
         };
         packageRequires = [];
@@ -6682,8 +6769,8 @@
           sha256 = "055w1spba0q9rqqg4rjds0iakr9d8xg66959xahxq8268mq5446n";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f1a6003eae15ed12e8d6e5e74316f03201cf8373/recipes/caroline-theme";
-          sha256 = "07flxggnf0lb1fnvprac1daplgx4bi5fnnkgfc58wnw805s12k32";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/caroline-theme";
+          sha256 = "178nxcz73lmvnjcr6x6as25d8m5knc21jpr66b4rg0rmlmhchkal";
           name = "caroline-theme";
         };
         packageRequires = [ emacs ];
@@ -6758,12 +6845,12 @@
     cask-package-toolset = callPackage ({ ansi, cl-lib ? null, commander, dash, emacs, f, fetchFromGitHub, fetchurl, lib, melpaBuild, s, shut-up }:
     melpaBuild {
         pname = "cask-package-toolset";
-        version = "20160102.137";
+        version = "20170411.1430";
         src = fetchFromGitHub {
           owner = "AdrieanKhisbe";
           repo = "cask-package-toolset.el";
-          rev = "24fb0cf745d5e10342dbd2cdcd3d6c9910167726";
-          sha256 = "1m40s9q00l06fz525m3zrvwd6s60lggdqls5k5njkn671aa3h71s";
+          rev = "aed1f12b6072a2467e0efa23c3265aaa9f414425";
+          sha256 = "1as3fxs1h4gq6mv7gdsjqa59prrgzzs22c9qky8q47dr20sc9q6s";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ed71e45389626e700b93b29d5e2659b6706274d8/recipes/cask-package-toolset";
@@ -6892,8 +6979,8 @@
           sha256 = "1pvlq98qll44g1ag8w5rkbppk1b8l8inkwn5qzrlsjr8pngyhljz";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/193956c26050e15ddd7fb6579a053262d1de1e30/recipes/cdlatex";
-          sha256 = "1jsfmzl13fykbg7l4wv9si7z11ai5lzvkndzbxh9cyqlvznq0m64";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cdlatex";
+          sha256 = "021gj0jw93r8gk0cacw1ldfibpwr6fpkcrnign7b4nqqnb3135k9";
           name = "cdlatex";
         };
         packageRequires = [];
@@ -6974,8 +7061,8 @@
           sha256 = "15psyizjz8wf9wfxwwcdmg1bxf8jbv0qy40rskz7si7vxin8hhxl";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/dcb9f72c7ecc30f5391e4f83c7bb173af04978e5/recipes/centered-cursor-mode";
-          sha256 = "0a5mymnkwjvpra8iffxjwa5fq3kq4vc8fw7pr7gmrwq8ml7il5zl";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/centered-cursor-mode";
+          sha256 = "1sq0hfvnm8sbqyxzr0znq0lwrhbqm961wi13yywjcwxd3x0ar3z0";
           name = "centered-cursor-mode";
         };
         packageRequires = [];
@@ -6987,12 +7074,12 @@
     centered-window-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
     melpaBuild {
         pname = "centered-window-mode";
-        version = "20160210.247";
+        version = "20170406.635";
         src = fetchFromGitHub {
           owner = "anler";
           repo = "centered-window-mode";
-          rev = "ff2350f5258249bbc9e07ac60c76028f4ae07190";
-          sha256 = "1i5ipll7jlrxqb0kcwq0rlrpfaxsyp663bwjdnhj84c50wlv052f";
+          rev = "ac8b7eca96a771e6921ffd6fad09566c0447092c";
+          sha256 = "0lkamd4qi2pp2riqw90flgq6rrz8mrjqghmzppng06dafalyfxnv";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/centered-window-mode";
@@ -7033,8 +7120,8 @@
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "cerbere";
-          rev = "ef573b05f4c2a067b8234003aaa4b2a76fffea5c";
-          sha256 = "17jg5d5afh9zpnjx8wkys8bjllxq99j0yhz8j3fvkskisvhkz1im";
+          rev = "dd2105c372b469954e665a5aa0c3766b4922ce6a";
+          sha256 = "0i8939rycyq7baa043ksdv90mg3ik2amgkjf6iv4cx9r6c1xkzwx";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4145e270a2113f30f8bb4d0f6c335f1c76f77b1c/recipes/cerbere";
@@ -7054,8 +7141,8 @@
         src = fetchFromGitHub {
           owner = "cfengine";
           repo = "core";
-          rev = "19de82713504f253961ad46d30943bf004f8a64c";
-          sha256 = "1x8fr5rczzppgpq7hrcvzv95s5hjpvm4ksm5wwmkvy5a8awghdyg";
+          rev = "1fcf27f62b30e839020ac31145951f9abbd1c148";
+          sha256 = "0nm3mjbynqfg0vr2b5x10vak859pjxq2kgmgkv4i1y1y2cfhp3fc";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c737839aeda583e61257ad40157e24df7f918b0f/recipes/cfengine-code-style";
@@ -7093,13 +7180,13 @@
         pname = "cg";
         version = "20170201.347";
         src = fetchsvn {
-          url = "http://beta.visl.sdu.dk/svn/visl/tools/vislcg3/trunk/emacs";
-          rev = "12088";
+          url = "https://beta.visl.sdu.dk/svn/visl/tools/vislcg3/trunk/emacs";
+          rev = "12128";
           sha256 = "0lv9lsh1dnsmida4hhj04ysq48v4m12nj9yq621xn3i6s2qz7s1k";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a275ee794b0aa30b1348bb3a984114eef8dfc808/recipes/cg";
-          sha256 = "0ra6mxf8l9fjn1vszjj71fs6f6l08hwypka8zsb3si96fzb6sgjh";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/cg";
+          sha256 = "0xj4yqjg0r9m9cvwgs60lsid6qm1fi8lmb068dj6xaga11n70si5";
           name = "cg";
         };
         packageRequires = [];
@@ -7108,6 +7195,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    challenger-deep-theme = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "challenger-deep-theme";
+        version = "20170402.534";
+        src = fetchFromGitHub {
+          owner = "MaxSt";
+          repo = "challenger-deep";
+          rev = "02317915e36cb19e3e46f17fdec074677159b3a7";
+          sha256 = "02khn3wwzjxai81jrp8yaxfsa5n685l9b09ryd0wjf2hsa8ng975";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/7942f539d025c1e2b059d49e1984716cbbc90a67/recipes/challenger-deep-theme";
+          sha256 = "1apjc32wy7h7fadxckdbfa6wzd360c7v6dig9gikjbsxm8xgdg60";
+          name = "challenger-deep-theme";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/challenger-deep-theme";
+          license = lib.licenses.free;
+        };
+      }) {};
     change-inner = callPackage ({ expand-region, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "change-inner";
@@ -7119,8 +7227,8 @@
           sha256 = "1m9sq93bwajbld3lnlzkjbsby5zlm9sxjzqynryyvsb9zr1d0a9z";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cbe7e12067af7e5287c714df6677d438f7f30c36/recipes/change-inner";
-          sha256 = "0r693056wykg4bs7inbfzfniyawmb91igk6kjjpq3njk0v84y1sj";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/change-inner";
+          sha256 = "09y076vhhvp21jsvw9f5z4yk6cnmmjavg7600flxg5g27ydgix57";
           name = "change-inner";
         };
         packageRequires = [ expand-region ];
@@ -7413,8 +7521,8 @@
           sha256 = "01i7nycjnx4cpfgwakj14jv9dwybjl5jnslcxic9pr1n77mz53wk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6c2e447028dbae2dfefc47859c185af254210fe8/recipes/chinese-number";
-          sha256 = "0qj7lh7asic77dsdlsv4pg2jzickqa0m5lvn8f184qq98yfmj6d6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/chinese-number";
+          sha256 = "01ia2l5vrg8fhaxcvk8pv9qfm08xs0fbyc9j57nbdk9wxnd9i45s";
           name = "chinese-number";
         };
         packageRequires = [];
@@ -7675,12 +7783,12 @@
     cider = callPackage ({ clojure-mode, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, pkg-info, queue, seq, spinner }:
     melpaBuild {
         pname = "cider";
-        version = "20170322.155";
+        version = "20170403.402";
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "cider";
-          rev = "0816372ff483dd92eb8775c76929835b0955ae70";
-          sha256 = "0jh7wv2h6xxm7h3pmabcx30m16j2lz11z5pzv73p3miyqpvkh6mn";
+          rev = "35c18ac8afefecf746fa0a77e930636736cf6541";
+          sha256 = "1r4706s8k3kpgkcn1jm9794bhpjfp0zxc4siqrr0h5hxfjnizc59";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/55a937aed818dbe41530037da315f705205f189b/recipes/cider";
@@ -7788,8 +7896,8 @@
           sha256 = "1x96f5wc916dcwb75a34b6x1mas20gdgy34c7rg59n91ydn1mfaf";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a4a31dfc9cfe8ca4e72b7060e1db8c3864299e5b/recipes/cider-spy";
-          sha256 = "0478jlg76h0mrjwk2b1kdj16s1q1b03b7ygacai45jh89bc025fh";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cider-spy";
+          sha256 = "086yxz90mgc5si9k4j15nkc51k0lfk1dx1kq3r3swhyw3cwn7vh3";
           name = "cider-spy";
         };
         packageRequires = [ cider cl-lib dash emacs noflet ];
@@ -7801,12 +7909,12 @@
     ciel = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "ciel";
-        version = "20170323.2203";
+        version = "20170330.526";
         src = fetchFromGitHub {
           owner = "cs14095";
           repo = "ciel.el";
-          rev = "2cc6a4a338e6b1e477f37e8a2fa3c661209c0804";
-          sha256 = "148g1wl9f2bbgpqnyl6qppmzs61z771d1l64643vwvrh3xn4q4vg";
+          rev = "8c73f78d60ef52d3c395a9629963a63439b8a83e";
+          sha256 = "1jaxqri8l7y1lqj830h5alxn37skjpb56j6ax8qf9926n8qz3arm";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9c70c007a557ea9fb9eb4d3f8b7adbe4dac39c8a/recipes/ciel";
@@ -7914,8 +8022,8 @@
           sha256 = "108s96viral3s62a77jfgvjam08hdk97frfmxjg3xpp2ifccjs7h";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7a12bd6769ce7a5745c2da06dcd57ed3ba2ed891/recipes/cl-format";
-          sha256 = "1259ykj6z6m6gaqhkmj5f3q9vyk7idpvlvlma5likpknxj5f444v";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cl-format";
+          sha256 = "09jwy0fgaz2f04dvcdns6w859s6izvrkp8ib4lws3x8kx8z918fy";
           name = "cl-format";
         };
         packageRequires = [];
@@ -7951,7 +8059,7 @@
         version = "20170120.137";
         src = fetchsvn {
           url = "http://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format";
-          rev = "299036";
+          rev = "300461";
           sha256 = "0011wlqjkr1x58y0v5nf600nn7dj44cllp2m1dyj90aixjx4saq2";
         };
         recipeFile = fetchurl {
@@ -8157,12 +8265,12 @@
     clj-refactor = callPackage ({ cider, clojure-mode, edn, emacs, fetchFromGitHub, fetchurl, hydra, inflections, lib, melpaBuild, multiple-cursors, paredit, s, seq, yasnippet }:
     melpaBuild {
         pname = "clj-refactor";
-        version = "20170126.118";
+        version = "20170407.553";
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "clj-refactor.el";
-          rev = "0fb72efc1cb9a2a688e324e7fdc51f258a86e36d";
-          sha256 = "0sibcrsygaxk60f2rrjbmsp7cjfgqkj7a40psal19nf1ygcy634y";
+          rev = "0a25f2ed361fff056ee23cfa64eac1423c75dfeb";
+          sha256 = "1alpvwmfqm9hqgcd4bhg54pvqjc85dc7wrcajxzv00gki47gj2zs";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3a2db268e55d10f7d1d5a5f02d35b2c27b12b78e/recipes/clj-refactor";
@@ -8337,12 +8445,12 @@
     clojure-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "clojure-mode";
-        version = "20170303.2310";
+        version = "20170407.312";
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "clojure-mode";
-          rev = "4dcd7bc95f056ea61b0d1b16c5b03e1a6681b709";
-          sha256 = "0z27hgd3jc3lnhv2j3gc5inwlwmqidw7js41ciwawjma59bhv1ka";
+          rev = "2d67af4230657fb06f0df4453b9d21031b32c1db";
+          sha256 = "1dan05yd3dvf3r4khahpyq849sq96bjxz7zyady8x3k3gnn35q5w";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5e3cd2e6ee52692dc7b2a04245137130a9f521c7/recipes/clojure-mode";
@@ -8362,8 +8470,8 @@
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "clojure-mode";
-          rev = "4dcd7bc95f056ea61b0d1b16c5b03e1a6681b709";
-          sha256 = "0z27hgd3jc3lnhv2j3gc5inwlwmqidw7js41ciwawjma59bhv1ka";
+          rev = "2d67af4230657fb06f0df4453b9d21031b32c1db";
+          sha256 = "1dan05yd3dvf3r4khahpyq849sq96bjxz7zyady8x3k3gnn35q5w";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5e3cd2e6ee52692dc7b2a04245137130a9f521c7/recipes/clojure-mode-extra-font-locking";
@@ -8471,8 +8579,8 @@
           sha256 = "0v0wdq0b5jz4x0d7dl3ilgf3aqp2hk375db366ij6gxwd0b9i3na";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a6da3640b72496e2b32e6ed21aa39df87af9f7f3/recipes/closure-lint-mode";
-          sha256 = "1xmi1gjgayd5xbm3xx721xv57ns3x56r8ps94zpwyf2znpdchqfy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/closure-lint-mode";
+          sha256 = "11kxgvfwngdjryrrihlpn0509axwv4zwkxzs4h1pw5vi7sv1n6xd";
           name = "closure-lint-mode";
         };
         packageRequires = [];
@@ -8593,8 +8701,8 @@
         src = fetchFromGitHub {
           owner = "Kitware";
           repo = "CMake";
-          rev = "6a5a214f43cccc83fbe3dd6de4747aba43088701";
-          sha256 = "09xkv6b83b8wv043zq287azsjvqgl0nsmfprq3lsk5hqc82l6006";
+          rev = "be2c45f2a98d69cc9952b592777bb506f69149a2";
+          sha256 = "1nq63k8baym6dm8s05ac81iqvy9gi60a10c962x7zlxkk5r0klbp";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/598723893ae4bc2e60f527a072efe6ed9d4e2488/recipes/cmake-mode";
@@ -8639,8 +8747,8 @@
           sha256 = "0wi097yk9p1xcfmps1g58xvvlv60akwky4y0pxdz6pa31w9jd1q8";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d559cee8b263d3615f48924d62341f1ce1ab2630/recipes/cmd-to-echo";
-          sha256 = "0bz0zbzagrz26cvqpwl1pfwayyc49bjawk641yc6kl8gnsnv3z73";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cmd-to-echo";
+          sha256 = "1b4mw1ips4695ixgw2hyinq9ry3bx4d1842kr7k6155a1v34s4zh";
           name = "cmd-to-echo";
         };
         packageRequires = [ emacs s shell-split-string ];
@@ -8709,27 +8817,6 @@
           license = lib.licenses.free;
         };
       }) {};
-    coati = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
-    melpaBuild {
-        pname = "coati";
-        version = "20170228.705";
-        src = fetchFromGitHub {
-          owner = "CoatiSoftware";
-          repo = "emacs-coati";
-          rev = "f06eee92cb43b0dfd6dcf758ae05ac021a184f1c";
-          sha256 = "1l36pjapcsgc6sph6scgpc4zl5qfwf17ppyjznchkh4ykj13ghj3";
-        };
-        recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a43f28144401803d86bafdc9c5b60bcb3ada0bab/recipes/coati";
-          sha256 = "0f6vhypv8b8maq72pc1xp1yqv760za508kff2dqv0crwyd7iv32h";
-          name = "coati";
-        };
-        packageRequires = [ emacs ];
-        meta = {
-          homepage = "https://melpa.org/#/coati";
-          license = lib.licenses.free;
-        };
-      }) {};
     cobra-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "cobra-mode";
@@ -8899,12 +8986,12 @@
     colemak-evil = callPackage ({ evil, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "colemak-evil";
-        version = "20140508.1612";
+        version = "20170401.1626";
         src = fetchFromGitHub {
           owner = "patbl";
           repo = "colemak-evil";
-          rev = "624985835a9e8192c687b99f7d59e7d01713c453";
-          sha256 = "1bwbqb9j5cn9b42n4w8nr6sqyk40xcp06mnxn9f28w4hnjd12pqj";
+          rev = "b01296a50ee225d0e21e81f99c3c01432f89a7c7";
+          sha256 = "09ipxdwvi1bsicl67fbpd5aq5g9ws9frim9q24y7h6srynj4awa7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0f0750a3f9537782ee61d6e56c51ce7b86def12e/recipes/colemak-evil";
@@ -8985,13 +9072,13 @@
         pname = "color-theme";
         version = "20080305.34";
         src = fetchbzr {
-          url = "http://bzr.savannah.gnu.org/r/color-theme/trunk";
+          url = "https://bzr.savannah.gnu.org/r/color-theme/trunk";
           rev = "57";
           sha256 = "17bidzq9kiz250gal1fn9mg8gf8l749nz69z0awpc4x2222wxxiz";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d49f86519b1340420a5ee587de77a3a6fa5791c3/recipes/color-theme";
-          sha256 = "1p4bjh8a9f6ixmwwnyjb520myk3bww1v9w6427za07v68m9cdh79";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/color-theme";
+          sha256 = "1ds098v50p4g6ji0zy7m5nyj2kadm3l3v0pnb01wkjjx6anh3qsy";
           name = "color-theme";
         };
         packageRequires = [];
@@ -9087,12 +9174,12 @@
     color-theme-sanityinc-tomorrow = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "color-theme-sanityinc-tomorrow";
-        version = "20170106.1620";
+        version = "20170330.33";
         src = fetchFromGitHub {
           owner = "purcell";
           repo = "color-theme-sanityinc-tomorrow";
-          rev = "ed7bcd2dd40989c99fe0ff13802432de8e0e8edd";
-          sha256 = "0z65y0wda3rwymmjy7q8g4h1ar1a9crqgf3i8y9cyq5n8bmc5z7c";
+          rev = "56d9c31a6bea3657363f79d5987d4afa6a4caf41";
+          sha256 = "19aw5bac7sgyj70g093ds43ddx69mqrwgabx0wvjcg84kfggl6j4";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/color-theme-sanityinc-tomorrow";
@@ -9357,12 +9444,12 @@
     company = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "company";
-        version = "20170328.1748";
+        version = "20170415.1248";
         src = fetchFromGitHub {
           owner = "company-mode";
           repo = "company-mode";
-          rev = "f1499404163d8148e7a6303a8598f9c0f696d1cb";
-          sha256 = "1ncfvf6ndqnn95m02ij66l7674h7chzgwg2r9biymqadzxjxim9i";
+          rev = "b753952d5a0ee288b6c49b2d8dfa9a223ff59715";
+          sha256 = "11725dhdyy67qynp9vld691ljfz2yb9v3ql4j75l7y5jl3gjklwr";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/96e7b4184497d0d0db532947f2801398b72432e4/recipes/company";
@@ -9478,8 +9565,8 @@
           sha256 = "0l4xnqhk3a4szwcfyw90naxasbca8nrnjhnaqiw8zyixhakdbhxz";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7c366ac2949eae48766fce70a7b01bbada6fcc27/recipes/company-bibtex";
-          sha256 = "14s3hxm7avpw59v4sz0d3drjzin745rczp93rcv4s7i3a7kdmn30";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/company-bibtex";
+          sha256 = "1b96p5qyxl6jlq0kz0dbma5pwvgqcy4x4gmpknjqrjabafbq1ynn";
           name = "company-bibtex";
         };
         packageRequires = [ cl-lib company parsebib ];
@@ -9779,8 +9866,8 @@
           sha256 = "02gq083lpbszy8pf7s5j61bjlm0hacv4md4g17n0q6448rix9yny";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a226f04b009780ebdf106534916869610d6f7264/recipes/company-ghci";
-          sha256 = "0h9hqfb8fm90h87bi3myl84nppbbminhnvv6jqg62qi9k6snn1iq";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/company-ghci";
+          sha256 = "0q71qil4sndg72s2g5yg17w3n102wlba37y9jbx0l7hisa5l11gi";
           name = "company-ghci";
         };
         packageRequires = [ company haskell-mode ];
@@ -9792,12 +9879,12 @@
     company-go = callPackage ({ company, fetchFromGitHub, fetchurl, go-mode, lib, melpaBuild }:
     melpaBuild {
         pname = "company-go";
-        version = "20170303.909";
+        version = "20170401.345";
         src = fetchFromGitHub {
           owner = "nsf";
           repo = "gocode";
-          rev = "007b034ad7b6d5b70bd18348fc7609a9fdcbad18";
-          sha256 = "1cy7fjbip8c9pmv91bk4kcjcl5qdz3an2i78ywlb3b2qhsac21kc";
+          rev = "1ed1baa46aeda2ce7de181161d4e2d369a740ce1";
+          sha256 = "1ywyvppqyv6r52jagjn45nbrx9r5hsr2b3nxaya8sxsrkjv6hsn7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/04867a574773e8794335a2664d4f5e8b243f3ec9/recipes/company-go";
@@ -10065,12 +10152,12 @@
     company-quickhelp = callPackage ({ company, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, pos-tip }:
     melpaBuild {
         pname = "company-quickhelp";
-        version = "20170226.522";
+        version = "20170416.526";
         src = fetchFromGitHub {
           owner = "expez";
           repo = "company-quickhelp";
-          rev = "30197a39ddedef550fd98803805dc15f844fc3c6";
-          sha256 = "1a972l0y58bjpbnmxd2h33arx26naq9f8dbq2vka2axigpy4455r";
+          rev = "81d9081fa68ef16ccd11ecc6296bf870d47d11f0";
+          sha256 = "1fp7niq3xyp3xdqmbf6hzdz0g6p4rpk9lf4vhg2619qmkzh3k1d7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/022cc4fee54bb0194822947c70058145e2980b94/recipes/company-quickhelp";
@@ -10131,6 +10218,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    company-rtags = callPackage ({ company, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, rtags }:
+    melpaBuild {
+        pname = "company-rtags";
+        version = "20170405.2311";
+        src = fetchFromGitHub {
+          owner = "Andersbakken";
+          repo = "rtags";
+          rev = "f1f8709556f25d0cef12b1d4dff5ca0b09a890a0";
+          sha256 = "05r888crk8y5fi4xvarrnr89wjjrrzzdr4bfmd0kzq83vs0azr77";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/company-rtags";
+          sha256 = "0dicxbp3xn02pflrpfndj7hs494prvz64llsk1xpc2z23kfarp6f";
+          name = "company-rtags";
+        };
+        packageRequires = [ company emacs rtags ];
+        meta = {
+          homepage = "https://melpa.org/#/company-rtags";
+          license = lib.licenses.free;
+        };
+      }) {};
     company-shell = callPackage ({ cl-lib ? null, company, dash, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "company-shell";
@@ -10247,8 +10355,8 @@
           sha256 = "0pjxahrhvz7l45whqlgm6n4mvqqxc8zs1dv33p3b498hyb83f52j";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2cda69dc7d45087fa9a3e0460d2b12a1dce1a7b3/recipes/company-web";
-          sha256 = "0dj0m6wcc8cyvblp9b5b3am95gc18j9y4va44hvljxv1h7l5hhvy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/company-web";
+          sha256 = "1q2am684l4d038a3ymyy6gg2ds9lq5mcfc4in8dmvap5grdhia4b";
           name = "company-web";
         };
         packageRequires = [ cl-lib company dash web-completion-data ];
@@ -10285,12 +10393,12 @@
         src = fetchFromGitHub {
           owner = "abingham";
           repo = "emacs-ycmd";
-          rev = "8fbdaeaec7704155a047ac17c11d4cf4208f5f79";
-          sha256 = "0hvvyficrdxwwg9gyyzmvdsx7v1dh07qrzcvcdn1lq1q1shwcng9";
+          rev = "35553f0e8b84f6b1dc149b84dedb52b72a64240a";
+          sha256 = "1cwbpl2mi63faxj7izl97qn7gc9g1wy8xig89d2yxyv3isb65la2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1138c8cc239183a2435ce8c1a6df5163e5fed2ea/recipes/company-ycmd";
-          sha256 = "0fqmkb0q8ai605jzn2kwd585b2alwxbmnb3yqnn9fgkcvyc9f0pk";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/company-ycmd";
+          sha256 = "1dycbp2q8grvv94mwp9n8s7xpz2zjs05l3lf471j3nlbk6xfsn5d";
           name = "company-ycmd";
         };
         packageRequires = [ company dash deferred f let-alist s ycmd ];
@@ -10348,8 +10456,8 @@
         src = fetchFromGitHub {
           owner = "kiwanami";
           repo = "emacs-deferred";
-          rev = "9668749635472a63e7a9282e2124325405199b79";
-          sha256 = "1ch5br9alvwcpijl9g8w5ypjrah29alpfpk4hjw23rwzyq5p4izq";
+          rev = "7f2bb81e75db895c99611a7a9fbde7c239b757ba";
+          sha256 = "09qnk8xhk5vjn7iqfzg3yzydas47453k1qm22gbmlfxh6lvxsqh2";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8bc29a8d518ce7a584277089bd4654f52ac0f358/recipes/concurrent";
@@ -10603,8 +10711,8 @@
           sha256 = "03wwdd9n7fijrczrrdhn9xisrj7mqhc2q7z4da6fm3q45sy2npqk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/522d8ae8abbc672f09b8893acb77695756746321/recipes/coq-commenter";
-          sha256 = "18whbdsdzyjl9gmbzh49gdv5w3d7fpp8c8g1539adzdxarps36s8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/coq-commenter";
+          sha256 = "07svxfh6wx78lg2r7jssdlipmcwzk8w14vry9fr5wxxi24y37nvg";
           name = "coq-commenter";
         };
         packageRequires = [ cl-lib dash s ];
@@ -10637,12 +10745,12 @@
     counsel = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, swiper }:
     melpaBuild {
         pname = "counsel";
-        version = "20170328.737";
+        version = "20170416.1036";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "swiper";
-          rev = "3fbeaa563916c0e23c6cafa82716e9f2eba44073";
-          sha256 = "14z8f0lx5s63dy7h0x5m6lkhpfbmlq0p64g2r6y3dhswb8zn1pjl";
+          rev = "a3abf3ffd670776da591ae9e5e2d7011b6d6a190";
+          sha256 = "1jn7lry6fdnv9m24m4i5fgvz0qywcx3r08a36l2y1ksb125vank8";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/06c50f32b8d603db0d70e77907e36862cd66b811/recipes/counsel";
@@ -10763,12 +10871,12 @@
     cov = callPackage ({ emacs, f, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
     melpaBuild {
         pname = "cov";
-        version = "20170222.940";
+        version = "20170405.1508";
         src = fetchFromGitHub {
           owner = "AdamNiederer";
           repo = "cov";
-          rev = "41719590b26b20642c31d233858dc27f34b277b3";
-          sha256 = "1ph8hxnwbww194gcqq79ny6p3p396w1dgjr6inkg6f52ylycp25m";
+          rev = "74e8f32433eab6b31357642ad5a7ed79a3dfbd05";
+          sha256 = "100fk11fjj8wx8lm4ln4p4b6brxfgnkxq387v6ikyigr6lascmsw";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d0f35ce436ac157955d6f92de96e14bef9ad69e3/recipes/cov";
@@ -10813,8 +10921,8 @@
           sha256 = "1q6cx6kq68xxqcx7zd9l4szy038i5ifjb82fxs3sn5fv00q0j9vd";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b2f92804e67fac780a0be850fcd0d0e93992ea7a/recipes/coverlay";
-          sha256 = "0p5k9254r3i247h6ll6kjsgw3naiff5lgfkmb2wkc870lzggq0m4";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/coverlay";
+          sha256 = "1n0fblacwps94mhbdwpi22frhqp3pxg4323ghb79rvszb7in9i8j";
           name = "coverlay";
         };
         packageRequires = [ cl-lib emacs ];
@@ -10939,8 +11047,8 @@
           sha256 = "12g6l6xlbs9h24q5lk8yjgk91xqd7r3v7r6czy10r09cmfjmkxbb";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8b528544841995045fb1f8344aaaa38946bb3915/recipes/crappy-jsp-mode";
-          sha256 = "00wj61maib77qldzq06l9v0pbvp9jih75w1xw0ry9mij0r6ca8ii";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/crappy-jsp-mode";
+          sha256 = "17m404kdz9avihz52xd7hn5qx06a6k74gmn0gbhly4gl84w3zc6y";
           name = "crappy-jsp-mode";
         };
         packageRequires = [];
@@ -11002,8 +11110,8 @@
           sha256 = "18c4jfjnhb7asdhwj41g06cp9rz5xd7bbx2s1xvk6gahay27rlrv";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/c97649d365b8e206fb6b88a47e8f1eb8e0bd2450/recipes/creole";
-          sha256 = "1pqgm7m2gzkn65v3qic71c38qiira29cwx11l96qph8h8sf47zw5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/creole";
+          sha256 = "1q1c6f953g39xal1p7rj8dlcx2crk5cz1q07zp8bgp5jx4nd2z9n";
           name = "creole";
         };
         packageRequires = [ kv noflet ];
@@ -11044,8 +11152,8 @@
           sha256 = "1x29garhp1x5h1mwbamwjnfw52w45b39aqxsvcdxmcf730w9pq63";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/906b144e01aed96d62efbc34a8af2973135f6194/recipes/cricbuzz";
-          sha256 = "1ad2afyn3xny3rgb8yy6w87f33idlrmis1vx0b6s8ppafv9z74j0";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cricbuzz";
+          sha256 = "18nmr7rpbylqgfx5q3ps38wx9q1ndj06msgyjyc8lqpipbsz0pip";
           name = "cricbuzz";
         };
         packageRequires = [ dash enlive s ];
@@ -11105,8 +11213,8 @@
           sha256 = "1wjj88zv37ak9zd12d7sy7j261x5y17wxmw5jrzk56shkpdvcbq0";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b4144c2fd45877effd8005abf64019aed651148a/recipes/crosshairs";
-          sha256 = "1gf73li6q5rg1dimzihxq0rdxiqzbl2w78r1qzc9mxw3qj7azxqp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/crosshairs";
+          sha256 = "0s7gh5zrb46hzybmpydb0pad7jinvcwds7i03ndhzwx89rxg3019";
           name = "crosshairs";
         };
         packageRequires = [ col-highlight hl-line-plus vline ];
@@ -11252,8 +11360,8 @@
           sha256 = "1mgc6bd0dzrp1dq1yj8m2qxjnpysd8ppdk2yp96d3zd07zllw4rx";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0c3b5d83fcfb9d03301b95cf13e67549ce0f46e3/recipes/css-eldoc";
-          sha256 = "1f079q3ccrr4drk2hvn4xs4vbrd3hg87xqbk3r9mmjvkagd1v7rf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/css-eldoc";
+          sha256 = "0k0yzpqwfh5rg8sbv60simdslag514768i0naimm8vyrvv87fzny";
           name = "css-eldoc";
         };
         packageRequires = [];
@@ -11477,8 +11585,8 @@
           sha256 = "026x1mbjrf68xrv970jbf131d26rj0nmzi1x0c8r6qdr02pw2jy1";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/871d02540951a217ea3d4aed9ce6b66a77223fbf/recipes/cursor-chg";
-          sha256 = "0d1ilall8c1y4w014wks9yx4fz743hvx5lc8jqxxlrq7pmqyqdxk";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cursor-chg";
+          sha256 = "1yam5hz1v16g2v19j3dmgbj7n2rj8dsqyr5hwfyc031s6q7f649x";
           name = "cursor-chg";
         };
         packageRequires = [];
@@ -11677,8 +11785,8 @@
         src = fetchFromGitHub {
           owner = "cython";
           repo = "cython";
-          rev = "bd0bd943792530194e9bea86e4cf6fe9f8261182";
-          sha256 = "1z5li1h376978iby273ynvx52phdnsgsil8vlpj98izf19qnsmmq";
+          rev = "0558bdb4d1ed4da734ac7194f0bdbe7c030cc70e";
+          sha256 = "18hf07pyyxdgb1li26yf26g77xqdpmgkxqkhxsq5aa8chj6zv900";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/be9bfabe3f79153cb859efc7c3051db244a63879/recipes/cython-mode";
@@ -11778,12 +11886,12 @@
     danneskjold-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "danneskjold-theme";
-        version = "20170322.1007";
+        version = "20170404.426";
         src = fetchFromGitHub {
           owner = "rails-to-cosmos";
           repo = "danneskjold-theme";
-          rev = "2ea398532e8229e329f6ea9b264ffd42068b16b9";
-          sha256 = "1zxj81dqci73zf01h9rz3gkd0qfd7n8238jzkjsmyhyvq7l644hz";
+          rev = "e7066a1310b2437d1b68ec5afd800d06977dd687";
+          sha256 = "116hyd5c74m713xmzsl9panvn7014r7bg4267wvla6844n1qshp8";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/557244a3b60c7cd3ca964ff843aa1e9d5a1e32ec/recipes/danneskjold-theme";
@@ -11799,12 +11907,12 @@
     dante = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild }:
     melpaBuild {
         pname = "dante";
-        version = "20170328.232";
+        version = "20170410.700";
         src = fetchFromGitHub {
           owner = "jyp";
           repo = "dante";
-          rev = "0fe8c8243e5ce1aa6c241d4e5d51e489b1fbd512";
-          sha256 = "15r1bczfxbp7rgxh0gq1516kypgnkm4wsf9svl0fxzdcayaawl3k";
+          rev = "d93001794bb505b32708d7d7b1755ef0bbe13c82";
+          sha256 = "11dpdvn3lkd2yrzbibd7xqx1pznhn6i8wrp9bzg1yagn27jsyry8";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5afa8226077cbda4b76f52734cf8e0b745ab88e8/recipes/dante";
@@ -11988,12 +12096,12 @@
     darktooth-theme = callPackage ({ autothemer, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "darktooth-theme";
-        version = "20170328.1604";
+        version = "20170401.1521";
         src = fetchFromGitHub {
           owner = "emacsfodder";
           repo = "emacs-theme-darktooth";
-          rev = "419746ab4c06bd2146ff6ddf68aa74dfd73d8c96";
-          sha256 = "0gxvz617np99x5ynh7y0cammxmwxp42kcnnqxl5ljknn4lwbapar";
+          rev = "fb66992286c009e594eb7bb9ee2f1cdc3bebb555";
+          sha256 = "0n7qgnyl4rdvgwjb7gz6m1c22mxwg8bp08r7lz27z0b1bcyw94sc";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b7f62ac1566ced7332e83253f79078dc30cb7889/recipes/darktooth-theme";
@@ -12017,8 +12125,8 @@
           sha256 = "1bs3p72gxlcviz0l2dl1h92708j0c3ly0kwpdbr370i2hdv0l8ys";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7d9cb763cb8e929d9442be8d06e9af02de90714a/recipes/dart-mode";
-          sha256 = "0wxfh8v716dhrmx1klhpnsrlsj66llk8brmwryjg2h7c391sb5ff";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dart-mode";
+          sha256 = "00zvgxfxgk5jair796l6appyq5hc7hs2s2wglv1j4l7g50b05cla";
           name = "dart-mode";
         };
         packageRequires = [ cl-lib dash flycheck ];
@@ -12093,12 +12201,12 @@
     dashboard = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, page-break-lines }:
     melpaBuild {
         pname = "dashboard";
-        version = "20161229.1711";
+        version = "20170408.1653";
         src = fetchFromGitHub {
           owner = "rakanalh";
           repo = "emacs-dashboard";
-          rev = "89875ba44ef9f69dd561591ea8ec6d39a0b4aa6d";
-          sha256 = "0qx2kb30s1z0mlr2sk1jx538v768g7df7v5ymmnvipl8xkr2ams3";
+          rev = "b409028a42059c70ac3a64e5a033477f27607101";
+          sha256 = "1s5lrc1vgc9q82nyz43sg094za0ncimr67p4mhmxqqxxchfk75x7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e9a79341ccaa82a8c065e71c02fe6aee22007c66/recipes/dashboard";
@@ -12351,8 +12459,8 @@
           sha256 = "1wi70r56pd5z0x4dp4m58p9asq03j74kdm4fi9vai83vsl2z9amq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/13098bae76a3386689a9bf9c12f25b9a9b15145c/recipes/debpaste";
-          sha256 = "1vgirfy4vdqkhllnnmcplhwmzqqwca3la5jfvvansykqriwbq9lw";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/debpaste";
+          sha256 = "0h3hx3vgdhchmndabmzprddq3bxd80jnv4xvma9v6k1v07bl721v";
           name = "debpaste";
         };
         packageRequires = [ xml-rpc ];
@@ -12410,8 +12518,8 @@
         src = fetchFromGitHub {
           owner = "preetpalS";
           repo = "decl.el";
-          rev = "500ae2da41c65f4e35abf5cd352411ce7ed3f9df";
-          sha256 = "1slfh4sjvprmg0pa4pq1h5jiwiszak7l8hakbvjy1ycbh97gnd17";
+          rev = "b25825de88289fab5212dfd6d18874ca2748123f";
+          sha256 = "1imz3w41vblw9gpw42v6hlrz2zdzd6kp5pfvb97v8dw8mc06pyvs";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8c2ecd46180643a0c493e05ec86fe50bc1e55146/recipes/decl";
@@ -12490,16 +12598,16 @@
     deferred = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "deferred";
-        version = "20161228.1930";
+        version = "20170331.1759";
         src = fetchFromGitHub {
           owner = "kiwanami";
           repo = "emacs-deferred";
-          rev = "9668749635472a63e7a9282e2124325405199b79";
-          sha256 = "1ch5br9alvwcpijl9g8w5ypjrah29alpfpk4hjw23rwzyq5p4izq";
+          rev = "7f2bb81e75db895c99611a7a9fbde7c239b757ba";
+          sha256 = "09qnk8xhk5vjn7iqfzg3yzydas47453k1qm22gbmlfxh6lvxsqh2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0e9a114d85f630648d05a7b552370fa8413da0c2/recipes/deferred";
-          sha256 = "0axbvxrdjgxk4d1bd9ar4r5nnacsi8r0d6649x7mnhqk12940mnr";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/deferred";
+          sha256 = "1i8jfapzmw86iqwhnnlqmcj6zh4hyhizdcwjxcnxdj6kvxmwyysm";
           name = "deferred";
         };
         packageRequires = [ emacs ];
@@ -12742,13 +12850,13 @@
         pname = "dic-lookup-w3m";
         version = "20170315.709";
         src = fetchsvn {
-          url = "http://svn.osdn.jp/svnroot/dic-lookup-w3m/";
+          url = "https://svn.osdn.jp/svnroot/dic-lookup-w3m/";
           rev = "96";
           sha256 = "17g0bl94qmzalh3m6r6q10q06864d1h1nx5i7fddsamakmg89ziw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6627b66fff02513ee467ed0f4436fb5cd400a81d/recipes/dic-lookup-w3m";
-          sha256 = "0zc0phym431bjqg0r8n5xsa98m52xnbhpqlh0jcvcy02nbmdc584";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/dic-lookup-w3m";
+          sha256 = "1siqrarpyqjh1h350dsyca993fy6qin4apgyjm4vpp6awip8xfp0";
           name = "dic-lookup-w3m";
         };
         packageRequires = [ stem w3m ];
@@ -12810,8 +12918,8 @@
           sha256 = "185gl1p80yx68d2hzawhrz26zy75z30qr1lb7c0gzmk5ryy5yzgv";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cf8fc25abd2fb91ec6a6ba951d89a19ca4f5571f/recipes/diff-hl";
-          sha256 = "0kw0v9xcqidhf26qzrqwdlav2zhq32xx91k7akd2536jpji5pbn6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/diff-hl";
+          sha256 = "135jgjfaiq6kj72ji5k22v4pqc8gjjmcv80r5rkjbjigzlvcvvj2";
           name = "diff-hl";
         };
         packageRequires = [ cl-lib emacs ];
@@ -12973,8 +13081,8 @@
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "dionysos";
-          rev = "98bc789d20e41020d6e62d63d3c78f8032fa4bf2";
-          sha256 = "1hma72dyn3w6cwd3vrgg4hdlrxgwqs55cjyxb05vs9csz7r42208";
+          rev = "0aac21caadabc5a7f09e18a9dcb02f3dec26588b";
+          sha256 = "1g6p9cr3p85i7ay3jmvn7f8c5k8d49fcynb3ymns7rgsf3ypvpyc";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/890445eca3c555acd2639a6f509c8e83b687f2bd/recipes/dionysos";
@@ -13036,8 +13144,8 @@
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "dired-hacks";
-          rev = "342d75f1240ebe17959ec25a5b050b40156e10cb";
-          sha256 = "18s8jax1k1p1x3r2rl398r1cxy0i2ss9vv23bgv3dna4hvwv65jc";
+          rev = "61eec5b692d06e87644cb2eb6519e44a92c86681";
+          sha256 = "0nanyz56ladq6n4qwsncz9v55ldhzb126jgxf1p2f3gg9pp772m6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/568e524b7bdf91b31655bdbb30fe9481d7a0ffbf/recipes/dired-avfs";
@@ -13058,8 +13166,8 @@
           sha256 = "1ddrhj1kw0wl7jbs9jn067vfffsvqhz4izfw9f7ihxz34fdl2iza";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8ed2327efe099420e53e7275eefeef74842068e8/recipes/dired-details";
-          sha256 = "1390vl3i4qbnl7lbia98wznhf6x887d24f8p7146fpqjsiwbm5ck";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dired-details";
+          sha256 = "0kmcnx9zvfdwvq100nazgypkfwlgxgrbimprc5pysid8rrxyzws7";
           name = "dired-details";
         };
         packageRequires = [];
@@ -13077,8 +13185,8 @@
           sha256 = "0821swa6qp2bs16r1pfamc7n62002rp8v0vimamw33cqxn2d0h6x";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0b6a13a5dfd977979d3185139000e7a639d32ec4/recipes/dired-details+";
-          sha256 = "1gzr3z4nyzip299z08mignhigxr7drak7rv9z6gmdjrika9a29lx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dired-details+";
+          sha256 = "0b4y01hk839z6m7fx5bwa80gwylvkp15niri8vrjak4vgj5g5cg9";
           name = "dired-details-plus";
         };
         packageRequires = [ dired-details ];
@@ -13153,12 +13261,12 @@
     dired-fdclone = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "dired-fdclone";
-        version = "20150417.132";
+        version = "20170413.747";
         src = fetchFromGitHub {
           owner = "knu";
           repo = "dired-fdclone.el";
-          rev = "e9bf4f16248cb5d187a323b7887d236a4a203c59";
-          sha256 = "1lnqjkbzryv655n16xj1c5bxck2jb5ccy8yckz1wp5yikkr06ba8";
+          rev = "f55b69e5cd1d45699a0f37468ac8e20fa7a0cff6";
+          sha256 = "193mf90d5vds8hswkxasda267ifr6w55vn4pph15lkbmp33wa50n";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8a0ddc10b11772d72a473e8d24ab4641bf4239a4/recipes/dired-fdclone";
@@ -13199,8 +13307,8 @@
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "dired-hacks";
-          rev = "342d75f1240ebe17959ec25a5b050b40156e10cb";
-          sha256 = "18s8jax1k1p1x3r2rl398r1cxy0i2ss9vv23bgv3dna4hvwv65jc";
+          rev = "61eec5b692d06e87644cb2eb6519e44a92c86681";
+          sha256 = "0nanyz56ladq6n4qwsncz9v55ldhzb126jgxf1p2f3gg9pp772m6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/568e524b7bdf91b31655bdbb30fe9481d7a0ffbf/recipes/dired-filter";
@@ -13220,8 +13328,8 @@
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "dired-hacks";
-          rev = "342d75f1240ebe17959ec25a5b050b40156e10cb";
-          sha256 = "18s8jax1k1p1x3r2rl398r1cxy0i2ss9vv23bgv3dna4hvwv65jc";
+          rev = "61eec5b692d06e87644cb2eb6519e44a92c86681";
+          sha256 = "0nanyz56ladq6n4qwsncz9v55ldhzb126jgxf1p2f3gg9pp772m6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/568e524b7bdf91b31655bdbb30fe9481d7a0ffbf/recipes/dired-hacks-utils";
@@ -13346,8 +13454,8 @@
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "dired-hacks";
-          rev = "342d75f1240ebe17959ec25a5b050b40156e10cb";
-          sha256 = "18s8jax1k1p1x3r2rl398r1cxy0i2ss9vv23bgv3dna4hvwv65jc";
+          rev = "61eec5b692d06e87644cb2eb6519e44a92c86681";
+          sha256 = "0nanyz56ladq6n4qwsncz9v55ldhzb126jgxf1p2f3gg9pp772m6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8994330f90a925df17ae425ccdc87865df8e19cd/recipes/dired-narrow";
@@ -13367,8 +13475,8 @@
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "dired-hacks";
-          rev = "342d75f1240ebe17959ec25a5b050b40156e10cb";
-          sha256 = "18s8jax1k1p1x3r2rl398r1cxy0i2ss9vv23bgv3dna4hvwv65jc";
+          rev = "61eec5b692d06e87644cb2eb6519e44a92c86681";
+          sha256 = "0nanyz56ladq6n4qwsncz9v55ldhzb126jgxf1p2f3gg9pp772m6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/568e524b7bdf91b31655bdbb30fe9481d7a0ffbf/recipes/dired-open";
@@ -13383,10 +13491,10 @@
       }) {};
     dired-plus = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
         pname = "dired-plus";
-        version = "20170324.1112";
+        version = "20170409.1822";
         src = fetchurl {
           url = "https://www.emacswiki.org/emacs/download/dired+.el";
-          sha256 = "00w4d3zw789cl0ch7h0nk4mzlb88806cbq6mcslwf82732vxzkv0";
+          sha256 = "0anrf0cax9ah5mlxxbav7f2vvv50l7psi32rgn3z3hv4z34fmkrx";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4327b4dd464ebb00c2acdd496274dedf912cdf92/recipes/dired+";
@@ -13427,8 +13535,8 @@
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "dired-hacks";
-          rev = "342d75f1240ebe17959ec25a5b050b40156e10cb";
-          sha256 = "18s8jax1k1p1x3r2rl398r1cxy0i2ss9vv23bgv3dna4hvwv65jc";
+          rev = "61eec5b692d06e87644cb2eb6519e44a92c86681";
+          sha256 = "0nanyz56ladq6n4qwsncz9v55ldhzb126jgxf1p2f3gg9pp772m6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/568e524b7bdf91b31655bdbb30fe9481d7a0ffbf/recipes/dired-rainbow";
@@ -13448,8 +13556,8 @@
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "dired-hacks";
-          rev = "342d75f1240ebe17959ec25a5b050b40156e10cb";
-          sha256 = "18s8jax1k1p1x3r2rl398r1cxy0i2ss9vv23bgv3dna4hvwv65jc";
+          rev = "61eec5b692d06e87644cb2eb6519e44a92c86681";
+          sha256 = "0nanyz56ladq6n4qwsncz9v55ldhzb126jgxf1p2f3gg9pp772m6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c03f6f8c779c8784f52adb20b266404cb537113a/recipes/dired-ranger";
@@ -13545,8 +13653,8 @@
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "dired-hacks";
-          rev = "342d75f1240ebe17959ec25a5b050b40156e10cb";
-          sha256 = "18s8jax1k1p1x3r2rl398r1cxy0i2ss9vv23bgv3dna4hvwv65jc";
+          rev = "61eec5b692d06e87644cb2eb6519e44a92c86681";
+          sha256 = "0nanyz56ladq6n4qwsncz9v55ldhzb126jgxf1p2f3gg9pp772m6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d6a947ac9476f10b95a3c153ec784d2a8330dd4c/recipes/dired-subtree";
@@ -13685,17 +13793,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    dirtree = callPackage ({ fetchurl, lib, melpaBuild, tree-mode, windata }:
+    dirtree = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, tree-mode, windata }:
     melpaBuild {
         pname = "dirtree";
         version = "20140129.32";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/dirtree.el";
-          sha256 = "1q03q4j0wkbg9p2nzf1kb7l517b21mskp2v52i95jbxh09igbjjx";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "dirtree";
+          rev = "ba55f1e716e386fdd37cb8e7f48616e405dc7251";
+          sha256 = "0abs3r4zzfnf4igiakrv3bpyxz7qlnw26l57rynsk7c3w3s5ya29";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/343a34103fd435e01bb64e90536cc1e4da4e83c4/recipes/dirtree";
-          sha256 = "0wfz9ks5iha2n0rya9yjmrb6f9lhp620iaqi92lw9smm7w83zj29";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/dirtree";
+          sha256 = "1fm003rix3sdfx8fq3ab5s8b2q65gbkjsn1j3fg5qmhv56p7lrs9";
           name = "dirtree";
         };
         packageRequires = [ tree-mode windata ];
@@ -13901,8 +14011,8 @@
           sha256 = "075gj81rnhrvv061wnldixpfmlsyfbnvacnk107z6f9v3m2m3vl1";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/84d19999b8387e8b71215675cf1c15873314d90e/recipes/dispass";
-          sha256 = "08c1s4zgl4rha10mva48cfkxzrqnpdhy03pxq51ihw94v6vxzg3z";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dispass";
+          sha256 = "09c9v41rh63hjpdh377rbfvpial33r41dn5bss3632fi34az5l9n";
           name = "dispass";
         };
         packageRequires = [ dash ];
@@ -14047,8 +14157,8 @@
           sha256 = "120zgp38nz4ssid6bv0zy5rnf2claa5s880incgljqyl0vmj9nq5";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3f56de1465d1b19dbefff62d3a1f2c4ee86ac0c4/recipes/dizzee";
-          sha256 = "1axydags80jkyhpzp3m4gyplwr9k3a13w6vmrrzcv161nln7jhhs";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dizzee";
+          sha256 = "14y10k8s65cyn86m1z77817436m89l0xpwd1wr4d7qp3x2mmn215";
           name = "dizzee";
         };
         packageRequires = [];
@@ -14257,8 +14367,8 @@
           sha256 = "0z28j7x7wgkc1cg1q1kz1lhdx1v1n6s88ixgkm8hn458h9bfnr3n";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d32848d2de20cc71669b88699acaa0d306f009f5/recipes/dna-mode";
-          sha256 = "0ak3g152q3xxkiz1a4pl5y2vgbigbbmbc95fggirbcrh52zkzgk9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dna-mode";
+          sha256 = "06vprwv1v4jzqzi2nj9hbhnypnvqxmixls8yf91hzwlk3fdkdywf";
           name = "dna-mode";
         };
         packageRequires = [];
@@ -14412,8 +14522,8 @@
           sha256 = "0hynymx3gm9nqmpb0a9j8d9g298vsl0gxa9f1yx9xp60mq6y7l3r";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e46cf6a57b93ddfda8e2d6e74cee8d0df2cb1ec7/recipes/dokuwiki";
-          sha256 = "1vi6crl5y3g1p6xcpqzybmidn09cdf4gplmrvb2nkc94pyd9qxnw";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dokuwiki";
+          sha256 = "0wfzzxx3n75zgxk06rlq7053hla84k79mk911by4jwk6km5adk55";
           name = "dokuwiki";
         };
         packageRequires = [ emacs xml-rpc ];
@@ -14488,12 +14598,12 @@
     doom-themes = callPackage ({ all-the-icons, cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "doom-themes";
-        version = "20170316.1237";
+        version = "20170411.1533";
         src = fetchFromGitHub {
           owner = "hlissner";
           repo = "emacs-doom-theme";
-          rev = "2266ef462d3c0a4b79887d71447a45cf57b6a1d7";
-          sha256 = "0p3f364f5p5wgma5c5iyknm73bvqvkfakndrn2r0k7phn29vw9fb";
+          rev = "1618b28f188b2ca547c2cceb16ad8e6ac9ec5a83";
+          sha256 = "1bxfx7i9gdp870x4qkqkmqqb9jszi1hn345h5xwqajik6ys7d2cj";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/73fd9f3c2352ea1af49166c2fe586d0410614081/recipes/doom-themes";
@@ -14580,24 +14690,6 @@
           license = lib.licenses.free;
         };
       }) {};
-    dos = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
-        pname = "dos";
-        version = "20140808.1435";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/dos.el";
-          sha256 = "0sfmcd1rq6wih9q7d9vkcfrw6gf7309mm7491jx091ij8m4p8ypp";
-        };
-        recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6c536abcb5a544e22bb339effa5bf39df96c12b9/recipes/dos";
-          sha256 = "0cpijbqpci96s0d6rwqz5bbi9b0zkan1bg8vdgib1f87r7g980nc";
-          name = "dos";
-        };
-        packageRequires = [];
-        meta = {
-          homepage = "https://melpa.org/#/dos";
-          license = lib.licenses.free;
-        };
-      }) {};
     dot-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "dot-mode";
@@ -14609,8 +14701,8 @@
           sha256 = "1pvmypsz5c5jkx4g3hvznayyv9cs9yr5sgf251prxnqcl0ivc0y9";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b3082fb1c8a5e0439b3ae5e968845aecd99d28e2/recipes/dot-mode";
-          sha256 = "18dj3bvnm28j7mllv4f575ahnhzziinycg48wbr73qi70vq059z8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dot-mode";
+          sha256 = "039ylmbvw0wb3i2w4qn3dhckz7y3swbid4hwjcxljy4szc709p6k";
           name = "dot-mode";
         };
         packageRequires = [ emacs ];
@@ -14672,8 +14764,8 @@
           sha256 = "03n3k6a40lw9m1ycf62g6vll4gr2kr2509vjp1dkfq722xwrw7zk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/21061b3a61a0e5e3f99b2fa2a52e620d639dcc82/recipes/dpaste";
-          sha256 = "17mrdkldv4gfwm6ggc047l4a69xg2fy9f9mjbphkjl0p5nr6b4kz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dpaste";
+          sha256 = "0wrfy9w0yf5m15vmhg4l880v92cy557g332xniqs77ab0sga4vgc";
           name = "dpaste";
         };
         packageRequires = [];
@@ -14693,8 +14785,8 @@
           sha256 = "1avpg0cgzk8d6g1q0ryx41lkcdgkm0mkzr5xr32xm28dzrfmgd4z";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2c7b89dc6ab23e4a6e70765b7fcb4885387ce65f/recipes/dpaste_de";
-          sha256 = "0dql9qsl5gj51i3l2grl7nhw0ign8h4xa4jnhwn196j71c0rdwwp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dpaste_de";
+          sha256 = "0022dd8l7jsyl0lv9x6iz882ln71js8brqcbiqz001zv45yrgvy0";
           name = "dpaste_de";
         };
         packageRequires = [ web ];
@@ -14727,12 +14819,12 @@
     dracula-theme = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "dracula-theme";
-        version = "20170308.2107";
+        version = "20170412.845";
         src = fetchFromGitHub {
           owner = "dracula";
           repo = "emacs";
-          rev = "3ba76624318944cbadd95865dc3f50af01cb6241";
-          sha256 = "1x74nxxdv87sw0prd20nz2i0mxna29spy9dwm5qp6skl09bjwrfn";
+          rev = "62df5de68c73d34faaa0191a92ce3ebce589bf24";
+          sha256 = "0wpbscqaszr2mg0hijamcz6l9nknsi12mwdbib16ghlh6y9mj4ia";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d63cb8906726f106e65f7d9895b49a38ffebf8d5/recipes/dracula-theme";
@@ -14861,8 +14953,8 @@
           sha256 = "1s4cz5s0mw733ak9ps62fs150y3psqmb6v5s6s88jjfsi0r03c0s";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/afc3754da223a33f3f06c199951b098acd18e5f5/recipes/dropbox";
-          sha256 = "0ak6g2d2sq026ml6cmn6v1qz7sczkplgv2j9zq9zgzafihyyzs5f";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dropbox";
+          sha256 = "1dqjsn7wkjjvbwq3kgdd7bvwrirappwnhcwkj2ai19dpx6jd8wym";
           name = "dropbox";
         };
         packageRequires = [ json oauth ];
@@ -14879,8 +14971,8 @@
           sha256 = "1szy46sk3nvlbb3yzk1s983281kkf507xr3fkclkki3d3x31n08a";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/364c9db68f34fc617a706eb1d7b4304ef4a88714/recipes/dropdown-list";
-          sha256 = "14i9w897gnb3mvnkbzhzij04bgr551r8km310mbrmzzag54w077z";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dropdown-list";
+          sha256 = "1zqqa4872r96fp377bcz6pd1djz59ami5k09abb62dw854sc5xfj";
           name = "dropdown-list";
         };
         packageRequires = [];
@@ -14935,13 +15027,13 @@
         pname = "dsvn";
         version = "20130120.1257";
         src = fetchsvn {
-          url = "http://svn.apache.org/repos/asf/subversion/trunk/contrib/client-side/emacs/";
-          rev = "1789422";
+          url = "https://svn.apache.org/repos/asf/subversion/trunk/contrib/client-side/emacs/";
+          rev = "1791699";
           sha256 = "016dxpzm1zba8rag7czynlk58hys4xab4mz1nkry5bfihknpzcrq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a6da3640b72496e2b32e6ed21aa39df87af9f7f3/recipes/dsvn";
-          sha256 = "12cviq6v08anif762a5qav3l8ircp81kmnl9q4yl6bkh9zxv7vy6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dsvn";
+          sha256 = "1y55s187q2xiab31vs95jjjp1a3qzwkdwn7p5man666scbjrdyl5";
           name = "dsvn";
         };
         packageRequires = [];
@@ -14961,8 +15053,8 @@
           sha256 = "1blfx3r2xd3idbfjrx44ma3x1d83xp67il2s2bmdwa8qz92z99lf";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a5af0cec2b49ccc6807939162184cc40558a8716/recipes/dtrace-script-mode";
-          sha256 = "0v29rzlyccrc37052w2qmvjaii84jihhp736l807b0hjjfryras4";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dtrace-script-mode";
+          sha256 = "00ar2qahgqpf4an6v9lbzgj73ylbavvigsm8kqdq94ghm4awxi4z";
           name = "dtrace-script-mode";
         };
         packageRequires = [];
@@ -15037,16 +15129,16 @@
     dumb-jump = callPackage ({ dash, emacs, f, fetchFromGitHub, fetchurl, lib, melpaBuild, popup, s }:
     melpaBuild {
         pname = "dumb-jump";
-        version = "20170328.2013";
+        version = "20170412.1246";
         src = fetchFromGitHub {
           owner = "jacktasia";
           repo = "dumb-jump";
-          rev = "1df89e837d4c28c941db879b028f92b3378745d8";
-          sha256 = "19n18a057ngvfqhaancji06abpp3qlqymsygchv0s9v9q6nzfi49";
+          rev = "877fe466c8c60edbd9ea5602185690b1fa599a6b";
+          sha256 = "1wm9kl4sximr75pfw18wxsd3c59qp0i1vn1565f4srfgq71r23yg";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2a60e7c166c2d68e4f719d293014a22139593dde/recipes/dumb-jump";
-          sha256 = "1pgbs2k1g8w7gr65w50fazrmcky6w37c9rvyxqfmh06yx90nj4kc";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dumb-jump";
+          sha256 = "1j90n8gydsp2v07rysz1k5vf6hspybcl27214sib1iz3hbimid1w";
           name = "dumb-jump";
         };
         packageRequires = [ dash emacs f popup s ];
@@ -15097,21 +15189,21 @@
           license = lib.licenses.free;
         };
       }) {};
-    dyalog-mode = callPackage ({ cl-lib ? null, fetchhg, fetchurl, lib, melpaBuild }:
+    dyalog-mode = callPackage ({ cl-lib ? null, emacs, fetchhg, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "dyalog-mode";
-        version = "20170324.419";
+        version = "20170415.628";
         src = fetchhg {
           url = "https://bitbucket.com/harsman/dyalog-mode";
-          rev = "6f4b44fb1966";
-          sha256 = "10d69aah8kq5ln3rcd2vcdck1vvqq5x47kk0bk4vpphh26j14jjp";
+          rev = "6cc0b8488a17";
+          sha256 = "03x94q315yq5kg2wvsp508a9hxl625iji3b84kywmg5hb3w5r9qn";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/dyalog-mode";
           sha256 = "1y17nd2xd8b3mhaybws8dr7yanzwqij9gzfywisy65ckflm9kfyq";
           name = "dyalog-mode";
         };
-        packageRequires = [ cl-lib ];
+        packageRequires = [ cl-lib emacs ];
         meta = {
           homepage = "https://melpa.org/#/dyalog-mode";
           license = lib.licenses.free;
@@ -15414,16 +15506,16 @@
     easy-hugo = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "easy-hugo";
-        version = "20170328.2015";
+        version = "20170409.2149";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-easy-hugo";
-          rev = "544b6ef850c10e6bb15d0ac9a6474d471044309a";
-          sha256 = "1j0ffs9517ba29lwd92sk30ih6sxlx2ychrr6lzc0a3lzdlzfaqz";
+          rev = "b994c79a739fad4999ddc0d2b5a152bf0a4dbc7a";
+          sha256 = "1j2b2nwa4h95s2dr879iaa6zxy9gvvljvx5ksjirgmy6vf36lb0q";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/544fa512dc3e6379f451fd9b596d74a5849c87d2/recipes/easy-hugo";
-          sha256 = "07pa48rv5aqpz7fwkbc48scvnvnvg1v3qkapn2h1qllfc0h2nn5i";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/easy-hugo";
+          sha256 = "1m7iw6njxxsk82agyqay277iql578b3wz6z9wjs8ls30ps8s2b8g";
           name = "easy-hugo";
         };
         packageRequires = [ emacs ];
@@ -15561,12 +15653,12 @@
     ebib = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, parsebib, seq }:
     melpaBuild {
         pname = "ebib";
-        version = "20170327.141";
+        version = "20170401.1342";
         src = fetchFromGitHub {
           owner = "joostkremers";
           repo = "ebib";
-          rev = "1eea156ea6f1376d474274ce76b1d6864223c47e";
-          sha256 = "0lhpwa4rgxb480gzfp55infr9672fv3b3my72f6wkwhh1k5i5xjb";
+          rev = "a1c8a5045ff31001f0a0dde188e20f23640f5469";
+          sha256 = "1awrkcqk38aash3whihhjrxq9f9b568vpiaihyhcsi0773hl5h3b";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4e39cd8e8b4f61c04fa967def6a653bb22f45f5b/recipes/ebib";
@@ -15667,8 +15759,8 @@
         src = fetchFromGitHub {
           owner = "ecukes";
           repo = "ecukes";
-          rev = "36db74ef44edfc654618d681f3452b9904740f9a";
-          sha256 = "1hc1hb0lnkjanjddcwax783n2fcv5lvi1xl1kszbdzlck4sz1i1r";
+          rev = "277d25cf8fc9548239599244ab15a2268a55b31b";
+          sha256 = "0jh7l4lhbjd7qxqdi8d8mk5j3qxx70x3jdzpw2xw6szcx67lvd3s";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/14cf66e6929db2a0f377612e786aaed9eb12b799/recipes/ecukes";
@@ -15810,12 +15902,12 @@
     ede-php-autoload = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "ede-php-autoload";
-        version = "20170221.1002";
+        version = "20170406.609";
         src = fetchFromGitHub {
           owner = "stevenremot";
           repo = "ede-php-autoload";
-          rev = "8ab5c333ded9110ed2dce90ca7fd89dcb3912dd4";
-          sha256 = "127a5rf21ynw96lw1ydzdvpjpxzccn3dhvc6f24s96sg8r04hpbw";
+          rev = "2aae77b5ca2ce458f56fe67a33d5e84bb9428e5d";
+          sha256 = "1vsmpvip4dwj1jwvj5iswci14xky4mrfpqgh1g8i56p5ql9ifsmr";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8ee9f7fd9cbc3397cd9af34b08b75c3d9d8bc551/recipes/ede-php-autoload";
@@ -15965,8 +16057,8 @@
           sha256 = "0dgac0nk9x4sz4lisxb5badrzpcjqjwgi79hhl1y6mafzm0ncqs2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/688f0b6802d04d133afc3de7371f65b8d5d2bad4/recipes/edit-indirect-region-latex";
-          sha256 = "0lsqz09c4p2gl1xd673783hmmh7y5iq4kw521q7hiza4xbaiwpr3";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/edit-indirect-region-latex";
+          sha256 = "0ys0fpfk259g14wvg0nnkc3wk1dbjjd2n4a636jblgq63w6g3h79";
           name = "edit-indirect-region-latex";
         };
         packageRequires = [ edit-indirect emacs ht ];
@@ -16201,8 +16293,8 @@
         src = fetchFromGitHub {
           owner = "egisatoshi";
           repo = "egison3";
-          rev = "b196db4ca284abfbc63416582fe17cc357551fc2";
-          sha256 = "0sw0cf69yswhgnyp10qjirrb2w2p9y6pc7ni8wbw8l16pmc7vgg0";
+          rev = "a9bec9b4cdaec8fa92bec398c4c5231817e7efad";
+          sha256 = "146jq14xjab996r5ff9nschbrh4zk7grggnj7xm8bxwnr9yv0qv0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f543dd136e2af6c36b12073ea75b3c4d4bc79769/recipes/egison-mode";
@@ -16226,8 +16318,8 @@
           sha256 = "0scnhpj4naaicxp62hd0b5g3kf05gpldbi1z1sfnq4mqi84fnfgx";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0090a628a5d566a887cac0d24b080ee6bafe4612/recipes/ego";
-          sha256 = "02s840chz3v4gdyq01b5i5w2vxl94001jk9j1nsp5b8xm10w985j";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ego";
+          sha256 = "09k33ggc6n7wgykaawbmh6hyrl9dqp0azaq9zcjhjbc88nszj7fj";
           name = "ego";
         };
         packageRequires = [ dash emacs ht htmlize mustache org simple-httpd ];
@@ -16238,15 +16330,15 @@
       }) {};
     eide = callPackage ({ fetchgit, fetchurl, lib, melpaBuild }: melpaBuild {
         pname = "eide";
-        version = "20170213.1254";
+        version = "20170407.1229";
         src = fetchgit {
           url = "git://git.tuxfamily.org/gitroot/eide/emacs-ide.git";
-          rev = "66d4490ec38dd992ba90b3801879d3f0ff312635";
-          sha256 = "1y8imvgms7nb8fcpm1v6zkx3hqsf6zygc38gbj87c8s85f2qmfrq";
+          rev = "d15589a117ac710b70df71cdf33a33ca05e55d13";
+          sha256 = "0k0x8xlxnv4fn2q3fyaxpbj4776cbc6ylbiwxqjzvqqzaq6lmx8j";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d384f185f76039b06a1b5b12c792b346c6d47a22/recipes/eide";
-          sha256 = "16cf32n2l4wy1px7fm6x4vxx7pbqdp7zh2jn3bymg0b40i2321sz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/eide";
+          sha256 = "1i5brijz7pnqdk411j091fb8clapsbsihaak70g12fa5qic835fv";
           name = "eide";
         };
         packageRequires = [];
@@ -16279,12 +16371,12 @@
     ein = callPackage ({ cl-generic, fetchFromGitHub, fetchurl, lib, melpaBuild, request, websocket }:
     melpaBuild {
         pname = "ein";
-        version = "20170322.650";
+        version = "20170411.1509";
         src = fetchFromGitHub {
           owner = "millejoh";
           repo = "emacs-ipython-notebook";
-          rev = "2547226f2ee32726809a3a603e6797492896f170";
-          sha256 = "1rkva6lmss32vd96wvgh0r5phdr54xs1hjmwpkcr4x2h1dm1w7a6";
+          rev = "f0f0c0d2069972f71cdfb5e520f42c688465be8c";
+          sha256 = "0w6xjvpkm6cfpvbxjkjd580znjyh44mkldj1p330rda0ykarshdv";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/215e163755fe391ce1f049622e7b9bf9a8aea95a/recipes/ein";
@@ -16396,8 +16488,8 @@
         src = fetchFromGitHub {
           owner = "dimitri";
           repo = "el-get";
-          rev = "b47a94877b8b621534403a533ad147a971caaf89";
-          sha256 = "0qhy7bxgs8gbbjww438jmmqhz20aczp3bvdpbywbwcmfkadv6086";
+          rev = "cdd39a51aab1ed23ac7195297eb986fc482e8c42";
+          sha256 = "0av2lpj1rij8mcf0jxdfm6pm6pwrv1wzh095z8vsfcdda8svznxc";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1c61197a2b616d6d3c6b652248cb166196846b44/recipes/el-get";
@@ -16480,8 +16572,8 @@
         src = fetchFromGitHub {
           owner = "raxod502";
           repo = "el-patch";
-          rev = "26d1b4f7920ca32e0e76a3ffa23784a80253c9f4";
-          sha256 = "0rk1qvgdnx1xn7pmb2713i68xm05kp3cfkwvd5smbkzjj2nvbi20";
+          rev = "c0f1c01a82903a1d7f5d49eba6d9e9d373423907";
+          sha256 = "0kj4rbn86v9hjkshpyn65cmyhrnmg3s6ir6p4ricnhzv11rgkx6y";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2f4f57e0edbae35597aa4a7744d22d2f971d5de5/recipes/el-patch";
@@ -16649,8 +16741,8 @@
           sha256 = "12l50k56h1aiwmvvxrka3y1i82sv5xc7vn99z3y3kl31yl3g6382";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/914e845a0869680f84611a415373c9a166c93794/recipes/el2markdown";
-          sha256 = "1a52qm0jrcvvpb01blr5l7apaxqn4bvhkgha53cr48rdkmmq318g";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/el2markdown";
+          sha256 = "1bpfddcvg9wgc5g14clj6wyiw8rsh45rgibvlmyan2m0gmwvmqx6";
           name = "el2markdown";
         };
         packageRequires = [];
@@ -16670,8 +16762,8 @@
           sha256 = "0jinjrl2fgxixdkkayvajd7pzqz8vmqdkni8pm4shn781n660b2g";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/dcbeff073f03d03b306f1d96ba2dcf140b57a634/recipes/el2org";
-          sha256 = "1fshlq06psmfnp1gcmkqiw0hrm25dgl67ijb9sb3m6q1z9wml674";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/el2org";
+          sha256 = "02kyvzpjws2mrp414i4zm4fmrnzgkaax6bnrlyhp17a8aqaggbnh";
           name = "el2org";
         };
         packageRequires = [ emacs ];
@@ -16730,8 +16822,8 @@
           sha256 = "065sihf0dvi7g37zvf5drigkakydapyvpxdibcdzhcxx2p9bqszi";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/de4d7c143f24d34eed093cfcdf481e98a6d2f839/recipes/eldoc-overlay-mode";
-          sha256 = "158w2ffayqlcbgka3894p3zbq45kw9mijf421yzf55y1f1ipzqqs";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/eldoc-overlay-mode";
+          sha256 = "09rhh8rj9rcdnl1jfnjlyzcdr56h9yhmfsb27i4v59g06x8qc954";
           name = "eldoc-overlay-mode";
         };
         packageRequires = [ emacs inline-docs ];
@@ -16751,8 +16843,8 @@
           sha256 = "0s4y1319sr4xc0k6h2zhzzxsx2kc3pc2m6saah18y4kip0hjyhr8";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1d2561bee760f11fd95ae6b1c97708d38e9203b1/recipes/electric-case";
-          sha256 = "11mab7799kxs3w47srmds5prmwh6ldxzial9kqbqy33vybpkprmd";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/electric-case";
+          sha256 = "1ch108ljzg5xkk4pkfpfxm8v2yzqk79q3h2zhzzqhsydq7r07bdn";
           name = "electric-case";
         };
         packageRequires = [];
@@ -16814,8 +16906,8 @@
           sha256 = "1ijrhm9vrzh5wl1rr9ayl11dwm05bh1i43fnbz3ga58l6whgkfpw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a6da3640b72496e2b32e6ed21aa39df87af9f7f3/recipes/elein";
-          sha256 = "0af263zq4xxaxhpypn769q8h1dla0ygpnd6l8xc13zlni6jjwdsg";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/elein";
+          sha256 = "01y5yrmm3biyrfgnl3qjfpn1xvjk2nabwjr8cls53ds697qpz5x2";
           name = "elein";
         };
         packageRequires = [];
@@ -16848,12 +16940,12 @@
     elfeed = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "elfeed";
-        version = "20170305.1633";
+        version = "20170416.556";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "elfeed";
-          rev = "5028a4f75cc5e7d7e9134ed32a9f5bc4b6809b32";
-          sha256 = "1glj6s8hpas5ph9bg85rq6fq6n4nzq84di27sa2nbv7qpjwq4fcj";
+          rev = "409be5108d736df595b18f5d373c3b32bf7ab4b4";
+          sha256 = "1ab27kqwnrl9g81cyrzzm6j31zg0sl4iz16anhzcm6cqhsrm4hcn";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/407ae027fcec444622c2a822074b95996df9e6af/recipes/elfeed";
@@ -16905,8 +16997,8 @@
           sha256 = "15wcwp8gfv1zsykyc59ml07g43p1w305q3mgahis37rl9bpyaadn";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5874b83e31cb760698032106fff75c8ded1d8e82/recipes/elfeed-org";
-          sha256 = "0xf2r5ca3gnx2cv9f8rr4s1hds2ggqsbllvfr229gznkcqjnglik";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/elfeed-org";
+          sha256 = "0rnxr2q2ib6xrdx41ams1z2ivw5zhcsmqdylyvbw62h20rlmlgm8";
           name = "elfeed-org";
         };
         packageRequires = [ dash elfeed org s ];
@@ -16918,12 +17010,12 @@
     elfeed-web = callPackage ({ elfeed, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, simple-httpd }:
     melpaBuild {
         pname = "elfeed-web";
-        version = "20170125.1846";
+        version = "20170402.1842";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "elfeed";
-          rev = "5028a4f75cc5e7d7e9134ed32a9f5bc4b6809b32";
-          sha256 = "1glj6s8hpas5ph9bg85rq6fq6n4nzq84di27sa2nbv7qpjwq4fcj";
+          rev = "409be5108d736df595b18f5d373c3b32bf7ab4b4";
+          sha256 = "1ab27kqwnrl9g81cyrzzm6j31zg0sl4iz16anhzcm6cqhsrm4hcn";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/62459d16ee44d5fcf170c0ebc981ca2c7d4672f2/recipes/elfeed-web";
@@ -16989,8 +17081,8 @@
           sha256 = "0al8m75p359h4n82rf0dsl22qfdg9cwwywn5pn7x6gb96c7qrqaa";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a5bf5c03ec4c26eb43703a49606450cbdb826996/recipes/elisp-docstring-mode";
-          sha256 = "0mrg4vszf3p09qz3dvj38dv00f3ca8hrm3vmnjsfq0cji0yipyy1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/elisp-docstring-mode";
+          sha256 = "0mdh3ikn6zfd3fbmifvivqih2fsijvlzalljdvm32crs9cy6fa96";
           name = "elisp-docstring-mode";
         };
         packageRequires = [];
@@ -17048,8 +17140,8 @@
         src = fetchFromGitHub {
           owner = "Wilfred";
           repo = "refs.el";
-          rev = "6ef632c8922e01714a25c6e04fd5522be6e5ea26";
-          sha256 = "00c9s60g7rl784q4slfaavqkjhj8j73pglflpjh8pvrgj77c4y6y";
+          rev = "54b6221a06a32075d1d0c991f75f53c6c792830e";
+          sha256 = "1xzm86l37fjiknqbsdv14n70mgaw0105i55fbl4rf0p9q4nircmv";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/60891099e241ebd32d39bdcfe4953529a5a3263e/recipes/elisp-refs";
@@ -17220,8 +17312,8 @@
           sha256 = "1463y4zc6yabd30k6806yw0am18fjv0bkxm56p2siqrwn9pbsh8k";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/29c24259817bf4b7caf51f1cfc163e6b7c63504b/recipes/elmine";
-          sha256 = "1gi94dyz9x50swkvryd4vj36rqgz4s58nrb4h4vwwviiiqmc8fvz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/elmine";
+          sha256 = "1xkx1wwrzd2dl13z8n4qh3gl202j0i9crab5b3788z8mq0g4v4bn";
           name = "elmine";
         };
         packageRequires = [ s ];
@@ -17325,8 +17417,8 @@
           sha256 = "0wlhdzsrlj266jfvp925zrgzg2mxfba93klgky0hc8zialmmb50b";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/c351c97e5b2c0595c82d65a7075176f9ebe44638/recipes/elpa-audit";
-          sha256 = "0l8har14zrlh9kdkh9vlmkmzg49vb0r8j1wnznryaidalvk84a52";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/elpa-audit";
+          sha256 = "18a8n22g53d8fxzr3snb2px28gvxbkx44grrx8lywaprz1f1lwdi";
           name = "elpa-audit";
         };
         packageRequires = [];
@@ -17380,12 +17472,12 @@
     elpy = callPackage ({ company, fetchFromGitHub, fetchurl, find-file-in-project, highlight-indentation, lib, melpaBuild, pyvenv, s, yasnippet }:
     melpaBuild {
         pname = "elpy";
-        version = "20170324.227";
+        version = "20170414.319";
         src = fetchFromGitHub {
           owner = "jorgenschaefer";
           repo = "elpy";
-          rev = "c793c9d048f16b74bddf7aff5b3e3cf32d90f71f";
-          sha256 = "0cmn8j2hbh5qzwwskhjmpilgcdf0h3lm9jj0vx1fwwagxg369gw2";
+          rev = "e4982452a3be29df4ab71f2463485c3e697c6f1a";
+          sha256 = "18g65sy70p8s5v5r150b6b1wqmi11q6n213l8ign038iqjmbar8r";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1d8fcd8745bb15402c9f3b6f4573ea151415237a/recipes/elpy";
@@ -17699,85 +17791,85 @@
           license = lib.licenses.free;
         };
       }) {};
-    emacsql = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, finalize, lib, melpaBuild }:
+    emacsql = callPackage ({ cl-generic, cl-lib ? null, emacs, fetchFromGitHub, fetchurl, finalize, lib, melpaBuild }:
     melpaBuild {
         pname = "emacsql";
-        version = "20170110.1853";
+        version = "20170410.1218";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "emacsql";
-          rev = "327b09b4b99ccb6b5605b804027a42fd73589929";
-          sha256 = "056zpjvzinljmz90ymd8ggya3mxbk8zxl0a61x4naa64r28rjgkx";
+          rev = "1b37570bf5813e160fa18a766e20dfa690910519";
+          sha256 = "1pq6316c2kn9idmdyq44khb1r2zj46kkclkqbrrcf7w2505wvkm0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9cc47c05fb0d282531c9560252090586e9f6196e/recipes/emacsql";
           sha256 = "1x4rn8dmgz871dhz878i2mqci576zccf9i2xmq2ishxgqm0hp8ax";
           name = "emacsql";
         };
-        packageRequires = [ cl-lib emacs finalize ];
+        packageRequires = [ cl-generic cl-lib emacs finalize ];
         meta = {
           homepage = "https://melpa.org/#/emacsql";
           license = lib.licenses.free;
         };
       }) {};
-    emacsql-mysql = callPackage ({ cl-lib ? null, emacs, emacsql, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    emacsql-mysql = callPackage ({ cl-generic, cl-lib ? null, emacs, emacsql, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "emacsql-mysql";
-        version = "20151004.715";
+        version = "20170410.1008";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "emacsql";
-          rev = "327b09b4b99ccb6b5605b804027a42fd73589929";
-          sha256 = "056zpjvzinljmz90ymd8ggya3mxbk8zxl0a61x4naa64r28rjgkx";
+          rev = "1b37570bf5813e160fa18a766e20dfa690910519";
+          sha256 = "1pq6316c2kn9idmdyq44khb1r2zj46kkclkqbrrcf7w2505wvkm0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9cc47c05fb0d282531c9560252090586e9f6196e/recipes/emacsql-mysql";
           sha256 = "1c20zhpdzfqjds6kcjhiq1m5ch53fsx6n1xk30i35kkg1wxaaqzy";
           name = "emacsql-mysql";
         };
-        packageRequires = [ cl-lib emacs emacsql ];
+        packageRequires = [ cl-generic cl-lib emacs emacsql ];
         meta = {
           homepage = "https://melpa.org/#/emacsql-mysql";
           license = lib.licenses.free;
         };
       }) {};
-    emacsql-psql = callPackage ({ cl-lib ? null, emacs, emacsql, fetchFromGitHub, fetchurl, lib, melpaBuild, pg }:
+    emacsql-psql = callPackage ({ cl-generic, cl-lib ? null, emacs, emacsql, fetchFromGitHub, fetchurl, lib, melpaBuild, pg }:
     melpaBuild {
         pname = "emacsql-psql";
-        version = "20151004.715";
+        version = "20170410.1008";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "emacsql";
-          rev = "327b09b4b99ccb6b5605b804027a42fd73589929";
-          sha256 = "056zpjvzinljmz90ymd8ggya3mxbk8zxl0a61x4naa64r28rjgkx";
+          rev = "1b37570bf5813e160fa18a766e20dfa690910519";
+          sha256 = "1pq6316c2kn9idmdyq44khb1r2zj46kkclkqbrrcf7w2505wvkm0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9cc47c05fb0d282531c9560252090586e9f6196e/recipes/emacsql-psql";
           sha256 = "1aa1g9jyjmz6w0lmi2cf67926ad3xvs0qsg7lrccnllr9k0flly3";
           name = "emacsql-psql";
         };
-        packageRequires = [ cl-lib emacs emacsql pg ];
+        packageRequires = [ cl-generic cl-lib emacs emacsql pg ];
         meta = {
           homepage = "https://melpa.org/#/emacsql-psql";
           license = lib.licenses.free;
         };
       }) {};
-    emacsql-sqlite = callPackage ({ cl-lib ? null, emacs, emacsql, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    emacsql-sqlite = callPackage ({ cl-generic, cl-lib ? null, emacs, emacsql, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "emacsql-sqlite";
-        version = "20160311.1238";
+        version = "20170410.1218";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "emacsql";
-          rev = "327b09b4b99ccb6b5605b804027a42fd73589929";
-          sha256 = "056zpjvzinljmz90ymd8ggya3mxbk8zxl0a61x4naa64r28rjgkx";
+          rev = "1b37570bf5813e160fa18a766e20dfa690910519";
+          sha256 = "1pq6316c2kn9idmdyq44khb1r2zj46kkclkqbrrcf7w2505wvkm0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9cc47c05fb0d282531c9560252090586e9f6196e/recipes/emacsql-sqlite";
           sha256 = "1vywq3ypcs61s60y7x0ac8rdm9yj43iwzxh8gk9zdyrcn9qpis0i";
           name = "emacsql-sqlite";
         };
-        packageRequires = [ cl-lib emacs emacsql ];
+        packageRequires = [ cl-generic cl-lib emacs emacsql ];
         meta = {
           homepage = "https://melpa.org/#/emacsql-sqlite";
           license = lib.licenses.free;
@@ -17912,12 +18004,12 @@
     embrace = callPackage ({ cl-lib ? null, expand-region, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "embrace";
-        version = "20161228.1948";
+        version = "20170413.1110";
         src = fetchFromGitHub {
           owner = "cute-jumper";
           repo = "embrace.el";
-          rev = "7e0cc702bc15915f4e4be4c334faa37dca94e749";
-          sha256 = "0w746jbyfjd8z8ga5nlsipw02pcbi98wxfdw51zv088ml0647v6j";
+          rev = "a57b4be5d60daf8c176f9bd35770540c2d3963c9";
+          sha256 = "0sn81a7f8g5i4q74byfkj0jlg4aj0rxpfvx9sqv8azcg6wq2f65l";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e8f07e3b5ba4ec4b0b79fba5a2cca5a3986218b6/recipes/embrace";
@@ -17976,13 +18068,13 @@
         pname = "emms";
         version = "20170301.1406";
         src = fetchgit {
-          url = "git://git.sv.gnu.org/emms.git";
-          rev = "6601ba8ef710b8ed260773e18a3baa940a7adc3a";
-          sha256 = "1fzbzyvm98128dr01rldlabqkz9mag1z1qys36v2h6cfax1xjv9i";
+          url = "https://git.savannah.gnu.org/git/emms.git";
+          rev = "0cd9ea411391c9049f4fbcd5d9164ba11b73fe56";
+          sha256 = "1g9jrv23bzwlafrsywdzzc4g79v2a7lm37644cfnmdma8a8ywrh5";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/205eeed002b0848809a4c5f8ad99d925b48799ec/recipes/emms";
-          sha256 = "0kzli8b0z5maizfwhlhph1f5w3v6pwxvs2dfs90l8c0h97m4yy2m";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/emms";
+          sha256 = "1xpry8h96gvjnc0v8x0vk5dnmlq1r7m3ljpampdwv9pfwl95fh94";
           name = "emms";
         };
         packageRequires = [];
@@ -18078,12 +18170,12 @@
     emms-player-mpv-jp-radios = callPackage ({ cl-lib ? null, emacs, emms, emms-player-simple-mpv, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "emms-player-mpv-jp-radios";
-        version = "20170322.830";
+        version = "20170330.904";
         src = fetchFromGitHub {
           owner = "momomo5717";
           repo = "emms-player-mpv-jp-radios";
-          rev = "dbb22a8ccfabf961965093abefa77217cac1d8ff";
-          sha256 = "0w22qkdqw5328rxn7ik4yfw77wbigaspyz30hd1v68qklhxpag94";
+          rev = "7c3dc98e86a178c217bec74fb1e5da7de00fded9";
+          sha256 = "0xdqi3fi26pj166z2f1fpl9ckdma9rsck324ha343r2y3snfzch0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/09ba6da5057061f055d4a3212d167f9666618d4f/recipes/emms-player-mpv-jp-radios";
@@ -18107,8 +18199,8 @@
           sha256 = "0kz31qsn3nrpi8r31nlxlkkkah0qcdkq9a9i9ypv4ky7pvnzx6m5";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f4eaa866ba6b0ad2b590fb15c30f81b9fdbef6dd/recipes/emms-player-simple-mpv";
-          sha256 = "15aljprjd74ha7wpzsmv3d873i6fy3x1jwhzm03hvw0sw18m25i1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/emms-player-simple-mpv";
+          sha256 = "1lv1rhd5vya068mnnaysfh56raar79hf2g413ysrk3yhyajk6316";
           name = "emms-player-simple-mpv";
         };
         packageRequires = [ cl-lib emacs emms ];
@@ -18246,12 +18338,12 @@
     emojify = callPackage ({ emacs, fetchFromGitHub, fetchurl, ht, lib, melpaBuild, seq }:
     melpaBuild {
         pname = "emojify";
-        version = "20170323.730";
+        version = "20170401.954";
         src = fetchFromGitHub {
           owner = "iqbalansari";
           repo = "emacs-emojify";
-          rev = "9ce171d38915c81ba0f387e013aad2e089d61d48";
-          sha256 = "1p2hws3jyk4pvgxznirp20r9s6h1554h6sn8kil203cb4l64wb3f";
+          rev = "4f365dc562c8c5642719faf85b7536278c561d2e";
+          sha256 = "0j3ydg2n6dq77qpyhyqdkbxhfhzmml5b5h8cghsx0i5267grssph";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/488d2751b5fd3bf00f5a6f0545530f44563b86d7/recipes/emojify";
@@ -18292,8 +18384,8 @@
         src = fetchFromGitHub {
           owner = "chrisbarrett";
           repo = "emacs-refactor";
-          rev = "c671b08facf37be6fc6783260cee686866cfed14";
-          sha256 = "05v90g6ybdp2fmnnklnbdxygnw8xw0whmxbdw45qdww8idf2swfs";
+          rev = "07e0b41fe080536e8a69301ff1c692f2871bee2f";
+          sha256 = "1ckbc2ziw31cqal9hmc6n6gmncwficzw5rwwdcy4wj7f7w3xkr5z";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2cd2ebec5bd6465bffed284130e1d534f52169a9/recipes/emr";
@@ -18468,12 +18560,12 @@
     ensime = callPackage ({ company, dash, fetchFromGitHub, fetchurl, lib, melpaBuild, popup, s, sbt-mode, scala-mode, yasnippet }:
     melpaBuild {
         pname = "ensime";
-        version = "20170318.1059";
+        version = "20170401.257";
         src = fetchFromGitHub {
           owner = "ensime";
           repo = "ensime-emacs";
-          rev = "9ccf54cddb1d7884f36de9d7d077cee55eae410e";
-          sha256 = "0y6v9bmhspfmr3bmqf5av4n1xdwj0nx9fws0gw8n9ln92yz6w3sz";
+          rev = "bb09141e7e2a25947f891008cf6036525c8ed484";
+          sha256 = "15r76hmibpyvz87mwi9qzyn63l7k4ab5bhx5g5ziaak8q3vwwibl";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/502faab70af713f50dd8952be4f7a5131075e78e/recipes/ensime";
@@ -18777,8 +18869,8 @@
           sha256 = "1k0g3bwp3w0dd6zwdv6k2wpqs2krjayilrzsr1hli649ljcx55d7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/321ae5999351637a2cd97ec1bf4668d68f569ee4/recipes/erc-hl-nicks";
-          sha256 = "1lhw77n2nrjnb5yhnpm6yhbcp022xxjcmdgqf21z9rd0igss9mja";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/erc-hl-nicks";
+          sha256 = "03hxsknf31vrja2amfa317ig4c34i5jpdq35zczrp00ap0s31nbq";
           name = "erc-hl-nicks";
         };
         packageRequires = [];
@@ -18798,8 +18890,8 @@
           sha256 = "03r13x2hxy4hk0n0ri5wld8rp8frx4j3mig6mn2v25k0cr52689f";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/69c923ab029eb0c638104f38d2c9766992ca101c/recipes/erc-image";
-          sha256 = "1cgzygkysjyrsdr6jwqkxlnisxccsvh4kxgn19rk4n61ms7bafvf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/erc-image";
+          sha256 = "1k5llh2jg2wxy9v03qrhwqa6g7apkqiqa47jm24z0ydqinm6zl83";
           name = "erc-image";
         };
         packageRequires = [];
@@ -18882,8 +18974,8 @@
           sha256 = "118q4zj9dh5xnimcsi229j5pflhcd8qz0p212kc4p9dmyrx2iw0n";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/c846b4bad6836f53261d64ceac910b6cbd9021a1/recipes/erc-tweet";
-          sha256 = "0bazwq21mah4qrzwaji6w13m91l6v9dqh9svxrd13ij8yycr184b";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/erc-tweet";
+          sha256 = "0nmh3r8s69hfmkz0jycn7w2icb5gnw2qbf8xjd52kigkdb2s646c";
           name = "erc-tweet";
         };
         packageRequires = [];
@@ -19000,16 +19092,16 @@
     ereader = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, s, xml-plus }:
     melpaBuild {
         pname = "ereader";
-        version = "20161119.652";
+        version = "20170417.603";
         src = fetchFromGitHub {
           owner = "bddean";
           repo = "emacs-ereader";
-          rev = "57fc9c3f1ab9cfb2d6b5f20731ff7f63ee3daaa4";
-          sha256 = "0hd949g9al3lifbpy36z4v9ia61zbjvj05kpb3min642m1a5361i";
+          rev = "141a50f2fbac5b7edd59ad5e899aa14c719e9ed5";
+          sha256 = "08kcwldjwk7jksbhzzdyq96jchhniw56rg8hvahc6az2vra3qcb1";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5a3feaacdfcddb862cd3101b33777d9c19dfd125/recipes/ereader";
-          sha256 = "10dhy4d8kwi983fx0klvpvwlwrwrnx1h4x32j2zzlg5rvig016li";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ereader";
+          sha256 = "1ai27lyb9xcmjjcnppzzhb6ilsvq9d9g9z7h79lp7axq761vind4";
           name = "ereader";
         };
         packageRequires = [ dash emacs s xml-plus ];
@@ -19109,8 +19201,8 @@
         src = fetchFromGitHub {
           owner = "erlang";
           repo = "otp";
-          rev = "53b483cb14c4b3b666eab63f9f09d7ac827f9a7c";
-          sha256 = "1pw1ibqyn7j56dk6yh21hg91xv5kp478da3xv3gb77mh4is09n8b";
+          rev = "a5b52a94e67ec18f9f5c276f8387d27ab6c32c3b";
+          sha256 = "157jfq86xlq7kcbkrsvg9ybb3z3i0dh9lgif4z5kglxwr43vgrc4";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d9cd526f43981e0826af59cdc4bb702f644781d9/recipes/erlang";
@@ -19134,8 +19226,8 @@
           sha256 = "0whlsq90v13fz69k3wjrwcwb9gkpfxqjd75mg3nrp85j9nwhb5i4";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ee5807cfb3973348b901142b317e1c7edc3b38db/recipes/eros";
-          sha256 = "0xry221mj1achsyc8mkmipza2zn2xmsx96fqznf6mqvx4s271nvs";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/eros";
+          sha256 = "0l79bn72x5m2lzglrwwngz3hax9pf8wv7ci86y5pkwaa8frxycww";
           name = "eros";
         };
         packageRequires = [ emacs ];
@@ -19165,16 +19257,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    ert-expectations = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    ert-expectations = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "ert-expectations";
-        version = "20130824.500";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/ert-expectations.el";
-          sha256 = "0cwy3ilsid90abzzjb7ha2blq9kmv3gfp3icwwfcz6qczgirq6g7";
+        version = "20121009.34";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "ert-expectations";
+          rev = "aed70e002c4305b66aed7f6d0d48e9addd2dc1e6";
+          sha256 = "0qgi3rj49k0hz4azg7ghcj6385p5s9gakqjhrjnhih7dxvihcgxi";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/55809f1a04061a26665d2995975aba429815c19e/recipes/ert-expectations";
-          sha256 = "094lkf1h83rc0dkvdv8923xjrzj5pnpnsb4izk8n5n7g0rbz1l9w";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/84f836338818946a6bb31d35d6ae959571128ed5/recipes/ert-expectations";
+          sha256 = "07mp0azb6wsa1z4s6q8jyh7dpzils0wh2bamfmxzy4gjqjwv8ncn";
           name = "ert-expectations";
         };
         packageRequires = [];
@@ -19266,22 +19361,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    es-mode = callPackage ({ cl-lib ? null, dash, fetchFromGitHub, fetchurl, lib, melpaBuild, s, spark }:
+    es-mode = callPackage ({ cl-lib ? null, dash, fetchFromGitHub, fetchurl, lib, melpaBuild, request, s, spark }:
     melpaBuild {
         pname = "es-mode";
-        version = "20170307.2136";
+        version = "20170410.354";
         src = fetchFromGitHub {
           owner = "dakrone";
           repo = "es-mode";
-          rev = "527a2f70e1de7df46e59609b245e7e99c53708d1";
-          sha256 = "19kss3hrjf1cj4lgj68qw5zszar7c7pjbqj8sxlwicnrg831mj0n";
+          rev = "25a7361365d25ad6823b99913be72d1b724083b3";
+          sha256 = "0lqxk54443x0ccxr745k5dlq6zh4kqc1dmnhh6dqcnfyc4amqs0v";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/85445b59329bfd81a3fd913d7d6fe7784c31744c/recipes/es-mode";
           sha256 = "1541c7d8gbi4mgxwk886hgsxhq7bfx8is7hjjg80sfn40z6kdwcp";
           name = "es-mode";
         };
-        packageRequires = [ cl-lib dash s spark ];
+        packageRequires = [ cl-lib dash request s spark ];
         meta = {
           homepage = "https://melpa.org/#/es-mode";
           license = lib.licenses.free;
@@ -19319,8 +19414,8 @@
           sha256 = "1rxfqj46zg3xgg7miflgsb187xa9fpwcvrbkqj41g8lvmycdnm0a";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f40e277af4001d367099360d4342d9c1ab925f59/recipes/esa";
-          sha256 = "1kbsv4xsp7p9v0g22had0dr7w5zsr24bgi2xzryy76699pxq4h6c";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/esa";
+          sha256 = "0y4mbq0z6vp0faxq6dq5hhxnsbi685amxqbvpxkxahl1nckp76lb";
           name = "esa";
         };
         packageRequires = [ cl-lib ];
@@ -19445,8 +19540,8 @@
           sha256 = "0kr9nv9dd2i4ar6mx4bjhid4sxsvvgx713bajia4jsby34jbgfi2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b0bc9259d7ee9eaf015f6583f82f1313d69e6f29/recipes/eshell-fixed-prompt";
-          sha256 = "0r0dbqmxzlh1sqadivwq762qw7p6hbrqprykd6b1m9m9gbb2qnkg";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/eshell-fixed-prompt";
+          sha256 = "0mhrfxf19p4qqnlnnfc0z70324c7qiiv63riaz4cn5jj1ps3v0iy";
           name = "eshell-fixed-prompt";
         };
         packageRequires = [ emacs s ];
@@ -19529,8 +19624,8 @@
           sha256 = "1xq1y6ddq9hxcc13wzj55snc7dg75y1z78f5bhnm9ps3ww7nmc9s";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4d033b20d047db8ddd42bdfa2fcf190de559f706/recipes/eshell-up";
-          sha256 = "0v26dqaszdg57brg8sls9ddmfwxzf98wkp471q1cqw75ss4999jd";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/eshell-up";
+          sha256 = "1jyaaw950isissjjgqflfn2bllgdfcyphpbi7il06mv9p0dzpwvy";
           name = "eshell-up";
         };
         packageRequires = [ emacs ];
@@ -19571,8 +19666,8 @@
           sha256 = "1l7pm0ywjby0giilyn6qsz1zh54sgmvmii7y9jhrva13c5kgg9an";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3d4417bb564a942ef031cfb319cff3b93645e5d8/recipes/eslint-fix";
-          sha256 = "06qzzx1bab1169jdaljm7zh5nzm9p0wzdvqcxfrsw8s2mw5q5wi8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/eslint-fix";
+          sha256 = "0ry271jlv95nhdqx6qxmvkpa10lpwkg1q6asnliviwplq2mxw2da";
           name = "eslint-fix";
         };
         packageRequires = [];
@@ -19630,8 +19725,8 @@
         src = fetchFromGitHub {
           owner = "ecukes";
           repo = "espuds";
-          rev = "ef854367d469c6eff459d24a544addd21a4fbd23";
-          sha256 = "024msmnwlnsgqa523s3phxj1g77pyw917gz1fhz56062576nv22q";
+          rev = "7fc312184348df55d19d06914605356885674354";
+          sha256 = "1vx1b1pyi2xpfl822mskzvh943rxp9pyr915fnx5pjp58hjwwf3h";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/14cf66e6929db2a0f377612e786aaed9eb12b799/recipes/espuds";
@@ -19844,8 +19939,8 @@
           sha256 = "0azwfxzxghxhzwal4al0lngm0w3q035jyvm3wj2aaml2dibsi3pb";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/fd4381bbb725cb4a17d741f604698b38c95da475/recipes/esxml";
-          sha256 = "0nn074abkxz7p4w59l1za586p5ya392xhl3sx92yys8a3194n6hz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/esxml";
+          sha256 = "0v63ihgg2db3648s2xygcky9s0vx9byjjpbhlgjy5j159w2w53vh";
           name = "esxml";
         };
         packageRequires = [];
@@ -20163,22 +20258,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    evil-colemak-basics = callPackage ({ emacs, evil, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    evil-colemak-basics = callPackage ({ emacs, evil, evil-snipe, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "evil-colemak-basics";
-        version = "20161117.1319";
+        version = "20170405.1037";
         src = fetchFromGitHub {
           owner = "wbolster";
           repo = "evil-colemak-basics";
-          rev = "5e56117af85e89659e9565abefef24fab7b567e8";
-          sha256 = "0r62rpgklsc24yj57w72jq9i1c54fr4ksy99siyvkginmcink7kz";
+          rev = "207fddde50e36fc3ccd926c69ef7901e938db2ff";
+          sha256 = "06r0x6yvwa811sfb9izzld4a460wip7nn6dfxw91i6x8g825h2qd";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/945417d19faf492fb678aee3ba692d14e7518d85/recipes/evil-colemak-basics";
           sha256 = "1sbbli0hdmpc23f3g5n95svqfdg3rlvf71plyvpv1a6va9jhi83k";
           name = "evil-colemak-basics";
         };
-        packageRequires = [ emacs evil ];
+        packageRequires = [ emacs evil evil-snipe ];
         meta = {
           homepage = "https://melpa.org/#/evil-colemak-basics";
           license = lib.licenses.free;
@@ -20208,12 +20303,12 @@
     evil-commentary = callPackage ({ evil, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "evil-commentary";
-        version = "20161015.1251";
+        version = "20170413.751";
         src = fetchFromGitHub {
           owner = "linktohack";
           repo = "evil-commentary";
-          rev = "a5f2543cb2b90d73b86776f02b25ef16c505832e";
-          sha256 = "1nslk5j55yqaczpbz7w8jirl6gbccb32w8g6bm7higvv8cjv7qsg";
+          rev = "395f91014b69844b81660c155f42eb9b1b3d199d";
+          sha256 = "0zjs9zyqfygnpxapvf0ymmiid40i06cxbhjzd81zw33nafgkf6r4";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fe5b05152c919d49ddd920b1bd5ffc351141fa0d/recipes/evil-commentary";
@@ -20321,8 +20416,8 @@
           sha256 = "0s8lmmm25qabicwaj9jybpbd8mkc62yl7jnhk1lpablydjkv3w2i";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/770fc6dd82c4d30f98e973958044e4d47b8fd127/recipes/evil-escape";
-          sha256 = "0rlwnnshcvsb5kn7db5qy39s89qmqlllvg2z8cnxyri8bsssks4k";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-escape";
+          sha256 = "0jiwsgcqw8m6z4z82gx0m0r0vbvkcxc0czhn4mqjwkhhglwzgi8l";
           name = "evil-escape";
         };
         packageRequires = [ cl-lib emacs evil ];
@@ -20502,12 +20597,12 @@
     evil-lion = callPackage ({ emacs, evil, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "evil-lion";
-        version = "20170328.21";
+        version = "20170417.550";
         src = fetchFromGitHub {
           owner = "edkolev";
           repo = "evil-lion";
-          rev = "da324d54e539f042a85344d1c168b69106896b8b";
-          sha256 = "0sfs09bm6p55xz5f71370zika0qcmlph6mgcc9mzyvpx31vsyfg0";
+          rev = "6885d51d8124ce2f6d2a0137659911b3c7d27c8b";
+          sha256 = "0qwz9k5zcf8h3iq2ak1pqbdk4zhpr7a911a00sg2xyk83z4zdj24";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8a7a0691775afec6d2c7be3d6739b55bd1d2053d/recipes/evil-lion";
@@ -20531,8 +20626,8 @@
           sha256 = "1n6r8xs670r5qp4b5f72nr9g8nlqcrx1v7yqqlbkgv8gns8n5xgh";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4ef683cb1707a481e26dc89b5491ec18e5b20ad1/recipes/evil-lisp-state";
-          sha256 = "117irac05fs73n7sgja3zd7yh4nz9h0gw5b1b57lfkav6y3ndgcy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-lisp-state";
+          sha256 = "16h6zi0kkq2zlrwqiz6avnw2ady3h9gmxyinvk5gbkskxf12d1pz";
           name = "evil-lisp-state";
         };
         packageRequires = [ bind-map evil smartparens ];
@@ -20628,12 +20723,12 @@
     evil-mc = callPackage ({ cl-lib ? null, emacs, evil, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "evil-mc";
-        version = "20170312.2052";
+        version = "20170413.2213";
         src = fetchFromGitHub {
           owner = "gabesoft";
           repo = "evil-mc";
-          rev = "62378695eb45990dec776864e16c28829136aeb6";
-          sha256 = "196ii51malqh2ahfk13rj6p4np0755zhx4pdk18090pwl4hgkzfz";
+          rev = "5703e38417071f757f9c71312d99920691135d63";
+          sha256 = "1bg7w4ci9vdkdhgn53vijxh4xzqnjbv2317l77z83xx0fm2j12w7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/96770d778a03ab012fb82a3a0122983db6f9b0c4/recipes/evil-mc";
@@ -20691,12 +20786,12 @@
     evil-multiedit = callPackage ({ cl-lib ? null, emacs, evil, fetchFromGitHub, fetchurl, iedit, lib, melpaBuild }:
     melpaBuild {
         pname = "evil-multiedit";
-        version = "20161010.1703";
+        version = "20170408.1744";
         src = fetchFromGitHub {
           owner = "hlissner";
           repo = "evil-multiedit";
-          rev = "e2df8629971df7c905256c504ff5f90b94eebdb8";
-          sha256 = "127x55msyy54n6lkml615akhafnbn62cxnmwj1brjwzzi5cbk6bn";
+          rev = "615f2ac3539c39d5ec11e4c9ba0958d8a9381090";
+          sha256 = "068cymahvpyzn13wnma0lfym0f0vfr36kdq7pl8qmhf8ra7xxq92";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/997f5a6999d1add57fae33ba8eb3e3bc60d7bb56/recipes/evil-multiedit";
@@ -20762,8 +20857,8 @@
           sha256 = "0gci909a2rbx5i8dyzyrcddwdic7nvpk6y6djvn521yaag4sq87h";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/da8d4e5bf23985632f993336b9183fe9f480addc/recipes/evil-opener";
-          sha256 = "08vcf9i0rplw2p6gjl7zzrc7kxdl5yv2rggj2ihgdnnfpc4sl33h";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-opener";
+          sha256 = "0cld853pyzlaa306rpypw2wm4953i6y06irlk96bql9aa1zx977g";
           name = "evil-opener";
         };
         packageRequires = [ evil opener ];
@@ -20783,8 +20878,8 @@
           sha256 = "0pir7a3xxbcp5f3q9pi36rpdpi8pbx18afmh0r3501ynssyjfq53";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5ec54af16e3dadce43ece7da3acb1cf2eab5d14b/recipes/evil-org";
-          sha256 = "18w07fbafry3wb87f55kd8y0yra3s18a52f3m5kkdlcz5zwagi1c";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-org";
+          sha256 = "1306pf5ws7acdanypn3c0r4yh5wxdf0knl6j3hhs4ys9zszd79bw";
           name = "evil-org";
         };
         packageRequires = [ evil evil-leader org ];
@@ -20884,8 +20979,8 @@
         src = fetchFromGitHub {
           owner = "linktohack";
           repo = "evil-rsi";
-          rev = "236bf6ed1e2285698db808463e5f2f69f5f5e7c0";
-          sha256 = "1xz629qv1ss1fap397k48piawcwl8lrybraq5449bw1vvn1a4d9f";
+          rev = "65ae60866be494e4622fe383e23975e04d2a42a3";
+          sha256 = "0cc2yxck5brnicllcadb4m5zlzczvdy6v38q34hj8bri1kxfzslz";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/24f438b47e8ede0ef84261424c122d2ac28b90cb/recipes/evil-rsi";
@@ -20905,8 +21000,8 @@
         src = fetchFromGitHub {
           owner = "juanjux";
           repo = "evil-search-highlight-persist";
-          rev = "2f9ea9086373292610f50e5f468b55c3fe072bfc";
-          sha256 = "04mf3zd424kfnswifrg3qlyi39f58ydnm7ahcd0zi168bv1d9r6j";
+          rev = "1b130e771fc9f3bb7c80e1a50c2847a9e024ad09";
+          sha256 = "1la7gamv1qd5wsdlxjjx859zciynln3g9lnxq51iylsbfxgc2f7s";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/91361f95852910968b395423e16377c70189fc55/recipes/evil-search-highlight-persist";
@@ -20943,12 +21038,12 @@
     evil-snipe = callPackage ({ cl-lib ? null, evil, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "evil-snipe";
-        version = "20170328.1011";
+        version = "20170405.1644";
         src = fetchFromGitHub {
           owner = "hlissner";
           repo = "evil-snipe";
-          rev = "3579123acb130e18e9bd8ff3b3029f7052528a32";
-          sha256 = "0pn4k55wg2lzjlpv10c39mvcb6y2fgbc6cfb24czw70ykc5ln087";
+          rev = "c3e5e26c14f4a47daedb4fc48e1b0fb993aa0999";
+          sha256 = "009491hskqkvycng70n3mm7zqxlf6jjninddlcbnknyfr44y4xka";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6748f3febbe2f098761e967b4dc67791186d0aa7/recipes/evil-snipe";
@@ -21048,16 +21143,16 @@
     evil-terminal-cursor-changer = callPackage ({ evil, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "evil-terminal-cursor-changer";
-        version = "20160806.2236";
+        version = "20170401.142";
         src = fetchFromGitHub {
           owner = "7696122";
           repo = "evil-terminal-cursor-changer";
-          rev = "918a741c2ad83f3aa3478863d01bf57422eb6009";
-          sha256 = "0wdn2gp93r555p7pp9pw8ma2wfs2gzvb54ncrh3ad0p8v95x1kf5";
+          rev = "b49ca4393d2f3cc6014174950059b36a5cb22949";
+          sha256 = "1zra2h0x20whshbc4sfyj6w73jv6ak435mr9n6r6s7brqqqgpa36";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/148d324afb1891b239dfad680ad7b87b4611316b/recipes/evil-terminal-cursor-changer";
-          sha256 = "1300ch6f8mkz45na1hdffglhw0cdrrxmwnbd3g4m3sl5z4midian";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-terminal-cursor-changer";
+          sha256 = "16p9a1dybbqr8r717c5ssfd3p5392bqxxzqs4n0xc7v7g8v1m0cd";
           name = "evil-terminal-cursor-changer";
         };
         packageRequires = [ evil ];
@@ -21224,8 +21319,8 @@
           sha256 = "00mhqb9rn4hq90x5i44jyq51lg351bv8hdj4c443nxrbldi73k9s";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/165aea6697a6041bb83303f3ec8068a537accd4a/recipes/evil-visual-replace";
-          sha256 = "1pw2s228q78cbjpd6yx5jca3xhj8lwrb8kj86i6afn4l1m88azzv";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-visual-replace";
+          sha256 = "1dq3bd9aqpk3jq1c9yzlpjyw6mi8l428l111vrmfg156k1w22v01";
           name = "evil-visual-replace";
         };
         packageRequires = [ evil ];
@@ -21308,8 +21403,8 @@
           sha256 = "1i6zf17rwa390c33cbspz81dz86vwlphyhjjsia4gp205nfk3s20";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/62ffcf48bdb2df2bc9e6dd767c4ed9d605a5c839/recipes/eww-lnum";
-          sha256 = "1y745z4wa90snizq2g0amdwwgjafd6hkrayn93ca50f1wghdbk79";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/eww-lnum";
+          sha256 = "1hhc6q8zlj335v27j4dq6ms7frqpivfabs9w3vkaly5kjr60fw7c";
           name = "eww-lnum";
         };
         packageRequires = [];
@@ -21325,12 +21420,12 @@
         src = fetchFromGitHub {
           owner = "purcell";
           repo = "exec-path-from-shell";
-          rev = "c6eedaf916f763a68cbb7fdaf9c7af568546d4b9";
-          sha256 = "1r8053w782054dygpjpahjns5v0qf4drjisg5131qjkd9nvwyc0k";
+          rev = "15d07666fb356008e612278f181292e2d2afc5fc";
+          sha256 = "0kjsxwadxysx3ccgdwd12k4vj43qjs3zd6z4f8sycbk732x0893d";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3d8545191031bece15cf1706d81ad1d064f2a4bd/recipes/exec-path-from-shell";
-          sha256 = "1j6f52qs1m43878ikl6nplgb72pdbxfznkfn66wyzcfiz2hrvvm9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/exec-path-from-shell";
+          sha256 = "014bfcs7znds4if1njyq4s5zrfnr6b3wj6722b4l5r58gh9mlrr5";
           name = "exec-path-from-shell";
         };
         packageRequires = [];
@@ -21532,8 +21627,8 @@
         src = fetchFromGitHub {
           owner = "antham";
           repo = "eyuml";
-          rev = "2f259c201c6cc63ee608f75cd85c1ae27f9d2532";
-          sha256 = "1rgzydxv7c455vj1jm44vvs6xc4qgivqqb0g6zh5x4wdcpgdi2g9";
+          rev = "eb29c37316e44a14741f16e894fbcfcb7537dc80";
+          sha256 = "19n2dzr3m56g76igh57cvvhqwpbcicwr7r6r4i3l8vsjch99kp6m";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b09a8d723e357da67441e65047759ccfa9cb7ef6/recipes/eyuml";
@@ -21591,16 +21686,16 @@
     f = callPackage ({ dash, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
     melpaBuild {
         pname = "f";
-        version = "20161002.800";
+        version = "20170404.1039";
         src = fetchFromGitHub {
           owner = "rejeep";
           repo = "f.el";
-          rev = "4ef57d1539a964a0d02b23becbe9b5e49b805d66";
-          sha256 = "1hymz7chs177pwgfddz6prb18iqj93n1j2xzfszlgl28246939cl";
+          rev = "fabdbd4a4a8caf8684f0fa656f457a03c5dfa4de";
+          sha256 = "1983ymny8329d826kfm5f88na1lym991xnz8wjz4nd1ah52c323x";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/22ddcf536af597b688d8edb70b3636ed6c265bf5/recipes/f";
-          sha256 = "0s7fqav0dc9g4y5kqjjyqjs90gi34cahaxyx2s0kf9fwcgn23ja2";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/f";
+          sha256 = "18qax8i24gpccif4xcxccclpwl00plxjf3zbq9dry37b1r4mj57s";
           name = "f";
         };
         packageRequires = [ dash s ];
@@ -21637,8 +21732,8 @@
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "fabric.el";
-          rev = "8402f2f71c8975d2d9611e2a30845d62d58c9e28";
-          sha256 = "116qwncyxaj9a0p5qk5ragi2wshbcv6ncgkmf9nhha7i45hdfa7f";
+          rev = "2d436122243bcdd64ec5700e42d88ea9d363aefc";
+          sha256 = "0g083jbxqzzg0pja1fhqshg6dv7p22ymnlsg02l073059sfy4c94";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/83939d2a4d5874244a4916eee9ae6b327af18b5d/recipes/fabric";
@@ -22224,14 +22319,14 @@
       }) {};
     find-dired-plus = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
         pname = "find-dired-plus";
-        version = "20170222.1750";
+        version = "20170409.1832";
         src = fetchurl {
           url = "https://www.emacswiki.org/emacs/download/find-dired+.el";
-          sha256 = "002lcqhddw163w8h2lkp3yd47qhbia9ml7g8agngffsin9jip7qw";
+          sha256 = "0zfqkw9vghbzvdh3iyqkkdq777bb1yhfgqk7p28dxz861z13cmfs";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0c8f884334b7eb83647146e7e8be028935ba12ce/recipes/find-dired+";
-          sha256 = "06a6lwx61xindlchh3ps8khhxc6sr7i9d7i60rjw1h07nxmh0fli";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/find-dired+";
+          sha256 = "190cj41b6s1l6gk1m0rbwfsdciw4my39ncppdxf9pi7gzhcjpznr";
           name = "find-dired-plus";
         };
         packageRequires = [];
@@ -22243,12 +22338,12 @@
     find-file-in-project = callPackage ({ emacs, fetchFromGitHub, fetchurl, ivy, lib, melpaBuild }:
     melpaBuild {
         pname = "find-file-in-project";
-        version = "20161202.2205";
+        version = "20170402.2100";
         src = fetchFromGitHub {
           owner = "technomancy";
           repo = "find-file-in-project";
-          rev = "08ab38b89d21f528fa7dc18f860191365852959a";
-          sha256 = "1ybv1scpf7578zfjpl71nynzydq8g5607ai6l0vavprdhri70xdf";
+          rev = "a81f7d7020d5bdfcc835911d4def6f09301a1f55";
+          sha256 = "167anv3qyslfzyrcq4qnzhdx8zhbj1r0lmrvnp1spsalvcbph9ih";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/find-file-in-project";
@@ -22342,16 +22437,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    findr = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    findr = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "findr";
-        version = "20130824.507";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/findr.el";
-          sha256 = "0a04mgya59w468jv2bmkqlayzgh0r8sdz0qg3n70wn9rhdcwnl9q";
+        version = "20130127.1232";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "findr";
+          rev = "1ddbc0464bb05dcda392b62666ad17239a2152d3";
+          sha256 = "0wx4hd4agrfvk0igyash658cbf7v3bv01rlspllsvzr59fl3faqq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/66bba94ec4168441c8e43253c7e1cfd82b613431/recipes/findr";
-          sha256 = "0pxyfnn3f70gknxv09mfkjixqkzn77rdbql703wsslrj2v1l7bfq";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/findr";
+          sha256 = "0pw72bdpmc0ymlgjmwwrslhynij5a5b9sc3rx6vyprpv1ad4ac2c";
           name = "findr";
         };
         packageRequires = [];
@@ -22472,8 +22570,8 @@
         src = fetchFromGitHub {
           owner = "johanvts";
           repo = "emacs-fireplace";
-          rev = "2b966ed65b714c613f79e9144d004dfa3b28f1ed";
-          sha256 = "1f5053bbvjdmm64zv6r2qkswkpwvx0s3qz4bwm9zya583a6g0nv8";
+          rev = "23a444f749bcb2b804593e3b2cb9c73cc59231fb";
+          sha256 = "1ijsa9k0cqy8w0ix2axw2j5996xab77x5s5vd5850jx0my6m7wyi";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4c1ac52c1cfe7ccf46092c2d299ebbffdc1b7609/recipes/fireplace";
@@ -22648,8 +22746,8 @@
           sha256 = "07hv6l80ka10qszm16fpan8sas4b0qvl5s6qixxlz02fm7m0s7m5";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d7ebba36b9acf27e515a71b6b2bf92aeecc78cee/recipes/flappymacs";
-          sha256 = "0dcpl5n7wwsk62ddgfrkq5dkm91569y4i4f0yqa61pdmzhgllx7d";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/flappymacs";
+          sha256 = "0id3bz4h9wi4943kp2sab7240fw8hsnkpng02gij9ssyvjiii5cg";
           name = "flappymacs";
         };
         packageRequires = [];
@@ -22753,8 +22851,8 @@
           sha256 = "187ah7yhmr3ckw23bf4fivx8v79yj0zmilrkjj7k6l198w8wmvql";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2d8ffa6a578b4bc22b7146ab80769ce7ddee5eac/recipes/flex-autopair";
-          sha256 = "0hphrqwryp3c0wwyf2f16hj8nc7jlg2dkvljgm2rdvmh2kgj3007";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/flex-autopair";
+          sha256 = "0w3l236psqxl7wqdi2aisz8wcv279kw6gdja72viiscrbcm78xh0";
           name = "flex-autopair";
         };
         packageRequires = [];
@@ -22846,12 +22944,12 @@
     floobits = callPackage ({ fetchFromGitHub, fetchurl, highlight, json ? null, lib, melpaBuild }:
     melpaBuild {
         pname = "floobits";
-        version = "20170204.226";
+        version = "20170416.1718";
         src = fetchFromGitHub {
           owner = "Floobits";
           repo = "floobits-emacs";
-          rev = "643dbefca9754765e6d0f88a8953dc3689f5f93f";
-          sha256 = "1wh4y53vqi2zb03gxa2g2s14i280yqv0i7432ifi10v2qdwkilna";
+          rev = "fdac635ecc57ac7743f74678147aca2e956561de";
+          sha256 = "134b5ss249x06bgqvsxnlcfys7nl8aid42s7ln8pamxrc3prfcc1";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/95c859e8440049579630b4c2bcc31e7eaa13b1f1/recipes/floobits";
@@ -22972,12 +23070,12 @@
     flycheck = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, let-alist, lib, melpaBuild, pkg-info, seq }:
     melpaBuild {
         pname = "flycheck";
-        version = "20170324.340";
+        version = "20170415.1006";
         src = fetchFromGitHub {
           owner = "flycheck";
           repo = "flycheck";
-          rev = "794e339ab3bae5fa033b3c4913ab24ddad49dc2e";
-          sha256 = "099ffl46z046vzk1qhgcsn5b54zw6yjp9hnp6w7v4rr8pn4r1jlk";
+          rev = "2d40aadedde2b4a5d0bc9094f19020128d242801";
+          sha256 = "0pwlhzfl7av9vkkbdaiky1m2djjxsl93kprigklmjz1vkg7wsza0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/649f9c3576e81409ae396606798035173cc6669f/recipes/flycheck";
@@ -23064,8 +23162,8 @@
           sha256 = "1jw8n6df2hpnjrsqzdd70j0ya3yjzkcy5gm6zx9acqfx88zlgb9m";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/43224eef52bb316102fea524ba87b0e9e43dc6e6/recipes/flycheck-cask";
-          sha256 = "1lq559nyhkpnagncj68h84i3cq85vhdikr534kj018n2zcilsyw7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/flycheck-cask";
+          sha256 = "0d2m7mg91k1nazysayryxagql1vi975n7iv0snknhbw4wisqp82f";
           name = "flycheck-cask";
         };
         packageRequires = [ dash emacs flycheck ];
@@ -23081,8 +23179,8 @@
         src = fetchFromGitHub {
           owner = "Gnouc";
           repo = "flycheck-checkbashisms";
-          rev = "39362240b8e38e6ddc1da2e2c2229e3fecdf6057";
-          sha256 = "1s2zq97d7ryif6rlbvriz36dh23wmwi67v4q6krl77dfzcs705b3";
+          rev = "0794ad763d7cd81286283f6400bc89a81e8e07d4";
+          sha256 = "06jkvi17960wghphar9c1nixanb0197v8q5nm96mgz0gxn923400";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f5678ea5aef4dc8a517d6d9381a64f182645d344/recipes/flycheck-checkbashisms";
@@ -23232,8 +23330,8 @@
           sha256 = "1vy5yjf98b7dk9lniz3rgk33agg8f1x8488lvm28ljdq3jfdgcfw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7f413cc5c2080091491a986f69402b305abe4a7f/recipes/flycheck-css-colorguard";
-          sha256 = "1n56j5nicac94jl7kp8fbqxmd115vbhzklzgfz5jbib2ab8y60jc";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/flycheck-css-colorguard";
+          sha256 = "16qgn12jdps61mlbvhji5l8qrqigv382wyiv79rj2bwvdzbl653f";
           name = "flycheck-css-colorguard";
         };
         packageRequires = [ emacs flycheck ];
@@ -23308,12 +23406,12 @@
     flycheck-dedukti = callPackage ({ dedukti-mode, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild }:
     melpaBuild {
         pname = "flycheck-dedukti";
-        version = "20150106.651";
+        version = "20170407.258";
         src = fetchFromGitHub {
           owner = "rafoo";
           repo = "flycheck-dedukti";
-          rev = "717977c0ead0dc6e267ba2164781d92ee016b7b2";
-          sha256 = "1hw875dirz041vzw1pxjpk5lr1zmrp2kp9m6pazs9j19d686hyn6";
+          rev = "ea34af5e677fbf18a40935b531abb1d9aae59f6b";
+          sha256 = "03flfn7caxa8jpp6v3mn1mvs8lf4khcl8nsgd1nb93k7wp9x6l5s";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/732832e88a65a8866fa3872ff5f29eb8a26438f2/recipes/flycheck-dedukti";
@@ -23392,12 +23490,12 @@
     flycheck-dmd-dub = callPackage ({ f, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild }:
     melpaBuild {
         pname = "flycheck-dmd-dub";
-        version = "20170323.634";
+        version = "20170403.1116";
         src = fetchFromGitHub {
           owner = "atilaneves";
           repo = "flycheck-dmd-dub";
-          rev = "5bc8c9511eb9817fddadb65ff4f0520b52c09de3";
-          sha256 = "18xcgpqr0cxhp79i6zq9c1131rwcsv9lmryiiyph56zl4vg2hb37";
+          rev = "879c52116989f6041ccd20f5db210f5552d5c649";
+          sha256 = "12qblzrw99lcl8qccl26kwqiwscn04izvjrsq3mnp1r5q0s0jxl2";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a812594901c1099283bdf51fbea1aa077cfc588d/recipes/flycheck-dmd-dub";
@@ -23417,8 +23515,8 @@
         src = fetchFromGitHub {
           owner = "aaronjensen";
           repo = "flycheck-dogma";
-          rev = "7e14207a7da67dc5524a8949cb37a3d11de1db6e";
-          sha256 = "1f3wn48am7920s6pm7ds1npfbj1w2pb8k790rl79rvc398g1pyyr";
+          rev = "eea1844a81e87e2488b05e703a93272d0fc3bc74";
+          sha256 = "0wmp4q1jzb6giwrv8ajgqriy155mcc7jnj5sycpfk3hw6q74js66";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1dd7601c55206fd0b9b59f98e861c52b9d640278/recipes/flycheck-dogma";
@@ -23620,6 +23718,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    flycheck-joker = callPackage ({ fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild }:
+    melpaBuild {
+        pname = "flycheck-joker";
+        version = "20170415.2009";
+        src = fetchFromGitHub {
+          owner = "candid82";
+          repo = "flycheck-joker";
+          rev = "43a25fe17ba6ade96fc865bd8ec3fb3c131aa419";
+          sha256 = "0m2msyyshbr6pgnjqybv8b1fj0axja3la0drbbbk0va1cn556wfs";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/599bf33a5d4a4a590b355001e532cab4e1ee9ef6/recipes/flycheck-joker";
+          sha256 = "0war80zdljpjhfihqrind8471ic7l4z7j74zmrysybxvnd5nr7l3";
+          name = "flycheck-joker";
+        };
+        packageRequires = [ flycheck ];
+        meta = {
+          homepage = "https://melpa.org/#/flycheck-joker";
+          license = lib.licenses.free;
+        };
+      }) {};
     flycheck-kotlin = callPackage ({ fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild }:
     melpaBuild {
         pname = "flycheck-kotlin";
@@ -23959,12 +24078,12 @@
     flycheck-pyflakes = callPackage ({ fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild }:
     melpaBuild {
         pname = "flycheck-pyflakes";
-        version = "20170325.1258";
+        version = "20170330.1611";
         src = fetchFromGitHub {
           owner = "Wilfred";
           repo = "flycheck-pyflakes";
-          rev = "439c0e5bcc4bb1a0c68b619a862df6ea316f0b43";
-          sha256 = "0fjjv8ygx55vk91fdzn7ikm6kgwq9kzn14f5lfawipyymxrih3na";
+          rev = "61b045939e3743b2162b7e4e73249c66fc2b8f65";
+          sha256 = "03p0666vpprp6ijkvx9ypaw58bdq42gh533270plv2k5l8r22cl1";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/05e6f3041151006e44f91e5bcbaa7be3750fb403/recipes/flycheck-pyflakes";
@@ -23998,45 +24117,45 @@
           license = lib.licenses.free;
         };
       }) {};
-    flycheck-rust = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, seq }:
+    flycheck-rtags = callPackage ({ emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, rtags }:
     melpaBuild {
-        pname = "flycheck-rust";
-        version = "20170322.306";
+        pname = "flycheck-rtags";
+        version = "20170403.957";
         src = fetchFromGitHub {
-          owner = "flycheck";
-          repo = "flycheck-rust";
-          rev = "ae7c14758c3d33615d981f15951500feb2881b06";
-          sha256 = "1gldjfg112jphpvzbaz3viars8yjyb783ry1sp37g5nlb80lf7jb";
+          owner = "Andersbakken";
+          repo = "rtags";
+          rev = "f1f8709556f25d0cef12b1d4dff5ca0b09a890a0";
+          sha256 = "05r888crk8y5fi4xvarrnr89wjjrrzzdr4bfmd0kzq83vs0azr77";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/68d8cdf3d225b13ebbbe5ce81a01366f33266aed/recipes/flycheck-rust";
-          sha256 = "1k0n0y6lbp71v4465dwq7864vp1qqyx7zjz0kssszcpx5gl1596w";
-          name = "flycheck-rust";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/flycheck-rtags";
+          sha256 = "00v6shfs7piqapmyqyi0fk3182rcfa3p8wr2cm5vqlrana13kbw4";
+          name = "flycheck-rtags";
         };
-        packageRequires = [ dash emacs flycheck seq ];
+        packageRequires = [ emacs flycheck rtags ];
         meta = {
-          homepage = "https://melpa.org/#/flycheck-rust";
+          homepage = "https://melpa.org/#/flycheck-rtags";
           license = lib.licenses.free;
         };
       }) {};
-    flycheck-scala-sbt = callPackage ({ emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, sbt-mode }:
+    flycheck-rust = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, flycheck, let-alist, lib, melpaBuild, seq }:
     melpaBuild {
-        pname = "flycheck-scala-sbt";
-        version = "20170226.1127";
+        pname = "flycheck-rust";
+        version = "20170404.842";
         src = fetchFromGitHub {
-          owner = "rjmac";
-          repo = "flycheck-scala-sbt";
-          rev = "2d063d42628baf4cd4f38224013ece5b027db046";
-          sha256 = "0ch63mm24ljpz1kd6w2qs4218ifir6aah7dnxipi2q2yz24frg6x";
+          owner = "flycheck";
+          repo = "flycheck-rust";
+          rev = "a89c0298f5e8fdcb0c33833ca1eca64632cec053";
+          sha256 = "1h2n1y69fxj2naxlyl7056rhggbpmh13ny2rcf0jjr1qnrrq756n";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0afc1e5b31689a5ba52443e2878114d9ec0e7757/recipes/flycheck-scala-sbt";
-          sha256 = "09d6nj7rc1ba4psnb2csnmrs1mh5xnwh7gq7g6kq4y4f27wr8zcg";
-          name = "flycheck-scala-sbt";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/68d8cdf3d225b13ebbbe5ce81a01366f33266aed/recipes/flycheck-rust";
+          sha256 = "1k0n0y6lbp71v4465dwq7864vp1qqyx7zjz0kssszcpx5gl1596w";
+          name = "flycheck-rust";
         };
-        packageRequires = [ emacs flycheck sbt-mode ];
+        packageRequires = [ dash emacs flycheck let-alist seq ];
         meta = {
-          homepage = "https://melpa.org/#/flycheck-scala-sbt";
+          homepage = "https://melpa.org/#/flycheck-rust";
           license = lib.licenses.free;
         };
       }) {};
@@ -24064,12 +24183,12 @@
     flycheck-status-emoji = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, flycheck, let-alist, lib, melpaBuild }:
     melpaBuild {
         pname = "flycheck-status-emoji";
-        version = "20170311.1203";
+        version = "20170405.1600";
         src = fetchFromGitHub {
           owner = "liblit";
           repo = "flycheck-status-emoji";
-          rev = "2f323cb210a280fc05061f3fc689c627b40bfcb3";
-          sha256 = "0gz18jp5bcwm86w6ir8vyf8rb3l2h524zfvx0jpfk0k1mmxj9cs7";
+          rev = "c4e891ad287c12b83b754ada27b4550fb763c07f";
+          sha256 = "12nlzs4fha1bmq1xbfgf5j4wg9llacl2m3jr8fbk8144pyss3kg5";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5abd6aaa8d2bf55ae75cd217820763531f91958b/recipes/flycheck-status-emoji";
@@ -24106,12 +24225,12 @@
     flycheck-swift3 = callPackage ({ emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild }:
     melpaBuild {
         pname = "flycheck-swift3";
-        version = "20161229.331";
+        version = "20170409.25";
         src = fetchFromGitHub {
           owner = "GyazSquare";
           repo = "flycheck-swift3";
-          rev = "ae7b29111cb160774c317997902d7ef29cedd7d9";
-          sha256 = "17s34rqxkirb88y8jzl3ybs7j3ylp9ckdfx3sqwfn0cyspnj5f1d";
+          rev = "6b0b7c6fffc86809d0535afebd6b0972059992d5";
+          sha256 = "0d411idv9ib1jhmdbjb8ycc8clmm1ygpwapaka3d50gkgrmfin4q";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f1fb8c731c118327dc0bbb726e046fec46bcfb82/recipes/flycheck-swift3";
@@ -24194,12 +24313,12 @@
         src = fetchFromGitHub {
           owner = "abingham";
           repo = "emacs-ycmd";
-          rev = "8fbdaeaec7704155a047ac17c11d4cf4208f5f79";
-          sha256 = "0hvvyficrdxwwg9gyyzmvdsx7v1dh07qrzcvcdn1lq1q1shwcng9";
+          rev = "35553f0e8b84f6b1dc149b84dedb52b72a64240a";
+          sha256 = "1cwbpl2mi63faxj7izl97qn7gc9g1wy8xig89d2yxyv3isb65la2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/332e5585963c04112a55894fe7151c380930b17c/recipes/flycheck-ycmd";
-          sha256 = "0m99ssynrqxgzf32d35n17iqyh1lyc6948inxpnwgcb98rfamchv";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/flycheck-ycmd";
+          sha256 = "114k5y3jy470g5zzhxy03036gcayc08n6g61cidlr2zlyq80glyr";
           name = "flycheck-ycmd";
         };
         packageRequires = [ dash emacs flycheck let-alist ycmd ];
@@ -24303,8 +24422,8 @@
           sha256 = "1mylcsklnv3q27q1gvf7wrila39rmxab1ypmvjh5p56d91y6pszc";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/bd115612b61895f98b0659e9edc1e590967b6337/recipes/flymake-easy";
-          sha256 = "19p6s9fllgvs35v167xf624k5dn16l9fnvaqcj9ks162gl9vymn7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/flymake-easy";
+          sha256 = "0y7nm2p5x1f0nqfj73zr6xzbpf4wrzx8sn8154yx0qm0qh3id39v";
           name = "flymake-easy";
         };
         packageRequires = [];
@@ -24786,8 +24905,8 @@
           sha256 = "0qpr0frcn3w0f6yz8vgavwbxvn6wb0qkfk653v4cfy57dvslr4wf";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f711074c4b1be9f123f63a366108bbe147df0ad5/recipes/flymake-vala";
-          sha256 = "0yp81phd96z594ckav796qrjm0wlkrfsl0rwpmgg840qn49w71vx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/flymake-vala";
+          sha256 = "1fs4alyf3dckdf1pm6vgh4wjpl22wrlhfx9nv072l0dg48zgyw16";
           name = "flymake-vala";
         };
         packageRequires = [ flymake-easy ];
@@ -25122,8 +25241,8 @@
           sha256 = "1yz1wis31asw6xa5maliyd1ck2q02xnnh7dc6swgj9cb4wi7k6i1";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ebbbc23a29b2040c587e2f60dbfb7a9b45058751/recipes/fold-dwim";
-          sha256 = "0c9yxx45zlhb1h4ldgkjv7bndwlagpyingaaqn9dcsxidrvp3p5x";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/fold-dwim";
+          sha256 = "1c8sh6i453jpfhwaqdvlqibnb9lmzfd7q6bvnk1b1q0df7igl53d";
           name = "fold-dwim";
         };
         packageRequires = [];
@@ -25430,8 +25549,8 @@
         src = fetchFromGitHub {
           owner = "larsbrinkhoff";
           repo = "forth-mode";
-          rev = "45650c28a2cdc149a4480d5ea754758c75f8eb01";
-          sha256 = "14p0qygs2ng0jq7hqnhq3za52pzs8gv8qr75a6ic0irh21mvspzp";
+          rev = "52d84393c09be34934efe3cf80849d438cffb632";
+          sha256 = "15lq5q0vzzy8hppzxn06wkm843zhnhq922sg0f9bxcnwvs7v2v99";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e46832079ee34c655835f06bf565ad5a5ab48ebd/recipes/forth-mode";
@@ -25468,12 +25587,12 @@
     fortune-cookie = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "fortune-cookie";
-        version = "20151110.2235";
+        version = "20170407.1517";
         src = fetchFromGitHub {
           owner = "andschwa";
           repo = "fortune-cookie";
-          rev = "9bf0d29358989e1aee61c472bd5204b9bdf46465";
-          sha256 = "1kk04hl2y2svrs07w4pq9f4g7vs9qzy2qpw9prvi1gravmnfrzc4";
+          rev = "bad99a2cd090f6646c7ee1125b95dd98744939c6";
+          sha256 = "1kiflisiabc39lxi5hcazfvcwrpasl01lqsi2sri6pyrcrjyh8mf";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ab0d56626c9bf847c693b4d9ddb08acee636054f/recipes/fortune-cookie";
@@ -25493,8 +25612,8 @@
         src = fetchFromGitHub {
           owner = "rnkn";
           repo = "fountain-mode";
-          rev = "cd164b75fdad957a8ac2548d0ddff84ae3359488";
-          sha256 = "01dlnkzm2rl6lli2r9rz8kd9w4xp236ag6i3gdr5raflylf2yxp4";
+          rev = "37289bb68f01dd49b1192032ade6b0741d024a54";
+          sha256 = "06bqnyx2h0ypyxy5vxrh3v75qqfcmfgx31xkip7w6sj6pbfc8dq5";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/913386ac8d5049d37154da3ab32bde408a226511/recipes/fountain-mode";
@@ -25518,8 +25637,8 @@
           sha256 = "169d9j7jk3li96fkn2sr257835flkcpml24l4bmzp8j3q57a7wxw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/42acad345b25ee60fba6bd90e503f5437c6241f5/recipes/fraktur-mode";
-          sha256 = "05d7xff4vjy1qzw923xsd0kdm1q2cibgxxc4g83mr0hiwlcx91fl";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/fraktur-mode";
+          sha256 = "0hy2cncbgpp7ysp7qwfpj0r075rxrc77bmc70bw7hf8m1xiw124k";
           name = "fraktur-mode";
         };
         packageRequires = [ cl-lib ];
@@ -25699,8 +25818,8 @@
           sha256 = "0ra9rc53l1gvkqank8apasl3r7wz2yfjrcvmfk3wpxhh24ppxv9d";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/22a334294660e8625cfeeeb7108517e163d8e443/recipes/fringe-helper";
-          sha256 = "1vki5jd8jfrlrjcfd12gisgk12y20q3943i2qjgg4qvcj9k28cbv";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/fringe-helper";
+          sha256 = "1i5wra4j0rvrsl9vbg7fzga8cadw43ka2rwdj1m11wq8m3cs8g7m";
           name = "fringe-helper";
         };
         packageRequires = [];
@@ -25733,12 +25852,12 @@
     fsharp-mode = callPackage ({ company, company-quickhelp, dash, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, popup, pos-tip, s }:
     melpaBuild {
         pname = "fsharp-mode";
-        version = "20161130.653";
+        version = "20170416.335";
         src = fetchFromGitHub {
           owner = "rneatherway";
           repo = "emacs-fsharp-mode-bin";
-          rev = "22cf1815574c2d463c6a790afc7378db9d701fc2";
-          sha256 = "1jqh518kn5c7gk8dqbx28inq71a1i95qafixa5kbh8my6kka7yr1";
+          rev = "c2acdaaf36176d36ccadfe73c2593362ef930ebd";
+          sha256 = "00am42hl5icvbw5d7kpbdcl9sr8flsgl1pqmcxqpcz30yw6f4pr2";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/dc45611e2b629d8bc5f74555368f964420b79541/recipes/fsharp-mode";
@@ -25759,47 +25878,27 @@
           license = lib.licenses.free;
         };
       }) {};
-    fstar-mode = callPackage ({ company, dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    fstar-mode = callPackage ({ company, dash, emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, quick-peek, yasnippet }:
     melpaBuild {
         pname = "fstar-mode";
-        version = "20170329.953";
+        version = "20170415.1236";
         src = fetchFromGitHub {
           owner = "FStarLang";
           repo = "fstar-mode.el";
-          rev = "a033486d2d01cccb3d1b3a17e57155cca167b08e";
-          sha256 = "1dwcni802pqmj3safvr36c7l5mafdvyfvxy1k5qp3ah7qy08xknw";
+          rev = "f40c9358b1749bf413a8b30c94d14284890d16c5";
+          sha256 = "130k0aii2b5k5r54axcy9n3jsn9y8avdwdnbnl0saw7hc9ykwcpa";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e1198ee309675c391c479ce39efcdca23f548d2a/recipes/fstar-mode";
-          sha256 = "0kyzkghdkrnqqbd5b969pjyz9jxgq0j8hkmvlcwikl7ynnhm9lgy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/fstar-mode";
+          sha256 = "1cjwai0qf48m18dsa0r9sh4qlgvdzg5ajfbmxxc2vqzcl5ygrxjx";
           name = "fstar-mode";
         };
-        packageRequires = [ company dash emacs ];
+        packageRequires = [ company dash emacs flycheck quick-peek yasnippet ];
         meta = {
           homepage = "https://melpa.org/#/fstar-mode";
           license = lib.licenses.free;
         };
       }) {};
-    fuel = callPackage ({ cl-lib ? null, emacs, fetchgit, fetchurl, lib, melpaBuild }:
-    melpaBuild {
-        pname = "fuel";
-        version = "20170107.626";
-        src = fetchgit {
-          url = "git://factorcode.org/git/factor.git";
-          rev = "30f73d63f4031b35b52ecb28652aebf1a8e430f1";
-          sha256 = "0yn1sk2fp3bvw79r9lalpcxkcnj70prn56gr82hmkd2n0lq5lzi1";
-        };
-        recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0c3633c23baa472560a489fc663a0302f082bcef/recipes/fuel";
-          sha256 = "0m24p2788r4xzm56hm9kmpzcskwh82vgbs3hqfb9xygpl4isp756";
-          name = "fuel";
-        };
-        packageRequires = [ cl-lib emacs ];
-        meta = {
-          homepage = "https://melpa.org/#/fuel";
-          license = lib.licenses.free;
-        };
-      }) {};
     fuff = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, seq }:
     melpaBuild {
         pname = "fuff";
@@ -25908,12 +26007,12 @@
     futhark-mode = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "futhark-mode";
-        version = "20170216.138";
+        version = "20170408.908";
         src = fetchFromGitHub {
           owner = "HIPERFIT";
           repo = "futhark";
-          rev = "9e9f3b91db7ac161e5985ee8e6104c7eb05d24f9";
-          sha256 = "0kmj9kgp3xcyvx5xc67h69y8ghiw5wc42n9n2gc66in8j8sfxxr3";
+          rev = "dbebfec3bf64a3d74adf978d2f6a059739ac2472";
+          sha256 = "1l722z28hbqma1qgsydfjkxb0p24c80splpxx752x74qi2cid71z";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0607f01aad7e77d53595ad8db95d32acfd29b148/recipes/futhark-mode";
@@ -25973,8 +26072,8 @@
           sha256 = "1wxl900wikkzykzp95v84kcyw3m1d16hklhyqqhsmg58ph4i6r94";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e00737be152e9082d0f0c9076cac7fcd08bd4e7b/recipes/fuzzy-match";
-          sha256 = "0mpy84f2zdyzmipzhs06b8rl2pxiypazf35ls1nc1yj8r16ijrds";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/fuzzy-match";
+          sha256 = "0c1f4q985ag5qhv15iw2jhmpsyy09fbj87srp4k58lspjf40acdj";
           name = "fuzzy-match";
         };
         packageRequires = [];
@@ -26223,8 +26322,8 @@
           sha256 = "1dadsyvkzf0rg6immjdjkb0k7iaqh3hm1w9qhap94j54j7v75w2q";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/65c120f52e900b393b5ceefeca21b0670ca4a4cc/recipes/geeknote";
-          sha256 = "1ci82fj3layd95lqj2w40y87xps6bs7x05z8ai9m59k244g26m8v";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/geeknote";
+          sha256 = "03q0ca8m110qw8wczyyx94gwqymwnmamahw30j7fqkq6ry19yqsm";
           name = "geeknote";
         };
         packageRequires = [ emacs ];
@@ -26236,12 +26335,12 @@
     geiser = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "geiser";
-        version = "20170325.1956";
+        version = "20170411.1021";
         src = fetchFromGitHub {
           owner = "jaor";
           repo = "geiser";
-          rev = "b75e0376942c1ee54f7d173362d4a38e665342f9";
-          sha256 = "1mbip1w35mjcl4048a1aglvpqwkkf0h990i9yjr6w9p7wlxb8car";
+          rev = "41059d6295dbaa207b2203fb6b78003de4888714";
+          sha256 = "19ri8q3wbpw3vsw2iq1ym60gk0j4f9bniipiddrjqqirhcns8zzq";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b0fe32d24cedd5307b4cccfb08a7095d81d639a0/recipes/geiser";
@@ -26429,8 +26528,8 @@
         src = fetchFromGitHub {
           owner = "DanielG";
           repo = "ghc-mod";
-          rev = "472db909d1b11288885de6fe36c3691be7f175ec";
-          sha256 = "16ywm37y35rpvlzywyqyc2ga4l1h0fz4xy38j18a0z04w7xigkwz";
+          rev = "50617fe41d382132472c3beec50749b21e21325c";
+          sha256 = "1l2a7nab0d3w75qv30597ib5s4gfj0jghdjqfcjcr9267jz1yhs4";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/ghc";
@@ -26454,8 +26553,8 @@
           sha256 = "1ywwyc2kz1c1s26c412nmzh55cinh84cfiazyyi3jsy5zzwhrbhi";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cfbd335054aff49d4a46f73bee881b7a00714d3c/recipes/ghc-imported-from";
-          sha256 = "10cxz4c341lknyz4ns63bri00mya39278xav12c73if03llsyzy5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ghc-imported-from";
+          sha256 = "063kbymk4r1yrg5ks660d2byrnia6gs6nimjzrvqfi2ib1psc7jc";
           name = "ghc-imported-from";
         };
         packageRequires = [ emacs ];
@@ -26517,8 +26616,8 @@
           sha256 = "174swf066vcf99g38c9x5lxp14fyh59cy9lriywhm6hk7mcaakng";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/9b589edfacb807fb17936e139499bdd9673dad94/recipes/ghost-blog";
-          sha256 = "1wqi7r5jr3n0mgax7lddq5h3jfkcq69vvj02a6078vzd2bfxg9ia";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ghost-blog";
+          sha256 = "0289hgvrx96bfpvpbidwi2761kmscg5nzny7g5gxmy3xzzm9bqkj";
           name = "ghost-blog";
         };
         packageRequires = [ markdown-mode ];
@@ -26723,8 +26822,8 @@
         src = fetchFromGitHub {
           owner = "magit";
           repo = "magit";
-          rev = "13352f1ef23c5ccbf7f5f4c54049c1dd66ae3335";
-          sha256 = "0cfz0mb5p7q1bizvv81pqywhcy883093ld6ly3zv4kxbg6lg5jcb";
+          rev = "3c7ac0ed47b8597749f8eaa1b27b9a2029dc2754";
+          sha256 = "0hfar78wkn69s54dkn5m4ky6bvx8sh66sszy67nvqpr5ax9y8dkl";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/git-commit";
@@ -26748,8 +26847,8 @@
           sha256 = "13vd83k6sc3wy4552gvx7zmnmjpa7zs9nk1dlp5v8fc8p3j7afgb";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2356f63464e06c37514447c315c23735da22383a/recipes/git-commit-insert-issue";
-          sha256 = "0mhpszm2y178dxgjv3kh2n744hg2kd60h16zbgmjf4f8228xw8j3";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/git-commit-insert-issue";
+          sha256 = "0xhlchr7dbm0hp4cjba3x1fdf7lnfc97id327i2fqgkdc4yn9fax";
           name = "git-commit-insert-issue";
         };
         packageRequires = [ github-issues gitlab helm projectile s ];
@@ -26866,12 +26965,12 @@
     git-lens = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "git-lens";
-        version = "20160203.2237";
+        version = "20170403.418";
         src = fetchFromGitHub {
           owner = "pidu";
           repo = "git-lens";
-          rev = "be62df785ae14fa8652fe2cdd342d3256f8c0933";
-          sha256 = "02p73q0kl9z44b9a2bhqg03mkqx6gf61n88qlwwg4420dxrf7sbc";
+          rev = "77e74e8575e3be49ff19b9d79bd4b8d9d8a662e0";
+          sha256 = "1axh9v1svb6353g2mqkfk9d0b7q1g4rkscw6nj1g9z72ix4rmnch";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/66fd7c0642e8e61b883d2030f88892d039380475/recipes/git-lens";
@@ -27021,8 +27120,8 @@
           sha256 = "184q3vsxa9rvhc1n57ms47r73f3zap25wswzi66rm6rmfi2k7678";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/318989b10a5bf5b961b3c607730377923c8fb05b/recipes/gitconfig";
-          sha256 = "126znl1c4vwgskj7ka9id8v2bdrdn5nkyx3mmc6cz9ylc27ainm7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/gitconfig";
+          sha256 = "0lqm04nfhhhsdagrjnnagkpg7vpswd8lkd3l52lmpdh0fy16kgrf";
           name = "gitconfig";
         };
         packageRequires = [];
@@ -27168,8 +27267,8 @@
           sha256 = "1yr7v2wdrvwb1slks83bbh857qq1n207rdk48y8qwlcxbk4ygdr6";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3dca88ef598d676661abea79cdbc41bad6dd28be/recipes/github-pullrequest";
-          sha256 = "1icyxvkqy2vyx4b6f7ln0h3hfg0a4lkyajd596fch81irl8cjl34";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/github-pullrequest";
+          sha256 = "1p5mwpl59iwd1aqczf1b5shcpzhlqwrcy2vp46c276mhqx15r8fr";
           name = "github-pullrequest";
         };
         packageRequires = [ dash emacs magit request ];
@@ -27202,12 +27301,12 @@
     github-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "github-theme";
-        version = "20170221.804";
+        version = "20170413.2100";
         src = fetchFromGitHub {
           owner = "philiparvidsson";
           repo = "emacs-github-theme";
-          rev = "a7bce12f914c09c6c58db2d33390e890cb685537";
-          sha256 = "1isskh364klkvx7krxngx9fapf0qr41mzfl581admcl64b70x315";
+          rev = "cf3c1325eb33d3593ba1cc4ad692eff287c33779";
+          sha256 = "0abrbhhllkimidv4mi95nlzzigbr3qvjnd683rpv6f3sdqwcyw5f";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f4ace4a150faa312ef531182f328a3e039045bd7/recipes/github-theme";
@@ -27248,8 +27347,8 @@
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "emacs-gitlab";
-          rev = "9b14a972093b12e3a5d210370592e71df7f0d1e1";
-          sha256 = "03bb6jw0f6l1wi1bl8ynb0k5rnk2rfnrhzc2qp5anmlxzy3qglc8";
+          rev = "730a86b770b0838c86e7080d8d502528e0c26792";
+          sha256 = "11rp2il78av244ba49h243s9a5qvnw5ljqpssiws1j3xcnmbgyz1";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1d012991188956f6e06c37d504b0d06ab31487b9/recipes/gitlab";
@@ -27273,8 +27372,8 @@
           sha256 = "11i9hxj76869w1z9xn7wq370v56hx5hm4d7msn4zgp64glpa66j9";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/888b0cc58375c3eefac94a34e67130ff95822aad/recipes/gitolite-clone";
-          sha256 = "1la1nrfns9j6wii6lriwwsd44cx3ksyhh09h8lf9dai6wp67kjac";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/gitolite-clone";
+          sha256 = "0mv2bdfqqq47wgikkm5kwpr8gajylf1yzk2j6cxljz09amgq6c8q";
           name = "gitolite-clone";
         };
         packageRequires = [ dash emacs pcache s ];
@@ -27475,12 +27574,12 @@
     gnu-apl-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "gnu-apl-mode";
-        version = "20170123.248";
+        version = "20170406.732";
         src = fetchFromGitHub {
           owner = "lokedhs";
           repo = "gnu-apl-mode";
-          rev = "ffa5fec15971ccec0b19f759c9191cac9ee851eb";
-          sha256 = "0hlzdvm7d0r9jh4cv9ff1wdjyfffr2417kkq0mlbv0bvqczwdd8b";
+          rev = "72f6a7fc9153d141494b19ca7ff2c0d1e35c2a16";
+          sha256 = "12w5hnp5nnsy532kfwsp43n633k1n03hs1az6pd9sczjzhhz9ihb";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/369a55301bba0c4f7ce27f6e141944a523beaa0f/recipes/gnu-apl-mode";
@@ -27686,8 +27785,8 @@
         src = fetchFromGitHub {
           owner = "nsf";
           repo = "gocode";
-          rev = "007b034ad7b6d5b70bd18348fc7609a9fdcbad18";
-          sha256 = "1cy7fjbip8c9pmv91bk4kcjcl5qdz3an2i78ywlb3b2qhsac21kc";
+          rev = "1ed1baa46aeda2ce7de181161d4e2d369a740ce1";
+          sha256 = "1ywyvppqyv6r52jagjn45nbrx9r5hsr2b3nxaya8sxsrkjv6hsn7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/04867a574773e8794335a2664d4f5e8b243f3ec9/recipes/go-autocomplete";
@@ -27753,8 +27852,8 @@
           sha256 = "0pph99fl3bwws9vr1r8fs411frd04rfdhl87fy2a75cqcpxlhsj4";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/34756daa47548da1aaf58b324014829d041cddf6/recipes/go-dlv";
-          sha256 = "13mk7mg2xk7v65r1rs6rmvi4g5nvm8jqg3p9nhk62d46i7dzp61i";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/go-dlv";
+          sha256 = "0lb5v9pmd6m8nvk4c9gcda5dmshrf5812gg1arq5p2g0nzg32mm8";
           name = "go-dlv";
         };
         packageRequires = [ go-mode ];
@@ -28362,8 +28461,8 @@
           sha256 = "1abb78xxsggawl43hspl0cr0f7i1b3jd9r6xl1nl5jg97i4byg0b";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2ccb56a2aaabb1169cafc530c63e33d301e04c7a/recipes/gorepl-mode";
-          sha256 = "12h9r4kf9y2v601myhzzdw2c4jc5cb7s94r5dkzriq578digxphl";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/gorepl-mode";
+          sha256 = "0xcjjh9hf3pv5jgv089c6bb00s215fc9qwn72fav1xbm5f49nkaq";
           name = "gorepl-mode";
         };
         packageRequires = [ emacs ];
@@ -28379,8 +28478,8 @@
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "gotest.el";
-          rev = "a057deb08b41e37d767805ffeb024eee30f9faca";
-          sha256 = "07s75y01mrs7m2xmvg764yhivczycynaa31paz8h2pz65sb0qdhd";
+          rev = "30a31c14e5c83019ec4b31fd9913efaf9220b4b9";
+          sha256 = "09pplr231ga3ic8i8jqxqi19ydjp6245spwraqymxqq5h1x94bfs";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0670b42c0c998daa7bf01080757976ac3589ec06/recipes/gotest";
@@ -28396,12 +28495,12 @@
     gotham-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "gotham-theme";
-        version = "20170320.1245";
+        version = "20170414.1046";
         src = fetchFromGitHub {
           owner = "wasamasa";
           repo = "gotham-theme";
-          rev = "7baaee3002bf0be8848e87271b988e39cbd08588";
-          sha256 = "13afqqkzlfww0w0ixckgbqyf68d2268s3cpfvc46j1cm8lzchya9";
+          rev = "2d1a302500cf82155c0f9ca61200b7bf02717e43";
+          sha256 = "183djv4p540m641hcp5nlbk8isr8fq6f109xj4kkfd6mbrs13pig";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4b388de872be397864a1217a330ba80437c287c0/recipes/gotham-theme";
@@ -28481,8 +28580,8 @@
         src = fetchFromGitHub {
           owner = "vmware";
           repo = "govmomi";
-          rev = "ba5f0223b6e1fa692f0e700718a8cfa65595e2b3";
-          sha256 = "1bglnvp009x8c5na3zdzbvfz72i1arxmi5y1c2i0yjw4hggqvvlm";
+          rev = "9bfdc5ce62c0585b48b154cc460f8664dcd124c3";
+          sha256 = "0p00s08fjwh106dag9wyhikzrh0vqd4pzb852b2zrmb7zlhigx65";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/92d6391318021c63b06fe39b0ca38f667bb45ae9/recipes/govc";
@@ -28670,8 +28769,8 @@
         src = fetchFromGitHub {
           owner = "rdallasgray";
           repo = "graphene";
-          rev = "b25707ae82e286aefa5a66087b12c9cb3b7bf2ed";
-          sha256 = "1h21fv8plxydydm509immp0kpkf24ba6j3wrbpvp5w4nkx49mlkl";
+          rev = "bf77248e49b116a241bd5856df918ed63f89e195";
+          sha256 = "1rn498l25vjy1wg45iskry8hh2afvd09cmg8dxppphjislw9pwch";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0206d6adcb7855c2174c3cd506b71c21def1209b/recipes/graphene";
@@ -28874,8 +28973,8 @@
           sha256 = "1f8262mrlinzgnn4m49hbj1hm3c1mvzza24py4b37sasn49546lw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/655332f33f308e4da09dfd27625cb30af29b95a7/recipes/grep-a-lot";
-          sha256 = "1513vnm5b587r15hcbnplgsfv7kv8g5fd0w4nwb6pq7myzv53ra1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/grep-a-lot";
+          sha256 = "1cbl4gl91dx73q3i2glsivfxd8jkanrcrzy35zf6rb7raj7rc1bw";
           name = "grep-a-lot";
         };
         packageRequires = [];
@@ -28932,8 +29031,8 @@
           sha256 = "0rqpgc50z86j4waijfm6kw4zjmzqfii6nnvyix4rkd4y3ryny1x2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/grin";
-          sha256 = "0mvzwmws5pi6hpzgkc43fjxs98ngkr0jvqbclza2jbbqawifzzbk";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/grin";
+          sha256 = "0rak710fp9c7wx39qn4dc9d0xfjr5w7hwklxh99v1x1ihkla9378";
           name = "grin";
         };
         packageRequires = [];
@@ -29008,12 +29107,12 @@
     gruber-darker-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "gruber-darker-theme";
-        version = "20161017.1108";
+        version = "20170330.1211";
         src = fetchFromGitHub {
           owner = "rexim";
           repo = "gruber-darker-theme";
-          rev = "ac87018437667c84fb5bb7e7b17e5ab2c8347272";
-          sha256 = "0gw06d9h0fn9jds8vk8dkz8ghf62jrjmxj8q0qlaisdipmdqk87n";
+          rev = "b9e59d9580d2b95dabf9a53ee3d51c2868b693fa";
+          sha256 = "16g3rshbh9xzr6ng58vp2qw3zin0ylvlnmdg54p5cf8f0d11fd4a";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/87ade74553c04cb9dcfe16d03f263cc6f1fed046/recipes/gruber-darker-theme";
@@ -29134,12 +29233,12 @@
     guess-language = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "guess-language";
-        version = "20170216.909";
+        version = "20170415.544";
         src = fetchFromGitHub {
           owner = "tmalsburg";
           repo = "guess-language.el";
-          rev = "52e7623953dc1a76a24d1b8d261a7a1143fca903";
-          sha256 = "00bkpxfn60sq0vz3xh60fylhvx4ijj9l34qmy55z024f1plzmvwp";
+          rev = "8c8a1616b6a7bc4c10942ee0a1b2591b98fcd493";
+          sha256 = "00hbawijr9c6hpmp7y4yh8xla7nmsi9nq071zkxwyl8yzj34s678";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6e78cb707943fcaaba0414d7af2af717efce84d0/recipes/guess-language";
@@ -29197,12 +29296,12 @@
     guix = callPackage ({ bui, dash, emacs, fetchFromGitHub, fetchurl, geiser, lib, magit-popup, melpaBuild }:
     melpaBuild {
         pname = "guix";
-        version = "20170322.704";
+        version = "20170413.1236";
         src = fetchFromGitHub {
           owner = "alezost";
           repo = "guix.el";
-          rev = "e1dfd9655b69e5e27a040cae5aeff25afec383f1";
-          sha256 = "19z6hapaj9nw238lyd7ivnhfhpxy6wnjkcn93jgdhdx4k3q9aq73";
+          rev = "51405f409508cd95f6e84d2e0fc08c4c380b1791";
+          sha256 = "0ffh6ksd21g896fn4av8nh82cd3qfrczbjkp5ndhhbr16nqgkr56";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b3d8c73e8a946b8265487a0825d615d80aa3337d/recipes/guix";
@@ -29281,12 +29380,12 @@
     gxref = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "gxref";
-        version = "20161215.2352";
+        version = "20170411.1053";
         src = fetchFromGitHub {
           owner = "dedi";
           repo = "gxref";
-          rev = "ffb2139cb9a8299ce965c28cb5d3a617405fb1b4";
-          sha256 = "052j24k1svdnryss983dxjpnz4d51wx1vzqqpgckc86bkc4vfjzf";
+          rev = "380b02c3c3c2586c828456716eef6a6392bb043b";
+          sha256 = "1c5j28rwqx53qdsqglif8yblhm2bwm4qzpl2dg0l0g3pr8pk8zjk";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/429b9150d4054fcadab8c5ca3b688921eeb19b78/recipes/gxref";
@@ -29323,12 +29422,12 @@
     hack-time-mode = callPackage ({ emacs, fetchFromGitLab, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "hack-time-mode";
-        version = "20170322.844";
+        version = "20170413.630";
         src = fetchFromGitLab {
           owner = "marcowahl";
           repo = "hack-time-mode";
-          rev = "02ee6c5c1f691564399a0c76b9c606d7d7dbfe05";
-          sha256 = "0gxlmdf9gy2z3c0nswyac7g4j6cswgf7hd3ccb2bn25v67jb3y6c";
+          rev = "79abe7652690186224ba22d1346d24e7603448f7";
+          sha256 = "176zpdxsjydl7vvh2jhpbwsndzwzzyfhw6hpak16wj5b7rv9jj19";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6481dc9f487c5677f2baf1bffdf8f2297185345e/recipes/hack-time-mode";
@@ -29499,8 +29598,8 @@
           sha256 = "1njrpb1s2v9skyfbgb28clrxyvyp8i4b8kwa68ynvq3vjb4fnws6";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/40ad05c824c7f2ef8d8a6f5dfad6e7685dc70803/recipes/hamlet-mode";
-          sha256 = "0ils4w8ry1inlfj4931ypibj3n60xq6ah74hig62y4vrs4d47gyx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/hamlet-mode";
+          sha256 = "16cyfzv2yrf249jklxdahfmsy8rg6hargjpafy4fz4a532fcbw81";
           name = "hamlet-mode";
         };
         packageRequires = [ cl-lib dash s ];
@@ -29520,8 +29619,8 @@
           sha256 = "0w443knp6kvjm2m79cni5d17plyhbsl0a4kip7yrpv5nmg370q3p";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7c4f1e610cce403e86346b12b03892560dee3ccb/recipes/handlebars-mode";
-          sha256 = "11ahrm4n588v7ir2r7sp4dkbypl5nhnr22px849hdxjcrwal24vj";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/handlebars-mode";
+          sha256 = "0wizasjihnabnqzn1226vh4gb571rs7s86bffhvkfvbk95zkiafq";
           name = "handlebars-mode";
         };
         packageRequires = [];
@@ -29701,12 +29800,12 @@
     haskell-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "haskell-mode";
-        version = "20170325.553";
+        version = "20170406.25";
         src = fetchFromGitHub {
           owner = "haskell";
           repo = "haskell-mode";
-          rev = "c8fe96acc1a8e73e39445b2d5e050540d69d9f5a";
-          sha256 = "03wjrpr191ydqd1kgh65h6naw5bsk16zk14cw885zidyv27d0hr2";
+          rev = "8165d8a809c21e220a257806ebe88180cbc8694a";
+          sha256 = "1vx6liapkkfsd678nmlsx3r641v2vxxbqk82cw6cqanzp3i5p7y4";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7f18b4dcbad4192b0153a316cff6533272898f1a/recipes/haskell-mode";
@@ -29792,8 +29891,8 @@
           sha256 = "1gmh455ahd9if11f8mrqbfky24c784bb4fgdl3pj8i0n5sl51i88";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4d9aa97450fdbd138f8293cfb31212a7c7f9eee8/recipes/haste";
-          sha256 = "0wz15p58g4mxvwbpy9k60gixs1g4jw7pay5pbxnlggc39x1py8nf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/haste";
+          sha256 = "175kprxqbpmssjxavcm7lyzg1cwsxkrfg9pc72vgqyfmcmjyk34c";
           name = "haste";
         };
         packageRequires = [ json ];
@@ -29805,12 +29904,12 @@
     haxe-imports = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, pcache, s }:
     melpaBuild {
         pname = "haxe-imports";
-        version = "20160814.52";
+        version = "20170330.1604";
         src = fetchFromGitHub {
           owner = "accidentalrebel";
           repo = "emacs-haxe-imports";
-          rev = "0fbd5d26f976bcf70bf26e685b2c3c0dc465a058";
-          sha256 = "0hkyhj29imn1hrjabqjwqlj47qdwigcyclic3k3bigk06pjwalmh";
+          rev = "f104a641f3dfe698359d9aca1f28d9383cf43e04";
+          sha256 = "09crkm4ibi4m23qw4saqm0nm2i4cv40md3p768j2vniamby2q78f";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/db7d2b08e914aab7719c6d3a951b142ec7252f34/recipes/haxe-imports";
@@ -29833,8 +29932,8 @@
           sha256 = "106a7kpjj4laxl7x8aqpv75ih54569b3bs2a1b8z4rghmikqc4aw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/haxe-mode";
-          sha256 = "032h0nxlsrk30bsqb02by842ycrw1qscpfprifjjkaiq08wigh1l";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/haxe-mode";
+          sha256 = "07krrpi636dadgyxxhh5037kq527wpnszbl22lk6i5fcxqidcnw9";
           name = "haxe-mode";
         };
         packageRequires = [];
@@ -29854,8 +29953,8 @@
           sha256 = "0pdfvqbz4wmjl15wi3k4h7myij8v63vmyiq8g9fai18f7ad2klp1";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cd0352cac399eb2072dfb788deea9cc22d902964/recipes/haxor-mode";
-          sha256 = "1y4m058whdqnkkf9s6hzi0h6w0fc8ajfawhpjj0wqjam4adnfkq5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/haxor-mode";
+          sha256 = "0ss0kkwjyc7z7vcb89qr02p70c6m2jarr34mxmdv6ipwil58jj1s";
           name = "haxor-mode";
         };
         packageRequires = [ emacs ];
@@ -29935,8 +30034,8 @@
           sha256 = "0cv74cfihr13jrgyqbj4x0na659djfyrhflxni6jdbgbysi4zf6k";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d16829cb4dea98908735be13aa632bc13d308acb/recipes/header2";
-          sha256 = "1dg25krx3wxma2l5vb2ji7rpfp17qbrl62jyjpa52cjfsvyp6v06";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/header2";
+          sha256 = "1vvxb850njn921djvnf76q1p045sqr5hqk6v0p0amvjvih48v0zx";
           name = "header2";
         };
         packageRequires = [];
@@ -29969,12 +30068,12 @@
     helm = callPackage ({ async, emacs, fetchFromGitHub, fetchurl, helm-core, lib, melpaBuild, popup }:
     melpaBuild {
         pname = "helm";
-        version = "20170329.1221";
+        version = "20170416.945";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm";
-          rev = "b7b2cf9fbf0ad68a7487ddab62677384d19b3b8a";
-          sha256 = "0qhdyazyz5y0gs1fcyy4xf4ffdvwrjxpfiki4iyy1fin481bkhwv";
+          rev = "9db9ed21c8d6454c60eb50c7cc935540d31abc43";
+          sha256 = "1vanva75xv52yg68mqcbxvdbrkq66qb883sjvg3fsg4slwivbiz6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7e8bccffdf69479892d76b9336a4bec3f35e919d/recipes/helm";
@@ -30141,8 +30240,8 @@
         src = fetchFromGitHub {
           owner = "antham";
           repo = "helm-backup";
-          rev = "9f7075e81c4996c22bc9dd4fe48ad8e8acc55efb";
-          sha256 = "1zmv80iw1y6pj2c78227pc1hi85a986pkglzvjz8cb3c4rvd81ck";
+          rev = "6f2c7648437be2a74380de8573e39b6258b3085a";
+          sha256 = "16350vdjmcv8n9dmvqik1mdcc927a2wgv3b72pzfpcjj1kx72fvk";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5e6eba7b201e91211e43c39e501f6066f0afeb8b/recipes/helm-backup";
@@ -30397,8 +30496,8 @@
           sha256 = "081wkmp4mcdszyirgifdn4qzpvc9bz3qkvwnlp0c9jzimkizpgsl";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/31d3cd618f2ac88860d0b11335ff81b6e2973982/recipes/helm-cider";
-          sha256 = "1fvpq1xi3xhd8w1yasac87incv1w4av5a8vn0birw8pc7a6bxv4w";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-cider";
+          sha256 = "0ykhrvh6mix55sv4j8q6614sibksdlwaks736maamqwl3wk6826x";
           name = "helm-cider";
         };
         packageRequires = [ cider emacs helm-core seq ];
@@ -30439,8 +30538,8 @@
           sha256 = "1gwg299s8ps0q97iw6p515gwn73rjk1icgl3j7cj1s143njjg122";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f98a21483682eee0950bdba3a93d178db2118e95/recipes/helm-circe";
-          sha256 = "12jfzg03573lih2aapvv5h2mi3pwqc9nrmv538ivjywix5117k3v";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-circe";
+          sha256 = "07559rg55b0glxiw787xmvxrhms14jz21bvprc5n24b4j827g9xw";
           name = "helm-circe";
         };
         packageRequires = [ circe cl-lib emacs helm ];
@@ -30540,8 +30639,8 @@
         src = fetchFromGitHub {
           owner = "manuel-uberti";
           repo = "helm-company";
-          rev = "df67d41adb08488957804e1f3f0105186bcab26a";
-          sha256 = "0n5a4h62b1z7v1lf43p3x10vqscra75ri023gi9z7nc27qai27fh";
+          rev = "f00df346098636650c4047394aa593d67b007859";
+          sha256 = "03rcn9a3fbhcbh739xykjk94jg2sl4mj6y22knfwbh1hm1wymii3";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/78ff0a6cf493ff148406140f3e4902bfafd83e4a/recipes/helm-company";
@@ -30557,12 +30656,12 @@
     helm-core = callPackage ({ async, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-core";
-        version = "20170329.1221";
+        version = "20170416.945";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm";
-          rev = "b7b2cf9fbf0ad68a7487ddab62677384d19b3b8a";
-          sha256 = "0qhdyazyz5y0gs1fcyy4xf4ffdvwrjxpfiki4iyy1fin481bkhwv";
+          rev = "9db9ed21c8d6454c60eb50c7cc935540d31abc43";
+          sha256 = "1vanva75xv52yg68mqcbxvdbrkq66qb883sjvg3fsg4slwivbiz6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7a700c5665e6d72cb4cecf7fb5a2dd43ef9bf7/recipes/helm-core";
@@ -30649,8 +30748,8 @@
           sha256 = "0az1j68g0svynvag7p3x7l1rv4n6y1knkmfcjhcli4jwrkn720xr";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/39c3ea21430473ef22d5ea9c8b2cf7ec9689883a/recipes/helm-dash";
-          sha256 = "1cnxssj2ilszq94v5cc4ixblar1nlilv9askqjp9gfnkj2z1n9cy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-dash";
+          sha256 = "032hwwq4r72grzls5ww7bjyj39c82wkcgf3k7myfcrqd3lgblrwb";
           name = "helm-dash";
         };
         packageRequires = [ cl-lib helm ];
@@ -30733,8 +30832,8 @@
           sha256 = "0cfq06lray7hpnhkwnhjq18izyk2w0m4cxqg0m5nyidiwc4qssqa";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/56036d496c2a5fb1a6b32cdfcd1814944618e652/recipes/helm-dired-history";
-          sha256 = "1k0021wn6x7in4wi9lri2c9wl06pvprv950hgdwgra8m155qjfp1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-dired-history";
+          sha256 = "0qciafa42rbw0dxgkp5mbbwbrcziswmwdj2lszm0px1bip4x7yb8";
           name = "helm-dired-history";
         };
         packageRequires = [ cl-lib helm ];
@@ -30775,8 +30874,8 @@
           sha256 = "183vj5yi575aqkak19hl8k4mw38r0ki9p1fnpa8nny2srjyy34yb";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/527a46536f7cdc235c779d2a69cea4a5d5e06ce9/recipes/helm-dirset";
-          sha256 = "0vng52axp7r01s00cqbbclbm5bx1qbhmlrx9h9kj7smx1al4daml";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-dirset";
+          sha256 = "1bwgv1pm047xafidq23mdqj3sdc5bvqlw74s80dj88ybp3vrpvlk";
           name = "helm-dirset";
         };
         packageRequires = [ cl-lib f helm s ];
@@ -30851,12 +30950,12 @@
     helm-ext = callPackage ({ emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-ext";
-        version = "20170304.910";
+        version = "20170411.1049";
         src = fetchFromGitHub {
           owner = "cute-jumper";
           repo = "helm-ext";
-          rev = "115a3ca9a466fa84c1874ac6175fdf2256c3765c";
-          sha256 = "19bcrgj531par1ayhgwxvzz28fyd7dx5flslxf1vl4qawhn173fz";
+          rev = "fe50af14eebc9be72b026e823facfd0a80593248";
+          sha256 = "1pz7i1byscfq2j73cfgcjqdx8s14h9qxnfmvs5g00m0y3g25hhc0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1ee74cb0aa3445bc9ae4226c2043ee4de3ac6cd3/recipes/helm-ext";
@@ -30914,12 +31013,12 @@
     helm-flx = callPackage ({ emacs, fetchFromGitHub, fetchurl, flx, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-flx";
-        version = "20170110.957";
+        version = "20170404.1230";
         src = fetchFromGitHub {
           owner = "PythonNut";
           repo = "helm-flx";
-          rev = "4ba59e1db2d3c33c8ebd40207456f31ab05c5d75";
-          sha256 = "1bh0nbw2ylgfba0k2bvhasxr6nlcvs5g62ls0xy8207dayjrbjxk";
+          rev = "c8650d9b34afbc236c28aee12cbee998fda8d810";
+          sha256 = "0400maq605qq631a766lzmphyaxwq0lfvb6x29j6aqd6pgxxrjs5";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f1418d260f34d698cec611978001c7fd1d1a8a89/recipes/helm-flx";
@@ -31048,8 +31147,8 @@
           sha256 = "16p1gisbza48qircsvrwx020n96ss1c6s68d7cgqqfc0bf2467is";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/299ebd9b72b5db061d31d7ae4f00b1ce6bb9db34/recipes/helm-ghc";
-          sha256 = "1q5ia8sgpflv2hhvw7hjpkfb25vmrjwlrqz1f9qj2qgmki5mix2d";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-ghc";
+          sha256 = "0bv0sfpya1jyay9p80lv0w6h9kdp96r8lnp6nj15w660p1b51c0d";
           name = "helm-ghc";
         };
         packageRequires = [ cl-lib emacs ghc helm ];
@@ -31191,8 +31290,8 @@
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "emacs-gitlab";
-          rev = "9b14a972093b12e3a5d210370592e71df7f0d1e1";
-          sha256 = "03bb6jw0f6l1wi1bl8ynb0k5rnk2rfnrhzc2qp5anmlxzy3qglc8";
+          rev = "730a86b770b0838c86e7080d8d502528e0c26792";
+          sha256 = "11rp2il78av244ba49h243s9a5qvnw5ljqpssiws1j3xcnmbgyz1";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1d012991188956f6e06c37d504b0d06ab31487b9/recipes/helm-gitlab";
@@ -31229,12 +31328,12 @@
     helm-google = callPackage ({ fetchFromGitHub, fetchurl, google, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-google";
-        version = "20170318.527";
+        version = "20170407.1156";
         src = fetchFromGitHub {
           owner = "steckerhalter";
           repo = "helm-google";
-          rev = "27e619d3bd9974a8e1aebd2e10ebf658f49e620b";
-          sha256 = "01bw1papl2cblqd6kciw9aha7jkj3rilxb8mzi0avpxgm1g3d1fb";
+          rev = "b3f10af10075f1982434d4c27c5933124940942a";
+          sha256 = "102g8yb15rpyxs4pndqqbskg4b8g8ssqk9wfxs9zlyah5qcb2m33";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/88ed6db7b53d1ac75c40d12c21de1dec6d717fbe/recipes/helm-google";
@@ -31342,8 +31441,8 @@
           sha256 = "08pfzs030d8g5s7vkpgicz4srp5cr3xpd84lhrr24ncrhbszxar9";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e1e1f2efa82d5097c1f5e85fba3f67b38a5b37c2/recipes/helm-hayoo";
-          sha256 = "0xdvl6q2rpfsma4hx8m4snbd05s4z0bi8psdalixywlp5s4vzr32";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-hayoo";
+          sha256 = "06nbilb6vfa8959ss5d06zbcwqxlbyi3cb5jnbdag0jnpxvv1hqb";
           name = "helm-hayoo";
         };
         packageRequires = [ haskell-mode helm json ];
@@ -31397,12 +31496,12 @@
     helm-hunks = callPackage ({ emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-hunks";
-        version = "20170225.602";
+        version = "20170406.257";
         src = fetchFromGitHub {
           owner = "torgeir";
           repo = "helm-hunks.el";
-          rev = "1ea40753244ec843f38481b0889bb7d0e8db6619";
-          sha256 = "0lhzzm5z50zfhfvg7chrflgnjnmpr9k9w40s6yczpsfanqm96qp3";
+          rev = "287685254002d47432f267884ac6a83de67ea07c";
+          sha256 = "0gfly5wv391cw7dpixxik0nqs2f7h1n8102pijjipk3g79f1f1ic";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d61cbe53ad42f2405a66de9f551f5b870a60709f/recipes/helm-hunks";
@@ -31426,8 +31525,8 @@
           sha256 = "0128nrhwyzslzl0l7wcjxn3dlx3h1sjmwnbbnp2fj4bjk7chc59q";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/95f1c437d5312e1c8ead63d6f834de86f38d6f58/recipes/helm-idris";
-          sha256 = "1y52675j4kcq14jypxjw1rflxrxwaxyn1n3m613klad55wpfaamf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-idris";
+          sha256 = "04f1963ksbjdza1syajb5vkwwsc9gzk0az6c1m1zgvsianrq4rd9";
           name = "helm-idris";
         };
         packageRequires = [ helm idris-mode ];
@@ -31648,12 +31747,12 @@
     helm-make = callPackage ({ fetchFromGitHub, fetchurl, helm, lib, melpaBuild, projectile }:
     melpaBuild {
         pname = "helm-make";
-        version = "20170206.1323";
+        version = "20170412.1229";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "helm-make";
-          rev = "ed406557c814bb2521cf826370e57ffe9d40d33e";
-          sha256 = "02dfrr474yza18xvshjx41h1fsk81g950k6p3h4j1hpdqgjkv96k";
+          rev = "77f6f47277cfca5df9019165037277cafd0aac76";
+          sha256 = "1cbiqvgynnbj7cc30da2yyakik52bh9aqpr4b55pzly6mcq32qfl";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0f25f066c60d4caff1fbf885bc944cac47515ec8/recipes/helm-make";
@@ -31698,8 +31797,8 @@
           sha256 = "1lbxb4vnnv6s46m90qihkj99qdbdylwncwaijjfd7i2kap2ayawh";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/903a2b64d9a704105100d61f28cdfa8f497abd7d/recipes/helm-mode-manager";
-          sha256 = "1w9svq1kyyj8mmljardhbdvykb334nq1y18s956g4rvqyas2ciyd";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-mode-manager";
+          sha256 = "04yhqbb9cliv1922b0abpc1wrladvhyfmwn8ifqfkzaks4067rhl";
           name = "helm-mode-manager";
         };
         packageRequires = [ helm ];
@@ -31750,6 +31849,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    helm-navi = callPackage ({ emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild, navi-mode, s }:
+    melpaBuild {
+        pname = "helm-navi";
+        version = "20170402.752";
+        src = fetchFromGitHub {
+          owner = "emacs-helm";
+          repo = "helm-navi";
+          rev = "2256591174ff79f889450fdc10822316819d6476";
+          sha256 = "0bbb52v1c81a6ap10qi7mqigi237vwrlmf8mg3ckglm1i710636j";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/e5ffbc25c0eb30b9c96594d50f47cd0383aa8ebc/recipes/helm-navi";
+          sha256 = "0v3amm15pwja2y7zg92hsfhp3scmswwl0q0slg33g11rvj26iiks";
+          name = "helm-navi";
+        };
+        packageRequires = [ emacs helm navi-mode s ];
+        meta = {
+          homepage = "https://melpa.org/#/helm-navi";
+          license = lib.licenses.free;
+        };
+      }) {};
     helm-nixos-options = callPackage ({ fetchFromGitHub, fetchurl, helm, lib, melpaBuild, nixos-options }:
     melpaBuild {
         pname = "helm-nixos-options";
@@ -31816,12 +31936,12 @@
     helm-org-rifle = callPackage ({ dash, emacs, f, fetchFromGitHub, fetchurl, helm, lib, melpaBuild, s }:
     melpaBuild {
         pname = "helm-org-rifle";
-        version = "20170322.1209";
+        version = "20170409.1055";
         src = fetchFromGitHub {
           owner = "alphapapa";
           repo = "helm-org-rifle";
-          rev = "bc9c69b0495b1dd8e84bfcf1722165e30ea87904";
-          sha256 = "0zcxpijxgmpjxx8kincq9w8d83y4pnzi0glbiv92xlxm91fk3mbl";
+          rev = "540d095b769980dbe5e12968a1fd7688d6bc6526";
+          sha256 = "1aqp82njc06zap4iv6jbf7iznw6knwfqi5a7m3cd4ngdcg4gl7s8";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f39cc94dde5aaf0d6cfea5c98dd52cdb0bcb1615/recipes/helm-org-rifle";
@@ -31897,22 +32017,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    helm-pass = callPackage ({ fetchFromGitHub, fetchurl, helm, lib, melpaBuild, password-store }:
+    helm-pass = callPackage ({ auth-password-store, fetchFromGitHub, fetchurl, helm, lib, melpaBuild, password-store }:
     melpaBuild {
         pname = "helm-pass";
-        version = "20160825.1410";
+        version = "20170417.1033";
         src = fetchFromGitHub {
           owner = "jabranham";
           repo = "helm-pass";
-          rev = "36025e7e435c4ee516bab554fa097d958b8b4ba6";
-          sha256 = "0v99cz44bdwajvzf882qp76p85g9mbd1a24b8156wpbsys0dkbg0";
+          rev = "8c4b330dad4be9df74eb44e312d72aedcbf628d4";
+          sha256 = "0q2vjnfiivb778cfnbg777y4srqk117k1kc5az4qk7n3hq0rg12l";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d8100599d69a760cd4548004a552cc0adcdb3bed/recipes/helm-pass";
           sha256 = "11yknsch0avdl8jmj54xk45nba3qh8bhsdrc2rds084i7d5gmqia";
           name = "helm-pass";
         };
-        packageRequires = [ helm password-store ];
+        packageRequires = [ auth-password-store helm password-store ];
         meta = {
           homepage = "https://melpa.org/#/helm-pass";
           license = lib.licenses.free;
@@ -31992,8 +32112,8 @@
           sha256 = "11xahzybwh02ds19y6h5hbpqdj278kcb4239vyykdl3wx8p048a7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4d7905061141721ce9f2f8ccea8fc4cf53519481/recipes/helm-proc";
-          sha256 = "1bq60giy2bs9m3hlbc5nwvy51702a98s0vqass3b290hdgki4bnx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-proc";
+          sha256 = "11mh8ny8mhdmp16s21vy9yyql56zxcgmj2aapqs5jy4yad5q62rz";
           name = "helm-proc";
         };
         packageRequires = [ helm ];
@@ -32097,8 +32217,8 @@
           sha256 = "1xh6v5xlf1prgk6mrvkc6qa0r0bz74s5f4z3dl7d00chsi7i2m5v";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/931471b9df5e722d579aab378887890bf6e854a5/recipes/helm-purpose";
-          sha256 = "0am8fy7ihk4hv07a6bnk9mwy986h6i6qxwpdmfhajzga71ixchg6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-purpose";
+          sha256 = "16c9if636v7l8z5df011vdj4a3ci5kf3rdfk4g9hdbbl639yca79";
           name = "helm-purpose";
         };
         packageRequires = [ emacs helm window-purpose ];
@@ -32152,12 +32272,12 @@
     helm-rage = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild, s }:
     melpaBuild {
         pname = "helm-rage";
-        version = "20161201.222";
+        version = "20170331.607";
         src = fetchFromGitHub {
           owner = "bomgar";
           repo = "helm-rage";
-          rev = "d9a342e2bbdabe86d6c25bb1939c55e3a2a12381";
-          sha256 = "05amzj09jwn0ypnk53i1m1pzxqxghxcfv6s9y0gxnxhr440rbjhb";
+          rev = "67c62eafe8af70b330895576dcb004e45c93a98a";
+          sha256 = "0rrrkz092h7cikcafwf6blkyqsb6qwq1mkw8k4mbb8vy9bp9mx0b";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/84f831fdc5a0e90c23ac11c79f193f4d3c1ebb04/recipes/helm-rage";
@@ -32317,6 +32437,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    helm-rtags = callPackage ({ fetchFromGitHub, fetchurl, helm, lib, melpaBuild, rtags }:
+    melpaBuild {
+        pname = "helm-rtags";
+        version = "20170402.653";
+        src = fetchFromGitHub {
+          owner = "Andersbakken";
+          repo = "rtags";
+          rev = "f1f8709556f25d0cef12b1d4dff5ca0b09a890a0";
+          sha256 = "05r888crk8y5fi4xvarrnr89wjjrrzzdr4bfmd0kzq83vs0azr77";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/helm-rtags";
+          sha256 = "1vv6wnniplyls344qzgcf1ivv25c8qilax6sbhvsf46lvrwnr48n";
+          name = "helm-rtags";
+        };
+        packageRequires = [ helm rtags ];
+        meta = {
+          homepage = "https://melpa.org/#/helm-rtags";
+          license = lib.licenses.free;
+        };
+      }) {};
     helm-rubygems-local = callPackage ({ fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-rubygems-local";
@@ -32538,8 +32679,8 @@
           sha256 = "1pjpzccviz95zgl86yw2xda7lhlsfdddf8la8di8rka8sz79nw72";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6fe2ffb46ea763bc6fb6fb6c899be6d3a67440/recipes/helm-swoop";
-          sha256 = "1fqbhj75hcmy7c2vdd0m7fk3m34njmv5s6k1i9y94djpbd13i3d8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-swoop";
+          sha256 = "1b3nyh4h5kcvwam539va4gzxa3rl4a0rdcriif21yq340yifjbdx";
           name = "helm-swoop";
         };
         packageRequires = [ emacs helm ];
@@ -32559,8 +32700,8 @@
           sha256 = "1yqwq8a5pw3iaj69kqvlgn4hr18ssx39lnm4vycbmsg1bi2ygfzw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/047e5a8cacd8432adc86812e4c014808b99586bc/recipes/helm-systemd";
-          sha256 = "1kcf9218l8aygrcj1h3czyklk1cxc5c73qmv4d3r3bzpxbxgf6ib";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-systemd";
+          sha256 = "0k2yqmvwswihcn75wzn5923z5y4njarmvdlx3j7w3hwsxh6k1mcw";
           name = "helm-systemd";
         };
         packageRequires = [ emacs helm with-editor ];
@@ -32593,16 +32734,16 @@
     helm-tramp = callPackage ({ emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-tramp";
-        version = "20170325.1029";
+        version = "20170412.437";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-helm-tramp";
-          rev = "9c7204ea9d7ce232ce3ff88107854c219397528c";
-          sha256 = "1vqr40bkf7ss25x5bd6nhqi417chgdrkf9gvp302z311vnvpycsy";
+          rev = "e0fc2b0f9c3763e9c1e35cc515a29ebbbcd322e0";
+          sha256 = "06mxff0dx5l2q1ayy574gyhlslngv7ha7jc6yazw8wkhqnldp79h";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4a69f0a17c4efbaea012be8e878af4060fa0c93b/recipes/helm-tramp";
-          sha256 = "1113qxl34sf27a88vpvckrfrigp8vnm42nmfrcxz156maa1g9cbv";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-tramp";
+          sha256 = "0wqnabaywkhj1fnc3wpx7czrqbja1hsqwcpixmvv0fyrflmza517";
           name = "helm-tramp";
         };
         packageRequires = [ emacs helm ];
@@ -32865,8 +33006,8 @@
           sha256 = "0c45pib8qpwgyr271g5ddnsn7hzq68mqflv0yyc8803ni06w9vhj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/652b78013a7a6fa321490413fe98a7de5829b0dc/recipes/heroku";
-          sha256 = "1kadmxmqhc60cb5k14943rad1gbril2hlcnqxnsy4h3j2ykmcdyy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/heroku";
+          sha256 = "1wavsymviybfcmwdfrffbkdwbiydggx55jqg6ql79wf9bx7agacp";
           name = "heroku";
         };
         packageRequires = [];
@@ -32925,8 +33066,8 @@
           sha256 = "1aj1fsc3wr8174xs45j2wc2mm6f8v6zs40xn0r4qisdw0plmsbsy";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0c9d7811584920508184a84ee4049e159cce3bb4/recipes/hexrgb";
-          sha256 = "0mzqslrrf7sc262syj3ja7b7rnbg80dwf2p9bzxdrzx6b8vvsx06";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/hexrgb";
+          sha256 = "0b8lzmyv91f5bg7n2wj50p1pv6hpd2wygjcrffg4wwa52lp24dzk";
           name = "hexrgb";
         };
         packageRequires = [];
@@ -33027,8 +33168,8 @@
           sha256 = "1shkq45vm60nh2kkvf284nck8jwxh7f7m4c5d53k66mxn214h53m";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/05a695ab2bc358690c54611d21ef80cb51812739/recipes/hide-comnt";
-          sha256 = "181kns2rg4rc0pyyxw305qc06d10v025ad7v2m037y72vfwb0igx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/hide-comnt";
+          sha256 = "0l3qvklyyc6hfinlzif7vfspl8b91ql0qdiwhixcilglyvad8r80";
           name = "hide-comnt";
         };
         packageRequires = [];
@@ -33037,16 +33178,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    hide-lines = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    hide-lines = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "hide-lines";
         version = "20151127.1040";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/hide-lines.el";
-          sha256 = "1q87yp1pr62cza3pqimqd09a39yyij4c7pncdww84zz7cii9qrn2";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "hide-lines";
+          rev = "331122bf19361130351cfe55968c2a7820329eb3";
+          sha256 = "183l0sx8zn3jv1fqa3xj7a6fd792sp50jyhm50j3hy7c54m4capf";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2a4e010b04a4c5dddc3f7259fad929e4cb66760d/recipes/hide-lines";
-          sha256 = "146sgvd88w20rqvd8y8kc76cb1nqk6dvqsz9rgl4rcrf0xfqvp7q";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/hide-lines";
+          sha256 = "18h5ygi6idpb5wjlmjjvjmwcw7xiljkfxdvq7pm8wnw75p705x4d";
           name = "hide-lines";
         };
         packageRequires = [];
@@ -33112,6 +33256,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    hierarchy = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "hierarchy";
+        version = "20170417.231";
+        src = fetchFromGitHub {
+          owner = "DamienCassou";
+          repo = "hierarchy";
+          rev = "b2ce428d199967ddfb6face22ec7ec0593bd06fe";
+          sha256 = "11zzm10xivqs16msdw2p2w12zjzwy2qk8mpan08y8zm982dx2mnc";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/7aea238a2d14e9f58c0474251984b6c617b6854d/recipes/hierarchy";
+          sha256 = "0fh1a590pdq21b4mwh9wrfsmm2lw2faw18r35cdzy8fgyf89yimp";
+          name = "hierarchy";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/hierarchy";
+          license = lib.licenses.free;
+        };
+      }) {};
     highlight = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
         pname = "highlight";
         version = "20170223.743";
@@ -33293,12 +33458,12 @@
     highlight-indentation = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "highlight-indentation";
-        version = "20161012.209";
+        version = "20170411.40";
         src = fetchFromGitHub {
           owner = "antonj";
           repo = "Highlight-Indentation-for-Emacs";
-          rev = "731fe2058b68b2eee8c6bc99d914d30f3de233c5";
-          sha256 = "093cvm4sabpchay49xm40mr65q6fk4df2i8kmlqiy2c5dvs5vsgf";
+          rev = "2e1891aef4a763560a2f51c8fa81e5cb16ae3165";
+          sha256 = "03bhig71lb9z2fg3wz0y9cxmdnd7n8m4f6hpnqlsc6x5c8xrjlv5";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/31c443de5088410c0fe1b1c18f664b33ad259277/recipes/highlight-indentation";
@@ -33468,8 +33633,8 @@
           sha256 = "19cgyk0sh8nsmf3jbi92i8qsdx4l4yilfq5jj9zfdbj9p5gvwx96";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a6da3640b72496e2b32e6ed21aa39df87af9f7f3/recipes/highlight-symbol";
-          sha256 = "0gw8ffr64s58qdbvm034s1b9xz1hynzvbk8ld67j06fxpc98qaj4";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/highlight-symbol";
+          sha256 = "01zw7xrkpgc89m55d60dx3s3kjajh5c164f64s2fzrgl9xj92h0r";
           name = "highlight-symbol";
         };
         packageRequires = [];
@@ -33646,12 +33811,12 @@
     historian = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "historian";
-        version = "20170310.1001";
+        version = "20170416.2154";
         src = fetchFromGitHub {
           owner = "PythonNut";
           repo = "historian.el";
-          rev = "47106f8382f5d9032ab52c1dd48ede1a8fdc08ec";
-          sha256 = "04rqjk1mr1097sq0mnjc888ix4d4xcfl3dk8xw7b7b843fh7fbg2";
+          rev = "0838ed60febaf618cf242377d92aa9b5c4e42fae";
+          sha256 = "1zzngs5xqqib2yj19snwndyc27s8lfm6nfsya9zvz4bafizgdn6k";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f16dacf64c52767c0c8aef653ac5d1a7a3bd0883/recipes/historian";
@@ -33816,8 +33981,8 @@
           sha256 = "1dhrfbmh98y18xgsp42rx1qqcs296mpqqzzp3nr9rcqv4gvpllgp";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2d5d1cf2f29d46e8abd821095da86f137650a2ff/recipes/hl-line+";
-          sha256 = "13yv2nmx1wb80z4yifnh6d67rag17wirmp7z8ssq3havjl8lbpix";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/hl-line+";
+          sha256 = "16wlvi97wfkj36rnkbhzsky7sib3b76r2ng0lizp7ncr8d0vvhfv";
           name = "hl-line-plus";
         };
         packageRequires = [];
@@ -33858,8 +34023,8 @@
           sha256 = "1fsyj9cmqcz5nfxsfcyvpq2vqrhgl99xvq7ligviawl3x77376kw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/48b99dd60dda3039a0e1e71bb4b796d62340279e/recipes/hl-sexp";
-          sha256 = "0kg0m20i9ylphf4w0qcvii8yp65abdl2q5flyphilk0jahwbj9jy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/hl-sexp";
+          sha256 = "109qzk39s5l30fmrfxhkx1y6ldbw9d5xnahwdvasc8fal5j6f1bm";
           name = "hl-sexp";
         };
         packageRequires = [];
@@ -33910,16 +34075,16 @@
     hledger-mode = callPackage ({ async, emacs, fetchFromGitHub, fetchurl, htmlize, lib, melpaBuild, popup }:
     melpaBuild {
         pname = "hledger-mode";
-        version = "20170315.1829";
+        version = "20170416.111";
         src = fetchFromGitHub {
           owner = "narendraj9";
           repo = "hledger-mode";
-          rev = "9b671c6ca7a2d76338d6f4e38966e9cdb78bd991";
-          sha256 = "1v3bd43kaihwbxvflg5kfiw2wmwjmvh5hhdzmdjlvmvqrhwsnxdc";
+          rev = "f4244cbd773a20b887b937a2eafd1933d91a4d4d";
+          sha256 = "1qv3v6x2ld518kg1f9ic3bz5y61jpqqzrlwlisd8jwx7cc8jvzic";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/c656975c61396d8d4ded0f13ab52b17ccc238408/recipes/hledger-mode";
-          sha256 = "1xpar3nx1axc6yb0bph8xwvx0jcl79da9bz40an2fpr4l1pp4fw3";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/hledger-mode";
+          sha256 = "15s8rqc94z70jzv13961nvcm9a9qadq04pf0m6xrzf8qqk71zn52";
           name = "hledger-mode";
         };
         packageRequires = [ async emacs htmlize popup ];
@@ -34231,8 +34396,8 @@
           sha256 = "1cvlh1iqjdmgwbw254g0rfdshsj7dhqjjp56gwqhn2fqkga44a7i";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/55a0355077a16f82b45113d37a10b26676f5f507/recipes/html-to-hiccup";
-          sha256 = "10d0fafqn6f1mwjbx8zizkc5ql9njs4f3ghplirqy82cx4w8rgbq";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/html-to-hiccup";
+          sha256 = "0gyghgdil14i4p0yv5mb6la1ajzf8xcgdm1si5i5w7cn72vfapmz";
           name = "html-to-hiccup";
         };
         packageRequires = [ dash emacs s ];
@@ -34262,6 +34427,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    html2org = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "html2org";
+        version = "20170416.624";
+        src = fetchFromGitHub {
+          owner = "lujun9972";
+          repo = "html2org.el";
+          rev = "89d35daea5e00bb597798800354ddd9fddcc2887";
+          sha256 = "1il0h1plwn6472r8xa312dg0zvxxwdmj7yh6zh94l9p3y4iiwy4d";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/771e6604edc90182697bbd4827c8c46c34b48289/recipes/html2org";
+          sha256 = "1lj4dwmjkc43dfmsc7z4nvydmmf6wrk5v9ms23zf0llnk9h3hvnk";
+          name = "html2org";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/html2org";
+          license = lib.licenses.free;
+        };
+      }) {};
     htmlize = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "htmlize";
@@ -34304,16 +34490,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    http-post-simple = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    http-post-simple = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "http-post-simple";
         version = "20131010.2058";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/http-post-simple.el";
-          sha256 = "1wp2rwc1hgd5c3yr6b96yzzakd1qmy5d95mhc6q4f6lx279nx0my";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "http-post-simple";
+          rev = "1c7b06cb0d6930aaaf3f319d9836786d40f1595f";
+          sha256 = "1nvcqh3wwczh83k4nb7zgk1r07bsaycbds4zhpy7gic3jhxbvdns";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4d1df16d1c429c46ea5555021ce84d050007adfb/recipes/http-post-simple";
-          sha256 = "1b2fh0hp5z3712ncgc5ns1f3sww84khkq7zb3k9xclsp1p12a4cf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/http-post-simple";
+          sha256 = "0z3zphaqywbm7vn2g1f7fkrdamgsc26i8zydm9y53v9z9fmzch5s";
           name = "http-post-simple";
         };
         packageRequires = [];
@@ -34333,8 +34522,8 @@
           sha256 = "0fxmk5b4ggi92n5gi2nim08a2gx1yg7jlp4hj4m0qazxqdcy38i1";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/56e6078d42cfefbe3f0731952f67afd7f6e9a92e/recipes/http-twiddle";
-          sha256 = "153qavpcwvk2g15w5a814xjsnsv54xksx4iz6yjffvvzq14a08ry";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/http-twiddle";
+          sha256 = "1d8xnwhb8lp4p4xnnkryx5c6isd8ckalp0smx66lbi1pa4g6iqsh";
           name = "http-twiddle";
         };
         packageRequires = [];
@@ -34409,12 +34598,12 @@
     hungry-delete = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "hungry-delete";
-        version = "20161128.2238";
+        version = "20170411.1802";
         src = fetchFromGitHub {
           owner = "nflath";
           repo = "hungry-delete";
-          rev = "2cedcdd113032414ea6d3bfa2504c8820b1a841a";
-          sha256 = "1fg2his564qiqk7b47nswxcq4pd17ip164v4zva9715cjzgyzn66";
+          rev = "0434458d3f6b2b585f332271feaa054bf4ec96d7";
+          sha256 = "04g8gdfqpzdhxf5rnl2k49f2klmzxwys79aib7xs30i0n8c8qb7d";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e33960d9b7e24f830ebe4e5a26a562422d52fe97/recipes/hungry-delete";
@@ -34543,8 +34732,8 @@
           sha256 = "17k41rah17l9kf7bvlm83x71nzz4aizgn7254cl5sb59mdhcm8pm";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f050a5b4bc18839a8d945c0799d0c0e239fa6864/recipes/i2b2-mode";
-          sha256 = "172qnprmfliic3rszzg3g7q015i3dchd23skrbdikg0kxj5c57lf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/i2b2-mode";
+          sha256 = "1jnlisdnp9sz54p444vlq00y3080i4ljcvclri9fy382g1s5ags5";
           name = "i2b2-mode";
         };
         packageRequires = [];
@@ -34617,12 +34806,12 @@
     ibuffer-projectile = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, projectile }:
     melpaBuild {
         pname = "ibuffer-projectile";
-        version = "20150121.837";
+        version = "20170410.1452";
         src = fetchFromGitHub {
           owner = "purcell";
           repo = "ibuffer-projectile";
-          rev = "8b225dc779088ce65b81d8d86dc5d394baa53e2e";
-          sha256 = "1zcnp61c9cp2kvns3v499hifk072rxm4rhw4pvdv2mm966vcxzvc";
+          rev = "a004cd0121ab15a00311631289fc6a8c7a86a897";
+          sha256 = "013yx94q2ffhiqbx9dara7kq76yfmigj4y00zc48rdinclnzb6az";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/363a6a888945f2c8b02f5715539439ba744d737d/recipes/ibuffer-projectile";
@@ -34700,7 +34889,7 @@
       }) {};
     icicles = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
         pname = "icicles";
-        version = "20170303.1455";
+        version = "20170409.1830";
         src = fetchurl {
           url = "https://www.emacswiki.org/emacs/download/icicles.el";
           sha256 = "00zsdahszs919zvklxgpm5kqhm2139cdr4acchgp9ppnyljs94jp";
@@ -34829,8 +35018,8 @@
           sha256 = "0f8rxvc3dk2hi4x524l18fx73xrxy0qqwbybdma4ca67ck9n6xam";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7bdccd978644a6de9de1da0cf42304f748622885/recipes/idle-require";
-          sha256 = "1lr330bqj4rfh2jgn3562sliani4yw5y4j2hr6cq9cfjjp18qgsj";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/idle-require";
+          sha256 = "03z8d06ifzaf81h8b3h16ab69cp3ssky3my07spy81rbhbjl5nn3";
           name = "idle-require";
         };
         packageRequires = [];
@@ -35018,8 +35207,8 @@
           sha256 = "1ip8g0r0aimhc4a1f06m711zmbs0krxn8hmayk99gk5kkz12igkb";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1ccca92fee3d39966df135a5c79e42d2ab621848/recipes/ido-grid-mode";
-          sha256 = "1wl1yclcxmkbfnvp0il23csdf6gprzf7fkcknpivk784fhl19acr";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ido-grid-mode";
+          sha256 = "0sq1d2fwvv247rr9lqg9x87d5h910k5ifqr9cjyskc74mvhrcsr3";
           name = "ido-grid-mode";
         };
         packageRequires = [ emacs ];
@@ -35354,8 +35543,8 @@
           sha256 = "1pbbkizaa2f8lazpsc1j7qs3snvwkmw7schzhminzxrvdx15yids";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/aa2b2745bd1f1778070954c834158c19d4cfb788/recipes/iedit";
-          sha256 = "02gjshvkcvyr58yf6vlg3s2pzls5sd54xpxggdmqajfg8xmpkq04";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/iedit";
+          sha256 = "0bh8ir6kspxjsvjww5y3b5hl3flbm2cc77jh8vnnva3z086f18mh";
           name = "iedit";
         };
         packageRequires = [];
@@ -35454,8 +35643,8 @@
           sha256 = "11pss3hfxkfkyi273zfajdj43shdl6pn739zfv9jbm75v7m9bz6f";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2d1d94609f2ef349c8b877791a996de3b6b60da9/recipes/igv";
-          sha256 = "01igm3cb0lncmcyy72mjf93byh42k2hvscqhg8r7iljbxm58460z";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/igv";
+          sha256 = "0vjqdyj9j26y0hhzmip6lpwc8g1c9vnmgya1p7v77bkgdicgl659";
           name = "igv";
         };
         packageRequires = [];
@@ -35661,8 +35850,8 @@
           sha256 = "1q53r3f3x0hpzryxd1v1w3qgs54p384q0azi7xj2gppi1q49sa42";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/eddb7acecc4948ade16ff02415484c9a16529c9c/recipes/imgix";
-          sha256 = "0dh7qsz5c9mflldcw60vc8mrxrw76n2ydd7blv6jfmsnr19ila4q";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/imgix";
+          sha256 = "1480571q6qy7wv88398kxjhd96gsdhb6ar6pa1kr5y6il0s6d5lg";
           name = "imgix";
         };
         packageRequires = [ cl-lib dash ht json s ];
@@ -35807,8 +35996,8 @@
           sha256 = "1xz99g9j8gfd6qrdsmrf98mq61168divw8lrwl3zylfw04x20b4b";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/695534126f0caa52f66bb90b0277d08d524daa21/recipes/importmagic";
-          sha256 = "1d85sg8wsm03v8zmv5w0znkgnr4q33x0d3frkr16dcmgqh2z9lgp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/importmagic";
+          sha256 = "1kpmgpll0zz3zlr3q863v1fq6wmwdwx7mn676x0r7g4iy1bdslmv";
           name = "importmagic";
         };
         packageRequires = [ emacs epc f ];
@@ -35849,8 +36038,8 @@
           sha256 = "1jk8k13mx5z3v38q9d8m5lz52p14imj89zvy7484mbjqmvxh6wga";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/9d8c79e455b3a567b179812754f82452469dc267/recipes/indent-tools";
-          sha256 = "1i81pk62lnjww80dpi5b55fz7p0z2qxm19z6v3225x2jpylwcab3";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/indent-tools";
+          sha256 = "12rawl9qaihgyascy53yxpkknp95wh8fiqygb5cgl7d761qizvp6";
           name = "indent-tools";
         };
         packageRequires = [ hydra s yafolding ];
@@ -35880,6 +36069,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    indium = callPackage ({ company, emacs, fetchFromGitHub, fetchurl, js2-mode, lib, melpaBuild, seq, websocket }:
+    melpaBuild {
+        pname = "indium";
+        version = "20170414.156";
+        src = fetchFromGitHub {
+          owner = "NicolasPetton";
+          repo = "Indium";
+          rev = "0da2825dc21d3ba14b5dea6965f79330eb7ba13e";
+          sha256 = "1hf9ls1wh5iykai454rc96gkcl4959h71akf7i5gm9kk4hsjcf5q";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4292058cc6e31cabc0de575134427bce7fcef541/recipes/indium";
+          sha256 = "024ljx7v8xahmr8jm41fiy8i5jbg48ybqp5n67k4jwg819cz8wvl";
+          name = "indium";
+        };
+        packageRequires = [ company emacs js2-mode seq websocket ];
+        meta = {
+          homepage = "https://melpa.org/#/indium";
+          license = lib.licenses.free;
+        };
+      }) {};
     indy = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "indy";
@@ -35904,12 +36114,12 @@
     inf-clojure = callPackage ({ clojure-mode, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "inf-clojure";
-        version = "20170325.2346";
+        version = "20170414.1424";
         src = fetchFromGitHub {
           owner = "clojure-emacs";
           repo = "inf-clojure";
-          rev = "4e802769559153b975f1b24d5a28bc80d212c807";
-          sha256 = "0i66y0n0yq3dzhl176anqsjj7p0pvrpwfyahhg8cd5mw1svgdf5f";
+          rev = "e10ac489e015515aaa7f49d397c08a26063cf777";
+          sha256 = "0085mjlbw6sppgps3g6zlmkr1ih8ffnfjmaak05vsfiq5sivxldl";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5d6112e06d1efcb7cb5652b0bec8d282d7f67bd9/recipes/inf-clojure";
@@ -36013,8 +36223,8 @@
         src = fetchFromGitHub {
           owner = "eschulte";
           repo = "jump.el";
-          rev = "9519c675e8a650f6afade7d870e925d0fb50f112";
-          sha256 = "1bm1mgd632gq3cl4zrq66vnqq9ynvc01iy6szp464ccnm3cmqdzr";
+          rev = "95a9559bd301ff86fa3b72b15126dc4851ce4a69";
+          sha256 = "0fyrrzilvacvrxbw8r6wc0jphrk3h4dsw86zp3d63h4s6rlldhsa";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/392c7616d27bf12b29ef3c2ea71e42ffaea81cc6/recipes/inflections";
@@ -36090,12 +36300,12 @@
     inherit-local = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "inherit-local";
-        version = "20161007.724";
+        version = "20170409.949";
         src = fetchFromGitHub {
           owner = "shlevy";
           repo = "inherit-local";
-          rev = "426f7997af0906013846d20729a499f0ce6db634";
-          sha256 = "1n97636c3zi7cq93m5fxvgqkqg5aryn742q7pb1s1w47smdpclgl";
+          rev = "b1f4ff9c41f9d64e4adaf5adcc280b82f084cdc7";
+          sha256 = "1fargashyqn4ga420k3ikc1akf7mw3zcarpg24gh2591p4swa0ih";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/08b978724ff26b3ea7a134d307d888c80e2a92a9/recipes/inherit-local";
@@ -36182,8 +36392,8 @@
           sha256 = "0ixqgk101gnm2q6f2bjk2pnqlrj41krqz56lss6fmf81xhxavmpp";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e3276b823cf03455083929599e1d47aea894ad5c/recipes/ink-mode";
-          sha256 = "1fi1g7sim5qyildzz84iwywwq94qxym972ac15sj7yd7x0i8smax";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ink-mode";
+          sha256 = "02q95xay6z56i4l0j24dszxnfpjbxijlj4150nsadbv55m7nnjcf";
           name = "ink-mode";
         };
         packageRequires = [ emacs ];
@@ -36195,12 +36405,12 @@
     inkpot-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "inkpot-theme";
-        version = "20170325.221";
+        version = "20170413.120";
         src = fetchFromGitHub {
           owner = "ideasman42";
           repo = "emacs-inkpot-theme";
-          rev = "cbe5ead0b5993e290ee88d7a07a6ead46f2d0697";
-          sha256 = "07qdg72i5na466gka1x50swlipy4d0k1pkhw1d1p6s3xwq7cfm2p";
+          rev = "372ad654293cd0b8cf7db6129674c5a84d54ca53";
+          sha256 = "0642rcjj1z5c86ry97b6kmf7kivhajvz5f9fz9kqfw0f98srzhrs";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/dd3e02aaf8865d8038b9c590c8545e7a1b21d620/recipes/inkpot-theme";
@@ -36245,8 +36455,8 @@
           sha256 = "0851jgh5v36d7lq9pwlmigqpqrfbrqqssib4id7s4c8j4sh4c03g";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/48f0262ec568a3dd53dcc48f11e473b30c7e6ab1/recipes/inline-docs";
-          sha256 = "1a45a5bxm719fr4xvn26mraph3a19d53c2l74y1jrxhaksgl3n1j";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/inline-docs";
+          sha256 = "1imjcx4qgrs5llindgmnvkb73fagnlxfg04s72kckgcy47c4352p";
           name = "inline-docs";
         };
         packageRequires = [ emacs ];
@@ -36341,12 +36551,12 @@
     intellij-theme = callPackage ({ fetchFromGitLab, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "intellij-theme";
-        version = "20161004.2215";
+        version = "20170416.359";
         src = fetchFromGitLab {
           owner = "fommil";
           repo = "emacs-intellij-theme";
-          rev = "c4b4a7ecdad6ed57545c114b40da9f76371f566e";
-          sha256 = "1wz6j7szb271g1baf6jj4k4kw1dfiz8l677vrazx4wyqdpmzlk0c";
+          rev = "ad207c8c3d266d566fb1e4862df154096c059171";
+          sha256 = "06slahp36mj39ri4v4k7sv3mly6cgk76m4zpc1why3h6dmd7hhyr";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cfe86071b2e84929476a771da99341f4a73cfd06/recipes/intellij-theme";
@@ -36404,12 +36614,12 @@
     intero = callPackage ({ company, emacs, fetchFromGitHub, fetchurl, flycheck, haskell-mode, lib, melpaBuild }:
     melpaBuild {
         pname = "intero";
-        version = "20170321.129";
+        version = "20170410.1625";
         src = fetchFromGitHub {
           owner = "commercialhaskell";
           repo = "intero";
-          rev = "04265e68647bbf27772df7b71c9927d451e6256f";
-          sha256 = "0zax01dmrk1zbqw8j8css1w6qynbavfdjfgfxs34pb37gp4v8mgg";
+          rev = "e546ea086d72b5bf8556727e2983930621c3cb3c";
+          sha256 = "1qv7l5ri3nysrpmnzfssw8wvdvz0f6bmymnz1agr66fplazid4pn";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1b56ca344ad944e03b669a9974e9b734b5b445bb/recipes/intero";
@@ -36559,8 +36769,8 @@
           sha256 = "1s17wpdbrbkbmkndbwm0byy11cmymhs6yn7w0v5lvw5l2cgicxjg";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3f80bcdf411de128139a6bf1f507d7ec87076c25/recipes/ipcalc";
-          sha256 = "0rd9p4yvzabw437qf7lgiyzxnvv6cjai8b22ywsdryxar9fd8pb2";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ipcalc";
+          sha256 = "0hw5g30pnqwzvbhf6kggyj6wij5iw7d8jgmr88pyw63kxach8vkv";
           name = "ipcalc";
         };
         packageRequires = [ cl-lib ];
@@ -36674,12 +36884,12 @@
     irony = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, json ? null, lib, melpaBuild }:
     melpaBuild {
         pname = "irony";
-        version = "20170322.1438";
+        version = "20170404.1127";
         src = fetchFromGitHub {
           owner = "Sarcasm";
           repo = "irony-mode";
-          rev = "63eb90e1f6f257ea8113450d0e02366148f5c2fb";
-          sha256 = "19cr7k33gkkbwzbpib6hvp67r4iz4j68ykmd6mij4gk8r517bqsh";
+          rev = "3a903459d0c368b318a00ad94a18484dafde67a5";
+          sha256 = "1mjwhx9cj8ilv4xf0phpg3xx5h14z4gz4d0ghi7gzakkk5bl31yk";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d2b6a8d57b192325dcd30fddc9ff8dd1516ad680/recipes/irony";
@@ -36742,8 +36952,8 @@
           sha256 = "0zdc45nmswipfi8vrsbfipzd1vg9y0pcggvi5mfpwf7c3qn4sgh2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8a847ee5f4c4206b48cb164c49e9e82a266a0730/recipes/isearch+";
-          sha256 = "1rzlsf08nmc3p3vhpwbiy8cgnnl2c10xrnsr2rlpv0g2kxkrd69r";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/isearch+";
+          sha256 = "0n9jh3bx2h6k4mvbwss16m34fxzlq6sb057rj16hgrlmbqknynhw";
           name = "isearch-plus";
         };
         packageRequires = [];
@@ -36886,8 +37096,8 @@
           sha256 = "1174f75p3rkq812gl2rs1x51nqbz4fqxwsbrd7djh1vkd2zii3aw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/afcd7ab6f3c9ac51a9cd84b30b5f12b7d259386a/recipes/itasca";
-          sha256 = "01075ad0sb5q7aql6j5wmjdk2qhdgbbm5xb0ikrnl7rzc1afvv6j";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/itasca";
+          sha256 = "0j0lvs9x2j3z5yyhbgmymccswi40vv1gz3sl56bl857m1hlxzshz";
           name = "itasca";
         };
         packageRequires = [ emacs ];
@@ -36962,12 +37172,12 @@
     ivy = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "ivy";
-        version = "20170328.1957";
+        version = "20170416.1021";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "swiper";
-          rev = "3fbeaa563916c0e23c6cafa82716e9f2eba44073";
-          sha256 = "14z8f0lx5s63dy7h0x5m6lkhpfbmlq0p64g2r6y3dhswb8zn1pjl";
+          rev = "a3abf3ffd670776da591ae9e5e2d7011b6d6a190";
+          sha256 = "1jn7lry6fdnv9m24m4i5fgvz0qywcx3r08a36l2y1ksb125vank8";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/06c24112a5e17c423a4d92607356b25eb90a9a7b/recipes/ivy";
@@ -37004,12 +37214,12 @@
     ivy-erlang-complete = callPackage ({ async, counsel, emacs, erlang, fetchFromGitHub, fetchurl, ivy, lib, melpaBuild }:
     melpaBuild {
         pname = "ivy-erlang-complete";
-        version = "20170324.401";
+        version = "20170411.451";
         src = fetchFromGitHub {
           owner = "s-kostyaev";
           repo = "ivy-erlang-complete";
-          rev = "1dcb258a0207053a33ac207c11f2414aa89daba2";
-          sha256 = "1nc6d67cbizk1k44b53sx913h2lbrlfmdbi60pz3h567idclw83i";
+          rev = "9ee63f0415e9774082993d672d8200bc7e62d715";
+          sha256 = "0wrkpl6v56k553zzksy4rh6wkwxdp027x8n0byic9phydrnsdn57";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ac1b9e350d3f066e4e56202ebb443134d5fc3669/recipes/ivy-erlang-complete";
@@ -37029,8 +37239,8 @@
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "emacs-gitlab";
-          rev = "9b14a972093b12e3a5d210370592e71df7f0d1e1";
-          sha256 = "03bb6jw0f6l1wi1bl8ynb0k5rnk2rfnrhzc2qp5anmlxzy3qglc8";
+          rev = "730a86b770b0838c86e7080d8d502528e0c26792";
+          sha256 = "11rp2il78av244ba49h243s9a5qvnw5ljqpssiws1j3xcnmbgyz1";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/35d4d4f22e4c567954287b2a1cabcb595497095a/recipes/ivy-gitlab";
@@ -37046,12 +37256,12 @@
     ivy-historian = callPackage ({ emacs, fetchFromGitHub, fetchurl, flx, historian, ivy, lib, melpaBuild }:
     melpaBuild {
         pname = "ivy-historian";
-        version = "20170310.1006";
+        version = "20170416.2154";
         src = fetchFromGitHub {
           owner = "PythonNut";
           repo = "historian.el";
-          rev = "47106f8382f5d9032ab52c1dd48ede1a8fdc08ec";
-          sha256 = "04rqjk1mr1097sq0mnjc888ix4d4xcfl3dk8xw7b7b843fh7fbg2";
+          rev = "0838ed60febaf618cf242377d92aa9b5c4e42fae";
+          sha256 = "1zzngs5xqqib2yj19snwndyc27s8lfm6nfsya9zvz4bafizgdn6k";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fb79cbc9af6cd443b9de97817d24bcc9050d5940/recipes/ivy-historian";
@@ -37067,12 +37277,12 @@
     ivy-hydra = callPackage ({ emacs, fetchFromGitHub, fetchurl, hydra, ivy, lib, melpaBuild }:
     melpaBuild {
         pname = "ivy-hydra";
-        version = "20170302.1033";
+        version = "20170412.30";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "swiper";
-          rev = "3fbeaa563916c0e23c6cafa82716e9f2eba44073";
-          sha256 = "14z8f0lx5s63dy7h0x5m6lkhpfbmlq0p64g2r6y3dhswb8zn1pjl";
+          rev = "a3abf3ffd670776da591ae9e5e2d7011b6d6a190";
+          sha256 = "1jn7lry6fdnv9m24m4i5fgvz0qywcx3r08a36l2y1ksb125vank8";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/06c24112a5e17c423a4d92607356b25eb90a9a7b/recipes/ivy-hydra";
@@ -37148,6 +37358,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    ivy-rtags = callPackage ({ fetchFromGitHub, fetchurl, ivy, lib, melpaBuild, rtags }:
+    melpaBuild {
+        pname = "ivy-rtags";
+        version = "20170415.1027";
+        src = fetchFromGitHub {
+          owner = "Andersbakken";
+          repo = "rtags";
+          rev = "f1f8709556f25d0cef12b1d4dff5ca0b09a890a0";
+          sha256 = "05r888crk8y5fi4xvarrnr89wjjrrzzdr4bfmd0kzq83vs0azr77";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/ivy-rtags";
+          sha256 = "18f0jak643dd8lmx701wgk95miajabd8190ls35831slr28lqxsq";
+          name = "ivy-rtags";
+        };
+        packageRequires = [ ivy rtags ];
+        meta = {
+          homepage = "https://melpa.org/#/ivy-rtags";
+          license = lib.licenses.free;
+        };
+      }) {};
     ivy-todo = callPackage ({ emacs, fetchFromGitHub, fetchurl, ivy, lib, melpaBuild }:
     melpaBuild {
         pname = "ivy-todo";
@@ -37201,8 +37432,8 @@
           sha256 = "1dia1m9fjxbd5lsf788bv7zpdbrwbjswd9m588iaijcdd2hnma8q";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/33cc202ff0f0f283da23dbe7c7bdc5a1a86fb1d8/recipes/ivy-youtube";
-          sha256 = "1llrlxbvpqahivd3wfjfwijzbngijfl786p7ligsb458s69jv1if";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ivy-youtube";
+          sha256 = "1masw9qc33valx55klfhzx0bg1hfazmn5yd9wh12q2gjsz8nxyw4";
           name = "ivy-youtube";
         };
         packageRequires = [ cl-lib ivy request ];
@@ -37279,13 +37510,13 @@
         pname = "jabber";
         version = "20170106.1603";
         src = fetchgit {
-          url = "git://git.code.sf.net/p/emacs-jabber/git";
+          url = "https://git.code.sf.net/p/emacs-jabber/git";
           rev = "2ef76cff4a5a932cf17dc6107a0c5adee806081e";
           sha256 = "0jvgp121544vc0yd31cncz06dkgw4za605nkk914vmql321zjzr2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cff77a688d51ff2e2f03389593465990089ce83d/recipes/jabber";
-          sha256 = "1g5pc80n3cd5pzs3hmpbnmxbldwakd72pdn3vvb0h26j9v073pa8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/jabber";
+          sha256 = "0saajvfpzgcsqa7h7aa6l0bns6swr40c46md6s0d90x9lrvwp7ws";
           name = "jabber";
         };
         packageRequires = [ fsm ];
@@ -37335,27 +37566,6 @@
           license = lib.licenses.free;
         };
       }) {};
-    jade = callPackage ({ company, emacs, fetchFromGitHub, fetchurl, js2-mode, lib, melpaBuild, seq, websocket }:
-    melpaBuild {
-        pname = "jade";
-        version = "20170321.214";
-        src = fetchFromGitHub {
-          owner = "NicolasPetton";
-          repo = "jade";
-          rev = "7cd363187a8d41fe604925df51169ca9ed32f798";
-          sha256 = "0zy7xfa5m01518jf1jy0r4r4r0y0q4p0jd07zdvxihkga7ycr4bp";
-        };
-        recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b989c1bd83f20225314b6e903c5e1df972551c19/recipes/jade";
-          sha256 = "04w7pgn0dkppi6l15rkz8b1bcpw1dsgvvijy81a6i4nkigxxlv4y";
-          name = "jade";
-        };
-        packageRequires = [ company emacs js2-mode seq websocket ];
-        meta = {
-          homepage = "https://melpa.org/#/jade";
-          license = lib.licenses.free;
-        };
-      }) {};
     jade-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "jade-mode";
@@ -37653,12 +37863,12 @@
     jazz-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "jazz-theme";
-        version = "20170115.723";
+        version = "20170411.711";
         src = fetchFromGitHub {
           owner = "donderom";
           repo = "jazz-theme";
-          rev = "0ae13bd12ddc339b8ef6f112c59b916a2da6922e";
-          sha256 = "12iz3hvxha9mya2629azvmrwgkxk6b4fgmgpx1n30wlaw8ap69gj";
+          rev = "b1cb78a97cc4050f19d88a89e455c3e52d98240e";
+          sha256 = "0q9gfa40qh9wypvzg3xrv4kh6l51az9swb39133961dc8zrrrinm";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/da25345df9d8d567541ed6b0ec832310cde67115/recipes/jazz-theme";
@@ -37674,12 +37884,12 @@
     jbeans-theme = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "jbeans-theme";
-        version = "20170303.1035";
+        version = "20170413.901";
         src = fetchFromGitHub {
           owner = "synic";
           repo = "jbeans-emacs";
-          rev = "6eb6132f44bf87e52d5ed74c4bb3869c0d5f66a8";
-          sha256 = "023yhdp4pdfm1fi4y09v925l8f1d8206z41kk1hv90zy034b94hk";
+          rev = "ee3c3b95e4a8697438d48757c604f9491b395417";
+          sha256 = "10zgdc4619y7w80w41jvr63s3wms52kfz011gaxwhzdgm2mdjqav";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6dd4bd78795ec7509d8744fec1e80426ce0557ec/recipes/jbeans-theme";
@@ -37703,8 +37913,8 @@
           sha256 = "00l6mc643na97jrb0k595kwmfg8wc7m5iqjd9l9vvf3dal6389b8";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d7725a5b3e2aa065cc6f9bac55575151cfdc7791/recipes/jdecomp";
-          sha256 = "1s8y7q361300i7f6pany1phxzr42j8gcdv9vpin05xx15p2nr3qz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/jdecomp";
+          sha256 = "1vgjmz7rxvgy9lprzr5b018lzqy3h0zg8913la1bzgwlm3mr68y5";
           name = "jdecomp";
         };
         packageRequires = [ emacs ];
@@ -37716,12 +37926,12 @@
     jdee = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, memoize }:
     melpaBuild {
         pname = "jdee";
-        version = "20170326.1333";
+        version = "20170330.21";
         src = fetchFromGitHub {
           owner = "jdee-emacs";
           repo = "jdee";
-          rev = "940069c397b6db841acfd21ffd15495388deba7c";
-          sha256 = "0p7pfy75cc2rqf4s9m71zaind8rfn3sqak63w10sn542d2m2nhng";
+          rev = "551276220abab21106112c6100a1078313189243";
+          sha256 = "0myln9igbw628lm14l44w3hh2fm6lpbys6iv1b05cfzwpkiszsnh";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a6d2c98f3bf2075e33d95c7befe205df802e798d/recipes/jdee";
@@ -37850,8 +38060,8 @@
           sha256 = "0jayhv8j7b527dimhvcs0d7ax25x7v50dk0k6apisqc23psvkq66";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6ddf4de8f3f4c3c1e3682225f3c46c5928e0e75d/recipes/jenkins-watch";
-          sha256 = "0brgjgbw804x0gf2vq01yv6bd0ilp3x9kvr1nnsqxb9c03ffmb2m";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/jenkins-watch";
+          sha256 = "1mdmh62rq3b8p23xgaf4i0kzpgq3ldljdxsnk07wa8bp3p7jxvgs";
           name = "jenkins-watch";
         };
         packageRequires = [];
@@ -37910,8 +38120,8 @@
           sha256 = "18b6hdqk59gnqh4ibq8lj59kbsg5gbyfb7vfcvpgmxjikpl3cgkz";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cf9bc672a3553ea7996b72b11c9e979811150b59/recipes/jira";
-          sha256 = "0cf5zgkxagvka5v6scgyxqx4mz1n7lxbynn3gl2a4s9s64jycsy6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/jira";
+          sha256 = "1zrywkwzqn5ffzzk3rmy01vj6afm2p9gm81rpc7s86cj3ywfy4wx";
           name = "jira";
         };
         packageRequires = [];
@@ -38007,12 +38217,12 @@
     jpop = callPackage ({ cl-lib ? null, dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "jpop";
-        version = "20160816.348";
+        version = "20170410.550";
         src = fetchFromGitHub {
           owner = "domtronn";
           repo = "jpop.el";
-          rev = "485aec3e09e4f01eeb4b737c4de99fadf79e0b31";
-          sha256 = "1a63xzczwb8frr3d4a2z864qq2wx83lgljqbqphkabx99apc749l";
+          rev = "7628b03260be96576b34459d45959ee77d8b2110";
+          sha256 = "1x7qha7xyn2j225h7axhskngc8icjhgm3f451iq3qysj22q8g4d6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2a52a3cf909d12201196b92685435f9fa338b7ba/recipes/jpop";
@@ -38078,8 +38288,8 @@
           sha256 = "0wqw9gj59n4bxb3zpr3ddaqzwl2rb8zk7zv5dkfrzzvy2rz10zxd";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7658000fb834fb17950a333967b116a785150633/recipes/js-auto-beautify";
-          sha256 = "1as6xkmm295swyc2r6hac2lpf7r36mkq5ib5rxc11f30nnzyya9r";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/js-auto-beautify";
+          sha256 = "0hpp6im24xy4g5l1n9kvpmpj26rnxxnf4snf7xgh5gxx6wsiicy1";
           name = "js-auto-beautify";
         };
         packageRequires = [ web-beautify web-mode ];
@@ -38162,8 +38372,8 @@
           sha256 = "03a13bcipk32hdvh5bm2z8kxs4b2xp3r1phwxmvb49lxx6417bs9";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/69613bafcb5ca5d5436a4b27be6863f37a7d2fab/recipes/js-import";
-          sha256 = "0hbs84sp50f7w0sn8qrskkwdi53076mv00xz3gpvf3a4nfdr7fci";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/js-import";
+          sha256 = "0r653ls1a4kr7i7249afgfj7vz365gadfm8bc1vmqfabxn8mysd4";
           name = "js-import";
         };
         packageRequires = [ dash emacs f projectile ];
@@ -38217,12 +38427,12 @@
     js2-mode = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "js2-mode";
-        version = "20170321.153";
+        version = "20170330.639";
         src = fetchFromGitHub {
           owner = "mooz";
           repo = "js2-mode";
-          rev = "d3b31baf68acd1b7e0d05582e504c44e1a587be7";
-          sha256 = "1k9y5vzm518j98iysc7l6vhp2xy8a06qyd1v5p2xmf3dq751r57v";
+          rev = "908395e3aa413b4293b35aab9d41a56f1dbe1e04";
+          sha256 = "1klwg6clx5nvj6755rakzdg62brfms1s8g9cccdkipbb8m6paffh";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/js2-mode";
@@ -38322,12 +38532,12 @@
     json-mode = callPackage ({ fetchFromGitHub, fetchurl, json-reformat, json-snatcher, lib, melpaBuild }:
     melpaBuild {
         pname = "json-mode";
-        version = "20160803.1606";
+        version = "20170402.1808";
         src = fetchFromGitHub {
           owner = "joshwnj";
           repo = "json-mode";
-          rev = "e8ba0c03c5c10f61b8f0b3f5d531ef1d80dec9b0";
-          sha256 = "1j02bg20ngarfwifdxz6al6394rjms2491xh4nlia7d6ihhhrafr";
+          rev = "c528c7784f6449a35a8c90db58cb73125c69987e";
+          sha256 = "0g9zc9sbs3m92qn2jx4nyd0b8s10c1nl92z5rwq9nci5wsmpqxzg";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/03d0ff6c8d724cf39446fa27f52aa5cc1a3cefb6/recipes/json-mode";
@@ -38364,12 +38574,12 @@
     json-rpc = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "json-rpc";
-        version = "20160427.807";
+        version = "20170402.955";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "elisp-json-rpc";
-          rev = "5692192d25eba1b47758272e8de9d67c9ea4aecd";
-          sha256 = "0cbqhijv2zv9mhnjxadr2kbz5b6jcvciwmza22jkwds0nkn2snmp";
+          rev = "e77a62012e4d6c946666eed3a17454d5c6f83367";
+          sha256 = "1pwa1ifz0c83lwwpj75h10wj7jyghsxg6wpdlfy4dp8102wr8nhg";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/82c6b97cdfe2970f028a00146b01e5734710291b/recipes/json-rpc";
@@ -38470,13 +38680,13 @@
         pname = "jtags";
         version = "20160211.1229";
         src = fetchgit {
-          url = "git://git.code.sf.net/p/jtags/code";
+          url = "https://git.code.sf.net/p/jtags/code";
           rev = "b50daa48510f71e74ce0ec2eb85030896a79cf96";
           sha256 = "03w5y9c1109kpsn6xnxdaz3maiwbvxywqshc1l5wngfc85jwiv8y";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/c083b5368d0c0682e9e92fe6e027c9be0e0af0f1/recipes/jtags";
-          sha256 = "0in5ybgwmghlpa5d7wz0477ba6n14f1mwp5dxcl4y11f1lsq041r";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/jtags";
+          sha256 = "1f3dw9fr31lcqmida14d9rsvy1r1b5d6ihqwdj9hbx5kv7d8jyj7";
           name = "jtags";
         };
         packageRequires = [];
@@ -38555,8 +38765,8 @@
         src = fetchFromGitHub {
           owner = "eschulte";
           repo = "jump.el";
-          rev = "9519c675e8a650f6afade7d870e925d0fb50f112";
-          sha256 = "1bm1mgd632gq3cl4zrq66vnqq9ynvc01iy6szp464ccnm3cmqdzr";
+          rev = "95a9559bd301ff86fa3b72b15126dc4851ce4a69";
+          sha256 = "0fyrrzilvacvrxbw8r6wc0jphrk3h4dsw86zp3d63h4s6rlldhsa";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f0c791aebccc08b770b3969ce5d2e82cbe26f80e/recipes/jump";
@@ -38580,8 +38790,8 @@
           sha256 = "1dgghswf6s7h6h04mhfnsh2m0ld8qqk70l0dq3cxhdjzqx16vnms";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4155696ed09968f432c6205cb3e677beaea42ea0/recipes/jump-char";
-          sha256 = "0l8zvfwpngkgcxl1a36jwwxdh23hi390mikz7xrq63w5zwm0007n";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/jump-char";
+          sha256 = "1r6d1vhm87zafi7rr7z8jwyz3yy7i7s4774n84jsql24j1rzzwd4";
           name = "jump-char";
         };
         packageRequires = [];
@@ -38746,8 +38956,8 @@
           sha256 = "1crghlq0d87kc9mwy7prifxqla4q59c2447hhhl0pxbkf3ag9si1";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/kanban";
-          sha256 = "1sif2ayb8fq5vjz9lpkaq40aw9wiciz84yipab2qczszlgw1l1hb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/kanban";
+          sha256 = "1j4qv3xcg0gk07yx3b4kayiy1n3w8yq1r78h07613iljx2ny91fz";
           name = "kanban";
         };
         packageRequires = [];
@@ -38763,8 +38973,8 @@
         src = fetchFromGitHub {
           owner = "wsgac";
           repo = "kanji-mode";
-          rev = "5e9d5b72468ece11cfb81b729be6babf63ede425";
-          sha256 = "1zh7klqaza840q5f44zzh1wrnd6sqa2k93z3dgx3yhhsxfd1dxvy";
+          rev = "eda4f8666486689d36317db7dbda54fb73d3e3d2";
+          sha256 = "1m0s1kdgz1psiidpxcrzm8qmvmrmk5g2k8lz1lq357z482l4i7ll";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c9f1fb16f2f7f677d0817fd63633dd071ba2cf12/recipes/kanji-mode";
@@ -38780,12 +38990,12 @@
     kaolin-theme = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "kaolin-theme";
-        version = "20170329.649";
+        version = "20170416.1713";
         src = fetchFromGitHub {
           owner = "0rdy";
           repo = "kaolin-theme";
-          rev = "be544a81cff86ab1b54ad673b9229185882ca998";
-          sha256 = "1pjbkff8lcjb6ixjh9pdmgzfdjqq21w9c4q8qjcwmicj1pn1wwya";
+          rev = "1e3a03e0b3c408913c8487cac291d163c53217e8";
+          sha256 = "0zr187f1pc4lj9kglzsh0h71k6vf8j1pkk3p02pacxs4ixs473vy";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d2abf9d914cdc210bbd47ea92d0dac76683e21f0/recipes/kaolin-theme";
@@ -38882,16 +39092,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    key-chord = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    key-chord = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "key-chord";
         version = "20160227.438";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/key-chord.el";
-          sha256 = "03m44pqggfrd53nh9dvpdjgm0rvca34qxmd30hr33hzprzjambxg";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "key-chord";
+          rev = "72443e9ff3c4f1c3ccaced3130236801efde3d83";
+          sha256 = "15jfpysyydcvqlvdannxg2s4bh4i9z6i950fad1qlq43jfmq7k55";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b38ec88553f9b1dfa11b0ce82433b450eb47ebce/recipes/key-chord";
-          sha256 = "0cr9lx1pvr0qc762nn5pbh8w93dx1hh1zzf806cag2b9pgk6d4an";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/key-chord";
+          sha256 = "1g0jqmnn575h5n4figxbc5xs76zl8b1cdqa6wbi3d1p2rn3g8scr";
           name = "key-chord";
         };
         packageRequires = [];
@@ -39205,8 +39418,8 @@
           sha256 = "0yrc09k64rv5is4wvss938mkj2pkvbr98lr3ahsi7p0aqn7s444v";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7c3aa60be932d65929f453f1ce576abcd00252ed/recipes/kill-ring-search";
-          sha256 = "1pg4j1rrji64rrdv2xpwz33vlyk8r0hz4j4fikzwpbcbmni3skan";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/kill-ring-search";
+          sha256 = "1jggi6r5j2dr9y17v4cyskc0wydfdpqgp1pib5dr2kg6n6w0s5xl";
           name = "kill-ring-search";
         };
         packageRequires = [];
@@ -39247,8 +39460,8 @@
           sha256 = "1cr4i66lws6yhyxmyx5jw6d5x7i75435mafkkych4nfa0mv4vicd";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/12e48ea4327188da607cc6f1d25a9cba7991c2f3/recipes/kite";
-          sha256 = "04x92qcvx428l2cvm2nk9px7r8i159k0ra0haq2sjncjr1ajhg9m";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/kite";
+          sha256 = "17bpk9ycx2xkwm3j1dxi5216lbzf5lgnscs8i4y0pkpicdn0wyr6";
           name = "kite";
         };
         packageRequires = [ json websocket ];
@@ -39285,8 +39498,8 @@
         src = fetchFromGitHub {
           owner = "kivy";
           repo = "kivy";
-          rev = "dce021f9d6d4b20f32e93876302c89e27e1b3f44";
-          sha256 = "0h0vgrmcg922dcssn58slbnqbrlmifwg2qngj1k1gp9kmp8z5jih";
+          rev = "fd01c099e9bb5a65bcd58e3a67b090bd39b1e764";
+          sha256 = "060lw75dk8ibgswq2f0yysvkkgpw5q0jmdwqpicdj6n1nc4zn99r";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/688e2a114073958c413e56e1d117d48db9d16fb8/recipes/kivy-mode";
@@ -39310,8 +39523,8 @@
           sha256 = "0b9bwcgxm2gachh2g5cn4fih2n5mzqzvl591ahq0rylgajxmxvhp";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/673b4ecec96562bb860caf5c08d016d6c4b89d8c/recipes/kiwix";
-          sha256 = "1z5gns3y7iv3lmczgxdbvg3wigkch4ljwcx7dc5f92q3ykm0zwhf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/kiwix";
+          sha256 = "0x5ld557kxzx5s8ziy5axgvm1fxlq81l9gvinfgs8f257vjlki07";
           name = "kiwix";
         };
         packageRequires = [ cl-lib emacs ];
@@ -39362,22 +39575,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    kodi-remote = callPackage ({ fetchFromGitHub, fetchurl, json ? null, let-alist, lib, melpaBuild, request }:
+    kodi-remote = callPackage ({ elnode, fetchFromGitHub, fetchurl, json ? null, let-alist, lib, melpaBuild, request }:
     melpaBuild {
         pname = "kodi-remote";
-        version = "20170226.1627";
+        version = "20170410.958";
         src = fetchFromGitHub {
           owner = "spiderbit";
           repo = "kodi-remote.el";
-          rev = "60141505ca027231866f7032c557afd7d085b35f";
-          sha256 = "1c47p9zan4cifiaz097sc3sxq04inh5rqqc22p105x0jm0hykd93";
+          rev = "76603f29cbaf316d72c858afeb3d7ce17e195dba";
+          sha256 = "1j9y678ddpbi6jcnn9yb3bw97kwqgx1k9d172fa324m2iqylrfiq";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/08f06dd824e67250afafdecc25128ba794ca971f/recipes/kodi-remote";
           sha256 = "0f3n7b3plsw28xpz07lf5pv71b6s2xjhq2h23gpyg0r69v99chh5";
           name = "kodi-remote";
         };
-        packageRequires = [ json let-alist request ];
+        packageRequires = [ elnode json let-alist request ];
         meta = {
           homepage = "https://melpa.org/#/kodi-remote";
           license = lib.licenses.free;
@@ -39415,8 +39628,8 @@
           sha256 = "1vc97d3i7jh4fbpan7lfnmsm32c4gwgrg11j2vq7z3rwm42wkkyr";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/692d268189740e8b540ba14ed92b07bb8b7fb399/recipes/kooten-theme";
-          sha256 = "1kkk8nl1xykc4c487icmjrc2xsv8i4s2r5h5gbcpyrk2myqi4179";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/kooten-theme";
+          sha256 = "1zhrjli65pn5nshz8pqn5vbsndzk2h8mhbcldq9k0mc7ki2rrdlv";
           name = "kooten-theme";
         };
         packageRequires = [ emacs ];
@@ -39436,8 +39649,8 @@
           sha256 = "1xs81yafp783sz1clb65yc9w2xlf2kmshbsjynnafqd6pfd0skps";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/9453d96fb963973ff53884d31e060f1e98004acb/recipes/korean-holidays";
-          sha256 = "1w8mhhc05i1b6s9vvpk73zkk5x2kxxh3aax61p54mbkhn0a5zb8r";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/korean-holidays";
+          sha256 = "1yf0z9vpiwhlsnyb0fy9wf5rz6f2fzzign96zgj0zd5hwmznbmyr";
           name = "korean-holidays";
         };
         packageRequires = [];
@@ -39457,8 +39670,8 @@
           sha256 = "18n0lw6cfc56np4s3mvpdp13pnsmqhjn1izipjv1s1sgyjj04qj4";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/617eb74a7a2416d244acc6feaba50eeeb425bda5/recipes/kosmos-theme";
-          sha256 = "0d8h64f3vsrbqw7bzsslhzvwmnfk0kid21gfch817jw7v4gp5zii";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/kosmos-theme";
+          sha256 = "0vj1z69hz0j7kxnzj13c4vck1qj5j1glr9lymk5ns2v8l56gakwb";
           name = "kosmos-theme";
         };
         packageRequires = [ emacs ];
@@ -39470,12 +39683,12 @@
     kotlin-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "kotlin-mode";
-        version = "20160720.1339";
+        version = "20170403.826";
         src = fetchFromGitHub {
           owner = "Emacs-Kotlin-Mode-Maintainers";
           repo = "kotlin-mode";
-          rev = "9e2e4c11fe3a9e8f63ce351762a2b1ac5dbe8a75";
-          sha256 = "0yzhizxb8g0zlnx97vnaqvv0pm2mx4jg7qc2hnfvc5ya02yxhc6p";
+          rev = "e5c6d845e689ed0623b864ff863cc99ca558b442";
+          sha256 = "0add2vi13caxgcxgl2yxdjccjmszs0918jm70084ry3iih8ljl37";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9f2560e913b215821221c96069a1385fe4e19c3e/recipes/kotlin-mode";
@@ -39551,6 +39764,48 @@
           license = lib.licenses.free;
         };
       }) {};
+    kubernetes = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, lib, magit, melpaBuild }:
+    melpaBuild {
+        pname = "kubernetes";
+        version = "20170416.2333";
+        src = fetchFromGitHub {
+          owner = "chrisbarrett";
+          repo = "kubernetes-el";
+          rev = "34b991ec138dece790e9c7ab51a1c0031b81b39b";
+          sha256 = "0vzmx4hahrc4g3qxqrvyqz890zpgz2n3cj9libk13bf4nsfbbj6y";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/16850227ea48f6f38102b9cdf80e0758766a24d2/recipes/kubernetes";
+          sha256 = "06357a8y3rpvid03r9vhmjgq97hmiah5g8gff32dij9424vidil9";
+          name = "kubernetes";
+        };
+        packageRequires = [ dash emacs magit ];
+        meta = {
+          homepage = "https://melpa.org/#/kubernetes";
+          license = lib.licenses.free;
+        };
+      }) {};
+    kubernetes-evil = callPackage ({ evil, fetchFromGitHub, fetchurl, kubernetes, lib, melpaBuild }:
+    melpaBuild {
+        pname = "kubernetes-evil";
+        version = "20170416.1959";
+        src = fetchFromGitHub {
+          owner = "chrisbarrett";
+          repo = "kubernetes-el";
+          rev = "34b991ec138dece790e9c7ab51a1c0031b81b39b";
+          sha256 = "0vzmx4hahrc4g3qxqrvyqz890zpgz2n3cj9libk13bf4nsfbbj6y";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/16850227ea48f6f38102b9cdf80e0758766a24d2/recipes/kubernetes-evil";
+          sha256 = "12ygfs6g9aivf2ws3lxwjm5xnd2kidhli889icpygd5v7gnk9pg8";
+          name = "kubernetes-evil";
+        };
+        packageRequires = [ evil kubernetes ];
+        meta = {
+          homepage = "https://melpa.org/#/kubernetes-evil";
+          license = lib.licenses.free;
+        };
+      }) {};
     kurecolor = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
     melpaBuild {
         pname = "kurecolor";
@@ -39583,8 +39838,8 @@
           sha256 = "0r0lz2s6gvy04fwnafai668jsf4546h4k6zd6isx5wpk0n33pj5m";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cc1cbbdd9e3291207150af7953c3d63ef8cca1c1/recipes/kv";
-          sha256 = "1vzifi6zpkmsh1a3c2njrw7mpfdgyjvpbz3bj42j8cg3vwjnjznb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/kv";
+          sha256 = "0c10r7mhg517p62lc87ccqypsjrm28xh3bgv4f01fnx569jqgzgp";
           name = "kv";
         };
         packageRequires = [];
@@ -39643,8 +39898,8 @@
           sha256 = "0m3swrvxz0cy01pd4kag626fxqp4l2zzwpgr26yp5wpsfxl9avv8";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/85457b78a0fcc4ac0e0910d09594397b21cb1aa8/recipes/lacarte";
-          sha256 = "0a0n1lqakgsbz0scn6617rkkkvzwranzlvkzw9q4zapiz1s9xqp9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/lacarte";
+          sha256 = "07rxgjax6ms0knjj5qplfy0hxzfhs6iqk4ny43566zzqv86n0bhi";
           name = "lacarte";
         };
         packageRequires = [];
@@ -39740,12 +39995,12 @@
     lastpass = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, seq }:
     melpaBuild {
         pname = "lastpass";
-        version = "20170327.352";
+        version = "20170415.1008";
         src = fetchFromGitHub {
           owner = "storvik";
           repo = "emacs-lastpass";
-          rev = "37ce019f3d305ac9806bf7a6f087bd53b12b48b0";
-          sha256 = "0yvdi4fdgk7bk8mz3vjd246wbfbyw6yl821cx94zczlajg9cz9dn";
+          rev = "5407aefb0135b400cd73203b92ac23b8b74050f8";
+          sha256 = "1amqs8v27037qljjrz5r5fn6fscknm3r0hwap1ia5fivg9j8fnzv";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/46e5e8735baab7728bddce2693cea6bcee0e6360/recipes/lastpass";
@@ -40012,12 +40267,12 @@
     ledger-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "ledger-mode";
-        version = "20170310.1705";
+        version = "20170413.2120";
         src = fetchFromGitHub {
           owner = "ledger";
           repo = "ledger-mode";
-          rev = "a1b17719db89af5f865bbe72866ecb65210a6b52";
-          sha256 = "1v4jkmmxy27090bcjjvxmqr64izql5zx951vzh5r3f4c48dn0ig6";
+          rev = "61670fb0ee5ced369fb2265e096ca0b476789c8c";
+          sha256 = "0jvm0j1m5p5hkag61swgmn5zjs6wbgx5ayxs1wf0b9v6cvmjm7vp";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/851eca11911b337f809d030785dc2608c8a47424/recipes/ledger-mode";
@@ -40219,16 +40474,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    levenshtein = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    levenshtein = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "levenshtein";
-        version = "20051013.1056";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/levenshtein.el";
-          sha256 = "0m94z18i1428bispxi285flvjf22kjm33s4sm0ad11m0w0jizir6";
+        version = "20090830.340";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "levenshtein";
+          rev = "070925197ebf6b704e6e00c4f2d2ec783f3df38c";
+          sha256 = "1w6rhp723kn1ns7r0gcblp5q8bvncicnjjsgdangbib1a4l2xw79";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/dd530e23d6de5a592faf4fec7394d052ff440a8b/recipes/levenshtein";
-          sha256 = "1iypnz0bw3baqxa9gldz8cikxvdhw60pvqp00kq5p3v4x3xcy4z2";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/levenshtein";
+          sha256 = "1vdbgzs7gfy89a1dzf6z5l3f5jmly1i8lb2fqi2d08qyl5rhb8bl";
           name = "levenshtein";
         };
         packageRequires = [];
@@ -40287,8 +40545,8 @@
           sha256 = "04lrkdjrhsgg7vgvw1mkr9a5m9xlyvjvnj2aj6w453bgmnp1mbvv";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b3f0d443964f98bb65f2fe8f57048fbee844f2ba/recipes/lib-requires";
-          sha256 = "1g22jh56z8rnq0h80wj10gs38yig1rk9xmk3kmhmm5mm6b14iwdx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/lib-requires";
+          sha256 = "1a69qf9dlsq5r7nm32hd0srzka7crd08gl82w8hjfvdhn43n2h0c";
           name = "lib-requires";
         };
         packageRequires = [];
@@ -40578,12 +40836,12 @@
     lispy = callPackage ({ ace-window, emacs, fetchFromGitHub, fetchurl, hydra, iedit, lib, melpaBuild, swiper, zoutline }:
     melpaBuild {
         pname = "lispy";
-        version = "20170326.801";
+        version = "20170415.842";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "lispy";
-          rev = "15301856dbefe5138f14ade673df4a574cf15eae";
-          sha256 = "15wqgjnpr8i9lsk0mj9y0yaykdr8slh2xswh18hvky4x6azzc6lx";
+          rev = "10a7297d6772367a9cf9cd39ee44e2ff4a04e6c3";
+          sha256 = "1bc6x4bxqlb3dpaia4cm7gvys1nlnq22nn1vqpmfy4scmlrngxc7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e23c062ff32d7aeae486c01e29c56a74727dcf1d/recipes/lispy";
@@ -40857,8 +41115,8 @@
           sha256 = "1gm89azjgsdg0c7z9yprpjbph211c5jnqv11pkf1i1r1wzx0wanj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a20410e916d45e5b243e7eb3bb2226c7e1e67b00/recipes/literate-coffee-mode";
-          sha256 = "1bll1y9q3kcg3v250asjvx2k9kb314qadaq1iwanwgdlp3qvvs40";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/literate-coffee-mode";
+          sha256 = "18fdgay7xfgza75z3xma666f414m9dn7d50w94wzzmv7ja74sp64";
           name = "literate-coffee-mode";
         };
         packageRequires = [ coffee-mode ];
@@ -40899,8 +41157,8 @@
           sha256 = "1j0qa96vlsqybhp0082a466qb1hd2b0621306brl9pfl5srf5jsj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/833e549ba618e58d9cb0b6768a08c651ad8c9e0a/recipes/live-code-talks";
-          sha256 = "173mjmxanva13vk2f3a06s4dy62x271kynsa7pbhdg4fd72hdjma";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/live-code-talks";
+          sha256 = "1ji4lww71dqxnn5c9inix8xqcmgc76wbps0ylxhhgs44ki4hlyrm";
           name = "live-code-talks";
         };
         packageRequires = [ cl-lib emacs narrowed-page-navigation ];
@@ -40912,12 +41170,12 @@
     live-py-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "live-py-mode";
-        version = "20170326.934";
+        version = "20170413.2124";
         src = fetchFromGitHub {
           owner = "donkirkby";
           repo = "live-py-plugin";
-          rev = "b2ff3b041697d56dbc7bfd70d94f708e551a970a";
-          sha256 = "1xpwsajfr2ddn68w2d6j206m4g6h05b6n3xig5flk845899954a4";
+          rev = "58ccb38fdbfbc2e227c8515fea40325fba164f92";
+          sha256 = "14fkwdizn085avhjmd89z6ld8l3aanzj6sx06z3fxy407arfd01v";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c7615237e80b46b5c50cb51a3ed5b07d92566fb7/recipes/live-py-mode";
@@ -40999,8 +41257,8 @@
         version = "20150910.644";
         src = fetchgit {
           url = "http://llvm.org/git/llvm";
-          rev = "fef24043fa2c4020eec6ef45d0da7b8b3f967b57";
-          sha256 = "0wnzjj84n23nkfvx18pjfhc8jfip54qqbw218w3ci4qfghdx741p";
+          rev = "82b3362feae87748cb6e5bbd997d9ce182d65329";
+          sha256 = "0g6rdfcm7wz7dq13vlrz12ldvc6xspgqlxwwwcfayb7nh9czdqbh";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/05b7a689463c1dd4d3d00b992b9863d10e93112d/recipes/llvm-mode";
@@ -41121,12 +41379,12 @@
     log4e = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "log4e";
-        version = "20150105.505";
+        version = "20170401.604";
         src = fetchFromGitHub {
           owner = "aki2o";
           repo = "log4e";
-          rev = "6592682ab7de0e3d1915aa4d3c53e083be79fbeb";
-          sha256 = "1l28n7a0v2zkknc70i1wn6qb5i21dkhfizzk8wcj28v44cgzk022";
+          rev = "34309972ad02abcebbcff6b1682731978aef030c";
+          sha256 = "12zk40gqrh86m50y777kprkwz75vbcm0q1a9narzcs2lnpwc8g4z";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/90d0e451c5a8eb25db95990b058964a9acea4b89/recipes/log4e";
@@ -41144,13 +41402,13 @@
         pname = "log4j-mode";
         version = "20160108.1118";
         src = fetchgit {
-          url = "git://git.code.sf.net/p/log4j-mode/code";
+          url = "https://git.code.sf.net/p/log4j-mode/code";
           rev = "26171b1e723502055e085393b0ecdcb6db406010";
           sha256 = "15x6368pk4bbvhbd6cqnazcxfdz0b3f70029x0884a5797janln5";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/39321e054925a8de854942fec4ed8e7570099fc6/recipes/log4j-mode";
-          sha256 = "06lam4iqxlbl9ib2n2db2nj6jbjzrw2ak8r99n6w4s3fny1q3yxx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/log4j-mode";
+          sha256 = "0311jb47fjji8dqy98anr487f7vnvi85p4mn5ymqvxs5c6972gms";
           name = "log4j-mode";
         };
         packageRequires = [];
@@ -41191,8 +41449,8 @@
           sha256 = "0jpyd2f33pk984kg0q9hxdl4615jb7sxsggnb30mpz7a2ws479xr";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/logito";
-          sha256 = "0bk4qnz66kvhzsk88lw45209778y53kg17iih70ix4ma1x6a3v5l";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/logito";
+          sha256 = "0xi7zbxpialsn4pknj8aqmkbiwwsbapwynrrjb8avhli2hd4s3fl";
           name = "logito";
         };
         packageRequires = [ eieio ];
@@ -41212,8 +41470,8 @@
           sha256 = "05px3zc3is7k2jmh7mal0al5zx5cqvn1bzmhgqq02pp6lwsx5xqa";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/eba82cc626f52e18c7ba9062d7ac648085e79914/recipes/logstash-conf";
-          sha256 = "03i2ilphf3fdjag7m9z5gi23n6ik36qn42mzc22432m4y3c7iksh";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/logstash-conf";
+          sha256 = "0djf2kl6jypxlfss4x8ij670v733vid1vbyg6yd96pc9781v3zrm";
           name = "logstash-conf";
         };
         packageRequires = [];
@@ -41225,12 +41483,12 @@
     logview = callPackage ({ datetime, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "logview";
-        version = "20170303.1225";
+        version = "20170414.1223";
         src = fetchFromGitHub {
           owner = "doublep";
           repo = "logview";
-          rev = "6409991053350ab2d3def61749b92780dd1ed095";
-          sha256 = "0phhkg3qgh4q4b7as0a00zx7kcrlmh24by1sjbp7b4dsd0mnz22k";
+          rev = "aa996ca1df79701e59a6ab0b324adc8b11531563";
+          sha256 = "0mjb2806hkvy8xqkwabfwp29q4gnc719zdc0gjq74xblbrx5f90x";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1df3c11ed7738f32e6ae457647e62847701c8b19/recipes/logview";
@@ -41285,16 +41543,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    look-mode = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    look-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "look-mode";
         version = "20151211.1026";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/look-mode.el";
-          sha256 = "0sl6hqggi6qn2qp9khw11qp5hamngwxrrwx98k3pwpj9kgicdpgp";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "look-mode";
+          rev = "d65f75e8ea24eff2ac31c53b4835b45127eedd56";
+          sha256 = "1adzlviy928wsqx9fvxi71rwv89zyydqmf5g0wrlx66r0ksw3793";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/245ded3ee787da7ad5f462fc6f519a963485adb5/recipes/look-mode";
-          sha256 = "0y3wjfjx0g5jclmv9m3vimv7zd18pk5im7smr41qk09hswi63yqj";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/look-mode";
+          sha256 = "0nhhz5s423g4kqqh0vy8k0696r0myhjfv84p2vciliky9gv1wkig";
           name = "look-mode";
         };
         packageRequires = [];
@@ -41310,8 +41571,8 @@
         src = fetchFromGitHub {
           owner = "Wilfred";
           repo = "loop.el";
-          rev = "30c43568fca7688a70dc0e2e6f72738ee2d4f1fc";
-          sha256 = "1vdfvndc967kagqzswxydcjp14hmfh8gfbm7i9000wb0pi8rpbdg";
+          rev = "e22807f83a0890dc8a904c51ee0742c34efccc6c";
+          sha256 = "1c89hsi0h783s96d322mvqwlf00ndm2qnrc165wpxrdbns38kbbv";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ba481ca96469b3bd518e4fd8f24947338c8af014/recipes/loop";
@@ -41369,12 +41630,12 @@
     lsp-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild }:
     melpaBuild {
         pname = "lsp-mode";
-        version = "20170311.2126";
+        version = "20170415.848";
         src = fetchFromGitHub {
           owner = "vibhavp";
           repo = "emacs-lsp";
-          rev = "0fc5400562247b5d674ae8d18f78824de12ba6b0";
-          sha256 = "1zmpkpx2nhm1vvdagrp75jz6v3d4n7zv45xp49m81xzqsyw20im0";
+          rev = "84c2ca12cd5934322393d764584907d664776bd9";
+          sha256 = "09xvm70np4yz0bmb3hahfrfnajh4lflx2gf27ffn8lviwwxkfkbb";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b192c90c96e24ccb464ac56e624a2fd527bc5cc9/recipes/lsp-mode";
@@ -41513,22 +41774,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    m-buffer = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    m-buffer = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, seq }:
     melpaBuild {
         pname = "m-buffer";
-        version = "20160721.1539";
+        version = "20170407.1441";
         src = fetchFromGitHub {
           owner = "phillord";
           repo = "m-buffer-el";
-          rev = "9c45387989bd7d813f15e56ac5d3210f5e44b1c6";
-          sha256 = "1hiasrn3irxg7s413c34zxknml6fsy3yyykkv2lidk19npy6fslh";
+          rev = "e2d5a416ce47b36da10a9815ff5702f28c716d57";
+          sha256 = "0nm8ljciim7wjc4r021jv8xrsk7jffmagzbllbvd5cab4zxvs4ik";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c34d02682e87c9978a3583bd903dcac5da5b41d5/recipes/m-buffer";
           sha256 = "17smq7wlidsls870hla5b94xq2pwk24b88jvrbbcqw6f5z3ypf94";
           name = "m-buffer";
         };
-        packageRequires = [ emacs ];
+        packageRequires = [ seq ];
         meta = {
           homepage = "https://melpa.org/#/m-buffer";
           license = lib.licenses.free;
@@ -41545,8 +41806,8 @@
           sha256 = "119c77s3qp1vqc5m2yf7m4s81aphkhsvsnwqmpq6xl08r3592zxz";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/17df4dccdffff6ef7b4900565ae64c1cf84c1fda/recipes/macro-math";
-          sha256 = "1r7splwq5kdrdhbmw5zn81vxymsrllgil48g8dl0r60293384h00";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/macro-math";
+          sha256 = "072ycszl4cjc9nvv4axsgyfzz9djpgh4y1xqfr1nxi41nsdfc9kn";
           name = "macro-math";
         };
         packageRequires = [];
@@ -41584,8 +41845,8 @@
           sha256 = "1fm40mxdn289cyzgw992223dgrjmwxn4q8svyyxfaxjrpb38jhjz";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/362b5cb71e81172bc654594c08a5d0b91262851a/recipes/macrostep";
-          sha256 = "1wjibxbdsp5qfhq8xy0mcf3ms0q74qhdrhqndprn6jh3kcn5q63c";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/macrostep";
+          sha256 = "1h1gag21x05a14j0wbg0lg502fq2hbqfhjlg05kysw9f870whfq2";
           name = "macrostep";
         };
         packageRequires = [ cl-lib ];
@@ -41681,12 +41942,12 @@
     magit = callPackage ({ async, dash, emacs, fetchFromGitHub, fetchurl, git-commit, lib, magit-popup, melpaBuild, with-editor }:
     melpaBuild {
         pname = "magit";
-        version = "20170329.221";
+        version = "20170416.1549";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "magit";
-          rev = "13352f1ef23c5ccbf7f5f4c54049c1dd66ae3335";
-          sha256 = "0cfz0mb5p7q1bizvv81pqywhcy883093ld6ly3zv4kxbg6lg5jcb";
+          rev = "3c7ac0ed47b8597749f8eaa1b27b9a2029dc2754";
+          sha256 = "0hfar78wkn69s54dkn5m4ky6bvx8sh66sszy67nvqpr5ax9y8dkl";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/68bb049b7c4424345f5c1aea82e950a5e47e9e47/recipes/magit";
@@ -41709,12 +41970,12 @@
     magit-annex = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, magit, melpaBuild }:
     melpaBuild {
         pname = "magit-annex";
-        version = "20170211.1601";
+        version = "20170408.1426";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "magit-annex";
-          rev = "2437efb93767b352eecf27f5d5e3513e34a395ca";
-          sha256 = "1pmsbl8jh3dgs42k7b0a9ya1ywwy5435pshplc23z33i7qplva9f";
+          rev = "ae6250aead8f283eac8d6951a249cfc7d85e0b40";
+          sha256 = "0n6dhc92z5w67rcfngjzprzbdn42ja263gdqa7fncqq9p66slccq";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-annex";
@@ -41856,12 +42117,12 @@
     magit-p4 = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, magit, magit-popup, melpaBuild, p4 }:
     melpaBuild {
         pname = "magit-p4";
-        version = "20160627.447";
+        version = "20170414.546";
         src = fetchFromGitHub {
           owner = "qoocku";
           repo = "magit-p4";
-          rev = "9c5ef8bbe70c916bc3742025ce0098e3bdf7be6e";
-          sha256 = "12avgqcm7za16m84sx2gnrf6y87gj8g4lxk4hld98myxkvfp04zc";
+          rev = "ef23e89dc504970e78ac9b158731a3eda7d6d7ee";
+          sha256 = "1gld0x4y4jshyfr0q8k5icjpgmfrbcfir13sysgzqjz9ssyn2bi5";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/440d47ca465845eaa601ca8a6e4b15fc197e522b/recipes/magit-p4";
@@ -41881,8 +42142,8 @@
         src = fetchFromGitHub {
           owner = "magit";
           repo = "magit";
-          rev = "13352f1ef23c5ccbf7f5f4c54049c1dd66ae3335";
-          sha256 = "0cfz0mb5p7q1bizvv81pqywhcy883093ld6ly3zv4kxbg6lg5jcb";
+          rev = "3c7ac0ed47b8597749f8eaa1b27b9a2029dc2754";
+          sha256 = "0hfar78wkn69s54dkn5m4ky6bvx8sh66sszy67nvqpr5ax9y8dkl";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-popup";
@@ -41990,8 +42251,8 @@
           sha256 = "143iwmga1ypa6v9086pcfr3n5jvaf1dl9czlld5y7npm4r0pxnbr";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4605012c9d43403e968609710375e34f1b010235/recipes/magithub";
-          sha256 = "1c3rbav13rw16ngjhjwnz80v653k8df63fkw0kayd80xrkxhrkxw";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/magithub";
+          sha256 = "11par5rncsa866gazdw98d4902rvyjnnwbiwpndlyh06ak0lryab";
           name = "magithub";
         };
         packageRequires = [ emacs git-commit magit s with-editor ];
@@ -42192,16 +42453,16 @@
     malinka = callPackage ({ cl-lib ? null, dash, f, fetchFromGitHub, fetchurl, lib, melpaBuild, projectile, rtags, s }:
     melpaBuild {
         pname = "malinka";
-        version = "20160615.1348";
+        version = "20170410.242";
         src = fetchFromGitHub {
           owner = "LefterisJP";
           repo = "malinka";
-          rev = "7a5c6e61462d2d76edcf9231d3cb70a63509269e";
-          sha256 = "19ypnqrdxragnhdxfraxrinbsiamwpmgqgjj35crjnifdcj6lqzz";
+          rev = "8ab9e0bcefb122ef5b931284c6cc329d8f8aaa82";
+          sha256 = "0pasdzgikp8rylxxyfmxd0dd4gfjklgrsd6v1idv8cd0955gbrd8";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/909a2d78f49a11e3f90e7d3c7f8af55e15113442/recipes/malinka";
-          sha256 = "1245mpxsxwnnpdsf0pd28mddgdfhh7x32a2l3sxfq0dyg2xlgvrp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/malinka";
+          sha256 = "1zmnlgy9k1s1s2wgkhlwfsnknmhggy0rx3l495a5x1kqsx6i0c9y";
           name = "malinka";
         };
         packageRequires = [ cl-lib dash f projectile rtags s ];
@@ -42305,8 +42566,8 @@
           sha256 = "10wl7kc76dyijrmdlcl5cx821jg7clsj35r22955mbbgh7zl1x07";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/67fe789d7d3ccf3eb0bbd1982f7d2c506a47bbdb/recipes/manage-minor-mode";
-          sha256 = "11jdj8kd401q0y8bbyyn72f27f51bckqid10dnh64z8w7hv59cw6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/manage-minor-mode";
+          sha256 = "0ljdca9b08dw0kx679jmq0wc484xcpbmzwx8zkncw642pnbj9q0j";
           name = "manage-minor-mode";
         };
         packageRequires = [ emacs ];
@@ -42326,8 +42587,8 @@
           sha256 = "1spj3mlydwnngccrny27p8s3m75n039hipqvzqskdg7p1hvr6m59";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/216a33a3acecb226c6b638a9e30ec4c741779a29/recipes/mandm-theme";
-          sha256 = "1qhxzhv63hk81dff6w06cghir856ck6wn1zba6736qn4phbka7ja";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mandm-theme";
+          sha256 = "0mvzn29ljd3az6axyqq88vkkf1vpcvslc1svlnbyrpdfinphd0mx";
           name = "mandm-theme";
         };
         packageRequires = [];
@@ -42406,8 +42667,8 @@
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "marcopolo";
-          rev = "e53ee8a0822d092d8669d75138f6d73f46d076f9";
-          sha256 = "1hhqgwx65489rdq9qd8v0dpcnwicfr772j3i4k8cmnn2lkr3fmm8";
+          rev = "9193aabdf12223087b5ed58f1507d5d8a24a4381";
+          sha256 = "1yc0sgzh1qprhdrzjqc88d6g4xvw80fblcvjl6yn6kihv1ymz091";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/936a1cff601594575c5b550c5eb16e7dafc8a5ab/recipes/marcopolo";
@@ -42602,8 +42863,8 @@
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "emacs-markdownfmt";
-          rev = "af83cd00fafcaa837ffdb50d1fa2b0ac952f16c0";
-          sha256 = "1alkjvs21wlai742qgcm0bgf3z3c0f10xgalz48gi4vmwn6in7r7";
+          rev = "187a74eb4fd9e8520ce08da42d1d292b9af7f2b7";
+          sha256 = "01rxl997rb7f71mbvygavsxaq2vr17f2nnpbg7i551lg82xrsbb4";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/16cee5fe003e3afc7daf6858ed83843b52e44901/recipes/markdownfmt";
@@ -42648,8 +42909,8 @@
           sha256 = "1w6i1m7xdr9cijnmdj35cl99r12vl83qws0qlfhrgvisilshnr27";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/70a3b6a7b43c76b0ce3b350f5c8d657bf4f7fb04/recipes/markup-faces";
-          sha256 = "12z92j9f0mpn7w2qkiwg54wh743q3inx56q3f8qcpfzyks546grq";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/markup-faces";
+          sha256 = "06fawlv4ih2lsmk7x6h9p5rppl8vw2w3nvlss95kb8fj5fwf7mw9";
           name = "markup-faces";
         };
         packageRequires = [];
@@ -42789,13 +43050,13 @@
         pname = "matlab-mode";
         version = "20160902.459";
         src = fetchgit {
-          url = "git://git.code.sf.net/p/matlab-emacs/src";
+          url = "https://git.code.sf.net/p/matlab-emacs/src";
           rev = "3b3c48ac0c27039e0bef89c643f0ee4c0b53d3d0";
           sha256 = "0kizmzpmc8iw15n6xkrf7m5kbjcs5rwdrxyrfij6cj43szlnkf1z";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/39e384608df76bb3e91bd1405e3a5029181ff94e/recipes/matlab-mode";
-          sha256 = "1bybc5xv5hbjh8afmh03qda5g3m2wcgsk6lgj6jkyyxzdfxqkrck";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/matlab-mode";
+          sha256 = "128v4rwc99dwyfgi5crbr5649fz4l7dwh4lid8w2mwpknyxaxy28";
           name = "matlab-mode";
         };
         packageRequires = [];
@@ -42804,26 +43065,6 @@
           license = lib.licenses.free;
         };
       }) {};
-    matrix-client = callPackage ({ fetchgit, fetchurl, json ? null, lib, melpaBuild, request }:
-    melpaBuild {
-        pname = "matrix-client";
-        version = "20161004.1933";
-        src = fetchgit {
-          url = "https://fort.kickass.systems/git/rrix/matrix-client.git";
-          rev = "5bf61e088fba83754a9e9bbef8459c82bea3be1d";
-          sha256 = "1p8wfxf8pxy9ic5sd6ci1197v3j0r6564k4sw5agqplyzap5g9v5";
-        };
-        recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/adeaf97d285120d7b20f1f7a21cb89eb3c40b3b6/recipes/matrix-client";
-          sha256 = "05q1ggiq4nldcklpv2hndg1nx8jxl6qgi5jjc3kz736x7syb0j34";
-          name = "matrix-client";
-        };
-        packageRequires = [ json request ];
-        meta = {
-          homepage = "https://melpa.org/#/matrix-client";
-          license = lib.licenses.free;
-        };
-      }) {};
     maude-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "maude-mode";
@@ -42877,8 +43118,8 @@
           sha256 = "0kh8yk1py9zg62zfl289hszhq3kl3mqmjk6z5vqkw3mcik4lm69g";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7944652cb7a7bf45f16e86ea379a104d31861e76/recipes/maxframe";
-          sha256 = "10cwy3gi3xb3pfdh6xiafxp3vvssawci3y26jda6550d0w5vardj";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/maxframe";
+          sha256 = "1lxj60qcvv8vakdq79k1brzv3ki74kajrx8620dzx76bnfkryxk8";
           name = "maxframe";
         };
         packageRequires = [];
@@ -43034,12 +43275,12 @@
     mediawiki = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "mediawiki";
-        version = "20170113.1308";
+        version = "20170411.1921";
         src = fetchFromGitHub {
           owner = "hexmode";
           repo = "mediawiki-el";
-          rev = "03c5ca4e884782950d2bcc784ecc2167e43e4aa9";
-          sha256 = "1d2dxpgbccd0p818xpj2wghfhvngyf4mad1ds84v2lbzyxphp6qa";
+          rev = "d4a00fa6873d09920d94b7c35eabe08c715b906d";
+          sha256 = "1l0pfgjv6f5rlqgn8bnc81pzzf743z7ij5qharhxh860248gy41k";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/865e0ba1dbace58784181d214000d090478173bd/recipes/mediawiki";
@@ -43055,12 +43296,12 @@
     meghanada = callPackage ({ company, emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, yasnippet }:
     melpaBuild {
         pname = "meghanada";
-        version = "20170324.222";
+        version = "20170412.2054";
         src = fetchFromGitHub {
           owner = "mopemope";
           repo = "meghanada-emacs";
-          rev = "1ddaca25ee978736dcb3922bb1952d750c39cd5a";
-          sha256 = "09g81d1l5mhji4vbljxgfrgr0051sv7kqy0vwf7awxa4slgl6bnd";
+          rev = "fa20a6ae2e0f0ed3437181f2dc233b8c2a9dca6e";
+          sha256 = "1awi879ch0ms2js1v1kb0c0jv7iicgj8qrfj9xlb3j4wzmxi3vcw";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4c75c69b2f00be9a93144f632738272c1e375785/recipes/meghanada";
@@ -43189,8 +43430,8 @@
           sha256 = "1jd4rjv812iv7kp4wyxdz8sk7j0442m8x2ypk6hiqis0braxnspm";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1b47649b529080e114f34a83dfb2e177c8b815a5/recipes/memolist";
-          sha256 = "1whajbwmz1v01dirv795bhvs27vq9dh0qmj10dk2xia7vhn42mgh";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/memolist";
+          sha256 = "0nvp38qbzcl6dcayjndw32d3r9h8vf2n29i678s1yr280ll8xw6w";
           name = "memolist";
         };
         packageRequires = [ ag markdown-mode ];
@@ -43222,10 +43463,10 @@
       }) {};
     menu-bar-plus = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
         pname = "menu-bar-plus";
-        version = "20170307.845";
+        version = "20170412.1036";
         src = fetchurl {
           url = "https://www.emacswiki.org/emacs/download/menu-bar+.el";
-          sha256 = "1lvnsh45fh23pc49xfz8p5m7z82zzxsrdikmx6pbylzhlr0m3nc4";
+          sha256 = "1rxy2yp1f5fi5wk8lg04dmg943131rvvqiif1k18n0gajg1x8hxx";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/menu-bar+";
@@ -43259,6 +43500,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    meson-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "meson-mode";
+        version = "20170416.247";
+        src = fetchFromGitHub {
+          owner = "wentasah";
+          repo = "meson-mode";
+          rev = "61d8177c3e3c195b32f7420d769a0860a873b7d9";
+          sha256 = "0qqwp5mn11fm8f13nfn72c7bmrxa49jqmacga8ipcla3gx59vhs2";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4702a31ffd6b9c34f96d151f2611a1bfb25baa88/recipes/meson-mode";
+          sha256 = "16yg217ghx6pvlxha2swznkg12c2a9hhyi0hnsbqdj2ijcdzca80";
+          name = "meson-mode";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/meson-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     message-x = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
         pname = "message-x";
         version = "20151029.718";
@@ -43288,8 +43550,8 @@
           sha256 = "0600is9cynvppdy9vrnr1c0m3cyxim0ha4gq4wbhw9h0cvkz8i1b";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/275d537d9dab56e21d0d6d25a287ae9cbcc26d98/recipes/messages-are-flowing";
-          sha256 = "0shqldzd2421ii42briqfbgf7nws54d1ajx6xw8iax8q1yqv4g8q";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/messages-are-flowing";
+          sha256 = "0v74b7cjj87kncndxfpfs6dcc4jcl18wpbirffl7dw6mac2anw6m";
           name = "messages-are-flowing";
         };
         packageRequires = [];
@@ -43519,8 +43781,8 @@
           sha256 = "1cigsr0hkbi1860w38k2j8fw6j4w43pgv2bpkmdsifbqy6l8grpg";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4b5e2bcc637cea31166fbd98a2ca42591a6e3c57/recipes/midje-mode";
-          sha256 = "0069hwy5cyrsv5b1yvjhmjasywbmc8x3daq9hkzidy3a2fmqgqv3";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/midje-mode";
+          sha256 = "16g57mwkm3ypnyqniy1lj9nfn5wj7cyndb5fhl3fym773ywn6hip";
           name = "midje-mode";
         };
         packageRequires = [ cider clojure-mode ];
@@ -43908,8 +44170,8 @@
           sha256 = "1d08i2cfn1q446nyyji0hi9vlw7bzkpxhn6653jz2k77vd2y0wmk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/537bf6c5d5eedaea84806aadccbcec92387fec7a/recipes/mkdown";
-          sha256 = "1b2vi8q6jhq1xv7yr5f3aiyp1w8j59w19vxys0pv6bqr2gra07i1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mkdown";
+          sha256 = "034bwwgh0w1dwawdx2nwn4d6wj65i58aqlvi60kflijfn8l3inr3";
           name = "mkdown";
         };
         packageRequires = [ markdown-mode ];
@@ -44198,8 +44460,8 @@
           sha256 = "1c6ij1c0d6r9chzwqcpgdjq1rb2h0m09fpck9rc9rg5jy7fgdc0d";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/9655505f56fc90ea8ef61e7595af0de7427b273b/recipes/modeline-char";
-          sha256 = "1cb6pm69db0jbksmc4mkawf643i74is9v7ka34pv3mb21nj095qp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/modeline-char";
+          sha256 = "0ksi5vfcwbyhgpp59qdl7l536zw2rd33xf4r2gihcx2g2k52h2w9";
           name = "modeline-char";
         };
         packageRequires = [];
@@ -44321,8 +44583,8 @@
           sha256 = "0z8mcfhj425hb91fkj1pyg3apw1kf4mgy8lx6n1sc8zmib38py0x";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/886da7cd20f8fe5a4dc6a49390f54145f6023d77/recipes/mongo";
-          sha256 = "103zkslqdihjyl81688fvkq96rzk3an1vf3gz8rlmmz5anbql8ai";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mongo";
+          sha256 = "0jb5m611m7w26wgfwijgy0dn65s7p1y6fdcfpfgpxa7j5vrcxasc";
           name = "mongo";
         };
         packageRequires = [];
@@ -44489,8 +44751,8 @@
           sha256 = "04xv4v2n03axjlpm9pg3j4zjapqjb7is3anx6laa90zbw3z2iv9z";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6d6e3fdf5ab0b51605bbeb203b9fccb6db6ef6e9/recipes/morganey-mode";
-          sha256 = "10lmbf21kh0jy567jzx1lam2hqyqygdvnngvxd97nk6pd32hy8s8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/morganey-mode";
+          sha256 = "18cbmx8lnypgxkisxa3lrh88v8l9k0q8fnai5ps8ngvfgz42rlqp";
           name = "morganey-mode";
         };
         packageRequires = [ emacs ];
@@ -44552,8 +44814,8 @@
           sha256 = "10mf96r75558scn71pri71aa8nhp6hmnb5rwjxlh5dlf80r5dfd7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b14e088b7b8f35321b720a1b3fdb75203aa66444/recipes/mote-mode";
-          sha256 = "1lg5z5d0d35sh21maiwmgzvc31iki9yg6x0awy5xrfsains7ykn9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mote-mode";
+          sha256 = "0ccsyl0wvf0nbsw57sxad7w0c0i5al5s5mjrjjq8bnfh4dyj2x0y";
           name = "mote-mode";
         };
         packageRequires = [ ruby-mode ];
@@ -44916,12 +45178,12 @@
     mtg-deck-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "mtg-deck-mode";
-        version = "20170121.1322";
+        version = "20170416.1618";
         src = fetchFromGitHub {
           owner = "mattiasb";
           repo = "mtg-deck-mode";
-          rev = "80c2a0b61c4fc2d7a5f7e6d1ecbe882b2033a879";
-          sha256 = "02x6pmzsg4rczc146d2lvh6jwr857hqq0m44f7017h2wmvhhb9xr";
+          rev = "7774641630ef85999ab2f6d57eebddbc7c1e7244";
+          sha256 = "12ajrlgyj14jf66if7bdgj69jm72wzrmiclx7x8dpsz4zpj38m20";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/425fa66cffe7bfda71de4ff2b49e951456bdeae1/recipes/mtg-deck-mode";
@@ -44958,16 +45220,16 @@
     mu4e-alert = callPackage ({ alert, emacs, fetchFromGitHub, fetchurl, ht, lib, melpaBuild, s }:
     melpaBuild {
         pname = "mu4e-alert";
-        version = "20170323.2254";
+        version = "20170403.2222";
         src = fetchFromGitHub {
           owner = "iqbalansari";
           repo = "mu4e-alert";
-          rev = "e8b2c1d1a95c5275b1062956eb5384bf45fa8047";
-          sha256 = "06jyq6vilry39f24bn08l0wjh1kv9m1pl57vw1qvzk36vmld5cqy";
+          rev = "c57a29933e4a03e0ece8310c51a8bc2143f8b010";
+          sha256 = "0mgxldxb07ixp8jli7j5jgv2b5vfzhvdv9nszqap4hp4iz7hm50f";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5a48e8cb571e91b582ff0dea18e8dc75601edc35/recipes/mu4e-alert";
-          sha256 = "15nwj09iyrvjsc9lrxla6qa0s8izcllxghw5gx3ffncfcrx2l8qm";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mu4e-alert";
+          sha256 = "0b74ky51nx75vcrrbabr5cj2cx4yax5kgaq479hjp5yc5mq2q46r";
           name = "mu4e-alert";
         };
         packageRequires = [ alert emacs ht s ];
@@ -44987,8 +45249,8 @@
           sha256 = "1rj5vcb5f2xs5wvb3z5wd4866cjdzn8lmkbk6xflqq9wrakzl1kh";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3b20c61c62309f27895f7427f681266e393ef867/recipes/mu4e-maildirs-extension";
-          sha256 = "1xz19dxrj1grnl7wy9qglh08xb3dr509232l3xizpkxgqqk8pwbi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mu4e-maildirs-extension";
+          sha256 = "0bisxm0rph5q1p3zjr7vyyr0jqr3ihs6ihiwyfr8d3dvba1zhffc";
           name = "mu4e-maildirs-extension";
         };
         packageRequires = [ dash ];
@@ -45098,16 +45360,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    multi-term = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    multi-term = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "multi-term";
         version = "20160619.233";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/multi-term.el";
-          sha256 = "0i7gixcyqhd8ajbslfmb58rvdihzfprydwiqr730q9q0yfja36j8";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "multi-term";
+          rev = "f954e4e18b0a035151d34852387e724d87a3316f";
+          sha256 = "00cz3q654vpmijbqxp8c6nkxqj9zx1hjr3552l0adk3fbg6qpmcq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4327b4dd464ebb00c2acdd496274dedf912cdf92/recipes/multi-term";
-          sha256 = "1va4ihngwv5qvwps3m9jj0150gbrmq3zllnyq1hbx5ap8hjrhvdx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/multi-term";
+          sha256 = "16idk4nd7qpyrvyspbrdl8gdfaclng6ny0xigk6fqdv352djalal";
           name = "multi-term";
         };
         packageRequires = [];
@@ -45253,8 +45518,8 @@
           sha256 = "15gw4d0hp15rglsj8hzd290li4p0kadj2dsz0dgfcxld7hnimihk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d5f7e5f7e9c551a149e9d433173bd8c8613487ed/recipes/mustache-mode";
-          sha256 = "076ar57qhwcpl4n634ma827r2rh61670778wqr5za2444a6ax1gs";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mustache-mode";
+          sha256 = "1xmqh663r5i42a586xn0wzw6h1jkvhbnw5iwvjv96w452slhkr36";
           name = "mustache-mode";
         };
         packageRequires = [];
@@ -45376,8 +45641,8 @@
           sha256 = "0qdlbyq47gr65yq5ri8s9lxw4wp9fmyqc2prkh560d4hkvw60aw3";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/38ad25fc6d80148c12e235bccf7732afa20ff3a4/recipes/mwe-log-commands";
-          sha256 = "05z2ax9mgyxldd3ds44xnh9f5w5q4ziy4rxmnfiqjykan2f5hnkn";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mwe-log-commands";
+          sha256 = "1nf3rd5i4r61z64apkqi5wx60fpshx5px0y53jqf0rk86708l6wx";
           name = "mwe-log-commands";
         };
         packageRequires = [];
@@ -45481,8 +45746,8 @@
           sha256 = "10wz20842j6yj4k9kg7pd93pzppsc31klbfzlvlkfywqv6j311cz";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ca23f61be1dc8b0ae2ec0ae38d4614cf9c855023/recipes/mysql-to-org";
-          sha256 = "13ysgvqp7bafiaz0f9kg4pq2idndj4r804q6ih64bac8gqhnmcv9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mysql-to-org";
+          sha256 = "0jjdv6ywdn1618l36bw3xa3mdgg3rc8r0rdv9xdqx8mmg648a7gj";
           name = "mysql-to-org";
         };
         packageRequires = [ emacs s ];
@@ -45604,8 +45869,8 @@
           sha256 = "0amhw630hgc0j8wr8m6aav399ixi3vbwrck79hhlr3pmyh91vv7n";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/806273d9898331b9b0189a72d9fdd43c86e1224c/recipes/name-this-color";
-          sha256 = "12nrk1ww766jb4gb4iz6w485nimh2iv8wni2jq4l38v8ndh490zb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/name-this-color";
+          sha256 = "15x3dp135p45gv4qn4ll3pd6zqi4glcpv6fzvjxnx0dcval9z4d8";
           name = "name-this-color";
         };
         packageRequires = [ cl-lib dash emacs ];
@@ -45621,8 +45886,8 @@
         src = fetchFromGitHub {
           owner = "john2x";
           repo = "nameframe";
-          rev = "603061cb98eef5472a8e664ee44e5ce1b2d886ff";
-          sha256 = "1clfl49viak24v7g7jrg5a8qnf8gz83ywg7mq30hyz2hy9vkq6w0";
+          rev = "d14186e99fa800d293e8e3072ba26f383c6624c6";
+          sha256 = "0aibzwp39lxafag0vpa36xp8md7nhvgibj1nklzhga2d9nq9l4km";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/bd314150b3f8ce529a2ae39a71e03bebedfdc6b9/recipes/nameframe";
@@ -45638,12 +45903,12 @@
     nameframe-perspective = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, nameframe, perspective }:
     melpaBuild {
         pname = "nameframe-perspective";
-        version = "20160927.2103";
+        version = "20170405.1819";
         src = fetchFromGitHub {
           owner = "john2x";
           repo = "nameframe";
-          rev = "603061cb98eef5472a8e664ee44e5ce1b2d886ff";
-          sha256 = "1clfl49viak24v7g7jrg5a8qnf8gz83ywg7mq30hyz2hy9vkq6w0";
+          rev = "d14186e99fa800d293e8e3072ba26f383c6624c6";
+          sha256 = "0aibzwp39lxafag0vpa36xp8md7nhvgibj1nklzhga2d9nq9l4km";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2543af5579d37a3eb52e6fea41da315f5590331e/recipes/nameframe-perspective";
@@ -45663,8 +45928,8 @@
         src = fetchFromGitHub {
           owner = "john2x";
           repo = "nameframe";
-          rev = "603061cb98eef5472a8e664ee44e5ce1b2d886ff";
-          sha256 = "1clfl49viak24v7g7jrg5a8qnf8gz83ywg7mq30hyz2hy9vkq6w0";
+          rev = "d14186e99fa800d293e8e3072ba26f383c6624c6";
+          sha256 = "0aibzwp39lxafag0vpa36xp8md7nhvgibj1nklzhga2d9nq9l4km";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/bc17af8ff1694120d12a0cdbfccec78834810acd/recipes/nameframe-projectile";
@@ -45970,16 +46235,16 @@
     navi-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, outorg, outshine }:
     melpaBuild {
         pname = "navi-mode";
-        version = "20160327.134";
+        version = "20170414.1228";
         src = fetchFromGitHub {
-          owner = "tj64";
+          owner = "alphapapa";
           repo = "navi";
-          rev = "a6b824ab2591e89e47f7399987f4fb3fa5d9306b";
-          sha256 = "0vmrh8y8q7zch48iz9lk4n0b3s1b8zp3wki3906s709b5ajfvk7h";
+          rev = "c1d38e8237f4e14af020a0b7d4f118ea198ab674";
+          sha256 = "0jj5spk14hgb7zb1cd2n8whcw4k1kd5zb6llwj96v178yaws7l8k";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4a06141b0ee1e10bc3f16fcca35d971dc7e9d07e/recipes/navi-mode";
-          sha256 = "0f5db983w9kxq8mcjr22zfrm7cpxydml4viac62lvab2kwbpbrmi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/8edf78a0ecd2ff8e6e066b80751a31e11a068c3f/recipes/navi-mode";
+          sha256 = "0pc52iq8lng2g0vpnrhdfxmibc1dx9ksmrjg0303as1yv41fnc69";
           name = "navi-mode";
         };
         packageRequires = [ outorg outshine ];
@@ -46083,8 +46348,8 @@
           sha256 = "19darrq975w11n4809f5blrc3paaxpdxmvwmsd96k8g5gwi0yf5m";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8477d0cf950efcfd9a85618a5ca48bff590b22d7/recipes/nemerle";
-          sha256 = "0698hbgk80w7wp0ssx9pl13aapm7rc6l3y2zydfkyqdfwy5y71v6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/nemerle";
+          sha256 = "1rbalq3s2inwz9cf6bfmnxgqd9ylba3crflfjs6b4mnp33z4swny";
           name = "nemerle";
         };
         packageRequires = [];
@@ -46368,12 +46633,12 @@
     nim-mode = callPackage ({ commenter, emacs, epc, fetchFromGitHub, fetchurl, flycheck, let-alist, lib, melpaBuild }:
     melpaBuild {
         pname = "nim-mode";
-        version = "20170326.144";
+        version = "20170409.1737";
         src = fetchFromGitHub {
           owner = "nim-lang";
           repo = "nim-mode";
-          rev = "dc81622d899976cb7d4515b592972d17d590ca20";
-          sha256 = "1mdficz9dgdlb6hvi7c5qkvw22j1wgaap3a6as1qka16mhlgv13j";
+          rev = "58707562dd29c7a9f36e96a8e894caec90ce1e41";
+          sha256 = "1r6vs77b2rsdarkvcsg6awfa4mna308m53002vxykmpj9apkjszr";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/dc2ccb5f24b9d55c77eaa7952a9e6a2e0ed7be24/recipes/nim-mode";
@@ -46389,12 +46654,12 @@
     nimbus-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "nimbus-theme";
-        version = "20170329.538";
+        version = "20170412.758";
         src = fetchFromGitHub {
           owner = "m-cat";
           repo = "nimbus-theme";
-          rev = "94c08d19c94924b5f549aff61be84efc46e41126";
-          sha256 = "06plyf6hlkwk3c9kv8sagq5qhjmv82nv4rqbwlfjc0yxk2dr6gcf";
+          rev = "ce999b8d152b9b15d75f66fe22b84827167c8311";
+          sha256 = "08bfp2xm8ylkmb4rby15f6xx51qppd2g01i3mg2wwb8kvlwz6s4w";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fc0e6b456b76e2379c64a86ad844362c58146dc6/recipes/nimbus-theme";
@@ -46414,8 +46679,8 @@
         src = fetchFromGitHub {
           owner = "martine";
           repo = "ninja";
-          rev = "0b0374e831d9c050c6c9eb2ef48b73bc62a0f084";
-          sha256 = "0vyra2kr95msd103h3p8ya66l04wgn5c95vmz5g3l71jvmm9wx8k";
+          rev = "586bb6daef38b3657ba917eb3d7f07ba80c72cd7";
+          sha256 = "0qs73q4d83f6xiz1zdpmln8lzgi78h4indha7r783rx07crvvxw6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/aed2f32a02cb38c49163d90b1b503362e2e4a480/recipes/ninja-mode";
@@ -46456,8 +46721,8 @@
         src = fetchFromGitHub {
           owner = "NixOS";
           repo = "nix";
-          rev = "c60715e937e3773bbb8a114fc9b9c6577f8c5cb5";
-          sha256 = "0hkc4g7i3z06y3rsdxqzdnx5rz77jb8ij1j13bdskbvpp7vfm60p";
+          rev = "f8a2e8a55203f2cc16d70ad43afcc186adaab6b3";
+          sha256 = "19m36vw8j9b4ll6llhaisa4w6w9iilj8af8vvw4bglcmd3jbn8mg";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f2b542189cfde5b9b1ebee4625684949b6704ded/recipes/nix-mode";
@@ -46582,8 +46847,8 @@
         src = fetchFromGitHub {
           owner = "tarsius";
           repo = "no-littering";
-          rev = "0227c5eea5b9f3fb056a7ef6052ef6f076371bde";
-          sha256 = "0hjb2paylmcc68998cqgfdnw79z43ha5bv1cg91ysbdjcx2lp1x7";
+          rev = "18e1506135be031db010292d27ef156e32766017";
+          sha256 = "1lqz9fda24i3zkff9nnj4gndrs2bfql80wvvfisn106a3j0ah1n8";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cf5d2152c91b7c5c38181b551db3287981657ce3/recipes/no-littering";
@@ -46725,12 +46990,12 @@
     nord-theme = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "nord-theme";
-        version = "20170325.2314";
+        version = "20170417.209";
         src = fetchFromGitHub {
           owner = "arcticicestudio";
           repo = "nord-emacs";
-          rev = "8df429d20d69e5fd914881a71ae3a044d02b392a";
-          sha256 = "15gjcrx514790djsyfmm8z8q36a3kyf4yhrms5qj423hfc94d3s7";
+          rev = "43b34f6c6d613a340cbc3e629916156bcc3d89fd";
+          sha256 = "04jj25h1infivqdvcgq0cbc96y2rj2c23y6vw6yh73x4kyynzvcc";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/31cb60069825abe3998c8b43bc9177b39a7f3659/recipes/nord-theme";
@@ -46752,8 +47017,8 @@
           sha256 = "07bhzddaxdjd591xmg59yd657a1is0q515291jd83mjsmgq258bm";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/nose";
-          sha256 = "0l77hsmn3qk934ppdav1gy9sq48g0v1dzc5qy0rp9vv4yz2jx2jk";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/nose";
+          sha256 = "1xdqsxq06x2m9rcfn1qh89g0mz1rvzl246d3sfmciwcyl932x682";
           name = "nose";
         };
         packageRequires = [];
@@ -46767,8 +47032,8 @@
         version = "20170313.1712";
         src = fetchgit {
           url = "git://git.notmuchmail.org/git/notmuch";
-          rev = "e1c1d33f3726f5cadb2f92d23735dcd1102fbc88";
-          sha256 = "0s2spmjl2v2zv80ri1l36njgipyxkdg7zvlb8ik5118i0fhbf3p2";
+          rev = "e08f5f76e406de2c6bdcf85952aaeb66ec0d37de";
+          sha256 = "0g9wryjv56xvgvflii0wilvj17hrf4ddk7vjl2bj9lg4glhyyvl0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b19f21ed7485036e799ccd88edbf7896a379d759/recipes/notmuch";
@@ -46873,8 +47138,8 @@
           sha256 = "1nwj1ax2qmmlab4lik0b7japhqd424d0rb995dfv89p99gp8vmvc";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d1d7144bb40a77c545ae1a3d12549080f30e5327/recipes/nrepl-eval-sexp-fu";
-          sha256 = "17g4nih9kz2483ylp651lwfxkvmaj7wpinpgnifwbciyrplfvx2j";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/nrepl-eval-sexp-fu";
+          sha256 = "1mz7a6aa4x23khlfqhhn9ycs3yxg44h5cckg4v4rc6lbif1jzzf8";
           name = "nrepl-eval-sexp-fu";
         };
         packageRequires = [ highlight smartparens thingatpt ];
@@ -46999,8 +47264,8 @@
           sha256 = "1i0yymsx8kin28bkrgwkk9ngsmjh0gh5j4hb0k03bq4fy799f2xx";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/138bdf35caf18dca8e9cc02035a983decb81dfd8/recipes/nummm-mode";
-          sha256 = "10khhc6q0zjzrhsv4fgfdbs7qcwi1bgkwq4yqzidqcdndsailyh0";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/nummm-mode";
+          sha256 = "1gdq00f3x0rxxj917x9381v2x7cl9yabj7559zr5vj1clwza8jn4";
           name = "nummm-mode";
         };
         packageRequires = [];
@@ -47041,8 +47306,8 @@
           sha256 = "0prag0ks511ifa5mdpqmizp5n8190dxp4vdr81ld9w9xv7migpd7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1943a1986775952bedd78430ee41b67af130c439/recipes/nvm";
-          sha256 = "03gy7wavc2q02lnr9pmp3l1pn0lzbdq0kwnmg9fvklmq6r6n3x34";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/nvm";
+          sha256 = "0md1ybc2r2fxykwk21acjhdzy2kw326bdwa1d15c6f48lknzvg4w";
           name = "nvm";
         };
         packageRequires = [ dash dash-functional f s ];
@@ -47125,8 +47390,8 @@
           sha256 = "058dyk1c3iw0ip8n8rfpskvqiriqilpclkzc18x73msp5svrh3lj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a6554cc9a5f667b62623c753cf84e2c9a1cb1c90/recipes/oauth";
-          sha256 = "18z3i5brxm60z373cwx2sa3hx7v38a5s62gbs9b0lxb20ah4p9rz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/oauth";
+          sha256 = "0vgxvscb9cr07g3lzpi269kamgzhpac6dir1rlr4qd2wdv0nifl9";
           name = "oauth";
         };
         packageRequires = [];
@@ -47167,8 +47432,8 @@
           sha256 = "1n4zc4nfv7hzilnb0qng6vh19dj4kq12gwsillj6c3i89gjz73wr";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e1b0ca3a2da727e2f521dacd2fa9fa79ca03f7e2/recipes/ob-async";
-          sha256 = "0pra4lvvkdyn7agcgdjsk5dhis78pnvdfk3s5ivbaki70yi71aia";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ob-async";
+          sha256 = "0k7kv71nnibp53lav774c61w9pzhq8qvch9rvpyyrwbyd67ninl8";
           name = "ob-async";
         };
         packageRequires = [ async org ];
@@ -47347,12 +47612,12 @@
     ob-http = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
     melpaBuild {
         pname = "ob-http";
-        version = "20170304.2215";
+        version = "20170411.1842";
         src = fetchFromGitHub {
           owner = "zweifisch";
           repo = "ob-http";
-          rev = "20393dd8130d21a3f06d8514da14c5ffdd88ae44";
-          sha256 = "0xa7rgsb0d1d96h5bb0n0sy1hgmd2fg6r6g2aqp1c29ld4hpi7r7";
+          rev = "5fd0e99630e07c5e64f2483c6d46aefdd37677d2";
+          sha256 = "1i5la27m36xfc8jwmz5i0yiim9ddmfaqjpahxgpbf63zks555vpk";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/950b02f76a04f453992b8720032e8c4cec9a039a/recipes/ob-http";
@@ -47649,8 +47914,8 @@
           sha256 = "10cyqjqbv87n3d1m3v6vxlyk3xzazms6876ay30nhkd4dbsw8kak";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6142975cf9c0b9faaf128be34d30e12a88b500f8/recipes/ob-spice";
-          sha256 = "13a6g9sh6wvlshvzlllxn8zchb6cb2m0ar14fqvrz5g4hn4hbsm8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ob-spice";
+          sha256 = "0nhdcvq7yvprz4323836k507w0g1lh3rdfr6dqrbj29yvsqfw0x2";
           name = "ob-spice";
         };
         packageRequires = [ org spice-mode ];
@@ -47670,8 +47935,8 @@
           sha256 = "04npsn7awdp1n7fgwidaza58mjbmm3jsv2d992h2vzslfcyx2hnl";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/892f629420f5e9e312e46b2022f45244ead39156/recipes/ob-sql-mode";
-          sha256 = "1yrm0v0msy9d51w0b08bg3042cdrp4s78x41iwni4czmf6w3hpih";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ob-sql-mode";
+          sha256 = "143agagkmwqwdqc0mbdsqp6v02y12q437v4x6dlh81yihif56rdk";
           name = "ob-sql-mode";
         };
         packageRequires = [ emacs ];
@@ -47880,8 +48145,8 @@
           sha256 = "1zj0xhvl5qx42injv0av4lyzd3jsjls1m368dqd2qnswhfw8wfn6";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b8126d5c1f69a2fb0ee6784c6d417ab9ee145af2/recipes/occur-x";
-          sha256 = "1xq1k9rq7k1zw90shbgiidwvcn0ys1d53q03b5mpvvfqhj4n0i1g";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/occur-x";
+          sha256 = "04nydxp4syd0chfnfrz8v1vkx2qasfh86b98qv8719cily1jw76p";
           name = "occur-x";
         };
         packageRequires = [];
@@ -47935,12 +48200,12 @@
     ocp-indent = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "ocp-indent";
-        version = "20160613.938";
+        version = "20170412.12";
         src = fetchFromGitHub {
           owner = "OCamlPro";
           repo = "ocp-indent";
-          rev = "032599b162624a4b65c82c20be06433f24b00e8f";
-          sha256 = "1h9y597s3ag8w1z32zzv4dfk3ppq557s55bnlfw5a5wqwvia911f";
+          rev = "ef97b02aad386203da7066d159cc7d847dc3f55f";
+          sha256 = "1sx3bbp75v4xkd4aikrap735rp00klzxz22qsij76v0r7dhrdlr4";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e1af061328b15360ed25a232cc6b8fbce4a7b098/recipes/ocp-indent";
@@ -48090,8 +48355,8 @@
           sha256 = "03szb2i2xk3nq578cz1drsddsbld03ryvykdfzmfvwcmlpaknvzb";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/265c2a9c1880ade0248908ab696d737007e9bfd0/recipes/om-mode";
-          sha256 = "1q2h9wjnyg7wlk913px4vj1cxqynd6xfh9ind7kjyra436yw3l4j";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/om-mode";
+          sha256 = "0bnlnxmzch9j39l8sf85npi89xlnkcnkmy4fihmwhrm86mnmayrb";
           name = "om-mode";
         };
         packageRequires = [];
@@ -48128,8 +48393,8 @@
         src = fetchFromGitHub {
           owner = "AdrieanKhisbe";
           repo = "omni-log.el";
-          rev = "e5a8ee7d63eb1e745b37ba4e3e71c5ea025e2342";
-          sha256 = "1nvgh9wvgswcs3r958b579rsx540xrhlnafc6cmcd63z6yck19w0";
+          rev = "21b81c2358e2a17a636c6494eb084241d06962b7";
+          sha256 = "1241jfckijwimm6b9xfp2rjap5va5hkphcvj3qflkprq2y33y8s3";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/47bb19bb7b4713c3fd82c1035a2fe66588c069e3/recipes/omni-log";
@@ -48142,22 +48407,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    omni-quotes = callPackage ({ dash, fetchFromGitHub, fetchurl, lib, melpaBuild, omni-log }:
+    omni-quotes = callPackage ({ dash, f, fetchFromGitHub, fetchurl, ht, lib, melpaBuild, omni-log, s }:
     melpaBuild {
         pname = "omni-quotes";
-        version = "20150604.1057";
+        version = "20170416.1416";
         src = fetchFromGitHub {
           owner = "AdrieanKhisbe";
           repo = "omni-quotes.el";
-          rev = "537f7191bede7156dae94622e92cec04c6cd4bdf";
-          sha256 = "1x8af8jv4n83sl4rgj0d2rpmw9g78rknm1h523f3b1a5x4kdvsz6";
+          rev = "be1e719c046ca468275ed844989320f48358f2cd";
+          sha256 = "0sc4mhvxj91rs4h1vg3x759fq77cmlzkqyn5wv456w3w3g2narxw";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3402524f79381c99fdeb81a6a5a9241c918811be/recipes/omni-quotes";
           sha256 = "0dqki0ibabs9cpcjvnh8lc2114x46i1xmnyjc6qqblfxa3ggdygs";
           name = "omni-quotes";
         };
-        packageRequires = [ dash omni-log ];
+        packageRequires = [ dash f ht omni-log s ];
         meta = {
           homepage = "https://melpa.org/#/omni-quotes";
           license = lib.licenses.free;
@@ -48166,12 +48431,12 @@
     omni-scratch = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "omni-scratch";
-        version = "20151211.859";
+        version = "20170416.329";
         src = fetchFromGitHub {
           owner = "AdrieanKhisbe";
           repo = "omni-scratch.el";
-          rev = "7e04d7f20ee383bf72dfdcfd642bf08e4b8ab973";
-          sha256 = "1icdk19vwihc8mn04yxl2brql2gssn3gxd5bv7ljdd6mn5hkw500";
+          rev = "0da549c1386f93ed4de201bf8779ba64ddc91347";
+          sha256 = "0qfi54z2jqrkrdzriandwc9myzc27sxsx7nf20jf5qvcdgn13cl1";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6ba3e128a7fe4476d82266506b18ba9984c37944/recipes/omni-scratch";
@@ -48191,8 +48456,8 @@
         src = fetchFromGitHub {
           owner = "AdrieanKhisbe";
           repo = "omni-tags.el";
-          rev = "3f88b087d492e8ef742416d6e4bf8be41e5a46c4";
-          sha256 = "1lvnkdrav7h15p8d5ayhfsjynllwp4br1vqxmw0ppxnlyq7337n5";
+          rev = "f949a062e8dab12e8fda39eec465d53a2f23e314";
+          sha256 = "01nawy8nadi9yspnql4wq8ssn5xgaf34yknxdjyhkswjr3bql3f4";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c77e57f41484c08cae9f47c4379d1752ccf43ce2/recipes/omni-tags";
@@ -48226,15 +48491,15 @@
           license = lib.licenses.free;
         };
       }) {};
-    omnisharp = callPackage ({ auto-complete, cl-lib ? null, csharp-mode, dash, fetchFromGitHub, fetchurl, flycheck, json ? null, lib, melpaBuild, popup, s }:
+    omnisharp = callPackage ({ auto-complete, cl-lib ? null, csharp-mode, dash, fetchFromGitHub, fetchurl, flycheck, json ? null, lib, melpaBuild, popup, s, shut-up }:
     melpaBuild {
         pname = "omnisharp";
-        version = "20170216.754";
+        version = "20170404.2224";
         src = fetchFromGitHub {
           owner = "OmniSharp";
           repo = "omnisharp-emacs";
-          rev = "bcc5d7ba940c1118ab61071783747162f0c927cf";
-          sha256 = "05i3z6whvgq81qnrwgvfglhwi214145ksg8h81rc0g4ir54wzsik";
+          rev = "93c188938305533ea34ceca51dd53c7841598ada";
+          sha256 = "0ynjxf0r9i5yb98pnhrcm55shhv4gqfr0wigfkz83yqzpsjzq6fn";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/68bdb7e0100e120b95e9416398127d83530a221d/recipes/omnisharp";
@@ -48250,6 +48515,7 @@
           json
           popup
           s
+          shut-up
         ];
         meta = {
           homepage = "https://melpa.org/#/omnisharp";
@@ -48330,8 +48596,8 @@
           sha256 = "0g2hvpnmgyy1k393prv97nqwlqc58nqf71hkrmaijw0cyy9q03nz";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cd7e31ad4e6f5ae3084ef4b4c910dc6d90935d72/recipes/one-time-pad-encrypt";
-          sha256 = "0aa7qcii7yf4527nhlwwp0hbhamhyp2xg0fsscnq2m28l5d5kmn6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/one-time-pad-encrypt";
+          sha256 = "0xl74vxq9dzl84b6wsw8flykxcsxggpd4s47a2ph3irr64mbbgq5";
           name = "one-time-pad-encrypt";
         };
         packageRequires = [];
@@ -48342,10 +48608,10 @@
       }) {};
     oneonone = callPackage ({ fetchurl, hexrgb, lib, melpaBuild }: melpaBuild {
         pname = "oneonone";
-        version = "20170307.932";
+        version = "20170416.858";
         src = fetchurl {
           url = "https://www.emacswiki.org/emacs/download/oneonone.el";
-          sha256 = "1fi006v0j5w993jf7hr2ywk9zhsy2v0hiscxlmjws2ihgcfmcslg";
+          sha256 = "0ag62z31mb5n50m9qph2ww945pr71j95c5xv7krna1iq01qr8ji1";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/oneonone";
@@ -48470,8 +48736,8 @@
         src = fetchFromGitHub {
           owner = "OpenSourceOrg";
           repo = "el-opensourceorg";
-          rev = "42742d5f1b9590acff7f05ee0094e3a80f4f7171";
-          sha256 = "0z92l9d3q12qlf18v7w8qjiw0ciha9l1nvxr0zmik5ck87qk4vmn";
+          rev = "13499b7ae602c735e40c1c494bda6252a2f1c98f";
+          sha256 = "14vb47y5cq3j80aah8fjjf5aw343p9p7bhlxnpz5fr8r9a883dka";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ec4255a403e912a14a7013ea96f554d3588dfc30/recipes/opensource";
@@ -48514,8 +48780,8 @@
           sha256 = "1wl6gnxsyhaad4cl9bxjc0qbc5jzvlwbwjbajs0n1s6qr07d6r01";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/openwith";
-          sha256 = "05lkx3yfv2445fp07bhqv2aqz5hgf3dxp39lmz3nfxn4c9v8nkqi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/openwith";
+          sha256 = "0l3grbnn349cv26ap2phlmp2h94s68gqznh5zdqwc2cp7lf699sx";
           name = "openwith";
         };
         packageRequires = [];
@@ -48548,12 +48814,12 @@
     org-ac = callPackage ({ auto-complete-pcmp, fetchFromGitHub, fetchurl, lib, log4e, melpaBuild, yaxception }:
     melpaBuild {
         pname = "org-ac";
-        version = "20140302.413";
+        version = "20170401.607";
         src = fetchFromGitHub {
           owner = "aki2o";
           repo = "org-ac";
-          rev = "9cbbda79e2fe964ded3f39cf7a2e74f1be3d6b9a";
-          sha256 = "1xckin2d6s40kgr2293g72ipc57f8gp6y63303kmqcv3qm8q13ca";
+          rev = "41e3ef8e4039619d0370c23c66730b3b2e9e32ed";
+          sha256 = "1l3fn8vjdqq7rrn1b7l2i238bhjni13mg9v25dydin0sfb697abk";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/adf598f8dae69ff286ae78d353a2a5d4363b4480/recipes/org-ac";
@@ -48661,8 +48927,8 @@
           sha256 = "0vf77wc1pq9dfqkrnagkxfg7klwyaichms492jsp0dh5warnw7hm";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/042745d47c379778195ed798ca5e0130e4877271/recipes/org-babel-eval-in-repl";
-          sha256 = "00x4idm9a5ddng74axm4xjnw7z89qv3yav8j8rw2z1jf5cgbgah6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-babel-eval-in-repl";
+          sha256 = "0brqp0w9s28ibws4idlm1rw09lsfa98l5wbpwm64rvlixhs6zlnx";
           name = "org-babel-eval-in-repl";
         };
         packageRequires = [ emacs eval-in-repl ];
@@ -48695,12 +48961,12 @@
     org-board = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "org-board";
-        version = "20170327.1337";
+        version = "20170403.916";
         src = fetchFromGitHub {
           owner = "scallywag";
           repo = "org-board";
-          rev = "53469a2f0577924de1c7d887fecea409d17fd588";
-          sha256 = "0fg7lkgcr7zwwjald7hbvwgl72m21lqxmz7p8sq31iw3jh42fqgf";
+          rev = "1daf7bbd52edec82156f0289d42fc7b190f0bc3a";
+          sha256 = "0sm4gr17yi2iki28yimzk5mffp9xfpafk6abi6c6frxab0x42vg5";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d8063ee17586d9b1e7415f7b924239826b81ab08/recipes/org-board";
@@ -48734,6 +49000,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    org-brain = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, org }:
+    melpaBuild {
+        pname = "org-brain";
+        version = "20170404.2329";
+        src = fetchFromGitHub {
+          owner = "Kungsgeten";
+          repo = "org-brain";
+          rev = "9424b8002238a1ffb67e78e25bc997826f37dc14";
+          sha256 = "0vn2s8p21kfnabva7ikal87hl4asgdj6hm7597hfx45w60vakn9a";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/47480fbae06e4110d50bc89db7df05fa80afc7d3/recipes/org-brain";
+          sha256 = "0c05c6lbr740nnjp9p34padrbrc3q1x2pgylkyhsxadm4mfsvj0c";
+          name = "org-brain";
+        };
+        packageRequires = [ dash emacs org ];
+        meta = {
+          homepage = "https://melpa.org/#/org-brain";
+          license = lib.licenses.free;
+        };
+      }) {};
     org-bullets = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "org-bullets";
@@ -48766,8 +49053,8 @@
           sha256 = "0vjw8fn6ipi2fg5wkj4jq8cs3m7694xgccy1h1n774w12bby3xhk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5b3f04ae3592496aa4148d1035599dd6f63ad14b/recipes/org-caldav";
-          sha256 = "0166y04gxrwnynm4jshm2kqk5jbvl5g5078dxvw18nicrgq3y4r8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-caldav";
+          sha256 = "1wzb5garpxg8p7zaqp6z5q0l2x8n9m7fjg5xy3vg9878njnqr9kc";
           name = "org-caldav";
         };
         packageRequires = [ org ];
@@ -48808,8 +49095,8 @@
           sha256 = "127nnjdd7p3sy38pd39ivrpxgnzdhbh6sf99667s7qxryfx837y8";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a679ebaedcb496f915b9338f9d5c003e1389594d/recipes/org-chinese-utils";
-          sha256 = "1dycsv0p2xzm2dg6fi5f5dkb48qnqq0qhrmvi0cdjq34j67s27ix";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-chinese-utils";
+          sha256 = "0bxx81zigbv5vv3aficd65p03lgpp2iknj8qgvn2k4wgbv56j4q4";
           name = "org-chinese-utils";
         };
         packageRequires = [];
@@ -48892,8 +49179,8 @@
           sha256 = "1gbkrgbpsrwkjd199giffim8jvx1n4dqrsyk53sz1swj9dlhxgp9";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1ddf5992be3677ef94ceac1ec6d3f90f520c7be9/recipes/org-clock-today";
-          sha256 = "0vnpkxlag5h793vw74l1ys6i2v87f5khvjrqbm3wzwmyc08vdz1q";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-clock-today";
+          sha256 = "1x9hplz9w2kpa239rz6y02hsl4fgzxlkwr9hhwjy12x1f88x0k73";
           name = "org-clock-today";
         };
         packageRequires = [ emacs ];
@@ -49073,12 +49360,12 @@
     org-drill-table = callPackage ({ cl-lib ? null, dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, org-plus-contrib, s }:
     melpaBuild {
         pname = "org-drill-table";
-        version = "20140117.137";
+        version = "20170408.1205";
         src = fetchFromGitHub {
           owner = "chrisbarrett";
           repo = "org-drill-table";
-          rev = "d7b5b3743ac04f8cb1087c5c049c0520058fa89c";
-          sha256 = "0m5c9x0vazciq6czpg5y9nr5yzjf6nl0qp5cfajv49cw2h0cwqyy";
+          rev = "5662511e98697e086149a223a64f9f01fabf7330";
+          sha256 = "1bd9wifw57v31bihqrq5305a5xmjq980crlnqak0l9pksjkbw2bx";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3347da186765877826b224e1f5d1b585ebd3692c/recipes/org-drill-table";
@@ -49136,16 +49423,16 @@
     org-edit-latex = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "org-edit-latex";
-        version = "20170327.1847";
+        version = "20170408.2046";
         src = fetchFromGitHub {
           owner = "et2010";
           repo = "org-edit-latex";
-          rev = "ecdae5aa9763adbb1c103578a49dcd7fbfea3de7";
-          sha256 = "18mg5zy67hvm79y10z5gzjfdggdkfksb1zkpijqv347f84w1l31z";
+          rev = "a3faf83fe13910596c370a0d4b9a69f9b65f6f99";
+          sha256 = "13q2xd8h0i4ain1y68qnvipmilly9ivdsv2glvnz5ji8k9f5wajk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/180416a18ea8c424ec990be91bc11fc149e427d0/recipes/org-edit-latex";
-          sha256 = "0bnpr6plndz3q8515lni0mjwlpxy05jkg4bqifmrd52qh91x7j17";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-edit-latex";
+          sha256 = "0nkiz4682qgk5dy4if3gij98738482ys8zwm8yx834za38xxbwry";
           name = "org-edit-latex";
         };
         packageRequires = [ emacs ];
@@ -49366,12 +49653,12 @@
     org-jira = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, request }:
     melpaBuild {
         pname = "org-jira";
-        version = "20170224.1951";
+        version = "20170416.2152";
         src = fetchFromGitHub {
           owner = "ahungry";
           repo = "org-jira";
-          rev = "1e4def3c7b9bbcf9f1b2c6d6582de60c4cdf50da";
-          sha256 = "06vpag5gd72ckm6vnyk2gv612ds3sml117da40xz3m794779brvr";
+          rev = "ab86b343634acaaa04b81ecea511a38e975977d1";
+          sha256 = "19sd42w91gzhd0qxgymi09ms0kn6yhv3kdpky1n6l5mkpbv3kp39";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/730a585e5c9216a2428a134c09abcc20bc7c631d/recipes/org-jira";
@@ -49453,8 +49740,8 @@
         version = "20140107.519";
         src = fetchgit {
           url = "git://orgmode.org/org-mode.git";
-          rev = "8892fbdb6092af9e5ab5d9ed46762da67b57ffa1";
-          sha256 = "1n4djqrk9hqsxrra1x2cxgfx2djsavdmqd53bpik3wn6lr00w1gj";
+          rev = "1dfdb8193251ebf3a5e38834ccd5c04204159c5d";
+          sha256 = "1l92143firgpl071k3k5nw3633951sn0ibvcni2221wqc3397n2k";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ee69e5e7b1617a29919d5fcece92414212fdf963/recipes/org-mac-iCal";
@@ -49473,8 +49760,8 @@
         version = "20170105.1723";
         src = fetchgit {
           url = "git://orgmode.org/org-mode.git";
-          rev = "8892fbdb6092af9e5ab5d9ed46762da67b57ffa1";
-          sha256 = "1n4djqrk9hqsxrra1x2cxgfx2djsavdmqd53bpik3wn6lr00w1gj";
+          rev = "1dfdb8193251ebf3a5e38834ccd5c04204159c5d";
+          sha256 = "1l92143firgpl071k3k5nw3633951sn0ibvcni2221wqc3397n2k";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b86c666ee9b0620390a250dddd42b17cbec2409f/recipes/org-mac-link";
@@ -49637,12 +49924,12 @@
     org-page = callPackage ({ cl-lib ? null, dash, fetchFromGitHub, fetchurl, git, ht, htmlize, lib, melpaBuild, mustache, org, simple-httpd }:
     melpaBuild {
         pname = "org-page";
-        version = "20170310.240";
+        version = "20170416.2327";
         src = fetchFromGitHub {
           owner = "kelvinh";
           repo = "org-page";
-          rev = "18c94764b6240344d4e147d881071876e9004e30";
-          sha256 = "1q76daimscr2mp0wi6cp0mbph7cp4gdm818cdi76rsz48xa83gxi";
+          rev = "58f51112d557d328d818c8b9cada5e3dab539de3";
+          sha256 = "12kk2yn5sm4jq19kiln3giq1nnljcjyd617p0ff3r9qn5dh1qnxs";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/872f163d4da58760009001472e2240f00d4d2d89/recipes/org-page";
@@ -49715,8 +50002,8 @@
           sha256 = "0lrcj3mcdfcdrndivhj5ds386zrsy78sfg0i8126wwwc5lfh48vq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/aadf708e55ddfe13d93d124681a5e6f97a690d79/recipes/org-pdfview";
-          sha256 = "1z4gb5lw7ngphixw06b5484kwlxbc098w2xshzml5sywr16a4iab";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-pdfview";
+          sha256 = "1qhlmzf2ffcrjnx4yghv7n6rsry8bcwnkw489spgraq9vxvqklah";
           name = "org-pdfview";
         };
         packageRequires = [ org pdf-tools ];
@@ -49778,8 +50065,8 @@
           sha256 = "1cr68gn093q7vvkald2gwcxns2ypqxhc5vavjj1j81ijrh1y1h2w";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/9d433daa1a3b95646f3957ba58c49db2a6da2768/recipes/org-preview-html";
-          sha256 = "0nf8xbqc9q2ppkjplynhfqvsms97w68afxq4rarspzddn881z7nj";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-preview-html";
+          sha256 = "1dnr046mk5ngmic2yqcmrnn7pzrrx3sg22rk2pc3vgdxs8bhvhf9";
           name = "org-preview-html";
         };
         packageRequires = [ emacs org ];
@@ -49799,8 +50086,8 @@
           sha256 = "03zy2bb1ha22xpx29d8610yrqfyaiaa8vgplpx6bmixaw85mcv58";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3dde8c06c968d4375926d269150a16b31c3a840e/recipes/org-projectile";
-          sha256 = "078s77wms1n1b29mrn6x25sksfjad0yns51gmahzd7hlgp5d56dm";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-projectile";
+          sha256 = "1kkgi49bvdwz50x32lqdj2ii02mxv8i4dr1asr8zk6mdg0fwlqpf";
           name = "org-projectile";
         };
         packageRequires = [ dash emacs projectile ];
@@ -49833,12 +50120,12 @@
     org-random-todo = callPackage ({ alert, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "org-random-todo";
-        version = "20170321.804";
+        version = "20170404.318";
         src = fetchFromGitHub {
           owner = "unhammer";
           repo = "org-random-todo";
-          rev = "14a065e1d376838f16a6ba32ed8710304542a4e6";
-          sha256 = "07qkn59613l32j6b06ckmccl9s2rfwwivmak5v86z0fafzhxk6ir";
+          rev = "8b784ff0419fcaa2467991bc670e0e8e31be62c0";
+          sha256 = "14lsc6a9ddfd69x06z3ia9mlvac2p8iwvxbfnbmn2m49lijs8724";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/80fad6244ea3e5bdf7f448c9f62374fae45bae78/recipes/org-random-todo";
@@ -49878,6 +50165,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    org-recent-headings = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, org }:
+    melpaBuild {
+        pname = "org-recent-headings";
+        version = "20170417.17";
+        src = fetchFromGitHub {
+          owner = "alphapapa";
+          repo = "org-recent-headings";
+          rev = "d53f97bd8c640a06eb606b35c1c269bd3089cb54";
+          sha256 = "0697nwfvkhik8i87apq2xyb4qkk10xa4s03gz6ijybxn98576hli";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/668b79c179cbdb77c4049e7c620433255f63d808/recipes/org-recent-headings";
+          sha256 = "0b51pyxdk8fdbksx7h1c88sw1liwng8wkjfb1q7w7lglw6f8sjsa";
+          name = "org-recent-headings";
+        };
+        packageRequires = [ dash emacs org ];
+        meta = {
+          homepage = "https://melpa.org/#/org-recent-headings";
+          license = lib.licenses.free;
+        };
+      }) {};
     org-redmine = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "org-redmine";
@@ -49902,12 +50210,12 @@
     org-ref = callPackage ({ dash, emacs, f, fetchFromGitHub, fetchurl, helm, helm-bibtex, hydra, ivy, key-chord, lib, melpaBuild, s }:
     melpaBuild {
         pname = "org-ref";
-        version = "20170325.703";
+        version = "20170413.1111";
         src = fetchFromGitHub {
           owner = "jkitchin";
           repo = "org-ref";
-          rev = "4117e8b9273ea8533a4ca9f1271cc81b789c57a4";
-          sha256 = "0kgfask1ylphcxjb93ybdgxmzrmhn58wky1iq0npcsq1949ajx1w";
+          rev = "81204eaa39d556b6628b35627e0ccbe2799a8e68";
+          sha256 = "0ppr3d7l15xwxjdhpdkczjpwhsvxm3y2jfz2ddxqpydqywhgypn4";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/550e4dcef2f74fbd96474561c1cb6c4fd80091fe/recipes/org-ref";
@@ -49962,8 +50270,8 @@
           sha256 = "1j917zblg5ncls9lbvpzhqal55mx27d3kpvhzvjw2h7x47ji6iym";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b474cf4f237c28771c48fb770dc88b57193976f0/recipes/org-review";
-          sha256 = "1xzhbnd1p2fab2f5xhg4zp06gwk63x8sjlxrfji6hh2p5a6gf6nx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-review";
+          sha256 = "1v7p7pmrjjyj0my9xw55gsn9vvr9aq5x53x13nmspvqg47z6bd98";
           name = "org-review";
         };
         packageRequires = [];
@@ -49983,8 +50291,8 @@
           sha256 = "1hn8y9933x5x6lxpijcqx97p3hln69ahabqdsl2bmzda3mxm4bn2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0acb202acc25420274a1b9e639f34f9878a61e83/recipes/org-rtm";
-          sha256 = "1paiy5zmdlxb3a1cjk9d30mqbl60bkairw6xkix2qw36p07jwlj5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-rtm";
+          sha256 = "1hdcwmiv2qivdr2g78xz9fl38wn45vj0bn55dbsdj3qx7k7wgfx6";
           name = "org-rtm";
         };
         packageRequires = [ rtm ];
@@ -50004,8 +50312,8 @@
           sha256 = "0aq3af6fd16lm9iirzya6hmc8g48kfp8pc4dx51mgb5d6jjiizkv";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/05a83750e745f16b15cbdf123165a3192363bfd1/recipes/org-seek";
-          sha256 = "08l5zl3wk2f632hslcl5fi9ylaml5my6qx481yvdrbi6m8bchkpp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-seek";
+          sha256 = "04ay4abm03kn15cn45ldrzh2rw6gr6ia3qrj7hn5crd75ppwvln7";
           name = "org-seek";
         };
         packageRequires = [ ag emacs ];
@@ -50014,6 +50322,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    org-sticky-header = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "org-sticky-header";
+        version = "20170413.1844";
+        src = fetchFromGitHub {
+          owner = "alphapapa";
+          repo = "org-sticky-header";
+          rev = "f2dbfc443e7504e0468b417ef89a68b152ec1f2d";
+          sha256 = "134ss1rrf1q73afvhj4k5ymlwhyagfab18y11v51j5xyx77ydaw6";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/bc9a600bd156eb766ba5ce37e16f3e8253f37ee8/recipes/org-sticky-header";
+          sha256 = "0ign3vjckmxp7n3625wb53qlch07c3s4l67jsvk38dhhcsg1rhnj";
+          name = "org-sticky-header";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/org-sticky-header";
+          license = lib.licenses.free;
+        };
+      }) {};
     org-sync = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, org }:
     melpaBuild {
         pname = "org-sync";
@@ -50077,22 +50406,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    org-table-sticky-header = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, org }:
+    org-table-sticky-header = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, org }:
     melpaBuild {
         pname = "org-table-sticky-header";
-        version = "20170317.1913";
+        version = "20170408.1814";
         src = fetchFromGitHub {
           owner = "cute-jumper";
           repo = "org-table-sticky-header";
-          rev = "4048357d4ac42885b207677eb6f118e167a0f20f";
-          sha256 = "1x5b931khl89yfnknndqfwhpqqqy6i8fylr59dpsffsrfp7pbqs1";
+          rev = "93dc69efc00ac9fd3cc2ece5100f51df33ec7d8b";
+          sha256 = "0d9d9sxak6kvqbb91h65ahw272d7dfxpgjw6zbs472xb6di1r6pm";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5dd0e18bf4c3f3263eff8aff6d7c743a554243b5/recipes/org-table-sticky-header";
           sha256 = "1rk41279rcsdma39zpr1ka5p47gh1d0969wahd0jbm5xlmx5gz2m";
           name = "org-table-sticky-header";
         };
-        packageRequires = [ org ];
+        packageRequires = [ emacs org ];
         meta = {
           homepage = "https://melpa.org/#/org-table-sticky-header";
           license = lib.licenses.free;
@@ -50361,8 +50690,8 @@
           sha256 = "1bqiq27ln1pl40b9dms05nla4kf72s80g9ilvrgqflxgl36gxws7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8b57b6d755b3855ccfe0a90eada939fb7a852b40/recipes/org2blog";
-          sha256 = "0ancvn4ji4552k4nfd2ijclsd027am93ngg241ll8f6h6k0wpmzq";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org2blog";
+          sha256 = "1xa03k9z8fq74w0w3vfkigz24i6c8s4vib077l16vqik7wg4yh40";
           name = "org2blog";
         };
         packageRequires = [ metaweblog org xml-rpc ];
@@ -50529,8 +50858,8 @@
           sha256 = "1w0hadpslxcjn29yxl9i37sja4qf4kp7ffjpwij5hs73r518c2z6";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7f022fd455e69f1bffdb9ef3273a91cc7d7a3ab9/recipes/orglue";
-          sha256 = "14g4q2k9zjzipzrp5mg72s40b0rwiaixgq3rvi15wh4vvcw5xajn";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/orglue";
+          sha256 = "1kj62y3cf3as2d5s207s6kg5alm09jmw0aag1z6lblrjlzbi1p2j";
           name = "orglue";
         };
         packageRequires = [ epic org org-mac-link ];
@@ -50896,22 +51225,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    outorg = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    outorg = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "outorg";
-        version = "20160327.132";
+        version = "20170414.1215";
         src = fetchFromGitHub {
-          owner = "tj64";
+          owner = "alphapapa";
           repo = "outorg";
-          rev = "456b1500b560ead633ce723986a48c33fb52ab76";
-          sha256 = "0szvynvw16vr7br95pssqkil0xnfdh46x8lgan4z9v6impdav0nf";
+          rev = "78b0695121fb974bc4e971eb4ef7f8afd6d89d64";
+          sha256 = "03aclh4m3f7rb821gr9pwvnqkkl91px3qxdcarpf3ypa1x4fxvlj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d57762fe51a524731e228c80b4b2d25e827e5858/recipes/outorg";
-          sha256 = "04swss84p33a9baa4swqc1a9lfp6wziqrwa7vcyi3y0yzllx36cx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/8edf78a0ecd2ff8e6e066b80751a31e11a068c3f/recipes/outorg";
+          sha256 = "10jh64d1nalfig69nnsib46915jinv37lvmxa0aj91zymq2szdm9";
           name = "outorg";
         };
-        packageRequires = [];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://melpa.org/#/outorg";
           license = lib.licenses.free;
@@ -50920,16 +51249,16 @@
     outshine = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild, outorg }:
     melpaBuild {
         pname = "outshine";
-        version = "20161024.2158";
+        version = "20170414.1217";
         src = fetchFromGitHub {
-          owner = "tj64";
+          owner = "alphapapa";
           repo = "outshine";
-          rev = "d45a512d149996ca232c0218e2d6b5bc802285a9";
-          sha256 = "0f4jb39pd23kszf9wpdmibn3wqgx76y68n1l7jb9y8l47vs519lh";
+          rev = "399ccd20cd65c758bbbd5563bd804d2bccfd0279";
+          sha256 = "03jd3gyqrmrnykcv7p6fv53f32li7gkvd61zbhp483n8a8n3yy5j";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6dc02a576abb8e115f674a9d896f8bc932b7571b/recipes/outshine";
-          sha256 = "1ajddzcrnvfgx3xa5wm0bcll9dax52syg1p521mv0ffkld63jyfl";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/8edf78a0ecd2ff8e6e066b80751a31e11a068c3f/recipes/outshine";
+          sha256 = "1qqmvs17hq5s047nqplg4sa09xg5ck6zwqyg91xmbh71bx80v28v";
           name = "outshine";
         };
         packageRequires = [ cl-lib outorg ];
@@ -50970,8 +51299,8 @@
           sha256 = "1zjp1bw7ipg4ibabrc0wzzsvd4jydjq571768v2hdpzcdw36d8f7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/82e6b86f20a2d2d687b13091da31150c467bf271/recipes/overseer";
-          sha256 = "04wfwcal051jrnmm5dga6vl4c9j10pm416586yxb8smi6fxws2jg";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/overseer";
+          sha256 = "0zbh0j21h6wsqnqvnzai6y6rpccdciksb7g64qw7fx0cpg5x2ms8";
           name = "overseer";
         };
         packageRequires = [ dash emacs f pkg-info ];
@@ -50983,12 +51312,12 @@
     owdriver = callPackage ({ fetchFromGitHub, fetchurl, lib, log4e, melpaBuild, smartrep, yaxception }:
     melpaBuild {
         pname = "owdriver";
-        version = "20141011.738";
+        version = "20170401.612";
         src = fetchFromGitHub {
           owner = "aki2o";
           repo = "owdriver";
-          rev = "0479389d9df9e70ff9ce69dff06252d3aa40fc86";
-          sha256 = "0f2psx4lq98l3q3fnibsfqxp2hvvwk7b30zjvjlry3bffg3l7pfk";
+          rev = "d934f182bafe29aa16c173440eff3fef08b0ec10";
+          sha256 = "0yy5sah7vcjxcik3sp2cxp9gvcryyzw799h8zf4wbvjxv74kd17c";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f3f9c1bb19345c6027a945e7f265632da1a391cb/recipes/owdriver";
@@ -51050,8 +51379,8 @@
         src = fetchFromGitHub {
           owner = "jkitchin";
           repo = "scimax";
-          rev = "ac2479dd030ff47c760c30b68d7d6d133ed82903";
-          sha256 = "1vgqi073i6wlgfgjnpyaqbygrb3m9pm5frv0r70k07q2kvmalhy9";
+          rev = "f686459c02b27e6f22128c2ff4e26818fb7f4ee7";
+          sha256 = "0i8fd8jjimzp3p9l10ixdxv7ghlc3x191914wlq1znqzra09xb0p";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/222ccf4480395bda8c582ad5faf8c7902a69370e/recipes/ox-clip";
@@ -51067,12 +51396,12 @@
     ox-epub = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, org }:
     melpaBuild {
         pname = "ox-epub";
-        version = "20170328.1131";
+        version = "20170414.0";
         src = fetchFromGitHub {
           owner = "ofosos";
           repo = "ox-epub";
-          rev = "94ff7358ad311cc6ad3bd720fbbb51fbcce94aa3";
-          sha256 = "0iz38qc7fpd8rl9wacwq76y49mi53vr9jy6bw7f0ja1gbzfa8sgg";
+          rev = "113300ed2c66cca10624e6d7bf5ff0a72e05653a";
+          sha256 = "1xj643jybrd6idn6bazp0canj8pm9v3gs199fa17hlag7151ancw";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c3ac31dfef00e83fa6b716ea006f35afb5dc6cd5/recipes/ox-epub";
@@ -51193,12 +51522,12 @@
     ox-latex-chinese = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "ox-latex-chinese";
-        version = "20170313.2146";
+        version = "20170401.439";
         src = fetchFromGitHub {
           owner = "tumashu";
           repo = "ox-latex-chinese";
-          rev = "7bc56542dc488d24f22f2653232b1cf5dab17c5f";
-          sha256 = "1hs0rrk8bcyskay945d7phjj5ln8j8gr01qybqnl6a6mfrcpv2b2";
+          rev = "f79d25443987a169a1234f5fbb2bc115cccea33e";
+          sha256 = "1sw7wvsyp5z7jdijkc3lyfx7b0cq3c60fjdvmqlpygl9020md99w";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a679ebaedcb496f915b9338f9d5c003e1389594d/recipes/ox-latex-chinese";
@@ -51319,12 +51648,12 @@
     ox-qmd = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, org }:
     melpaBuild {
         pname = "ox-qmd";
-        version = "20160606.504";
+        version = "20170402.957";
         src = fetchFromGitHub {
           owner = "0x60df";
           repo = "ox-qmd";
-          rev = "b41ffcf47af1a635596df31d4b0a704f274b5654";
-          sha256 = "1zv8kh7hlskj4g1c4k3cx0hzraal3inn75yzxs08ndvycdsn6cky";
+          rev = "3a24c7a0b3ec80e494b977e14a3dfb94c9f1d8ec";
+          sha256 = "030nay81c49ings96akzzy108a6agg91rvpmg0pf05qmjysfysmf";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e71826e8a8c30b0eb535cce7a379740011b79534/recipes/ox-qmd";
@@ -51411,8 +51740,8 @@
           sha256 = "05rlfykwvfir177bvqa7nvwmzn1amhpaizfmyjzi73d78h062vcl";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/084da2cc725cc23b02657e7adb14ec31532ad25a/recipes/ox-tiddly";
-          sha256 = "196i8lzxv2smpj5yhmiqwazn4pvc14yqyzasrgimhv3vi2xnxlfb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ox-tiddly";
+          sha256 = "1rpbnz152af588r8kafqpg9aq3ngwjfkrsjqk6w90l5rh280yi39";
           name = "ox-tiddly";
         };
         packageRequires = [ cl-lib org ];
@@ -51474,8 +51803,8 @@
           sha256 = "0kd45p8y7ykadmai4jn1x1pgpafyqggwb1ccbjzalxw4k9wmd45f";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3263133ba6dde790a364bad7c96144912971ba2d/recipes/ox-twbs";
-          sha256 = "15csgnph5wh2dvcc2dnvrlm7whh428rq8smqji1509ib7aw9y5mx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ox-twbs";
+          sha256 = "050rv270jlkc1v7wp47cv9cwr9pz3n840dd4jxxhfs6s47b9ln73";
           name = "ox-twbs";
         };
         packageRequires = [];
@@ -51550,12 +51879,12 @@
     package-build = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "package-build";
-        version = "20161014.2251";
+        version = "20170412.1620";
         src = fetchFromGitHub {
           owner = "melpa";
           repo = "package-build";
-          rev = "9a6824cda477d1bd77d0507b62dcc09ed436b32e";
-          sha256 = "1yswi3yqpfm8sjlhcv4phd069vl9rc2ngi5ma6acpah532k4gi1f";
+          rev = "2346b0eec188cce4106ac605a396ded0d380f610";
+          sha256 = "053zzllffpa17nq488zgc7xhn27p1b42jrg28k5vpzvmin64bda3";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/948fb86b710aafe6bc71f95554655dfdfcab0cca/recipes/package-build";
@@ -51592,12 +51921,12 @@
     package-lint = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "package-lint";
-        version = "20170324.1727";
+        version = "20170417.54";
         src = fetchFromGitHub {
           owner = "purcell";
           repo = "package-lint";
-          rev = "de08b846b3a031838b79445bb7a254c9de4a80f6";
-          sha256 = "0mvs4afjp5ab89vdz3bd9pca55brn57lxvjqjjyc6cyqxpclh06j";
+          rev = "1cee5135bd9a12e1b28e515a28093a751b4f7dd1";
+          sha256 = "1qvvdr5wx37x5jrw4hkx5vl4jmi3l1bjn97nnvwlsmzi6sgkcwsr";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9744d8521b4ac5aeb1f28229c0897af7260c6f78/recipes/package-lint";
@@ -51747,8 +52076,8 @@
           sha256 = "1d0b2pb2s04l7nkcn7yhrbcm927bsinyiayxn59in7p3mqlcmsnb";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/22b6035987994c11d5e2564862efb1e56848c3b6/recipes/page-break-lines";
-          sha256 = "0q1166z190dxznzgf2f29klj2jkaqlic483p4h3bylihkqp93ij7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/page-break-lines";
+          sha256 = "0i5kx191wnq9763jyqxbyh33hvdaqbd98a1rhgqd97zhvg0hslz1";
           name = "page-break-lines";
         };
         packageRequires = [];
@@ -51845,8 +52174,8 @@
         src = fetchFromGitHub {
           owner = "rdallasgray";
           repo = "pallet";
-          rev = "0e1ae11e1ebfe644cbf832df62ac2dbf6ecd0501";
-          sha256 = "03mlg6dmpjw8fq2s3c4gpqj20kjhzldz3m51bf6s0mxq9bclx2xw";
+          rev = "b8d0df1883224a371ac0a3bc9b9c1c4dc61e6ac0";
+          sha256 = "0j87yq8rycklk8df4rlwx0bp2n94pyhaz4yv8vacbqrzchpa1bb0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/bf977287e9bd668efbd972c9937906384ee832c6/recipes/pallet";
@@ -51971,8 +52300,8 @@
         src = fetchFromGitHub {
           owner = "Malabarba";
           repo = "paradox";
-          rev = "17a6690d42a1e854ec270ed930c7494077570fc8";
-          sha256 = "1vg5i4cxgn4a8cgx43i75w3cf0d8sb6ig6xxxdj3pvpzc81i53bc";
+          rev = "71a8eb68cd618094244110c5d2d5ae9632605204";
+          sha256 = "1zkhmpd20vm95l9bfgzlpc2hl8qvig3rm9kxhyrhwn2iybna05rw";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6aed365c42987d64d0cd9a8a6178339b1b39e8/recipes/paradox";
@@ -51987,15 +52316,15 @@
       }) {};
     paredit = callPackage ({ fetchgit, fetchurl, lib, melpaBuild }: melpaBuild {
         pname = "paredit";
-        version = "20160615.1325";
+        version = "20170405.1149";
         src = fetchgit {
-          url = "http://mumble.net/~campbell/git/paredit.git";
-          rev = "7c27746a8eb259ae24b5dce9380801c4846258f0";
-          sha256 = "02s8cvrpcdp8xr7m8bfgwiy7wl9bc4834jlm071ypzx5xfip3zxd";
+          url = "https://mumble.net/~campbell/git/paredit.git";
+          rev = "99829aa423c9e8dd1be8d64c4b68982cf4c1559b";
+          sha256 = "13h5gd9s1ajgqzq6ylzcmz4irb071wyhh9qj195ld177irkxi9wd";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2d83b5d24db3527e48e3de40c320255bc2dbfccb/recipes/paredit";
-          sha256 = "1rp859y4qyqdfvp261l8mmbd62p1pw0dypm1mng6838b6q6ycakr";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/paredit";
+          sha256 = "01qh8kfb5hyfi0jfl1kq3inkyzr0rf3wncmzgxlkfdc8zlq4v653";
           name = "paredit";
         };
         packageRequires = [];
@@ -52057,8 +52386,8 @@
           sha256 = "1il0gbyjnlxhk04z3lgxmvlmlhgc94rmxdf8nl5sk3gblqmr8v3b";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0cbe675482a72417cb3ff770ca3b85710e479ac1/recipes/paren-completer";
-          sha256 = "0xh17h8vmsgbrq6yf5sfy3kpia4za68f43gwgkvi2m430g15fr0x";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/paren-completer";
+          sha256 = "1k71nmsf155b4pvzcsymsc1bn42h9apypapkvc1kxyr6zm29zcr4";
           name = "paren-completer";
         };
         packageRequires = [ emacs ];
@@ -52267,8 +52596,8 @@
           sha256 = "1pw401ar114wpayibphv3n6m0gz68zjmiwz60r4lbar45bmxvihx";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4af274e0e59aec44ede6f6ed0a34f4bcec6387f2/recipes/password-generator";
-          sha256 = "0aahpplmiwmp6a06y6hl4zvv8lvzkmakmaazlckl5r3rqbsf24cb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/password-generator";
+          sha256 = "1ziiz4x4slfadlm7fjpmwvq4a9fi3ird74b6v5na499ylqnzrl59";
           name = "password-generator";
         };
         packageRequires = [];
@@ -52277,14 +52606,35 @@
           license = lib.licenses.free;
         };
       }) {};
+    password-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "password-mode";
+        version = "20170411.2329";
+        src = fetchFromGitHub {
+          owner = "juergenhoetzel";
+          repo = "password-mode";
+          rev = "ed764a4ec1011526457c71b7c37fa9a659a866ab";
+          sha256 = "102zydbkr2zrr7w0j11n7pivnsdmq3c6lykf3qc84jifp7j58pgr";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/28dafa392a378e7de2c6992fe17b33f6379dc6b8/recipes/password-mode";
+          sha256 = "1rxh6jg99qxagc6i2xgvswvw93h4ma7j8lhjr4ln44vbgyhzph11";
+          name = "password-mode";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/password-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     password-store = callPackage ({ f, fetchgit, fetchurl, lib, melpaBuild, s }:
     melpaBuild {
         pname = "password-store";
         version = "20151027.1449";
         src = fetchgit {
           url = "http://git.zx2c4.com/password-store";
-          rev = "caaa5f0f85fd93c1651d4c74c8bb8287a18c4e88";
-          sha256 = "10nqf5l320p61pajx7pj5yh7hxf666zsj1kcdb91ddb367kcwzzv";
+          rev = "38ec1c72e29c872ec0cdde82f75490640d4019bf";
+          sha256 = "04rqph353qfhnrwji6fmvrbk4yag8brqpbpaysq5z0c9l4p9ci87";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e204fb4d672220ee1a4a49975fd3999916e60f8c/recipes/password-store";
@@ -52433,8 +52783,8 @@
           sha256 = "1ffnkw8djs8kvfjd1crnaqram1vl4w3g1zhsqp74ds0mccsd6830";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/dc926d83b0376e84b8a88ce794dcdac17603860c/recipes/path-headerline-mode";
-          sha256 = "0dwr8iyq62ad5xkh7r4kpywpypdq1wljsdzwqbq9zdr79yfqx337";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/path-headerline-mode";
+          sha256 = "0yw2i3cp20v8nd2wj1rs1qad8abghzzasf2sjyla90q06wlna98w";
           name = "path-headerline-mode";
         };
         packageRequires = [];
@@ -52538,8 +52888,8 @@
           sha256 = "1jkdyacpcvbsm1g2rjpnk6hfr01r3j5ibgh09441scz41v6xk248";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/pcache";
-          sha256 = "1q2wlbc58lyf3dxfs9ppdxvdsp81jmkq874zbd7f39wvc5ckbz0l";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/pcache";
+          sha256 = "0wwx20x6gzlli3hh4zd9pfv2cmqfm38xbl9p4vsgy08q1rm5agva";
           name = "pcache";
         };
         packageRequires = [ eieio ];
@@ -52580,8 +52930,8 @@
           sha256 = "0pwx1nbgciy28rivvrgka46zihmag9ljrs40bvscgd9rkragm4zy";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3130ab6bf500f68fb9af77d4c33b8ec76c36be6c/recipes/pcmpl-args";
-          sha256 = "0sry4zvr8xmzyygf2m5dms52srkd1apj3i7a3aj23qa8jvndx8vr";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/pcmpl-args";
+          sha256 = "10mgci1rk6sr7wk46mnp5l37v3qxdc6yy5zfvy9mzwzh3va1pw31";
           name = "pcmpl-args";
         };
         packageRequires = [];
@@ -52740,12 +53090,12 @@
     pdf-tools = callPackage ({ emacs, fetchFromGitHub, fetchurl, let-alist, lib, melpaBuild, tablist }:
     melpaBuild {
         pname = "pdf-tools";
-        version = "20170317.810";
+        version = "20170417.150";
         src = fetchFromGitHub {
           owner = "politza";
           repo = "pdf-tools";
-          rev = "c01c8673338c73e92a88d2aa7e3a26ca8417fbfa";
-          sha256 = "05lyzvxcghyv3jd4vcxk6jm88bq10sss0nvbhk4arbjf4wlmmf1z";
+          rev = "f314597b2e391f6564e4f9e5cc3af0b4b53f19e9";
+          sha256 = "15m7x61m63zxz2jdz52brm9qjzmx1gy24rq8ilmc4drmb0vfmrr2";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8e3d53913f4e8a618e125fa9c1efb3787fbf002d/recipes/pdf-tools";
@@ -53012,12 +53362,12 @@
     persp-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "persp-mode";
-        version = "20170311.716";
+        version = "20170401.218";
         src = fetchFromGitHub {
           owner = "Bad-ptr";
           repo = "persp-mode.el";
-          rev = "6b3987b6c085da52a4a1e1a8433bd4a6f3f411d4";
-          sha256 = "0w2wmy1mhpjfmm0js5h0nqwwmj2xzpasc1m40slwh0lcm9176w9c";
+          rev = "651fe02ff10eece65c01ac8d286174cc8ffa87fa";
+          sha256 = "1nij6mrz2fm411z97z13dyy38i482dkpj50fjsgnlc9pmggykqnx";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/caad63d14f770f07d09b6174b7b40c5ab06a1083/recipes/persp-mode";
@@ -53083,8 +53433,8 @@
           sha256 = "1bdywz241kyvlxn107l2jg6vyhvvw5j4pywrarzx3pdymh9qk645";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0bf5d4356424b492579a029f58dd4685ff5aaf39/recipes/perspective";
-          sha256 = "150dxcsd0ylvfi9mmfpcki1wd3nl8q9mbszd3dgqfnm40yncklml";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/perspective";
+          sha256 = "021ax1c2ys82dcjs5jl7b4nb83n6gax2imnpm030rcbihjl1lzm7";
           name = "perspective";
         };
         packageRequires = [ cl-lib ];
@@ -53104,8 +53454,8 @@
           sha256 = "0gb8f23ls2f5zj9a9q3i39775g3zijwdnbl7gyqi4hi5v90rb0s4";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/19bead132fbc4c179bfe8720c28424028c9c1323/recipes/perspeen";
-          sha256 = "1g8qp7d5h9nfki6868gcbdf9bm696zgd49nsghi67wd2x7hq66x1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/perspeen";
+          sha256 = "0kwmllas9vnppsfaviy58d0nk4hmlqp566mfr4l53x46sybv1y04";
           name = "perspeen";
         };
         packageRequires = [ emacs powerline ];
@@ -53163,8 +53513,8 @@
         src = fetchFromGitHub {
           owner = "gromnitsky";
           repo = "ph";
-          rev = "a66e38637d1898b2ec31ee611033ac3f295fd97f";
-          sha256 = "10xznvjszn0smn6wf84rykkkiqyzv7xf7fjjyklhll7zphg714mw";
+          rev = "ed80dad9211583ed0db633448b3624c99b7fac23";
+          sha256 = "1pgz64zv9a0r16i958x53g7wnk0q7ngcd6z1maf7lxhlp57v015d";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f62ca074ca2df780ab32aac50b2b828ee6a9934c/recipes/ph";
@@ -53272,8 +53622,8 @@
           sha256 = "0d2c579rg8wdfmn94nzaix9332jch4wlr939jszls330s38d0iv4";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d4b6d362a12828dfef5f0e2216f5ef21c6cb7eed/recipes/phi-rectangle";
-          sha256 = "08yw04wmbgbbr60i638m0rspfwn3cp47ky5ssgjcgcmmdgg9yfvy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/phi-rectangle";
+          sha256 = "111fqqa7h5cajq92sbiqhavm25l5bcapxhfh38y7irq4mv08xifw";
           name = "phi-rectangle";
         };
         packageRequires = [];
@@ -53411,12 +53761,12 @@
     php-auto-yasnippets = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, php-mode, yasnippet }:
     melpaBuild {
         pname = "php-auto-yasnippets";
-        version = "20170324.914";
+        version = "20170330.1814";
         src = fetchFromGitHub {
           owner = "ejmr";
           repo = "php-auto-yasnippets";
-          rev = "d6e04b2db9ebe220e25e4d3a1550bf6fdafdf032";
-          sha256 = "160y5kp5m7kfkj832i7rawgj4ylnf100xqn7v0fppqapri2f177l";
+          rev = "03e1f0899c081813901ac15c2f7a675a37cca9f5";
+          sha256 = "0d7y6njsd1s2r5df2k8wvvwgxpwwyaqkhdd2b3p1php8rrbj3mg8";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d47ca8cd5900a80a2ede1b354547addf9b2bbbac/recipes/php-auto-yasnippets";
@@ -53440,8 +53790,8 @@
           sha256 = "07lcibr55pk3sab9bbq2r4phadl5p28n63wkq5rkhkkjc7s9rayc";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/38dc0469a114da121de5b7bdfb75a395f2bcf777/recipes/php-boris";
-          sha256 = "19yfbrlfqikix2lnnlbpzm6yakjhl84ix0zra2ycpvgg2pl88r0g";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/php-boris";
+          sha256 = "0kklwk8b98czsg567vgzzdfnv76yn1id3ah2q2qqdhaky1yzw7ak";
           name = "php-boris";
         };
         packageRequires = [];
@@ -53495,12 +53845,12 @@
     php-mode = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "php-mode";
-        version = "20170307.1750";
+        version = "20170412.514";
         src = fetchFromGitHub {
           owner = "ejmr";
           repo = "php-mode";
-          rev = "c761c97e53d50a015bf8d5d554f4917267b0f6dc";
-          sha256 = "0hy0bzscv3hakldmjynsm9rz91v5lyb7rp20ljzfvbzzbkbxzdai";
+          rev = "56a7e7c67b70c4aba5919317a8898157ba0b08e4";
+          sha256 = "1jdpb4f6msw4g9amp1wmbgngldy033x7lhf8y8r34n6q2c7sb68r";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7cdbc35fee67b87b87ec72aa00e6dca77aef17c4/recipes/php-mode";
@@ -53566,8 +53916,8 @@
           sha256 = "0iyb4y0wrd1yqm56p37riw6nwvrlcgxj1x0nhw8304p8hv76mzdi";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/68336364f6956325a2e03194d7db30747ab7f80c/recipes/php-scratch";
-          sha256 = "1qlfrmva58jf6c04whn9dshz15wv53pyq60wxv9f3c9bl88ws0nv";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/php-scratch";
+          sha256 = "0sl9cccp4xjsidiyjf3sca8wlch3zd23zyac21xys11xm3rjxh9r";
           name = "php-scratch";
         };
         packageRequires = [ emacs php-mode s ];
@@ -53860,8 +54210,8 @@
           sha256 = "0plpjjyhn1rz8pwyldshwa61r7pfz310j4qciw55smjizz4hfjx8";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8dbdb25c8344c96048a7863333ace6dc07d8154c/recipes/pippel";
-          sha256 = "1yxy0z5377xmb9gjpm16rybi8wr8x95k5hcf8g23690vr9ndjw67";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/pippel";
+          sha256 = "0w6qbjb1wpz8gn4gzifzzjbc3gckhgnqvrpszrrklqmd10rk5mrw";
           name = "pippel";
         };
         packageRequires = [ emacs s ];
@@ -53881,8 +54231,8 @@
           sha256 = "08rj1nimxrz5g1gj231f9d6p8al1svvwv1782h8hyxi87fzmw9sw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/793d86ec68fc10d4f23eca4ffef162e920d9fc42/recipes/pivotal-tracker";
-          sha256 = "195wcfn434yp0p93zqih1snkkg1v7nxgb4gn0klajahmyrrjq2a2";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/pivotal-tracker";
+          sha256 = "0yiyz11sd25ybgr2qmg62qqmcz96va1pq3q866cqmpl38xn7znpj";
           name = "pivotal-tracker";
         };
         packageRequires = [];
@@ -53944,8 +54294,8 @@
           sha256 = "150xhsv695cchs5jc2hwk9gjgs0k8wkm966crvxxs6xvj5fg69xq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/73fc80e94c98ff304a521466c6577c96a10e79a8/recipes/pkg-info";
-          sha256 = "0whcvralk76mfmvbvwn57va5dkb1irj7iwffgddi7r0ima49iszx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/pkg-info";
+          sha256 = "1k23hmpcq534060qcxbrv4g6bw9nzcbjg192mbdp20kwidw7p81n";
           name = "pkg-info";
         };
         packageRequires = [ epl ];
@@ -54028,8 +54378,8 @@
           sha256 = "1xdj59skmldq5dnarirhwq4qycipas86nbyqwl8zsv0bh20nl1rs";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/18c4b8311b42af9f914264245f4dd377adcfbd0c/recipes/planet-theme";
-          sha256 = "1mhbydvk7brmkgmij5gpp6l9ixcyh1g3r4fw3kpq8nvgbwknsqc9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/planet-theme";
+          sha256 = "1hr5m08qn51r9804jd0k95ryz3frzkk1dp6wpybil6bf67a2l5lr";
           name = "planet-theme";
         };
         packageRequires = [ emacs ];
@@ -54101,6 +54451,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    playerctl = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "playerctl";
+        version = "20170414.156";
+        src = fetchFromGitHub {
+          owner = "thomasluquet";
+          repo = "playerctl.el";
+          rev = "fa79b3c1223738ed89ded01fb1f4fb5fdd3aa92d";
+          sha256 = "1c5bdkr7wr803pz889dmhhlcar0jmmwg1yy2b04zwc58cqw9g1i9";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6db0d82c2eef7c5bef5f9f2c15969da4c404b62d/recipes/playerctl";
+          sha256 = "1pix3hcsg6ymzajiixwcq4v3clvadpkl0rhplkhachv6wmci327x";
+          name = "playerctl";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/playerctl";
+          license = lib.licenses.free;
+        };
+      }) {};
     plenv = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "plenv";
@@ -54133,8 +54504,8 @@
           sha256 = "07hspp4bkb3f5dm0l1arm0w1m04cq4glg81x4a9kf7bl601wzki2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a2fef4f90002193bf9758afbe88f2798c44cc294/recipes/plim-mode";
-          sha256 = "0247fpvxki5jhxw6swv7pcw0qwxrqnp75acnfss2lf984vggzhxi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/plim-mode";
+          sha256 = "1nrqw5dvb3j5x3wkpsjbpv1d2s367icq9j4h1xv1cahfsn8nn4m9";
           name = "plim-mode";
         };
         packageRequires = [];
@@ -54247,13 +54618,13 @@
         pname = "po-mode";
         version = "20160827.857";
         src = fetchgit {
-          url = "git://git.savannah.gnu.org/gettext.git";
+          url = "https://git.savannah.gnu.org/git/gettext.git";
           rev = "41e5199f0e4a3e9d518d6f95a3efdfae5e2c7913";
           sha256 = "06ww6081aicw2d4rprig8ab5g1rx7dqx7cl9xh444k746c8a554d";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/9317ccb52cdbaa2b273f8b2e8a598c9895b1cde1/recipes/po-mode";
-          sha256 = "1hb9vrr2x6mh0yzckmx9fk6535d6r189974n4bizpr1xdikn7dgp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/po-mode";
+          sha256 = "0km19n87iqd6m6n23h46b6225zyvava9jbx6b8frna3sjwb4ls7w";
           name = "po-mode";
         };
         packageRequires = [];
@@ -54532,22 +54903,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    pophint = callPackage ({ fetchFromGitHub, fetchurl, lib, log4e, melpaBuild, popup, yaxception }:
+    pophint = callPackage ({ fetchFromGitHub, fetchurl, lib, log4e, melpaBuild, yaxception }:
     melpaBuild {
         pname = "pophint";
-        version = "20150930.1034";
+        version = "20170403.701";
         src = fetchFromGitHub {
           owner = "aki2o";
           repo = "emacs-pophint";
-          rev = "fc02a155e28ae27466bedabc756e75c936b01266";
-          sha256 = "0n1w1adglbavqgrv16rzhym72c3q083mh0c8yl5lj7adn4nr4gr3";
+          rev = "5d1db7c0b92862ba2cc5f3566b25840b8ce3ba59";
+          sha256 = "09av2krrmm8g3f3f31kl4j4agmmf8hx9irzrqyvgshljflk0nq1q";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0055c2887acbbd8a2803bf3f81ac2cc444cc805a/recipes/pophint";
           sha256 = "1chq2j79hg095jxw5z3pz4qicqrccw0gj4sxrin0a55hnprzzp72";
           name = "pophint";
         };
-        packageRequires = [ log4e popup yaxception ];
+        packageRequires = [ log4e yaxception ];
         meta = {
           homepage = "https://melpa.org/#/pophint";
           license = lib.licenses.free;
@@ -54556,12 +54927,12 @@
     poporg = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "poporg";
-        version = "20170303.526";
+        version = "20170403.51";
         src = fetchFromGitHub {
           owner = "QBobWatson";
           repo = "poporg";
-          rev = "ba2f7f4c8662164c5e6f89aa2923484d6f1df8ed";
-          sha256 = "04z2p4f5mdnc8jms6z360f3qv6ngpbyp7b88ybvw67kjkg9jn821";
+          rev = "2c58d68c81ecca4140bf179f19ed153ec804b65a";
+          sha256 = "1ymqhy0sqd54z154s3cm6q1m4xnr9wkx9dl5f93845k11ay3kvln";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/63502ec265a66d3f72ef93a2f6e7c2e517ff98a3/recipes/poporg";
@@ -54619,12 +54990,12 @@
     popup-edit-menu = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "popup-edit-menu";
-        version = "20170329.452";
+        version = "20170404.725";
         src = fetchFromGitHub {
           owner = "debugfan";
           repo = "popup-edit-menu";
-          rev = "bd823ae3068e053804258697848392492538914c";
-          sha256 = "0j2ynj8dshpagbjg38snfk626pfsb25y23w2nkb4h7v4kfv6587g";
+          rev = "925600a6e29183841199e866cf55e566a6a1b002";
+          sha256 = "1dd0ss7cjdjs3c7vkq8p874408iysih80brc8vlfh1f43cnc5v92";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e824ae5bd9214f8de210059f8145f13a4e62e8a1/recipes/popup-edit-menu";
@@ -54795,8 +55166,8 @@
           sha256 = "112s6qb80sn44b1cxggqfci89wymxvvwkwl7nknfnr2dzd58lzzy";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/795b8723e105a22c729ef77377a85c63ee0a2a1f/recipes/pow";
-          sha256 = "05wc4ylp0xjqbzrm046lcsv4aw2a6s2rfv1ra38bfr0dai6qrsrn";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/pow";
+          sha256 = "13f3pk52f9lkkl3zi6448j9b39kn6ny9vmnlsvhwa6s0vaz8f220";
           name = "pow";
         };
         packageRequires = [ cl-lib emacs ];
@@ -54928,12 +55299,12 @@
     prassee-theme = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "prassee-theme";
-        version = "20170329.758";
+        version = "20170406.1953";
         src = fetchFromGitHub {
           owner = "prassee";
           repo = "prassee-emacs-theme";
-          rev = "5be0ad067182881012bea5ae352636eaff06b01b";
-          sha256 = "1l73dvi5pdbw8x1qbk9zhi1ddz000k54lm0jg2rzlcsxwnz2f4sf";
+          rev = "7ce96272a514caa8598aa3c7227ade8a21e20daa";
+          sha256 = "033qmd1rfjpiz27zz34b96dyc2lil08qdf9nn13sa915gc6704ps";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/15425b576045af1c508912e2091daf475b80b429/recipes/prassee-theme";
@@ -55206,8 +55577,8 @@
           sha256 = "1a9cbzfchbiv7kafmim1mbx38y2iscibbgg6i0aq3200b30mxk57";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/04686b7a450ccd4631ecf1d9bcd51572c21fd20d/recipes/prodigy";
-          sha256 = "032868bgy2wmb2ws48lfibs4118inpna7mmml8m7i4m4y9ll6g85";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/prodigy";
+          sha256 = "0lfxb80jqjnzssjs6l511jcsmhkpzb5rh5czrb16dkqcz0cl5b2p";
           name = "prodigy";
         };
         packageRequires = [ dash emacs f s ];
@@ -55309,8 +55680,8 @@
           sha256 = "1bb5b6hxg3gvwf0sqwkd97nnipsmr60py0rnsfhgvizn4cj3khhw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3e9a509f93bb65cc9bd268ee8c7b13046eac7385/recipes/project-local-variables";
-          sha256 = "0mrf7p420rmjm8ydwc5blpxr6299pdg3sy3jwz2zz0420gkp0ihl";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/project-local-variables";
+          sha256 = "1jys9nac2912jdv40fly1q4i30xa8b1v2ndbc50rk4ysarhbhdd9";
           name = "project-local-variables";
         };
         packageRequires = [];
@@ -55405,12 +55776,12 @@
     projectile = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, pkg-info }:
     melpaBuild {
         pname = "projectile";
-        version = "20170309.30";
+        version = "20170416.148";
         src = fetchFromGitHub {
           owner = "bbatsov";
           repo = "projectile";
-          rev = "0c307c8cbf6162fa992bcdbdd1940bf6eff28253";
-          sha256 = "18m35h9r1gs96hkgqmjhkwnlg5dj9knh227n2k9xckg161mld2fg";
+          rev = "da581cdfe4f4f63137f3320ed3dbda9cf6c20e14";
+          sha256 = "1bgkx3vwn3vy796a1aq2hd7817qaznf4laqni417gzi43jqf8414";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ca7bf43ef8893bf04e9658390e306ef69e80a156/recipes/projectile";
@@ -55510,12 +55881,12 @@
     projectile-rails = callPackage ({ emacs, f, fetchFromGitHub, fetchurl, inf-ruby, inflections, lib, melpaBuild, projectile, rake }:
     melpaBuild {
         pname = "projectile-rails";
-        version = "20170323.210";
+        version = "20170411.152";
         src = fetchFromGitHub {
           owner = "asok";
           repo = "projectile-rails";
-          rev = "6f866e1e7cd50db563a16ae9237ad10f3be97fef";
-          sha256 = "1fs5pcqk1zfhgbh2k9kdyi7sm089iy2mwaqipa1k91lvmqawz5i6";
+          rev = "9647dc1368df6a3b6de17314332d024cceb90052";
+          sha256 = "1v8hipd7i63dv9lvq0ff5v9awg017kr0xfjk5hysamb346r1rsrn";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b16532bb8d08f7385bca4b83ab4e030d7b453524/recipes/projectile-rails";
@@ -55556,8 +55927,8 @@
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "sift.el";
-          rev = "8c3f3d14a351a2394027d72ee0599aa73b9f0d13";
-          sha256 = "1ma6djvhvjai07v1g9a36lfa3nw8zsy6x5vliwcdnkf44gs287ra";
+          rev = "ef509ac4c579340e8d924c26d9e5858a9f4fb9de";
+          sha256 = "0i8gqzvpl3drzp031dqdpsi1ssr3az8fzb7xpbxnamzscfz6pdyc";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a730e1331b0486c4bd2d309b85d2f8810489eb47/recipes/projectile-sift";
@@ -55615,12 +55986,12 @@
     projector = callPackage ({ alert, cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild, projectile }:
     melpaBuild {
         pname = "projector";
-        version = "20160929.2052";
+        version = "20170410.905";
         src = fetchFromGitHub {
           owner = "waymondo";
           repo = "projector.el";
-          rev = "e86b89e836ce2d0544b96235ef158d1252fd790f";
-          sha256 = "1484gb3lxj8inh7q1z05mqiv5ddq2yymdlmhjxrl1l7c3lqbapn9";
+          rev = "bd9e5b5c4727c0facd9d45a4b6a46ffddaf6a131";
+          sha256 = "1fx5wg5lnb59z0y25bmysf6a2wld333iihrb9jhcab4hicdqsh9s";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/420ffea4549f59677a16c1ee89c77b866487e302/recipes/projector";
@@ -55808,8 +56179,8 @@
         src = fetchFromGitHub {
           owner = "google";
           repo = "protobuf";
-          rev = "4a0dd03e52e09332c8fd0f8f26a8e0ae9f911182";
-          sha256 = "0x741ivcyx1yn5qp63swl3n5966zwjngmalwr85sq3qb5vacifj0";
+          rev = "8aa927f08f6b92808976b0c22fa4a45850279987";
+          sha256 = "12n6i25mvb4a4yqpiyrfd9firfz2frv0zh0akpjd03qv93fmw30j";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b4e7f5f641251e17add561991d3bcf1fde23467b/recipes/protobuf-mode";
@@ -56066,12 +56437,12 @@
     puppet-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, pkg-info }:
     melpaBuild {
         pname = "puppet-mode";
-        version = "20170323.331";
+        version = "20170415.2259";
         src = fetchFromGitHub {
           owner = "voxpupuli";
           repo = "puppet-mode";
-          rev = "ce098468af9e7dc50a3979b0f4b7de54abe0aa78";
-          sha256 = "1vap7vk6fsslpijy2iq3y0fb94naxjm60mcyf3xlz1gym3hfrwl5";
+          rev = "1f74263f42c56c0b88e8fded540231a2d4fd9e36";
+          sha256 = "1mc6msf6hzy0fdm1gwq4f9gadspk68d1mdwbhl1j1ngx2gqbrhik";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1de94f0ab39ab18dfd0b050e337f502d894fb3ad/recipes/puppet-mode";
@@ -56568,12 +56939,12 @@
     pylint = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "pylint";
-        version = "20160728.1033";
+        version = "20170402.555";
         src = fetchFromGitHub {
           owner = "PyCQA";
           repo = "pylint";
-          rev = "da2e9724a195ea48451222457e56fbb9311186da";
-          sha256 = "15xwdmsffj4xysl4mg17ip7pid9i035xhsh3r1qg2bqi2ikwqzgr";
+          rev = "7cb3ffddfd96f5e099ca697f6b1e30e727544627";
+          sha256 = "19f1bjhyizhsb2xva8f5n2x20nmja34j5ps278phqmg46qffbw5j";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a073c91d6f4d31b82f6bfee785044c4e3ae96d3f/recipes/pylint";
@@ -56757,12 +57128,12 @@
     python-test = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "python-test";
-        version = "20161107.1048";
+        version = "20170415.1556";
         src = fetchFromGitHub {
           owner = "emacs-pe";
           repo = "python-test.el";
-          rev = "f1d24e53c2a9a77812aa10f8cc6d5a5b49b57615";
-          sha256 = "0al1s7fh2l0vhcsz261aaxsn3xkrp451zynym11ifhppf1wwlp04";
+          rev = "2005e6f6797e875ba0946a3f50c2320c28614e7c";
+          sha256 = "1wvyi4mdzasnby3z57xax6w6wkag3zpk23y99n9mhmfmf0fvyvix";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0ea68b3aa9c057e81a3e90a359a38ac16cb26c2f/recipes/python-test";
@@ -56929,8 +57300,8 @@
         src = fetchFromGitHub {
           owner = "quelpa";
           repo = "quelpa";
-          rev = "c1fe1dce4740ca1fcc3ac4c72db6999579d867a1";
-          sha256 = "1m0mx8marrhc3wb925x66rpr15ynax2vx0crljqqsxk04bralj27";
+          rev = "a39ab429d6544dff17e933f8d98530da4f8c636f";
+          sha256 = "002r4vc2a5yjm448xsk2dsfzm9p1whiwrcb0pccyy2597ba87w55";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7dc3ba4f3efbf66142bf946d9cd31ff0c7a0b60e/recipes/quelpa";
@@ -56985,6 +57356,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    quick-peek = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "quick-peek";
+        version = "20170327.27";
+        src = fetchFromGitHub {
+          owner = "cpitclaudel";
+          repo = "quick-peek";
+          rev = "6a006fbf1a41b04c0e7522d50c942ec89c3637fc";
+          sha256 = "06rww4a6j7wc32hvay83xcjl16aykm8hwlsh764fx9hfxxfa1fka";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/68f59a3048ec6196b138b6584a22ce70baa38284/recipes/quick-peek";
+          sha256 = "0ivg6v9c535bw2bv636wmkd4sy037j55054bfm31wvvxk99bndwq";
+          name = "quick-peek";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/quick-peek";
+          license = lib.licenses.free;
+        };
+      }) {};
     quick-preview = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "quick-preview";
@@ -57097,8 +57489,8 @@
         src = fetchFromGitHub {
           owner = "racer-rust";
           repo = "emacs-racer";
-          rev = "40f99f69b46edbf0855c92d908c11e29bf2e817c";
-          sha256 = "18gf9fzn30190mgdgijzqxyh11q1kmx94fixs6c7gv927i8j7whm";
+          rev = "6e0d1b3ebd54497c0cc995a92f09328ff101cd33";
+          sha256 = "0sz78cnx6gifsgd1r1l1p8bkjc5jwfh57yvwabc9zzgivfimhcb5";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/97b97037c19655a3ddffee9a86359961f26c155c/recipes/racer";
@@ -57114,12 +57506,12 @@
     racket-mode = callPackage ({ emacs, faceup, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
     melpaBuild {
         pname = "racket-mode";
-        version = "20170315.1216";
+        version = "20170407.858";
         src = fetchFromGitHub {
           owner = "greghendershott";
           repo = "racket-mode";
-          rev = "1c2c8964c5d16bf5c4ead2be8d19abc0244f59e6";
-          sha256 = "0cxi81rgqv4ri96gbzr2p2mnwyp3jn3klsvds9jkmgw6dd5q4b8a";
+          rev = "3332895078ebc5e2f547538913eccb1db63ec0ca";
+          sha256 = "09a251m0j8ican0myp96755ykg6z2bp0kgggwbdbg4af6bwz3a13";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7ad88d92cf02e718c9318d197dd458a2ecfc0f46/recipes/racket-mode";
@@ -57248,8 +57640,8 @@
           sha256 = "02x5ciyafqwak06yk813kl8p92hq03wjsk1882q8axr9q231100c";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/de07b317e46475776d6d237908a0495866a7a851/recipes/rainbow-blocks";
-          sha256 = "08p41wvrw1j3h7j7lyl8nxk1gcc2id9ikljmiklg0kc6s8ijhng8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rainbow-blocks";
+          sha256 = "1zf1z1hnp8q0s9za7nnpq83isbpmz26l8hxafz0h0b5dz1w2vlvs";
           name = "rainbow-blocks";
         };
         packageRequires = [];
@@ -57353,8 +57745,8 @@
           sha256 = "0fmajgqf9j21qn7h35sky5di8cnma432g0ki9d5m41byxp9y1bdl";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/246b7fbef1fecc261f4417d7519f26662be3b30f/recipes/rand-theme";
-          sha256 = "0h0n1lsxnl12mjrjpra62vblrg8kbp1hk7w1v6makj074d037j2h";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rand-theme";
+          sha256 = "0c2xs99jgrhk6f1s6pls8pigg6qwcr4imnwdlngwzr0jz8jhqvxa";
           name = "rand-theme";
         };
         packageRequires = [ cl-lib ];
@@ -57458,8 +57850,8 @@
           sha256 = "0yd0rs6fnc6lsfi7pivw5sivh698055r8ifj9vrxb82dcx2y6v2h";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/56d330fdd9e3b2cf3afc808190efebcc4cb1456d/recipes/rbenv";
-          sha256 = "09nw7sz6rdgs7hdw517qwgzgyrdmxb16sgldfkifk41rhiyqhr65";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rbenv";
+          sha256 = "1skh1v8dgwl1f9m3pmy2s3rnzp8n3cydi3579fgjv4mzi81k3d5q";
           name = "rbenv";
         };
         packageRequires = [];
@@ -57859,8 +58251,8 @@
         src = fetchFromGitHub {
           owner = "rocky";
           repo = "realgud-pry";
-          rev = "4c903439b6292f51037d4a12ea54897e3a23541f";
-          sha256 = "0nm9w3w2k7v2nbdp8q6k37ysahr34iprnqjfag631xhlswshiwrl";
+          rev = "9b3834048fcbc16827c55af38f8cfef0cf6533da";
+          sha256 = "1kpy2ym29mnr89c7im27hhbpww7dgblw6w731ayrlg8rlvqzh7ln";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7ca56f05df6c8430a5cbdc55caac58ba79ed6ce5/recipes/realgud-pry";
@@ -57897,12 +58289,12 @@
     rebecca-theme = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "rebecca-theme";
-        version = "20170220.1342";
+        version = "20170406.2136";
         src = fetchFromGitHub {
           owner = "vic";
           repo = "rebecca-theme";
-          rev = "c42e33227a18258145156e69627b713b303ee702";
-          sha256 = "0nkf3jf8x95ybw29gwkivfc3pnaiga7awz2mpyjm5bnz4i335mkm";
+          rev = "ddbc2e0ceaa4849ddd284a9265211b61a8777106";
+          sha256 = "0d4yk6gkswfx7hkwgq5s9qc2bi73041fcsigpzvl2q0smb8202cr";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/19f40f30113c7dabd76a2d0e52898e6d6be69a35/recipes/rebecca-theme";
@@ -58049,8 +58441,8 @@
           sha256 = "1mj7lyadzn3bwig3f9zariq5z4fg6liqnjvfd34yx88xc52nwf33";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8704384ec36a782ba1d08bce33cd47d0a46ee704/recipes/recursive-narrow";
-          sha256 = "1bx8l8wjxrkv949c73dp93knbn1iwnblcm8iw822mq2mgbgwsa7f";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/recursive-narrow";
+          sha256 = "15pzwxzyc3dl81v27gk7a4866cxbhzpmmcmfi9n4vrrxmf61h905";
           name = "recursive-narrow";
         };
         packageRequires = [];
@@ -58088,8 +58480,8 @@
           sha256 = "1jc4n60spzssa57i3jwrqwy20f741hb271vmmx49riycx1ybx3d3";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b23e5c692b307ffe1c44216c5865243973ad7ad8/recipes/redo+";
-          sha256 = "1alfs7k5mydgvzsjmdifcizqgrqjrk2kbh3mabai7nlrwi47w9n2";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/redo+";
+          sha256 = "0v7nrn6fbjx4mb0xsnkvqxk2hp35wfy83si5bavwwym4jcb5pl2r";
           name = "redo-plus";
         };
         packageRequires = [];
@@ -58126,8 +58518,8 @@
         src = fetchFromGitHub {
           owner = "RedPRL";
           repo = "sml-redprl";
-          rev = "bdf027de732e4a8d10f9f954389dfff0c822f18b";
-          sha256 = "08w4ll3z2pygry85x1g1kz2ibbiq93zq3my9zll226xi9hx1nll0";
+          rev = "608b896b58c6e1c7fec8c6e97202fc303a731a8b";
+          sha256 = "1x1d4gq2j8lanzpnqhx8aarwzd2mpprhkrz6j9w1s94g2p210ssg";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/06e7371d703ffdc5b6ea555f2ed289e57e71e377/recipes/redprl";
@@ -58192,8 +58584,8 @@
           sha256 = "08kzi2jcfqnlanqzvbk5gq1if7k8qc9gmz5bmvd2mvmx6z436398";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/24fcd00ee6509df7cda7d873c9ea82beefdc6944/recipes/refheap";
-          sha256 = "0pzark1db9k2pavd5sn89a28gd9j5jlkx3wkhwfzln3y5c1wnvdk";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/refheap";
+          sha256 = "11w2pmkz56141gvyzyims9rd42djizni3g6dw4qa48bvlqc56klh";
           name = "refheap";
         };
         packageRequires = [ json ];
@@ -58234,8 +58626,8 @@
           sha256 = "1d34jd7is979vfgdy56zkd1m15ng3waiabfpak6dv6ak3cdh5fgx";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/dfdf111ecf33236f7b922a2b8e5d0f86e669cd8f/recipes/regex-dsl";
-          sha256 = "129sapsmvcqqqgcr9xlmxwszsxvsb4nj9g2fxsl4y6r383840jbr";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/regex-dsl";
+          sha256 = "0c9mxsvmx6mgpq838qnjjr7ra4hafikv7hq4nfab7zw9mxrcr2f9";
           name = "regex-dsl";
         };
         packageRequires = [];
@@ -58255,8 +58647,8 @@
           sha256 = "03qm8s7nqsj0pjnnb0p84gk7hvad4bywn3rhr3ibzj6hxqvppbqj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a9585fc1f0576e82a6a199828fa9773a0694da63/recipes/regex-tool";
-          sha256 = "1nd23vjij5h5gk5l7hbd5ks9ljisn054wp138jx2v6i51izxvh2v";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/regex-tool";
+          sha256 = "1s4clmy5r7w6aj2bh2vf2fmbcwnainzidj28mf3kc34x3qhybngq";
           name = "regex-tool";
         };
         packageRequires = [];
@@ -58506,8 +58898,8 @@
           sha256 = "0gi4pdfgyhl2lss5p71p0jxifni6zl0fv7n4cj42hbalgfyxfv79";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/da4be8c67584ea0ae35c7c9ee33334db5061a538/recipes/repl-toggle";
-          sha256 = "1jyaksxgyygfv1wn9c6y8sykb4hicwgs9n5vrdikd2i0iix29zpb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/repl-toggle";
+          sha256 = "16k9fk1nl2llk9qli52kiirlx9rlz8yhjh3cy6v5y2b3k0y1cf0b";
           name = "repl-toggle";
         };
         packageRequires = [ fullframe ];
@@ -58747,12 +59139,12 @@
     restart-emacs = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "restart-emacs";
-        version = "20170313.939";
+        version = "20170413.2305";
         src = fetchFromGitHub {
           owner = "iqbalansari";
           repo = "restart-emacs";
-          rev = "38603b019b703f6e78f640478ee6412ba743f7b1";
-          sha256 = "0zvknsakxfzkbfi7sg61q1m3484h1a0h6clzxd8hg4xifw6crf9y";
+          rev = "dc25f00c3cab1c97db2ca4733e7e7e7805ae68f2";
+          sha256 = "1rx5mj7lpxpmkbpbwb78garhl118d0kpbwvdwfh3f3j1rmzyiblx";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b9faeb6d910d686cbcafe7d12e0bcf62a85689bd/recipes/restart-emacs";
@@ -58980,8 +59372,8 @@
           sha256 = "02i5znln0aphvmvaia3sz75bvjhqwyjq1blf5qkcbprnn95lm3yh";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/88fe56cbb3deab4d5f24c66ba166d204b6751bba/recipes/rfringe";
-          sha256 = "171gzfciz78l6b653acgfailxpwmh8m1dm0dzpg0b1k0ny3aiwf6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rfringe";
+          sha256 = "16a647gvvn5nzgng7a8pam4ay6aifvhldaxg2xfz9fcafzkvw967";
           name = "rfringe";
         };
         packageRequires = [];
@@ -58993,12 +59385,12 @@
     rg = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, s, seq }:
     melpaBuild {
         pname = "rg";
-        version = "20170318.657";
+        version = "20170415.938";
         src = fetchFromGitHub {
           owner = "dajva";
           repo = "rg.el";
-          rev = "6c85ce6974b67644dce5a607285f04197fe4874e";
-          sha256 = "09r5rnnwxyqkf9kzpragwqxhhlgpr49kbvxc6ci18bkcs44vvcnw";
+          rev = "44eca47f049b25bd45e8cbc7e6579911e552b88a";
+          sha256 = "0riv5cr5sy37pcwvg0yjwi3qkvqr081503j487mcc7dcyvwlcrzy";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9ce1f721867383a841957370946f283f996fa76f/recipes/rg";
@@ -59081,8 +59473,8 @@
         src = fetchFromGitHub {
           owner = "eschulte";
           repo = "rinari";
-          rev = "be07b0f42aefa24c5d36c441d1f3f72e64fffaa4";
-          sha256 = "1kg83z10jw4ik0aapv9cjqlvqy31rln2am8vh3f77zh61qha37hx";
+          rev = "134438af8fbdfa9c8077267c768d273a9792b484";
+          sha256 = "0ndrqj7qsf9rky4v928803ib66p37vyhxgyc42vshx86q73v4cyg";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4b243a909faa71e14ee7ca4f307df8e8136e5d7c/recipes/rinari";
@@ -59249,8 +59641,8 @@
         src = fetchFromGitHub {
           owner = "marcowahl";
           repo = "rope-read-mode";
-          rev = "a43d56d79a0595374a8414979b758fbea3cab0a8";
-          sha256 = "1z5f6z3mii24h82lhpdlyaazjlf69ffp6la1ajl0hn91hx297dw9";
+          rev = "66c02e3efab84e12c2857cb2b56d524e98b7bc87";
+          sha256 = "1hmp7k17q5d5i6286x99jmfq954d9ys5347xk3aph9m5pmybvfrf";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/14a674559aa485e92357a8b941304ae8167b9c3e/recipes/rope-read-mode";
@@ -59295,8 +59687,8 @@
           sha256 = "04jbnm9is2cis75h40znqzjvyjq27ncr2vfank6zglzi4fhxsl0r";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/9bc02257f07ad72904905993a2a3eeda2917d8cb/recipes/roy-mode";
-          sha256 = "0ch0hamvw4gsqs2pap0h6w4cj6n73jqa75if0ymh73hk5i3acm8g";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/roy-mode";
+          sha256 = "1r49c1v0xjkrpxmq0k2l2nrx95n06b7hbpmr1n7nkil2bxdq275i";
           name = "roy-mode";
         };
         packageRequires = [];
@@ -59329,12 +59721,12 @@
     rpn-calc = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, popup }:
     melpaBuild {
         pname = "rpn-calc";
-        version = "20170328.349";
+        version = "20170402.1833";
         src = fetchFromGitHub {
           owner = "zk-phi";
           repo = "rpn-calc";
-          rev = "9f38d2a5f9a7f24e01804dafcf8a4951daa2bc62";
-          sha256 = "08y8yczzpwg7bw01bgpc54kx0ijhg0y8pwl8kcgdxgmav38y46fb";
+          rev = "4d8aa137b31392a76a0fd4eaf676291029c1aad9";
+          sha256 = "0m373xzxx6ywrxll0qqsnyx55bfp0phbw6mcczz53yw9kpf3mf22";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/47d5b3c931cdbc2351e01d15e2b98c78081c9506/recipes/rpn-calc";
@@ -59392,16 +59784,16 @@
     rtags = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "rtags";
-        version = "20170329.1245";
+        version = "20170416.1111";
         src = fetchFromGitHub {
           owner = "Andersbakken";
           repo = "rtags";
-          rev = "8d868af718f29e7428658fe56979e05659f3a9c3";
-          sha256 = "1nj1r3hdgzfhmhy7v9s7ivww7y1hd70bw4vp904m20qwq81zpm69";
+          rev = "f1f8709556f25d0cef12b1d4dff5ca0b09a890a0";
+          sha256 = "05r888crk8y5fi4xvarrnr89wjjrrzzdr4bfmd0kzq83vs0azr77";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ac3b84fe84a7f57d09f1a303d8947ef19aaf02fb/recipes/rtags";
-          sha256 = "08clwydx2b9cl4wv61b0p564jpvq7gzkrlcdkchpi4yz6djbp0lw";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/rtags";
+          sha256 = "0s5m4zjvnc1k4gkkizbs4ysvzzbfh45717pksg9bnyzwx5lcw5yd";
           name = "rtags";
         };
         packageRequires = [];
@@ -59421,8 +59813,8 @@
           sha256 = "1ajks5dmsb5cyj0hzxbp3r305liwaayb8jds0wdnw4nk5anlsbnr";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0acb202acc25420274a1b9e639f34f9878a61e83/recipes/rtm";
-          sha256 = "1ni2610svxziq1gq6s6igkhqyafvgn02gnw7jbm3ir7ks4w2imzf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rtm";
+          sha256 = "1bwbaps76pawz73fs7nzkvbii9d57zmfdccpm18dwn6phaqxbhyc";
           name = "rtm";
         };
         packageRequires = [ cl-lib ];
@@ -59457,13 +59849,13 @@
         pname = "ruby-additional";
         version = "20161115.2259";
         src = fetchsvn {
-          url = "http://svn.ruby-lang.org/repos/ruby/trunk/misc/";
-          rev = "58216";
+          url = "https://svn.ruby-lang.org/repos/ruby/trunk/misc/";
+          rev = "58383";
           sha256 = "0n4gnpms3vyvnag3sa034yisfcfy5gnwl2l46krfwy6qjm1nyzhf";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/17cc8e84dd68f280c23f77510f58f21e7e7cbaae/recipes/ruby-additional";
-          sha256 = "0h0cxik8lp8g81bvp06mddikkk5bjdlch2wffcvsvi01is408w4w";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ruby-additional";
+          sha256 = "1x5574swmch89jz2jiq6g34igp94bivzld0lb1nhyb1i3v1msq6i";
           name = "ruby-additional";
         };
         packageRequires = [ emacs ruby-mode ];
@@ -59497,8 +59889,8 @@
         src = fetchFromGitHub {
           owner = "eschulte";
           repo = "rinari";
-          rev = "be07b0f42aefa24c5d36c441d1f3f72e64fffaa4";
-          sha256 = "1kg83z10jw4ik0aapv9cjqlvqy31rln2am8vh3f77zh61qha37hx";
+          rev = "134438af8fbdfa9c8077267c768d273a9792b484";
+          sha256 = "0ndrqj7qsf9rky4v928803ib66p37vyhxgyc42vshx86q73v4cyg";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ca7bf43ef8893bf04e9658390e306ef69e80a156/recipes/ruby-compilation";
@@ -59537,13 +59929,13 @@
         pname = "ruby-electric";
         version = "20150424.752";
         src = fetchsvn {
-          url = "http://svn.ruby-lang.org/repos/ruby/trunk/misc/";
-          rev = "58216";
+          url = "https://svn.ruby-lang.org/repos/ruby/trunk/misc/";
+          rev = "58383";
           sha256 = "0n4gnpms3vyvnag3sa034yisfcfy5gnwl2l46krfwy6qjm1nyzhf";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2d67431327845171f0e50d28e9276cbabecf6cb0/recipes/ruby-electric";
-          sha256 = "04j04dsknzb7xc8v6alawgcbymdfmh27xnpr98yc8b05nzafw056";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/ruby-electric";
+          sha256 = "0abi1hqjscz2wj4n5habjb6rksxkhwv0cvpw68irkj4fas92qhk8";
           name = "ruby-electric";
         };
         packageRequires = [];
@@ -59689,8 +60081,8 @@
           sha256 = "0hlzkwll6di13hja3hm3nzmcjkwgciq9bziz837cr49agagz3b55";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/746e0e49a24f16baa5f1cc7f11220766ecf9f1fe/recipes/ruby-test-mode";
-          sha256 = "113ysf08bfh2ipk55f8h741j05999yrgx57mzh53rim5n63a312w";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ruby-test-mode";
+          sha256 = "06j1q9m08jkwlnkccppf2qlcs48nr8ic9sjdv90rnixc18bw7bpk";
           name = "ruby-test-mode";
         };
         packageRequires = [ pcre2el ruby-mode ];
@@ -59786,12 +60178,12 @@
     rust-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "rust-mode";
-        version = "20170117.824";
+        version = "20170411.2043";
         src = fetchFromGitHub {
           owner = "rust-lang";
           repo = "rust-mode";
-          rev = "0de149a9ad04f652cd7a59a9ef67be8a7d86ba76";
-          sha256 = "0cj12mz47k20d2lrnwr81ijbs42wjpdzmw646yghvazdrq23b12h";
+          rev = "dae5af71ebf4b5c6797ef057e8a0ebf655bcdbfb";
+          sha256 = "0s01pzlq0lqzbxqj0x2x4lr3l1rsvnd8h2kskgli6y2m8nv97qc6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8f6e5d990d699d571dccbdeb13327b33389bb113/recipes/rust-mode";
@@ -59815,8 +60207,8 @@
           sha256 = "04d5z33pv1xqsn539nfkyjh7dvf0kc0rwili1zr6817z0406k1qn";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a5ebbcca659bb6d79ca37dc347894fac7bafd9dd/recipes/rust-playground";
-          sha256 = "1w29plj06ld3iq8xhjnfh8hphcp7aji15y1xqp8bb9m1k07wza7l";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rust-playground";
+          sha256 = "0ml0zr9vz2vjd9wr0v706w4v4qqfzpa56rdzfak2kb5llx53j89v";
           name = "rust-playground";
         };
         packageRequires = [ emacs rust-mode ];
@@ -59857,8 +60249,8 @@
           sha256 = "1pq8c79qrs2zwp8q89rhm5lmcpl48axnc9mwl10gq4jy2rlzfrks";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a4d9f86140b0ee95742c3a66dfbc063b5f87fb3a/recipes/ryo-modal";
-          sha256 = "019r1k14mhdv1x06fd5q4l0l4jnjy330b078qvpxrqv1fnwh1q51";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ryo-modal";
+          sha256 = "06pm6grsdcldi1khbjfjp7lpi6f6x3pa5ikspp0xdwijnmi0xrrf";
           name = "ryo-modal";
         };
         packageRequires = [ emacs ];
@@ -59878,8 +60270,8 @@
           sha256 = "07db8jfi1m19x760grkznaiwbap5dp00cicd88cbam16a0qfhbjj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d6e5137dac9f8f95579994601cb1e24614f965f2/recipes/s";
-          sha256 = "0b2lj6nj08pk5fnxvjkc1d9hvi29rnjjy4n5ns4pq6wxpfnlcw64";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/s";
+          sha256 = "0dars9212z0yv97mj4615h23vd22vy8b6cw2n433z9jhif3aybqa";
           name = "s";
         };
         packageRequires = [];
@@ -59962,8 +60354,8 @@
           sha256 = "1zsznz9pn9dj672jii6wcvs47yqyxv3dsm5qy1dax1d6gvvbf4zq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/455cfeb623057c2bb03a5a78380b3247e2bdd0d4/recipes/salesforce-utils";
-          sha256 = "0fyz710saqfi44sf3zqm9n3m4w09zsip015ij0pqs75nanhcnmvy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/salesforce-utils";
+          sha256 = "0b70w92zghid6n0ba28dh5r3pckr8jsd1743qyi8vj04ih1dns5i";
           name = "salesforce-utils";
         };
         packageRequires = [ cl-lib ];
@@ -60004,8 +60396,8 @@
           sha256 = "0aazzq1yqn5mal75hxa6ifx2hnyv0lh800klqvzn26xd7i8xcfrd";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5df85d24ee7ed41aab983626df72641bb04dadd5/recipes/sane-term";
-          sha256 = "0iz63b62x5jrz7c23i850634k4bk73kg1h4wj1ravx3wlgvzs8y8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sane-term";
+          sha256 = "08b8zlr8qzxfrpg9lqiyam3sb8a8rzak79ra4r6ljjppyj4zmwi7";
           name = "sane-term";
         };
         packageRequires = [ emacs ];
@@ -60189,8 +60581,8 @@
         src = fetchFromGitHub {
           owner = "openscad";
           repo = "openscad";
-          rev = "714e14e4a6b8eb62677784de6213e1cde79a6554";
-          sha256 = "0yq86lm8754899lvx9g9w4y34gsw91xw51m9rsk59x7jfd2lfq6x";
+          rev = "ac72fb1103c506ce8c00f1b2be37b5c5ab771a61";
+          sha256 = "19z8dwybj4bmmqlxa8g6jc87kkj2bdnlgv0k31d0kqxwswng309w";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2d27782b9ac8474fbd4f51535351207c9c84984c/recipes/scad-mode";
@@ -60269,12 +60661,12 @@
     scheme-complete = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "scheme-complete";
-        version = "20160604.533";
+        version = "20170410.617";
         src = fetchFromGitHub {
           owner = "ashinn";
           repo = "scheme-complete";
-          rev = "bc7f0bd687c9a6625393053fb6490b4f37c82505";
-          sha256 = "0xa0md847v3qizvf22jrb1rwynrdp7dbxv32rf4vl8yjsh44wspn";
+          rev = "6bf844202cb9e8490ce37a414374be3f04eefca4";
+          sha256 = "16mbcwx1x6bg86qfgl6bhq5qjkz9xgd5f2jl993vvfk824qg4jgl";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0fda2b54a0ff0b6fc3bd6d20cfcbbf63cae5380f/recipes/scheme-complete";
@@ -60423,8 +60815,8 @@
           sha256 = "1nr6yqmxz6jqjkfj249yz88480shlsnmri0d322pkz88d4nkr0hq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e794c1fa9bd93e25a65c2b71a5ccf5662fe179bf/recipes/scratch";
-          sha256 = "1hhwyvg05cnzfnn4bgygvjfqyayxl65f5zn7h05h9axvcab6s7kj";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/scratch";
+          sha256 = "1g4jm54n5k0pkspbd9636hcmxi1p3lkgayiwavlgs0sg2s6vc9l9";
           name = "scratch";
         };
         packageRequires = [];
@@ -60878,8 +61270,8 @@
           sha256 = "1d72vw1dcxnyir7vymr3cfxal5dndm1pmm192aa9bcyrcg7aq39g";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/25a45eb6297168cd0ce4c4db5574362addad5c69/recipes/selected";
-          sha256 = "0nvrfymb7wd5lcyfpxzh0rc0l3qcwrvh0l32ag7mgs7jzgvnphnx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/selected";
+          sha256 = "1zk9jvsiw30zqh68xjx2zcc71php68ryiwqmws52ghqiaifj50gf";
           name = "selected";
         };
         packageRequires = [];
@@ -60972,17 +61364,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    sentence-highlight = callPackage ({ fetchurl, lib, melpaBuild }:
+    sentence-highlight = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "sentence-highlight";
-        version = "20121026.750";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/sentence-highlight.el";
-          sha256 = "01qj57zpqpr4rxk9bsx828c7baac1xaa58cz22fncirdx00svn2k";
+        version = "20170405.2352";
+        src = fetchFromGitHub {
+          owner = "sbelak";
+          repo = "sentence-highlight";
+          rev = "f47839853455d0f4ffe50b3b0f9d3e7a15ace1fa";
+          sha256 = "11s5zvwklf5vzwiiwmcw5c93qjvf5nxclbbk8hlj8fg88c5ssbzd";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1f41eba284e297177e89b9b7a8da4779eb6fdcba/recipes/sentence-highlight";
-          sha256 = "16kh6567hb9lczh8zpqwbzz5bikg2fsabifhhky8qwxp4dy07v9m";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sentence-highlight";
+          sha256 = "07pyyl74cvnz6dd85ghv3zdrir08317lvnzm5nf1n3p85aqjpcxm";
           name = "sentence-highlight";
         };
         packageRequires = [];
@@ -61023,8 +61417,8 @@
           sha256 = "0viwqym1vns2l3lrxv0sdrbvadn6apk8gip26a3ln4pzq1723qxh";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/664fc68d7b0eb92940fc188f5b9bee7ac7e0c674/recipes/seoul256-theme";
-          sha256 = "058fadcqz21c22lzf33badibb7hn3w695akh560v10n8750h5wca";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/seoul256-theme";
+          sha256 = "1nvhnyfvmpqg0a54nq73lhz3h9g94zkbix13bbzv9bp1lg8v6w1x";
           name = "seoul256-theme";
         };
         packageRequires = [ emacs ];
@@ -61189,8 +61583,8 @@
           sha256 = "11h5z2gmwq07c4gqzj2c9apksvqk3k8kpbb9kg78bbif2xfajr3m";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/69270c79b47b7d9348bd2ca9fec3aabfd7e694b3/recipes/sexp-move";
-          sha256 = "0lcxmr2xqh8z7xinxbv1wyrh786zlahhhj5nnbv83i8m23i3ymmd";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sexp-move";
+          sha256 = "0sdm3kr4594fy9hk8yljj2iwa40bgs8nqpwwl2a60r060spz54z9";
           name = "sexp-move";
         };
         packageRequires = [];
@@ -61294,8 +61688,8 @@
           sha256 = "04p6132121cv9z20mpp3dw5b4s4k8wcknscq97a7z072cabph3ji";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b1c547d37422998c01a610f88d62784fbca33523/recipes/shakespeare-mode";
-          sha256 = "1i9fr9l3x7pwph654hqd8s74swy5gmn3wzs85a2ibmpcjq8mz9rd";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/shakespeare-mode";
+          sha256 = "1sg8n4ifpi36zmf6b6s0swq7k3r038cmj8kxjm7hpgxq6f9qnk9x";
           name = "shakespeare-mode";
         };
         packageRequires = [];
@@ -61325,16 +61719,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    shell-command = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    shell-command = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "shell-command";
-        version = "20090621.632";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/shell-command.el";
-          sha256 = "0jr5sbmg4zrx2dfdrajh2didm6dxx9ri5ib9qnwhc1jlppinyi7l";
+        version = "20090830.340";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "shell-command";
+          rev = "7e22125f746ce9ffbe9b0282d62f4b4bbbe672bd";
+          sha256 = "1my2i26a03z8xyyacsnl5wdylnbhhvazn23bpy639d3l4x4l7jzw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8b528544841995045fb1f8344aaaa38946bb3915/recipes/shell-command";
-          sha256 = "1jxn721i4s1k5x1qldiynnl5khsl22x9k3whm698nzv8m786spxl";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/shell-command";
+          sha256 = "01nviashfr64wm78zi3vrqrqdqgsamp76d9kasxv0b7fqmfx7yjk";
           name = "shell-command";
         };
         packageRequires = [];
@@ -61385,16 +61782,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    shell-history = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    shell-history = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "shell-history";
-        version = "20100504.150";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/shell-history.el";
-          sha256 = "0biqjm0fpd7c7jilgkcwp6c32car05r5akimbcdii3clllavma7r";
+        version = "20100505.139";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "shell-history";
+          rev = "ee371a81f2d2bf5a308344078329ca1e9b5ed38c";
+          sha256 = "0jyz31j5a07shcf2ym5gnn16xk5r3s84ls8kxk5myvxi3wkpgdd4";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/039854cf1b41b18423876170c5f48300bf3fe29a/recipes/shell-history";
-          sha256 = "1blad7ggv27qzpai2ib1pmr23ljj8asq880g3d7w8fhqv0p1pjs7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/shell-history";
+          sha256 = "1cmk8rymnj7dscxjq0p23jgwc16yvzw1804ya5wsg95v239gz1hy";
           name = "shell-history";
         };
         packageRequires = [];
@@ -61540,8 +61940,8 @@
           sha256 = "1acml0p04wxnm0di9iy5kwml6myr7gcj09ky6dw35f0k0m1w51ba";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ed9f0577c6828236582df1781e751b8b81746492/recipes/shen-elisp";
-          sha256 = "0i6z2icpndv5g5ydmwqskl7vrmdz9qp30l5bw1l7gqr3dippjiyz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/shen-elisp";
+          sha256 = "045nawzyqaxd3g5f56fxfy680pl18x67w0wi28nrq4l4681w9xyq";
           name = "shen-elisp";
         };
         packageRequires = [ emacs ];
@@ -61703,8 +62103,8 @@
           sha256 = "143889knvy6ifvq759869gbjfg10k10mi2by2hajcgzqhby72h61";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e2b5576d501aee95c8f62d721a69077a1f3df424/recipes/showkey";
-          sha256 = "1m280ll07i5c6s4w0s227jygdlpvd87dq45039v0sljyxm4bfrsv";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/showkey";
+          sha256 = "04lw32k1imvpfc4dr5pz11sx74982xr13hcyblvrz1zxhgixb1z1";
           name = "showkey";
         };
         packageRequires = [];
@@ -61713,16 +62113,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    showtip = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    showtip = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "showtip";
-        version = "20080329.1959";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/showtip.el";
-          sha256 = "01ibg36lvmdk7ac1k0f0r6wyds4rq0wb7gzw26nkiwykn14gxaql";
+        version = "20090830.340";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "showtip";
+          rev = "930da302809a4257e8d69425455b29e1cc91949b";
+          sha256 = "01zak0zhha6dp7a2hm28d065gjnc462iwpsfyxhbxgfzcdlicqc7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/19636728b501dadddaad9743635fd51ceb12cc07/recipes/showtip";
-          sha256 = "1fdhdmkvyz1dcy3x0im1iab6yhhh8gqvxmm6ccwr6rl1r1m5zwc8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/showtip";
+          sha256 = "1d5ckka2z0ffwyk9g3h91n3waijj2v7n8kvdks35gcr2yl3yk780";
           name = "showtip";
         };
         packageRequires = [];
@@ -61763,8 +62166,8 @@
           sha256 = "07zzyfibs2c7w4gpvdh9003frznbg7zdnrx0nv8bvn0b68d3yz0m";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/97fe5a411be1a7d80d50f5a8af44b74c6c7cf9e6/recipes/shrink-whitespace";
-          sha256 = "12if0000i3rrxcm732layrv2h464wbb4xflbbfc844c83dbx1jmq";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/shrink-whitespace";
+          sha256 = "0baqv4wr1wi4wd7cfhqf4y24qkpd72lax596z5lj934ihwf3gggw";
           name = "shrink-whitespace";
         };
         packageRequires = [];
@@ -61843,12 +62246,12 @@
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "sift.el";
-          rev = "8c3f3d14a351a2394027d72ee0599aa73b9f0d13";
-          sha256 = "1ma6djvhvjai07v1g9a36lfa3nw8zsy6x5vliwcdnkf44gs287ra";
+          rev = "ef509ac4c579340e8d924c26d9e5858a9f4fb9de";
+          sha256 = "0i8gqzvpl3drzp031dqdpsi1ssr3az8fzb7xpbxnamzscfz6pdyc";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a730e1331b0486c4bd2d309b85d2f8810489eb47/recipes/sift";
-          sha256 = "0mv5zk140kjilwvzccj75ym7wlkkqryb532mbsy7i9bs3q7m916d";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sift";
+          sha256 = "1kr5rxza5li3zrkfvs91y7dxmn213z0zf836rkwkmwg2b9rmqxvj";
           name = "sift";
         };
         packageRequires = [];
@@ -61868,8 +62271,8 @@
           sha256 = "1gzfdk3ks56h8q4xk69aaxkhkg9jhs55iqdicyvq7x9wmjn6b7xw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e5bad0b4c9a7cd28de44ce60de056330a376b3e6/recipes/signal";
-          sha256 = "0pvl5qxi0rjbxkpa8kk1q9vz11i9yjmph42si3n7gmm9kc28pk61";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/signal";
+          sha256 = "0y4crwpnmwm8bi9jazrph4yj0nnva2i1js8h3bw3sizy20a4yf00";
           name = "signal";
         };
         packageRequires = [ cl-lib emacs ];
@@ -62173,12 +62576,12 @@
     skeletor = callPackage ({ cl-lib ? null, dash, emacs, f, fetchFromGitHub, fetchurl, let-alist, lib, melpaBuild, s }:
     melpaBuild {
         pname = "skeletor";
-        version = "20170327.1529";
+        version = "20170413.2030";
         src = fetchFromGitHub {
           owner = "chrisbarrett";
           repo = "skeletor.el";
-          rev = "cf643ea320e172b3727f897f05e87a8e5a02c589";
-          sha256 = "1l3gjzzvrbkiapk41jxp1hwx2z2wc69m8bsy179nwvv9gsnxvwv1";
+          rev = "376958e6e39dcf32df945c617c230dba3bcc076d";
+          sha256 = "152kqsbhn1z3nf55vrrz6iv96c4jkzp2bglgp2bqb37nfh722frz";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1e63aefc869900c2af6f958dc138f9c72c63e2b8/recipes/skeletor";
@@ -62299,12 +62702,12 @@
     slack = callPackage ({ alert, circe, emojify, fetchFromGitHub, fetchurl, lib, melpaBuild, oauth2, request, websocket }:
     melpaBuild {
         pname = "slack";
-        version = "20170328.2044";
+        version = "20170331.2242";
         src = fetchFromGitHub {
           owner = "yuya373";
           repo = "emacs-slack";
-          rev = "fc85625ed4421e4fe79c87c3844d6561543c0ab8";
-          sha256 = "08xfqacvq1a0g6pvj6pjg3mi2yl1c756kn92csacdq3g7z4sfkm2";
+          rev = "86756c37968cbbc171e52e416ef656af2a2258a8";
+          sha256 = "1vhcfmyk9swf5h7gka9fbwq2s3x4a540km6wjxqynmpw8c45q154";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f0258cc41de809b67811a5dde3d475c429df0695/recipes/slack";
@@ -62551,12 +62954,12 @@
     sly = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "sly";
-        version = "20170317.1656";
+        version = "20170413.557";
         src = fetchFromGitHub {
           owner = "capitaomorte";
           repo = "sly";
-          rev = "d3f586a99e1d3ecb225b2a7c56435eaac2e5527c";
-          sha256 = "00wyvc34mcdqrb7cnayc0biw4rz92jad9vpv4w38zbs8331lkh5k";
+          rev = "35ccf713384477b9e314ffef69f762ce2a6a94e9";
+          sha256 = "0j1z536ydcdmg16xx0nzd2cj9cpi8l8lhwb8ig0b9nl3lv12cb4d";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/79e7213183df892c5058a766b5805a1854bfbaec/recipes/sly";
@@ -62766,8 +63169,8 @@
           sha256 = "1xbd42q60pmg0hw4bn2fndjwgrfgj6ggm757fyp8m08jqh0zkarn";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1da4d66a6cae13464343e35f0aed2cb232ac5fe5/recipes/smart-cursor-color";
-          sha256 = "11875pwlx2rm8d86541na9g3yiq0j472vg63mryqv6pzq3n8q6jx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/smart-cursor-color";
+          sha256 = "19ah55514ashkm4f49nlbnrpwxpwlfn6x3fbi4dv0x2b8v1828ss";
           name = "smart-cursor-color";
         };
         packageRequires = [];
@@ -62817,6 +63220,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    smart-hungry-delete = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "smart-hungry-delete";
+        version = "20170412.643";
+        src = fetchFromGitHub {
+          owner = "hrehfeld";
+          repo = "emacs-smart-hungry-delete";
+          rev = "7c1d56a92481594e14d40b5fdf6c48657a0108a0";
+          sha256 = "0mxaslx5823s68a8ggbbnmfk1jiswjvip5s4sg7ihfagnci72wni";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/abbf52a856b95ab88cde1fdeeebebb81f7c61fa9/recipes/smart-hungry-delete";
+          sha256 = "03hw5p055dbayw5z43c1ippf2lnjgs77l7q969ng3fffqkazjq9b";
+          name = "smart-hungry-delete";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/smart-hungry-delete";
+          license = lib.licenses.free;
+        };
+      }) {};
     smart-indent-rigidly = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "smart-indent-rigidly";
@@ -63017,8 +63441,8 @@
           sha256 = "0p1cqpdsp2vdx85i22shyzfhz22zwf1k1dxkqcmlgh3y7f4qq8ir";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/627e46a75bb25cf6e71785b5dda6b037f2adbb71/recipes/smart-window";
-          sha256 = "1x1ncldl9njil9hhvzj5ac1l5aiyfm0f7j0d7lw8ady7xx2cy26m";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/smart-window";
+          sha256 = "0w24v7v0477yl5zchyk6713yqp8lyfz600myvv4dp3kgppxpgd3f";
           name = "smart-window";
         };
         packageRequires = [ cl-lib ];
@@ -63030,12 +63454,12 @@
     smartparens = callPackage ({ cl-lib ? null, dash, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "smartparens";
-        version = "20170312.450";
+        version = "20170417.1126";
         src = fetchFromGitHub {
           owner = "Fuco1";
           repo = "smartparens";
-          rev = "2acdee84701021049bea0925988df61e340c2311";
-          sha256 = "1k0aybgaa595gdr8d1v3wid349hzmnxr3i0isdh3sdzf9b9dh313";
+          rev = "72f3d2846a7fe324136b7b58d6bf3f8939551c99";
+          sha256 = "181sb5rv0li00gp67sg16g9clhcs9gbmp1cs8f29ww3m753k1nvs";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/bd98f85461ef7134502d4f2aa8ce1bc764f3bda3/recipes/smartparens";
@@ -63080,8 +63504,8 @@
           sha256 = "1nzkgfr1w30yi88h4kwgiwq4lcd0fpm1cd50gy0csjcpbnyq6ykf";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/26c73e1d15186ebf300c6397fda61a8a885a130f/recipes/smartscan";
-          sha256 = "0vghgmx8vnjbvsw7q5zs0qz2wm6dcng9m69b8dq81g2cq9dflbwb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/smartscan";
+          sha256 = "1q0lqms16g7avln1pbxzb49z3w96kv1r7lbh61ijlnz3jips098w";
           name = "smartscan";
         };
         packageRequires = [];
@@ -63227,8 +63651,8 @@
           sha256 = "07lzr1p58v95a4n6zad8y0dpj7chbxlcmb6s144pvcxx8kjwd4dr";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e377955c0c36459698aae429df0a78e84793798f/recipes/smiles-mode";
-          sha256 = "0bg2kw7hfb8iqzbf3pgyyj384xmnfz4fj31ijlcrgl71fwb3gc9z";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/smiles-mode";
+          sha256 = "0wf02aj9bhl2m861342f5jfkx3xws1ggcyszfp9jphlykw6r0v9k";
           name = "smiles-mode";
         };
         packageRequires = [];
@@ -63386,12 +63810,12 @@
     snakemake-mode = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, magit-popup, melpaBuild }:
     melpaBuild {
         pname = "snakemake-mode";
-        version = "20170326.1920";
+        version = "20170406.1736";
         src = fetchFromGitHub {
           owner = "kyleam";
           repo = "snakemake-mode";
-          rev = "349980879a66493ed421e9c83f4857662267b8df";
-          sha256 = "0alwp2i554alac76zlskviabi12nivmpy4yhm9nwz7lsnv7qsikj";
+          rev = "15803162483e635f3e22b2efea33ccad725e0535";
+          sha256 = "1nc8xp22i57kf89x0qh69dspl9hl710m01gdr35ph5gl8ycmyir5";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c3a5b51fee1c9e6ce7e21555faa355d118d34b8d/recipes/snakemake-mode";
@@ -63457,8 +63881,8 @@
           sha256 = "1nyrfbjrg74wrqlh8229rf7ym07k2a0wscjm0kbg3sam9ryc546y";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/38043250c1696f61fed04c5feb6a859c36009a5e/recipes/snippet";
-          sha256 = "1lgpw69k5a82y70j7nximdj0bl5nzr4jhjr5fkx1cvz8hhvgdz6j";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/snippet";
+          sha256 = "1yld7y1hsrqs0f0iq7zfwknil5zqv65npm67nh548hbyy3rhgd68";
           name = "snippet";
         };
         packageRequires = [];
@@ -63499,8 +63923,8 @@
           sha256 = "07056pnjgsgw06c67776qp7jci96iqbzlprbavzz2l1j8ywz8cwm";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0945169fa83a185869b905c9f7e4d37f0a5a8099/recipes/soft-charcoal-theme";
-          sha256 = "0i29ais1m2h9v4ghcg41zfbnaj8klgm4509nkyfkxm7wqnjd166a";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/soft-charcoal-theme";
+          sha256 = "1j9yd4kfh7ih5ipmwvxh9qqq6wxv6qk8a9vb5jiyk90dn8a2d7g5";
           name = "soft-charcoal-theme";
         };
         packageRequires = [];
@@ -63604,8 +64028,8 @@
           sha256 = "1x9qn6b4nbld9v0r7vi3mg6w7nsa76pzyn1fl118n14a8kkc0is7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f0536c7e32ef145546e4014a1d418cbac8673eb5/recipes/sonic-pi";
-          sha256 = "07qxm1rkw2cbxf4g2vqk3s7xnqldqkdm2zw1qh2kqjscg5gwpkqp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sonic-pi";
+          sha256 = "0j6n1qgdrma6vvi6f7xiy66qwsl8710pca4ga9i7srhxv0r47x68";
           name = "sonic-pi";
         };
         packageRequires = [ cl-lib dash emacs highlight osc ];
@@ -63873,6 +64297,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    sourcetrail = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "sourcetrail";
+        version = "20170410.1437";
+        src = fetchFromGitHub {
+          owner = "CoatiSoftware";
+          repo = "emacs-sourcetrail";
+          rev = "b8d5557aa565ae979622312576db20515f65f977";
+          sha256 = "1aqkkbf0xw4kqsy1jjn4xhs5vk2vcsqzs7f4p2sf1plnzsqxflw8";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/9713bd8030657c8e867409a6aa8173219809173a/recipes/sourcetrail";
+          sha256 = "0qa3iw82dbfc1b45505s39m99r0m2473312prws6hch0qhjyji7h";
+          name = "sourcetrail";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/sourcetrail";
+          license = lib.licenses.free;
+        };
+      }) {};
     spacegray-theme = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "spacegray-theme";
@@ -63915,6 +64360,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    spaceline-all-the-icons = callPackage ({ all-the-icons, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, spaceline }:
+    melpaBuild {
+        pname = "spaceline-all-the-icons";
+        version = "20170417.105";
+        src = fetchFromGitHub {
+          owner = "domtronn";
+          repo = "spaceline-all-the-icons.el";
+          rev = "26a9e571122aed17318948f677827068e13cb216";
+          sha256 = "0bpy812hlnmjracnz66xb9v4xd8m1sxizls7nhhpi68i870q2449";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/d039e057c1d441592da8f54e6d524b395b030375/recipes/spaceline-all-the-icons";
+          sha256 = "1h6clkr2f29k2vw0jcrmnfbjpphaxm7s3zai6pn6qag32bgm3jq6";
+          name = "spaceline-all-the-icons";
+        };
+        packageRequires = [ all-the-icons emacs spaceline ];
+        meta = {
+          homepage = "https://melpa.org/#/spaceline-all-the-icons";
+          license = lib.licenses.free;
+        };
+      }) {};
     spacemacs-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "spacemacs-theme";
@@ -64028,8 +64494,8 @@
           sha256 = "0zn7gjrga1ly1za04jd4s61m1dwkyy960x7g3x9hn4szqvpcsvfa";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/9cac36b71f3690f65bd0ff78bf4a2fecf2dd5ea2/recipes/speck";
-          sha256 = "19h3syk4kjmcy7jy9nlsbq6gyxwl4xsi84dy66a3cpvmknm25kyg";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/speck";
+          sha256 = "06x5543pwqazs4airj43208caw3sxw7zb148njbn33qgl09r1iv6";
           name = "speck";
         };
         packageRequires = [];
@@ -64153,8 +64619,8 @@
           sha256 = "0a3vgkp65hpc1a5h79yl0pc02lr6w299wd2fs9cgn8nvbdrip5ij";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/269acf093c3aa508479bf532a4e07c9c6d568c72/recipes/sphinx-mode";
-          sha256 = "16p5xlj4q9fyhz70r73w48fivwzpz9mcq710qqxqaap1aajkh84b";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sphinx-mode";
+          sha256 = "0f5xkaqsmxc4bfz80njlc395dcw2dbvmzx6h9fw31mylshzbmrys";
           name = "sphinx-mode";
         };
         packageRequires = [];
@@ -64174,8 +64640,8 @@
           sha256 = "0ngfyxpvwgyqh99vjr2msqan0hma1qlljkx971qjxcpn0y80dj23";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6142975cf9c0b9faaf128be34d30e12a88b500f8/recipes/spice-mode";
-          sha256 = "0r9dp5g3rp8fycd6nmm4m1vwsqahc47h3dsk6whw9a7adxh5i2bv";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/spice-mode";
+          sha256 = "1my6dbdnf4scshjf299d4n7vsdq3cxhq9kmqvirs45y3qjm7pgpg";
           name = "spice-mode";
         };
         packageRequires = [ emacs ];
@@ -64258,8 +64724,8 @@
           sha256 = "1270c4l7dxxsnzkifwa0ncgv078da9pzhlyxpdfbdbsj8w70plzm";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/fb57a2d7dc46f7b0663a030e240f81c758a44e6a/recipes/spotify";
-          sha256 = "0pmsvxi1dsi580wkhhx8iw329agkh5yzk61bqvxzign3cd6fbq6k";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/spotify";
+          sha256 = "07y6d3cz3nziasza3znysvcnx3kw156ab78kw5y0pdll45nw210x";
           name = "spotify";
         };
         packageRequires = [ cl-lib ];
@@ -64426,8 +64892,8 @@
           sha256 = "0d1ksh1rslzn93b8g6p48ca27f3d0ls4kxjcadjmd700x4vzv88i";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/147b6d7a58cab128509589a84fb7938e56aa0604/recipes/sql-impala";
-          sha256 = "1jr9k48d0q00d1x5lqv0n971mla2ymnqmjfn8pw0s0vxkldq4ibi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sql-impala";
+          sha256 = "1mh36ycqgr07r0hknkr6vb4k0r5b2h8bqd7m5faz9p56qbisgvvh";
           name = "sql-impala";
         };
         packageRequires = [];
@@ -64538,16 +65004,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    sr-speedbar = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    sr-speedbar = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "sr-speedbar";
         version = "20161025.131";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/sr-speedbar.el";
-          sha256 = "15kvl270a5xx1w5fjlrawslnpwyks2x17356xcr0idhv5xw2wn30";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "sr-speedbar";
+          rev = "77a83fb50f763a465c021eca7343243f465b4a47";
+          sha256 = "0sd12555hk7z721y00kv3crdybvcn1i08wmd148z5imayzibj153";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e1f3e11958db5ecf764d6e659608220af2166fb3/recipes/sr-speedbar";
-          sha256 = "1zq3ysz1vpc98sz2kpq307v1fp1l4ivwgrfh2kdqkkdjm4fkya23";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/sr-speedbar";
+          sha256 = "1v90jbqdw39yrfcsnyqas8c5g09rcf1db65q2m2rw7rik8cgb052";
           name = "sr-speedbar";
         };
         packageRequires = [];
@@ -64609,8 +65078,8 @@
           sha256 = "1rdhdkwdhb727rj53xyxk6i00sjr58a48hfig14m12niy1k739vd";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b9700178edf36c4bbaf2b91f7138fbd6fb5f9ea3/recipes/ssh";
-          sha256 = "1jywn8wlqzc2mfylp0kbpzxv3kwzak3vxdbjabiawqv1m4bfpk5g";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ssh";
+          sha256 = "1wlzagcg2fxqcbpd3z02wsil2n224kzmhcd54df80jypgq5fa6k3";
           name = "ssh";
         };
         packageRequires = [];
@@ -64643,12 +65112,12 @@
     ssh-config-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "ssh-config-mode";
-        version = "20170110.1756";
+        version = "20170413.918";
         src = fetchFromGitHub {
           owner = "jhgorrell";
           repo = "ssh-config-mode-el";
-          rev = "badbd859517e0a7c0cb8002cf79f4c474478b16d";
-          sha256 = "13dqzyc99qvspy8fxdjai0x0s0ggyhdlf6apyrq2r1z0j6gaf88g";
+          rev = "082219f18f34d146e3b6ced175c912f2da31220d";
+          sha256 = "1035r0msl7av5g0hkn69784zdqvpamplvzgn06yzjsnf0bfbsdl5";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9ce38cac422ad82f8b77a1757490daa1f5e284b0/recipes/ssh-config-mode";
@@ -64672,8 +65141,8 @@
           sha256 = "1zkxiy66d34v09krfajx6y8i2s5jdp99sxfzbvzi854s9hldl58x";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8b4547f86e9a022468524b0d3818b24e1457797e/recipes/ssh-deploy";
-          sha256 = "07kryxspjy8lr1a2m0bppa3xgbzwk180z4a8har37ygm3hdpj50x";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ssh-deploy";
+          sha256 = "1ys3cc5fz8y4rsiq3daqgcpa14ssv1q4cw0pqbfscql6mps0mjdm";
           name = "ssh-deploy";
         };
         packageRequires = [];
@@ -65147,8 +65616,8 @@
           sha256 = "0dxajh72wdcwdb9ydbcm19fmp0p1drmh1niq4r69jnbn8sah0zax";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/fa948128841a1cd3c5fd4c30da3841629b17d3c7/recipes/stripe-buffer";
-          sha256 = "02wkb9y6vykrn6a5nfnimaplj7ig8i8h6m2rvwv08f5ilbccj16a";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/stripe-buffer";
+          sha256 = "1kjib1kf9xqdirryr16wlvc95701hq8s4h8hz4dqzg3wzyb8287b";
           name = "stripe-buffer";
         };
         packageRequires = [ cl-lib ];
@@ -65162,13 +65631,13 @@
         pname = "stumpwm-mode";
         version = "20140130.1816";
         src = fetchgit {
-          url = "git://git.savannah.nongnu.org/stumpwm.git";
+          url = "https://git.savannah.nongnu.org/git/stumpwm.git";
           rev = "61a7cf27e49e0779a53c018b2342f5f1c5cc70b4";
           sha256 = "03is0690p7aw77c30j4r2b5gi5rv5f70wvpixy5qhcchlaxhaw82";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3a1e6358c529e3b9e51bcfa6e2e294acbf662882/recipes/stumpwm-mode";
-          sha256 = "0a77mh7h7033adfbwg2fbx84789962par43q31s9msjlqw15gs86";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/stumpwm-mode";
+          sha256 = "11yk7xmmccgv7hin5qd1ibcsm1za01xfwsxa25q7vqwk6svnb0sf";
           name = "stumpwm-mode";
         };
         packageRequires = [];
@@ -65208,8 +65677,8 @@
           sha256 = "0cx9llbmfjhaxb60mj483ihl78xb30ldvhd1hdldmc9d473xbvmz";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/63af0555576b0430f46d7383d7ea56e1789f43e9/recipes/stylefmt";
-          sha256 = "17jj8n8x4ib51a6jdsywcssi6cvxmql9sk7f5clmbi94qxlh48lr";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/stylefmt";
+          sha256 = "14ap3xklmxyqz61p7z3fwgxbwjqrcbijcmvsmhfbm102x1spgbhz";
           name = "stylefmt";
         };
         packageRequires = [];
@@ -65284,12 +65753,12 @@
     subemacs = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "subemacs";
-        version = "20160105.359";
+        version = "20170401.234";
         src = fetchFromGitHub {
           owner = "kbauer";
           repo = "subemacs";
-          rev = "d693919991de6b93f0797daae2a12285e54ae27e";
-          sha256 = "10pirwc7g9vii5cyk4vg6m5g5hlap0yg9w4qy257744c67jmaxvg";
+          rev = "18d53939fec8968c08dfc5aff7240ca07efb1aac";
+          sha256 = "1k2lg7cxr98rq77sk0ypzlr3cyl20ld20jz8y21fdaa6ci8kdvdb";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/18714a6b5ca4dcc51fa509fee1dc9afb0595c707/recipes/subemacs";
@@ -65352,8 +65821,8 @@
           sha256 = "191yqzkvvfnx8hx19ak20dvm9qjcm5r5yqcmnzw6nsc53m2pdwbx";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/400c7aede8fee84660b5010eacb93536f1c0b0a4/recipes/subr+";
-          sha256 = "1vrv64768f7rk58mqr4pq1fjyi5n5kfqk90hzrwbvblkkrmilmfs";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/subr+";
+          sha256 = "17i5sgsv8clh3pzpkv5zvhmm584m1rvsypd6nh6ks2jpidwgs8x1";
           name = "subr-plus";
         };
         packageRequires = [];
@@ -65373,8 +65842,8 @@
           sha256 = "09izm28jrzfaj469v6yd1xgjgvy6pmxarcy0rzn2ihn3c0z7mdg4";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/bb904557529c5d9658039a10456812810541bfed/recipes/subshell-proc";
-          sha256 = "1fnp49yhnhsj7paj0b25vr6r03hr5kpgcrci439ffpbd2c85fkw2";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/subshell-proc";
+          sha256 = "1ma5i4ka48w46ksxyppjnyq2ka03b2ylsmw3jv1hp35f3ycqpbqp";
           name = "subshell-proc";
         };
         packageRequires = [];
@@ -65474,8 +65943,8 @@
         src = fetchFromGitHub {
           owner = "Wilfred";
           repo = "suggest.el";
-          rev = "d23e9e86c413561177f7f0704056627ee3c0eb15";
-          sha256 = "0p02sjrhlcjbprw4s2gy8rccgm0k9ds4haj6hmg48gsbahxiz59v";
+          rev = "2f8e52d9d34535899292799778fc1242342b64d9";
+          sha256 = "18vpr0k3pd4cvmxaxhvl8abz78fpni8vk3mws89grjbb3fc4b17i";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b9fd27e812549587dc2ec26bb58974177ff263ff/recipes/suggest";
@@ -65842,12 +66311,12 @@
     swiper = callPackage ({ emacs, fetchFromGitHub, fetchurl, ivy, lib, melpaBuild }:
     melpaBuild {
         pname = "swiper";
-        version = "20170328.737";
+        version = "20170410.24";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "swiper";
-          rev = "3fbeaa563916c0e23c6cafa82716e9f2eba44073";
-          sha256 = "14z8f0lx5s63dy7h0x5m6lkhpfbmlq0p64g2r6y3dhswb8zn1pjl";
+          rev = "a3abf3ffd670776da591ae9e5e2d7011b6d6a190";
+          sha256 = "1jn7lry6fdnv9m24m4i5fgvz0qywcx3r08a36l2y1ksb125vank8";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e64cad81615ef3ec34fab1f438b0c55134833c97/recipes/swiper";
@@ -65934,8 +66403,8 @@
           sha256 = "10ka6f86n07xlf0z7w35db0mzp2zk4xhr6jd19kjdrn2j0ynlcw5";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3a0a1f6e4ce4b06d4282f1cbb33d45f507a12c30/recipes/swoop";
-          sha256 = "0r265rwfbl1iyclnspxpbzf2w1q0w8dnc0wv5mz5g6hhcrr0iv6g";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/swoop";
+          sha256 = "0zcxasc0bpldvlp6032f9v1s4vm9r76pzd7sjgwa9dxbajw5h7fs";
           name = "swoop";
         };
         packageRequires = [ async emacs ht pcre2el ];
@@ -65986,6 +66455,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    symbol-overlay = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "symbol-overlay";
+        version = "20170417.116";
+        src = fetchFromGitHub {
+          owner = "wolray";
+          repo = "symbol-overlay";
+          rev = "3fd1607725ac8163b38f9f60142af7764afbd1e1";
+          sha256 = "02pq1gnmg87brdbhzjvb0dx4mm0m28rrnf07p11d0k9hscpg6ln4";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/c2a468ebe1a3e5a35ef40c59a62befbf8960bd7b/recipes/symbol-overlay";
+          sha256 = "1al60x2mnjsv99jd10v5sd56zz185wsddiq7128phf1l35bkibis";
+          name = "symbol-overlay";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/symbol-overlay";
+          license = lib.licenses.free;
+        };
+      }) {};
     symon = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "symon";
@@ -66099,8 +66589,8 @@
           sha256 = "0456mmp3niljpghqcngknqkrxmpkba3n95ab4pf0b0021z2zjyxk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/fd538439982dd7bd281bf78e96373b93f4d4a6b8/recipes/synonyms";
-          sha256 = "0rnq97jpr047gpkxhw22jj3gw09r45vn6fwkzxnxjzcmsyk492d0";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/synonyms";
+          sha256 = "1b000scgba310i7w27c8wj0iflqqgwik524ql084wpqvikwqnlzm";
           name = "synonyms";
         };
         packageRequires = [];
@@ -66538,8 +67028,8 @@
           sha256 = "025dca4yqpai45s74nk41y075v8pv59fdna11c0qqz3ihyrdhbrq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b069fa60d3bbf41168b938f71f4903e313b2c6ac/recipes/tango-plus-theme";
-          sha256 = "1bx9qcwvybgd0rg8a9rag8xvb5ljrwfnm5nvq793ncvbdvq6vrh5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/tango-plus-theme";
+          sha256 = "1p1b48fvmk7a8m3bnddkx2pp7kz5agac0v1ii2r6iqapdqsl22ng";
           name = "tango-plus-theme";
         };
         packageRequires = [];
@@ -66572,12 +67062,12 @@
     tao-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "tao-theme";
-        version = "20170327.1017";
+        version = "20170412.1916";
         src = fetchFromGitHub {
           owner = "11111000000";
           repo = "tao-theme-emacs";
-          rev = "0b89755a5d985c27378795ec017c00b8bdd78f55";
-          sha256 = "04v6lb4mz802g72565ar8h2vx4fxfvs5y8hkiimr7r04y3b73d5p";
+          rev = "2ca07996e91636314aaf921edcba8191c03aabec";
+          sha256 = "1ljif6cpygphl5y3cra9kxq0yahv445hsi388q4zp0qgq8pqslpx";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/94b70f11655944080507744fd06464607727ecef/recipes/tao-theme";
@@ -67010,6 +67500,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    terminal-here = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "terminal-here";
+        version = "20170413.521";
+        src = fetchFromGitHub {
+          owner = "davidshepherd7";
+          repo = "terminal-here";
+          rev = "722213c91d1cd123649629908d7c872b28c49490";
+          sha256 = "1511ja1184231py38gi64a4xcxpsp98fh60m63j62kav9wlzbkkr";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f8df6f7e23476eb52e7fdfbf9de277d3b44db978/recipes/terminal-here";
+          sha256 = "1w64r3y88lspxxcqcqfwhakk8p9vl7q3z610dykfbqwqx61a6adj";
+          name = "terminal-here";
+        };
+        packageRequires = [ cl-lib emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/terminal-here";
+          license = lib.licenses.free;
+        };
+      }) {};
     tern = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, json ? null, lib, melpaBuild }:
     melpaBuild {
         pname = "tern";
@@ -67312,8 +67823,8 @@
           sha256 = "16byw8ix7bjh5ldr8rymisq2bhc5sh7db6rhpf0x28yd6mmzn73v";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/800aa22df0142a7e39b2d2c3c01321f880878655/recipes/tfs";
-          sha256 = "10szb9mni37s2blvhl1spj96narmkrv8zhrryw9q1251z8laq5v0";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/tfs";
+          sha256 = "0h38qd1xhfd0my26i6w5j1jr91r5qal8x4bp7ij1cym72yxspna6";
           name = "tfs";
         };
         packageRequires = [];
@@ -67346,16 +67857,16 @@
     theme-looper = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "theme-looper";
-        version = "20160924.2205";
+        version = "20170330.1829";
         src = fetchFromGitHub {
           owner = "myTerminal";
           repo = "theme-looper";
-          rev = "66788db264b3d94f25a077f9a6cecfa1c8ad2c96";
-          sha256 = "1wckby9q7c6xdq0kv0x0fdjr9gplj4an5s3kx78dqrxcjj12a35d";
+          rev = "4c07f6f6e1c733d274e26ed8eb03cc5bb6e9149a";
+          sha256 = "0nq298fclba9k1bdg9yhhnfsxw1dnvs96m6wdl5wnv21087zj77j";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/861c3b96189233956b15f222702ff034ed2d8cd1/recipes/theme-looper";
-          sha256 = "02hz9k4ybpp4i8ik2av9rg240sjgicbf6w24zn67dmw4nc4lp9c5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/theme-looper";
+          sha256 = "018bixcbzri3zsasy1pp2qfvgd679ylpi9gq26qv9iwlfhlrpwgf";
           name = "theme-looper";
         };
         packageRequires = [ cl-lib ];
@@ -67393,8 +67904,8 @@
           sha256 = "0zcyasdzb7dvmld8418cy2mg8mpdx01bv44cm0sp5950scrypsaq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/9734291106ca0bcf018175af8051fe9d2b1cbfa9/recipes/thesaurus";
-          sha256 = "1nyjk9jr1xvdkil13ylfsgg7q2sx71za05gi8m2v5f45pbmbi50h";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/thesaurus";
+          sha256 = "1cnna27dlragk4w3f59xbrwppp49r010qdn7n3n7wvhibv3cfyd7";
           name = "thesaurus";
         };
         packageRequires = [];
@@ -67406,10 +67917,10 @@
     thing-cmds = callPackage ({ fetchurl, hide-comnt, lib, melpaBuild }:
     melpaBuild {
         pname = "thing-cmds";
-        version = "20170307.1538";
+        version = "20170331.1338";
         src = fetchurl {
           url = "https://www.emacswiki.org/emacs/download/thing-cmds.el";
-          sha256 = "16bfjak7953mhmn7abd3pq8cqh8njir5x5x7acqs8zmd9n9qpni6";
+          sha256 = "0zi7hbdb5w0lry09rdsxmb0kqnfp6s72kn0z5npfhvwalkcpywbq";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/thing-cmds";
@@ -67531,8 +68042,8 @@
         src = fetchFromGitHub {
           owner = "apache";
           repo = "thrift";
-          rev = "7470995ce4bb480a86beaf1d8babce95c6f4b8c7";
-          sha256 = "0srq5qcmnfplr30yxh6l4szl4vjfj41dwm615zq0mfjakxd3pbm1";
+          rev = "2d65c2365f19f637bc732222e71d78727bf0b709";
+          sha256 = "0g347bhy6hppkl4769ahfyw2cbl0dqhv889c0xf8wbzfbsn9kaz5";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/857ab7e3a5c290265d88ebacb9685b3faee586e5/recipes/thrift";
@@ -67588,12 +68099,12 @@
     tide = callPackage ({ cl-lib ? null, dash, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, typescript-mode }:
     melpaBuild {
         pname = "tide";
-        version = "20170325.602";
+        version = "20170412.541";
         src = fetchFromGitHub {
           owner = "ananthakumaran";
           repo = "tide";
-          rev = "a38e71fd07fceaa069d701cb6a3637dfd53c9f23";
-          sha256 = "01fg82i1a5ck6f5qj2nrz2hzl46hcsaxk13chbb71r99r80xm9lm";
+          rev = "9b6599246679d7d09c97b44d3d4375d4e895f061";
+          sha256 = "0j5n9wn596ayqyzymr0p20mx8cxp5pzz6362nicr13s0rn7bz4rv";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a21e063011ebbb03ac70bdcf0a379f9e383bdfab/recipes/tide";
@@ -67732,12 +68243,12 @@
     timonier = callPackage ({ all-the-icons, dash, emacs, f, fetchFromGitHub, fetchurl, hydra, lib, melpaBuild, pkg-info, request, s }:
     melpaBuild {
         pname = "timonier";
-        version = "20170328.116";
+        version = "20170411.100";
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "timonier";
-          rev = "f5d42f0a234b906f72da759240b9fc2067de1e80";
-          sha256 = "1dl99zwcps8n22pf60mp47r8px98a9ihyf95j1y6dfivnzm7kjy2";
+          rev = "0a150ea87bf695b43cf1740dfd7e553e0ae7601c";
+          sha256 = "18yls8zc8d5nhx8j3l5av5xvmxmjrrmbzzab59kc6zib0isgxlcz";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a31b0c177fd83bdeb1842a6ec3095de143bb4eae/recipes/timonier";
@@ -67888,12 +68399,12 @@
     tldr = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "tldr";
-        version = "20160807.2022";
+        version = "20170401.2140";
         src = fetchFromGitHub {
           owner = "kuanyui";
           repo = "tldr.el";
-          rev = "b2b154b0cbe495f25de1bd9bccc76666ef209342";
-          sha256 = "1bdd31aravm01ahy3ksgfdm65rknzj2v5a69vnag36ap7lj4ax49";
+          rev = "05da2ac1d82f9918b493e0895e98cd59666d3e28";
+          sha256 = "14ni301cn6s793157k1fkz65ab1xgh94n3g12hcj1xnmbdvnlymy";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/45af2c5d1a36fcbf739812594c5cc878bf319a26/recipes/tldr";
@@ -67930,12 +68441,12 @@
     toc-org = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "toc-org";
-        version = "20170324.103";
+        version = "20170404.15";
         src = fetchFromGitHub {
           owner = "snosov1";
           repo = "toc-org";
-          rev = "f0b94e07bb4b32db039088a58578bced29256431";
-          sha256 = "1dbi8kzr5nnb3sclafniq2sipwyran8h1vsqdy1wqd1a5306538h";
+          rev = "d30b57f16d158fa859b0626f5350520f3ee86f44";
+          sha256 = "0q0wshcxn60c87lml2fxrhikrj7zay48ijrwj334yzwp26dvm422";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1305d88eca984a66039444da1ea64f29f1950206/recipes/toc-org";
@@ -67977,8 +68488,8 @@
           sha256 = "08fd5lk1gq9clxhz5i81qm5f0a20yrx49iy13bx1p59gj20f1z41";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f934da448463e672de3c87b2ee514a370f67107d/recipes/todotxt";
-          sha256 = "13jcbkasvcczf7qnrh89ncqp6az6hm1s0ycrv7msva145n5bk1kr";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/todotxt";
+          sha256 = "1ravnkj6y2p027yhba2lan10079xzd2q7l8gyb8n6bwq14jif127";
           name = "todotxt";
         };
         packageRequires = [];
@@ -68282,8 +68793,8 @@
         src = fetchFromGitHub {
           owner = "chmouel";
           repo = "tox.el";
-          rev = "27a074b21238855ce3c33d22e42d69e2c2921205";
-          sha256 = "1m3f0i6vrkrncd7xsgz65m6595iv6yr4gbbzlis8p01kd98wbxfk";
+          rev = "7655eb254038d5e34433e8a9d66b3ffc9c72e40c";
+          sha256 = "1212b7s00kw9hk5gc2jx88hqd825rvkz1ss7phnxkrz833l062ki";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/08a7433e16f2a9a2c04168600a9c99bc21c68ddf/recipes/tox";
@@ -68316,6 +68827,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    tql-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "tql-mode";
+        version = "20170402.1846";
+        src = fetchFromGitHub {
+          owner = "tiros-dev";
+          repo = "tql-mode";
+          rev = "2c4827652b4b9b640f3c55e27e1b1856ec9e2018";
+          sha256 = "08vsg5y2bg9gxzfcm630vv95d9kwzxqhzz5dzbbi3g71nlgcclk2";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6a7c3dec5d970a4e819c0166a4b9846d74484b08/recipes/tql-mode";
+          sha256 = "0nrycix119vail6vk1kgqsli4l4cw8x49grc368n53w0xwngh0ns";
+          name = "tql-mode";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/tql-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     traad = callPackage ({ deferred, fetchFromGitHub, fetchurl, lib, melpaBuild, popup, request, request-deferred, virtualenvwrapper }:
     melpaBuild {
         pname = "traad";
@@ -68469,16 +69001,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    transpose-frame = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    transpose-frame = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "transpose-frame";
         version = "20151126.626";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/transpose-frame.el";
-          sha256 = "1f67yksgw9s6j0033hmqzaxx2a93jm11sd5ys7cc3li5gfh680m4";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "transpose-frame";
+          rev = "011f420c3496b69fc22d789f64cb8091834feba7";
+          sha256 = "1nhbinwv1ld13c0b0lxlvfm9s6bvxcz2vgfccqg45ncg9rx70rsw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7682372c9075e19fcef2a2462c30010ee324cd14/recipes/transpose-frame";
-          sha256 = "0bqip7vckic3kfq3d31ifs1zics1djxwj2jadafj6f1agv02sdz5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/transpose-frame";
+          sha256 = "1ksdc4d9k05452hcq4xx0j5nfl9n01z8abbca6j7j66bdf3m4l1b";
           name = "transpose-frame";
         };
         packageRequires = [];
@@ -68515,8 +69050,8 @@
         src = fetchFromGitHub {
           owner = "nlamirault";
           repo = "emacs-travis";
-          rev = "c8769d3db10ed4604969049e3bd276afa0a0138e";
-          sha256 = "1jd7xsvs4m55fscp62a9lk59ip4sgifv4kazl55b7543nz1i31bz";
+          rev = "754ef07c17fed17ab03664ad11e2b0b2ef5e78ed";
+          sha256 = "1ciwf40ghlm4w9g4ynbc3d1a93gf6f3imm3m8z9kqfa7cnlsypb6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c064a0dc7922cbe4cff2ae65665c4f10e6dbff27/recipes/travis";
@@ -68529,16 +69064,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    tree-mode = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    tree-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "tree-mode";
         version = "20151104.531";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/tree-mode.el";
-          sha256 = "0hffnzvzbvmzf23z9z7n7y53l5i7kza9hgfl39qqcnw4njg48llx";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "tree-mode";
+          rev = "b06078826d5875d74b0e7b7ac47b0d0917610534";
+          sha256 = "13bbdhdmqg4x9yghanhr8fsbsxbnypzxdxgicz31sjjm675kpnix";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/dc67872b6463bebbf06ef9a44521ab2a029fa359/recipes/tree-mode";
-          sha256 = "0xwyhlc5lagj46nd70l81rvb43hs08pic96grk62zknig8354c24";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/84f836338818946a6bb31d35d6ae959571128ed5/recipes/tree-mode";
+          sha256 = "1b15xgh96j4qas1kh4ghczcn7hb1ri86wnjgn9wz2d6bw3c6077b";
           name = "tree-mode";
         };
         packageRequires = [];
@@ -68787,8 +69325,8 @@
           sha256 = "1g7y7czan7mcs5lwc5r6cllgksrj3b9lpn1bj7khwkd1ll391jc2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5561a3284d861048251dc58182c95d16367e4744/recipes/tumblesocks";
-          sha256 = "11ky69icsnxwsinv2j3f4c0764wm6i9g9mlvwsdrd6w1lchq1dg9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/tumblesocks";
+          sha256 = "005w7vfzi4qpm59pxhq9nhp8hlwh4m1i7zj6l4knizcwm5xrm4ab";
           name = "tumblesocks";
         };
         packageRequires = [ htmlize markdown-mode oauth ];
@@ -68892,8 +69430,8 @@
           sha256 = "0g6qqfgbg507r8lgq99zj2b5n3r9m23hpx19m36c3i55mh94dl2h";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4dfafdd43a22320c619f481e2bbe162459b48990/recipes/twilight-anti-bright-theme";
-          sha256 = "1qfybk5akaxdahmjffqaw712v8d7kk4jqkj3hzp96kys2zv1r6f9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/twilight-anti-bright-theme";
+          sha256 = "1wfj570l5k0ygqi9dwjskc78rpnxw6080bkw1zd1a8kl3fa28n2k";
           name = "twilight-anti-bright-theme";
         };
         packageRequires = [];
@@ -68913,8 +69451,8 @@
           sha256 = "1awqc4rvg8693myynb1d4y4dfdaxkd5blnixxs3mdv81l07zyn8c";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/03c59c8fcf706fcdb34762e74ad1449540c357e2/recipes/twilight-bright-theme";
-          sha256 = "074cqs55gwy5jlaay3m9bpdpdfb45nmlijvapz96nibl64pyk83d";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/twilight-bright-theme";
+          sha256 = "039mg147cvb0pk59q3c1bpx7562bajgrs74xymylr89hvrxivxqh";
           name = "twilight-bright-theme";
         };
         packageRequires = [];
@@ -68934,8 +69472,8 @@
           sha256 = "0d7vd1h0rwwgrh7f9kmdgy2ni0p20da9c8ylwlg33nsb26345wfs";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/40e5497d05a7c83dc659cd1213dc9e8ea5d90f65/recipes/twilight-theme";
-          sha256 = "1wkca66q4k94h9njsy15n83wjzn90rcbmv44x0hdwqj92yxjf3y7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/twilight-theme";
+          sha256 = "0g9bbb6m7q8x4zcw5gfmg7ljsfdmjh0335sq53b0lva0h3ra6kzx";
           name = "twilight-theme";
         };
         packageRequires = [];
@@ -69078,8 +69616,8 @@
           sha256 = "0bn1bvs334wb64bli9h613zf1vzjyi0pz8bgyq1wy12qmbwwmfwk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8cf02f5c8cb29265e9c83be9c959b8a9012a369d/recipes/typo";
-          sha256 = "07hmqrnbxbrhcbxdls8i4786lkqmfr3hv6va41xih1lxj0mk60bx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/typo";
+          sha256 = "1p8is1n525lmzq588hj6vazmhl9wi6rairnfx1g1p6g6ijdycd4h";
           name = "typo";
         };
         packageRequires = [];
@@ -69193,12 +69731,12 @@
     ujelly-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "ujelly-theme";
-        version = "20170321.1016";
+        version = "20170413.358";
         src = fetchFromGitHub {
           owner = "marktran";
           repo = "color-theme-ujelly";
-          rev = "2db6f0ab6054e9d6893d65bb239cdae5c2decf5f";
-          sha256 = "10m4bic1n8vmz1gr81cpr1cwyamyvp6iw3wdc0vwfma2fskd1pq2";
+          rev = "304f9470fc3b4fa29e0e9a030c5a10363c55a729";
+          sha256 = "0igw5p2idf5c07qzhc0m2i2mhn3yhvjy3yrk4dbw1vbzx1b1afdh";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/ujelly-theme";
@@ -69386,8 +69924,8 @@
           sha256 = "015gjf8chd6h9azhyarmskk41cm0cmg981jif7q81hakl9av6rhh";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5847a8ec892a1d00627a90a509bdde5a8a558df3/recipes/unicode-emoticons";
-          sha256 = "15s6qjhrrqrhm87vmvd6akdclzba19613im85kfkhc24p6nxyhbn";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/unicode-emoticons";
+          sha256 = "0sp4sb2yw9msyqxgp4q5z9pzfvqwhizd1sx8w63g1vis6n2h254r";
           name = "unicode-emoticons";
         };
         packageRequires = [];
@@ -69701,22 +70239,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    uptimes = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    uptimes = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "uptimes";
-        version = "20170326.515";
+        version = "20170402.143";
         src = fetchFromGitHub {
           owner = "davep";
           repo = "uptimes.el";
-          rev = "5e321692bf5ccdc286f4831fa8fe55467c1c56aa";
-          sha256 = "04n4bryfid6scma43whw156wcza77ij7szgc5f73d98j9fji6lay";
+          rev = "2be31db3508513478d3f27f4eff2ff1094786b4e";
+          sha256 = "177d1h84w9rr6x3hsq9z7sbr8s8pippgy0l99gpdhycbff6a7cwg";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/72099e35ce3e34ec6afc6a3f87a4da07ec91499a/recipes/uptimes";
           sha256 = "0r8s5c2hdcb1ly7rnhzar4qzf1c9d49gd914ndnc3mg9yb9gyy5h";
           name = "uptimes";
         };
-        packageRequires = [ cl-lib ];
+        packageRequires = [ cl-lib emacs ];
         meta = {
           homepage = "https://melpa.org/#/uptimes";
           license = lib.licenses.free;
@@ -69733,8 +70271,8 @@
           sha256 = "179hi6hsp2naczlcym3qxx9wbqx96bkkzvqygf3iffa0rmik4j7h";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ac2d564ebebda3c7c5b5da278355dd242199427a/recipes/url-shortener";
-          sha256 = "12r01dyk55bs01jk0ab9f24lfvm63h8kvix223pii5y9890dr6ys";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/url-shortener";
+          sha256 = "08zsirsndhr8xny2vkzznkvjs0b6490lzd915ws6crdwxp6mx5si";
           name = "url-shortener";
         };
         packageRequires = [];
@@ -69785,12 +70323,12 @@
     use-package = callPackage ({ bind-key, diminish, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "use-package";
-        version = "20170327.1449";
+        version = "20170405.1028";
         src = fetchFromGitHub {
           owner = "jwiegley";
           repo = "use-package";
-          rev = "a354568ec2af8444b741f595a3a7183e3f67ad58";
-          sha256 = "19aaqcaycq1msfgvvnlqkzqqijbzqzc015k69pbg41l5bvrwnqcq";
+          rev = "0139f85595a10b9e50e38f3d8d59f70cf4f3a2a2";
+          sha256 = "1zv2an1mzks51j46j2gvizjmh7k5frzw7qja9kh9lvighl2qrg2v";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3f9b52790e2a0bd579c24004873df5384e2ba549/recipes/use-package";
@@ -69831,8 +70369,8 @@
         src = fetchFromGitHub {
           owner = "diml";
           repo = "utop";
-          rev = "d6f6a9465a26fc78ff72a3c234f118256ab24309";
-          sha256 = "1nswnzmr43b4x1kcai0ygy5v3nyc3713209x3pwq30hs7jk3swb0";
+          rev = "a9696b7ea30ffe709fb11f865570595103516e91";
+          sha256 = "0wnhfhdac3qfcrim5q4cp2i2k3ich5hkkljinsbmg14qncqxcmrx";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/30489fe52b4031184e54f994770aa3291257bc9d/recipes/utop";
@@ -69856,8 +70394,8 @@
           sha256 = "0r74gw8gcbrr62rvj4anz0c3n6kwi1xpb42d3pkzlh4igblhi5zj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a717d05d3158658c8e57670ee630a9cc16a4aea0/recipes/uuid";
-          sha256 = "13xjnawir9i83j2abxxkl12gz3wapgbk56cps3qyfgql02bfk2rw";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/uuid";
+          sha256 = "0d69z9686gnd1bb17wa44v1rbbgccacn4kicwf9niwwp05nccfw6";
           name = "uuid";
         };
         packageRequires = [];
@@ -70076,22 +70614,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    vc-darcs = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    vc-darcs = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "vc-darcs";
-        version = "20151225.1228";
+        version = "20170409.623";
         src = fetchFromGitHub {
           owner = "velkyel";
           repo = "vc-darcs";
-          rev = "f9b4cd89ed7eff91009ce27d9e1d2fb555a5efff";
-          sha256 = "1zpvinbc3nrnjm931fgzrlkl31xcsg9ikh041s1fkfjkhfq0h82h";
+          rev = "9c5cbf6fd9b624a31e918dd1a516b24d8b7ffe9d";
+          sha256 = "0g26hyjblxldqr5hhijqaclmk1p6a1kc5yh3hkflw6y7lgcrqxkx";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/54f89c50ae45365e86bdadcf67b2411c0f4c5603/recipes/vc-darcs";
           sha256 = "1xskl9wjxkbdpi0fm769ymbvya70vssi944x5252w2d3layibm6m";
           name = "vc-darcs";
         };
-        packageRequires = [];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://melpa.org/#/vc-darcs";
           license = lib.licenses.free;
@@ -70507,8 +71045,8 @@
           sha256 = "02yhagnrq0zl19w7fh559fs6vm6b383k1r27alvixjfcm18p0fpg";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/81521d8020d55d75014302b1e5cf0d7126a34bc6/recipes/vimrc-mode";
-          sha256 = "06hisgsn0czvzbq8m4dz86h4q75j54a0gxkg5shnr8s654d450bp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/vimrc-mode";
+          sha256 = "05zmr624qwsj9wqsmjlhjvjl1fc1qxz4vvbb3ljr5fbpxdjrbnpn";
           name = "vimrc-mode";
         };
         packageRequires = [];
@@ -70688,12 +71226,12 @@
     vlf = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "vlf";
-        version = "20161030.840";
+        version = "20170330.1613";
         src = fetchFromGitHub {
           owner = "m00natic";
           repo = "vlfi";
-          rev = "a8ba8363b20d13fdb474faae0ea8d4178c350ca0";
-          sha256 = "02xqfrv45d0d36jn6nvzmy6pc9dy7mban2dvljxspgpidqlwj8p8";
+          rev = "eaa362922734a6fc0b1228a040be267faec07d3c";
+          sha256 = "1s2yqknwg02nnsy7b1lr2si4mj8sz3wkm0criqwnbhh380k5sypr";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9116b11eb513dd9e1dc9542d274dd60f183b24c4/recipes/vlf";
@@ -70735,8 +71273,8 @@
           sha256 = "0gpamwnsszhna9crhbg2zcvr9hrq7lackhgclq63lsvcm0z2ynfz";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a305ed69dbad1a5f456acd1aad2fb9409d6d1fd6/recipes/vmd-mode";
-          sha256 = "1hd4bqgmrrznixmig5p9c3rl09r8z5d1jmmia2001i0r59wi61wb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/vmd-mode";
+          sha256 = "1xjyl2xh3vig2rzjqm1a4h2ridygbanmal78s4yc32hacy0lfyrx";
           name = "vmd-mode";
         };
         packageRequires = [ emacs ];
@@ -70832,12 +71370,12 @@
     vue-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, mmm-mode, ssass-mode, vue-html-mode }:
     melpaBuild {
         pname = "vue-mode";
-        version = "20170329.612";
+        version = "20170403.2159";
         src = fetchFromGitHub {
           owner = "CodeFalling";
           repo = "vue-mode";
-          rev = "cbd1e35375309f0c813b5689a765c483caef6d60";
-          sha256 = "1lpac1bkgjnkhhglynpwfz4vr3g90m8124ii43yd5n06vpx21c3d";
+          rev = "95ca5d13f55b7863fe187865c8c4f6e378af11a1";
+          sha256 = "18dxqfkgg2ii6ys6vsi2y7jx26rk3pwh1z3wnqpw225x2jzfz7rv";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2e5e0a9fff332aeec09f6d3d758e2b67dfdf8397/recipes/vue-mode";
@@ -70850,16 +71388,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    w32-browser = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    w32-browser = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "w32-browser";
-        version = "20170308.1518";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/w32-browser.el";
-          sha256 = "0pp3fl2r5g32qv8ysiwnznpc5na7cqh3vp5mq59yfhv5p6myayxj";
+        version = "20170101.1154";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "w32-browser";
+          rev = "e5c60eafd8f8d3546a0fa295ad5af2414d36b4e6";
+          sha256 = "18hcr9l5id2xdin20wrg9sdmwfad7qk78iryyg24ci9lvl53m02x";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/w32-browser";
-          sha256 = "14vc2cipwlwwc0b5ld4x0zvydkg8nbjmp0z2x6ca0nmxw8sfsnc6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/w32-browser";
+          sha256 = "16sp0gn4yv7iaa55i2kvfsqw3610gr3x31l9lqa14r9xmfhda1rn";
           name = "w32-browser";
         };
         packageRequires = [];
@@ -70927,6 +71468,26 @@
           license = lib.licenses.free;
         };
       }) {};
+    waf-mode = callPackage ({ fetchgit, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "waf-mode";
+        version = "20170403.1240";
+        src = fetchgit {
+          url = "https://bitbucket.org/dvalchuk/waf-mode";
+          rev = "20c75eabd1d54fbce8e0dbef785c9fb68577ee4f";
+          sha256 = "09jqxbkkprsrcj7gj9hi8ll7d17425lyjmdmqf12ffqv5pz6aq87";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/44c1aa152ba47113a91878df78d9b56eead98744/recipes/waf-mode";
+          sha256 = "16rplrs599a67dcxcdc33zb9bqivv4a2mvrshvyip1lp75f36r5h";
+          name = "waf-mode";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/waf-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     waher-theme = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "waher-theme";
@@ -70972,12 +71533,12 @@
     wand = callPackage ({ dash, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
     melpaBuild {
         pname = "wand";
-        version = "20170116.223";
+        version = "20170412.1315";
         src = fetchFromGitHub {
           owner = "cmpitg";
           repo = "wand";
-          rev = "08c9511cd0f07ba65ef5a07ad93851549391333f";
-          sha256 = "16zd914kwnnhp6zc81z9acq69prrgiwi25ggbpn4lcx7xm8h5hv3";
+          rev = "3674f2edaa6ac30c314a885b229204f978ddce14";
+          sha256 = "1yylw7yn9k8li283d5r4x9i38wfdx24jmlzdivvffn0jkhjj6i4k";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/38be840bbb32094b753ec169b717a70817006655/recipes/wand";
@@ -71064,8 +71625,8 @@
           sha256 = "0i84ndnxma8s07kf5ixqyhv5f89mzc4iymgazj5inmxhvbc7s7r2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/577ff702b17f93e0db383a92e9bb3221e08de31c/recipes/watch-buffer";
-          sha256 = "18sxgihmqmkrbgs66qgnrsjqbp90l93531hns31fbnif10bkx2j5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/watch-buffer";
+          sha256 = "05f58kg05kfl4srwwjaf7w9jml50yx6bn4x8m1npswp882dsjyh9";
           name = "watch-buffer";
         };
         packageRequires = [];
@@ -71190,8 +71751,8 @@
           sha256 = "03xcadplw1hg5hxw6bfrhw5xkkxk3i4105f114c6m3d2525jq4y5";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/32b7ca528c0038909cee4271eb40bd92d97bfb56/recipes/web";
-          sha256 = "0ynnmqw0vsf7wyhp9m5a05dfb19vkj8dnj5glhjdzjvg30dhjp3a";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/web";
+          sha256 = "141idn49b7x7llz249zbg2yq8snjxpmlpchsd3n1axlrbmx6pfpz";
           name = "web";
         };
         packageRequires = [ dash s ];
@@ -71245,12 +71806,12 @@
     web-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "web-mode";
-        version = "20170320.1240";
+        version = "20170410.1335";
         src = fetchFromGitHub {
           owner = "fxbois";
           repo = "web-mode";
-          rev = "4d16489eb14e47f3d63b4bdd4d9f7177133a973c";
-          sha256 = "0xgij4ln7r8q56c79m729nayr66bzmlkfbmmy8pr33rca6m66hfr";
+          rev = "841f253e11e3c5880b357204190996c4ad98d9dc";
+          sha256 = "009s886spm45jjk7valdk3kjb4dchc60wzqlswgylbvcmx6b3mxn";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6f0565555eaa356141422c5175d6cca4e9eb5c00/recipes/web-mode";
@@ -71274,8 +71835,8 @@
           sha256 = "0aj1ibmnrbaxrkwjf1fac2qzazrj39pql3prcibnchc2bmp191aa";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2658e8a80455ad5ae1ceb69deddab89ebc6b6871/recipes/web-mode-edit-element";
-          sha256 = "09m2jzsb3zz1wr396jrhcwskfm1m0a4hvxlxhq5p1w5fzfcdb8md";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/web-mode-edit-element";
+          sha256 = "1kcycsjjv1bzfn93aq3cdh5d913izrr8cdxmknbyriyipsqryh3l";
           name = "web-mode-edit-element";
         };
         packageRequires = [ emacs web-mode ];
@@ -71284,6 +71845,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    web-narrow-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, web-mode }:
+    melpaBuild {
+        pname = "web-narrow-mode";
+        version = "20170406.1910";
+        src = fetchFromGitHub {
+          owner = "Qquanwei";
+          repo = "web-narrow-mode";
+          rev = "73bdcb7d0701abe65dab4fc295d944885e05ae33";
+          sha256 = "1wg54vyfbacmyh8lyd5fgh88lfby17v24l98jjgxscaqgms86bch";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/a910da9e0566344d4b195423b5f270cb2bdcc1e5/recipes/web-narrow-mode";
+          sha256 = "09k3xp4l235wrffl7a4026wpikxhp10fh3182dlp4pa4wr2vzipi";
+          name = "web-narrow-mode";
+        };
+        packageRequires = [ web-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/web-narrow-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     web-server = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "web-server";
@@ -71581,12 +72163,12 @@
     which-key = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "which-key";
-        version = "20170315.1055";
+        version = "20170407.605";
         src = fetchFromGitHub {
           owner = "justbur";
           repo = "emacs-which-key";
-          rev = "3c7ecc69d48258af66978a685aedcbc8d1ada512";
-          sha256 = "1q6v4bnw9sl6f138lxkqp979xpbgsb57gxj8a1k7clms16kkn5ci";
+          rev = "bb30f56868ae4888a8ac5a406c7c7ee2ff168f9b";
+          sha256 = "1v50qa611lqj0hjp8v6pnyqvnmljkd0p5g9aj517kv5d7b2rk1dj";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/315865a3df97c0694f648633d44b8b34df1ac76d/recipes/which-key";
@@ -71652,8 +72234,8 @@
           sha256 = "1yqfq1gzkrw79myvj16nfi30ynfyz8yrpbzjcj8nhsc5rfrrmym2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/621e32e54be9e1ac7936bf6f4b9d74e2dd27df6e/recipes/white-theme";
-          sha256 = "0nmxn35x6pngns1xqnsq8nm69f549c1gmvisd01in3qfvnpr0mic";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/white-theme";
+          sha256 = "04l5hjhd465w9clrqc4dr8bx8hj4i9dx4nfr9hympgv101bpgy4x";
           name = "white-theme";
         };
         packageRequires = [ emacs ];
@@ -71715,8 +72297,8 @@
           sha256 = "0ip0vkqb4dm88xqzgwc9yaxzf4sc4x006m6z73a3lbfmrncy2c1d";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/71addc88ce814ed4f413bcd8632402ac750009a1/recipes/whole-line-or-region";
-          sha256 = "1vs2i4cy1zc6nj660i9h36jbfgc3kvqivjnzlq5zwlxk5hcibqa1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/whole-line-or-region";
+          sha256 = "0zz9i1jxayw2p6ggfxjvhb1mc3ly9iy4jvk23ycndz9lnnzkch0y";
           name = "whole-line-or-region";
         };
         packageRequires = [];
@@ -71792,8 +72374,8 @@
         src = fetchFromGitHub {
           owner = "foretagsplatsen";
           repo = "emacs-js";
-          rev = "e66476fef5c5afe75f09e4fe94109423a99fc2c6";
-          sha256 = "1lvk8nh9gp3i98jjinqx17fxammxkfwh0dvzhah9ram73i6xq1yd";
+          rev = "77d18cf8fcd5a87139650a645d50e71db0ab5712";
+          sha256 = "0l6qr5dy6h7p5kdyyygrc4ss50sw7h6fi442dig6la8978jqsli8";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/78d7a15152f45a193384741fa00d0649c4bba91e/recipes/widgetjs";
@@ -71908,16 +72490,19 @@
           license = lib.licenses.free;
         };
       }) {};
-    windata = callPackage ({ fetchurl, lib, melpaBuild }: melpaBuild {
+    windata = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
         pname = "windata";
-        version = "20080412.755";
-        src = fetchurl {
-          url = "https://www.emacswiki.org/emacs/download/windata.el";
-          sha256 = "0dcbnqcqw7jzwwdn0rxxlixga1zw1x3a2zbpxvd90xp7zig4f0yz";
+        version = "20090830.340";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "windata";
+          rev = "a723fc446ceaec23d5f29ecc8245d94c99d91625";
+          sha256 = "0y8yw5hazsir5kjskrh4mr63mmz87dc7yy5ddmlwpmn03wanqpha";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8a813e89fc19130d9cdc68f16bba00a0a501427b/recipes/windata";
-          sha256 = "0xq51rdanq5as6kfyi97hsqmig5g35w7xv8c96bhzyflranw7jw5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/84f836338818946a6bb31d35d6ae959571128ed5/recipes/windata";
+          sha256 = "1mah2vy46pxwjd6c6ac14d2qfcixs2yrgwmzmisnfgsvprdlxryb";
           name = "windata";
         };
         packageRequires = [];
@@ -71979,8 +72564,8 @@
           sha256 = "0wgqi8r844lbx52fn6az8c1n8m681rp6dkfzd54wmdk1ka7zmvv6";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3b17efdf8b7306eadf37e331fc1d585b42f37b09/recipes/window-layout";
-          sha256 = "1n4a6z00lxsffirjrmbaaw432w798b9vv34qawgn1k17y9l7gb85";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/window-layout";
+          sha256 = "061mvxcj4mg2pmkln7nn6gyscs08aid4cfc6xck0x5gzr1snr639";
           name = "window-layout";
         };
         packageRequires = [];
@@ -72056,8 +72641,8 @@
         src = fetchFromGitHub {
           owner = "bmag";
           repo = "emacs-purpose";
-          rev = "3ccfb8dfbd5970d6b0d64142e586459f38f21d79";
-          sha256 = "0waf5imivhgzqp38rwhjqhy2y13dar7gqm52kbh71bvfwakgnkfd";
+          rev = "67ecaa2b52c113f92913c3beb9fb7f302bd50318";
+          sha256 = "0jvihc94iwrb2zxr1qg9yc5fypd1a028d2wfhvg68ipmngcf4q2g";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5813120ab674f6db7d0a486433d8faa6cfec1727/recipes/window-purpose";
@@ -72081,8 +72666,8 @@
           sha256 = "0hijf56ahbc5inn7n39nj96d948c4d05n9d5ci3g3vbl5hsyb121";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/37924b239c1e883103c0cdfd429ddb6c2d40d3d7/recipes/windsize";
-          sha256 = "1xhfw77168942rcn246qndii0hv0q6vkgzj67jg4mxh8n46m50m9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/windsize";
+          sha256 = "1fzqf86d7pimnc87xdgvpv4hnv7j6ngmk1sjvazj6726xygswkyv";
           name = "windsize";
         };
         packageRequires = [];
@@ -72160,8 +72745,8 @@
         version = "20160419.1232";
         src = fetchhg {
           url = "https://bitbucket.com/ArneBab/wisp";
-          rev = "c5c0bb98b281";
-          sha256 = "0gxvx2n6xza17qf1p4v0nbcqfkkhrmg9a56c5d126b4vgmg3bf9v";
+          rev = "626eaec86a97";
+          sha256 = "13hcp52krlb0vw3wxvw9mdcm7qxr80p2rs52zkkzrc73qvzxvwn3";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/wisp-mode";
@@ -72349,8 +72934,8 @@
         src = fetchFromGitHub {
           owner = "gromnitsky";
           repo = "wordnut";
-          rev = "3e0184a8a1cc118a985f1cbd0b6d5b7417987169";
-          sha256 = "1b9pya342ikyxnlyxp86wx8xk6zcdws7jsqs7a9xk027prwkfngj";
+          rev = "bcdb86f1f7ee91f721a427b19492ee9578ae74fc";
+          sha256 = "0p8nl5ccic8jx0dzy2976v5mkwb5sq4165qnhq4i26741qbalb62";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/321c5e171eb4da85980968ac3c8ef4300101c0b1/recipes/wordnut";
@@ -72563,8 +73148,8 @@
           sha256 = "0s4kfg2ga3qa6gb2ji1jv73fv66d9vn054cl0mif7n16kic4bkr4";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f1645a51d487c8902eb6e59fb1884f85f48cec6f/recipes/ws-butler";
-          sha256 = "072k67z2lx0ampwzdiszi64xs0w6frp4nbmrd2r0wpx0pd211vbn";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ws-butler";
+          sha256 = "1k5nhj37r51i0czrlafra53wir73p0nbq83jjccqmw4p4xk6axl3";
           name = "ws-butler";
         };
         packageRequires = [];
@@ -72765,12 +73350,12 @@
     xah-find = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "xah-find";
-        version = "20170124.1342";
+        version = "20170407.251";
         src = fetchFromGitHub {
           owner = "xahlee";
           repo = "xah-find";
-          rev = "0bd47dc9b570a1526cd3e387280280f20f6a5602";
-          sha256 = "1nl8xgkcvnpp4iwcxvvdr3fb6kz5zjxdvkk6ldnybrcypg0xndsg";
+          rev = "a83fd078b9b475edc5fd29e0c7d4f02f203e0390";
+          sha256 = "166f4yjz1s6bbjz4cw2n8hgv98ambhjy9qs7hkq9d7jjpcjgyzwr";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1d94ffd9c3380cd56770f253e43d566a95083e37/recipes/xah-find";
@@ -72786,12 +73371,12 @@
     xah-fly-keys = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "xah-fly-keys";
-        version = "20170317.2237";
+        version = "20170415.740";
         src = fetchFromGitHub {
           owner = "xahlee";
           repo = "xah-fly-keys";
-          rev = "4d61f0b6d9209c17e6834aaced28cd7d8aabaad1";
-          sha256 = "1i1f30yy6hzhlpsn2836zk2cv6rbcvapwzp310l28ngr4wd6k4x7";
+          rev = "96f697741eb4dc48afa1ab45f33cb21695c4fbb5";
+          sha256 = "1dqh6dkxw3h1z72snbpn2a8fgyr9a70n3p267pjiblg7wzxvrdiz";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fc1683be70d1388efa3ce00adc40510e595aef2b/recipes/xah-fly-keys";
@@ -73004,8 +73589,8 @@
           sha256 = "0znhjwlpgg05g39b16ddgw3a71a93fn2dicfsxjkziffn2a95m0s";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4ac99eee00b76501d830373a13369f6a2a1239b5/recipes/xkcd";
-          sha256 = "1r88yhs8vnkak8xl16vw3xdpm7ncz4ydkml8932bqk8xix8l8f0w";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/xkcd";
+          sha256 = "0gy2952zg1rq5gl10x7iwbchz5jibfcvikd3chifqbmil80wh6b5";
           name = "xkcd";
         };
         packageRequires = [ json ];
@@ -73080,16 +73665,16 @@
     xmlgen = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "xmlgen";
-        version = "20170116.833";
+        version = "20170411.617";
         src = fetchFromGitHub {
           owner = "philjackson";
           repo = "xmlgen";
-          rev = "331dbe01037873c209fbca2aeeaf42da446f1d79";
-          sha256 = "03hksc2ng5dl4rq9yprj65d1x8kp0ccyb913hc6byz1n6gp0jkll";
+          rev = "dba66681f0c5e621a9e70e8afb34903c9ffe93c4";
+          sha256 = "096i29v0badx0a6339h9ckdz78zj59gbjdp7vj7vhkq9d830392s";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cd19fded2de4e7549121485e81f7405c0176e203/recipes/xmlgen";
-          sha256 = "1mvnjqb9zxf9ml605w10v4cbbajwv9if93apr4xrh79l00scj383";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/xmlgen";
+          sha256 = "0c77la6kl02qkapfzbjmhac60f8p837kwg8bp0686ylxh5s31zsh";
           name = "xmlgen";
         };
         packageRequires = [];
@@ -73340,8 +73925,8 @@
           sha256 = "17zlbrnxyc0lgsy5g8zqz13mqizhaqpp4i975x9m4ilpl5ycaqqx";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e4e83b11c3d5b9773a26e2da4d848f645edcea5b/recipes/xwidgete";
-          sha256 = "124gb5h3w4xydvx9zyvy60m038hjpz72yis1yv1vdb56lixndh9m";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/xwidgete";
+          sha256 = "1v1dfykkb6nwjwz2623i6x1rl53z4457l6fpa4nv4krdqq79gl5d";
           name = "xwidgete";
         };
         packageRequires = [ emacs ];
@@ -73382,8 +73967,8 @@
           sha256 = "144v8nn4l8ngfdrsgj5nrxp09391gnfrqf950y956cbmqvnlw7z8";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/51bfd6465ee8ee553e8fd466a3bc4e65ab98faed/recipes/yafolding";
-          sha256 = "1z70ismfwmh9a83a7h5lbhw7iywfib5fis7y8gx8020wfjq9g2yq";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/yafolding";
+          sha256 = "1yb1rlxa5f1y1xjqs7ndr5jnf9j5cv0ccqdpbrx4l9xkm3npw9zl";
           name = "yafolding";
         };
         packageRequires = [];
@@ -73458,12 +74043,12 @@
     yaml-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "yaml-mode";
-        version = "20170213.1023";
+        version = "20170406.241";
         src = fetchFromGitHub {
           owner = "yoshiki";
           repo = "yaml-mode";
-          rev = "1c3ade410fb0bf5b6f2140b099f0ef96836ee74e";
-          sha256 = "1p0m702lyjx5xcqvifc8lkrj430nvjiwswpf3ghcvl5sls8bf5af";
+          rev = "64b28913bfe910b147d6ee16488dbaedb1452ca6";
+          sha256 = "0c4c9qa8avqnkd0qp88wdc1jpp674bghma4x0bvbi147g224ybp7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/yaml-mode";
@@ -73487,8 +74072,8 @@
           sha256 = "1xgqqgg4q3hrhiap8gmr8iifdr1mg4dl0j236b6alhrgmykbhimy";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0bfbef31df9d75964378448ac3c0d35bd36a6a3a/recipes/yaml-tomato";
-          sha256 = "0bja213l6mvh8ap5d04x8dik1z9px5jr52zpw1py7shw5asvp5s2";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/yaml-tomato";
+          sha256 = "1asy4nf759lcgksah2g7jvzwwlq9lxfkiji460csk5ycsv8aa99s";
           name = "yaml-tomato";
         };
         packageRequires = [ s ];
@@ -73568,8 +74153,8 @@
           sha256 = "0vlllq3xmnlni0ws226pqxj68nshclbl5rgqv6y11i3yvzgiazr6";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e7dcbe43b65944968a882705ff4b3b2c9f40b6d2/recipes/yaoddmuse";
-          sha256 = "07sqcsad3k23agwwws7hxnc46cp9mkc9qinzva7qvjgs8pa9dh54";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/yaoddmuse";
+          sha256 = "1p68f3xjv55m8lnq5x27b8y87mq685hpm3n9kiga9qq8wxdf2rnf";
           name = "yaoddmuse";
         };
         packageRequires = [];
@@ -73686,12 +74271,12 @@
     yasnippet = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "yasnippet";
-        version = "20170326.1030";
+        version = "20170409.2044";
         src = fetchFromGitHub {
           owner = "joaotavora";
           repo = "yasnippet";
-          rev = "5043a961215158619199cf03a85a0c063a28c644";
-          sha256 = "145v9fvfm1yldr7k02d1lk3sgycs2j8zg9d8zmz7g7b9lghkp6fk";
+          rev = "47f37f70f4748e30010b700b5eca39d5cd063616";
+          sha256 = "0rl0hd6cwa5jvzi3aixws90hvin4p7ppylc4jn7v8cnhy2hckzjp";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5d1927dc3351d3522de1baccdc4ce200ba52bd6e/recipes/yasnippet";
@@ -73789,12 +74374,12 @@
     ycmd = callPackage ({ cl-lib ? null, dash, deferred, emacs, fetchFromGitHub, fetchurl, let-alist, lib, melpaBuild, pkg-info, request, request-deferred, s }:
     melpaBuild {
         pname = "ycmd";
-        version = "20170329.1433";
+        version = "20170416.312";
         src = fetchFromGitHub {
           owner = "abingham";
           repo = "emacs-ycmd";
-          rev = "8fbdaeaec7704155a047ac17c11d4cf4208f5f79";
-          sha256 = "0hvvyficrdxwwg9gyyzmvdsx7v1dh07qrzcvcdn1lq1q1shwcng9";
+          rev = "35553f0e8b84f6b1dc149b84dedb52b72a64240a";
+          sha256 = "1cwbpl2mi63faxj7izl97qn7gc9g1wy8xig89d2yxyv3isb65la2";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4b25378540c64d0214797348579671bf2b8cc696/recipes/ycmd";
@@ -73862,12 +74447,12 @@
     yoshi-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "yoshi-theme";
-        version = "20170307.906";
+        version = "20170330.0";
         src = fetchFromGitHub {
           owner = "ryuslash";
           repo = "yoshi-theme";
-          rev = "7ab8df0bd646e0571a4d27cbaa4f62b60f625bad";
-          sha256 = "0qh8d14vpaj6hbhxv8zmr7sg85wfjqb2gf30b56lnrvkl783v50b";
+          rev = "eab4fb67e8fec47c25c4c1393ac1211f043dbd44";
+          sha256 = "01al6pzl9mz04b43a3lwnhdvr5i71qhafz6frl5m9q2k6x1x2n2f";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6e9a549e31c4097ee24b4bff12ec5d20d3beac68/recipes/yoshi-theme";
@@ -74053,8 +74638,8 @@
         src = fetchFromGitHub {
           owner = "NicolasPetton";
           repo = "zerodark-theme";
-          rev = "3f93de4fd1ed7e989873b556517e018f1436f8ed";
-          sha256 = "0rqg3mmh7jxsasai6i8y8r2hngvhnncn38ihvbbylyx4f71h59hi";
+          rev = "c7e4d3aa3062aa6c89408720e5b68856a39cd401";
+          sha256 = "0yqb9wbq4ava9i02skyvjh6n1gd9lcp7lz1a2skzihc2hmnjw2jg";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/72ef967a9bea2e100ae17aad1a88db95820f4f6a/recipes/zerodark-theme";
@@ -74067,6 +74652,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    zig-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "zig-mode";
+        version = "20170413.130";
+        src = fetchFromGitHub {
+          owner = "AndreaOrru";
+          repo = "zig-mode";
+          rev = "1d2639072736283b6112a7f7cf30da7897b27c3e";
+          sha256 = "04s529jsjjb5bann99asspb3wcip7ww2d7niylkza9z6rfcyaj2g";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/64d12e362a2490e85c8e7a66a5ed1ebff9ce95a6/recipes/zig-mode";
+          sha256 = "1rmvlsgx01h62imbksxl164d5p0caz49nlgg0z7spvvd9bmplr09";
+          name = "zig-mode";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/zig-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     zlc = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "zlc";
@@ -74099,8 +74705,8 @@
           sha256 = "0jh11lbzsndsz9i143av7510417nzwy4j3mmpq7cjixfbmnxdq06";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/933bfffbfa6a5b777e7820684e4c115e7798941a/recipes/znc";
-          sha256 = "1z2kzbapgh55wwr5jp7v1wz5kpz4l7n3k94mkh3s068xag9xs6zz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/znc";
+          sha256 = "1017dlzbpb3ww0zb370bgsdrzr4kcc72ddby9j63d95chz2jg0hb";
           name = "znc";
         };
         packageRequires = [ cl-lib ];
@@ -74162,8 +74768,8 @@
           sha256 = "106sppnp1jd5qcp2ydb180fbhfld90jvfimy8316qvrgk5xc2q57";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/38262704e1045c21ee73ca9dc87656936382004a/recipes/zone-nyan";
-          sha256 = "165sgjaahz038isii971m02hr2g5iqhbhiwf5kdn8c739cjaa17b";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/zone-nyan";
+          sha256 = "1g7i5p26gb9gny64b84x6zqml7fly5q9aykmc6l6c1kfl6pqxs94";
           name = "zone-nyan";
         };
         packageRequires = [ esxml ];
@@ -74243,8 +74849,8 @@
           sha256 = "1mgfv9q4mwng0cqni13kmsridbfqsw66z5cgynlrvagga6v94bq0";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f768556f3fbe2537d6ebb08a5285d040e851e85d/recipes/zones";
-          sha256 = "08sl7i7cy22nd1jijc5l7lp75k9z83gfr8q41n72l0vxrpdasc9w";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/zones";
+          sha256 = "1l4qilawlgvanrz4ny4aaqzg011dlqh65g06d44pf6ha586rvzp2";
           name = "zones";
         };
         packageRequires = [];
@@ -74317,12 +74923,12 @@
     zop-to-char = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "zop-to-char";
-        version = "20160212.108";
+        version = "20160212.754";
         src = fetchFromGitHub {
           owner = "thierryvolpiatto";
           repo = "zop-to-char";
-          rev = "883cb9dbd12a08fba4164f16d7badf7f846c3eff";
-          sha256 = "1hq5ycnj0kwqs25z5rm095d55r768458vc5h5dpjhka5n6c099p1";
+          rev = "816ea90337db0545a2f0a5079f4d7b3a2822af7d";
+          sha256 = "14waf3g7b92k3qd5088w4pn0wcspxjfkbswlzf7nnkjliw1yh0kf";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b0a9277f1a5f1aef8886e739c73dea91d3f81dc5/recipes/zop-to-char";
@@ -74422,11 +75028,11 @@
     zpresent = callPackage ({ dash, emacs, fetchhg, fetchurl, lib, melpaBuild, org-parser }:
     melpaBuild {
         pname = "zpresent";
-        version = "20170326.1630";
+        version = "20170413.2126";
         src = fetchhg {
           url = "https://bitbucket.com/zck/zpresent.el";
-          rev = "ef1de4ed0def";
-          sha256 = "1fb7n64wj1b6s5vm43i9xharbbfx9r97fzshmjfhik8vsjc7k4c5";
+          rev = "08ae558834c2";
+          sha256 = "1bwjn1shnirmrqf7xcvzhnyg87jpwbcv231r28hlnyb5f2sqvr2y";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/3aae38ad54490fa650c832fb7d22e2c73b0fb060/recipes/zpresent";
diff --git a/pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix b/pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix
index 488699f8a79..818d1058ec8 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix
@@ -212,12 +212,12 @@
     ac-clang = callPackage ({ auto-complete, cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, pos-tip, yasnippet }:
     melpaBuild {
         pname = "ac-clang";
-        version = "1.8.0";
+        version = "1.9.0";
         src = fetchFromGitHub {
           owner = "yaruopooner";
           repo = "ac-clang";
-          rev = "ad75d193bb8962136e1ecac04d33352dd70fb72e";
-          sha256 = "0pchbhcs3bjf8r6f24lcf29in011502ncr2gi72faww6iz0pb285";
+          rev = "c4aab21df64011916039e18094e189533018e115";
+          sha256 = "1ac8rw0r4x1plrwy6xwswy5mj5h1r975y8wvx01g2j8an41xhlms";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ffe0485048b85825f5e8ba95917d8c9dc64fe5de/recipes/ac-clang";
@@ -527,12 +527,12 @@
     ac-php = callPackage ({ ac-php-core, auto-complete, fetchFromGitHub, fetchurl, lib, melpaBuild, yasnippet }:
     melpaBuild {
         pname = "ac-php";
-        version = "1.7.7";
+        version = "1.7.8";
         src = fetchFromGitHub {
           owner = "xcwen";
           repo = "ac-php";
-          rev = "dd04c95ed8a0b5787cb4bf536797cb14aff9991b";
-          sha256 = "1yg01ba5c7cv9dvmz5sd797wf46a1ylj57dr4k5i0jjz2y1mb8z6";
+          rev = "36e37b21ebcd3d178da4e23a440759bc6b049c7d";
+          sha256 = "1rs7v5n5rb6gdyxxadg2p8zabh0qxvdmyq9356qk6drx8mnsvq8k";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ac283f1b65c3ba6278e9d3236e5a19734e42b123/recipes/ac-php";
@@ -548,12 +548,12 @@
     ac-php-core = callPackage ({ dash, emacs, f, fetchFromGitHub, fetchurl, lib, melpaBuild, php-mode, popup, s, xcscope }:
     melpaBuild {
         pname = "ac-php-core";
-        version = "1.7.7";
+        version = "1.7.8";
         src = fetchFromGitHub {
           owner = "xcwen";
           repo = "ac-php";
-          rev = "dd04c95ed8a0b5787cb4bf536797cb14aff9991b";
-          sha256 = "1yg01ba5c7cv9dvmz5sd797wf46a1ylj57dr4k5i0jjz2y1mb8z6";
+          rev = "36e37b21ebcd3d178da4e23a440759bc6b049c7d";
+          sha256 = "1rs7v5n5rb6gdyxxadg2p8zabh0qxvdmyq9356qk6drx8mnsvq8k";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ac283f1b65c3ba6278e9d3236e5a19734e42b123/recipes/ac-php-core";
@@ -619,8 +619,8 @@
           sha256 = "0yy7g2903v78a8pavhxi8c7vqbmifn2sjk84zhw5aygihp3d6vf0";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1ea85eca9cf2df3f8c06709dfb44b339b8bdbc6c/recipes/ace-flyspell";
-          sha256 = "0f24qrpcvyg7h6ylyggn4zrbydci537iigshac1d8yywsr0j47gd";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ace-flyspell";
+          sha256 = "1zgywb90cg64nllbbk0x9ipm6znyc5yh7vkajrrnw06r5vabyp9y";
           name = "ace-flyspell";
         };
         packageRequires = [ avy ];
@@ -766,8 +766,8 @@
           sha256 = "1d2g873zwq78ggs47954lccmaky20746wg0gafyj93d1qyc3m8rn";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/10bb2de9c6b938fa12deff1e2748bfd0a345891a/recipes/ace-pinyin";
-          sha256 = "18gmj71zd0i6yx8ifjxsqz2v81jx0j37f5kxllf31w7fj32ymbkc";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ace-pinyin";
+          sha256 = "1b3asvzm3k66lsdkmlsgmnf8xlyic8zv294j1iahzkwm6bzqj8wd";
           name = "ace-pinyin";
         };
         packageRequires = [ ace-jump-mode avy pinyinlib ];
@@ -860,6 +860,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    add-hooks = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "add-hooks";
+        version = "2.2.0";
+        src = fetchFromGitHub {
+          owner = "nickmccurdy";
+          repo = "add-hooks";
+          rev = "fa88bfc17c01f526a156a45ad00fa66cc0909805";
+          sha256 = "0jq9gywg6zvlv8rmvw5vv3228y0k4pk1bczygiwfmav13g0dnb1k";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/901f846aef46d512dc0a1770bab7f07c0ae330cd/recipes/add-hooks";
+          sha256 = "09a5b3prznibkb5igfn8x3vsjrlkh3534zycs8g25g4li87mcb6p";
+          name = "add-hooks";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/add-hooks";
+          license = lib.licenses.free;
+        };
+      }) {};
     add-node-modules-path = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "add-node-modules-path";
@@ -881,6 +902,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    addressbook-bookmark = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "addressbook-bookmark";
+        version = "1.0";
+        src = fetchFromGitHub {
+          owner = "thierryvolpiatto";
+          repo = "addressbook-bookmark";
+          rev = "ad3c73369b804a48803fdfdf2ab613e6220260de";
+          sha256 = "012kfqkmpagn8jrp09acpx631qmjim7b33j0pahv1fcqhin89pn6";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/a497aec6e27efa627068542cae5a16c01c3c6d3c/recipes/addressbook-bookmark";
+          sha256 = "15p00v4ndrsbadal0ss176mks4ynj39786bmrnil29b6sqibd43r";
+          name = "addressbook-bookmark";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/addressbook-bookmark";
+          license = lib.licenses.free;
+        };
+      }) {};
     adoc-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, markup-faces, melpaBuild }:
     melpaBuild {
         pname = "adoc-mode";
@@ -892,8 +934,8 @@
           sha256 = "0kp2aafjhqxz3mjr9hkkss85r4n51chws5a2qj1xzb63dh36liwm";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/70a3b6a7b43c76b0ce3b350f5c8d657bf4f7fb04/recipes/adoc-mode";
-          sha256 = "0wgagcsh0fkb51fy17ilrs20z2vzdpmz97vpwijcfy2b9rypxq15";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/adoc-mode";
+          sha256 = "0jd3zr4zpb4qqn504azl0y02cryv7n9wphv64b0fbpipr7w5hm2c";
           name = "adoc-mode";
         };
         packageRequires = [ markup-faces ];
@@ -1031,12 +1073,12 @@
     alchemist = callPackage ({ company, dash, elixir-mode, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, pkg-info }:
     melpaBuild {
         pname = "alchemist";
-        version = "1.8.1";
+        version = "1.8.2";
         src = fetchFromGitHub {
           owner = "tonini";
           repo = "alchemist.el";
-          rev = "aa54643c6d64d82c2c8d502bb710e7de87699df1";
-          sha256 = "0fbhrri816brh3283q3gisnxnginwzarsydsz881zk24kk2raq1k";
+          rev = "34caeed1bd231c7dfa8d2b9aa5c5de2b2a059601";
+          sha256 = "1cci0sq568ghx6x7my96m0iiwvqz2f4dh6k3gn3mmfyvi7bmrpww";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6616dc61d17c5bd89bc4d226baab24a1f8e49b3e/recipes/alchemist";
@@ -1049,6 +1091,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    alda-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "alda-mode";
+        version = "0.1.0";
+        src = fetchFromGitHub {
+          owner = "jgkamat";
+          repo = "alda-mode";
+          rev = "921b1d39ee1122c0f6935598dc17aaa904e74819";
+          sha256 = "01zz3h6q3djqmb3l6s9jld8x1zx2m0x1qskxzywnyfh8hcvbqy6f";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/2612c494a2b6bd43ffbbaef88ce9ee6327779158/recipes/alda-mode";
+          sha256 = "0vpxiw3k0qxp6s19n93qkkyrr44rbw38ygriqdrfpp84pa09wprh";
+          name = "alda-mode";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/alda-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     alect-themes = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "alect-themes";
@@ -1091,22 +1154,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    all-the-icons = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, font-lock-plus, lib, melpaBuild }:
+    all-the-icons = callPackage ({ emacs, fetchFromGitHub, fetchurl, font-lock-plus, lib, melpaBuild }:
     melpaBuild {
         pname = "all-the-icons";
-        version = "2.2.0";
+        version = "2.4.0";
         src = fetchFromGitHub {
           owner = "domtronn";
           repo = "all-the-icons.el";
-          rev = "692ac0816783725600b80b5307bf48a83053a378";
-          sha256 = "13l5dqyhsma2a15khfs0vzk6c7rywfph4g9kgq10v89m3kwqich8";
+          rev = "4f7c556167e42c02d2f840aec345b8f60b71c477";
+          sha256 = "0vhmw6z6q5a3abxphxxq5yd37hz5x9hs61vgx4wfyk2853701ks0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/604c01aa15927bd122260529ff0f4bb6a8168b7e/recipes/all-the-icons";
           sha256 = "00ba4gkfvg38l4s0gsb4asvv1hfw9yjl2786imybzy7bkg9f9x3q";
           name = "all-the-icons";
         };
-        packageRequires = [ dash emacs font-lock-plus ];
+        packageRequires = [ emacs font-lock-plus ];
         meta = {
           homepage = "https://melpa.org/#/all-the-icons";
           license = lib.licenses.free;
@@ -1145,12 +1208,12 @@
     anaconda-mode = callPackage ({ dash, emacs, f, fetchFromGitHub, fetchurl, lib, melpaBuild, pythonic, s }:
     melpaBuild {
         pname = "anaconda-mode";
-        version = "0.1.7";
+        version = "0.1.8";
         src = fetchFromGitHub {
           owner = "proofit404";
           repo = "anaconda-mode";
-          rev = "1799bdbe410dc7dd91b766dddaa6c73e2d077059";
-          sha256 = "1gn835ny57cgaijjhifiafannbbnrj6v3g4kc45id52grkd041qk";
+          rev = "95fdfab07600171daccb0e9e98fb91c11237fd48";
+          sha256 = "0l5h6apjshr6drfak6j66m3rv26hkr2namj85k8isvalmn4dlrj2";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e03b698fd3fe5b80bdd24ce01f7fba28e9da0da8/recipes/anaconda-mode";
@@ -1279,8 +1342,8 @@
           sha256 = "1ppq3kszzj2fgr7mwj565bjs8bs285ymy384cnnw7paddgcr9z02";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8b528544841995045fb1f8344aaaa38946bb3915/recipes/annoying-arrows-mode";
-          sha256 = "13bwqv3mv7kgi1gms58f5g03q5g7q98n4vv6n28zqmppxm5z33s7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/annoying-arrows-mode";
+          sha256 = "1vswlfypn6ijn0wwa3dsqkz5n3pillpmli2ha4q9snhd3a667vyh";
           name = "annoying-arrows-mode";
         };
         packageRequires = [];
@@ -1501,16 +1564,16 @@
     anything-tramp = callPackage ({ anything, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "anything-tramp";
-        version = "0.3.2";
+        version = "0.3.3";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-anything-tramp";
-          rev = "ca9d94c2a55c3cbbcc77b6818cc386dbd2f36d39";
-          sha256 = "0j1fm1ngd9vg3qrv9ks53ha9aijnl6mvx2sxsvlvn1libg7ym3zz";
+          rev = "08bf0752e5b885a0492fbd0d7790668683c87797";
+          sha256 = "13026l259vbbgi7q0lb6jb7d54z6jgapv0d2qlprh9mlqjf32xic";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/bf5be5351cb187dff8388865ac424f8e5be71639/recipes/anything-tramp";
-          sha256 = "1dpah5c35j552ixbd9mw2400vnfbibwhk1ihyz2n8b1c06syfny1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/anything-tramp";
+          sha256 = "053bi7b6d9aa6xwsgm0yxbklbs5sl3dgi529gsapj30lw68lh1vh";
           name = "anything-tramp";
         };
         packageRequires = [ anything emacs ];
@@ -1530,8 +1593,8 @@
           sha256 = "1lzvc0ihcbplir4hqfyxfqpsd78arz15gk92kmq4f8ggbkl37fan";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/04ac359d02d91725c8fc451b17bc2f06a7fe57a5/recipes/anzu";
-          sha256 = "0i2ia0jisj31vc2pjx9bhv8jccbp24q7c406x3nhh9hxjzs1f41i";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/anzu";
+          sha256 = "181hzwy9bc0zfhax26p20q9cjibrmi9ngps5fa3ja5g6scxfs9g1";
           name = "anzu";
         };
         packageRequires = [ cl-lib emacs ];
@@ -1540,6 +1603,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    apache-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "apache-mode";
+        version = "2.0";
+        src = fetchFromGitHub {
+          owner = "zonuexe";
+          repo = "apache-mode";
+          rev = "7e79a6602da77b5c3a11dab93d46fef26abc860d";
+          sha256 = "0i4kmw0qbnnfbfih7iwfpihv5d6kh1l9k2b062dvc5mx1vvlr8k8";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/b5216c40e60c5a69a6235c15b432b5e9bdda6fd3/recipes/apache-mode";
+          sha256 = "0f8r3xnnidcm9ahj8c3s1vxk6yqk3ra34nrc19r76xyprbb2sjsm";
+          name = "apache-mode";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/apache-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     apib-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, markdown-mode, melpaBuild }:
     melpaBuild {
         pname = "apib-mode";
@@ -1666,22 +1750,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    assess = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, lib, m-buffer, melpaBuild }:
+    assess = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, m-buffer, melpaBuild }:
     melpaBuild {
         pname = "assess";
-        version = "0.3.2";
+        version = "0.4";
         src = fetchFromGitHub {
           owner = "phillord";
           repo = "assess";
-          rev = "4a5eee8ba9db3e61b860b8b70236e385d3cf344a";
-          sha256 = "0255sa5fzg069n1pf09sn5nypqw0ll5rmxfigw30xhh95w40nx8y";
+          rev = "87118057b3ae0e6542fa5e22050eb44d6efe8baa";
+          sha256 = "0cilb32zr38x9kfzfyr1ciag5pzbgp1dk62r7lhn8dxc2ip6f11j";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6f917a34506193f2674b195569dfd3c13ba62c1d/recipes/assess";
           sha256 = "0xj3f48plwxmibax00qn15ya7s0h560xzwr8nkwl5r151v1mc9rr";
           name = "assess";
         };
-        packageRequires = [ dash emacs m-buffer ];
+        packageRequires = [ emacs m-buffer ];
         meta = {
           homepage = "https://melpa.org/#/assess";
           license = lib.licenses.free;
@@ -1690,16 +1774,16 @@
     async = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "async";
-        version = "1.9";
+        version = "1.9.1";
         src = fetchFromGitHub {
           owner = "jwiegley";
           repo = "emacs-async";
-          rev = "14170a45c8cf91a0133960442509197e683c256d";
-          sha256 = "1dgw075pdzfrb5wjba7iwal8crxpxm642fkfwj8389a5hpsj7v2n";
+          rev = "666066d30a420d86801d8380f5991f2b82471107";
+          sha256 = "1hjyac7dm0yvg5y32fii6508wwhl5q493i8ikf3fszafz03nc6sc";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6a0fe448e82f42cad0fdaa40c964032892fedd83/recipes/async";
-          sha256 = "063ci4f35x1zm9ixy110i5ds0vsrcafpixrz3xkvpnfqdn29si3f";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/async";
+          sha256 = "0s2qrmkqqfgi1ilzbj0rfk27f89p4dycdl1lqkbsm23j0zya53w4";
           name = "async";
         };
         packageRequires = [];
@@ -2313,8 +2397,8 @@
           sha256 = "1plh7i4zhs5p7qkv7p7lnfrmkszn8b3znwvbxgp7wpxay5safc5j";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/01f3deade0759830ed2e70e00e596915be5f5c11/recipes/badwolf-theme";
-          sha256 = "03plkzpmlh0pgfp1c9padsh4w2g23clsznym8x4jabxnk0ynhq41";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/badwolf-theme";
+          sha256 = "15n33l0iaq2pk70rpw7qdm8dlwcinfclpnlr3bs7vcb1dknp4g9v";
           name = "badwolf-theme";
         };
         packageRequires = [ emacs ];
@@ -2449,6 +2533,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    beacon = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, seq }:
+    melpaBuild {
+        pname = "beacon";
+        version = "1.3.3";
+        src = fetchFromGitHub {
+          owner = "Malabarba";
+          repo = "beacon";
+          rev = "f1a3ff5ea8fecf9bf250205de66aedf0bf49c35b";
+          sha256 = "0wr2ffwbi5w23a7hbdmn5ijfy5gmizrmy75zj6m1bz4mbw23ccvn";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/d09cfab21be800831644218e9c8c4433087951c0/recipes/beacon";
+          sha256 = "1pwxvdfzs9qjd44wvgimipi2hg4qw5sh5wlsl8h8mq2kyx09s7hq";
+          name = "beacon";
+        };
+        packageRequires = [ seq ];
+        meta = {
+          homepage = "https://melpa.org/#/beacon";
+          license = lib.licenses.free;
+        };
+      }) {};
     beeminder = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "beeminder";
@@ -2523,8 +2628,8 @@
           sha256 = "14ym7gp57yflf86hxpsjnagxnc0z1jrdc4mbq7wcbh5z8kjkbfpd";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/fc553c9fb6de69dafe9fbe44a955b307f4d9507f/recipes/better-shell";
-          sha256 = "1mr39xz8chnc28zw1rrw5yqf44v44pby7ki22yyz6rp1j5ishp4v";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/better-shell";
+          sha256 = "0si8nj18i3jlhdb8m6f21rmi0lxians34vhw4xhvxw2yr9l85lj6";
           name = "better-shell";
         };
         packageRequires = [ emacs ];
@@ -2628,8 +2733,8 @@
           sha256 = "1cw8zxcj7ygj73dc8xf6b4sdjrwxfl6h07mrwym8anllqs2v0fa6";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5653d2b6c2a9b33cfed867e7f6e552d4ed90b181/recipes/bing-dict";
-          sha256 = "0s5pd08rcnvmgi1hw17xbzvswlv0yni6h2h2gccrjmf6izi8whh1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/bing-dict";
+          sha256 = "1cqjndq8xm2bwjvdj95dn377bp9r6rrkp1z4a45faj408mipahli";
           name = "bing-dict";
         };
         packageRequires = [];
@@ -3426,8 +3531,8 @@
           sha256 = "1jj9vmhc4s3ych08bjm1c2xwi81z1p20rj7bvxrgvb5aga2ghi9d";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/193956c26050e15ddd7fb6579a053262d1de1e30/recipes/cdlatex";
-          sha256 = "1jsfmzl13fykbg7l4wv9si7z11ai5lzvkndzbxh9cyqlvznq0m64";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cdlatex";
+          sha256 = "021gj0jw93r8gk0cacw1ldfibpwr6fpkcrnign7b4nqqnb3135k9";
           name = "cdlatex";
         };
         packageRequires = [];
@@ -3502,12 +3607,12 @@
     cfengine-code-style = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "cfengine-code-style";
-        version = "3.10.0";
+        version = "3.10.1";
         src = fetchFromGitHub {
           owner = "cfengine";
           repo = "core";
-          rev = "dc823da05d6790e9f95e3cb75618b51d6273e303";
-          sha256 = "0xfdlzdcccz80qp3jbzv7wr1kwkh8797j9d3lfkh8apl4wkgvwpq";
+          rev = "99e8b116e779f97e96866891362817c1c5c6534c";
+          sha256 = "1ckk6jvmwrrlfd4ja8n5q99ajasgvbdkzkba9mswhq9dvk6avvn0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c737839aeda583e61257ad40157e24df7f918b0f/recipes/cfengine-code-style";
@@ -3846,8 +3951,8 @@
           sha256 = "108s96viral3s62a77jfgvjam08hdk97frfmxjg3xpp2ifccjs7h";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7a12bd6769ce7a5745c2da06dcd57ed3ba2ed891/recipes/cl-format";
-          sha256 = "1259ykj6z6m6gaqhkmj5f3q9vyk7idpvlvlma5likpknxj5f444v";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cl-format";
+          sha256 = "09jwy0fgaz2f04dvcdns6w859s6izvrkp8ib4lws3x8kx8z918fy";
           name = "cl-format";
         };
         packageRequires = [];
@@ -4206,12 +4311,12 @@
     cmake-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "cmake-mode";
-        version = "3.8.0pre3";
+        version = "3.8.0";
         src = fetchFromGitHub {
           owner = "Kitware";
           repo = "CMake";
-          rev = "3b7f19a72ff2216b4613fdc8c5edf5d56e74d6fc";
-          sha256 = "0da0ywk6bxr78hiy34m7yf0fwvir2v2hvdmspai8n8kcnlcinkyw";
+          rev = "da7833c5bb1f331162d46a2c664a443c1c641089";
+          sha256 = "0ca99p3i0q0f313yzfzd62pc4gl385lr1rfsx4z5vlr24ap7ipzy";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/598723893ae4bc2e60f527a072efe6ed9d4e2488/recipes/cmake-mode";
@@ -4836,12 +4941,12 @@
     company-php = callPackage ({ ac-php-core, cl-lib ? null, company, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "company-php";
-        version = "1.7.7";
+        version = "1.7.8";
         src = fetchFromGitHub {
           owner = "xcwen";
           repo = "ac-php";
-          rev = "dd04c95ed8a0b5787cb4bf536797cb14aff9991b";
-          sha256 = "1yg01ba5c7cv9dvmz5sd797wf46a1ylj57dr4k5i0jjz2y1mb8z6";
+          rev = "36e37b21ebcd3d178da4e23a440759bc6b049c7d";
+          sha256 = "1rs7v5n5rb6gdyxxadg2p8zabh0qxvdmyq9356qk6drx8mnsvq8k";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ac283f1b65c3ba6278e9d3236e5a19734e42b123/recipes/company-php";
@@ -4857,12 +4962,12 @@
     company-quickhelp = callPackage ({ company, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, pos-tip }:
     melpaBuild {
         pname = "company-quickhelp";
-        version = "2.0.0";
+        version = "2.3.0";
         src = fetchFromGitHub {
           owner = "expez";
           repo = "company-quickhelp";
-          rev = "d8fd045715ca64bc8cb3e714c05fe70d7eb33f09";
-          sha256 = "1fdiz1jqxnrl940vqbq14idrs4ird9dkzgckmyawzznv5yi29fw4";
+          rev = "b2953c725654650677e3d66eaeec666826d5f65f";
+          sha256 = "08ccsfvwdpzpj0gai3xrdb2bv1nl6myjkxsc5774pbvlq9nkfdvr";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/022cc4fee54bb0194822947c70058145e2980b94/recipes/company-quickhelp";
@@ -4902,6 +5007,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    company-rtags = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "company-rtags";
+        version = "2.9";
+        src = fetchFromGitHub {
+          owner = "Andersbakken";
+          repo = "rtags";
+          rev = "ffa21b5408a30a346815bc4db6e74e2c6562d936";
+          sha256 = "0828i5lcbspacydjnbrp3zhgbw2gggaaizzm0qqgmvry4cs79bxv";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/company-rtags";
+          sha256 = "0dicxbp3xn02pflrpfndj7hs494prvz64llsk1xpc2z23kfarp6f";
+          name = "company-rtags";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/company-rtags";
+          license = lib.licenses.free;
+        };
+      }) {};
     company-sourcekit = callPackage ({ company, dash, dash-functional, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, sourcekit }:
     melpaBuild {
         pname = "company-sourcekit";
@@ -4976,8 +5102,8 @@
           sha256 = "0b0k75rg43h48dbcqiid947nspqiqxkiqcmvph9aqpxlfr67bz5r";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2cda69dc7d45087fa9a3e0460d2b12a1dce1a7b3/recipes/company-web";
-          sha256 = "0dj0m6wcc8cyvblp9b5b3am95gc18j9y4va44hvljxv1h7l5hhvy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/company-web";
+          sha256 = "1q2am684l4d038a3ymyy6gg2ds9lq5mcfc4in8dmvap5grdhia4b";
           name = "company-web";
         };
         packageRequires = [ cl-lib company dash web-completion-data ];
@@ -4997,8 +5123,8 @@
           sha256 = "08kvbvhx5y3239bzdb1xpr81lfrhjy9xka4kn9dpa5bdxs0xx92w";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1138c8cc239183a2435ce8c1a6df5163e5fed2ea/recipes/company-ycmd";
-          sha256 = "0fqmkb0q8ai605jzn2kwd585b2alwxbmnb3yqnn9fgkcvyc9f0pk";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/company-ycmd";
+          sha256 = "1dycbp2q8grvv94mwp9n8s7xpz2zjs05l3lf471j3nlbk6xfsn5d";
           name = "company-ycmd";
         };
         packageRequires = [ company dash deferred f let-alist s ycmd ];
@@ -5241,12 +5367,12 @@
     counsel = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, swiper }:
     melpaBuild {
         pname = "counsel";
-        version = "0.8.0";
+        version = "0.9.1";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "swiper";
-          rev = "c24a3728538dd7d11de9f141b3ad1d8e0996c330";
-          sha256 = "19vfj01x7b8f7wyx7m51z00la2r7jcwzv0n06srkvcls0wm5s1h3";
+          rev = "f4b433436668ac09f3d1815fbfb4b71f3e0690fa";
+          sha256 = "10jffa503a6jid34smh0njnhlv27r9vyhwlpf00f13c5i8nh2xjf";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/06c50f32b8d603db0d70e77907e36862cd66b811/recipes/counsel";
@@ -5354,8 +5480,8 @@
           sha256 = "0ji8n4sv0zqmfn4g7ay927d8ya6wrvqdzvd5sc6vicma9gn27lvj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b2f92804e67fac780a0be850fcd0d0e93992ea7a/recipes/coverlay";
-          sha256 = "0p5k9254r3i247h6ll6kjsgw3naiff5lgfkmb2wkc870lzggq0m4";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/coverlay";
+          sha256 = "1n0fblacwps94mhbdwpi22frhqp3pxg4323ghb79rvszb7in9i8j";
           name = "coverlay";
         };
         packageRequires = [];
@@ -5438,8 +5564,8 @@
           sha256 = "1x29garhp1x5h1mwbamwjnfw52w45b39aqxsvcdxmcf730w9pq63";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/906b144e01aed96d62efbc34a8af2973135f6194/recipes/cricbuzz";
-          sha256 = "1ad2afyn3xny3rgb8yy6w87f33idlrmis1vx0b6s8ppafv9z74j0";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cricbuzz";
+          sha256 = "18nmr7rpbylqgfx5q3ps38wx9q1ndj06msgyjyc8lqpipbsz0pip";
           name = "cricbuzz";
         };
         packageRequires = [ dash enlive s ];
@@ -5795,8 +5921,8 @@
           sha256 = "1cwwwxmv7d1blv88c6nlm0z94gjfdgw2ri1libzyfzirincyicdx";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7d9cb763cb8e929d9442be8d06e9af02de90714a/recipes/dart-mode";
-          sha256 = "0wxfh8v716dhrmx1klhpnsrlsj66llk8brmwryjg2h7c391sb5ff";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dart-mode";
+          sha256 = "00zvgxfxgk5jair796l6appyq5hc7hs2s2wglv1j4l7g50b05cla";
           name = "dart-mode";
         };
         packageRequires = [ cl-lib dash flycheck ];
@@ -5942,8 +6068,8 @@
           sha256 = "1wi70r56pd5z0x4dp4m58p9asq03j74kdm4fi9vai83vsl2z9amq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/13098bae76a3386689a9bf9c12f25b9a9b15145c/recipes/debpaste";
-          sha256 = "1vgirfy4vdqkhllnnmcplhwmzqqwca3la5jfvvansykqriwbq9lw";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/debpaste";
+          sha256 = "0h3hx3vgdhchmndabmzprddq3bxd80jnv4xvma9v6k1v07bl721v";
           name = "debpaste";
         };
         packageRequires = [ xml-rpc ];
@@ -6026,8 +6152,8 @@
           sha256 = "1ch5br9alvwcpijl9g8w5ypjrah29alpfpk4hjw23rwzyq5p4izq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0e9a114d85f630648d05a7b552370fa8413da0c2/recipes/deferred";
-          sha256 = "0axbvxrdjgxk4d1bd9ar4r5nnacsi8r0d6649x7mnhqk12940mnr";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/deferred";
+          sha256 = "1i8jfapzmw86iqwhnnlqmcj6zh4hyhizdcwjxcnxdj6kvxmwyysm";
           name = "deferred";
         };
         packageRequires = [ emacs ];
@@ -6079,12 +6205,12 @@
     demangle-mode = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "demangle-mode";
-        version = "1.2";
+        version = "1.2.1";
         src = fetchFromGitHub {
           owner = "liblit";
           repo = "demangle-mode";
-          rev = "b40d7174d5d31ea8bf3442fb054f3c15bf6e979c";
-          sha256 = "00aqhzamp1492kn0x1j2h15wywbkwx9m0alm5z82z60wrq7gy9z7";
+          rev = "0f9436f98225e0f5a5deecea4680c173e76f0322";
+          sha256 = "0n10c45lvdfczhd2mpkciggv4d83mcnbpmjhxzvmnf7n5ar6aw6a";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6ced9f4ffb051a8474d3f72695156416cf2dd8be/recipes/demangle-mode";
@@ -6192,8 +6318,8 @@
           sha256 = "03pvh213w0sgyvv0xrkj43bs53p2xfr7162yhzdh24qwa8dd23qv";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cf8fc25abd2fb91ec6a6ba951d89a19ca4f5571f/recipes/diff-hl";
-          sha256 = "0kw0v9xcqidhf26qzrqwdlav2zhq32xx91k7akd2536jpji5pbn6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/diff-hl";
+          sha256 = "135jgjfaiq6kj72ji5k22v4pqc8gjjmcv80r5rkjbjigzlvcvvj2";
           name = "diff-hl";
         };
         packageRequires = [ cl-lib ];
@@ -6696,8 +6822,8 @@
           sha256 = "1b1a1bwc6nv6wkd8jg1cqmjb9m9pxi5i2wbrz97fgii23dwfmlnl";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/84d19999b8387e8b71215675cf1c15873314d90e/recipes/dispass";
-          sha256 = "08c1s4zgl4rha10mva48cfkxzrqnpdhy03pxq51ihw94v6vxzg3z";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dispass";
+          sha256 = "09c9v41rh63hjpdh377rbfvpial33r41dn5bss3632fi34az5l9n";
           name = "dispass";
         };
         packageRequires = [];
@@ -7081,8 +7207,8 @@
           sha256 = "04jhbapf84if54d648mx1fk7b9vwrnd0apyarwjv7p1azasm6vwl";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2a60e7c166c2d68e4f719d293014a22139593dde/recipes/dumb-jump";
-          sha256 = "1pgbs2k1g8w7gr65w50fazrmcky6w37c9rvyxqfmh06yx90nj4kc";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dumb-jump";
+          sha256 = "1j90n8gydsp2v07rysz1k5vf6hspybcl27214sib1iz3hbimid1w";
           name = "dumb-jump";
         };
         packageRequires = [ dash emacs f popup s ];
@@ -7091,21 +7217,21 @@
           license = lib.licenses.free;
         };
       }) {};
-    dyalog-mode = callPackage ({ cl-lib ? null, fetchhg, fetchurl, lib, melpaBuild }:
+    dyalog-mode = callPackage ({ cl-lib ? null, emacs, fetchhg, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "dyalog-mode";
         version = "0.7";
         src = fetchhg {
           url = "https://bitbucket.com/harsman/dyalog-mode";
-          rev = "6f4b44fb1966";
-          sha256 = "10d69aah8kq5ln3rcd2vcdck1vvqq5x47kk0bk4vpphh26j14jjp";
+          rev = "6cc0b8488a17";
+          sha256 = "03x94q315yq5kg2wvsp508a9hxl625iji3b84kywmg5hb3w5r9qn";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/dyalog-mode";
           sha256 = "1y17nd2xd8b3mhaybws8dr7yanzwqij9gzfywisy65ckflm9kfyq";
           name = "dyalog-mode";
         };
-        packageRequires = [ cl-lib ];
+        packageRequires = [ cl-lib emacs ];
         meta = {
           homepage = "https://melpa.org/#/dyalog-mode";
           license = lib.licenses.free;
@@ -7282,16 +7408,16 @@
     easy-hugo = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "easy-hugo";
-        version = "0.4.1";
+        version = "0.5.5";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-easy-hugo";
-          rev = "8e8dde2ce96c9bf561bffa1ee0886cf9b87db370";
-          sha256 = "13jf3rps8s54pyxnmxdrxmza5jnyhzcixmqqw4vp4br3kay7lbrz";
+          rev = "65fe2afeb240ff16b6fa0e580e3b03342b388e28";
+          sha256 = "0sv4m44zbil54mppqybq5978f3dnn0smjpkl3qw7d4sfh4dwf779";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/544fa512dc3e6379f451fd9b596d74a5849c87d2/recipes/easy-hugo";
-          sha256 = "07pa48rv5aqpz7fwkbc48scvnvnvg1v3qkapn2h1qllfc0h2nn5i";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/easy-hugo";
+          sha256 = "1m7iw6njxxsk82agyqay277iql578b3wz6z9wjs8ls30ps8s2b8g";
           name = "easy-hugo";
         };
         packageRequires = [ emacs ];
@@ -7513,12 +7639,12 @@
     ede-php-autoload = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "ede-php-autoload";
-        version = "1.0.0";
+        version = "1.1.0";
         src = fetchFromGitHub {
           owner = "stevenremot";
           repo = "ede-php-autoload";
-          rev = "2a8988d845d5acf9d49d8177a68c3c8863916d25";
-          sha256 = "19i746dyshcm2bih82n1m39sf18zx8gi1xaxc9q3pxm4hvn4s8mm";
+          rev = "28a989232c276ee7fc5112c9050b1c29f628be9f";
+          sha256 = "0kc51bb5jxrsra9ycg43n35dd8kngby321qbcixaj68cksf0whrm";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/8ee9f7fd9cbc3397cd9af34b08b75c3d9d8bc551/recipes/ede-php-autoload";
@@ -7771,8 +7897,8 @@
           sha256 = "0w9j5q5pzw55nwsw5wic7dl7psvg75vk1cxhrz2isgra6gissh9z";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d384f185f76039b06a1b5b12c792b346c6d47a22/recipes/eide";
-          sha256 = "16cf32n2l4wy1px7fm6x4vxx7pbqdp7zh2jn3bymg0b40i2321sz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/eide";
+          sha256 = "1i5brijz7pnqdk411j091fb8clapsbsihaak70g12fa5qic835fv";
           name = "eide";
         };
         packageRequires = [];
@@ -7784,12 +7910,12 @@
     ein = callPackage ({ cl-generic, fetchFromGitHub, fetchurl, lib, melpaBuild, request, websocket }:
     melpaBuild {
         pname = "ein";
-        version = "0.12.1";
+        version = "0.12.2";
         src = fetchFromGitHub {
           owner = "millejoh";
           repo = "emacs-ipython-notebook";
-          rev = "b52ccbd46dee2a1ece1dd6bd9be1224c323262ca";
-          sha256 = "1qdznl8z0s2hy3hhls9ccr516wai11qh663630hc0zwv4gwlwp64";
+          rev = "0ede9e7ef64017039748b8f47de4df834b0443ed";
+          sha256 = "03fm7lhfzrhn4dddlhqx6v1dqfgz6rj352y0znnfdaskzychw1sa";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/215e163755fe391ce1f049622e7b9bf9a8aea95a/recipes/ein";
@@ -8057,12 +8183,12 @@
     elfeed = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "elfeed";
-        version = "2.1.0";
+        version = "2.1.1";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "elfeed";
-          rev = "ac258aa1956a5ce29c1a50d7ce8b1da55cd23192";
-          sha256 = "04y0l4rjsn21a5li43ixw4y9v9cxh26q1ix4zsy41l8wjzbn1hlz";
+          rev = "67c4f07f5b0f942f030848f5d657909a1424b597";
+          sha256 = "1dc7csmj8w2k5056dz4lm86qhzgwpmr08s2hj216cpgg7cjxnwc0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/407ae027fcec444622c2a822074b95996df9e6af/recipes/elfeed";
@@ -8078,12 +8204,12 @@
     elfeed-web = callPackage ({ elfeed, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, simple-httpd }:
     melpaBuild {
         pname = "elfeed-web";
-        version = "2.1.0";
+        version = "2.1.1";
         src = fetchFromGitHub {
           owner = "skeeto";
           repo = "elfeed";
-          rev = "ac258aa1956a5ce29c1a50d7ce8b1da55cd23192";
-          sha256 = "04y0l4rjsn21a5li43ixw4y9v9cxh26q1ix4zsy41l8wjzbn1hlz";
+          rev = "67c4f07f5b0f942f030848f5d657909a1424b597";
+          sha256 = "1dc7csmj8w2k5056dz4lm86qhzgwpmr08s2hj216cpgg7cjxnwc0";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/62459d16ee44d5fcf170c0ebc981ca2c7d4672f2/recipes/elfeed-web";
@@ -8233,8 +8359,8 @@
           sha256 = "080nnw6ddsczbm7gk50x4dkahi77fsybfiki5iyp39fjpa7lfzq3";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/29c24259817bf4b7caf51f1cfc163e6b7c63504b/recipes/elmine";
-          sha256 = "1gi94dyz9x50swkvryd4vj36rqgz4s58nrb4h4vwwviiiqmc8fvz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/elmine";
+          sha256 = "1xkx1wwrzd2dl13z8n4qh3gl202j0i9crab5b3788z8mq0g4v4bn";
           name = "elmine";
         };
         packageRequires = [];
@@ -8254,8 +8380,8 @@
           sha256 = "1q4krfrc2dy0vr7q148msfpkcwj55mlsrn4n5xjnya4xj0134ib7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/c351c97e5b2c0595c82d65a7075176f9ebe44638/recipes/elpa-audit";
-          sha256 = "0l8har14zrlh9kdkh9vlmkmzg49vb0r8j1wnznryaidalvk84a52";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/elpa-audit";
+          sha256 = "18a8n22g53d8fxzr3snb2px28gvxbkx44grrx8lywaprz1f1lwdi";
           name = "elpa-audit";
         };
         packageRequires = [];
@@ -8631,12 +8757,12 @@
     embrace = callPackage ({ cl-lib ? null, expand-region, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "embrace";
-        version = "0.1.2";
+        version = "0.1.3";
         src = fetchFromGitHub {
           owner = "cute-jumper";
           repo = "embrace.el";
-          rev = "b447a2d0b311bc3c27b9ba51f27ec52ead58e258";
-          sha256 = "1sagmgcarg7d7b7hv3bqgkxg39fzgxaaq7wz9cf7fpwz0pv8vfy6";
+          rev = "a57b4be5d60daf8c176f9bd35770540c2d3963c9";
+          sha256 = "0sn81a7f8g5i4q74byfkj0jlg4aj0rxpfvx9sqv8azcg6wq2f65l";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e8f07e3b5ba4ec4b0b79fba5a2cca5a3986218b6/recipes/embrace";
@@ -8672,15 +8798,15 @@
       }) {};
     emms = callPackage ({ fetchgit, fetchurl, lib, melpaBuild }: melpaBuild {
         pname = "emms";
-        version = "4.1";
+        version = "4.2";
         src = fetchgit {
-          url = "git://git.sv.gnu.org/emms.git";
-          rev = "c1e1a843c3389fc585908de367ff00fdd6470965";
-          sha256 = "0q8grh20mzz8yashvzwx8s8hr761xmi6s81mjw8cjqzajm4ky8q3";
+          url = "https://git.savannah.gnu.org/git/emms.git";
+          rev = "6736d2e86d2909ef44759b1162e006bd5cc07547";
+          sha256 = "1qxdxy2grh0fdx50w1m9rmpvygxcywis4qjzi0mrpv2i7rwn8qal";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/205eeed002b0848809a4c5f8ad99d925b48799ec/recipes/emms";
-          sha256 = "0kzli8b0z5maizfwhlhph1f5w3v6pwxvs2dfs90l8c0h97m4yy2m";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/emms";
+          sha256 = "1xpry8h96gvjnc0v8x0vk5dnmlq1r7m3ljpampdwv9pfwl95fh94";
           name = "emms";
         };
         packageRequires = [];
@@ -8742,8 +8868,8 @@
           sha256 = "0kz31qsn3nrpi8r31nlxlkkkah0qcdkq9a9i9ypv4ky7pvnzx6m5";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f4eaa866ba6b0ad2b590fb15c30f81b9fdbef6dd/recipes/emms-player-simple-mpv";
-          sha256 = "15aljprjd74ha7wpzsmv3d873i6fy3x1jwhzm03hvw0sw18m25i1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/emms-player-simple-mpv";
+          sha256 = "1lv1rhd5vya068mnnaysfh56raar79hf2g413ysrk3yhyajk6316";
           name = "emms-player-simple-mpv";
         };
         packageRequires = [ cl-lib emacs emms ];
@@ -8954,12 +9080,12 @@
     ensime = callPackage ({ company, dash, fetchFromGitHub, fetchurl, lib, melpaBuild, popup, s, sbt-mode, scala-mode, yasnippet }:
     melpaBuild {
         pname = "ensime";
-        version = "1.0.0";
+        version = "1.0.1";
         src = fetchFromGitHub {
           owner = "ensime";
           repo = "ensime-emacs";
-          rev = "2621509bc9811c103d7efc999d4722e9d4c788e9";
-          sha256 = "1bq634bimd5ng2jc5d0aglsrdi08jihm0qx2za4vfdqvnn82gxiv";
+          rev = "2b4d4cd764b9fa4757738a6dae87f4d1e99686d6";
+          sha256 = "0j7zd3qxh4m5gv5s8pvfacad2mkzwwz1xdrvg1sa035xaxahqsyx";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/502faab70af713f50dd8952be4f7a5131075e78e/recipes/ensime";
@@ -9137,8 +9263,8 @@
           sha256 = "1k0g3bwp3w0dd6zwdv6k2wpqs2krjayilrzsr1hli649ljcx55d7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/321ae5999351637a2cd97ec1bf4668d68f569ee4/recipes/erc-hl-nicks";
-          sha256 = "1lhw77n2nrjnb5yhnpm6yhbcp022xxjcmdgqf21z9rd0igss9mja";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/erc-hl-nicks";
+          sha256 = "03hxsknf31vrja2amfa317ig4c34i5jpdq35zczrp00ap0s31nbq";
           name = "erc-hl-nicks";
         };
         packageRequires = [];
@@ -9255,12 +9381,12 @@
     erlang = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "erlang";
-        version = "19.3";
+        version = "19.3.1";
         src = fetchFromGitHub {
           owner = "erlang";
           repo = "otp";
-          rev = "a748cafdc7063d9f181ba12088db6458793ced2f";
-          sha256 = "0pp2hl8jf4iafpnsmf0q7jbm313daqzif6ajqcmjyl87m5pssr86";
+          rev = "d25ad84195ca42969fbfb017a52aab8c8effc246";
+          sha256 = "06jxpypw8i13gjiq006p0ahy0mlkxhmpq8fhn4pp7hi2n4ycnfj1";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d9cd526f43981e0826af59cdc4bb702f644781d9/recipes/erlang";
@@ -9409,8 +9535,8 @@
           sha256 = "0cairmqsaghl2ddb2v8zhcwy5ik756m7gkair8xrbigz4jklpcv9";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f40e277af4001d367099360d4342d9c1ab925f59/recipes/esa";
-          sha256 = "1kbsv4xsp7p9v0g22had0dr7w5zsr24bgi2xzryy76699pxq4h6c";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/esa";
+          sha256 = "0y4mbq0z6vp0faxq6dq5hhxnsbi685amxqbvpxkxahl1nckp76lb";
           name = "esa";
         };
         packageRequires = [ cl-lib ];
@@ -9493,8 +9619,8 @@
           sha256 = "05mfwp8zira7p2ip1rmqa08arlbkv7w1mbx7s5saj655scg7jaq3";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4d033b20d047db8ddd42bdfa2fcf190de559f706/recipes/eshell-up";
-          sha256 = "0v26dqaszdg57brg8sls9ddmfwxzf98wkp471q1cqw75ss4999jd";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/eshell-up";
+          sha256 = "1jyaaw950isissjjgqflfn2bllgdfcyphpbi7il06mv9p0dzpwvy";
           name = "eshell-up";
         };
         packageRequires = [ emacs ];
@@ -9682,8 +9808,8 @@
           sha256 = "0azwfxzxghxhzwal4al0lngm0w3q035jyvm3wj2aaml2dibsi3pb";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/fd4381bbb725cb4a17d741f604698b38c95da475/recipes/esxml";
-          sha256 = "0nn074abkxz7p4w59l1za586p5ya392xhl3sx92yys8a3194n6hz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/esxml";
+          sha256 = "0v63ihgg2db3648s2xygcky9s0vx9byjjpbhlgjy5j159w2w53vh";
           name = "esxml";
         };
         packageRequires = [];
@@ -9863,12 +9989,12 @@
     evil-commentary = callPackage ({ evil, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "evil-commentary";
-        version = "2.0.0";
+        version = "2.1.1";
         src = fetchFromGitHub {
           owner = "linktohack";
           repo = "evil-commentary";
-          rev = "6d9079894da0bdda8a317c03c90481b8754635c7";
-          sha256 = "183fdg7rmnnbps0knnj2kmhf1hxk0q91wbqx1flhciq6wq4rilni";
+          rev = "395f91014b69844b81660c155f42eb9b1b3d199d";
+          sha256 = "0zjs9zyqfygnpxapvf0ymmiid40i06cxbhjzd81zw33nafgkf6r4";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/fe5b05152c919d49ddd920b1bd5ffc351141fa0d/recipes/evil-commentary";
@@ -9913,8 +10039,8 @@
           sha256 = "0s8lmmm25qabicwaj9jybpbd8mkc62yl7jnhk1lpablydjkv3w2i";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/770fc6dd82c4d30f98e973958044e4d47b8fd127/recipes/evil-escape";
-          sha256 = "0rlwnnshcvsb5kn7db5qy39s89qmqlllvg2z8cnxyri8bsssks4k";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-escape";
+          sha256 = "0jiwsgcqw8m6z4z82gx0m0r0vbvkcxc0czhn4mqjwkhhglwzgi8l";
           name = "evil-escape";
         };
         packageRequires = [ cl-lib emacs evil ];
@@ -9976,8 +10102,8 @@
           sha256 = "1n6r8xs670r5qp4b5f72nr9g8nlqcrx1v7yqqlbkgv8gns8n5xgh";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4ef683cb1707a481e26dc89b5491ec18e5b20ad1/recipes/evil-lisp-state";
-          sha256 = "117irac05fs73n7sgja3zd7yh4nz9h0gw5b1b57lfkav6y3ndgcy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-lisp-state";
+          sha256 = "16h6zi0kkq2zlrwqiz6avnw2ady3h9gmxyinvk5gbkskxf12d1pz";
           name = "evil-lisp-state";
         };
         packageRequires = [ bind-map evil smartparens ];
@@ -10144,8 +10270,8 @@
           sha256 = "0gci909a2rbx5i8dyzyrcddwdic7nvpk6y6djvn521yaag4sq87h";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/da8d4e5bf23985632f993336b9183fe9f480addc/recipes/evil-opener";
-          sha256 = "08vcf9i0rplw2p6gjl7zzrc7kxdl5yv2rggj2ihgdnnfpc4sl33h";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-opener";
+          sha256 = "0cld853pyzlaa306rpypw2wm4953i6y06irlk96bql9aa1zx977g";
           name = "evil-opener";
         };
         packageRequires = [ evil opener ];
@@ -10165,8 +10291,8 @@
           sha256 = "09l0ph9rc941kr718zq0dw27fq6l7rb0h2003ihw7q0a5yr8fpk7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5ec54af16e3dadce43ece7da3acb1cf2eab5d14b/recipes/evil-org";
-          sha256 = "18w07fbafry3wb87f55kd8y0yra3s18a52f3m5kkdlcz5zwagi1c";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-org";
+          sha256 = "1306pf5ws7acdanypn3c0r4yh5wxdf0knl6j3hhs4ys9zszd79bw";
           name = "evil-org";
         };
         packageRequires = [ evil org ];
@@ -10406,6 +10532,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    evil-visual-replace = callPackage ({ evil, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "evil-visual-replace";
+        version = "0.0.4";
+        src = fetchFromGitHub {
+          owner = "troyp";
+          repo = "evil-visual-replace";
+          rev = "9bfbaf71898294e25d588a887fb4753641edfbe9";
+          sha256 = "00mhqb9rn4hq90x5i44jyq51lg351bv8hdj4c443nxrbldi73k9s";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-visual-replace";
+          sha256 = "1dq3bd9aqpk3jq1c9yzlpjyw6mi8l428l111vrmfg156k1w22v01";
+          name = "evil-visual-replace";
+        };
+        packageRequires = [ evil ];
+        meta = {
+          homepage = "https://melpa.org/#/evil-visual-replace";
+          license = lib.licenses.free;
+        };
+      }) {};
     evil-visualstar = callPackage ({ evil, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "evil-visualstar";
@@ -10459,8 +10606,8 @@
           sha256 = "0gs6bi3s2sszc6v2b26929azmn5513kvyin99n4d0ark1jdbjmv2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/62ffcf48bdb2df2bc9e6dd767c4ed9d605a5c839/recipes/eww-lnum";
-          sha256 = "1y745z4wa90snizq2g0amdwwgjafd6hkrayn93ca50f1wghdbk79";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/eww-lnum";
+          sha256 = "1hhc6q8zlj335v27j4dq6ms7frqpivfabs9w3vkaly5kjr60fw7c";
           name = "eww-lnum";
         };
         packageRequires = [];
@@ -10480,8 +10627,8 @@
           sha256 = "0n86zj350jw1lxnaa450qmggza0za3a1zg9k9clwb9cjz4wwghsi";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3d8545191031bece15cf1706d81ad1d064f2a4bd/recipes/exec-path-from-shell";
-          sha256 = "1j6f52qs1m43878ikl6nplgb72pdbxfznkfn66wyzcfiz2hrvvm9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/exec-path-from-shell";
+          sha256 = "014bfcs7znds4if1njyq4s5zrfnr6b3wj6722b4l5r58gh9mlrr5";
           name = "exec-path-from-shell";
         };
         packageRequires = [];
@@ -10626,8 +10773,8 @@
           sha256 = "1j6gc2pp5w3iwyjm4h3d0ahzs0ac3pah8lzfhpg4nkibl0nc1bcg";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/22ddcf536af597b688d8edb70b3636ed6c265bf5/recipes/f";
-          sha256 = "0s7fqav0dc9g4y5kqjjyqjs90gi34cahaxyx2s0kf9fwcgn23ja2";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/f";
+          sha256 = "18qax8i24gpccif4xcxccclpwl00plxjf3zbq9dry37b1r4mj57s";
           name = "f";
         };
         packageRequires = [ dash s ];
@@ -11129,12 +11276,12 @@
     floobits = callPackage ({ fetchFromGitHub, fetchurl, highlight, json ? null, lib, melpaBuild }:
     melpaBuild {
         pname = "floobits";
-        version = "1.8.1";
+        version = "1.9.0";
         src = fetchFromGitHub {
           owner = "Floobits";
           repo = "floobits-emacs";
-          rev = "643dbefca9754765e6d0f88a8953dc3689f5f93f";
-          sha256 = "1wh4y53vqi2zb03gxa2g2s14i280yqv0i7432ifi10v2qdwkilna";
+          rev = "fdac635ecc57ac7743f74678147aca2e956561de";
+          sha256 = "134b5ss249x06bgqvsxnlcfys7nl8aid42s7ln8pamxrc3prfcc1";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/95c859e8440049579630b4c2bcc31e7eaa13b1f1/recipes/floobits";
@@ -11263,8 +11410,8 @@
           sha256 = "1wm5saf29gw0gp0qq5glf9qq3iras99npc2rip7bsnn0czr2mscy";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/43224eef52bb316102fea524ba87b0e9e43dc6e6/recipes/flycheck-cask";
-          sha256 = "1lq559nyhkpnagncj68h84i3cq85vhdikr534kj018n2zcilsyw7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/flycheck-cask";
+          sha256 = "0d2m7mg91k1nazysayryxagql1vi975n7iv0snknhbw4wisqp82f";
           name = "flycheck-cask";
         };
         packageRequires = [ dash emacs flycheck ];
@@ -11462,6 +11609,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    flycheck-joker = callPackage ({ fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild }:
+    melpaBuild {
+        pname = "flycheck-joker";
+        version = "1.0.0";
+        src = fetchFromGitHub {
+          owner = "candid82";
+          repo = "flycheck-joker";
+          rev = "e7964140cbb0ee7badfc3d67c6412f5c3a461f76";
+          sha256 = "0mqnhcpkf86dxqj0y7g5mnn91m81jdvrsbwikyqvx46z1jpi0y37";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/599bf33a5d4a4a590b355001e532cab4e1ee9ef6/recipes/flycheck-joker";
+          sha256 = "0war80zdljpjhfihqrind8471ic7l4z7j74zmrysybxvnd5nr7l3";
+          name = "flycheck-joker";
+        };
+        packageRequires = [ flycheck ];
+        meta = {
+          homepage = "https://melpa.org/#/flycheck-joker";
+          license = lib.licenses.free;
+        };
+      }) {};
     flycheck-kotlin = callPackage ({ fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild }:
     melpaBuild {
         pname = "flycheck-kotlin";
@@ -11651,22 +11819,43 @@
           license = lib.licenses.free;
         };
       }) {};
-    flycheck-status-emoji = callPackage ({ emacs, fetchFromGitHub, fetchurl, flycheck, let-alist, lib, melpaBuild }:
+    flycheck-rtags = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "flycheck-rtags";
+        version = "2.9";
+        src = fetchFromGitHub {
+          owner = "Andersbakken";
+          repo = "rtags";
+          rev = "ffa21b5408a30a346815bc4db6e74e2c6562d936";
+          sha256 = "0828i5lcbspacydjnbrp3zhgbw2gggaaizzm0qqgmvry4cs79bxv";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/flycheck-rtags";
+          sha256 = "00v6shfs7piqapmyqyi0fk3182rcfa3p8wr2cm5vqlrana13kbw4";
+          name = "flycheck-rtags";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/flycheck-rtags";
+          license = lib.licenses.free;
+        };
+      }) {};
+    flycheck-status-emoji = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, flycheck, let-alist, lib, melpaBuild }:
     melpaBuild {
         pname = "flycheck-status-emoji";
-        version = "1.2.1";
+        version = "1.2.2";
         src = fetchFromGitHub {
           owner = "liblit";
           repo = "flycheck-status-emoji";
-          rev = "1c67e62562a5c30b3a184ef5090bbe50bab4d681";
-          sha256 = "1xxvri9ax5cjrkxhjqhs7zqbch9cx8kvrn7sg611frl68qawkjsm";
+          rev = "2f323cb210a280fc05061f3fc689c627b40bfcb3";
+          sha256 = "0gz18jp5bcwm86w6ir8vyf8rb3l2h524zfvx0jpfk0k1mmxj9cs7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5abd6aaa8d2bf55ae75cd217820763531f91958b/recipes/flycheck-status-emoji";
           sha256 = "0p42424b1fsmfcjyl252vhblppmpjwd6br2yqh10fi60wmprvn2p";
           name = "flycheck-status-emoji";
         };
-        packageRequires = [ emacs flycheck let-alist ];
+        packageRequires = [ cl-lib emacs flycheck let-alist ];
         meta = {
           homepage = "https://melpa.org/#/flycheck-status-emoji";
           license = lib.licenses.free;
@@ -11696,12 +11885,12 @@
     flycheck-swift3 = callPackage ({ emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild }:
     melpaBuild {
         pname = "flycheck-swift3";
-        version = "1.0.8";
+        version = "1.1.0";
         src = fetchFromGitHub {
           owner = "GyazSquare";
           repo = "flycheck-swift3";
-          rev = "ae7b29111cb160774c317997902d7ef29cedd7d9";
-          sha256 = "17s34rqxkirb88y8jzl3ybs7j3ylp9ckdfx3sqwfn0cyspnj5f1d";
+          rev = "6b0b7c6fffc86809d0535afebd6b0972059992d5";
+          sha256 = "0d411idv9ib1jhmdbjb8ycc8clmm1ygpwapaka3d50gkgrmfin4q";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/f1fb8c731c118327dc0bbb726e046fec46bcfb82/recipes/flycheck-swift3";
@@ -11788,8 +11977,8 @@
           sha256 = "08kvbvhx5y3239bzdb1xpr81lfrhjy9xka4kn9dpa5bdxs0xx92w";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/332e5585963c04112a55894fe7151c380930b17c/recipes/flycheck-ycmd";
-          sha256 = "0m99ssynrqxgzf32d35n17iqyh1lyc6948inxpnwgcb98rfamchv";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/flycheck-ycmd";
+          sha256 = "114k5y3jy470g5zzhxy03036gcayc08n6g61cidlr2zlyq80glyr";
           name = "flycheck-ycmd";
         };
         packageRequires = [ dash emacs flycheck let-alist ycmd ];
@@ -11872,8 +12061,8 @@
           sha256 = "1j35k52na02b59yglfb48w6m5qzydvzqfsylb8ax5ks0f287yf0c";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/bd115612b61895f98b0659e9edc1e590967b6337/recipes/flymake-easy";
-          sha256 = "19p6s9fllgvs35v167xf624k5dn16l9fnvaqcj9ks162gl9vymn7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/flymake-easy";
+          sha256 = "0y7nm2p5x1f0nqfj73zr6xzbpf4wrzx8sn8154yx0qm0qh3id39v";
           name = "flymake-easy";
         };
         packageRequires = [];
@@ -12302,6 +12491,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    fn = callPackage ({ cl-lib ? null, dash, dash-functional, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "fn";
+        version = "0.1.2";
+        src = fetchFromGitHub {
+          owner = "troyp";
+          repo = "fn.el";
+          rev = "2842e3c6d1b5c96184fa638c37b25ce5b347a1a6";
+          sha256 = "0kxpy87f44gkfzrnhcrprca0irkpddpbw7wbrm4aidw0synpab91";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/6d2929604b6dd21d6cf425643927a9c216801dc1/recipes/fn";
+          sha256 = "0cb98rxdb6sd0kws6bc4pa536kiyw3yk0hlfqcm3ps81hcgqjhhn";
+          name = "fn";
+        };
+        packageRequires = [ cl-lib dash dash-functional emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/fn";
+          license = lib.licenses.free;
+        };
+      }) {};
     focus = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "focus";
@@ -12334,8 +12544,8 @@
           sha256 = "1k8z30imlxvqm7lv12kgqdfgc5znxyvl9jxi8j2ymmwlgy11f726";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ebbbc23a29b2040c587e2f60dbfb7a9b45058751/recipes/fold-dwim";
-          sha256 = "0c9yxx45zlhb1h4ldgkjv7bndwlagpyingaaqn9dcsxidrvp3p5x";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/fold-dwim";
+          sha256 = "1c8sh6i453jpfhwaqdvlqibnb9lmzfd7q6bvnk1b1q0df7igl53d";
           name = "fold-dwim";
         };
         packageRequires = [];
@@ -12544,8 +12754,8 @@
           sha256 = "1c3yx9j3q8fkfiay4nzcabsq9i4ydqf6vxk8vv80h78gg9afrzrj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/22a334294660e8625cfeeeb7108517e163d8e443/recipes/fringe-helper";
-          sha256 = "1vki5jd8jfrlrjcfd12gisgk12y20q3943i2qjgg4qvcj9k28cbv";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/fringe-helper";
+          sha256 = "1i5wra4j0rvrsl9vbg7fzga8cadw43ka2rwdj1m11wq8m3cs8g7m";
           name = "fringe-helper";
         };
         packageRequires = [];
@@ -12578,12 +12788,12 @@
     fsharp-mode = callPackage ({ company, company-quickhelp, dash, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, popup, pos-tip, s }:
     melpaBuild {
         pname = "fsharp-mode";
-        version = "1.9.3";
+        version = "1.9.6";
         src = fetchFromGitHub {
           owner = "rneatherway";
           repo = "emacs-fsharp-mode-bin";
-          rev = "d5b9fde6dec186972f6ea457582504ca813b8778";
-          sha256 = "0wnhj9wfvm193pmni23isgagrdym2bqgay601kfacmjxffpv8879";
+          rev = "c2acdaaf36176d36ccadfe73c2593362ef930ebd";
+          sha256 = "00am42hl5icvbw5d7kpbdcl9sr8flsgl1pqmcxqpcz30yw6f4pr2";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/dc45611e2b629d8bc5f74555368f964420b79541/recipes/fsharp-mode";
@@ -12615,8 +12825,8 @@
           sha256 = "0manmkd66355g1fw2q1q96ispd0vxf842i8dcr6g592abrz5lhi7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e1198ee309675c391c479ce39efcdca23f548d2a/recipes/fstar-mode";
-          sha256 = "0kyzkghdkrnqqbd5b969pjyz9jxgq0j8hkmvlcwikl7ynnhm9lgy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/fstar-mode";
+          sha256 = "1cjwai0qf48m18dsa0r9sh4qlgvdzg5ajfbmxxc2vqzcl5ygrxjx";
           name = "fstar-mode";
         };
         packageRequires = [ dash emacs ];
@@ -12625,25 +12835,6 @@
           license = lib.licenses.free;
         };
       }) {};
-    fuel = callPackage ({ fetchgit, fetchurl, lib, melpaBuild }: melpaBuild {
-        pname = "fuel";
-        version = "0.96";
-        src = fetchgit {
-          url = "git://factorcode.org/git/factor.git";
-          rev = "905ec06d864537fb6be9c46ad98f1b6d101dfbf0";
-          sha256 = "0ip7azxi5nvp8vvi15ds46mgs0fmi7gq97f2iz1c7m67ml5wi2g7";
-        };
-        recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0c3633c23baa472560a489fc663a0302f082bcef/recipes/fuel";
-          sha256 = "0m24p2788r4xzm56hm9kmpzcskwh82vgbs3hqfb9xygpl4isp756";
-          name = "fuel";
-        };
-        packageRequires = [];
-        meta = {
-          homepage = "https://melpa.org/#/fuel";
-          license = lib.licenses.free;
-        };
-      }) {};
     full-ack = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "full-ack";
@@ -13054,8 +13245,8 @@
           sha256 = "1ywwyc2kz1c1s26c412nmzh55cinh84cfiazyyi3jsy5zzwhrbhi";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cfbd335054aff49d4a46f73bee881b7a00714d3c/recipes/ghc-imported-from";
-          sha256 = "10cxz4c341lknyz4ns63bri00mya39278xav12c73if03llsyzy5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ghc-imported-from";
+          sha256 = "063kbymk4r1yrg5ks660d2byrnia6gs6nimjzrvqfi2ib1psc7jc";
           name = "ghc-imported-from";
         };
         packageRequires = [ emacs ];
@@ -13319,12 +13510,12 @@
     git-lens = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "git-lens";
-        version = "0.4.1";
+        version = "0.4.2";
         src = fetchFromGitHub {
           owner = "pidu";
           repo = "git-lens";
-          rev = "be62df785ae14fa8652fe2cdd342d3256f8c0933";
-          sha256 = "02p73q0kl9z44b9a2bhqg03mkqx6gf61n88qlwwg4420dxrf7sbc";
+          rev = "2d1d94fd2e8a17025224ae2224c5f44d8482dc64";
+          sha256 = "1d0vk8344n4lcdcqxkv44qc7f3753mpy76hmgf8xi60kyajvjrd7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/66fd7c0642e8e61b883d2030f88892d039380475/recipes/git-lens";
@@ -13474,8 +13665,8 @@
           sha256 = "0j0w6ywhiapmx7dk20yw3zgf8803kmccnjsr664am3g85kbb644v";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/318989b10a5bf5b961b3c607730377923c8fb05b/recipes/gitconfig";
-          sha256 = "126znl1c4vwgskj7ka9id8v2bdrdn5nkyx3mmc6cz9ylc27ainm7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/gitconfig";
+          sha256 = "0lqm04nfhhhsdagrjnnagkpg7vpswd8lkd3l52lmpdh0fy16kgrf";
           name = "gitconfig";
         };
         packageRequires = [];
@@ -13925,6 +14116,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    go-guru = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, go-mode, lib, melpaBuild }:
+    melpaBuild {
+        pname = "go-guru";
+        version = "1.5.0";
+        src = fetchFromGitHub {
+          owner = "dominikh";
+          repo = "go-mode.el";
+          rev = "35f6826e435c3004dabf134d0f2ae2f31ea7b6a2";
+          sha256 = "1nd2h50yb0493wvf1h7fzplq45rmqn2w7kxpgnlxzhkvq99v8vzf";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/0cede3a468b6f7e4ad88e9fa985f0fdee7d195f5/recipes/go-guru";
+          sha256 = "01f0gz65z8d0iv8k49xl2sp6q4qnsvwhd4g8fb2irp7iclb0xmvk";
+          name = "go-guru";
+        };
+        packageRequires = [ cl-lib go-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/go-guru";
+          license = lib.licenses.free;
+        };
+      }) {};
     go-impl = callPackage ({ emacs, fetchFromGitHub, fetchurl, go-mode, lib, melpaBuild }:
     melpaBuild {
         pname = "go-impl";
@@ -13949,12 +14161,12 @@
     go-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "go-mode";
-        version = "1.4.0";
+        version = "1.5.0";
         src = fetchFromGitHub {
           owner = "dominikh";
           repo = "go-mode.el";
-          rev = "9d94107fae1b1137fb46f8cd7efc7e28f3abf2cb";
-          sha256 = "0g0vjm125wmw5nd38r3d7gc2h4pg3a9yskcbk1mzg9vf6gbhr0hx";
+          rev = "35f6826e435c3004dabf134d0f2ae2f31ea7b6a2";
+          sha256 = "1nd2h50yb0493wvf1h7fzplq45rmqn2w7kxpgnlxzhkvq99v8vzf";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/0cede3a468b6f7e4ad88e9fa985f0fdee7d195f5/recipes/go-mode";
@@ -13988,6 +14200,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    go-rename = callPackage ({ fetchFromGitHub, fetchurl, go-mode, lib, melpaBuild }:
+    melpaBuild {
+        pname = "go-rename";
+        version = "1.5.0";
+        src = fetchFromGitHub {
+          owner = "dominikh";
+          repo = "go-mode.el";
+          rev = "35f6826e435c3004dabf134d0f2ae2f31ea7b6a2";
+          sha256 = "1nd2h50yb0493wvf1h7fzplq45rmqn2w7kxpgnlxzhkvq99v8vzf";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/d806abe90da9a8951fdb0c31e2167bde13183c5c/recipes/go-rename";
+          sha256 = "1cd2nfgwnqzylbry11ahahdip8w66w5hnrndrs65ip10s08w2xki";
+          name = "go-rename";
+        };
+        packageRequires = [ go-mode ];
+        meta = {
+          homepage = "https://melpa.org/#/go-rename";
+          license = lib.licenses.free;
+        };
+      }) {};
     go-scratch = callPackage ({ emacs, fetchFromGitHub, fetchurl, go-mode, lib, melpaBuild }:
     melpaBuild {
         pname = "go-scratch";
@@ -14201,12 +14434,12 @@
     govc = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, json-mode, lib, magit-popup, melpaBuild, s }:
     melpaBuild {
         pname = "govc";
-        version = "0.13.0";
+        version = "0.14.0";
         src = fetchFromGitHub {
           owner = "vmware";
           repo = "govmomi";
-          rev = "b4a3f7a1d0352866c03f42208cddceb53fe12d16";
-          sha256 = "1f5bpjzj92ac4jvpbahydf2k894man4v2riv8k7j7fwlaknlvcvj";
+          rev = "9bfdc5ce62c0585b48b154cc460f8664dcd124c3";
+          sha256 = "0p00s08fjwh106dag9wyhikzrh0vqd4pzb852b2zrmb7zlhigx65";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/92d6391318021c63b06fe39b0ca38f667bb45ae9/recipes/govc";
@@ -14512,8 +14745,8 @@
           sha256 = "0rqpgc50z86j4waijfm6kw4zjmzqfii6nnvyix4rkd4y3ryny1x2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/grin";
-          sha256 = "0mvzwmws5pi6hpzgkc43fjxs98ngkr0jvqbclza2jbbqawifzzbk";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/grin";
+          sha256 = "0rak710fp9c7wx39qn4dc9d0xfjr5w7hwklxh99v1x1ihkla9378";
           name = "grin";
         };
         packageRequires = [];
@@ -15099,8 +15332,8 @@
           sha256 = "0pdfvqbz4wmjl15wi3k4h7myij8v63vmyiq8g9fai18f7ad2klp1";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cd0352cac399eb2072dfb788deea9cc22d902964/recipes/haxor-mode";
-          sha256 = "1y4m058whdqnkkf9s6hzi0h6w0fc8ajfawhpjj0wqjam4adnfkq5";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/haxor-mode";
+          sha256 = "0ss0kkwjyc7z7vcb89qr02p70c6m2jarr34mxmdv6ipwil58jj1s";
           name = "haxor-mode";
         };
         packageRequires = [ emacs ];
@@ -15133,12 +15366,12 @@
     helm = callPackage ({ async, emacs, fetchFromGitHub, fetchurl, helm-core, lib, melpaBuild, popup }:
     melpaBuild {
         pname = "helm";
-        version = "2.5.4";
+        version = "2.6.1";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm";
-          rev = "7a969880e7ea607517dbaa9d98da036fd9fec2fd";
-          sha256 = "0y9jg4xidb0f496fi30p1xjr73kg220qsjrzcr1i6p96qxr0qpfd";
+          rev = "9db9ed21c8d6454c60eb50c7cc935540d31abc43";
+          sha256 = "1vanva75xv52yg68mqcbxvdbrkq66qb883sjvg3fsg4slwivbiz6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7e8bccffdf69479892d76b9336a4bec3f35e919d/recipes/helm";
@@ -15238,12 +15471,12 @@
     helm-bbdb = callPackage ({ bbdb, fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-bbdb";
-        version = "1.0";
+        version = "1.1";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm-bbdb";
-          rev = "7be6ce17303422e9bc3ff1a7cb54361fcbcafc84";
-          sha256 = "1ccj9gqr407mfrvp71571w3l82v96zdr956qsdbxfdda7bm3s0j7";
+          rev = "20513422102fea4c08a0433d728a7783bb4968c8";
+          sha256 = "0ns537fimv774n1bq0r8k4qwdpapbw96linqyhx9mxp23zkhlg80";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/7025c319fcabc64576c0c6554d0d572cef697693/recipes/helm-bbdb";
@@ -15372,8 +15605,8 @@
           sha256 = "062abfb4sfpcc6fx3nrf3j0bisglrhyrg7rxwhhcqm9jhalksmdl";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/31d3cd618f2ac88860d0b11335ff81b6e2973982/recipes/helm-cider";
-          sha256 = "1fvpq1xi3xhd8w1yasac87incv1w4av5a8vn0birw8pc7a6bxv4w";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-cider";
+          sha256 = "0ykhrvh6mix55sv4j8q6614sibksdlwaks736maamqwl3wk6826x";
           name = "helm-cider";
         };
         packageRequires = [ cider emacs helm-core seq ];
@@ -15393,8 +15626,8 @@
           sha256 = "1gwg299s8ps0q97iw6p515gwn73rjk1icgl3j7cj1s143njjg122";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f98a21483682eee0950bdba3a93d178db2118e95/recipes/helm-circe";
-          sha256 = "12jfzg03573lih2aapvv5h2mi3pwqc9nrmv538ivjywix5117k3v";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-circe";
+          sha256 = "07559rg55b0glxiw787xmvxrhms14jz21bvprc5n24b4j827g9xw";
           name = "helm-circe";
         };
         packageRequires = [ circe cl-lib emacs helm ];
@@ -15448,12 +15681,12 @@
     helm-core = callPackage ({ async, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-core";
-        version = "2.5.4";
+        version = "2.6.1";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm";
-          rev = "7a969880e7ea607517dbaa9d98da036fd9fec2fd";
-          sha256 = "0y9jg4xidb0f496fi30p1xjr73kg220qsjrzcr1i6p96qxr0qpfd";
+          rev = "9db9ed21c8d6454c60eb50c7cc935540d31abc43";
+          sha256 = "1vanva75xv52yg68mqcbxvdbrkq66qb883sjvg3fsg4slwivbiz6";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7a700c5665e6d72cb4cecf7fb5a2dd43ef9bf7/recipes/helm-core";
@@ -15498,8 +15731,8 @@
           sha256 = "0s503q56acv70i5qahrdgk3nhvdpb3wa22a8jh1kvb7lykaw74ai";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/39c3ea21430473ef22d5ea9c8b2cf7ec9689883a/recipes/helm-dash";
-          sha256 = "1cnxssj2ilszq94v5cc4ixblar1nlilv9askqjp9gfnkj2z1n9cy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-dash";
+          sha256 = "032hwwq4r72grzls5ww7bjyj39c82wkcgf3k7myfcrqd3lgblrwb";
           name = "helm-dash";
         };
         packageRequires = [ cl-lib helm ];
@@ -15511,12 +15744,12 @@
     helm-descbinds = callPackage ({ fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-descbinds";
-        version = "1.12";
+        version = "1.13";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm-descbinds";
-          rev = "b4ad76372a1b9f4415322d210b3888423247693d";
-          sha256 = "1qjhk1aag3arks0pgj3k2plr6k3cvb7i45apyczka6dvz8fmwj47";
+          rev = "6d5ddc11e6cef86548bd6b3e0d840112d602659c";
+          sha256 = "03b79wdcp4im0fwadzhyc8jxl2wqvg8gmpflnznrwz3l71bi4sqq";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/447610a05422cd2f35399e43d98bf46410ff0408/recipes/helm-descbinds";
@@ -15540,8 +15773,8 @@
           sha256 = "0cfq06lray7hpnhkwnhjq18izyk2w0m4cxqg0m5nyidiwc4qssqa";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/56036d496c2a5fb1a6b32cdfcd1814944618e652/recipes/helm-dired-history";
-          sha256 = "1k0021wn6x7in4wi9lri2c9wl06pvprv950hgdwgra8m155qjfp1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-dired-history";
+          sha256 = "0qciafa42rbw0dxgkp5mbbwbrcziswmwdj2lszm0px1bip4x7yb8";
           name = "helm-dired-history";
         };
         packageRequires = [ cl-lib helm ];
@@ -15550,6 +15783,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    helm-emms = callPackage ({ cl-lib ? null, emacs, emms, fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
+    melpaBuild {
+        pname = "helm-emms";
+        version = "1.0";
+        src = fetchFromGitHub {
+          owner = "emacs-helm";
+          repo = "helm-emms";
+          rev = "ed3da37e86ea5dabc15da708335b1e439ae0777d";
+          sha256 = "0330s07b41nw9q32xhjdl7yw83p8ikj6b2qkir3y0jyx16gk10dl";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/db836b671705607f6cd9bce8229884b1f29b4a76/recipes/helm-emms";
+          sha256 = "1vq7cxnacmhyczsa4s5h1nnzc08m66harfnxsqxyrdsnggv9hbf5";
+          name = "helm-emms";
+        };
+        packageRequires = [ cl-lib emacs emms helm ];
+        meta = {
+          homepage = "https://melpa.org/#/helm-emms";
+          license = lib.licenses.free;
+        };
+      }) {};
     helm-etags-plus = callPackage ({ fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-etags-plus";
@@ -15595,12 +15849,12 @@
     helm-firefox = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-firefox";
-        version = "1.2";
+        version = "1.3";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm-firefox";
-          rev = "eed223c2b0ce7dc2af3649d27eaef1603ad01f31";
-          sha256 = "1v4kmw4hflvmy5v8mlp2mm284809alxybqszvv4j6dhjxyg4xz6a";
+          rev = "0ad34b7b5abc485a86cae6920c14de861cbeb085";
+          sha256 = "08mjsi2f9s29fkk35cj1rrparjnkm836qmbfdwdz7y51f9varjbs";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/257e452d37768d2f3a6e0a5ccd062d128b2bc867/recipes/helm-firefox";
@@ -15645,8 +15899,8 @@
           sha256 = "00ls9v3jdpz3wka90crd193z3ipwnf1b0slmldn4vb9ivrndh6wn";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/299ebd9b72b5db061d31d7ae4f00b1ce6bb9db34/recipes/helm-ghc";
-          sha256 = "1q5ia8sgpflv2hhvw7hjpkfb25vmrjwlrqz1f9qj2qgmki5mix2d";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-ghc";
+          sha256 = "0bv0sfpya1jyay9p80lv0w6h9kdp96r8lnp6nj15w660p1b51c0d";
           name = "helm-ghc";
         };
         packageRequires = [ cl-lib emacs ghc helm ];
@@ -15813,8 +16067,8 @@
           sha256 = "1imfzz6cfdq7fgrcgrafy2nln929mgh31vybk9frm7a9jpamqdxp";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/e1e1f2efa82d5097c1f5e85fba3f67b38a5b37c2/recipes/helm-hayoo";
-          sha256 = "0xdvl6q2rpfsma4hx8m4snbd05s4z0bi8psdalixywlp5s4vzr32";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-hayoo";
+          sha256 = "06nbilb6vfa8959ss5d06zbcwqxlbyi3cb5jnbdag0jnpxvv1hqb";
           name = "helm-hayoo";
         };
         packageRequires = [ haskell-mode helm json ];
@@ -15868,12 +16122,12 @@
     helm-ls-git = callPackage ({ fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-ls-git";
-        version = "1.9.0";
+        version = "1.9.1";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm-ls-git";
-          rev = "742eeb6c33253b2be581e30b5d70113cd87a581d";
-          sha256 = "1dmmz6ghi21kmwprcv174pq5m198cmsphg297ll1bhqczk51j9h5";
+          rev = "7b7b6dc2554603ad98412927f84a803625069ab3";
+          sha256 = "1s748a5abj58hd7cwzfggfnnmyzhj04gpbqqwqmskn8xlsq5qcdi";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b487b4c0db9092bb7e32aad9265b79a9d18c8478/recipes/helm-ls-git";
@@ -15889,12 +16143,12 @@
     helm-ls-hg = callPackage ({ fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-ls-hg";
-        version = "1.7.8";
+        version = "1.8.0";
         src = fetchFromGitHub {
           owner = "emacs-helm";
           repo = "helm-ls-hg";
-          rev = "fa709b6354d84e1c88ccef096d29410fa16f7f5f";
-          sha256 = "1hma79i69l8ilkr3l4b8zqk3ny62vqr1ym2blymia4ibwk4zqbda";
+          rev = "61b91a22fcfb62d0fc56e361ec01ce96973c7165";
+          sha256 = "1msrsqiwk7bg5gry5cia8a6c7ifymfyn738hk8g2qwzzw4vkxxcs";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/03a22c9ec281330c4603aec6feb04cf580dee340/recipes/helm-ls-hg";
@@ -15960,8 +16214,8 @@
           sha256 = "1srx5f0s9x7zan7ayqd6scxfhcvr3nkd4yzs96hphd87rb18apzk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/903a2b64d9a704105100d61f28cdfa8f497abd7d/recipes/helm-mode-manager";
-          sha256 = "1w9svq1kyyj8mmljardhbdvykb334nq1y18s956g4rvqyas2ciyd";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-mode-manager";
+          sha256 = "04yhqbb9cliv1922b0abpc1wrladvhyfmwn8ifqfkzaks4067rhl";
           name = "helm-mode-manager";
         };
         packageRequires = [ helm ];
@@ -16191,8 +16445,8 @@
           sha256 = "0bgpd50ningqyzwhfinfrn6gqacard5ynwllhg9clq0f683sbck2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4d7905061141721ce9f2f8ccea8fc4cf53519481/recipes/helm-proc";
-          sha256 = "1bq60giy2bs9m3hlbc5nwvy51702a98s0vqass3b290hdgki4bnx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-proc";
+          sha256 = "11mh8ny8mhdmp16s21vy9yyql56zxcgmj2aapqs5jy4yad5q62rz";
           name = "helm-proc";
         };
         packageRequires = [ helm ];
@@ -16275,8 +16529,8 @@
           sha256 = "1jy9l4an2aqynj86pw2qxpzw446xm376n2ykiz17qlimqbxhwkgz";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/931471b9df5e722d579aab378887890bf6e854a5/recipes/helm-purpose";
-          sha256 = "0am8fy7ihk4hv07a6bnk9mwy986h6i6qxwpdmfhajzga71ixchg6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-purpose";
+          sha256 = "16c9if636v7l8z5df011vdj4a3ci5kf3rdfk4g9hdbbl639yca79";
           name = "helm-purpose";
         };
         packageRequires = [ emacs helm window-purpose ];
@@ -16485,8 +16739,8 @@
           sha256 = "1pjpzccviz95zgl86yw2xda7lhlsfdddf8la8di8rka8sz79nw72";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6fe2ffb46ea763bc6fb6fb6c899be6d3a67440/recipes/helm-swoop";
-          sha256 = "1fqbhj75hcmy7c2vdd0m7fk3m34njmv5s6k1i9y94djpbd13i3d8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-swoop";
+          sha256 = "1b3nyh4h5kcvwam539va4gzxa3rl4a0rdcriif21yq340yifjbdx";
           name = "helm-swoop";
         };
         packageRequires = [ emacs helm ];
@@ -16519,16 +16773,16 @@
     helm-tramp = callPackage ({ emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-tramp";
-        version = "0.3.2";
+        version = "0.3.3";
         src = fetchFromGitHub {
           owner = "masasam";
           repo = "emacs-helm-tramp";
-          rev = "604e4630070ce2e345cbd21c2fbd8414eb064ef2";
-          sha256 = "09nbg890ppjvz1v2a3zcb198k1zq9gaa04ai4v3xynz6c3kvzyr9";
+          rev = "68d4c614830970e9eaf929882e1d395a61872bea";
+          sha256 = "0zfhdlzpy6w7prdh60nd98cwgzfqfsn87xh2kb5hi40dh8gsccfb";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4a69f0a17c4efbaea012be8e878af4060fa0c93b/recipes/helm-tramp";
-          sha256 = "1113qxl34sf27a88vpvckrfrigp8vnm42nmfrcxz156maa1g9cbv";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-tramp";
+          sha256 = "0wqnabaywkhj1fnc3wpx7czrqbja1hsqwcpixmvv0fyrflmza517";
           name = "helm-tramp";
         };
         packageRequires = [ emacs helm ];
@@ -16579,6 +16833,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    helm-w3m = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild, w3m }:
+    melpaBuild {
+        pname = "helm-w3m";
+        version = "1.0";
+        src = fetchFromGitHub {
+          owner = "emacs-helm";
+          repo = "helm-w3m";
+          rev = "280673470672c9fbc57fd6a91defeb9f6641fc8a";
+          sha256 = "0d47mqib4zkfadq26vpy0ih7j18d6n5v4c21wvr4hhg6hg205iiz";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f683fc9c7990e9ecb8a94808a7d03eb90c5569b1/recipes/helm-w3m";
+          sha256 = "1rr83ija93iqz74k236hk3v75jk0iwcccwqpqgys7spvrld0b9pz";
+          name = "helm-w3m";
+        };
+        packageRequires = [ cl-lib emacs helm w3m ];
+        meta = {
+          homepage = "https://melpa.org/#/helm-w3m";
+          license = lib.licenses.free;
+        };
+      }) {};
     helm-zhihu-daily = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
     melpaBuild {
         pname = "helm-zhihu-daily";
@@ -16642,6 +16917,48 @@
           license = lib.licenses.free;
         };
       }) {};
+    hide-lines = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "hide-lines";
+        version = "20130623.1701";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "hide-lines";
+          rev = "4bfb4c6f4769bd6c637e4c18bbf65506832fc9f0";
+          sha256 = "01cy7v9ql70bsvjz3idq23jpyb8jb61bs9ff8vf5y3fj45pc32ps";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/hide-lines";
+          sha256 = "18h5ygi6idpb5wjlmjjvjmwcw7xiljkfxdvq7pm8wnw75p705x4d";
+          name = "hide-lines";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/hide-lines";
+          license = lib.licenses.free;
+        };
+      }) {};
+    hierarchy = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "hierarchy";
+        version = "0.2.0";
+        src = fetchFromGitHub {
+          owner = "DamienCassou";
+          repo = "hierarchy";
+          rev = "d44d60d85cbeaf81d5e02ba154f4fcdca9faf7fd";
+          sha256 = "14zww0174vwf08fl9fv23faqn2byapb80rn72z4iv54p6pqykc2f";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/7aea238a2d14e9f58c0474251984b6c617b6854d/recipes/hierarchy";
+          sha256 = "0fh1a590pdq21b4mwh9wrfsmm2lw2faw18r35cdzy8fgyf89yimp";
+          name = "hierarchy";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/hierarchy";
+          license = lib.licenses.free;
+        };
+      }) {};
     highlight-blocks = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "highlight-blocks";
@@ -16779,8 +17096,8 @@
           sha256 = "09z13kv2g21kjjkkm3iyaz93sdjmdy2d563r8n7r7ng94acrn7f6";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a6da3640b72496e2b32e6ed21aa39df87af9f7f3/recipes/highlight-symbol";
-          sha256 = "0gw8ffr64s58qdbvm034s1b9xz1hynzvbk8ld67j06fxpc98qaj4";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/highlight-symbol";
+          sha256 = "01zw7xrkpgc89m55d60dx3s3kjajh5c164f64s2fzrgl9xj92h0r";
           name = "highlight-symbol";
         };
         packageRequires = [];
@@ -16947,8 +17264,8 @@
           sha256 = "1fsyj9cmqcz5nfxsfcyvpq2vqrhgl99xvq7ligviawl3x77376kw";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/48b99dd60dda3039a0e1e71bb4b796d62340279e/recipes/hl-sexp";
-          sha256 = "0kg0m20i9ylphf4w0qcvii8yp65abdl2q5flyphilk0jahwbj9jy";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/hl-sexp";
+          sha256 = "109qzk39s5l30fmrfxhkx1y6ldbw9d5xnahwdvasc8fal5j6f1bm";
           name = "hl-sexp";
         };
         packageRequires = [];
@@ -17451,8 +17768,8 @@
           sha256 = "0f1p6cnl0arcc2y1h99nqcflp7byvyf6hj6fmv5xqggs66qc72lb";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1ccca92fee3d39966df135a5c79e42d2ab621848/recipes/ido-grid-mode";
-          sha256 = "1wl1yclcxmkbfnvp0il23csdf6gprzf7fkcknpivk784fhl19acr";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ido-grid-mode";
+          sha256 = "0sq1d2fwvv247rr9lqg9x87d5h910k5ifqr9cjyskc74mvhrcsr3";
           name = "ido-grid-mode";
         };
         packageRequires = [ emacs ];
@@ -17619,8 +17936,8 @@
           sha256 = "1pwkrm98vlpzsy5iwwfksdaz3zzyi7bvdf5fglhsn4ssf47p787g";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/aa2b2745bd1f1778070954c834158c19d4cfb788/recipes/iedit";
-          sha256 = "02gjshvkcvyr58yf6vlg3s2pzls5sd54xpxggdmqajfg8xmpkq04";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/iedit";
+          sha256 = "0bh8ir6kspxjsvjww5y3b5hl3flbm2cc77jh8vnnva3z086f18mh";
           name = "iedit";
         };
         packageRequires = [];
@@ -17829,8 +18146,8 @@
           sha256 = "19jqcbiwqknlpij9q63m1p69k4zb3v1qdx0858drprc2rl1p55cd";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/eddb7acecc4948ade16ff02415484c9a16529c9c/recipes/imgix";
-          sha256 = "0dh7qsz5c9mflldcw60vc8mrxrw76n2ydd7blv6jfmsnr19ila4q";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/imgix";
+          sha256 = "1480571q6qy7wv88398kxjhd96gsdhb6ar6pa1kr5y6il0s6d5lg";
           name = "imgix";
         };
         packageRequires = [ cl-lib dash ht json s ];
@@ -17944,6 +18261,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    indium = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "indium";
+        version = "0.28";
+        src = fetchFromGitHub {
+          owner = "NicolasPetton";
+          repo = "Indium";
+          rev = "83ad172b96bb011bb705add136a7571b08f6c4c2";
+          sha256 = "16l17sldq68492xa2nbkr956hcpncalmjr1spbf1avi9z910d17l";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/4292058cc6e31cabc0de575134427bce7fcef541/recipes/indium";
+          sha256 = "024ljx7v8xahmr8jm41fiy8i5jbg48ybqp5n67k4jwg819cz8wvl";
+          name = "indium";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/indium";
+          license = lib.licenses.free;
+        };
+      }) {};
     inf-clojure = callPackage ({ clojure-mode, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "inf-clojure";
@@ -18031,12 +18369,12 @@
     inherit-local = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "inherit-local";
-        version = "1.1";
+        version = "1.1.1";
         src = fetchFromGitHub {
           owner = "shlevy";
           repo = "inherit-local";
-          rev = "e687c702adb27ce5f69fb28a47fe21a86cf84063";
-          sha256 = "11z3b1xwg6r769w3scd29lqg62fx8mp81g8dbx4klmj3clvyn69i";
+          rev = "b1f4ff9c41f9d64e4adaf5adcc280b82f084cdc7";
+          sha256 = "1fargashyqn4ga420k3ikc1akf7mw3zcarpg24gh2591p4swa0ih";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/08b978724ff26b3ea7a134d307d888c80e2a92a9/recipes/inherit-local";
@@ -18198,12 +18536,12 @@
     intellij-theme = callPackage ({ fetchFromGitLab, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "intellij-theme";
-        version = "1.0";
+        version = "1.1";
         src = fetchFromGitLab {
           owner = "fommil";
           repo = "emacs-intellij-theme";
-          rev = "c4b4a7ecdad6ed57545c114b40da9f76371f566e";
-          sha256 = "1wz6j7szb271g1baf6jj4k4kw1dfiz8l677vrazx4wyqdpmzlk0c";
+          rev = "ad207c8c3d266d566fb1e4862df154096c059171";
+          sha256 = "06slahp36mj39ri4v4k7sv3mly6cgk76m4zpc1why3h6dmd7hhyr";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cfe86071b2e84929476a771da99341f4a73cfd06/recipes/intellij-theme";
@@ -18345,12 +18683,12 @@
     ivy = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "ivy";
-        version = "0.8.0";
+        version = "0.9.1";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "swiper";
-          rev = "c24a3728538dd7d11de9f141b3ad1d8e0996c330";
-          sha256 = "19vfj01x7b8f7wyx7m51z00la2r7jcwzv0n06srkvcls0wm5s1h3";
+          rev = "f4b433436668ac09f3d1815fbfb4b71f3e0690fa";
+          sha256 = "10jffa503a6jid34smh0njnhlv27r9vyhwlpf00f13c5i8nh2xjf";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/06c24112a5e17c423a4d92607356b25eb90a9a7b/recipes/ivy";
@@ -18387,12 +18725,12 @@
     ivy-erlang-complete = callPackage ({ async, counsel, emacs, erlang, fetchFromGitHub, fetchurl, ivy, lib, melpaBuild }:
     melpaBuild {
         pname = "ivy-erlang-complete";
-        version = "0.1.5";
+        version = "0.2.1";
         src = fetchFromGitHub {
           owner = "s-kostyaev";
           repo = "ivy-erlang-complete";
-          rev = "ead155b5474b0d5b21d78ae735aea74df1e4c3af";
-          sha256 = "1lwb8hwbvalwdj1gybc4aw3w5li81mhxagkpxa0dlwxs08lq7v2y";
+          rev = "9ee63f0415e9774082993d672d8200bc7e62d715";
+          sha256 = "0wrkpl6v56k553zzksy4rh6wkwxdp027x8n0byic9phydrnsdn57";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/ac1b9e350d3f066e4e56202ebb443134d5fc3669/recipes/ivy-erlang-complete";
@@ -18426,22 +18764,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    ivy-hydra = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    ivy-hydra = callPackage ({ emacs, fetchFromGitHub, fetchurl, hydra, ivy, lib, melpaBuild }:
     melpaBuild {
         pname = "ivy-hydra";
-        version = "0.8.0";
+        version = "0.9.1";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "swiper";
-          rev = "c24a3728538dd7d11de9f141b3ad1d8e0996c330";
-          sha256 = "19vfj01x7b8f7wyx7m51z00la2r7jcwzv0n06srkvcls0wm5s1h3";
+          rev = "f4b433436668ac09f3d1815fbfb4b71f3e0690fa";
+          sha256 = "10jffa503a6jid34smh0njnhlv27r9vyhwlpf00f13c5i8nh2xjf";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/06c24112a5e17c423a4d92607356b25eb90a9a7b/recipes/ivy-hydra";
           sha256 = "1xv8nfi6dzhx868h44ydq4f5jmsa7rbqfa7jk8g0z0ifv477hrvx";
           name = "ivy-hydra";
         };
-        packageRequires = [];
+        packageRequires = [ emacs hydra ivy ];
         meta = {
           homepage = "https://melpa.org/#/ivy-hydra";
           license = lib.licenses.free;
@@ -18500,8 +18838,8 @@
           sha256 = "0vvqp6aw83bxk7j835w267m1xyl7a9a5m45h50267ahvhd9vn1sd";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/33cc202ff0f0f283da23dbe7c7bdc5a1a86fb1d8/recipes/ivy-youtube";
-          sha256 = "1llrlxbvpqahivd3wfjfwijzbngijfl786p7ligsb458s69jv1if";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ivy-youtube";
+          sha256 = "1masw9qc33valx55klfhzx0bg1hfazmn5yd9wh12q2gjsz8nxyw4";
           name = "ivy-youtube";
         };
         packageRequires = [ cl-lib ivy request ];
@@ -18577,13 +18915,13 @@
         pname = "jabber";
         version = "0.8.92";
         src = fetchgit {
-          url = "git://git.code.sf.net/p/emacs-jabber/git";
+          url = "https://git.code.sf.net/p/emacs-jabber/git";
           rev = "2999f58619dd9c20cc6cac8060c4c850a504cbbd";
           sha256 = "03x93wkd8syj2ybf5ymwcm6khx0h5nhrl8pyync1520294pq6i1i";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cff77a688d51ff2e2f03389593465990089ce83d/recipes/jabber";
-          sha256 = "1g5pc80n3cd5pzs3hmpbnmxbldwakd72pdn3vvb0h26j9v073pa8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/jabber";
+          sha256 = "0saajvfpzgcsqa7h7aa6l0bns6swr40c46md6s0d90x9lrvwp7ws";
           name = "jabber";
         };
         packageRequires = [];
@@ -18592,27 +18930,6 @@
           license = lib.licenses.free;
         };
       }) {};
-    jade = callPackage ({ company, emacs, fetchFromGitHub, fetchurl, js2-mode, lib, melpaBuild, seq, websocket }:
-    melpaBuild {
-        pname = "jade";
-        version = "0.28";
-        src = fetchFromGitHub {
-          owner = "NicolasPetton";
-          repo = "jade";
-          rev = "83ad172b96bb011bb705add136a7571b08f6c4c2";
-          sha256 = "16l17sldq68492xa2nbkr956hcpncalmjr1spbf1avi9z910d17l";
-        };
-        recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b989c1bd83f20225314b6e903c5e1df972551c19/recipes/jade";
-          sha256 = "04w7pgn0dkppi6l15rkz8b1bcpw1dsgvvijy81a6i4nkigxxlv4y";
-          name = "jade";
-        };
-        packageRequires = [ company emacs js2-mode seq websocket ];
-        meta = {
-          homepage = "https://melpa.org/#/jade";
-          license = lib.licenses.free;
-        };
-      }) {};
     jade-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "jade-mode";
@@ -18729,8 +19046,8 @@
           sha256 = "0sb9vzn6cycys31r98kxwgpn7v9aw5ck86nkskmn9hhhkrfsabii";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d7725a5b3e2aa065cc6f9bac55575151cfdc7791/recipes/jdecomp";
-          sha256 = "1s8y7q361300i7f6pany1phxzr42j8gcdv9vpin05xx15p2nr3qz";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/jdecomp";
+          sha256 = "1vgjmz7rxvgy9lprzr5b018lzqy3h0zg8913la1bzgwlm3mr68y5";
           name = "jdecomp";
         };
         packageRequires = [ emacs ];
@@ -19243,6 +19560,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    key-chord = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "key-chord";
+        version = "0.6";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "key-chord";
+          rev = "8468998946367157830df19a1e92785d22a34178";
+          sha256 = "10ldhwp9a21r9g72hzaig1h5yh2zblny0r36nf5nz6gzikfcq0cd";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/key-chord";
+          sha256 = "1g0jqmnn575h5n4figxbc5xs76zl8b1cdqa6wbi3d1p2rn3g8scr";
+          name = "key-chord";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/key-chord";
+          license = lib.licenses.free;
+        };
+      }) {};
     key-combo = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "key-combo";
@@ -19443,8 +19781,8 @@
           sha256 = "0axvhikhg4fikiz4ifg0p4a5ygphbpjs0wd0gcbx29n0y54d1i93";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7c3aa60be932d65929f453f1ce576abcd00252ed/recipes/kill-ring-search";
-          sha256 = "1pg4j1rrji64rrdv2xpwz33vlyk8r0hz4j4fikzwpbcbmni3skan";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/kill-ring-search";
+          sha256 = "1jggi6r5j2dr9y17v4cyskc0wydfdpqgp1pib5dr2kg6n6w0s5xl";
           name = "kill-ring-search";
         };
         packageRequires = [];
@@ -19506,8 +19844,8 @@
           sha256 = "07nb141hxjabin8vr14hpn80vzrjaq1b3h6p76m0bwxvzbi8765r";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/673b4ecec96562bb860caf5c08d016d6c4b89d8c/recipes/kiwix";
-          sha256 = "1z5gns3y7iv3lmczgxdbvg3wigkch4ljwcx7dc5f92q3ykm0zwhf";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/kiwix";
+          sha256 = "0x5ld557kxzx5s8ziy5axgvm1fxlq81l9gvinfgs8f257vjlki07";
           name = "kiwix";
         };
         packageRequires = [ cl-lib emacs ];
@@ -19558,6 +19896,48 @@
           license = lib.licenses.free;
         };
       }) {};
+    kubernetes = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, lib, magit, melpaBuild }:
+    melpaBuild {
+        pname = "kubernetes";
+        version = "0.6.0";
+        src = fetchFromGitHub {
+          owner = "chrisbarrett";
+          repo = "kubernetes-el";
+          rev = "494dae923b96a10853ba26f405059e8c04e72d22";
+          sha256 = "03lnflyyqags7im9gp7cq3q6fnfr9a65s62m333aydbg7dzk5pzh";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/16850227ea48f6f38102b9cdf80e0758766a24d2/recipes/kubernetes";
+          sha256 = "06357a8y3rpvid03r9vhmjgq97hmiah5g8gff32dij9424vidil9";
+          name = "kubernetes";
+        };
+        packageRequires = [ dash emacs magit ];
+        meta = {
+          homepage = "https://melpa.org/#/kubernetes";
+          license = lib.licenses.free;
+        };
+      }) {};
+    kubernetes-evil = callPackage ({ evil, fetchFromGitHub, fetchurl, kubernetes, lib, melpaBuild }:
+    melpaBuild {
+        pname = "kubernetes-evil";
+        version = "0.6.0";
+        src = fetchFromGitHub {
+          owner = "chrisbarrett";
+          repo = "kubernetes-el";
+          rev = "494dae923b96a10853ba26f405059e8c04e72d22";
+          sha256 = "03lnflyyqags7im9gp7cq3q6fnfr9a65s62m333aydbg7dzk5pzh";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/16850227ea48f6f38102b9cdf80e0758766a24d2/recipes/kubernetes-evil";
+          sha256 = "12ygfs6g9aivf2ws3lxwjm5xnd2kidhli889icpygd5v7gnk9pg8";
+          name = "kubernetes-evil";
+        };
+        packageRequires = [ evil kubernetes ];
+        meta = {
+          homepage = "https://melpa.org/#/kubernetes-evil";
+          license = lib.licenses.free;
+        };
+      }) {};
     kurecolor = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
     melpaBuild {
         pname = "kurecolor";
@@ -20080,8 +20460,8 @@
           sha256 = "1fh9wrw5irn0g3dy8gkk63csdcxgi3w2038mxx3sk6ki3r2bmhw8";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a20410e916d45e5b243e7eb3bb2226c7e1e67b00/recipes/literate-coffee-mode";
-          sha256 = "1bll1y9q3kcg3v250asjvx2k9kb314qadaq1iwanwgdlp3qvvs40";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/literate-coffee-mode";
+          sha256 = "18fdgay7xfgza75z3xma666f414m9dn7d50w94wzzmv7ja74sp64";
           name = "literate-coffee-mode";
         };
         packageRequires = [ coffee-mode ];
@@ -20101,8 +20481,8 @@
           sha256 = "1cwydbhhbs5v9y2s872zxc5lflqmfrdvnc8xz0qars52d7lg4br5";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/833e549ba618e58d9cb0b6768a08c651ad8c9e0a/recipes/live-code-talks";
-          sha256 = "173mjmxanva13vk2f3a06s4dy62x271kynsa7pbhdg4fd72hdjma";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/live-code-talks";
+          sha256 = "1ji4lww71dqxnn5c9inix8xqcmgc76wbps0ylxhhgs44ki4hlyrm";
           name = "live-code-talks";
         };
         packageRequires = [ cl-lib emacs narrowed-page-navigation ];
@@ -20227,8 +20607,8 @@
           sha256 = "0jpyd2f33pk984kg0q9hxdl4615jb7sxsggnb30mpz7a2ws479xr";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/logito";
-          sha256 = "0bk4qnz66kvhzsk88lw45209778y53kg17iih70ix4ma1x6a3v5l";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/logito";
+          sha256 = "0xi7zbxpialsn4pknj8aqmkbiwwsbapwynrrjb8avhli2hd4s3fl";
           name = "logito";
         };
         packageRequires = [ eieio ];
@@ -20240,12 +20620,12 @@
     logview = callPackage ({ datetime, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "logview";
-        version = "0.7.1";
+        version = "0.8";
         src = fetchFromGitHub {
           owner = "doublep";
           repo = "logview";
-          rev = "6409991053350ab2d3def61749b92780dd1ed095";
-          sha256 = "0phhkg3qgh4q4b7as0a00zx7kcrlmh24by1sjbp7b4dsd0mnz22k";
+          rev = "b5cafd1145f22e7beff8ef8ed742bf10af1e6e1c";
+          sha256 = "08is4fg94a6am7c2j0d5qd1nkrnik5vpzg3pqkimyxgy5czj764b";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1df3c11ed7738f32e6ae457647e62847701c8b19/recipes/logview";
@@ -20321,22 +20701,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    m-buffer = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    m-buffer = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, seq }:
     melpaBuild {
         pname = "m-buffer";
-        version = "0.14";
+        version = "0.15";
         src = fetchFromGitHub {
           owner = "phillord";
           repo = "m-buffer-el";
-          rev = "61d1ed99e528840d2eee2ce07946a9d76eb6d814";
-          sha256 = "048ls0ca9yppjj0mx6g00f1vwh4ryvv6bckihxs7ynbr2jcydjr7";
+          rev = "6eb1d2535a82707a83733173bc400a0d8e520c80";
+          sha256 = "1sx76i59razwccvn6x7rx5a124bfyjw9fcbxf4gj7nsg33qiq809";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c34d02682e87c9978a3583bd903dcac5da5b41d5/recipes/m-buffer";
           sha256 = "17smq7wlidsls870hla5b94xq2pwk24b88jvrbbcqw6f5z3ypf94";
           name = "m-buffer";
         };
-        packageRequires = [ dash emacs ];
+        packageRequires = [ seq ];
         meta = {
           homepage = "https://melpa.org/#/m-buffer";
           license = lib.licenses.free;
@@ -20353,8 +20733,8 @@
           sha256 = "0dgsl1x6r8m9vvff1ia0kmz21h0dji2jl5cqlpx1m947zh45dahj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/17df4dccdffff6ef7b4900565ae64c1cf84c1fda/recipes/macro-math";
-          sha256 = "1r7splwq5kdrdhbmw5zn81vxymsrllgil48g8dl0r60293384h00";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/macro-math";
+          sha256 = "072ycszl4cjc9nvv4axsgyfzz9djpgh4y1xqfr1nxi41nsdfc9kn";
           name = "macro-math";
         };
         packageRequires = [];
@@ -20374,8 +20754,8 @@
           sha256 = "0g9bnq4p3ffvva30hpll80dn3i41m51mcvw3qf787zg1nmc5a0j6";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/362b5cb71e81172bc654594c08a5d0b91262851a/recipes/macrostep";
-          sha256 = "1wjibxbdsp5qfhq8xy0mcf3ms0q74qhdrhqndprn6jh3kcn5q63c";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/macrostep";
+          sha256 = "1h1gag21x05a14j0wbg0lg502fq2hbqfhjlg05kysw9f870whfq2";
           name = "macrostep";
         };
         packageRequires = [ cl-lib ];
@@ -20436,12 +20816,12 @@
     magit-annex = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, magit, melpaBuild }:
     melpaBuild {
         pname = "magit-annex";
-        version = "1.3.0";
+        version = "1.3.1";
         src = fetchFromGitHub {
           owner = "magit";
           repo = "magit-annex";
-          rev = "74e0343b4152ad5c0d4f77f9f15dd6f1b02de432";
-          sha256 = "08mpnj9c43p528iy3hj8yljhzpkpjxkjiaiiss5n2jgyyc64hw9z";
+          rev = "ae6250aead8f283eac8d6951a249cfc7d85e0b40";
+          sha256 = "0n6dhc92z5w67rcfngjzprzbdn42ja263gdqa7fncqq9p66slccq";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-annex";
@@ -20675,8 +21055,8 @@
           sha256 = "0nd9q3x60pydigyrp7b00xgnw7pgb0plh6mry7pj1532z3xxz1d7";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4605012c9d43403e968609710375e34f1b010235/recipes/magithub";
-          sha256 = "1c3rbav13rw16ngjhjwnz80v653k8df63fkw0kayd80xrkxhrkxw";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/magithub";
+          sha256 = "11par5rncsa866gazdw98d4902rvyjnnwbiwpndlyh06ak0lryab";
           name = "magithub";
         };
         packageRequires = [ emacs git-commit magit s with-editor ];
@@ -20738,8 +21118,8 @@
           sha256 = "0hwxwwjzjxv2mmkxmalr2hp3x8apwcyvn2bz4d4yd4wrzcscay97";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/909a2d78f49a11e3f90e7d3c7f8af55e15113442/recipes/malinka";
-          sha256 = "1245mpxsxwnnpdsf0pd28mddgdfhh7x32a2l3sxfq0dyg2xlgvrp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/malinka";
+          sha256 = "1zmnlgy9k1s1s2wgkhlwfsnknmhggy0rx3l495a5x1kqsx6i0c9y";
           name = "malinka";
         };
         packageRequires = [ cl-lib dash f projectile rtags s ];
@@ -20955,8 +21335,8 @@
           sha256 = "0nk2rm14ccwrh1aaxzm80rllsz8g38h9w52m0pf3nnwh6sa757nk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/70a3b6a7b43c76b0ce3b350f5c8d657bf4f7fb04/recipes/markup-faces";
-          sha256 = "12z92j9f0mpn7w2qkiwg54wh743q3inx56q3f8qcpfzyks546grq";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/markup-faces";
+          sha256 = "06fawlv4ih2lsmk7x6h9p5rppl8vw2w3nvlss95kb8fj5fwf7mw9";
           name = "markup-faces";
         };
         packageRequires = [];
@@ -21060,8 +21440,8 @@
           sha256 = "08gbkd8wln89j9yxp0zzd539hbwy1db31gca3vxxrpszixx8280y";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/7944652cb7a7bf45f16e86ea379a104d31861e76/recipes/maxframe";
-          sha256 = "10cwy3gi3xb3pfdh6xiafxp3vvssawci3y26jda6550d0w5vardj";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/maxframe";
+          sha256 = "1lxj60qcvv8vakdq79k1brzv3ki74kajrx8620dzx76bnfkryxk8";
           name = "maxframe";
         };
         packageRequires = [];
@@ -21157,12 +21537,12 @@
     meghanada = callPackage ({ company, emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, yasnippet }:
     melpaBuild {
         pname = "meghanada";
-        version = "0.7.2";
+        version = "0.7.4";
         src = fetchFromGitHub {
           owner = "mopemope";
           repo = "meghanada-emacs";
-          rev = "1ddaca25ee978736dcb3922bb1952d750c39cd5a";
-          sha256 = "09g81d1l5mhji4vbljxgfrgr0051sv7kqy0vwf7awxa4slgl6bnd";
+          rev = "9c97a5c23b016cd9dec3c22f626f2ec22c5035c1";
+          sha256 = "1nx84c7akgjrbql9jjb4gj3j09iai8k3g3wrwam61fblqm5ckhny";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/4c75c69b2f00be9a93144f632738272c1e375785/recipes/meghanada";
@@ -21891,12 +22271,12 @@
     mowedline = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "mowedline";
-        version = "3.0.0";
+        version = "3.1.0";
         src = fetchFromGitHub {
           owner = "retroj";
           repo = "mowedline";
-          rev = "9645c431e921317721ba8dea9ce713d235f94726";
-          sha256 = "14kpj1fh3p8asnxwb0jl3b6r32b7zplxyl5hvbgkal687b1gx50w";
+          rev = "67ca629b4bc3063ea19a7fccc693432a4eb10021";
+          sha256 = "0i06ms5m7qhv2m1mmgzqh73j9wz3nxygz65p6vsnicxas09w70rd";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/86f7df6b8df3398ef476c0ed31722b03f16b2fec/recipes/mowedline";
@@ -22014,6 +22394,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    mtg-deck-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "mtg-deck-mode";
+        version = "0.2";
+        src = fetchFromGitHub {
+          owner = "mattiasb";
+          repo = "mtg-deck-mode";
+          rev = "7774641630ef85999ab2f6d57eebddbc7c1e7244";
+          sha256 = "12ajrlgyj14jf66if7bdgj69jm72wzrmiclx7x8dpsz4zpj38m20";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/425fa66cffe7bfda71de4ff2b49e951456bdeae1/recipes/mtg-deck-mode";
+          sha256 = "07hszf33nawhp218f90qr4s713yyjdd7zzkq0s8q0fb6aai5iiih";
+          name = "mtg-deck-mode";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/mtg-deck-mode";
+          license = lib.licenses.free;
+        };
+      }) {};
     mu4e-alert = callPackage ({ alert, emacs, fetchFromGitHub, fetchurl, ht, lib, melpaBuild, s }:
     melpaBuild {
         pname = "mu4e-alert";
@@ -22025,8 +22426,8 @@
           sha256 = "09sywhf1g8yqadzp19djar2gm3fmilqi3pbdm0hvm9b7xpq1gg44";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5a48e8cb571e91b582ff0dea18e8dc75601edc35/recipes/mu4e-alert";
-          sha256 = "15nwj09iyrvjsc9lrxla6qa0s8izcllxghw5gx3ffncfcrx2l8qm";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mu4e-alert";
+          sha256 = "0b74ky51nx75vcrrbabr5cj2cx4yax5kgaq479hjp5yc5mq2q46r";
           name = "mu4e-alert";
         };
         packageRequires = [ alert emacs ht s ];
@@ -22046,8 +22447,8 @@
           sha256 = "1lyd8pcawn106zwlbq6gdq05i2zhry1qh9cdyjiw61nvgbbfi0yx";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3b20c61c62309f27895f7427f681266e393ef867/recipes/mu4e-maildirs-extension";
-          sha256 = "1xz19dxrj1grnl7wy9qglh08xb3dr509232l3xizpkxgqqk8pwbi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mu4e-maildirs-extension";
+          sha256 = "0bisxm0rph5q1p3zjr7vyyr0jqr3ihs6ihiwyfr8d3dvba1zhffc";
           name = "mu4e-maildirs-extension";
         };
         packageRequires = [];
@@ -22098,6 +22499,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    multi-term = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "multi-term";
+        version = "1.2";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "multi-term";
+          rev = "c9e67edb772f2d9f9da8d887dc746459cfbce244";
+          sha256 = "1bn6zx931vz2fa72ab999r33bxv8brn3cqmalvq25x7s4z3q1lyi";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/multi-term";
+          sha256 = "16idk4nd7qpyrvyspbrdl8gdfaclng6ny0xigk6fqdv352djalal";
+          name = "multi-term";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/multi-term";
+          license = lib.licenses.free;
+        };
+      }) {};
     multi-web-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "multi-web-mode";
@@ -22151,8 +22573,8 @@
           sha256 = "15gw4d0hp15rglsj8hzd290li4p0kadj2dsz0dgfcxld7hnimihk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d5f7e5f7e9c551a149e9d433173bd8c8613487ed/recipes/mustache-mode";
-          sha256 = "076ar57qhwcpl4n634ma827r2rh61670778wqr5za2444a6ax1gs";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mustache-mode";
+          sha256 = "1xmqh663r5i42a586xn0wzw6h1jkvhbnw5iwvjv96w452slhkr36";
           name = "mustache-mode";
         };
         packageRequires = [];
@@ -22214,8 +22636,8 @@
           sha256 = "1gxp1a26sna0p3xq6by8bk4yphhh32bvll0sdm2p3wkpdaci7hyz";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ca23f61be1dc8b0ae2ec0ae38d4614cf9c855023/recipes/mysql-to-org";
-          sha256 = "13ysgvqp7bafiaz0f9kg4pq2idndj4r804q6ih64bac8gqhnmcv9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mysql-to-org";
+          sha256 = "0jjdv6ywdn1618l36bw3xa3mdgg3rc8r0rdv9xdqx8mmg648a7gj";
           name = "mysql-to-org";
         };
         packageRequires = [ emacs s ];
@@ -22235,8 +22657,8 @@
           sha256 = "0amhw630hgc0j8wr8m6aav399ixi3vbwrck79hhlr3pmyh91vv7n";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/806273d9898331b9b0189a72d9fdd43c86e1224c/recipes/name-this-color";
-          sha256 = "12nrk1ww766jb4gb4iz6w485nimh2iv8wni2jq4l38v8ndh490zb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/name-this-color";
+          sha256 = "15x3dp135p45gv4qn4ll3pd6zqi4glcpv6fzvjxnx0dcval9z4d8";
           name = "name-this-color";
         };
         packageRequires = [ cl-lib dash emacs ];
@@ -22376,14 +22798,14 @@
         pname = "navi-mode";
         version = "2.0";
         src = fetchFromGitHub {
-          owner = "tj64";
+          owner = "alphapapa";
           repo = "navi";
           rev = "5c979b3b3873b0e67751a1321a9e271d066f2022";
           sha256 = "15jh1lsgqfnpbmrikm8kdh5bj60yb96f2as2anppjjsgl6w96glh";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4a06141b0ee1e10bc3f16fcca35d971dc7e9d07e/recipes/navi-mode";
-          sha256 = "0f5db983w9kxq8mcjr22zfrm7cpxydml4viac62lvab2kwbpbrmi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/8edf78a0ecd2ff8e6e066b80751a31e11a068c3f/recipes/navi-mode";
+          sha256 = "0pc52iq8lng2g0vpnrhdfxmibc1dx9ksmrjg0303as1yv41fnc69";
           name = "navi-mode";
         };
         packageRequires = [];
@@ -22445,8 +22867,8 @@
           sha256 = "19xxg4ya6vndk2ljdnl284zs8qf9dkq4ghr7pmsclp9n7zh46v48";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8477d0cf950efcfd9a85618a5ca48bff590b22d7/recipes/nemerle";
-          sha256 = "0698hbgk80w7wp0ssx9pl13aapm7rc6l3y2zydfkyqdfwy5y71v6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/nemerle";
+          sha256 = "1rbalq3s2inwz9cf6bfmnxgqd9ylba3crflfjs6b4mnp33z4swny";
           name = "nemerle";
         };
         packageRequires = [];
@@ -22626,12 +23048,12 @@
     no-littering = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "no-littering";
-        version = "0.5.5";
+        version = "0.5.6";
         src = fetchFromGitHub {
           owner = "tarsius";
           repo = "no-littering";
-          rev = "63bf66630f48403f536f96f8a0d5b5fab46eac9b";
-          sha256 = "0qi706xafi05rqpdz87sayqb728f5qisln2i3yicymr0wy93x76i";
+          rev = "0227c5eea5b9f3fb056a7ef6052ef6f076371bde";
+          sha256 = "0hjb2paylmcc68998cqgfdnw79z43ha5bv1cg91ysbdjcx2lp1x7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/cf5d2152c91b7c5c38181b551db3287981657ce3/recipes/no-littering";
@@ -22689,12 +23111,12 @@
     nord-theme = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "nord-theme";
-        version = "0.1.2";
+        version = "0.2.0";
         src = fetchFromGitHub {
           owner = "arcticicestudio";
           repo = "nord-emacs";
-          rev = "5327be91c155eb9fed19061a0f02619dd4284c64";
-          sha256 = "15gjcrx514790djsyfmm8z8q36a3kyf4yhrms5qj423hfc94d3s7";
+          rev = "a49113a0808ef53d066068e227d3d5a4d7f0ad44";
+          sha256 = "04jj25h1infivqdvcgq0cbc96y2rj2c23y6vw6yh73x4kyynzvcc";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/31cb60069825abe3998c8b43bc9177b39a7f3659/recipes/nord-theme";
@@ -22716,8 +23138,8 @@
           sha256 = "07bhzddaxdjd591xmg59yd657a1is0q515291jd83mjsmgq258bm";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/nose";
-          sha256 = "0l77hsmn3qk934ppdav1gy9sq48g0v1dzc5qy0rp9vv4yz2jx2jk";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/nose";
+          sha256 = "1xdqsxq06x2m9rcfn1qh89g0mz1rvzl246d3sfmciwcyl932x682";
           name = "nose";
         };
         packageRequires = [];
@@ -22728,11 +23150,11 @@
       }) {};
     notmuch = callPackage ({ fetchgit, fetchurl, lib, melpaBuild }: melpaBuild {
         pname = "notmuch";
-        version = "0.24";
+        version = "0.24.1";
         src = fetchgit {
           url = "git://git.notmuchmail.org/git/notmuch";
-          rev = "e60b44ecf8bd5934959727496c7ef3016ff80cf6";
-          sha256 = "1q81ibvhjvnz4hbwmdna3a1xjkik21avy5im89fnkhq068kwac2j";
+          rev = "e64fdf889d0f78543557f5b72ebca1571caf497e";
+          sha256 = "0vappcyidhzka2za6zqlcygn90a1xm9xrhpr9gvdp258m8qhz6d1";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b19f21ed7485036e799ccd88edbf7896a379d759/recipes/notmuch";
@@ -22882,8 +23304,8 @@
           sha256 = "1624jj922l0bbav1v8szdr0lpyx0ng959fg3sspg1j15kgkir8kf";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/1943a1986775952bedd78430ee41b67af130c439/recipes/nvm";
-          sha256 = "03gy7wavc2q02lnr9pmp3l1pn0lzbdq0kwnmg9fvklmq6r6n3x34";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/nvm";
+          sha256 = "0md1ybc2r2fxykwk21acjhdzy2kw326bdwa1d15c6f48lknzvg4w";
           name = "nvm";
         };
         packageRequires = [ dash dash-functional f s ];
@@ -23050,8 +23472,8 @@
           sha256 = "0rn3j88ry38500vfaj0myx148nd5kh1jwja6j221ydd6v5wqws6d";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6142975cf9c0b9faaf128be34d30e12a88b500f8/recipes/ob-spice";
-          sha256 = "13a6g9sh6wvlshvzlllxn8zchb6cb2m0ar14fqvrz5g4hn4hbsm8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ob-spice";
+          sha256 = "0nhdcvq7yvprz4323836k507w0g1lh3rdfr6dqrbj29yvsqfw0x2";
           name = "ob-spice";
         };
         packageRequires = [ org spice-mode ];
@@ -23249,15 +23671,36 @@
           license = lib.licenses.free;
         };
       }) {};
+    omni-quotes = callPackage ({ dash, f, fetchFromGitHub, fetchurl, ht, lib, melpaBuild, omni-log, s }:
+    melpaBuild {
+        pname = "omni-quotes";
+        version = "0.3.0";
+        src = fetchFromGitHub {
+          owner = "AdrieanKhisbe";
+          repo = "omni-quotes.el";
+          rev = "be1e719c046ca468275ed844989320f48358f2cd";
+          sha256 = "0sc4mhvxj91rs4h1vg3x759fq77cmlzkqyn5wv456w3w3g2narxw";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3402524f79381c99fdeb81a6a5a9241c918811be/recipes/omni-quotes";
+          sha256 = "0dqki0ibabs9cpcjvnh8lc2114x46i1xmnyjc6qqblfxa3ggdygs";
+          name = "omni-quotes";
+        };
+        packageRequires = [ dash f ht omni-log s ];
+        meta = {
+          homepage = "https://melpa.org/#/omni-quotes";
+          license = lib.licenses.free;
+        };
+      }) {};
     omni-scratch = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "omni-scratch";
-        version = "0.1.1";
+        version = "0.4.1";
         src = fetchFromGitHub {
           owner = "AdrieanKhisbe";
           repo = "omni-scratch.el";
-          rev = "517b340427d5906002234832a01d0bc1ad27bac5";
-          sha256 = "1rfs6z56pnacy6m7yvm2hrb0ykfvaiyichivcmb9ssdgqp92cbxx";
+          rev = "0da549c1386f93ed4de201bf8779ba64ddc91347";
+          sha256 = "0qfi54z2jqrkrdzriandwc9myzc27sxsx7nf20jf5qvcdgn13cl1";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/6ba3e128a7fe4476d82266506b18ba9984c37944/recipes/omni-scratch";
@@ -23291,15 +23734,15 @@
           license = lib.licenses.free;
         };
       }) {};
-    omnisharp = callPackage ({ auto-complete, cl-lib ? null, csharp-mode, dash, fetchFromGitHub, fetchurl, flycheck, json ? null, lib, melpaBuild, popup, s }:
+    omnisharp = callPackage ({ auto-complete, cl-lib ? null, csharp-mode, dash, fetchFromGitHub, fetchurl, flycheck, json ? null, lib, melpaBuild, popup, s, shut-up }:
     melpaBuild {
         pname = "omnisharp";
         version = "3.9";
         src = fetchFromGitHub {
           owner = "OmniSharp";
           repo = "omnisharp-emacs";
-          rev = "bcc5d7ba940c1118ab61071783747162f0c927cf";
-          sha256 = "05i3z6whvgq81qnrwgvfglhwi214145ksg8h81rc0g4ir54wzsik";
+          rev = "93c188938305533ea34ceca51dd53c7841598ada";
+          sha256 = "0ynjxf0r9i5yb98pnhrcm55shhv4gqfr0wigfkz83yqzpsjzq6fn";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/68bdb7e0100e120b95e9416398127d83530a221d/recipes/omnisharp";
@@ -23315,6 +23758,7 @@
           json
           popup
           s
+          shut-up
         ];
         meta = {
           homepage = "https://melpa.org/#/omnisharp";
@@ -23521,8 +23965,8 @@
           sha256 = "0vf77wc1pq9dfqkrnagkxfg7klwyaichms492jsp0dh5warnw7hm";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/042745d47c379778195ed798ca5e0130e4877271/recipes/org-babel-eval-in-repl";
-          sha256 = "00x4idm9a5ddng74axm4xjnw7z89qv3yav8j8rw2z1jf5cgbgah6";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-babel-eval-in-repl";
+          sha256 = "0brqp0w9s28ibws4idlm1rw09lsfa98l5wbpwm64rvlixhs6zlnx";
           name = "org-babel-eval-in-repl";
         };
         packageRequires = [ emacs eval-in-repl ];
@@ -23555,12 +23999,12 @@
     org-board = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "org-board";
-        version = "1011";
+        version = "1018";
         src = fetchFromGitHub {
           owner = "scallywag";
           repo = "org-board";
-          rev = "53469a2f0577924de1c7d887fecea409d17fd588";
-          sha256 = "0fg7lkgcr7zwwjald7hbvwgl72m21lqxmz7p8sq31iw3jh42fqgf";
+          rev = "405bfd630f1b31bd77158bc8e79aab86812cba65";
+          sha256 = "066shdqp0bca2xlds1m0c5ml3yxqfyzsyyy7sy72ybv41n5b11x3";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d8063ee17586d9b1e7415f7b924239826b81ab08/recipes/org-board";
@@ -23765,12 +24209,12 @@
     org-jira = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, request }:
     melpaBuild {
         pname = "org-jira";
-        version = "2.6.3";
+        version = "2.7.0";
         src = fetchFromGitHub {
           owner = "ahungry";
           repo = "org-jira";
-          rev = "1e4def3c7b9bbcf9f1b2c6d6582de60c4cdf50da";
-          sha256 = "06vpag5gd72ckm6vnyk2gv612ds3sml117da40xz3m794779brvr";
+          rev = "ab86b343634acaaa04b81ecea511a38e975977d1";
+          sha256 = "19sd42w91gzhd0qxgymi09ms0kn6yhv3kdpky1n6l5mkpbv3kp39";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/730a585e5c9216a2428a134c09abcc20bc7c631d/recipes/org-jira";
@@ -23981,8 +24425,8 @@
           sha256 = "0lrcj3mcdfcdrndivhj5ds386zrsy78sfg0i8126wwwc5lfh48vq";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/aadf708e55ddfe13d93d124681a5e6f97a690d79/recipes/org-pdfview";
-          sha256 = "1z4gb5lw7ngphixw06b5484kwlxbc098w2xshzml5sywr16a4iab";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-pdfview";
+          sha256 = "1qhlmzf2ffcrjnx4yghv7n6rsry8bcwnkw489spgraq9vxvqklah";
           name = "org-pdfview";
         };
         packageRequires = [ org pdf-tools ];
@@ -24023,8 +24467,8 @@
           sha256 = "03zy2bb1ha22xpx29d8610yrqfyaiaa8vgplpx6bmixaw85mcv58";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3dde8c06c968d4375926d269150a16b31c3a840e/recipes/org-projectile";
-          sha256 = "078s77wms1n1b29mrn6x25sksfjad0yns51gmahzd7hlgp5d56dm";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org-projectile";
+          sha256 = "1kkgi49bvdwz50x32lqdj2ii02mxv8i4dr1asr8zk6mdg0fwlqpf";
           name = "org-projectile";
         };
         packageRequires = [ dash emacs projectile ];
@@ -24411,8 +24855,8 @@
           sha256 = "0av1477jn3s4s5kymd7sbb0av437vb5mnfc6rpfgzwji7b8mfr7l";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8b57b6d755b3855ccfe0a90eada939fb7a852b40/recipes/org2blog";
-          sha256 = "0ancvn4ji4552k4nfd2ijclsd027am93ngg241ll8f6h6k0wpmzq";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org2blog";
+          sha256 = "1xa03k9z8fq74w0w3vfkigz24i6c8s4vib077l16vqik7wg4yh40";
           name = "org2blog";
         };
         packageRequires = [ metaweblog org xml-rpc ];
@@ -24657,14 +25101,14 @@
         pname = "outorg";
         version = "2.0";
         src = fetchFromGitHub {
-          owner = "tj64";
+          owner = "alphapapa";
           repo = "outorg";
           rev = "e946cda497bae53fca6fa1579910237e216170bf";
           sha256 = "1v9kx5xr7xcr6i664h2g6j8824yjsjdn5pvgmawvxrrplbjmiqnp";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d57762fe51a524731e228c80b4b2d25e827e5858/recipes/outorg";
-          sha256 = "04swss84p33a9baa4swqc1a9lfp6wziqrwa7vcyi3y0yzllx36cx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/8edf78a0ecd2ff8e6e066b80751a31e11a068c3f/recipes/outorg";
+          sha256 = "10jh64d1nalfig69nnsib46915jinv37lvmxa0aj91zymq2szdm9";
           name = "outorg";
         };
         packageRequires = [];
@@ -24678,14 +25122,14 @@
         pname = "outshine";
         version = "2.0";
         src = fetchFromGitHub {
-          owner = "tj64";
+          owner = "alphapapa";
           repo = "outshine";
           rev = "cf1097692b3ea0367d3c821769399fec5831e200";
           sha256 = "1v04iyx57w8scw3iqrivii7q0sh8sa7xacswdhd18mw9kvjrbj98";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/6dc02a576abb8e115f674a9d896f8bc932b7571b/recipes/outshine";
-          sha256 = "1ajddzcrnvfgx3xa5wm0bcll9dax52syg1p521mv0ffkld63jyfl";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/8edf78a0ecd2ff8e6e066b80751a31e11a068c3f/recipes/outshine";
+          sha256 = "1qqmvs17hq5s047nqplg4sa09xg5ck6zwqyg91xmbh71bx80v28v";
           name = "outshine";
         };
         packageRequires = [];
@@ -24726,8 +25170,8 @@
           sha256 = "0jz8p6bwpfncxwi6ssmi6ngx8sjjica565i6ln0gsr5i11zfb7nx";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/82e6b86f20a2d2d687b13091da31150c467bf271/recipes/overseer";
-          sha256 = "04wfwcal051jrnmm5dga6vl4c9j10pm416586yxb8smi6fxws2jg";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/overseer";
+          sha256 = "0zbh0j21h6wsqnqvnzai6y6rpccdciksb7g64qw7fx0cpg5x2ms8";
           name = "overseer";
         };
         packageRequires = [ dash emacs pkg-info ];
@@ -24760,12 +25204,12 @@
     ox-epub = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, org }:
     melpaBuild {
         pname = "ox-epub";
-        version = "0.1.6";
+        version = "0.2.1";
         src = fetchFromGitHub {
           owner = "ofosos";
           repo = "ox-epub";
-          rev = "edc253b6f7397ac89a3a0b2d2a05e650baa483f8";
-          sha256 = "0kvs5kpkly45fqdb7mka1w2yn7pks95gxgiy2ayx12cgvn3inyw6";
+          rev = "113300ed2c66cca10624e6d7bf5ff0a72e05653a";
+          sha256 = "1xj643jybrd6idn6bazp0canj8pm9v3gs199fa17hlag7151ancw";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c3ac31dfef00e83fa6b716ea006f35afb5dc6cd5/recipes/ox-epub";
@@ -24831,8 +25275,8 @@
           sha256 = "0kd45p8y7ykadmai4jn1x1pgpafyqggwb1ccbjzalxw4k9wmd45f";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3263133ba6dde790a364bad7c96144912971ba2d/recipes/ox-twbs";
-          sha256 = "15csgnph5wh2dvcc2dnvrlm7whh428rq8smqji1509ib7aw9y5mx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ox-twbs";
+          sha256 = "050rv270jlkc1v7wp47cv9cwr9pz3n840dd4jxxhfs6s47b9ln73";
           name = "ox-twbs";
         };
         packageRequires = [];
@@ -24999,8 +25443,8 @@
           sha256 = "1wp974716ih2cz9kdmdz7xwjy1qnnfzdzlfr9kchknagw8d9nn12";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/22b6035987994c11d5e2564862efb1e56848c3b6/recipes/page-break-lines";
-          sha256 = "0q1166z190dxznzgf2f29klj2jkaqlic483p4h3bylihkqp93ij7";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/page-break-lines";
+          sha256 = "0i5kx191wnq9763jyqxbyh33hvdaqbd98a1rhgqd97zhvg0hslz1";
           name = "page-break-lines";
         };
         packageRequires = [];
@@ -25139,13 +25583,13 @@
         pname = "paredit";
         version = "24";
         src = fetchgit {
-          url = "http://mumble.net/~campbell/git/paredit.git";
+          url = "https://mumble.net/~campbell/git/paredit.git";
           rev = "82bb75ceb2ddc272d6618d94874b7fc13181a409";
           sha256 = "13wzz5fahbz5svc4ql3ajzzpd1fv0ynwpa5widklbcp5yqncv1vm";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2d83b5d24db3527e48e3de40c320255bc2dbfccb/recipes/paredit";
-          sha256 = "1rp859y4qyqdfvp261l8mmbd62p1pw0dypm1mng6838b6q6ycakr";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/paredit";
+          sha256 = "01qh8kfb5hyfi0jfl1kq3inkyzr0rf3wncmzgxlkfdc8zlq4v653";
           name = "paredit";
         };
         packageRequires = [];
@@ -25346,11 +25790,11 @@
     password-store = callPackage ({ f, fetchgit, fetchurl, lib, melpaBuild, s }:
     melpaBuild {
         pname = "password-store";
-        version = "1.7";
+        version = "1.7.1";
         src = fetchgit {
           url = "http://git.zx2c4.com/password-store";
-          rev = "20081b546f371dcaee9ea2769f46e513bb39c275";
-          sha256 = "1d650s6nid8aidq0ypc7jb6sdbxb6255qr5sb1hvc5gx1ycyl6vs";
+          rev = "38ec1c72e29c872ec0cdde82f75490640d4019bf";
+          sha256 = "04rqph353qfhnrwji6fmvrbk4yag8brqpbpaysq5z0c9l4p9ci87";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e204fb4d672220ee1a4a49975fd3999916e60f8c/recipes/password-store";
@@ -25479,8 +25923,8 @@
           sha256 = "1jkdyacpcvbsm1g2rjpnk6hfr01r3j5ibgh09441scz41v6xk248";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/pcache";
-          sha256 = "1q2wlbc58lyf3dxfs9ppdxvdsp81jmkq874zbd7f39wvc5ckbz0l";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/pcache";
+          sha256 = "0wwx20x6gzlli3hh4zd9pfv2cmqfm38xbl9p4vsgy08q1rm5agva";
           name = "pcache";
         };
         packageRequires = [ eieio ];
@@ -25709,8 +26153,8 @@
           sha256 = "12c2rrhysrcl2arc6hpzv6lxbb1r3bzlvdp23hnp9sci6yc10k3q";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/0bf5d4356424b492579a029f58dd4685ff5aaf39/recipes/perspective";
-          sha256 = "150dxcsd0ylvfi9mmfpcki1wd3nl8q9mbszd3dgqfnm40yncklml";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/perspective";
+          sha256 = "021ax1c2ys82dcjs5jl7b4nb83n6gax2imnpm030rcbihjl1lzm7";
           name = "perspective";
         };
         packageRequires = [ cl-lib ];
@@ -25730,8 +26174,8 @@
           sha256 = "0mi7ipx0zg0vrm9da24i4j0300xj0dm3jjg35f466pm3a7xafrsg";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/19bead132fbc4c179bfe8720c28424028c9c1323/recipes/perspeen";
-          sha256 = "1g8qp7d5h9nfki6868gcbdf9bm696zgd49nsghi67wd2x7hq66x1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/perspeen";
+          sha256 = "0kwmllas9vnppsfaviy58d0nk4hmlqp566mfr4l53x46sybv1y04";
           name = "perspeen";
         };
         packageRequires = [];
@@ -26024,8 +26468,8 @@
           sha256 = "0nk12dcppdyhav6m6yf7abpywyd7amxd4237zsfd32w4zxsx39k1";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/73fc80e94c98ff304a521466c6577c96a10e79a8/recipes/pkg-info";
-          sha256 = "0whcvralk76mfmvbvwn57va5dkb1irj7iwffgddi7r0ima49iszx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/pkg-info";
+          sha256 = "1k23hmpcq534060qcxbrv4g6bw9nzcbjg192mbdp20kwidw7p81n";
           name = "pkg-info";
         };
         packageRequires = [ epl ];
@@ -26227,13 +26671,13 @@
         pname = "po-mode";
         version = "0.19.8.1";
         src = fetchgit {
-          url = "git://git.savannah.gnu.org/gettext.git";
+          url = "https://git.savannah.gnu.org/git/gettext.git";
           rev = "c737bf843616ca984c9416048a2da845e9ad3f50";
           sha256 = "0hlvnq3cigpb8f4yxy2llcmmn0b38prlb1awwy6zl5fwwi9ksrwk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/9317ccb52cdbaa2b273f8b2e8a598c9895b1cde1/recipes/po-mode";
-          sha256 = "1hb9vrr2x6mh0yzckmx9fk6535d6r189974n4bizpr1xdikn7dgp";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/po-mode";
+          sha256 = "0km19n87iqd6m6n23h46b6225zyvava9jbx6b8frna3sjwb4ls7w";
           name = "po-mode";
         };
         packageRequires = [];
@@ -26568,8 +27012,8 @@
           sha256 = "1whnk1902f8q03clm9xlfl47gkpsywf3mx0ykp70c1q496ab39qj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/04686b7a450ccd4631ecf1d9bcd51572c21fd20d/recipes/prodigy";
-          sha256 = "032868bgy2wmb2ws48lfibs4118inpna7mmml8m7i4m4y9ll6g85";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/prodigy";
+          sha256 = "0lfxb80jqjnzssjs6l511jcsmhkpzb5rh5czrb16dkqcz0cl5b2p";
           name = "prodigy";
         };
         packageRequires = [ dash emacs f s ];
@@ -26853,12 +27297,12 @@
     protobuf-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "protobuf-mode";
-        version = "3.2.0";
+        version = "3.2.1";
         src = fetchFromGitHub {
           owner = "google";
           repo = "protobuf";
-          rev = "593e917c176b5bc5aafa57bf9f6030d749d91cd5";
-          sha256 = "120g0bg7ichry74allgmqnh7k0z2sdnrrfklb58b7szzn4zcdz14";
+          rev = "b50c9ec1223895973d0e2fa6b6cb74ec3c8f3ce8";
+          sha256 = "17drjxry365als0drs56gzdpdjhkhjwg9jwvrhmq5dp9ly0rb2f4";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b4e7f5f641251e17add561991d3bcf1fde23467b/recipes/protobuf-mode";
@@ -26916,12 +27360,12 @@
     psession = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "psession";
-        version = "1.1";
+        version = "1.3";
         src = fetchFromGitHub {
           owner = "thierryvolpiatto";
           repo = "psession";
-          rev = "138b27f57bdc3ff53ec5896439e8ed00294a5ea2";
-          sha256 = "0msa8c29djhy5h3zpdvx25f4y1c50rgsk8iz6r127psrxdlfrvg8";
+          rev = "3488f7777486aa6c85ebc04d011860163d3cf0fc";
+          sha256 = "0v9pg9ywwdqmahmmhg4gwzmibznlbmiyz4hf90brb59ns013jb53";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/669342d2b3e6cb622f196571d776a98ec8f3b1d3/recipes/psession";
@@ -27512,8 +27956,8 @@
           sha256 = "02x5ciyafqwak06yk813kl8p92hq03wjsk1882q8axr9q231100c";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/de07b317e46475776d6d237908a0495866a7a851/recipes/rainbow-blocks";
-          sha256 = "08p41wvrw1j3h7j7lyl8nxk1gcc2id9ikljmiklg0kc6s8ijhng8";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rainbow-blocks";
+          sha256 = "1zf1z1hnp8q0s9za7nnpq83isbpmz26l8hxafz0h0b5dz1w2vlvs";
           name = "rainbow-blocks";
         };
         packageRequires = [];
@@ -27659,8 +28103,8 @@
           sha256 = "09c6v4lnv6vm2cckbdpx2fdi9xkz9l68qvhx35vaawxhrkgvypzp";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/56d330fdd9e3b2cf3afc808190efebcc4cb1456d/recipes/rbenv";
-          sha256 = "09nw7sz6rdgs7hdw517qwgzgyrdmxb16sgldfkifk41rhiyqhr65";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rbenv";
+          sha256 = "1skh1v8dgwl1f9m3pmy2s3rnzp8n3cydi3579fgjv4mzi81k3d5q";
           name = "rbenv";
         };
         packageRequires = [];
@@ -27840,12 +28284,12 @@
     rectangle-utils = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "rectangle-utils";
-        version = "1.0";
+        version = "1.1";
         src = fetchFromGitHub {
           owner = "thierryvolpiatto";
           repo = "rectangle-utils";
-          rev = "9328291ad043fdf617cd2191692f13fba5f9a9bb";
-          sha256 = "048pjrd04w6w4v6r56yblbqgkjh01xib7k1i6rjc6288jh5vr1vm";
+          rev = "6fe38fdd48ef5305a908b94a043a966ac3f2053a";
+          sha256 = "08n3ah40gfgkbriwj2z3y0751vpvgz86qjdn6dxs4mghjrwr2545";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/1852b75c82822e97c39b7c7caeb2a32246171be4/recipes/rectangle-utils";
@@ -28037,8 +28481,8 @@
           sha256 = "1h58a2darz4k1aj480xahhp29gh2cg41pymidymjx4wi2ygic4pr";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/da4be8c67584ea0ae35c7c9ee33334db5061a538/recipes/repl-toggle";
-          sha256 = "1jyaksxgyygfv1wn9c6y8sykb4hicwgs9n5vrdikd2i0iix29zpb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/repl-toggle";
+          sha256 = "16k9fk1nl2llk9qli52kiirlx9rlz8yhjh3cy6v5y2b3k0y1cf0b";
           name = "repl-toggle";
         };
         packageRequires = [ fullframe ];
@@ -28278,22 +28722,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    rg = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
+    rg = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, s, seq }:
     melpaBuild {
         pname = "rg";
-        version = "1.1.1";
+        version = "1.2.0";
         src = fetchFromGitHub {
           owner = "dajva";
           repo = "rg.el";
-          rev = "fd0f056a5912caeeb2d4f668969d9df81c9e22db";
-          sha256 = "1lig93lj5mnm2fjvwac42kfw8bhq8ggs4jfc73fmclm6s5dg8661";
+          rev = "32fc22b192cbad03fca3835f29c36ab4a90e50a0";
+          sha256 = "168p4h7h9ik1f56cw0zr8brbn53d5jglv9r7i9zqh80zzhljw4xv";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/9ce1f721867383a841957370946f283f996fa76f/recipes/rg";
           sha256 = "0i78qvqdznh1z3b0mnzihv07j8b9r86dc1lsa1qlzacv6a2i9sbm";
           name = "rg";
         };
-        packageRequires = [ cl-lib s ];
+        packageRequires = [ cl-lib emacs s seq ];
         meta = {
           homepage = "https://melpa.org/#/rg";
           license = lib.licenses.free;
@@ -28541,8 +28985,8 @@
           sha256 = "0828i5lcbspacydjnbrp3zhgbw2gggaaizzm0qqgmvry4cs79bxv";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/ac3b84fe84a7f57d09f1a303d8947ef19aaf02fb/recipes/rtags";
-          sha256 = "08clwydx2b9cl4wv61b0p564jpvq7gzkrlcdkchpi4yz6djbp0lw";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/rtags";
+          sha256 = "0s5m4zjvnc1k4gkkizbs4ysvzzbfh45717pksg9bnyzwx5lcw5yd";
           name = "rtags";
         };
         packageRequires = [];
@@ -28646,8 +29090,8 @@
           sha256 = "008zj9rg2cmh0xd7g6kgx6snm5sspxs4jmfa8hd43wx5y9pmlb8f";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/746e0e49a24f16baa5f1cc7f11220766ecf9f1fe/recipes/ruby-test-mode";
-          sha256 = "113ysf08bfh2ipk55f8h741j05999yrgx57mzh53rim5n63a312w";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ruby-test-mode";
+          sha256 = "06j1q9m08jkwlnkccppf2qlcs48nr8ic9sjdv90rnixc18bw7bpk";
           name = "ruby-test-mode";
         };
         packageRequires = [];
@@ -28751,8 +29195,8 @@
           sha256 = "1aqcpmzzww4fd63l65rfyj0f8skdqh7j1vznwqnj71x65xlda0ys";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a5ebbcca659bb6d79ca37dc347894fac7bafd9dd/recipes/rust-playground";
-          sha256 = "1w29plj06ld3iq8xhjnfh8hphcp7aji15y1xqp8bb9m1k07wza7l";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rust-playground";
+          sha256 = "0ml0zr9vz2vjd9wr0v706w4v4qqfzpa56rdzfak2kb5llx53j89v";
           name = "rust-playground";
         };
         packageRequires = [ emacs rust-mode ];
@@ -28793,8 +29237,8 @@
           sha256 = "08vf62fcrnbmf2ppb759kzznjdz8x72fqdwbc4n8nbswrwgm2ikl";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/d6e5137dac9f8f95579994601cb1e24614f965f2/recipes/s";
-          sha256 = "0b2lj6nj08pk5fnxvjkc1d9hvi29rnjjy4n5ns4pq6wxpfnlcw64";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/s";
+          sha256 = "0dars9212z0yv97mj4615h23vd22vy8b6cw2n433z9jhif3aybqa";
           name = "s";
         };
         packageRequires = [];
@@ -29158,6 +29602,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    sentence-highlight = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "sentence-highlight";
+        version = "0.1";
+        src = fetchFromGitHub {
+          owner = "sbelak";
+          repo = "sentence-highlight";
+          rev = "6f2bc989207ec8cf641e44924ef530a2e436eedb";
+          sha256 = "0740swhm3kzjx58a6nr9992p05q4kzvyham8g7kds4ydd7xsd9am";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sentence-highlight";
+          sha256 = "07pyyl74cvnz6dd85ghv3zdrir08317lvnzm5nf1n3p85aqjpcxm";
+          name = "sentence-highlight";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/sentence-highlight";
+          license = lib.licenses.free;
+        };
+      }) {};
     servant = callPackage ({ ansi, commander, dash, epl, f, fetchFromGitHub, fetchurl, lib, melpaBuild, s, shut-up, web-server }:
     melpaBuild {
         pname = "servant";
@@ -29253,8 +29718,8 @@
           sha256 = "11h5z2gmwq07c4gqzj2c9apksvqk3k8kpbb9kg78bbif2xfajr3m";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/69270c79b47b7d9348bd2ca9fec3aabfd7e694b3/recipes/sexp-move";
-          sha256 = "0lcxmr2xqh8z7xinxbv1wyrh786zlahhhj5nnbv83i8m23i3ymmd";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sexp-move";
+          sha256 = "0sdm3kr4594fy9hk8yljj2iwa40bgs8nqpwwl2a60r060spz54z9";
           name = "sexp-move";
         };
         packageRequires = [];
@@ -29316,8 +29781,8 @@
           sha256 = "0vkxl3w4y4yacs1s4v0gwggvzrss8g74d3dgk8h3gphl4dlgx496";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/b1c547d37422998c01a610f88d62784fbca33523/recipes/shakespeare-mode";
-          sha256 = "1i9fr9l3x7pwph654hqd8s74swy5gmn3wzs85a2ibmpcjq8mz9rd";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/shakespeare-mode";
+          sha256 = "1sg8n4ifpi36zmf6b6s0swq7k3r038cmj8kxjm7hpgxq6f9qnk9x";
           name = "shakespeare-mode";
         };
         packageRequires = [];
@@ -29515,6 +29980,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    showtip = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "showtip";
+        version = "0.1";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "showtip";
+          rev = "930da302809a4257e8d69425455b29e1cc91949b";
+          sha256 = "01zak0zhha6dp7a2hm28d065gjnc462iwpsfyxhbxgfzcdlicqc7";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/showtip";
+          sha256 = "1d5ckka2z0ffwyk9g3h91n3waijj2v7n8kvdks35gcr2yl3yk780";
+          name = "showtip";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/showtip";
+          license = lib.licenses.free;
+        };
+      }) {};
     shpec-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "shpec-mode";
@@ -29547,8 +30033,8 @@
           sha256 = "050gmxdk88zlfjwi07jsj2mvsfcv5imhzcpa6ip3cqkzpmw3pl32";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/97fe5a411be1a7d80d50f5a8af44b74c6c7cf9e6/recipes/shrink-whitespace";
-          sha256 = "12if0000i3rrxcm732layrv2h464wbb4xflbbfc844c83dbx1jmq";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/shrink-whitespace";
+          sha256 = "0baqv4wr1wi4wd7cfhqf4y24qkpd72lax596z5lj934ihwf3gggw";
           name = "shrink-whitespace";
         };
         packageRequires = [];
@@ -29589,8 +30075,8 @@
           sha256 = "1ma6djvhvjai07v1g9a36lfa3nw8zsy6x5vliwcdnkf44gs287ra";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/a730e1331b0486c4bd2d309b85d2f8810489eb47/recipes/sift";
-          sha256 = "0mv5zk140kjilwvzccj75ym7wlkkqryb532mbsy7i9bs3q7m916d";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sift";
+          sha256 = "1kr5rxza5li3zrkfvs91y7dxmn213z0zf836rkwkmwg2b9rmqxvj";
           name = "sift";
         };
         packageRequires = [];
@@ -30093,8 +30579,8 @@
           sha256 = "1sd7dh9114mvr4xnp43xx4b7qmwkaj1a1fv7pwc28fhiy89d2md4";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/26c73e1d15186ebf300c6397fda61a8a885a130f/recipes/smartscan";
-          sha256 = "0vghgmx8vnjbvsw7q5zs0qz2wm6dcng9m69b8dq81g2cq9dflbwb";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/smartscan";
+          sha256 = "1q0lqms16g7avln1pbxzb49z3w96kv1r7lbh61ijlnz3jips098w";
           name = "smartscan";
         };
         packageRequires = [];
@@ -30232,12 +30718,12 @@
     snakemake-mode = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, magit-popup, melpaBuild }:
     melpaBuild {
         pname = "snakemake-mode";
-        version = "1.1.0";
+        version = "1.2.0";
         src = fetchFromGitHub {
           owner = "kyleam";
           repo = "snakemake-mode";
-          rev = "327c168febbde24c2b39cc10d26c9cfc9189e130";
-          sha256 = "1jlv8sr2g3i335h7hp8y39b77wla9hac1b0bk2imalr14lz04vly";
+          rev = "15803162483e635f3e22b2efea33ccad725e0535";
+          sha256 = "1nc8xp22i57kf89x0qh69dspl9hl710m01gdr35ph5gl8ycmyir5";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/c3a5b51fee1c9e6ce7e21555faa355d118d34b8d/recipes/snakemake-mode";
@@ -30597,8 +31083,8 @@
           sha256 = "0l3a8swmf3sm54ayk2ahh1i5j1hf0hd822dfmx50kgwi4wpv48sp";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/269acf093c3aa508479bf532a4e07c9c6d568c72/recipes/sphinx-mode";
-          sha256 = "16p5xlj4q9fyhz70r73w48fivwzpz9mcq710qqxqaap1aajkh84b";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sphinx-mode";
+          sha256 = "0f5xkaqsmxc4bfz80njlc395dcw2dbvmzx6h9fw31mylshzbmrys";
           name = "sphinx-mode";
         };
         packageRequires = [];
@@ -30639,8 +31125,8 @@
           sha256 = "0kc17ijjd8ygwjji23ndhq75kqjyxlb8kg9q0ij0l38q3b903fhi";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/fb57a2d7dc46f7b0663a030e240f81c758a44e6a/recipes/spotify";
-          sha256 = "0pmsvxi1dsi580wkhhx8iw329agkh5yzk61bqvxzign3cd6fbq6k";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/spotify";
+          sha256 = "07y6d3cz3nziasza3znysvcnx3kw156ab78kw5y0pdll45nw210x";
           name = "spotify";
         };
         packageRequires = [ cl-lib ];
@@ -30702,8 +31188,8 @@
           sha256 = "12zyw8b8s3jga560wv141gc4yvlbldvfcmpibns8wrpx2w8aivfj";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/147b6d7a58cab128509589a84fb7938e56aa0604/recipes/sql-impala";
-          sha256 = "1jr9k48d0q00d1x5lqv0n971mla2ymnqmjfn8pw0s0vxkldq4ibi";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sql-impala";
+          sha256 = "1mh36ycqgr07r0hknkr6vb4k0r5b2h8bqd7m5faz9p56qbisgvvh";
           name = "sql-impala";
         };
         packageRequires = [];
@@ -30733,6 +31219,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    sr-speedbar = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "sr-speedbar";
+        version = "20140914.2339";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "sr-speedbar";
+          rev = "4f816528a32eb421197a768d6dcf3a05de83f642";
+          sha256 = "1x9wizd0fzcmpf8ff7c3rcfxk64diy9jmzzvxa7d5a3k8vvpdhg3";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/sr-speedbar";
+          sha256 = "1v90jbqdw39yrfcsnyqas8c5g09rcf1db65q2m2rw7rik8cgb052";
+          name = "sr-speedbar";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/sr-speedbar";
+          license = lib.licenses.free;
+        };
+      }) {};
     srefactor = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "srefactor";
@@ -30786,8 +31293,8 @@
           sha256 = "0l3h6w13xc81i6vavfsg617ly8m2y8yjzbwa6zwwkfqi301kgpij";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8b4547f86e9a022468524b0d3818b24e1457797e/recipes/ssh-deploy";
-          sha256 = "07kryxspjy8lr1a2m0bppa3xgbzwk180z4a8har37ygm3hdpj50x";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ssh-deploy";
+          sha256 = "1ys3cc5fz8y4rsiq3daqgcpa14ssv1q4cw0pqbfscql6mps0mjdm";
           name = "ssh-deploy";
         };
         packageRequires = [];
@@ -30973,8 +31480,8 @@
           sha256 = "035ym1c1vzg6hjsnd258z4dkrfc11lj4c0y4gpgybhk54dq3w9dk";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/fa948128841a1cd3c5fd4c30da3841629b17d3c7/recipes/stripe-buffer";
-          sha256 = "02wkb9y6vykrn6a5nfnimaplj7ig8i8h6m2rvwv08f5ilbccj16a";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/stripe-buffer";
+          sha256 = "1kjib1kf9xqdirryr16wlvc95701hq8s4h8hz4dqzg3wzyb8287b";
           name = "stripe-buffer";
         };
         packageRequires = [ cl-lib ];
@@ -30988,13 +31495,13 @@
         pname = "stumpwm-mode";
         version = "0.9.8";
         src = fetchgit {
-          url = "git://git.savannah.nongnu.org/stumpwm.git";
+          url = "https://git.savannah.nongnu.org/git/stumpwm.git";
           rev = "4d0603e52b5bab993b3be63e3654c74f641e677d";
           sha256 = "0pn3xjz433b0djcys25a8fv775yqmj3qgg0hyghgxjpzsh6k2a4f";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3a1e6358c529e3b9e51bcfa6e2e294acbf662882/recipes/stumpwm-mode";
-          sha256 = "0a77mh7h7033adfbwg2fbx84789962par43q31s9msjlqw15gs86";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/stumpwm-mode";
+          sha256 = "11yk7xmmccgv7hin5qd1ibcsm1za01xfwsxa25q7vqwk6svnb0sf";
           name = "stumpwm-mode";
         };
         packageRequires = [];
@@ -31098,8 +31605,8 @@
           sha256 = "0mx892vn4a32df30iqmf2vsz1gdl3i557fw0194g6a66n9w2q7xf";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/bb904557529c5d9658039a10456812810541bfed/recipes/subshell-proc";
-          sha256 = "1fnp49yhnhsj7paj0b25vr6r03hr5kpgcrci439ffpbd2c85fkw2";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/subshell-proc";
+          sha256 = "1ma5i4ka48w46ksxyppjnyq2ka03b2ylsmw3jv1hp35f3ycqpbqp";
           name = "subshell-proc";
         };
         packageRequires = [];
@@ -31321,12 +31828,12 @@
     swiper = callPackage ({ emacs, fetchFromGitHub, fetchurl, ivy, lib, melpaBuild }:
     melpaBuild {
         pname = "swiper";
-        version = "0.8.0";
+        version = "0.9.1";
         src = fetchFromGitHub {
           owner = "abo-abo";
           repo = "swiper";
-          rev = "c24a3728538dd7d11de9f141b3ad1d8e0996c330";
-          sha256 = "19vfj01x7b8f7wyx7m51z00la2r7jcwzv0n06srkvcls0wm5s1h3";
+          rev = "f4b433436668ac09f3d1815fbfb4b71f3e0690fa";
+          sha256 = "10jffa503a6jid34smh0njnhlv27r9vyhwlpf00f13c5i8nh2xjf";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/e64cad81615ef3ec34fab1f438b0c55134833c97/recipes/swiper";
@@ -31884,6 +32391,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    terminal-here = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "terminal-here";
+        version = "1.0";
+        src = fetchFromGitHub {
+          owner = "davidshepherd7";
+          repo = "terminal-here";
+          rev = "e176d1675dc5c41b6aebd05122fb2efc44b6cff0";
+          sha256 = "0dj3z8czvziszb20sizgf1yriv4im811rcfadm7ga9zs2al56kqy";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/f8df6f7e23476eb52e7fdfbf9de277d3b44db978/recipes/terminal-here";
+          sha256 = "1w64r3y88lspxxcqcqfwhakk8p9vl7q3z610dykfbqwqx61a6adj";
+          name = "terminal-here";
+        };
+        packageRequires = [ cl-lib emacs ];
+        meta = {
+          homepage = "https://melpa.org/#/terminal-here";
+          license = lib.licenses.free;
+        };
+      }) {};
     tern = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, json ? null, lib, melpaBuild }:
     melpaBuild {
         pname = "tern";
@@ -32181,12 +32709,12 @@
     tide = callPackage ({ cl-lib ? null, dash, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, typescript-mode }:
     melpaBuild {
         pname = "tide";
-        version = "2.1.5";
+        version = "2.2.2";
         src = fetchFromGitHub {
           owner = "ananthakumaran";
           repo = "tide";
-          rev = "bd89d93d9803319ba86eff0173821deb978ae2ac";
-          sha256 = "1a736r1igq66hn6ig4l7c5xaxcyk2kxvj26laphakk1xg8j5x52k";
+          rev = "eabcad4dbebb705d4e366f90344ea543068d2dc4";
+          sha256 = "1ykxsr8q9gwx2d8b0v2xf4glchwg3ikcx60a5r4phw1nlwff8gg7";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/a21e063011ebbb03ac70bdcf0a379f9e383bdfab/recipes/tide";
@@ -32286,12 +32814,12 @@
     tox = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "tox";
-        version = "0.3";
+        version = "0.4.0";
         src = fetchFromGitHub {
           owner = "chmouel";
           repo = "tox.el";
-          rev = "5c1a7c18cb7f2fd2da2386debf86012e6953e15d";
-          sha256 = "16217i8rjhgaa5kv8iq0s14b42v5rs8m2qlr60a0x6qzy65chq39";
+          rev = "7655eb254038d5e34433e8a9d66b3ffc9c72e40c";
+          sha256 = "1212b7s00kw9hk5gc2jx88hqd825rvkz1ss7phnxkrz833l062ki";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/08a7433e16f2a9a2c04168600a9c99bc21c68ddf/recipes/tox";
@@ -32524,8 +33052,8 @@
           sha256 = "0glw5lns7hwp8jznnfm6dyjw454sv2n84gy07ma7s1q3yczhq5bc";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4dfafdd43a22320c619f481e2bbe162459b48990/recipes/twilight-anti-bright-theme";
-          sha256 = "1qfybk5akaxdahmjffqaw712v8d7kk4jqkj3hzp96kys2zv1r6f9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/twilight-anti-bright-theme";
+          sha256 = "1wfj570l5k0ygqi9dwjskc78rpnxw6080bkw1zd1a8kl3fa28n2k";
           name = "twilight-anti-bright-theme";
         };
         packageRequires = [];
@@ -32579,12 +33107,12 @@
     typescript-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "typescript-mode";
-        version = "0.1";
+        version = "0.2";
         src = fetchFromGitHub {
           owner = "ananthakumaran";
           repo = "typescript.el";
-          rev = "abc0751c0e3f316a0064fc7342ffb89b49b02e15";
-          sha256 = "0lgsyqzfjqhygs8a3icnfsp6y20h2rqrk4wbyc1xfmkbahs7qk8y";
+          rev = "f25f4751fea12298905c811a1f469a6b0a169ef1";
+          sha256 = "1s4qzhi8bd45l824pwzh97i9npf7j4ai6wkbhf28q2nd1hiv29hw";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/d3f534a1e2cee4ad2e32e32802c5080207417b3d/recipes/typescript-mode";
@@ -32629,8 +33157,8 @@
           sha256 = "1jhd4grch5iz12gyxwfbsgh4dmz5hj4bg4gnvphccg8dsnni05k2";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/8cf02f5c8cb29265e9c83be9c959b8a9012a369d/recipes/typo";
-          sha256 = "07hmqrnbxbrhcbxdls8i4786lkqmfr3hv6va41xih1lxj0mk60bx";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/typo";
+          sha256 = "1p8is1n525lmzq588hj6vazmhl9wi6rairnfx1g1p6g6ijdycd4h";
           name = "typo";
         };
         packageRequires = [];
@@ -32726,12 +33254,12 @@
     unfill = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "unfill";
-        version = "0.1";
+        version = "0.2";
         src = fetchFromGitHub {
           owner = "purcell";
           repo = "unfill";
-          rev = "99388d79f971db70c5d18dab4257301f750ed907";
-          sha256 = "1qy0q1fp7cmvmxynqrb086dkb727lmk5h1k98y14j75b94ilpy0w";
+          rev = "88186dce0de69e8f4aeaf2bfdc77d62210f19cd8";
+          sha256 = "0wyradin5igp25nsd3n22i2ppxhmy49ac1iq1w2715v8pfmiydnc";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/2ade389a20419b3e29a613409ac73a16b7c5bddb/recipes/unfill";
@@ -32897,22 +33425,22 @@
           license = lib.licenses.free;
         };
       }) {};
-    uptimes = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    uptimes = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "uptimes";
-        version = "3.1";
+        version = "3.3";
         src = fetchFromGitHub {
           owner = "davep";
           repo = "uptimes.el";
-          rev = "5e321692bf5ccdc286f4831fa8fe55467c1c56aa";
-          sha256 = "04n4bryfid6scma43whw156wcza77ij7szgc5f73d98j9fji6lay";
+          rev = "2be31db3508513478d3f27f4eff2ff1094786b4e";
+          sha256 = "177d1h84w9rr6x3hsq9z7sbr8s8pippgy0l99gpdhycbff6a7cwg";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/72099e35ce3e34ec6afc6a3f87a4da07ec91499a/recipes/uptimes";
           sha256 = "0r8s5c2hdcb1ly7rnhzar4qzf1c9d49gd914ndnc3mg9yb9gyy5h";
           name = "uptimes";
         };
-        packageRequires = [ cl-lib ];
+        packageRequires = [ cl-lib emacs ];
         meta = {
           homepage = "https://melpa.org/#/uptimes";
           license = lib.licenses.free;
@@ -33359,6 +33887,27 @@
           license = lib.licenses.free;
         };
       }) {};
+    w32-browser = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
+    melpaBuild {
+        pname = "w32-browser";
+        version = "235";
+        src = fetchFromGitHub {
+          owner = "emacsorphanage";
+          repo = "w32-browser";
+          rev = "a8126b60bf18193e8e4ec6f699b5694b6f71a062";
+          sha256 = "13wjvzsas7in8f09sc2qj17dz25wizg1l0r2krgp1zymy92p8f97";
+        };
+        recipeFile = fetchurl {
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/ae489be43b1aee93614e40f492ebdf0b98a3fbc1/recipes/w32-browser";
+          sha256 = "16sp0gn4yv7iaa55i2kvfsqw3610gr3x31l9lqa14r9xmfhda1rn";
+          name = "w32-browser";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://melpa.org/#/w32-browser";
+          license = lib.licenses.free;
+        };
+      }) {};
     wacspace = callPackage ({ cl-lib ? null, dash, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "wacspace";
@@ -33559,8 +34108,8 @@
           sha256 = "0aj1ibmnrbaxrkwjf1fac2qzazrj39pql3prcibnchc2bmp191aa";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/2658e8a80455ad5ae1ceb69deddab89ebc6b6871/recipes/web-mode-edit-element";
-          sha256 = "09m2jzsb3zz1wr396jrhcwskfm1m0a4hvxlxhq5p1w5fzfcdb8md";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/web-mode-edit-element";
+          sha256 = "1kcycsjjv1bzfn93aq3cdh5d913izrr8cdxmknbyriyipsqryh3l";
           name = "web-mode-edit-element";
         };
         packageRequires = [ emacs web-mode ];
@@ -33811,8 +34360,8 @@
           sha256 = "0ip0vkqb4dm88xqzgwc9yaxzf4sc4x006m6z73a3lbfmrncy2c1d";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/71addc88ce814ed4f413bcd8632402ac750009a1/recipes/whole-line-or-region";
-          sha256 = "1vs2i4cy1zc6nj660i9h36jbfgc3kvqivjnzlq5zwlxk5hcibqa1";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/whole-line-or-region";
+          sha256 = "0zz9i1jxayw2p6ggfxjvhb1mc3ly9iy4jvk23ycndz9lnnzkch0y";
           name = "whole-line-or-region";
         };
         packageRequires = [];
@@ -33916,8 +34465,8 @@
           sha256 = "0wgqi8r844lbx52fn6az8c1n8m681rp6dkfzd54wmdk1ka7zmvv6";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/3b17efdf8b7306eadf37e331fc1d585b42f37b09/recipes/window-layout";
-          sha256 = "1n4a6z00lxsffirjrmbaaw432w798b9vv34qawgn1k17y9l7gb85";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/window-layout";
+          sha256 = "061mvxcj4mg2pmkln7nn6gyscs08aid4cfc6xck0x5gzr1snr639";
           name = "window-layout";
         };
         packageRequires = [];
@@ -33979,8 +34528,8 @@
           sha256 = "1f4v0xd341qs4kfnjqhgf8j26valvg6pz4rwcz0zj0s23niy2yil";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/37924b239c1e883103c0cdfd429ddb6c2d40d3d7/recipes/windsize";
-          sha256 = "1xhfw77168942rcn246qndii0hv0q6vkgzj67jg4mxh8n46m50m9";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/windsize";
+          sha256 = "1fzqf86d7pimnc87xdgvpv4hnv7j6ngmk1sjvazj6726xygswkyv";
           name = "windsize";
         };
         packageRequires = [];
@@ -34016,8 +34565,8 @@
         version = "0.9.1";
         src = fetchhg {
           url = "https://bitbucket.com/ArneBab/wisp";
-          rev = "c5c0bb98b281";
-          sha256 = "0gxvx2n6xza17qf1p4v0nbcqfkkhrmg9a56c5d126b4vgmg3bf9v";
+          rev = "626eaec86a97";
+          sha256 = "13hcp52krlb0vw3wxvw9mdcm7qxr80p2rs52zkkzrc73qvzxvwn3";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/wisp-mode";
@@ -34251,8 +34800,8 @@
           sha256 = "1a4b0lsmwq84qfx51c5xy4fryhb1ysld4fhgw2vr37izf53379sb";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/f1645a51d487c8902eb6e59fb1884f85f48cec6f/recipes/ws-butler";
-          sha256 = "072k67z2lx0ampwzdiszi64xs0w6frp4nbmrd2r0wpx0pd211vbn";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ws-butler";
+          sha256 = "1k5nhj37r51i0czrlafra53wir73p0nbq83jjccqmw4p4xk6axl3";
           name = "ws-butler";
         };
         packageRequires = [];
@@ -34377,8 +34926,8 @@
           sha256 = "0p9p3w8i5w1pzh3y3yxz0rg5gywfq4m5anbiyrdn84vdd42jij4x";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/4ac99eee00b76501d830373a13369f6a2a1239b5/recipes/xkcd";
-          sha256 = "1r88yhs8vnkak8xl16vw3xdpm7ncz4ydkml8932bqk8xix8l8f0w";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/xkcd";
+          sha256 = "0gy2952zg1rq5gl10x7iwbchz5jibfcvikd3chifqbmil80wh6b5";
           name = "xkcd";
         };
         packageRequires = [ json ];
@@ -34411,16 +34960,16 @@
     xmlgen = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "xmlgen";
-        version = "0.4";
+        version = "0.5";
         src = fetchFromGitHub {
           owner = "philjackson";
           repo = "xmlgen";
-          rev = "d27294a4174888fe452015cb98dedd2a4bdc1e92";
-          sha256 = "1nk50iwb6az01r1s2l9wwdqrz3k4ywr00q0zmd9vvi3y9v4cjah0";
+          rev = "dba66681f0c5e621a9e70e8afb34903c9ffe93c4";
+          sha256 = "096i29v0badx0a6339h9ckdz78zj59gbjdp7vj7vhkq9d830392s";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/cd19fded2de4e7549121485e81f7405c0176e203/recipes/xmlgen";
-          sha256 = "1mvnjqb9zxf9ml605w10v4cbbajwv9if93apr4xrh79l00scj383";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/xmlgen";
+          sha256 = "0c77la6kl02qkapfzbjmhac60f8p837kwg8bp0686ylxh5s31zsh";
           name = "xmlgen";
         };
         packageRequires = [];
@@ -34524,8 +35073,8 @@
           sha256 = "144v8nn4l8ngfdrsgj5nrxp09391gnfrqf950y956cbmqvnlw7z8";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/51bfd6465ee8ee553e8fd466a3bc4e65ab98faed/recipes/yafolding";
-          sha256 = "1z70ismfwmh9a83a7h5lbhw7iywfib5fis7y8gx8020wfjq9g2yq";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/yafolding";
+          sha256 = "1yb1rlxa5f1y1xjqs7ndr5jnf9j5cv0ccqdpbrx4l9xkm3npw9zl";
           name = "yafolding";
         };
         packageRequires = [];
@@ -34910,8 +35459,8 @@
           sha256 = "1lrgirfvcvbir7csshkhhwj99jj1x5aprhw7xfiicv7nan9m6gjy";
         };
         recipeFile = fetchurl {
-          url = "https://raw.githubusercontent.com/milkypostman/melpa/38262704e1045c21ee73ca9dc87656936382004a/recipes/zone-nyan";
-          sha256 = "165sgjaahz038isii971m02hr2g5iqhbhiwf5kdn8c739cjaa17b";
+          url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/zone-nyan";
+          sha256 = "1g7i5p26gb9gny64b84x6zqml7fly5q9aykmc6l6c1kfl6pqxs94";
           name = "zone-nyan";
         };
         packageRequires = [ esxml ];
@@ -34944,12 +35493,12 @@
     zop-to-char = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
     melpaBuild {
         pname = "zop-to-char";
-        version = "1.0";
+        version = "1.1";
         src = fetchFromGitHub {
           owner = "thierryvolpiatto";
           repo = "zop-to-char";
-          rev = "7888bb6f09ae24e8e10bd3095edd31940e6a1c46";
-          sha256 = "0j6x3az8vpq2ggafjxdl8x3ln7lhh58c27z72mwywp4a2ca1g496";
+          rev = "816ea90337db0545a2f0a5079f4d7b3a2822af7d";
+          sha256 = "14waf3g7b92k3qd5088w4pn0wcspxjfkbswlzf7nnkjliw1yh0kf";
         };
         recipeFile = fetchurl {
           url = "https://raw.githubusercontent.com/milkypostman/melpa/b0a9277f1a5f1aef8886e739c73dea91d3f81dc5/recipes/zop-to-char";
diff --git a/pkgs/applications/editors/idea/common.nix b/pkgs/applications/editors/jetbrains/common.nix
index 839f537843d..a7ac367f048 100644
--- a/pkgs/applications/editors/idea/common.nix
+++ b/pkgs/applications/editors/jetbrains/common.nix
@@ -63,6 +63,10 @@ with stdenv; lib.makeOverridable mkDerivation rec {
 
     makeWrapper "$out/$name/bin/${loName}.sh" "$out/bin/${execName}" \
       --prefix PATH : "$out/libexec/${name}:${stdenv.lib.makeBinPath [ jdk coreutils gnugrep which git ]}" \
+      --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [
+        # Some internals want libstdc++.so.6
+        stdenv.cc.cc.lib
+      ]}" \
       --set JDK_HOME "$jdk" \
       --set ${hiName}_JDK "$jdk" \
       --set ANDROID_JAVA_HOME "$jdk" \
diff --git a/pkgs/applications/editors/idea/default.nix b/pkgs/applications/editors/jetbrains/default.nix
index e298385f793..26b4d3833f3 100644
--- a/pkgs/applications/editors/idea/default.nix
+++ b/pkgs/applications/editors/jetbrains/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, callPackage, fetchurl, makeDesktopItem, makeWrapper, patchelf
+{ lib, stdenv, callPackage, fetchurl, makeDesktopItem, makeWrapper, patchelf
 , coreutils, gnugrep, which, git, python, unzip, p7zip
 , androidsdk, jdk
 }:
@@ -6,10 +6,12 @@
 assert stdenv.isLinux;
 
 let
-  mkIdeaProduct = callPackage ./common.nix { };
+  mkJetBrainsProduct = callPackage ./common.nix { };
+
+  # Sorted alphabetically
 
   buildClion = { name, version, src, license, description, wmClass }:
-    (mkIdeaProduct rec {
+    (mkJetBrainsProduct rec {
       inherit name version src wmClass jdk;
       product = "CLion";
       meta = with stdenv.lib; {
@@ -24,72 +26,77 @@ let
       };
     });
 
-  buildIdea = { name, version, src, license, description, wmClass }:
-    (mkIdeaProduct rec {
+  buildDataGrip = { name, version, src, license, description, wmClass }:
+    (mkJetBrainsProduct {
       inherit name version src wmClass jdk;
-      product = "IDEA";
+      product = "DataGrip";
       meta = with stdenv.lib; {
-        homepage = "https://www.jetbrains.com/idea/";
+        homepage = "https://www.jetbrains.com/datagrip/";
         inherit description license;
         longDescription = ''
-          IDE for Java SE, Groovy & Scala development Powerful
-          environment for building Google Android apps Integration
-          with JUnit, TestNG, popular SCMs, Ant & Maven.
+          DataGrip is a new IDE from JetBrains built for database admins.
+          It allows you to quickly migrate and refactor relational databases,
+          construct efficient, statically checked SQL queries and much more.
         '';
-        maintainers = with maintainers; [ edwtjo ];
+        maintainers = with maintainers; [ loskutov ];
         platforms = platforms.linux;
       };
     });
 
-  buildRubyMine = { name, version, src, license, description, wmClass }:
-    (mkIdeaProduct rec {
+  buildGogland = { name, version, src, license, description, wmClass }:
+    (mkJetBrainsProduct {
       inherit name version src wmClass jdk;
-      product = "RubyMine";
+      product = "Gogland";
       meta = with stdenv.lib; {
-        homepage = "https://www.jetbrains.com/ruby/";
+        homepage = "https://www.jetbrains.com/go/";
         inherit description license;
-        longDescription = description;
-        maintainers = with maintainers; [ edwtjo ];
+        longDescription = ''
+          Gogland is the codename for a new commercial IDE by JetBrains
+          aimed at providing an ergonomic environment for Go development.
+          The new IDE extends the IntelliJ platform with the coding assistance
+          and tool integrations specific for the Go language
+        '';
+        maintainers = [ maintainers.miltador ];
         platforms = platforms.linux;
       };
     });
 
-  buildPhpStorm = { name, version, src, license, description, wmClass }:
-    (mkIdeaProduct {
+  buildIdea = { name, version, src, license, description, wmClass }:
+    (mkJetBrainsProduct rec {
       inherit name version src wmClass jdk;
-      product = "PhpStorm";
+      product = "IDEA";
       meta = with stdenv.lib; {
-        homepage = "https://www.jetbrains.com/phpstorm/";
+        homepage = "https://www.jetbrains.com/idea/";
         inherit description license;
         longDescription = ''
-          PhpStorm provides an editor for PHP, HTML and JavaScript
-          with on-the-fly code analysis, error prevention and
-          automated refactorings for PHP and JavaScript code.
+          IDE for Java SE, Groovy & Scala development Powerful
+          environment for building Google Android apps Integration
+          with JUnit, TestNG, popular SCMs, Ant & Maven.
         '';
-        maintainers = with maintainers; [ schristo ];
+        maintainers = with maintainers; [ edwtjo ];
         platforms = platforms.linux;
       };
     });
 
-  buildWebStorm = { name, version, src, license, description, wmClass }:
-    (mkIdeaProduct {
+  buildPhpStorm = { name, version, src, license, description, wmClass }:
+    (mkJetBrainsProduct {
       inherit name version src wmClass jdk;
-      product = "WebStorm";
+      product = "PhpStorm";
       meta = with stdenv.lib; {
-        homepage = "https://www.jetbrains.com/webstorm/";
+        homepage = "https://www.jetbrains.com/phpstorm/";
         inherit description license;
         longDescription = ''
-          WebStorm provides an editor for HTML, JavaScript (incl. Node.js),
-          and CSS with on-the-fly code analysis, error prevention and
-          automated refactorings for JavaScript code.
+          PhpStorm provides an editor for PHP, HTML and JavaScript
+          with on-the-fly code analysis, error prevention and
+          automated refactorings for PHP and JavaScript code.
         '';
-        maintainers = with maintainers; [ abaldeau ];
+        maintainers = with maintainers; [ schristo ];
         platforms = platforms.linux;
       };
     });
 
   buildPycharm = { name, version, src, license, description, wmClass }:
-    (mkIdeaProduct rec {
+    (mkJetBrainsProduct rec {
       inherit name version src wmClass jdk;
       product = "PyCharm";
       meta = with stdenv.lib; {
@@ -115,47 +122,101 @@ let
       propagatedUserEnvPkgs = [ python ];
     };
 
-  buildDataGrip = { name, version, src, license, description, wmClass }:
-    (mkIdeaProduct {
+  buildRider = { name, version, src, license, description, wmClass }:
+    lib.overrideDerivation (mkJetBrainsProduct rec {
       inherit name version src wmClass jdk;
-      product = "DataGrip";
+      product = "Rider";
       meta = with stdenv.lib; {
-        homepage = "https://www.jetbrains.com/datagrip/";
+        homepage = "https://www.jetbrains.com/rider/";
         inherit description license;
         longDescription = ''
-          DataGrip is a new IDE from JetBrains built for database admins.
-          It allows you to quickly migrate and refactor relational databases,
-          construct efficient, statically checked SQL queries and much more.
+          JetBrains Rider is a new .NET IDE based on the IntelliJ
+          platform and ReSharper. Rider supports .NET Core,
+          .NET Framework and Mono based projects. This lets you
+          develop a wide array of applications including .NET desktop
+          apps, services and libraries, Unity games, ASP.NET and 
+          ASP.NET Core web applications.
         '';
-        maintainers = with maintainers; [ loskutov ];
+        maintainers = [ maintainers.miltador ];
+        platforms = platforms.linux;
+      };
+    }) (attrs: {
+      patchPhase = attrs.patchPhase + ''
+        # Patch built-in mono for ReSharperHost to start successfully
+        interpreter=$(echo ${stdenv.glibc.out}/lib/ld-linux*.so.2)
+        patchelf --set-interpreter "$interpreter" lib/ReSharperHost/linux-x64/mono/bin/mono-sgen
+      '';
+    });
+
+  buildRubyMine = { name, version, src, license, description, wmClass }:
+    (mkJetBrainsProduct rec {
+      inherit name version src wmClass jdk;
+      product = "RubyMine";
+      meta = with stdenv.lib; {
+        homepage = "https://www.jetbrains.com/ruby/";
+        inherit description license;
+        longDescription = description;
+        maintainers = with maintainers; [ edwtjo ];
+        platforms = platforms.linux;
+      };
+    });
+
+  buildWebStorm = { name, version, src, license, description, wmClass }:
+    (mkJetBrainsProduct {
+      inherit name version src wmClass jdk;
+      product = "WebStorm";
+      meta = with stdenv.lib; {
+        homepage = "https://www.jetbrains.com/webstorm/";
+        inherit description license;
+        longDescription = ''
+          WebStorm provides an editor for HTML, JavaScript (incl. Node.js),
+          and CSS with on-the-fly code analysis, error prevention and
+          automated refactorings for JavaScript code.
+        '';
+        maintainers = with maintainers; [ abaldeau ];
         platforms = platforms.linux;
       };
     });
+
 in
 
 {
+  # Sorted alphabetically
+
   clion = buildClion rec {
     name = "clion-${version}";
-    version = "2016.3.3";
+    version = "2017.1";
     description  = "C/C++ IDE. New. Intelligent. Cross-platform";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
-      sha256 = "1zziyg0y51lfybflq83qwd94wcypkv4gh0cdkwfybbk4yidpnz05";
+      sha256 = "00fc023ca56f2781864cddc7bd5c2897d837d1db17dd8f987abe046ed4df3ca5";
     };
     wmClass = "jetbrains-clion";
   };
 
-  clion1 = buildClion rec {
-    name = "clion-${version}";
-    version = "1.2.5";
-    description  = "C/C++ IDE. New. Intelligent. Cross-platform";
+  datagrip = buildDataGrip rec {
+    name = "datagrip-${version}";
+    version = "2017.1";
+    description = "Your Swiss Army Knife for Databases and SQL";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
-      url = "https://download.jetbrains.com/cpp/${name}.tar.gz";
-      sha256 = "0ll1rcnnbd1if6x5rp3qw35lvp5zdzmvyg9n1lha89i34xiw36jp";
+      url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
+      sha256 = "91ee6a1e43d75a45ae51829835e457da85262410d89e617324d0239ba5625dfa";
     };
-    wmClass = "jetbrains-clion";
+    wmClass = "jetbrains-datagrip";
+  };
+
+  gogland = buildGogland rec {
+    name = "gogland-${version}";
+    version = "171.3780.106";
+    description = "Up and Coming Go IDE";
+    license = stdenv.lib.licenses.unfree;
+    src = fetchurl {
+      url = "https://download.jetbrains.com/go/${name}.tar.gz";
+      sha256 = "cbe84d07fdec6425d8ac63b0ecd5e04148299c1c0c6d05751523aaaa9360110b";
+    };
+    wmClass = "jetbrains-gogland";
   };
 
   idea14-community = buildIdea rec {
@@ -172,12 +233,12 @@ in
 
   idea-community = buildIdea rec {
     name = "idea-community-${version}";
-    version = "2017.1";
+    version = "2017.1.1";
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
-      sha256 = "0pfsf7ykwixvljcmrv4gldaaflf13brch70cd6xpax0m89vm22vm";
+      sha256 = "1222xkw7n424ihqxyjk352nnx9ka6as7ajwafgb2f27hfiz8d3li";
     };
     wmClass = "jetbrains-idea-ce";
   };
@@ -208,50 +269,38 @@ in
 
   idea-ultimate = buildIdea rec {
     name = "idea-ultimate-${version}";
-    version = "2017.1";
+    version = "2017.1.1";
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIU-${version}.tar.gz";
-      sha256 = "1858jhmyyb7nhx08yxbn5bfgx9m32r8yqwjxjw17rf8gnfvs8225";
+      sha256 = "18z9kv2nk8fgpns8r4ra39hs4d2v3knnwv9a996wrrbsfc9if8lp";
     };
     wmClass = "jetbrains-idea";
   };
 
-  ruby-mine = buildRubyMine rec {
-    name = "ruby-mine-${version}";
-    version = "2016.3.2";
-    description = "The Most Intelligent Ruby and Rails IDE";
-    license = stdenv.lib.licenses.unfree;
-    src = fetchurl {
-      url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
-      sha256 = "1fqlrvhlk09z8nx68qv4nqs5n8ldia3lixsl6r04gsfyl1a69sb6";
-    };
-    wmClass = "jetbrains-rubymine";
-  };
-
-  ruby-mine7 = buildRubyMine rec {
-    name = "ruby-mine-${version}";
-    version = "7.1.5";
-    description = "The Most Intelligent Ruby and Rails IDE";
+  phpstorm = buildPhpStorm rec {
+    name = "phpstorm-${version}";
+    version = "2017.1";
+    description = "Professional IDE for Web and PHP developers";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
-      url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
-      sha256 = "04fcxj1xlap9mxmwf051s926p2darlj5kwl4lms2gy5d8b2lhd5l";
+      url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
+      sha256 = "1ynffm5x8fqq2r71rr9rbvdifbwbvbhqb2x1hkyy4az38gxal1bm";
     };
-    wmClass = "jetbrains-rubymine";
+    wmClass = "jetbrains-phpstorm";
   };
 
-  ruby-mine8 = buildRubyMine rec {
-    name = "ruby-mine-${version}";
-    version = "8.0.4";
-    description = "The Most Intelligent Ruby and Rails IDE";
+  phpstorm10 = buildPhpStorm rec {
+    name = "phpstorm-${version}";
+    version = "10.0.4";
+    description = "Professional IDE for Web and PHP developers";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
-      url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
-      sha256 = "0hipxib7377232w1jbf8h98bmh0djkllsrq3lq0w3fdxqglma43a";
+      url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
+      sha256 = "0fi042zvjpg5pn2mnhj3bbrdkl1b9vmhpf2l6ca4nr0rhjjv7dsm";
     };
-    wmClass = "jetbrains-rubymine";
+    wmClass = "jetbrains-phpstorm";
   };
 
   pycharm-community = buildPycharm rec {
@@ -278,28 +327,52 @@ in
     wmClass = "jetbrains-pycharm";
   };
 
-  phpstorm = buildPhpStorm rec {
-    name = "phpstorm-${version}";
+  rider = buildRider rec {
+    name = "rider-${version}";
+    version = "171.3655.1246";
+    description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper";
+    license = stdenv.lib.licenses.unfree;
+    src = fetchurl {
+      url = "https://download.jetbrains.com/resharper/riderRS-${version}.tar.gz";
+      sha256 = "90f9f8f1919e0f1dad42387f1a308483448323b089c13c409f3dd4d52992266b";
+    };
+    wmClass = "jetbrains-rider";
+  };
+
+  ruby-mine = buildRubyMine rec {
+    name = "ruby-mine-${version}";
     version = "2017.1";
-    description = "Professional IDE for Web and PHP developers";
+    description = "The Most Intelligent Ruby and Rails IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
-      url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
-      sha256 = "1ynffm5x8fqq2r71rr9rbvdifbwbvbhqb2x1hkyy4az38gxal1bm";
+      url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
+      sha256 = "6c27f43ddc385ffba2cb2f011b80ab46d9b128d0fccf3b4ea43272fe36401a3a";
     };
-    wmClass = "jetbrains-phpstorm";
+    wmClass = "jetbrains-rubymine";
   };
 
-  phpstorm10 = buildPhpStorm rec {
-    name = "phpstorm-${version}";
-    version = "10.0.4";
-    description = "Professional IDE for Web and PHP developers";
+  ruby-mine7 = buildRubyMine rec {
+    name = "ruby-mine-${version}";
+    version = "7.1.5";
+    description = "The Most Intelligent Ruby and Rails IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
-      url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
-      sha256 = "0fi042zvjpg5pn2mnhj3bbrdkl1b9vmhpf2l6ca4nr0rhjjv7dsm";
+      url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
+      sha256 = "04fcxj1xlap9mxmwf051s926p2darlj5kwl4lms2gy5d8b2lhd5l";
     };
-    wmClass = "jetbrains-phpstorm";
+    wmClass = "jetbrains-rubymine";
+  };
+
+  ruby-mine8 = buildRubyMine rec {
+    name = "ruby-mine-${version}";
+    version = "8.0.4";
+    description = "The Most Intelligent Ruby and Rails IDE";
+    license = stdenv.lib.licenses.unfree;
+    src = fetchurl {
+      url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
+      sha256 = "0hipxib7377232w1jbf8h98bmh0djkllsrq3lq0w3fdxqglma43a";
+    };
+    wmClass = "jetbrains-rubymine";
   };
 
   webstorm = buildWebStorm rec {
@@ -337,16 +410,4 @@ in
     };
     wmClass = "jetbrains-webstorm";
   };
-
-  datagrip = buildDataGrip rec {
-    name = "datagrip-${version}";
-    version = "2016.3.2";
-    description = "Your Swiss Army Knife for Databases and SQL";
-    license = stdenv.lib.licenses.unfree;
-    src = fetchurl {
-      url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
-      sha256 = "19njb6i7nl6szql7cy99jmig59b304c6im3988p1dd8dj2j6csv3";
-    };
-    wmClass = "jetbrains-datagrip";
-  };
 }
diff --git a/pkgs/applications/editors/jucipp/default.nix b/pkgs/applications/editors/jucipp/default.nix
new file mode 100644
index 00000000000..ae4f1e6ad52
--- /dev/null
+++ b/pkgs/applications/editors/jucipp/default.nix
@@ -0,0 +1,73 @@
+{ config, stdenv, fetchgit, makeWrapper, gnome3, at_spi2_core, libcxx,
+  boost, epoxy, cmake, aspell, llvmPackages, libgit2, pkgconfig, pcre,
+  libXdmcp, libxkbcommon, libpthreadstubs, wrapGAppsHook, aspellDicts,
+  coreutils, glibc, dbus_libs, openssl, libxml2, gnumake, binutils, ctags }:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+  name = "juicipp-${version}";
+  version = "1.2.3";
+
+  meta = {
+    homepage = https://github.com/cppit/jucipp;
+    description = "A lightweight, platform independent C++-IDE with support for C++11, C++14, and experimental C++17 features depending on libclang version";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ xnwdd ];
+  };
+
+  src = fetchgit {
+    url = "https://github.com/cppit/jucipp.git";
+    rev = "refs/tags/v${version}";
+    deepClone = true;
+    sha256 = "0xp6ijnrggskjrvscp204bmdpz48l5a8nxr9abp17wni6akb5wiq";
+  };
+
+  nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
+  buildInputs = [
+    dbus_libs
+    openssl
+    libxml2
+    gnome3.gtksourceview
+    at_spi2_core
+    pcre
+    epoxy
+    boost
+    libXdmcp
+    cmake
+    aspell
+    libgit2
+    libxkbcommon
+    gnome3.gtkmm3
+    libpthreadstubs
+    gnome3.gtksourceviewmm
+    llvmPackages.clang.cc
+    llvmPackages.lldb
+    gnome3.dconf
+  ];
+
+
+  lintIncludes = let
+    p = "arguments.emplace_back(\"-I";
+    e = "\");";
+    v = stdenv.lib.getVersion llvmPackages.clang;
+  in
+    p+llvmPackages.libcxx+"/include/c++/v1"+e
+    +p+llvmPackages.clang-unwrapped+"/lib/clang/"+v+"/include/"+e
+    +p+glibc.dev+"/include"+e;
+
+  preConfigure = ''
+    sed -i 's|liblldb LIBLLDB_LIBRARIES|liblldb LIBNOTHING|g' CMakeLists.txt
+    sed -i 's|> arguments;|> arguments; ${lintIncludes}|g' src/source_clang.cc
+  '';
+  cmakeFlags = "-DLIBLLDB_LIBRARIES=${stdenv.lib.makeLibraryPath [ llvmPackages.lldb ]}/liblldb.so";
+  postInstall = ''
+    mv $out/bin/juci $out/bin/.juci
+    makeWrapper "$out/bin/.juci" "$out/bin/juci" \
+      --set PATH "${stdenv.lib.makeBinPath [ ctags coreutils llvmPackages.clang.cc cmake gnumake binutils llvmPackages.clang ]}" \
+      --set NO_AT_BRIDGE 1 \
+      --set ASPELL_CONF "dict-dir ${aspellDicts.en}/lib/aspell"
+  '';
+
+}
diff --git a/pkgs/applications/editors/kakoune/default.nix b/pkgs/applications/editors/kakoune/default.nix
index 4590939b516..067aff5ee69 100644
--- a/pkgs/applications/editors/kakoune/default.nix
+++ b/pkgs/applications/editors/kakoune/default.nix
@@ -3,25 +3,20 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "kakoune-nightly-${version}";
-  version = "2017-02-09";
+  name = "kakoune-unstable-${version}";
+  version = "2017-04-12";
   src = fetchFromGitHub {
     repo = "kakoune";
     owner = "mawww";
-    rev = "9ba1665e58ee84b6596d89e6ef75f7c32e7c6c14";
-    sha256 = "1l25mzq64a481qlsyh25rzp5rzajrkx4dq29677z85lnjqn30wbi";
+    rev = "7482d117cc85523e840dff595134dcb9cdc62207";
+    sha256 = "08j611y192n9vln9i94ldlvz3k0sg79dkmfc0b1vczrmaxhpgpfh";
   };
   buildInputs = [ ncurses boost asciidoc docbook_xsl libxslt ];
 
-  buildPhase = ''
-    sed -ie 's#--no-xmllint#--no-xmllint --xsltproc-opts="--nonet"#g' src/Makefile
-    substituteInPlace src/Makefile --replace "boost_regex-mt" "boost_regex"
+  postPatch = ''
     export PREFIX=$out
-    (cd src && make )
-  '';
-
-  installPhase = ''
-    (cd src && make install)
+    cd src
+    sed -ie 's#--no-xmllint#--no-xmllint --xsltproc-opts="--nonet"#g' Makefile
   '';
 
   meta = {
diff --git a/pkgs/applications/editors/lighttable/default.nix b/pkgs/applications/editors/lighttable/default.nix
index 68f5e14891f..74a83c1278a 100644
--- a/pkgs/applications/editors/lighttable/default.nix
+++ b/pkgs/applications/editors/lighttable/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, buildEnv, zlib, glib, alsaLib, makeDesktopItem
+{ stdenv, fetchurl, zlib, glib, alsaLib, makeDesktopItem
 , dbus, gtk2, atk, pango, freetype, fontconfig, libgnome_keyring3, gdk_pixbuf
 , cairo, cups, expat, libgpgerror, nspr, gnome3, nss, xorg, systemd, libnotify
 }:
diff --git a/pkgs/applications/editors/nano/default.nix b/pkgs/applications/editors/nano/default.nix
index b1f581dc841..bfc3b7c79fa 100644
--- a/pkgs/applications/editors/nano/default.nix
+++ b/pkgs/applications/editors/nano/default.nix
@@ -20,28 +20,24 @@ let
 
 in stdenv.mkDerivation rec {
   name = "nano-${version}";
-  version = "2.7.5";
-  
+  version = "2.8.1";
+
   src = fetchurl {
     url = "mirror://gnu/nano/${name}.tar.xz";
-    sha256 = "1r37gqx7hppqbgsbclchiis8wzzpb9srm3q3dlvlii2gpkk28kd6";
+    sha256 = "02vdnv30ms2s53ch5j4ldch5sxwjsg3098zkvwrwhi9k6yxshdg9";
   };
 
   nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;
   buildInputs = [ ncurses ];
-  
+
   outputs = [ "out" "info" ];
-  
+
   configureFlags = ''
     --sysconfdir=/etc
     ${optionalString (!enableNls) "--disable-nls"}
     ${optionalString enableTiny "--enable-tiny"}
   '';
 
-  postPatch = optionalString stdenv.isDarwin ''
-    substituteInPlace src/text.c --replace "__time_t" "time_t"
-  '';
-
   postInstall = ''
     cp ${nixSyntaxHighlight}/nix.nanorc $out/share/nano/
   '';
diff --git a/pkgs/applications/editors/texstudio/default.nix b/pkgs/applications/editors/texstudio/default.nix
index 89ae2e04eac..52223dafeb7 100644
--- a/pkgs/applications/editors/texstudio/default.nix
+++ b/pkgs/applications/editors/texstudio/default.nix
@@ -2,16 +2,17 @@
 
 stdenv.mkDerivation rec {
   pname = "texstudio";
-  version = "2.11.2";
+  version = "2.12.4";
   name = "${pname}-${version}";
   altname="Texstudio";
 
   src = fetchurl {
     url = "mirror://sourceforge/texstudio/${name}.tar.gz";
-    sha256 = "1p6ja5y5902y814f3f5mafh0y8vj682ghrarx1pbm4r5ap8x9z82";
+    sha256 = "03917faqyy0a1k6b86blc2fcards5a1819ydgkc4jlhwiaym4iyw";
   };
 
-  buildInputs = [ qt4 qmake4Hook poppler_qt4 zlib pkgconfig ];
+  nativeBuildInputs = [ qmake4Hook pkgconfig ];
+  buildInputs = [ qt4 poppler_qt4 zlib ];
 
   qmakeFlags = [ "NO_APPDATA=True" ];
 
@@ -22,7 +23,7 @@ stdenv.mkDerivation rec {
 	LaTeX editing with completion, structure viewer, preview,
 	spell checking and support of any compilation chain.
 	'';
-    homepage = "http://texstudio.sourceforge.net/";
+    homepage = http://texstudio.sourceforge.net;
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ cfouche ];
diff --git a/pkgs/applications/editors/textadept/default.nix b/pkgs/applications/editors/textadept/default.nix
index 1e24054b996..d1fa03c5479 100644
--- a/pkgs/applications/editors/textadept/default.nix
+++ b/pkgs/applications/editors/textadept/default.nix
@@ -43,11 +43,11 @@ let
 
 
   # These lists are taken from the Makefile.
-  scintilla_tgz  = "scintilla367.tgz";
+  scintilla_tgz  = "scintilla373.tgz";
   tre_zip        = "cdce45e8dd7a3b36954022b4a4d3570e1ac5a4f8.zip";
   scinterm_zip   = "scinterm_1.8.zip";
-  scintillua_zip = "scintillua_3.6.7-1.zip";
-  lua_tgz        = "lua-5.3.3.tar.gz";
+  scintillua_zip = "33298b6cbce3.zip";
+  lua_tgz        = "lua-5.3.4.tar.gz";
   lpeg_tgz       = "lpeg-1.0.0.tar.gz";
   lfs_zip        = "v_1_6_3.zip";
   lspawn_zip     = "lspawn_1.5.zip";
@@ -60,7 +60,8 @@ let
 
   scinterm_url   = "http://foicica.com/scinterm/download/" + scinterm_zip;
   tre_url        = "https://github.com/laurikari/tre/archive/" + tre_zip;
-  scintillua_url = "http://foicica.com/scintillua/download/" + scintillua_zip;
+  #scintillua_url = "http://foicica.com/scintillua/download/" + scintillua_zip;
+  scintillua_url = "http://foicica.com/hg/scintillua/archive/" + scintillua_zip;
   gtdialog_url   = "http://foicica.com/gtdialog/download/" + gtdialog_zip;
   lspawn_url     = "http://foicica.com/lspawn/download/" + lspawn_zip;
 
@@ -75,11 +76,11 @@ let
   termkey_url    = "http://www.leonerd.org.uk/code/libtermkey/" + termkey_tgz;
 
 
-  get_scintilla   = get_url scintilla_url   "0rh1xgd06qcnj4l0vi8g4i94vi63s76366b8hhqky3iqdjgwsxpi";
+  get_scintilla   = get_url scintilla_url   "0rkczxzj6bqxks4jcbxbyrarjhfjh95nwxxiqprfid1kaamgkfm2";
   get_tre         = get_url tre_url         "0mw8npwk5nnhc33352j4akannhpx77kqvfam8jdq1n4yf8js1gi7";
   get_scinterm    = get_url scinterm_url    "02ax6cjpxylfz7iqp1cjmsl323in066a38yklmsyzdl3w7761nxi";
-  get_scintillua  = get_url scintillua_url  "0fhyjrkfj2cvxnql65687nx1d0sfyg5lbrxmylyzhnfh4s4jnwmq";
-  get_lua         = get_url lua_url         "18mcfbbmjyp8f2l9yy7n6dzk066nq6man0kpwly4bppphilc04si";
+  get_scintillua  = get_url scintillua_url  "1kx113dpjby1p9jcsqlnlzwj01z94f9szw4b38077qav3bj4lk6g";
+  get_lua         = get_url lua_url         "0320a8dg3aci4hxla380dx1ifkw8gj4gbw5c4dz41g1kh98sm0gn";
   get_lpeg        = get_url lpeg_url        "13mz18s359wlkwm9d9iqlyyrrwjc6iqfpa99ai0icam2b3khl68h";
   get_lfs         = get_url_zip lfs_url     "1hxcnqj53540ysyw8fzax7f09pl98b8f55s712gsglcdxp2g2pri";
   get_lspawn      = get_url lspawn_url      "09c6v9irblay2kv1n7i59pyj9g4xb43c6rfa7ba5m353lymcwwqi";
@@ -87,7 +88,7 @@ let
   get_libluajit   = get_url libluajit_url   "1nhvcdjpqrhd5qbihdm3bxpw84irfvnw2vmfqnsy253ay3dxzrgy";
   get_gtdialog    = get_url gtdialog_url    "0nvcldyhj8abr8jny9pbyfjwg8qfp9f2h508vjmrvr5c5fqdbbm0";
   get_cdk         = get_url cdk_url         "0j74l874y33i26y5kjg3pf1vswyjif8k93pqhi0iqykpbxfsg382";
-  get_bombay      = get_url_zip bombay_url  "05fnh1imxdb4sb076fzqywqszp31whdbkzmpkqxc8q2r1m5vj3hg"
+  get_bombay      = get_url_zip bombay_url  "0illabngrrxidkprgz268wgjqknrds34nhm6hav95xc1nmsdr6jj"
     + "mv tip.zip bombay.zip\n";
   get_termkey     = get_url termkey_url     "12gkrv1ldwk945qbpprnyawh0jz7rmqh18fyndbxiajyxmj97538";
 
@@ -108,7 +109,7 @@ let
     + get_termkey;
 in
 stdenv.mkDerivation rec {
-  version = "9.0";
+  version = "9.3";
   name = "textadept-${version}";
 
   buildInputs = [
@@ -118,7 +119,7 @@ stdenv.mkDerivation rec {
   src = fetchhg {
     url = http://foicica.com/hg/textadept;
     rev = "textadept_${version}";
-    sha256 = "1fkxblf2db4i0kbfww94xwps7nbn88qc4fwghrm4dcszcq32jlfi";
+    sha256 = "18x79pazm86agn1khdxfnf87la6kli3xasi7dcjx7l6yyz19y14d";
   };
 
   preConfigure = ''
diff --git a/pkgs/applications/editors/vscode/default.nix b/pkgs/applications/editors/vscode/default.nix
index c4664060214..3d710296219 100644
--- a/pkgs/applications/editors/vscode/default.nix
+++ b/pkgs/applications/editors/vscode/default.nix
@@ -1,35 +1,38 @@
 { stdenv, lib, callPackage, fetchurl, unzip, atomEnv, makeDesktopItem,
-  makeWrapper, libXScrnSaver }:
+  makeWrapper, libXScrnSaver, libxkbfile }:
 
 let
-  version = "1.10.2";
-  rev = "8076a19fdcab7e1fc1707952d652f0bb6c6db331";
+  version = "1.11.2";
   channel = "stable";
 
-  # The revision can be obtained with the following command (see https://github.com/NixOS/nixpkgs/issues/22465):
-  # curl -w "%{url_effective}\n" -I -L -s -S https://vscode-update.azurewebsites.net/latest/linux-x64/stable -o /dev/null
+  plat = {
+    "i686-linux" = "linux-ia32";
+    "x86_64-linux" = "linux-x64";
+    "x86_64-darwin" = "darwin";
+  }.${stdenv.system};
 
-  sha256 = if stdenv.system == "i686-linux"    then "1rhwrpv17c8j06qja7i58cggzka8jm9v9h27jy22z30yxjz0p241"
-      else if stdenv.system == "x86_64-linux"  then "1c1w7wc39a5vdap8j143ym976p9l9iwns1y28mcgjwrihdlb5wb8"
-      else if stdenv.system == "x86_64-darwin" then "1zznsn84k79lqirzv950q7caq7c88yh2gglwjc11y8k69awmlpva"
-      else throw "Unsupported system: ${stdenv.system}";
+  sha256 = {
+    "i686-linux" = "0cd3iwd5aizixfxc6ayrpvx6k1zk8nsfhd8i3rgz4p4zzfnx6ri5";
+    "x86_64-linux" = "1y3qgm7p1vchh02mqgn8d8pxxnifxfs6hbv01q8zjw3gb7m4anw3";
+    "x86_64-darwin" = "1v8x466080rpm0rfiv1mr2adbpia6j5v9pbsspwm0ndc7ly0h71k";
+  }.${stdenv.system};
 
-  urlBase = "https://az764295.vo.msecnd.net/${channel}/${rev}/";
+  archive_fmt = if stdenv.system == "x86_64-darwin" then "zip" else "tar.gz";
+
+  rpath = lib.concatStringsSep ":" [
+    atomEnv.libPath
+    "${lib.makeLibraryPath [libXScrnSaver]}/libXss.so.1"
+    "${lib.makeLibraryPath [libxkbfile]}/libxkbfile.so.1"
+    "$out/lib/vscode"
+  ];
 
-  urlStr = if stdenv.system == "i686-linux" then
-        urlBase + "code-${channel}-code_${version}-1488982317_i386.tar.gz"
-      else if stdenv.system == "x86_64-linux" then
-        urlBase + "code-${channel}-code_${version}-1488981323_amd64.tar.gz"
-      else if stdenv.system == "x86_64-darwin" then
-        urlBase + "VSCode-darwin-${channel}.zip"
-      else throw "Unsupported system: ${stdenv.system}";
 in
   stdenv.mkDerivation rec {
     name = "vscode-${version}";
-    inherit version;
 
     src = fetchurl {
-      url = urlStr;
+      name = "VSCode_${version}_${plat}.${archive_fmt}";
+      url = "https://vscode-update.azurewebsites.net/${version}/${plat}/${channel}";
       inherit sha256;
     };
 
@@ -45,7 +48,7 @@ in
 
     buildInputs = if stdenv.system == "x86_64-darwin"
       then [ unzip makeWrapper libXScrnSaver ]
-      else [ makeWrapper libXScrnSaver ];
+      else [ makeWrapper libXScrnSaver libxkbfile ];
 
     installPhase =
       if stdenv.system == "x86_64-darwin" then ''
@@ -67,7 +70,7 @@ in
     postFixup = lib.optionalString (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") ''
       patchelf \
         --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-        --set-rpath "${atomEnv.libPath}:${stdenv.lib.makeLibraryPath [libXScrnSaver]}/libXss.so.1:$out/lib/vscode" \
+        --set-rpath "${rpath}" \
         $out/lib/vscode/code
     '';
 
diff --git a/pkgs/applications/graphics/darktable/default.nix b/pkgs/applications/graphics/darktable/default.nix
index 1a80c1466d4..68ab287f1a6 100644
--- a/pkgs/applications/graphics/darktable/default.nix
+++ b/pkgs/applications/graphics/darktable/default.nix
@@ -11,12 +11,12 @@
 assert stdenv ? glibc;
 
 stdenv.mkDerivation rec {
-  version = "2.2.3";
+  version = "2.2.4";
   name = "darktable-${version}";
 
   src = fetchurl {
     url = "https://github.com/darktable-org/darktable/releases/download/release-${version}/darktable-${version}.tar.xz";
-    sha256 = "1b33859585bf283577680c61e3c0ea4e48214371453b9c17a86664d2fbda48a0";
+    sha256 = "1n7rddkxwcifc3kcdlnar9w562xv4h78fqkkn27jihqzp3b4am5x";
   };
 
   buildInputs =
diff --git a/pkgs/applications/graphics/digikam/default.nix b/pkgs/applications/graphics/digikam/default.nix
index 00c0da7a78e..f1179101692 100644
--- a/pkgs/applications/graphics/digikam/default.nix
+++ b/pkgs/applications/graphics/digikam/default.nix
@@ -29,6 +29,7 @@
 , libgphoto2
 , libkipi
 , liblqr1
+, libqtav
 , libusb1
 , marble
 , mysql
@@ -83,6 +84,7 @@ stdenv.mkDerivation rec {
     libgphoto2
     libkipi
     liblqr1
+    libqtav
     libusb1
     marble.unwrapped
     mysql
@@ -99,6 +101,7 @@ stdenv.mkDerivation rec {
     "-DLIBUSB_INCLUDE_DIR=${libusb1.dev}/include/libusb-1.0"
     "-DENABLE_MYSQLSUPPORT=1"
     "-DENABLE_INTERNALMYSQL=1"
+    "-DENABLE_MEDIAPLAYER=1"
   ];
 
   fixupPhase = ''
diff --git a/pkgs/applications/graphics/djview/default.nix b/pkgs/applications/graphics/djview/default.nix
index 85c0f58174a..2b0dde210c5 100644
--- a/pkgs/applications/graphics/djview/default.nix
+++ b/pkgs/applications/graphics/djview/default.nix
@@ -1,5 +1,6 @@
 { stdenv, fetchurl, pkgconfig
-, djvulibre, qt4, xorg, libtiff }:
+, djvulibre, qt4, xorg, libtiff
+, darwin }:
 
 stdenv.mkDerivation rec {
   name = "djview-${version}";
@@ -12,7 +13,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
 
-  buildInputs = [ djvulibre qt4 xorg.libXt libtiff ];
+  buildInputs = [ djvulibre qt4 xorg.libXt libtiff ]
+  ++ stdenv.lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.AGL ];
 
   passthru = {
     mozillaPlugin = "/lib/netscape/plugins";
diff --git a/pkgs/applications/graphics/inkscape/default.nix b/pkgs/applications/graphics/inkscape/default.nix
index 2ab918e99b6..fdcd7636c02 100644
--- a/pkgs/applications/graphics/inkscape/default.nix
+++ b/pkgs/applications/graphics/inkscape/default.nix
@@ -2,7 +2,7 @@
 , libpng, zlib, popt, boehmgc, libxml2, libxslt, glib, gtkmm2
 , glibmm, libsigcxx, lcms, boost, gettext, makeWrapper, intltool
 , gsl, python2, poppler, imagemagick, libwpg, librevenge
-, libvisio, libcdr, libexif, automake114x, cmake
+, libvisio, libcdr, libexif, automake114x, potrace, cmake
 }:
 
 let
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     pkgconfig perl perlXMLParser libXft libpng zlib popt boehmgc
     libxml2 libxslt glib gtkmm2 glibmm libsigcxx lcms boost gettext
     makeWrapper intltool gsl poppler imagemagick libwpg librevenge
-    libvisio libcdr libexif automake114x cmake
+    libvisio libcdr libexif automake114x potrace cmake
   ];
 
   enableParallelBuilding = true;
@@ -44,6 +44,9 @@ stdenv.mkDerivation rec {
   postInstall = ''
     # Make sure PyXML modules can be found at run-time.
     rm "$out/share/icons/hicolor/icon-theme.cache"
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    install_name_tool -change $out/lib/libinkscape_base.dylib $out/lib/inkscape/libinkscape_base.dylib $out/bin/inkscape
+    install_name_tool -change $out/lib/libinkscape_base.dylib $out/lib/inkscape/libinkscape_base.dylib $out/bin/inkview
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/graphics/shotwell/default.nix b/pkgs/applications/graphics/shotwell/default.nix
index 8cd1a04e977..0c77857e66b 100644
--- a/pkgs/applications/graphics/shotwell/default.nix
+++ b/pkgs/applications/graphics/shotwell/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   version = "${major}.${minor}";
-  major = "0.25";
-  minor = "90";
+  major = "0.26";
+  minor = "0";
   name = "shotwell-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/shotwell/${major}/${name}.tar.xz";
-    sha256 = "1xlywhwr27n2q7xid19zzgf6rmmiyf4jq62rxn2af2as8rpkf1pm";
+    sha256 = "090hvw9qcfs3irh05aji7pqh50j4v6xpwmsbl3r11svik7ag8p9h";
   };
 
   NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/glib-2.0 -I${glib.out}/lib/glib-2.0/include";
diff --git a/pkgs/applications/graphics/tesseract/4.x.nix b/pkgs/applications/graphics/tesseract/4.x.nix
new file mode 100644
index 00000000000..577bff91e35
--- /dev/null
+++ b/pkgs/applications/graphics/tesseract/4.x.nix
@@ -0,0 +1,61 @@
+{ stdenv, fetchFromGitHub, autoreconfHook, autoconf-archive, pkgconfig
+, leptonica, libpng, libtiff, icu, pango, opencl-headers
+
+# Supported list of languages or `null' for all available languages
+, enableLanguages ? null
+}:
+
+stdenv.mkDerivation rec {
+  name = "tesseract-${version}";
+  version = "4.00.00alpha-git-20170410";
+
+  src = fetchFromGitHub {
+    owner = "tesseract-ocr";
+    repo = "tesseract";
+    rev = "36a995bdc92eb2dd8bc5a63205708944a3f990a1";
+    sha256 = "0xz3krvap8sdm27v1dyb34lcdmx11wzvxyszpppfsfmjgkvg19bq";
+  };
+
+  tessdata = fetchFromGitHub {
+    owner = "tesseract-ocr";
+    repo = "tessdata";
+    rev = "8bf2e7ad08db9ca174ae2b0b3a7498c9f1f71d40";
+    sha256 = "0idwkv4qsmmqhrxcgyhy32yldl3vk054m7dkv4fjswfnalgsx794";
+  };
+
+  nativeBuildInputs = [ pkgconfig autoreconfHook autoconf-archive ];
+  buildInputs = [ leptonica libpng libtiff icu pango opencl-headers ];
+
+  # Copy the .traineddata files of the languages specified in enableLanguages
+  # into `$out/share/tessdata' and check afterwards if copying was successful.
+  postInstall = let
+    mkArg = lang: "-iname ${stdenv.lib.escapeShellArg "${lang}.traineddata"}";
+    mkFindArgs = stdenv.lib.concatMapStringsSep " -o " mkArg;
+    findLangArgs = if enableLanguages != null
+                   then "\\( ${mkFindArgs enableLanguages} \\)"
+                   else "-iname '*.traineddata'";
+  in ''
+    numLangs="$(find "$tessdata" -mindepth 1 -maxdepth 1 -type f \
+      ${findLangArgs} -exec cp -t "$out/share/tessdata" {} + -print | wc -l)"
+
+    ${if enableLanguages != null then ''
+      expected=${toString (builtins.length enableLanguages)}
+    '' else ''
+      expected="$(ls -1 "$tessdata/"*.traineddata | wc -l)"
+    ''}
+
+    if [ "$numLangs" -ne "$expected" ]; then
+      echo "Expected $expected languages, but $numLangs" \
+           "were copied to \`$out/share/tessdata'" >&2
+      exit 1
+    fi
+  '';
+
+  meta = {
+    description = "OCR engine";
+    homepage = http://code.google.com/p/tesseract-ocr/;
+    license = stdenv.lib.licenses.asl20;
+    maintainers = with stdenv.lib.maintainers; [viric];
+    platforms = with stdenv.lib.platforms; linux;
+  };
+}
diff --git a/pkgs/applications/graphics/tesseract/default.nix b/pkgs/applications/graphics/tesseract/default.nix
index 1f1da9a389f..14335a4c2a9 100644
--- a/pkgs/applications/graphics/tesseract/default.nix
+++ b/pkgs/applications/graphics/tesseract/default.nix
@@ -1,16 +1,19 @@
-{ stdenv, fetchFromGitHub, pkgconfig, leptonica, libpng, libtiff
-, icu, pango, opencl-headers
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig
+, leptonica, libpng, libtiff, icu, pango, opencl-headers
+
+# Supported list of languages or `null' for all available languages
+, enableLanguages ? null
 }:
 
 stdenv.mkDerivation rec {
   name = "tesseract-${version}";
-  version = "3.04.01";
+  version = "3.05.00";
 
   src = fetchFromGitHub {
     owner = "tesseract-ocr";
     repo = "tesseract";
     rev = version;
-    sha256 = "0h1x4z1h86n2gwknd0wck6gykkp99bmm02lg4a47a698g4az6ybv";
+    sha256 = "11wrpcfl118wxsv2c3w2scznwb48c4547qml42s2bpdz079g8y30";
   };
 
   tessdata = fetchFromGitHub {
@@ -20,12 +23,35 @@ stdenv.mkDerivation rec {
     sha256 = "1v4b63v5nzcxr2y3635r19l7lj5smjmc9vfk0wmxlryxncb4vpg7";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig autoreconfHook ];
   buildInputs = [ leptonica libpng libtiff icu pango opencl-headers ];
 
   LIBLEPT_HEADERSDIR = "${leptonica}/include";
 
-  postInstall = "cp -Rt \"$out/share/tessdata\" \"$tessdata/\"*";
+  # Copy the .traineddata files of the languages specified in enableLanguages
+  # into `$out/share/tessdata' and check afterwards if copying was successful.
+  postInstall = let
+    mkArg = lang: "-iname ${stdenv.lib.escapeShellArg "${lang}.traineddata"}";
+    mkFindArgs = stdenv.lib.concatMapStringsSep " -o " mkArg;
+    findLangArgs = if enableLanguages != null
+                   then "\\( ${mkFindArgs enableLanguages} \\)"
+                   else "-iname '*.traineddata'";
+  in ''
+    numLangs="$(find "$tessdata" -mindepth 1 -maxdepth 1 -type f \
+      ${findLangArgs} -exec cp -t "$out/share/tessdata" {} + -print | wc -l)"
+
+    ${if enableLanguages != null then ''
+      expected=${toString (builtins.length enableLanguages)}
+    '' else ''
+      expected="$(ls -1 "$tessdata/"*.traineddata | wc -l)"
+    ''}
+
+    if [ "$numLangs" -ne "$expected" ]; then
+      echo "Expected $expected languages, but $numLangs" \
+           "were copied to \`$out/share/tessdata'" >&2
+      exit 1
+    fi
+  '';
 
   meta = {
     description = "OCR engine";
diff --git a/pkgs/applications/kde/default.nix b/pkgs/applications/kde/default.nix
index 794ddd522d9..827cb34e22e 100644
--- a/pkgs/applications/kde/default.nix
+++ b/pkgs/applications/kde/default.nix
@@ -75,6 +75,7 @@ let
       kio-extras = callPackage ./kio-extras.nix {};
       kmime = callPackage ./kmime.nix {};
       kmix = callPackage ./kmix.nix {};
+      kolourpaint = callPackage ./kolourpaint.nix {};
       kompare = callPackage ./kompare.nix {};
       konsole = callPackage ./konsole.nix {};
       krfb = callPackage ./krfb.nix {};
diff --git a/pkgs/applications/kde/kolourpaint.nix b/pkgs/applications/kde/kolourpaint.nix
new file mode 100644
index 00000000000..75d5b6fca65
--- /dev/null
+++ b/pkgs/applications/kde/kolourpaint.nix
@@ -0,0 +1,28 @@
+{ lib
+, kdeApp
+, kdeWrapper
+, extra-cmake-modules
+, kdoctools
+, kdelibs4support
+, libkexiv2
+}:
+
+let
+  unwrapped =
+    kdeApp {
+      name = "kolourpaint";
+      nativeBuildInputs = [ extra-cmake-modules kdoctools ];
+      propagatedBuildInputs = [
+        kdelibs4support
+        libkexiv2
+      ];
+
+      meta = {
+        maintainers = [ lib.maintainers.fridh ];
+        license = with lib.licenses; [ gpl2 ];
+      };
+    };
+in kdeWrapper {
+  inherit unwrapped;
+  targets = ["bin/kolourpaint"];
+}
\ No newline at end of file
diff --git a/pkgs/applications/misc/albert/default.nix b/pkgs/applications/misc/albert/default.nix
index 2bbac699a3e..4a42c55c249 100644
--- a/pkgs/applications/misc/albert/default.nix
+++ b/pkgs/applications/misc/albert/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name    = "albert-${version}";
-  version = "0.10.0";
+  version = "0.10.2";
 
   src = fetchFromGitHub {
     owner  = "albertlauncher";
     repo   = "albert";
     rev    = "v${version}";
-    sha256 = "1r8m0b6lqljy314ilpi58sdpqyb9rr502nzx3pgmx2g2xz4izsfj";
+    sha256 = "0plb8c7js91bpf7qgq1snhry8x4zixyy34lq42nhsglab2kaq4ns";
   };
 
   nativeBuildInputs = [ cmake makeQtWrapper ];
diff --git a/pkgs/applications/misc/buku/default.nix b/pkgs/applications/misc/buku/default.nix
index 85d8180983e..1ee68b55aa7 100644
--- a/pkgs/applications/misc/buku/default.nix
+++ b/pkgs/applications/misc/buku/default.nix
@@ -2,21 +2,22 @@
 }:
 
 with pythonPackages; buildPythonApplication rec {
-  version = "2.8";
+  version = "2.9";
   name = "buku-${version}";
 
   src = fetchFromGitHub {
     owner = "jarun";
     repo = "buku";
     rev = "v${version}";
-    sha256 = "1gazvij0072lca0jh84i8mhnaxiwg56hcxmrmk2clxd2x213zyjm";
+    sha256 = "0ylq0j5w8jvzys4bj9m08bfr1sgf8h2b4fiax6hs6lcwn2882jbr";
   };
 
-  buildInputs = [
+  propagatedBuildInputs = [
     cryptography
     beautifulsoup4
+    requests2
+    urllib3
   ];
-  propagatedBuildInputs = [ beautifulsoup4 ];
 
   phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
 
@@ -31,7 +32,7 @@ with pythonPackages; buildPythonApplication rec {
     homepage = https://github.com/jarun/Buku;
     license = licenses.gpl3;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ matthiasbeyer ];
+    maintainers = with maintainers; [ matthiasbeyer infinisil ];
   };
 }
 
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index 39f3a12b90a..8d34a126daa 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -5,12 +5,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "2.82.0";
+  version = "2.83.0";
   name = "calibre-${version}";
 
   src = fetchurl {
     url = "https://download.calibre-ebook.com/${version}/${name}.tar.xz";
-    sha256 = "073iarhjsapqf1g8ji1w835biixybqq869flq58vkz37wjmray8k";
+    sha256 = "1ar6hkcl50lhgwccss759201cqgnwasqmhw9japgnz04fj66w5ln";
   };
 
   patches = [
@@ -47,6 +47,8 @@ stdenv.mkDerivation rec {
 
   dontUseQmakeConfigure = true;
 
+  enableParallelBuilding = true;
+
   nativeBuildInputs = [ makeWrapper pkgconfig qmakeHook ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/dbvisualizer/default.nix b/pkgs/applications/misc/dbvisualizer/default.nix
index f6dd06e6c89..7aa19ffb301 100644
--- a/pkgs/applications/misc/dbvisualizer/default.nix
+++ b/pkgs/applications/misc/dbvisualizer/default.nix
@@ -1,22 +1,22 @@
 { stdenv, fetchurl, jre, coreutils, makeWrapper }:
 
 stdenv.mkDerivation {
-  name = "dbvisualizer-9.5";
+  name = "dbvisualizer-9.5.7";
 
   src = fetchurl {
-    url = https://www.dbvis.com/product_download/dbvis-9.5/media/dbvis_unix_9_5.tar.gz;
-    sha256 = "1bdc03039b50807206fd72ecf8ba0b940f5bb0386f483e10b7c0b2fa75cac021";
+    url = https://www.dbvis.com/product_download/dbvis-9.5.7/media/dbvis_unix_9_5_7.tar.gz;
+    sha256 = "1xv4fw7cji2ffvv7z8vjl5lap512pj60s2ynihirrqld7pmklnyr";
   };
 
   buildInputs = [ makeWrapper ];
-  
+
   installPhase = ''
     mkdir -p $out/bin
     cp -a . $out
-    ln -sf $out/dbvis $out/bin    
+    ln -sf $out/dbvis $out/bin
     wrapProgram $out/bin/dbvis --set INSTALL4J_JAVA_HOME ${jre}
   '';
-  
+
   meta = {
     description = "The universal database tool";
     homepage = https://www.dbvis.com/;
diff --git a/pkgs/applications/misc/gammu/bashcomp-dir.patch b/pkgs/applications/misc/gammu/bashcomp-dir.patch
index 94cc2929c1e..d41aa432cf3 100644
--- a/pkgs/applications/misc/gammu/bashcomp-dir.patch
+++ b/pkgs/applications/misc/gammu/bashcomp-dir.patch
@@ -1,12 +1,11 @@
-diff -Naur gammu-1.33.0.orig/contrib/CMakeLists.txt gammu-1.33.0/contrib/CMakeLists.txt
---- gammu-1.33.0.orig/contrib/CMakeLists.txt	2013-12-26 20:56:22.887772110 +0100
-+++ gammu-1.33.0/contrib/CMakeLists.txt	2013-12-26 20:57:04.386276037 +0100
-@@ -85,7 +85,7 @@
+--- a/contrib/CMakeLists.txt
++++ b/contrib/CMakeLists.txt
+@@ -85,7 +85,7 @@ endif (INSTALL_PHP_EXAMPLES)
  if (INSTALL_BASH_COMPLETION)
+     macro_optional_find_package (BashCompletion)
+     if (NOT BASH_COMPLETION_FOUND)
+-      set (BASH_COMPLETION_COMPLETIONSDIR "/etc/bash_completion.d" CACHE PATH "Location of bash_completion.d")
++      set (BASH_COMPLETION_COMPLETIONSDIR "${CMAKE_INSTALL_PREFIX}/etc/bash_completion.d" CACHE PATH "Location of bash_completion.d")
+     endif (NOT BASH_COMPLETION_FOUND)
      install (
          FILES bash-completion/gammu
--        DESTINATION "/etc/bash_completion.d"
-+        DESTINATION "${CMAKE_INSTALL_PREFIX}/etc/bash_completion.d"
-         COMPONENT "bash"
-         )
- endif (INSTALL_BASH_COMPLETION)
diff --git a/pkgs/applications/misc/gammu/default.nix b/pkgs/applications/misc/gammu/default.nix
index 10ee8272f38..950ce210c06 100644
--- a/pkgs/applications/misc/gammu/default.nix
+++ b/pkgs/applications/misc/gammu/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, python, pkgconfig, cmake, bluez, libusb1, curl
+{ stdenv, fetchFromGitHub, python, pkgconfig, cmake, bluez, libusb1, curl
 , libiconv, gettext, sqlite
 , dbiSupport ? false, libdbi ? null, libdbiDrivers ? null
 , postgresSupport ? false, postgresql ? null
@@ -8,16 +8,20 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "gammu-${version}";
-  version = "1.33.0";
+  version = "1.38.2";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/project/gammu/gammu/${version}/gammu-${version}.tar.xz";
-    sha256 = "18gplx1v9d70k1q86d5i4n4dfpx367g34pj3zscppx126vwhv112";
+  src = fetchFromGitHub {
+    owner = "gammu";
+    repo = "gammu";
+    rev = version;
+    sha256 = "1rk3p3sjyy6n6mlqs4qgyxna4swrh1zm7b77npxv8j341wxj3khv";
   };
 
-  patches = [ ./bashcomp-dir.patch ];
+  patches = [ ./bashcomp-dir.patch ./systemd.patch ];
 
-  buildInputs = [ python pkgconfig cmake bluez libusb1 curl gettext sqlite libiconv ]
+  nativeBuildInputs = [ pkgconfig cmake ];
+
+  buildInputs = [ python bluez libusb1 curl gettext sqlite libiconv ]
   ++ optionals dbiSupport [ libdbi libdbiDrivers ]
   ++ optionals postgresSupport [ postgresql ];
 
diff --git a/pkgs/applications/misc/gammu/systemd.patch b/pkgs/applications/misc/gammu/systemd.patch
new file mode 100644
index 00000000000..22b49a5a2ff
--- /dev/null
+++ b/pkgs/applications/misc/gammu/systemd.patch
@@ -0,0 +1,30 @@
+diff --git a/cmake/templates/gammu.spec.in b/cmake/templates/gammu.spec.in
+index 8302353..e3ca59a 100644
+--- a/cmake/templates/gammu.spec.in
++++ b/cmake/templates/gammu.spec.in
+@@ -387,9 +387,9 @@ fi
+ %doc %{_mandir}/man7/gammu-smsd-run.7*
+ %doc %{_mandir}/man7/gammu-smsd-sql.7*
+ %doc %{_mandir}/man7/gammu-smsd-tables.7*
+-%dir %{_libexecdir}/systemd
+-%dir %{_libexecdir}/systemd/system
+-%{_libexecdir}/systemd/system/gammu-smsd.service
++%dir %{_prefix}/systemd
++%dir %{_prefix}/systemd/system
++%{_prefix}/systemd/system/gammu-smsd.service
+ 
+ %files -n libGammu%{so_ver} -f libgammu.lang
+ %defattr(-,root,root,-)
+diff --git a/contrib/CMakeLists.txt b/contrib/CMakeLists.txt
+index 78cc7fc..d674c36 100644
+--- a/contrib/CMakeLists.txt
++++ b/contrib/CMakeLists.txt
+@@ -97,7 +97,7 @@ endif (INSTALL_BASH_COMPLETION)
+ if (WITH_SYSTEMD)
+     install (
+         FILES init/gammu-smsd.service
+-        DESTINATION "${SYSTEMD_SERVICES_INSTALL_DIR}"
++        DESTINATION "${CMAKE_INSTALL_PREFIX}/systemd"
+         COMPONENT "systemd"
+     )
+ endif (WITH_SYSTEMD)
diff --git a/pkgs/applications/misc/golden-cheetah/default.nix b/pkgs/applications/misc/golden-cheetah/default.nix
index 68c9246c24b..d6da900656c 100644
--- a/pkgs/applications/misc/golden-cheetah/default.nix
+++ b/pkgs/applications/misc/golden-cheetah/default.nix
@@ -22,9 +22,13 @@ stdenv.mkDerivation rec {
     sed -i -e '21,23d' qwt/qwtconfig.pri # Removed forced installation to /usr/local
   '';
   installPhase = ''
+    runHook preInstall
+
     mkdir -p $out/bin
     cp src/GoldenCheetah $out/bin
     wrapQtProgram $out/bin/GoldenCheetah --set LD_LIBRARY_PATH "${zlib.out}/lib"
+
+    runHook postInstall
   '';
   meta = {
     description = "Performance software for cyclists, runners and triathletes";
diff --git a/pkgs/applications/misc/gpsbabel/clang-4.patch b/pkgs/applications/misc/gpsbabel/clang-4.patch
new file mode 100644
index 00000000000..6bd19ae6044
--- /dev/null
+++ b/pkgs/applications/misc/gpsbabel/clang-4.patch
@@ -0,0 +1,22 @@
+diff --git a/bushnell.cc b/bushnell.cc
+index 8fa844d..40707c4 100644
+--- a/bushnell.cc
++++ b/bushnell.cc
+@@ -135,7 +135,7 @@ bushnell_get_icon_from_name(QString name)
+     name = "Waypoint";
+   }
+
+-  for (t = bushnell_icons; t->icon > 0; t++) {
++  for (t = bushnell_icons; t->icon != 0; t++) {
+     if (0 == name.compare(t->icon, Qt::CaseInsensitive)) {
+       return t->symbol;
+     }
+@@ -147,7 +147,7 @@ static const char*
+ bushnell_get_name_from_symbol(signed int s)
+ {
+   icon_mapping_t* t;
+-  for (t = bushnell_icons; t->icon > 0; t++) {
++  for (t = bushnell_icons; t->icon != 0; t++) {
+     if (s == t->symbol) {
+       return t->icon;
+     }
diff --git a/pkgs/applications/misc/gpsbabel/default.nix b/pkgs/applications/misc/gpsbabel/default.nix
index 6c248bc4dfa..ace89cd8a21 100644
--- a/pkgs/applications/misc/gpsbabel/default.nix
+++ b/pkgs/applications/misc/gpsbabel/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch, zlib, qt4, which }:
+{ lib, stdenv, fetchurl, fetchpatch, zlib, qt4, which, IOKit }:
 
 stdenv.mkDerivation rec {
   name = "gpsbabel-${version}";
@@ -12,13 +12,15 @@ stdenv.mkDerivation rec {
   };
 
   patches = [
+    ./clang-4.patch
     (fetchpatch {
       url = https://sources.debian.net/data/main/g/gpsbabel/1.5.3-2/debian/patches/use_minizip;
       sha256 = "03fpsmlx1wc48d1j405zkzp8j64hcp0z72islf4mk1immql3ibcr";
     })
   ];
 
-  buildInputs = [ zlib qt4 which ];
+  buildInputs = [ zlib qt4 which ]
+    ++ lib.optionals stdenv.isDarwin [ IOKit ];
 
   /* FIXME: Building the documentation, with "make doc", requires this:
 
@@ -40,11 +42,11 @@ stdenv.mkDerivation rec {
     patchShebangs testo
     substituteInPlace testo \
       --replace "-x /usr/bin/hexdump" ""
-  '' + (
+  ''
     # The raymarine and gtm tests fail on i686 despite -ffloat-store.
-    if stdenv.isi686 then "rm -v testo.d/raymarine.test testo.d/gtm.test;"
-    else ""
-  );
+  + lib.optionalString stdenv.isi686 "rm -v testo.d/raymarine.test testo.d/gtm.test;"
+    # The gtm, kml and tomtom asc tests fail on darwin, see PR #23572.
+  + lib.optionalString stdenv.isDarwin "rm -v testo.d/gtm.test testo.d/kml.test testo.d/tomtom_asc.test";
 
   meta = with stdenv.lib; {
     description = "Convert, upload and download data from GPS and Map programs";
diff --git a/pkgs/applications/misc/gpxsee/default.nix b/pkgs/applications/misc/gpxsee/default.nix
index edc8bbc3f77..5b977d13796 100644
--- a/pkgs/applications/misc/gpxsee/default.nix
+++ b/pkgs/applications/misc/gpxsee/default.nix
@@ -1,27 +1,31 @@
-{ stdenv, fetchFromGitHub, qmakeHook }:
+{ stdenv, fetchFromGitHub, qmakeHook, qtbase, qttools, makeQtWrapper }:
 
 stdenv.mkDerivation rec {
   name = "gpxsee-${version}";
-  version = "2.17";
+  version = "4.3";
 
   src = fetchFromGitHub {
     owner = "tumic0";
     repo = "GPXSee";
     rev = version;
-    sha256 = "1422kgj972ydasqqm0k02qf3v2py7if2ibri7yjg8awqilacy6by";
+    sha256 = "15f686frxlrmdvh5cc837kx62g0ihqj4vb87i8433g7l5vqkv3lf";
   };
 
-  nativeBuildInputs = [ qmakeHook ];
-  
-  patchPhase = ''
-    sed -i '/lang\/gpxsee_cs.qm/d' gpxsee.qrc
+  nativeBuildInputs = [ qmakeHook qttools makeQtWrapper ];
+
+  preConfigure = ''
+    substituteInPlace src/config.h --replace /usr/share/gpxsee $out/share/gpxsee
+    lrelease lang/*.ts
   '';
 
   preFixup = ''
-    mkdir -p $out/bin
-    cp GPXSee $out/bin
+    install -Dm755 GPXSee $out/bin/GPXSee
+    wrapQtProgram $out/bin/GPXSee
+
+    mkdir -p $out/share/gpxsee
+    cp pkg/maps.txt $out/share/gpxsee
   '';
-  
+
   meta = with stdenv.lib; {
     homepage = http://tumic.wz.cz/gpxsee;
     description = "GPX viewer and analyzer";
diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix
index 05a4db7a250..57b844de97b 100644
--- a/pkgs/applications/misc/hugo/default.nix
+++ b/pkgs/applications/misc/hugo/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "hugo-${version}";
-  version = "0.18.1";
+  version = "0.20.2";
 
   goPackagePath = "github.com/spf13/hugo";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "spf13";
     repo = "hugo";
     rev = "v${version}";
-    sha256 = "1nmabcrq96b339in2yr2zwcd41nadr4bha3rlpyaxlzbyyhz2f81";
+    sha256 = "1dvd9kiqp87cbf027kvyqb282pxs8qm16r1dk74l5drranfvkszy";
   };
 
   goDeps = ./deps.nix;
diff --git a/pkgs/applications/misc/hugo/deps.nix b/pkgs/applications/misc/hugo/deps.nix
index 0a95b083c0b..e2e2d093dde 100644
--- a/pkgs/applications/misc/hugo/deps.nix
+++ b/pkgs/applications/misc/hugo/deps.nix
@@ -1,353 +1,380 @@
 [
   {
-    goPackagePath = "golang.org/x/sys";
+    goPackagePath = "github.com/BurntSushi/toml";
     fetch = {
       type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev = "d9157a9621b69ad1d8d77a1933590c416593f24f";
-      sha256 = "1asdbp7rj1j1m1aar1a022wpcwbml6zih6cpbxaw7b2m8v8is931";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "99064174e013895bbd9b025c31100bd1d9b590ca";
+      sha256 = "058qrar8rvw3wb0ci1mf1axnqq2729cvv9zmdr4ms2nn9s97yiz9";
     };
   }
   {
-    goPackagePath = "gopkg.in/yaml.v2";
+    goPackagePath = "github.com/PuerkitoBio/purell";
     fetch = {
       type = "git";
-      url = "https://gopkg.in/yaml.v2";
-      rev = "a83829b6f1293c91addabc89d0571c246397bbf4";
-      sha256 = "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh";
+      url = "https://github.com/PuerkitoBio/purell";
+      rev = "0bcb03f4b4d0a9428594752bd2a3b9aa0a9d4bd4";
+      sha256 = "0vsxyn1fbm7g873b8kf3hcsgqgncb5nmfq3zfsc35a9yhzarka91";
     };
   }
   {
-    goPackagePath = "golang.org/x/crypto";
+    goPackagePath = "github.com/PuerkitoBio/urlesc";
     fetch = {
       type = "git";
-      url = "https://go.googlesource.com/crypto";
-      rev = "575fdbe86e5dd89229707ebec0575ce7d088a4a6";
-      sha256 = "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa";
+      url = "https://github.com/PuerkitoBio/urlesc";
+      rev = "5bd2802263f21d8788851d5305584c82a5c75d7e";
+      sha256 = "15y5r3asvm7196m3nza5xvdvlc2k11p6lfs6hi917hl7r9vgi6mp";
     };
   }
   {
-    goPackagePath = "github.com/gorilla/websocket";
+    goPackagePath = "github.com/bep/gitmap";
     fetch = {
       type = "git";
-      url = "https://github.com/gorilla/websocket";
-      rev = "a622679ebd7a3b813862379232f645f8e690e43f";
-      sha256 = "1nc9jbcmgya1i6dmf6sbcqsnxi9hbjg6dz1z0k7zmc6xdwlq0y4q";
+      url = "https://github.com/bep/gitmap";
+      rev = "dcb907b39a0690430d435eb8f63cd8811961231f";
+      sha256 = "0bw4spyiidrvd8rls9g57mwxykfmv57qi9mcnjadbqrpv92br856";
     };
   }
   {
-    goPackagePath = "github.com/inconshreveable/mousetrap";
+    goPackagePath = "github.com/bep/inflect";
     fetch = {
       type = "git";
-      url = "https://github.com/inconshreveable/mousetrap";
-      rev = "9dbb96d2c3a964935b0870b5abaea13c98b483aa";
-      sha256 = "1f9g8vm18qv1rcb745a4iahql9vfrz0jni9mnzriab2wy1pfdl5b";
+      url = "https://github.com/bep/inflect";
+      rev = "b896c45f5af983b1f416bdf3bb89c4f1f0926f69";
+      sha256 = "0drv6in94n7lmap4ajvgqlvdcbpn8alinfdzywzpihvzbx21b3h3";
     };
   }
   {
-    goPackagePath = "github.com/kardianos/osext";
+    goPackagePath = "github.com/chaseadamsio/goorgeous";
     fetch = {
       type = "git";
-      url = "https://github.com/kardianos/osext";
-      rev = "29ae4ffbc9a6fe9fb2bc5029050ce6996ea1d3bc";
-      sha256 = "1mawalaz84i16njkz6f9fd5jxhcbxkbsjnav3cmqq2dncv2hyv8a";
+      url = "https://github.com/chaseadamsio/goorgeous";
+      rev = "42b0ec184e93fc9fd2c0402f099a4939aba68407";
+      sha256 = "00mlv64q34d0vdq7p88hlsck4lsnk2pnxghx1jzy99r7wvs34am3";
     };
   }
   {
-    goPackagePath = "github.com/hashicorp/hcl";
+    goPackagePath = "github.com/cpuguy83/go-md2man";
     fetch = {
       type = "git";
-      url = "https://github.com/hashicorp/hcl";
-      rev = "54864211433d45cb780682431585b3e573b49e4a";
-      sha256 = "07l2dydzjpdgm2d4a72hkmincn455j3nrafg6hs3c23bkvizj950";
+      url = "https://github.com/cpuguy83/go-md2man";
+      rev = "a65d4d2de4d5f7c74868dfa9b202a3c8be315aaa";
+      sha256 = "1rm3zjrmfpzy0l3qp02xmd5pqzl77pdql9pbxhl0k1qw2vfzrjv6";
     };
   }
   {
-    goPackagePath = "github.com/hashicorp/go-multierror";
+    goPackagePath = "github.com/dchest/cssmin";
     fetch = {
       type = "git";
-      url = "https://github.com/hashicorp/go-multierror";
-      rev = "56912fb08d85084aa318edcf2bba735b97cf35c5";
-      sha256 = "0s01cqdab2f7fxkkjjk2wqx05a1shnwlvfn45h2pi3i4gapvcn0r";
+      url = "https://github.com/dchest/cssmin";
+      rev = "fb8d9b44afdc258bfff6052d3667521babcb2239";
+      sha256 = "09sdijfx5d05z4cd5k6lhl7k3kbpdf2amzlngv15h5v0fff9qw4s";
     };
   }
   {
-    goPackagePath = "github.com/BurntSushi/toml";
+    goPackagePath = "github.com/eknkc/amber";
     fetch = {
       type = "git";
-      url = "https://github.com/BurntSushi/toml";
-      rev = "056c9bc7be7190eaa7715723883caffa5f8fa3e4";
-      sha256 = "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw";
+      url = "https://github.com/eknkc/amber";
+      rev = "9be5e8aae85904f63d505e0c00e5e0881d44ef4d";
+      sha256 = "1hmsqxwajgpmg1svzjqxf4n81qy7qs6m39cjv69jkhz9lpwc305j";
     };
   }
   {
-    goPackagePath = "github.com/mitchellh/mapstructure";
+    goPackagePath = "github.com/fortytw2/leaktest";
     fetch = {
       type = "git";
-      url = "https://github.com/mitchellh/mapstructure";
-      rev = "281073eb9eb092240d33ef253c404f1cca550309";
-      sha256 = "1zjx9fv29639sp1fn84rxs830z7gp7bs38yd5y1hl5adb8s5x1mh";
+      url = "https://github.com/fortytw2/leaktest";
+      rev = "0db74e8cd5adacfcc982838c6e185789e4b44e14";
+      sha256 = "11s04f1pliqw185ai1dbpqn5rahc3yzv2fp5zdanjvql4168499m";
     };
   }
   {
-    goPackagePath = "golang.org/x/text";
+    goPackagePath = "github.com/fsnotify/fsnotify";
     fetch = {
       type = "git";
-      url = "https://go.googlesource.com/text";
-      rev = "5eb8d4684c4796dd36c74f6452f2c0fa6c79597e";
-      sha256 = "1cjwm2pv42dbfqc6ylr7jmma902zg4gng5aarqrbjf1k2nf2vs14";
+      url = "https://github.com/fsnotify/fsnotify";
+      rev = "4da3e2cfbabc9f751898f250b49f2439785783a1";
+      sha256 = "1y2l9jaf99j6gidcfdgq3hifxyiwv4f7awpll80p170ixdbqxvl3";
     };
   }
   {
-    goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
+    goPackagePath = "github.com/gorilla/websocket";
     fetch = {
       type = "git";
-      url = "https://github.com/shurcooL/sanitized_anchor_name";
-      rev = "10ef21a441db47d8b13ebcc5fd2310f636973c77";
-      sha256 = "1cnbzcf47cn796rcjpph1s64qrabhkv5dn9sbynsy7m9zdwr5f01";
+      url = "https://github.com/gorilla/websocket";
+      rev = "adf16b31781325cbd41085c5be901d95b4d1f33d";
+      sha256 = "0f93k3igbqqwsl734lxnkbfajc4lcyzg4szg15vb26qn939b5ccx";
     };
   }
   {
-    goPackagePath = "github.com/russross/blackfriday";
+    goPackagePath = "github.com/hashicorp/hcl";
     fetch = {
       type = "git";
-      url = "https://github.com/russross/blackfriday";
-      rev = "d18b67ae0afd61dae240896eae1785f00709aa31";
-      sha256 = "1l78hz8k1ixry5fjw29834jz1q5ysjcpf6kx2ggjj1s6xh0bfzvf";
+      url = "https://github.com/hashicorp/hcl";
+      rev = "80e628d796135357b3d2e33a985c666b9f35eee1";
+      sha256 = "0l85a7ir60hycb3mqsxmrz18f1kax03k55afsahr8xf46pjp5pyb";
     };
   }
   {
-    goPackagePath = "github.com/yosssi/ace";
+    goPackagePath = "github.com/inconshreveable/mousetrap";
     fetch = {
       type = "git";
-      url = "https://github.com/yosssi/ace";
-      rev = "71afeb714739f9d5f7e1849bcd4a0a5938e1a70d";
-      sha256 = "15k7ji8m3nqbwhnsvp82j4qa45sgvwv2giliw2xkdwi2g7mfrn8k";
+      url = "https://github.com/inconshreveable/mousetrap";
+      rev = "76626ae9c91c4f2a10f34cad8ce83ea42c93bb75";
+      sha256 = "1mn0kg48xkd74brf48qf5hzp0bc6g8cf5a77w895rl3qnlpfw152";
     };
   }
   {
-    goPackagePath = "github.com/spf13/viper";
+    goPackagePath = "github.com/kardianos/osext";
     fetch = {
       type = "git";
-      url = "https://github.com/spf13/viper";
-      rev = "ec4eb2fa8549869ae7a2accd4fcc83d1c0555c15";
-      sha256 = "018niqyrg09andj3g08jalflq2ypz9bp7qb1mbk50kfly29lkih7";
+      url = "https://github.com/kardianos/osext";
+      rev = "9b883c5eb462dd5cb1b0a7a104fe86bc6b9bd391";
+      sha256 = "0cyhbgsxwdfnwy57pdfivvjfy951gxbg9qlsjbwm6vs3gfws07mr";
     };
   }
   {
-    goPackagePath = "github.com/spf13/pflag";
+    goPackagePath = "github.com/kr/fs";
     fetch = {
       type = "git";
-      url = "https://github.com/spf13/pflag";
-      rev = "b83537d79690b75cac5e021b036ae16792bf0f20";
-      sha256 = "19blhq00rnynv11nnvixisx4h1429rp5bik13k661ixw0421qqyx";
+      url = "https://github.com/kr/fs";
+      rev = "2788f0dbd16903de03cb8186e5c7d97b69ad387b";
+      sha256 = "1c0fipl4rsh0v5liq1ska1dl83v3llab4k6lm8mvrx9c4dyp71ly";
     };
   }
   {
-    goPackagePath = "github.com/spf13/jwalterweatherman";
+    goPackagePath = "github.com/kyokomi/emoji";
     fetch = {
       type = "git";
-      url = "https://github.com/spf13/jwalterweatherman";
-      rev = "33c24e77fb80341fe7130ee7c594256ff08ccc46";
-      sha256 = "1knvzspqzc2bh58q16zggzc8gcabjp5gr7zk4k7nx5ij4092cg0z";
+      url = "https://github.com/kyokomi/emoji";
+      rev = "7e06b236c489543f53868841f188a294e3383eab";
+      sha256 = "1q2j0k5a8qqka1syc9zwmf1cvm6k628kf2g1nmghp2kdr7q1xmyb";
     };
   }
   {
-    goPackagePath = "github.com/fsnotify/fsnotify";
+    goPackagePath = "github.com/magiconair/properties";
     fetch = {
       type = "git";
-      url = "https://github.com/fsnotify/fsnotify";
-      rev = "30411dbcefb7a1da7e84f75530ad3abe4011b4f8";
-      sha256 = "0kbpvyi6p9942k0vmcw5z13mja47f7hq7nqd332pn2zydss6kddm";
+      url = "https://github.com/magiconair/properties";
+      rev = "9c47895dc1ce54302908ab8a43385d1f5df2c11c";
+      sha256 = "0497bacr3gc7352gcwb07wyw7vb9m04xfd82mw0hpnzzw3kfnav3";
     };
   }
   {
-    goPackagePath = "github.com/magiconair/properties";
+    goPackagePath = "github.com/miekg/mmark";
     fetch = {
       type = "git";
-      url = "https://github.com/magiconair/properties";
-      rev = "c265cfa48dda6474e208715ca93e987829f572f8";
-      sha256 = "1ab9ywwsrdq5mvrcwl7m3276y1q4dfwinbv88vgpqwcqai9wkpp3";
+      url = "https://github.com/miekg/mmark";
+      rev = "2d4f1dd6f87cad351b9323bbaa6f6c586f0c4bee";
+      sha256 = "1ak54nvmryx73g16q6qaac9x0klhbxxmk1j6zlnfvvibnkj2pa90";
     };
   }
   {
-    goPackagePath = "github.com/bep/inflect";
+    goPackagePath = "github.com/mitchellh/mapstructure";
     fetch = {
       type = "git";
-      url = "https://github.com/bep/inflect";
-      rev = "b896c45f5af983b1f416bdf3bb89c4f1f0926f69";
-      sha256 = "0drv6in94n7lmap4ajvgqlvdcbpn8alinfdzywzpihvzbx21b3h3";
+      url = "https://github.com/mitchellh/mapstructure";
+      rev = "bfdb1a85537d60bc7e954e600c250219ea497417";
+      sha256 = "141kkh801jyp1r6hba14krydqg1iivp13j12is70j0g05z9fbji8";
     };
   }
   {
-    goPackagePath = "github.com/eknkc/amber";
+    goPackagePath = "github.com/nicksnyder/go-i18n";
     fetch = {
       type = "git";
-      url = "https://github.com/eknkc/amber";
-      rev = "91774f050c1453128146169b626489e60108ec03";
-      sha256 = "1rb8bm35h8a77q4py6r3818cpwh7kpq1kh2ib2rb4i5s7z75ciis";
+      url = "https://github.com/nicksnyder/go-i18n";
+      rev = "4df9b06c0c1ffd8538a3cfa9d888f8f52985b302";
+      sha256 = "1cbbvq9l822p7vrscvaah3zybsj5yxcsq9fgvgsg062njbb0x41f";
     };
   }
   {
-    goPackagePath = "github.com/spf13/afero";
+    goPackagePath = "github.com/pelletier/go-buffruneio";
     fetch = {
       type = "git";
-      url = "https://github.com/spf13/afero";
-      rev = "1a8ecf8b9da1fb5306e149e83128fc447957d2a8";
-      sha256 = "1nrg0gmqnl4h6zjmi4mdhrwnl3l34nzxpq2hsr3nizfvrx5gqbzw";
+      url = "https://github.com/pelletier/go-buffruneio";
+      rev = "c37440a7cf42ac63b919c752ca73a85067e05992";
+      sha256 = "0l83p1gg6g5mmhmxjisrhfimhbm71lwn1r2w7d6siwwqm9q08sd2";
     };
   }
   {
-    goPackagePath = "github.com/spf13/cast";
+    goPackagePath = "github.com/pelletier/go-toml";
     fetch = {
       type = "git";
-      url = "https://github.com/spf13/cast";
-      rev = "27b586b42e29bec072fe7379259cc719e1289da6";
-      sha256 = "1y73pfxdvm1bfpghwsfxj8gl4miv6fpzi9azxcknp6rcjn1gmq0x";
+      url = "https://github.com/pelletier/go-toml";
+      rev = "fee7787d3f811af92276f5ff10107092e95b7a1d";
+      sha256 = "0srx5hr35f9qzn5dnqqa0msyjknwn7vcq0jmlkvfxgaq0ygd6s3r";
     };
   }
   {
-    goPackagePath = "github.com/spf13/cobra";
+    goPackagePath = "github.com/pkg/errors";
     fetch = {
       type = "git";
-      url = "https://github.com/spf13/cobra";
-      rev = "bc81c21bd0d8be5ba2d6630a505d79d4467566e7";
-      sha256 = "1sp8gl25cjx0yibh6q1i8d5rbxpwaal3z8vz372wfmbz002say8r";
+      url = "https://github.com/pkg/errors";
+      rev = "248dadf4e9068a0b3e79f02ed0a610d935de5302";
+      sha256 = "03l80r0i9bxl0vz363w62k4a8apzglgbrz6viwym3044sxkl1qks";
     };
   }
   {
-    goPackagePath = "github.com/dchest/cssmin";
+    goPackagePath = "github.com/pkg/sftp";
     fetch = {
       type = "git";
-      url = "https://github.com/dchest/cssmin";
-      rev = "fb8d9b44afdc258bfff6052d3667521babcb2239";
-      sha256 = "09sdijfx5d05z4cd5k6lhl7k3kbpdf2amzlngv15h5v0fff9qw4s";
+      url = "https://github.com/pkg/sftp";
+      rev = "4d0e916071f68db74f8a73926335f809396d6b42";
+      sha256 = "0l4n4ld0lx53s0hgz5rhk8gn7kr51adsr0cs6wlqm296xlcfp52h";
     };
   }
   {
-    goPackagePath = "github.com/spf13/fsync";
+    goPackagePath = "github.com/russross/blackfriday";
     fetch = {
       type = "git";
-      url = "https://github.com/spf13/fsync";
-      rev = "cb2da332d00cbc04e4f3f677520dc3e7cc11874b";
-      sha256 = "03ib2xj80cbz77hx2baanyi50qr40akrybg49fzdvdm3lv9x100z";
+      url = "https://github.com/russross/blackfriday";
+      rev = "5f33e7b7878355cd2b7e6b8eefc48a5472c69f70";
+      sha256 = "0d7faqxrxvh8hwc1r8gbasgmr8x5blxvzciwspir2yafjfbqy87k";
     };
   }
   {
-    goPackagePath = "github.com/cpuguy83/go-md2man";
+    goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
     fetch = {
       type = "git";
-      url = "https://github.com/cpuguy83/go-md2man";
-      rev = "2724a9c9051aa62e9cca11304e7dd518e9e41599";
-      sha256 = "1j2bigs7ixy20cdqd246nxr417md2qcyvkfk3x94992cr88d0vyj";
+      url = "https://github.com/shurcooL/sanitized_anchor_name";
+      rev = "1dba4b3954bc059efc3991ec364f9f9a35f597d2";
+      sha256 = "0pwap8lp79pldd95a1qi3xhlsa17m8zddpgc5jzvk6d1cjpsm6qg";
     };
   }
   {
-    goPackagePath = "github.com/miekg/mmark";
+    goPackagePath = "github.com/spf13/afero";
     fetch = {
       type = "git";
-      url = "https://github.com/miekg/mmark";
-      rev = "adb5c3e2e9f3e7da9bd25291edda8e66c0045a2a";
-      sha256 = "0fycz17fj37fh95lfshdrfwrgkzi3hl1kgnily0cxc9zwfbap3qa";
+      url = "https://github.com/spf13/afero";
+      rev = "9be650865eab0c12963d8753212f4f9c66cdcf12";
+      sha256 = "12dhh6d07304lsjv7c4p95hkip0hnshqhwivdw39pbypgg0p8y34";
     };
   }
   {
-    goPackagePath = "github.com/spf13/nitro";
+    goPackagePath = "github.com/spf13/cast";
     fetch = {
       type = "git";
-      url = "https://github.com/spf13/nitro";
-      rev = "24d7ef30a12da0bdc5e2eb370a79c659ddccf0e8";
-      sha256 = "143sbpx0jdgf8f8ayv51x6l4jg6cnv6nps6n60qxhx4vd90s6mib";
+      url = "https://github.com/spf13/cast";
+      rev = "ce135a4ebeee6cfe9a26c93ee0d37825f26113c7";
+      sha256 = "1a2ahiyynn1kdjznqvzjfm5g5bc098gfw857bw9qikhdljvsnjiy";
     };
   }
   {
-    goPackagePath = "github.com/PuerkitoBio/purell";
+    goPackagePath = "github.com/spf13/cobra";
     fetch = {
       type = "git";
-      url = "https://github.com/PuerkitoBio/purell";
-      rev = "1d5d1cfad45d42ec5f81fa8ef23de09cebc6dcc3";
-      sha256 = "12k82576ka21c6572yy2v81kxpjrgf9mffjlz469g3vs0g3nkwlb";
+      url = "https://github.com/spf13/cobra";
+      rev = "7be4beda01ec05d0b93d80b3facd2b6f44080d94";
+      sha256 = "0jd2ya8kn763z16c3q5jl1x6raw2f3xq3vbaf4ppiy70zqzscmyg";
     };
   }
   {
-    goPackagePath = "github.com/pkg/sftp";
+    goPackagePath = "github.com/spf13/fsync";
     fetch = {
       type = "git";
-      url = "https://github.com/pkg/sftp";
-      rev = "d4c18e7ffdc496a38de67dde6e29b2f364afc472";
-      sha256 = "0cnl83k317gxskayfj3xwr4bl0vcbjvlwi3q0vjwvircynb6xscj";
+      url = "https://github.com/spf13/fsync";
+      rev = "12a01e648f05a938100a26858d2d59a120307a18";
+      sha256 = "1vvbgxbbsc4mvi1axgqgn9pzjz1p495dsmwpc7mr8qxh8f6s0nhv";
     };
   }
   {
-    goPackagePath = "github.com/kr/fs";
+    goPackagePath = "github.com/spf13/jwalterweatherman";
     fetch = {
       type = "git";
-      url = "https://github.com/kr/fs";
-      rev = "2788f0dbd16903de03cb8186e5c7d97b69ad387b";
-      sha256 = "1c0fipl4rsh0v5liq1ska1dl83v3llab4k6lm8mvrx9c4dyp71ly";
+      url = "https://github.com/spf13/jwalterweatherman";
+      rev = "fa7ca7e836cf3a8bb4ebf799f472c12d7e903d66";
+      sha256 = "0404b7bzx7cq1b2bgdb3gs7gjzm4vvg1hl2y9mcm4m6vz56vbcz8";
     };
   }
   {
-    goPackagePath = "github.com/kyokomi/emoji";
+    goPackagePath = "github.com/spf13/nitro";
     fetch = {
       type = "git";
-      url = "https://github.com/kyokomi/emoji";
-      rev = "17c5e7085c9d59630aa578df67f4469481fbe7a9";
-      sha256 = "0qs4mi7z1lghiyiw7s2bz5y959wj9ifmhyqh39xwqk69d690jwlp";
+      url = "https://github.com/spf13/nitro";
+      rev = "24d7ef30a12da0bdc5e2eb370a79c659ddccf0e8";
+      sha256 = "143sbpx0jdgf8f8ayv51x6l4jg6cnv6nps6n60qxhx4vd90s6mib";
     };
   }
   {
-    goPackagePath = "github.com/pkg/errors";
+    goPackagePath = "github.com/spf13/pflag";
     fetch = {
       type = "git";
-      url = "https://github.com/pkg/errors";
-      rev = "494e70f7620561491c2ca11e185bbef4b70060da";
-      sha256 = "0a0961ixl67vryhnzyzhai357c9n9a7v3vpkpqrh32spn033gjd9";
+      url = "https://github.com/spf13/pflag";
+      rev = "9ff6c6923cfffbcd502984b8e0c80539a94968b7";
+      sha256 = "0mfrxzyl8x7araa126lh8l3sihbbgfbzgkrg3v3cx7y4n3wrsqvn";
     };
   }
   {
-    goPackagePath = "github.com/PuerkitoBio/urlesc";
+    goPackagePath = "github.com/spf13/viper";
     fetch = {
       type = "git";
-      url = "https://github.com/PuerkitoBio/urlesc";
-      rev = "5fa9ff0392746aeae1c4b37fcc42c65afa7a9587";
-      sha256 = "0dppkmfs0hb5vcqli191x9yss5vvlx29qxjcywhdfirc89rn0sni";
+      url = "https://github.com/spf13/viper";
+      rev = "7538d73b4eb9511d85a9f1dfef202eeb8ac260f4";
+      sha256 = "0i4q715bjp018zw1b52zgx79j4s7s8l26dyrw8cslshibkx0frnl";
     };
   }
   {
-    goPackagePath = "github.com/nicksnyder/go-i18n";
+    goPackagePath = "github.com/stretchr/testify";
     fetch = {
       type = "git";
-      url = "https://github.com/nicksnyder/go-i18n";
-      rev = "e6c90c3ceece7f43060f843b495c3c9c031f5575";
-      sha256 = "1i1hqvq05lk12wnrhayca66pvfbyjnj7dm0lr0hn5qhb2i8k84kd";
+      url = "https://github.com/stretchr/testify";
+      rev = "4d4bfba8f1d1027c4fdbe371823030df51419987";
+      sha256 = "1d3yz1d2s88byjzmn60jbi1m9s552f7ghzbzik97fbph37i8yjhp";
     };
   }
   {
-    goPackagePath = "github.com/pelletier/go-toml";
+    goPackagePath = "github.com/yosssi/ace";
     fetch = {
       type = "git";
-      url = "https://github.com/pelletier/go-toml";
-      rev = "45932ad32dfdd20826f5671da37a5f3ce9f26a8d";
-      sha256 = "1rs25xqlpz2j9gqii144qnkvhsgzhwgy9ild7yvxhnbs2mybgix7";
+      url = "https://github.com/yosssi/ace";
+      rev = "ea038f4770b6746c3f8f84f14fa60d9fe1205b56";
+      sha256 = "1kbvbc56grrpnl65grygd23gyn3nkkhxdg8awhzkjmd0cvki8w1f";
     };
   }
   {
-    goPackagePath = "github.com/pelletier/go-buffruneio";
+    goPackagePath = "golang.org/x/crypto";
     fetch = {
       type = "git";
-      url = "https://github.com/pelletier/go-buffruneio";
-      rev = "df1e16fde7fc330a0ca68167c23bf7ed6ac31d6d";
-      sha256 = "0jwn2g4jfdb3wvpqisd8h055099pwx6c5i3bb4zxk5l9vybg1c5f";
+      url = "https://go.googlesource.com/crypto";
+      rev = "453249f01cfeb54c3d549ddb75ff152ca243f9d8";
+      sha256 = "0akybbzgi3v507a39bgnkk79rfhj8gflr7538g5a0177z5i9ygwa";
     };
   }
   {
-    goPackagePath = "github.com/bep/gitmap";
+    goPackagePath = "golang.org/x/net";
     fetch = {
       type = "git";
-      url = "https://github.com/bep/gitmap";
-      rev = "a1a71abe12823e27ae7507189fe2e914ba9626ac";
-      sha256 = "0qfhb72y6wbypaqv6dkl42syifnhps3qcy1karpd6ziw4pxak18g";
+      url = "https://go.googlesource.com/net";
+      rev = "906cda9512f77671ab44f8c8563b13a8e707b230";
+      sha256 = "0aa33n5a2zzrm2pnjyc3xkdmf8hq2qpafgdp8v6fxfb0swqjl2n3";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "075e574b89e4c2d22f2286a7e2b919519c6f3547";
+      sha256 = "1p38siwqcbd592lphaqpigl7scshkfy67k6jcwscbcsl6akw51km";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "0ad425fe45e885577bef05dc1c50f72e33188b16";
+      sha256 = "1jz0i8iagfd703flx5z006kisjixpm8iy4hiwywgbh31wypsxxyl";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "a3f3340b5840cee44f372bddb5880fcbc419b46a";
+      sha256 = "1djb53a8ikwgkfpf8namgf4d8pq1mq6q9q2c7q0z8x4dxf3whxj7";
     };
   }
 ]
diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix
index 6dd0f532f18..753d27b3376 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 = "11639";
+  version = "11826";
 
   src = fetchurl {
     url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
-    sha256 = "1xq074jfk58gh5xmm8s9sjbcbnl34dpx7wsgq9n60phciya90sfb";
+    sha256 = "0x59n6klkxkaqcqgbkscdynyp0grfxdil2fxmg710yp8vkzg0zk2";
   };
 
   phases = [ "installPhase" ];
diff --git a/pkgs/applications/misc/keepassx/community.nix b/pkgs/applications/misc/keepassx/community.nix
index a5defaf5c29..e103f62fd3c 100644
--- a/pkgs/applications/misc/keepassx/community.nix
+++ b/pkgs/applications/misc/keepassx/community.nix
@@ -7,13 +7,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "keepassx-community-${version}";
-  version = "2.1.3";
+  version = "2.1.4";
 
   src = fetchFromGitHub {
     owner = "keepassxreboot";
     repo = "keepassxc";
     rev = "${version}";
-    sha256 = "1zamk3dc44fn61b880i3l1r0np2sx2hs05cvcf2x4748r3xicacf";
+    sha256 = "1znnw2xpv58x0rbpmm4y662377mbmcilhf8mhhjsz8vhahms33a8";
   };
 
   cmakeFlags = optional (withKeePassHTTP) [ "-DWITH_XC_HTTP=ON" ];
diff --git a/pkgs/applications/misc/latte-dock/default.nix b/pkgs/applications/misc/latte-dock/default.nix
index 8792a07e3e9..cdde0beb827 100644
--- a/pkgs/applications/misc/latte-dock/default.nix
+++ b/pkgs/applications/misc/latte-dock/default.nix
@@ -1,26 +1,33 @@
-{ stdenv, lib, cmake, plasma-framework, fetchFromGitHub }:
+{ stdenv, lib, cmake, xorg, plasma-framework, fetchFromGitHub, kdeWrapper }:
 
-let version = "0.5.98"; in
+let version = "0.6.0";
 
-stdenv.mkDerivation {
-  name = "latte-dock-${version}";
+    unwrapped = stdenv.mkDerivation {
+      name = "latte-dock-${version}";
 
-  src = fetchFromGitHub {
-    owner = "psifidotos";
-    repo = "Latte-Dock";
-    rev = version;
-    sha256 = "0z02ipbbv0dmcxs2g3dq5h62klhijni1i4ikq903hjg0j2cqg5xh";
-  };
+      src = fetchFromGitHub {
+        owner = "psifidotos";
+        repo = "Latte-Dock";
+        rev = "v${version}";
+        sha256 = "1967hx4lavy96vvik8d5m2c6ycd2mlf9cmhrv40zr0784ni0ikyv";
+      };
 
-  buildInputs = [ plasma-framework ];
+      buildInputs = [ plasma-framework xorg.libpthreadstubs xorg.libXdmcp ];
 
-  nativeBuildInputs = [ cmake ];
+      nativeBuildInputs = [ cmake ];
 
-  meta = with stdenv.lib; {
-    description = "Dock-style app launcher based on Plasma frameworks";
-    homepage = https://github.com/psifidotos/Latte-Dock;
-    license = licenses.gpl2;
-    platforms = platforms.unix;
-    maintainers = [ maintainers.benley ];
-  };
+      enableParallelBuilding = true;
+
+      meta = with stdenv.lib; {
+        description = "Dock-style app launcher based on Plasma frameworks";
+        homepage = https://github.com/psifidotos/Latte-Dock;
+        license = licenses.gpl2;
+        platforms = platforms.unix;
+        maintainers = [ maintainers.benley ];
+      };
+    };
+
+in kdeWrapper {
+  inherit unwrapped;
+  targets = [ "bin/latte-dock" ];
 }
diff --git a/pkgs/applications/misc/polybar/default.nix b/pkgs/applications/misc/polybar/default.nix
index aceaf43ac97..026a1289fb6 100644
--- a/pkgs/applications/misc/polybar/default.nix
+++ b/pkgs/applications/misc/polybar/default.nix
@@ -21,11 +21,11 @@ assert i3GapsSupport -> ! i3Support     && jsoncpp != null && i3-gaps != null;
 
 stdenv.mkDerivation rec {
     name = "polybar-${version}";
-    version = "3.0.4";
+    version = "3.0.5";
     src = fetchgit {
       url = "https://github.com/jaagr/polybar";
-      rev = "1f31870d43f5cd87a5529a55b1d2d3e64105e0af";
-      sha256 = "1nhj4npqhs6zy161931sbdi52gz6163lik0wri9wr122sjf90jas";
+      rev = "4e2e2a7a5e0fe81669031ade0f60e1d379b6516d";
+      sha256 = "1iiks9q13pbkgbjhdns18a5zgr6d40ydcm4qn168m73fs6ivf1vn";
     };
 
     meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/robomongo/default.nix b/pkgs/applications/misc/robomongo/default.nix
index 41de15bca51..1516e827c5e 100644
--- a/pkgs/applications/misc/robomongo/default.nix
+++ b/pkgs/applications/misc/robomongo/default.nix
@@ -1,29 +1,73 @@
-{ stdenv, fetchurl, qtbase, openssl, boost, cmake, scons, python, pcre, bzip2 }:
+{ stdenv, fetchurl, zlib, glib, xorg, dbus, fontconfig,
+  freetype, xkeyboard_config, makeDesktopItem, makeWrapper }:
 
-stdenv.mkDerivation {
-  name = "robomongo-0.8.4";
+let
+  ldLibraryPath = stdenv.lib.makeLibraryPath [
+    stdenv.cc.cc
+    zlib
+    glib
+    xorg.libXi
+    xorg.libxcb
+    xorg.libXrender
+    xorg.libX11
+    xorg.libSM
+    xorg.libICE
+    xorg.libXext
+    dbus
+    fontconfig
+    freetype
+  ];
 
-  src = fetchurl {
-    url = https://github.com/paralect/robomongo/archive/v0.8.4.tar.gz;
-    sha256 = "199fb08701wrw3ky7gcqyvb3z4027qjcqdnzrx5y7yi3rb4gvkzc";
+  icon = fetchurl {
+    url = "https://github.com/Studio3T/robomongo/raw/v0.9.0/trash/install/linux/robomongo.png";
+    sha256 = "15li8536x600kkfkb3h6mw7y0f2ljkv951pc45dpiw036vldibv2";
   };
+in
+  stdenv.mkDerivation {
+    name = "robomongo-0.9.0";
 
-  patches = [ ./robomongo.patch ];
+    src = fetchurl {
+      url = "https://download.robomongo.org/0.9.0/linux/robomongo-0.9.0-linux-x86_64-0786489.tar.gz";
+      sha256 = "1q8ahdz3afcw002p8dl2pybzkq4srk6bnikrz216yx1gswivdcad";
+    };
 
-  postPatch = ''
-    rm ./cmake/FindOpenSSL.cmake # remove outdated bundled CMake file
-  '';
+    desktopItem = makeDesktopItem {
+      name = "robomongo";
+      exec = "robomongo";
+      icon = icon;
+      comment = "Query GUI for mongodb";
+      desktopName = "Robomongo";
+      genericName = "MongoDB management tool";
+      categories = "Development;IDE;mongodb;";
+    };
 
-  NIX_CFLAGS_COMPILE = "-fno-stack-protector";
+    buildInputs = [makeWrapper];
 
-  buildInputs = [ cmake boost scons qtbase openssl python pcre bzip2 ];
+    installPhase = ''
+      mkdir -p $out/bin
+      cp bin/* $out/bin
 
-  meta = {
-    homepage = "http://robomongo.org/";
-    description = "Query GUI for mongodb";
-    platforms = stdenv.lib.platforms.linux;
-    license = stdenv.lib.licenses.gpl3;
-    maintainers = [ stdenv.lib.maintainers.amorsillo ];
-    broken = true;
-  };
-}
+      mkdir -p $out/lib
+      cp -r lib/* $out/lib
+
+      mkdir -p $out/share/applications
+      cp $desktopItem/share/applications/* $out/share/applications
+
+      mkdir -p $out/share/icons
+      cp ${icon} $out/share/icons/robomongo.png
+
+      patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux-x86-64.so.2 $out/bin/robomongo
+
+      wrapProgram $out/bin/robomongo \
+        --suffix LD_LIBRARY_PATH : ${ldLibraryPath} \
+        --suffix QT_XKB_CONFIG_ROOT : ${xkeyboard_config}/share/X11/xkb
+    '';
+
+    meta = {
+      homepage = "https://robomongo.org/";
+      description = "Query GUI for mongodb";
+      platforms = stdenv.lib.intersectLists stdenv.lib.platforms.linux stdenv.lib.platforms.x86_64;
+      license = stdenv.lib.licenses.gpl3;
+      maintainers = [ stdenv.lib.maintainers.eperuffo ];
+    };
+  }
diff --git a/pkgs/applications/misc/robomongo/robomongo.patch b/pkgs/applications/misc/robomongo/robomongo.patch
deleted file mode 100644
index 3de6e940d9f..00000000000
--- a/pkgs/applications/misc/robomongo/robomongo.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-Remove check for QT_NO_STYLE_GTK to avoid building with QCleanlooksStyle which results in error due to missing QCleanlooksStyle
-Ensure environment is preserved for scons build -- scons clears the env but we want to keep the nix build environment
-Fix typo in cmakelists
-Add stdint.h include to mongo driver src
-diff -rupN robomongo-0.8.3/CMakeLists.txt robomongo-0.8.3-patched/CMakeLists.txt
---- robomongo-0.8.3/CMakeLists.txt	2013-10-01 10:55:00.000000000 -0400
-+++ robomongo-0.8.3-patched/CMakeLists.txt	2013-12-06 12:22:06.070659856 -0500
-@@ -133,7 +133,7 @@ ELSE()
- ENDIF()
- 
- ##################################DEFAULT VALUES##########################################
--IF(NOT CMAKE_INSTALL_PREFIX})
-+IF(NOT CMAKE_INSTALL_PREFIX)
-     SET(CMAKE_INSTALL_PREFIX "${CMAKE_BINARY_DIR}/install")
- ENDIF()
- 
-diff -rupN robomongo-0.8.3/src/robomongo/gui/AppStyle.h robomongo-0.8.3-patched/src/robomongo/gui/AppStyle.h
---- robomongo-0.8.3/src/robomongo/gui/AppStyle.h	2013-10-01 10:55:00.000000000 -0400
-+++ robomongo-0.8.3-patched/src/robomongo/gui/AppStyle.h	2013-12-06 12:20:57.417297186 -0500
-@@ -8,13 +8,8 @@
-     #include <QProxyStyle>
-     typedef QProxyStyle OsStyle;
- #elif defined OS_LINUX
--    #if !defined(QT_NO_STYLE_GTK)
--        #include <QProxyStyle>
--        typedef QProxyStyle OsStyle;
--    #else
--        #include <QCleanlooksStyle>
--        typedef QCleanlooksStyle OsStyle;
--    #endif
-+    #include <QProxyStyle>
-+    typedef QProxyStyle OsStyle;
- #endif
- 
- namespace Robomongo
-
-diff -rupN robomongo-0.8.3/src/third-party/mongodb/SConstruct robomongo-0.8.3-patched/src/third-party/mongodb/SConstruct
---- robomongo-0.8.3/src/third-party/mongodb/SConstruct	2013-10-01 10:55:00.000000000 -0400
-+++ robomongo-0.8.3-patched/src/third-party/mongodb/SConstruct	2013-12-06 12:21:45.705255731 -0500
-@@ -283,7 +283,8 @@ usePCH = has_option( "usePCH" )
- 
- justClientLib = (COMMAND_LINE_TARGETS == ['mongoclient'])
- 
--env = Environment( BUILD_DIR=variantDir,
-+env = Environment( ENV=os.environ,
-+                   BUILD_DIR=variantDir,
-                    CLIENT_ARCHIVE='${CLIENT_DIST_BASENAME}${DIST_ARCHIVE_SUFFIX}',
-                    CLIENT_DIST_BASENAME=get_option('client-dist-basename'),
-                    CLIENT_LICENSE='#distsrc/client/LICENSE.txt',
-
-diff -rupN robomongo-0.8.4/src/third-party/mongodb/src/mongo/pch.h robomongo-0.8.4-patched/src/third-party/mongodb/src/mongo/pch.h
---- robomongo-0.8.4/src/third-party/mongodb/src/mongo/pch.h	2013-12-13 12:56:35.000000000 -0500
-+++ robomongo-0.8.4-patched/src/third-party/mongodb/src/mongo/pch.h	2014-08-20 18:16:31.788396489 -0400
-@@ -39,6 +39,7 @@
- #include <stdio.h>
- #include <stdlib.h>
- #include <signal.h>
-+#include <stdint.h>
- 
- #include "time.h"
- #include "string.h"
diff --git a/pkgs/applications/misc/tint2/default.nix b/pkgs/applications/misc/tint2/default.nix
index f72f4fdc567..f817303d025 100644
--- a/pkgs/applications/misc/tint2/default.nix
+++ b/pkgs/applications/misc/tint2/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   name = "tint2-${version}";
-  version = "0.12.12";
+  version = "0.14.1";
 
   src = fetchFromGitLab {
     owner = "o9000";
     repo = "tint2";
     rev = version;
-    sha256 = "0zgcdancsna95sjxslack9lh8f6qnj8d5wm02891mshn2jhgins3";
+    sha256 = "1wxz8sbv4cx3d3s5mbrzffidi3nayh1g6bd8m1ndz61jhv01ypam";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/misc/verbiste/default.nix b/pkgs/applications/misc/verbiste/default.nix
new file mode 100644
index 00000000000..3d4c35559e3
--- /dev/null
+++ b/pkgs/applications/misc/verbiste/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, pkgconfig, libgnomeui, libxml2 }:
+
+stdenv.mkDerivation rec {
+  name = "verbiste-${version}";
+
+  version = "0.1.44";
+
+  src = fetchurl {
+    url = "http://perso.b2b2c.ca/~sarrazip/dev/${name}.tar.gz";
+    sha256 = "0vmjr8w3qc64y312a0sj0ask309mmmlmyxp2fsii0ji35ls7m9sw";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+
+  buildInputs = [ libgnomeui libxml2 ];
+
+  meta = with stdenv.lib; {
+    homepage = http://sarrazip.com/dev/verbiste.html;
+    description = "French and Italian verb conjugator";
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ orivej ];
+  };
+}
diff --git a/pkgs/applications/networking/browsers/chromium/plugins.nix b/pkgs/applications/networking/browsers/chromium/plugins.nix
index f202aee3828..581a45da3d8 100644
--- a/pkgs/applications/networking/browsers/chromium/plugins.nix
+++ b/pkgs/applications/networking/browsers/chromium/plugins.nix
@@ -94,12 +94,12 @@ let
 
   flash = stdenv.mkDerivation rec {
     name = "flashplayer-ppapi-${version}";
-    version = "25.0.0.127";
+    version = "25.0.0.148";
 
     src = fetchzip {
       url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/"
           + "${version}/flash_player_ppapi_linux.x86_64.tar.gz";
-      sha256 = "1gf0ncclkk3h4vj9kkhbqj1nnnm54gwm5mdcs4p4pl8i339scs14";
+      sha256 = "1888n0mbzhbvi95kq19fzw310p7nr9h3g5d3nyzq5fnvj0lcfxsf";
       stripRoot = false;
     };
 
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
index 176784ea7a4..2800a3ed5d2 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 = "1rpmi9dl98948a2ll7q0sagyx8v27mmwa2j6fmvfx6r1mwpvbrgz";
-    sha256bin64 = "1xj1fl0k0ck4pxl4q0cdhi55sqfmwbb1vcjj70idlz166ll8lpxh";
-    version = "58.0.3029.19";
+    sha256 = "1q9iqmq5amzfw03jiw18g1w285b6x2qckn8gc60r5m3xx1hbivv2";
+    sha256bin64 = "1ddhhcydcwwc2pkwm4c8rlr60968zy5vda410g4bwx0v5q7p22q9";
+    version = "58.0.3029.68";
   };
   dev = {
-    sha256 = "1rpmi9dl98948a2ll7q0sagyx8v27mmwa2j6fmvfx6r1mwpvbrgz";
-    sha256bin64 = "1wx5r3vmmki419llki0ls6y4z6r93zm66v2h4vnxswjb77svl578";
-    version = "58.0.3029.19";
+    sha256 = "0zvnj9n2p057fxx7n4d1qc0nw34qhlsvrx20fwigq96blamckvd8";
+    sha256bin64 = "1s1r3h7x49bp64lzzphm4jcg7g68l0x7mr3airj3hqii58dvndm0";
+    version = "59.0.3067.0";
   };
   stable = {
-    sha256 = "1r495ffcwxsd4pxn5akfr7k9iiv1dj0zq6w9i6xxii8knf8a40va";
-    sha256bin64 = "04ig9q8j4xbgq749qprfddlgpm6g28jjvwwnqmvinymnrh4vc7cn";
-    version = "57.0.2987.110";
+    sha256 = "1xwchazqqx0cs9rd15r80kw6p918zp9libx34qlcj8p5lxq1f0bh";
+    sha256bin64 = "0ggn5rljch36sx0i37qzp6ldcy3ibdj0z9217lqzjq3r7ixsfqja";
+    version = "57.0.2987.133";
   };
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/default.nix b/pkgs/applications/networking/browsers/firefox-bin/default.nix
index 01cd7a1df38..5bd275ba31d 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/default.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/default.nix
@@ -82,6 +82,7 @@ stdenv.mkDerivation {
   libPath = stdenv.lib.makeLibraryPath
     [ stdenv.cc.cc
       alsaLib
+      alsaLib.dev
       atk
       cairo
       curl
diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix
index 1ca50ec8954..86f6f995bdb 100644
--- a/pkgs/applications/networking/browsers/firefox/default.nix
+++ b/pkgs/applications/networking/browsers/firefox/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkgconfig, gtk2, gtk3, pango, perl, python, zip, libIDL
+{ lib, stdenv, fetchurl, pkgconfig, gtk2, pango, perl, python, zip, libIDL
 , libjpeg, zlib, dbus, dbus_glib, bzip2, xorg
 , freetype, fontconfig, file, alsaLib, nspr, nss, libnotify
 , yasm, mesa, sqlite, unzip, makeWrapper
@@ -6,10 +6,10 @@
 , cairo, gstreamer, gst-plugins-base, icu, libpng, jemalloc, libpulseaudio
 , autoconf213, which
 , writeScript, xidel, common-updater-scripts, coreutils, gnused, gnugrep, curl
-, enableGTK3 ? false
+, enableGTK3 ? false, gtk3, wrapGAppsHook
 , debugBuild ? false
 , # If you want the resulting program to call itself "Firefox" instead
-  # of "Shiretoko" or whatever, enable this option.  However, those
+  # of "Nightly" or whatever, enable this option.  However, those
   # binaries may not be distributed without permission from the
   # Mozilla Foundation, see
   # http://www.mozilla.org/foundation/trademarks/.
@@ -35,12 +35,12 @@ common = { pname, version, sha512, updateScript }: stdenv.mkDerivation rec {
   patches = lib.optional debugBuild ./fix-debug.patch;
 
   buildInputs =
-    [ pkgconfig gtk2 perl zip libIDL libjpeg zlib bzip2
-      python dbus dbus_glib pango freetype fontconfig xorg.libXi
+    [ gtk2 zip libIDL libjpeg zlib bzip2
+      dbus dbus_glib pango freetype fontconfig xorg.libXi
       xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file
       alsaLib nspr nss libnotify xorg.pixman yasm mesa
       xorg.libXScrnSaver xorg.scrnsaverproto
-      xorg.libXext xorg.xextproto sqlite unzip makeWrapper
+      xorg.libXext xorg.xextproto sqlite unzip
       hunspell libevent libstartup_notification libvpx /* cairo */
       icu libpng jemalloc
       libpulseaudio # only headers are needed
@@ -48,7 +48,7 @@ common = { pname, version, sha512, updateScript }: stdenv.mkDerivation rec {
     ++ lib.optional enableGTK3 gtk3
     ++ lib.optionals (!passthru.ffmpegSupport) [ gstreamer gst-plugins-base ];
 
-  nativeBuildInputs = [ autoconf213 which gnused ];
+  nativeBuildInputs = [ autoconf213 which gnused pkgconfig perl python ] ++ lib.optional enableGTK3 wrapGAppsHook;
 
   configureFlags =
     [ "--enable-application=browser"
@@ -75,10 +75,9 @@ common = { pname, version, sha512, updateScript }: stdenv.mkDerivation rec {
       "--disable-updater"
       "--enable-jemalloc"
       "--disable-gconf"
-      "--enable-default-toolkit=cairo-gtk2"
+      "--enable-default-toolkit=cairo-gtk${if enableGTK3 then "3" else "2"}"
       "--with-google-api-keyfile=ga"
     ]
-    ++ lib.optional enableGTK3 "--enable-default-toolkit=cairo-gtk3"
     ++ (if debugBuild then [ "--enable-debug" "--enable-profiling" ]
                       else [ "--disable-debug" "--enable-release"
                              "--enable-optimize"
@@ -112,17 +111,9 @@ common = { pname, version, sha512, updateScript }: stdenv.mkDerivation rec {
 
       # Remove SDK cruft. FIXME: move to a separate output?
       rm -rf $out/share/idl $out/include $out/lib/firefox-devel-*
-    '' + lib.optionalString enableGTK3
-      # argv[0] must point to firefox itself
-    ''
-      wrapProgram "$out/bin/firefox" \
-        --argv0 "$out/bin/.firefox-wrapped" \
-        --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:" \
-        --suffix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
-    '' +
-      # some basic testing
-    ''
-      "$out/bin/firefox" --version
+
+      # Needed to find Mozilla runtime
+      gappsWrapperArgs+=(--argv0 "$out/bin/.firefox-wrapped")
     '';
 
   postFixup =
@@ -133,6 +124,13 @@ common = { pname, version, sha512, updateScript }: stdenv.mkDerivation rec {
           "$out"/lib/firefox-*/libxul.so
     '';
 
+  doInstallCheck = true;
+  installCheckPhase =
+    ''
+      # Some basic testing
+      "$out/bin/firefox" --version
+    '';
+
   meta = {
     description = "A web browser" + lib.optionalString (pname == "firefox-esr") " (Extended Support Release)";
     homepage = http://www.mozilla.com/en-US/firefox/;
diff --git a/pkgs/applications/networking/browsers/google-chrome/default.nix b/pkgs/applications/networking/browsers/google-chrome/default.nix
index abc314f8569..32d3a8e1540 100644
--- a/pkgs/applications/networking/browsers/google-chrome/default.nix
+++ b/pkgs/applications/networking/browsers/google-chrome/default.nix
@@ -1,10 +1,10 @@
-{ stdenv, buildEnv, fetchurl, patchelf, bash
+{ stdenv, fetchurl, patchelf, bash
 
 # Linked dynamic libraries.
 , glib, fontconfig, freetype, pango, cairo, libX11, libXi, atk, gconf, nss, nspr
 , libXcursor, libXext, libXfixes, libXrender, libXScrnSaver, libXcomposite, libxcb
 , alsaLib, libXdamage, libXtst, libXrandr, expat, cups
-, dbus_libs, gtk2, gdk_pixbuf, gcc
+, dbus_libs, gtk2, gtk3, gdk_pixbuf, gcc
 
 # command line arguments which are always set e.g "--disable-gpu"
 , commandLineArgs ? ""
@@ -47,13 +47,14 @@ let
     glib fontconfig freetype pango cairo libX11 libXi atk gconf nss nspr
     libXcursor libXext libXfixes libXrender libXScrnSaver libXcomposite libxcb
     alsaLib libXdamage libXtst libXrandr expat cups
-    dbus_libs gtk2 gdk_pixbuf gcc
+    dbus_libs gdk_pixbuf gcc
     systemd
     libexif
     liberation_ttf curl utillinux xdg_utils wget
     flac harfbuzz icu libpng opusWithCustomModes snappy speechd
     bzip2 libcap
-  ] ++ optional pulseSupport libpulseaudio;
+  ] ++ optional pulseSupport libpulseaudio
+    ++ (if (versionAtLeast version "59.0.0.0") then [gtk3] else [gtk2]);
 
   suffix = if channel != "stable" then "-" + channel else "";
 
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
index 72a1f171dec..bf0b91544ad 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
@@ -60,7 +60,7 @@
 
 let
   arch =
-    if      stdenv.system == "x86_64-linux" then
+    if stdenv.system == "x86_64-linux" then
       "x86_64"
     else if stdenv.system == "i686-linux"   then
       "i386"
@@ -73,7 +73,7 @@ let
 in
 stdenv.mkDerivation rec {
   name = "flashplayer-${version}";
-  version = "25.0.0.127";
+  version = "25.0.0.148";
 
   src = fetchurl {
     url =
@@ -84,14 +84,14 @@ stdenv.mkDerivation rec {
     sha256 =
       if debug then
         if arch == "x86_64" then
-          "0d37rwbqszl593pggph8pm8jwn05fppys7q8vk1jrk9jaz262iva"
+          "1jxxnbd357ndw8b64lw4pwkg9j0shy0ns7xw0f36awimq7bclr8d"
         else
-          "0lhngdx1q51kfpw3a961h9p9n1fnspk9pmg21i069hvd0h143arx"
+          "1k0zyy4mz307r7ph4pnmyqaa0fdw2f52apala6dbrys0wdl05yfg"
       else
         if arch == "x86_64" then
-          "1yasj9xzmb6ly9209b1hmrqrzxrr1bafsfjszsr3yf994hql6nzn"
+          "0n77a2z0928vd4bjgx69igzxvn8l9wrfh79j6knygdpnsbr3pybj"
         else
-          "02vs12cm6fpl2fif1lij9y15m89wk6aizc8sbjiw6w59wixn3p9d";
+          "1cb1h37av4icfhl4vjngsa3nfcrcdvzliwxdg22rshimlkfgr7vx";
   };
 
   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 178b86b61c6..4d65a7e9a62 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
@@ -49,15 +49,13 @@
 
 let
   arch =
-    if      stdenv.system == "x86_64-linux" then
+    if stdenv.system == "x86_64-linux" then
       "x86_64"
-    else if stdenv.system == "i686-linux"   then
-      "i386"
     else throw "Flash Player is not supported on this platform";
 in
 stdenv.mkDerivation rec {
   name = "flashplayer-standalone-${version}";
-  version = "25.0.0.127";
+  version = "25.0.0.148";
 
   src = fetchurl {
     url =
@@ -67,9 +65,9 @@ stdenv.mkDerivation rec {
         "https://fpdownload.macromedia.com/pub/flashplayer/updaters/25/flash_player_sa_linux.x86_64.tar.gz";
     sha256 =
       if debug then
-        "07a8x1n997lmkxj74bkygh60shwzxzcvfxpz07pxj1nmvakmin51"
+        "1pkzpip8d3m92kyzap00xxq40yilgmaqnc47nak3i7gnbic8fa2r"
       else
-        "0rzxfcvjjwbd1m6pyby8km4g5834zy5d5sih7xq3czds9x0a2jp2";
+        "0xxsbxnkf9xnljy6sn61jqx9xd1w0lm5mbw4ca7xk5rkc84ik91z";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/applications/networking/browsers/qutebrowser/default.nix b/pkgs/applications/networking/browsers/qutebrowser/default.nix
index a07fc04b02e..eb26811cfb8 100644
--- a/pkgs/applications/networking/browsers/qutebrowser/default.nix
+++ b/pkgs/applications/networking/browsers/qutebrowser/default.nix
@@ -1,8 +1,10 @@
-{ stdenv, fetchurl, unzip, buildPythonApplication, makeQtWrapper, wrapGAppsHook
+{ stdenv, lib, fetchurl, unzip, buildPythonApplication, makeQtWrapper, wrapGAppsHook
 , qtbase, pyqt5, jinja2, pygments, pyyaml, pypeg2, cssutils, glib_networking
 , asciidoc, docbook_xml_dtd_45, docbook_xsl, libxml2, libxslt
 , gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, gst-libav
-, qtwebkit-plugins }:
+, qtwebkit-plugins
+, withWebEngineDefault ? false
+}:
 
 let
   pdfjs = stdenv.mkDerivation rec {
@@ -73,7 +75,8 @@ in buildPythonApplication rec {
 
   postFixup = ''
     mv $out/bin/qutebrowser $out/bin/.qutebrowser-noqtpath
-    makeQtWrapper $out/bin/.qutebrowser-noqtpath $out/bin/qutebrowser
+    makeQtWrapper $out/bin/.qutebrowser-noqtpath $out/bin/qutebrowser \
+      ${lib.optionalString withWebEngineDefault ''--add-flags "--backend webengine"''}
 
     sed -i 's/\.qutebrowser-wrapped/qutebrowser/g' $out/bin/..qutebrowser-wrapped-wrapped
   '';
diff --git a/pkgs/applications/networking/browsers/torbrowser/default.nix b/pkgs/applications/networking/browsers/torbrowser/default.nix
index 5ce7c4780c8..9bf8a184e72 100644
--- a/pkgs/applications/networking/browsers/torbrowser/default.nix
+++ b/pkgs/applications/networking/browsers/torbrowser/default.nix
@@ -81,19 +81,19 @@ let
   fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ];
 
   # Upstream source
-  version = "6.5.1";
+  version = "6.5.2";
 
   lang = "en-US";
 
   srcs = {
     "x86_64-linux" = fetchurl {
       url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz";
-      sha256 = "1p2bgavvyzahqpjg9vp14c0s50rmha3v1hs1c8zvz6fj8fgrhn0i";
+      sha256 = "0jn98arczlgjigpmql1qg5b7izabv4zy4mji6vvcg3b8g1ma108r";
     };
 
     "i686-linux" = fetchurl {
       url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz";
-      sha256 = "1zfghr01bhpn39wqaw7hyx7yap7xyla4m3mrgz2vi9a5qsyxmbcr";
+      sha256 = "0micxgkbys0py4bj6csbc8xz4gq0x5v2zirgi38krnm5x5riqj3w";
     };
   };
 in
diff --git a/pkgs/applications/networking/browsers/vivaldi/default.nix b/pkgs/applications/networking/browsers/vivaldi/default.nix
index ab010653c64..ed07225dd8d 100644
--- a/pkgs/applications/networking/browsers/vivaldi/default.nix
+++ b/pkgs/applications/networking/browsers/vivaldi/default.nix
@@ -10,16 +10,16 @@
 }:
 
 let
-  version = "1.6";
-  build = "689.34-1";
+  version = "1.8";
+  build = "770.56-1";
   fullVersion = "stable_${version}.${build}";
 
   info = if stdenv.is64bit then {
       arch = "amd64";
-      sha256 = "0wn98nzlhppmm3g797kiqr9bxxff8l7l110f1w1fnfl93d325hrm";
+      sha256 = "1f9cwr41rl0mqwg3xn2nfb5xnr0h0vc4wiz8367bd67zf4an61d2";
     } else {
       arch = "i386";
-      sha256 = "0agybibfwk5n1gxi8g4rbvvmlq5963df5arz4fyi4a1hcayllaz0";
+      sha256 = "1240w3gqn5rbvkb0v1g66syrc92r1vzk82fkmvy92qsnx0d5z7nn ";
     };
 
 in stdenv.mkDerivation rec {
@@ -47,7 +47,8 @@ in stdenv.mkDerivation rec {
 
   libPath = stdenv.lib.makeLibraryPath buildInputs
     + stdenv.lib.optionalString (stdenv.is64bit)
-      (":" + stdenv.lib.makeSearchPathOutput "lib" "lib64" buildInputs);
+      (":" + stdenv.lib.makeSearchPathOutput "lib" "lib64" buildInputs)
+    + ":$out/opt/vivaldi/lib";
 
   buildPhase = ''
     echo "Patching Vivaldi binaries"
diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix
index 19fe89ea449..9d17443ac88 100644
--- a/pkgs/applications/networking/cluster/minikube/default.nix
+++ b/pkgs/applications/networking/cluster/minikube/default.nix
@@ -10,22 +10,19 @@ let
   # (presumably because we don't have some static system libraries it wants), and cross-compiling cgo on Darwin is a nightmare.
   #
   # Note that minikube can download (and cache) versions of localkube it needs on demand. Unfortunately, minikube's knowledge
-  # of where it can download versions of localkube seems to rely on a json file that doesn't get updated as often as we'd like,
-  # so for example it doesn't know about v1.5.3 even though there's a perfectly good version of localkube hosted there. So
+  # of where it can download versions of localkube seems to rely on a json file that doesn't get updated as often as we'd like. So
   # instead, we download localkube ourselves and shove it into the minikube binary. The versions URL that minikube uses is
-  # currently https://storage.googleapis.com/minikube/k8s_releases.json. Note that we can't use 1.5.3 with minikube 0.17.1
-  # expects to be able to pass it a command-line argument that it doesn't understand. v1.5.4 and higher should be fine. There
-  # doesn't seem to ae any official release of localkube for 1.5.4 yet so I'm temporarily grabbing a version built from the
-  # minikube CI server.
+  # currently https://storage.googleapis.com/minikube/k8s_releases.json
+
+  localkube-version = "1.6.0";
   localkube-binary = fetchurl {
-    url    = "https://storage.googleapis.com/minikube-builds/1216/localkube";
-    # url    = "https://storage.googleapis.com/minikube/k8sReleases/v${kubernetes.version}/localkube-linux-amd64";
-    sha256 = "1vqrsak7n045ci6af3rpgs2qwjnrqk8k7c3ax6wzli4m8vhsiv57";
+    url = "https://storage.googleapis.com/minikube/k8sReleases/v${localkube-version}/localkube-linux-amd64";
+    sha256 = "0zx0c9fwairvga1g1112l5g5pspm2m9wxb42qgfxfgyidywvirha";
   };
 in buildGoPackage rec {
   pname   = "minikube";
   name    = "${pname}-${version}";
-  version = "0.17.1";
+  version = "0.18.0";
 
   goPackagePath = "k8s.io/minikube";
 
@@ -33,7 +30,7 @@ in buildGoPackage rec {
     owner  = "kubernetes";
     repo   = "minikube";
     rev    = "v${version}";
-    sha256 = "1m61yipn0p3cfavjddhrg1rcmr0hv6k3zxvqqd9fisl79g0sdfsr";
+    sha256 = "0r8184xfsw7vvvmzhc18si582q41cnzka4ry151hwy56gmp2jyiw";
   };
 
   # kubernetes is here only to shut up a loud warning when generating the completions below. minikube checks very eagerly
diff --git a/pkgs/applications/networking/cluster/panamax/api/default.nix b/pkgs/applications/networking/cluster/panamax/api/default.nix
index 3347af83585..6a8fe283491 100644
--- a/pkgs/applications/networking/cluster/panamax/api/default.nix
+++ b/pkgs/applications/networking/cluster/panamax/api/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildEnv, fetchgit, fetchurl, makeWrapper, bundlerEnv, bundler
+{ stdenv, fetchgit, fetchurl, makeWrapper, bundlerEnv, bundler
 , ruby, libxslt, libxml2, sqlite, openssl, docker
 , dataDir ? "/var/lib/panamax-api" }@args:
 
diff --git a/pkgs/applications/networking/cluster/terraform/default.nix b/pkgs/applications/networking/cluster/terraform/default.nix
index 93a9894ba6b..76984fed340 100644
--- a/pkgs/applications/networking/cluster/terraform/default.nix
+++ b/pkgs/applications/networking/cluster/terraform/default.nix
@@ -49,20 +49,14 @@ in {
     sha256 = "0ibgpcpvz0bmn3cw60nzsabsrxrbmmym1hv7fx6zmjxiwd68w5gb";
   };
 
-  terraform_0_9_2 = generic {
-    version = "0.9.2";
-    sha256 = "1yj5x1d10028fm3v3gjyjdn128ps0as345hr50y8x3vn86n70lxl";
-
-    patches = [
-      (fetchpatch {
-        url = "https://github.com/hashicorp/terraform/pull/13237.patch";
-        sha256 = "03c2nq12gvqqp12znvl3lmiviwsqksx4nrplv09fns2kz2gyfnbm";
-      })
-      (fetchpatch {
-        url = "https://github.com/hashicorp/terraform/pull/13248.patch";
-        sha256 = "0awj8gaic0j7a69is95f2rll3yip4n6avai1jh20b1x7dybdrp5m";
-      })
-    ];
+  terraform_0_9_3 = generic {
+    version = "0.9.3";
+    sha256 = "00z72lwv0cprz1jjy0cr8dicl00zwc1zwsxzjssqnq0187sswkxw";
+
+    postPatch = ''
+      rm builtin/providers/dns/data_dns_cname_record_set_test.go
+      rm builtin/providers/vsphere/resource_vsphere_file_test.go
+    '';
 
     doCheck = true;
   };
diff --git a/pkgs/applications/networking/cluster/terragrunt/default.nix b/pkgs/applications/networking/cluster/terragrunt/default.nix
index 28fc7fcc666..7ed2cef0e3b 100644
--- a/pkgs/applications/networking/cluster/terragrunt/default.nix
+++ b/pkgs/applications/networking/cluster/terragrunt/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "terragrunt-${version}";
-  version = "0.11.0";
+  version = "0.11.1";
 
   goPackagePath = "github.com/gruntwork-io/terragrunt";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     rev    = "v${version}";
     owner  = "gruntwork-io";
     repo   = "terragrunt";
-    sha256 = "0i0ds6llkzrn6a0qq53d2pbb6ghc47lnd004zqfbgn3kwiajx73b";
+    sha256 = "061ix4m64i8bvjpqm6hn83nnkvqrp5y0hh5gzmxiik2nz3by1rx5";
   };
 
   goDeps = ./deps.nix;
diff --git a/pkgs/applications/networking/cluster/terragrunt/deps.nix b/pkgs/applications/networking/cluster/terragrunt/deps.nix
index 31f9f9a2b70..b98a38f8352 100644
--- a/pkgs/applications/networking/cluster/terragrunt/deps.nix
+++ b/pkgs/applications/networking/cluster/terragrunt/deps.nix
@@ -1,12 +1,12 @@
-# This file was generated by go2nix.
+# This file was generated by https://github.com/kamilchm/go2nix v1.2.0
 [
   {
     goPackagePath = "github.com/aws/aws-sdk-go";
     fetch = {
       type = "git";
       url = "https://github.com/aws/aws-sdk-go";
-      rev = "78568b07950e5e7948496878fe99b9436add41d4";
-      sha256 = "0qi3q9qx8k055i2hlc6n8agl7nw1hzcw7aqqykla6z0hjv2hq0c3";
+      rev = "c790b8046767d9c773ad83c327ab988312f85a94";
+      sha256 = "0bhk7j088r8hhf05l70gpfnprxk7vzgb1fql9brk065hw2xnplsr";
     };
   }
   {
@@ -32,8 +32,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/hashicorp/go-getter";
-      rev = "c3d66e76678dce180a7b452653472f949aedfbcd";
-      sha256 = "0ykpkiszcwp3hnvnnyl95zdrsziwrzr989ynyvbfkgpnkqfdhfy7";
+      rev = "e48f67b534e614bf7fbd978fd0020f61a17b7527";
+      sha256 = "0dlmirfi0pfbwylcjf2mggzav5r7bzdy19m3by6dgarn6izx6g7i";
     };
   }
   {
@@ -77,8 +77,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/mitchellh/mapstructure";
-      rev = "db1efb556f84b25a0a13a04aad883943538ad2e0";
-      sha256 = "1pl1rwc9q3kz0banwi493cyhmn5mlc4mb97sx68jkdz6pck7fy0h";
+      rev = "53818660ed4955e899c0bcafa97299a388bd7c8e";
+      sha256 = "10gdkk8gcjv0lg15ajy68dwgvfkjhawk08ccs9x9ym1adp6l2ycs";
     };
   }
   {
@@ -95,8 +95,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/urfave/cli";
-      rev = "9e5b04886c4bfee2ceba1465b8121057355c4e53";
-      sha256 = "18jx6ypc1w02ha37rsx6hhmdwqmnybajd6l54qm07bdb850ip9db";
+      rev = "8ba6f23b6e36d03666a14bd9421f5e3efcb59aca";
+      sha256 = "01s53ny3p0fdx64rnwcnmjj4xpc5adihnh6islsfq5z1ph2phhnj";
     };
   }
 ]
diff --git a/pkgs/applications/networking/davmail/default.nix b/pkgs/applications/networking/davmail/default.nix
index bb4a4a71009..b491f287e70 100644
--- a/pkgs/applications/networking/davmail/default.nix
+++ b/pkgs/applications/networking/davmail/default.nix
@@ -1,25 +1,27 @@
 { fetchurl, stdenv, jre, glib, libXtst, gtk2, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "davmail-4.7.2";
+  name = "davmail-4.8.0";
   src = fetchurl {
-    url = "mirror://sourceforge/davmail/4.7.1/davmail-linux-x86_64-4.7.1-2416.tgz";
-    sha256 = "196jr44kksb197biz984z664llf9z3d8rlnjm2iqcmgkjhx1mgy3";
+    url = "mirror://sourceforge/davmail/4.8.0/davmail-linux-x86_64-4.8.0-2479.tgz";
+    sha256 = "0e650c4a060d64fd2b270ddb00baa906aac617865d5e60c9f526a281cdb27b62";
   };
 
-  buildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ makeWrapper ];
 
-  meta = {
+  installPhase = ''
+    mkdir -p $out/share/davmail
+    cp -R ./* $out/share/davmail
+    makeWrapper $out/share/davmail/davmail.sh $out/bin/davmail \
+      --prefix PATH : ${jre}/bin \
+      --prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath [ glib gtk2 libXtst ]}
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://davmail.sourceforce.net/;
     description = "A Java application which presents a Microsoft Exchange server as local CALDAV, IMAP and SMTP servers";
-    maintainers = [ stdenv.lib.maintainers.hinton ];
-    platforms = stdenv.lib.platforms.all;
-    homepage = "http://davmail.sourceforce.net/";
-    license = stdenv.lib.licenses.gpl2;
+    maintainers = [ maintainers.hinton ];
+    platforms = platforms.all;
+    license = licenses.gpl2;
   };
-
-  installPhase = ''
-  mkdir -p $out/bin
-  cp ./* $out/bin/ -R
-  wrapProgram $out/bin/davmail.sh --prefix PATH : ${jre}/bin --prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath [ glib gtk2 libXtst ]}
-   '';
 }
diff --git a/pkgs/applications/networking/droopy/default.nix b/pkgs/applications/networking/droopy/default.nix
index 8be5ee3c775..93ff39bde64 100644
--- a/pkgs/applications/networking/droopy/default.nix
+++ b/pkgs/applications/networking/droopy/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     description = "Mini Web server that let others upload files to your computer";
     homepage = http://stackp.online.fr/droopy;
     license = licenses.bsd3;
-    maintainers = maintainers.profpatsch;
+    maintainers = [ maintainers.profpatsch ];
   };
 
 }
diff --git a/pkgs/applications/networking/dropbox/default.nix b/pkgs/applications/networking/dropbox/default.nix
index 097ff84a704..2d0d194206d 100644
--- a/pkgs/applications/networking/dropbox/default.nix
+++ b/pkgs/applications/networking/dropbox/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, fetchurl, makeDesktopItem, patchelf, makeWrapper
+{ stdenv, fetchurl, makeDesktopItem, patchelf, makeWrapper, makeQtWrapper
 , dbus_libs, fontconfig, freetype, gcc, glib
 , libdrm, libffi, libICE, libSM
 , libX11, libXcomposite, libXext, libXmu, libXrender, libxcb
 , libxml2, libxslt, ncurses, zlib
-, qtbase, qtdeclarative, qtwebkit, makeQtWrapper
+, qtbase, qtdeclarative, qtwebkit, wmctrl
 }:
 
 # this package contains the daemon version of dropbox
@@ -23,11 +23,11 @@
 let
   # NOTE: When updating, please also update in current stable,
   # as older versions stop working
-  version = "22.4.24";
+  version = "24.4.16";
   sha256 =
     {
-      "x86_64-linux" = "1353mwk8hjqfc9a87zrp12klsc4anrxr7ccai4cffnq0yw2pnbfp";
-      "i686-linux"   = "07gpdxq61qkj3c4aywh61zwj34w7j24gcv5y2xf2qgcwn8bykks2";
+      "x86_64-linux" = "01hnx52ag7wfclxnqzs9m09pnmisz9lczxgg3wm47qmwhagnb8la";
+      "i686-linux"   = "1cr0vfjwn60xdv2kh6kmmgf6g0s2y9mqklbfah59pm7k2yr2pvnf";
     }."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
 
   arch =
@@ -98,6 +98,9 @@ in stdenv.mkDerivation {
       --prefix LD_LIBRARY_PATH : "$RPATH"
 
     chmod 755 $out/${appdir}/dropbox
+
+    rm $out/${appdir}/wmctrl
+    ln -s ${wmctrl}/bin/wmctrl $out/${appdir}/wmctrl
   '';
 
   fixupPhase = ''
diff --git a/pkgs/applications/networking/feedreaders/rss2email/default.nix b/pkgs/applications/networking/feedreaders/rss2email/default.nix
new file mode 100644
index 00000000000..6b92db9efa5
--- /dev/null
+++ b/pkgs/applications/networking/feedreaders/rss2email/default.nix
@@ -0,0 +1,29 @@
+{ pythonPackages, fetchurl, lib }:
+
+with pythonPackages;
+
+buildPythonApplication rec {
+  name = "${pname}-${version}";
+  pname = "rss2email";
+  version = "3.9";
+
+  propagatedBuildInputs = [ feedparser beautifulsoup4 html2text ];
+
+  src = fetchurl {
+    url = "mirror://pypi/r/rss2email/${name}.tar.gz";
+    sha256 = "02wj9zhmc2ym8ba1i0z9pm1c622z2fj7fxwagnxbvpr1402ahmr5";
+  };
+
+  postInstall = ''
+    install -Dm 644 r2e.1 $out/share/man/man1/r2e.1
+    # an alias for better finding the manpage
+    ln -s -T r2e.1 $out/share/man/man1/rss2email.1
+  '';
+
+  meta = with lib; {
+    description = "A tool that converts RSS/Atom newsfeeds to email.";
+    homepage = "https://pypi.python.org/pypi/rss2email";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ jb55 profpatsch ];
+  };
+}
diff --git a/pkgs/applications/networking/gdrive/default.nix b/pkgs/applications/networking/gdrive/default.nix
new file mode 100644
index 00000000000..f39fac2605a
--- /dev/null
+++ b/pkgs/applications/networking/gdrive/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name    = "gdrive-${version}";
+  version = "2.1.0";
+  rev     = "${version}";
+
+  goPackagePath = "github.com/prasmussen/gdrive";
+
+  src = fetchFromGitHub {
+    owner  = "prasmussen";
+    repo   = "gdrive";
+    sha256 = "0ywm4gdmrqzb1a99vg66a641r74p7lglavcpgkm6cc2gdwzjjfg7";
+    inherit rev;
+  };
+
+  meta = with stdenv.lib; {
+    homepage    = https://github.com/prasmussen/gdrive;
+    description = "A command line utility for interacting with Google Drive";
+    platforms   = platforms.linux;
+    license     = licenses.mit;
+    maintainers = [ maintainers.rzetterberg ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/dino/default.nix b/pkgs/applications/networking/instant-messengers/dino/default.nix
new file mode 100644
index 00000000000..7ea19f35fe7
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/dino/default.nix
@@ -0,0 +1,62 @@
+{ stdenv, fetchFromGitHub
+, vala, cmake, wrapGAppsHook, pkgconfig, gettext
+, gobjectIntrospection, gnome3, glib, gdk_pixbuf, gtk3, glib_networking
+, xorg, libXdmcp, libxkbcommon
+, libnotify
+, libgcrypt
+, epoxy
+, at_spi2_core
+, sqlite
+, dbus
+, gpgme
+, pcre
+ }:
+
+stdenv.mkDerivation rec {
+  name = "dino-unstable-2017-04-20";
+
+  src = fetchFromGitHub {
+    owner = "dino";
+    repo = "dino";
+    rev = "5c8275ed4efdc7a3a0bc2a9c3a3f46d0383ddcf4";
+    sha256 = "12k3s8k8wmjyg5m0f4f2vp83bp0m9swmrsms81yd1722z3ragxsf";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [
+    vala
+    cmake
+    pkgconfig
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    gobjectIntrospection
+    glib_networking
+    glib
+    gnome3.libgee
+    sqlite
+    gdk_pixbuf
+    gtk3
+    libnotify
+    gpgme
+    libgcrypt
+    pcre
+    xorg.libxcb
+    xorg.libpthreadstubs
+    libXdmcp
+    libxkbcommon
+    epoxy
+    at_spi2_core
+    dbus
+    gettext
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Modern Jabber/XMPP Client using GTK+/Vala";
+    homepage = https://github.com/dino/dino;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.mic92 ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/carbons/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/carbons/default.nix
new file mode 100644
index 00000000000..592ef325139
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/carbons/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, libxml2, pidgin, pkgconfig, fetchFromGitHub } :
+
+stdenv.mkDerivation rec {
+  name = "pidgin-carbons-${version}";
+  version = "0.1.3";
+
+  src = fetchFromGitHub {
+    owner = "gkdr";
+    repo  = "carbons";
+    rev   = "v${version}";
+    sha256 = "05hcqvsirb7gnpfcszsrgal5q7dajl2wdi2dy7c41zgl377syavw";
+  };
+
+  makeFlags = [ "PURPLE_PLUGIN_DIR=$(out)/lib/pidgin" ];
+
+  buildInputs = [ libxml2 pidgin pkgconfig ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/gkdr/carbons";
+    description = "XEP-0280: Message Carbons plugin for libpurple";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ jb55 ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-facebook/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-facebook/default.nix
index 30e4992ff36..6e96719fd89 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-facebook/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-facebook/default.nix
@@ -10,13 +10,13 @@ let
   };
 
 in stdenv.mkDerivation rec {
-  name = "purple-facebook-0.9.0";
+  name = "purple-facebook-0.9.3";
 
   src = fetchFromGitHub {
     owner = "dequis";
     repo = "purple-facebook";
-    rev = "v0.9.0-c9b74a765767";
-    sha256 = "1f7jhmaj15p3c9s4xmfygrpav9c8wq0vilbi5cj4jysb7xgndlqv";
+    rev = "v0.9.3-c9b74a765767";
+    sha256 = "10ncvg0arcxnd3cpb0nxry1plbws0mw9vhzjrhb40sv2i563dywb";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/networking/instant-messengers/quaternion/default.nix b/pkgs/applications/networking/instant-messengers/quaternion/default.nix
new file mode 100644
index 00000000000..781a4a18b9c
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/quaternion/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, fetchgit, qtbase, qtquickcontrols, cmake, makeQtWrapper }:
+
+stdenv.mkDerivation rec {
+  name = "quaternion-git-${version}";
+  version = "2017-04-15";
+
+  # quaternion and tensor share the same libqmatrixclient library as a git submodule
+  #
+  # As all 3 projects are in very early stages, we simply load the submodule.
+  #
+  # At some point in the future, we should separate out libqmatrixclient into its own
+  # derivation.
+
+  src = fetchgit {
+    url             = "https://github.com/Fxrh/Quaternion.git";
+    rev             = "c35475a6755cdb75e2a6c8ca5b943685d07d9707";
+    sha256          = "0cm5j4vdnp5cljfnv5jqf89ccymspaqc6j9bb4c1x891vr42np0m";
+    fetchSubmodules = true;
+  };
+
+  enableParallelBuilding = true;
+
+  buildInputs = [ qtbase qtquickcontrols ];
+  nativeBuildInputs = [ cmake makeQtWrapper ];
+
+  cmakeFlags = [
+    "-Wno-dev"
+  ];
+
+  postInstall = ''
+    wrapQtProgram $out/bin/quaternion
+
+    substituteInPlace $out/share/applications/quaternion.desktop \
+      --replace 'Exec=quaternion' "Exec=$out/bin/quaternion"
+
+    rm $out/share/icons/hicolor/icon-theme.cache
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://matrix.org/docs/projects/client/quaternion.html;
+    description = "Cross-platform desktop IM client for the Matrix protocol";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ peterhoeg ];
+    inherit (qtbase.meta) platforms;
+    inherit version;
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/tensor/default.nix b/pkgs/applications/networking/instant-messengers/tensor/default.nix
new file mode 100644
index 00000000000..0dfda79e767
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/tensor/default.nix
@@ -0,0 +1,55 @@
+{ stdenv, fetchgit, qtbase, qtquickcontrols, qmakeHook, makeQtWrapper, makeDesktopItem }:
+
+stdenv.mkDerivation rec {
+  name = "tensor-git-${version}";
+  version = "2017-02-21";
+
+  src = fetchgit {
+    url             = "https://github.com/davidar/tensor.git";
+    rev             = "f3f3056d770d7fb4a21c610cee7936ee900569f5";
+    sha256          = "19in8c7a2hxsx2c4lj540w5c3pn1882645m21l91mcriynqr67k9";
+    fetchSubmodules = true;
+  };
+
+  enableParallelBuilding = true;
+
+  buildInputs = [ qtbase qtquickcontrols ];
+  nativeBuildInputs = [ qmakeHook makeQtWrapper ];
+
+  desktopItem = makeDesktopItem {
+    name        = "tensor";
+    exec        = "@bin@";
+    icon        = "tensor.png";
+    comment     = meta.description;
+    desktopName = "Tensor Matrix Client";
+    genericName = meta.description;
+    categories  = "Chat;Utility";
+    mimeType    = "application/x-chat";
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm755 tensor $out/bin/tensor
+    install -Dm644 client/logo.png \
+                   $out/share/icons/hicolor/512x512/apps/tensor.png
+    install -Dm644 ${desktopItem}/share/applications/tensor.desktop \
+                   $out/share/applications/tensor.desktop
+
+    wrapQtProgram $out/bin/tensor
+
+    substituteInPlace $out/share/applications/tensor.desktop \
+      --subst-var-by bin $out/bin/tensor
+
+    runHook postInstall
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://matrix.org/docs/projects/client/tensor.html;
+    description = "Cross-platform Qt5/QML-based Matrix client";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ peterhoeg ];
+    inherit (qtbase.meta) platforms;
+    inherit version;
+  };
+}
diff --git a/pkgs/applications/networking/mailreaders/astroid/default.nix b/pkgs/applications/networking/mailreaders/astroid/default.nix
index 96b1b7d285e..668044f5efb 100644
--- a/pkgs/applications/networking/mailreaders/astroid/default.nix
+++ b/pkgs/applications/networking/mailreaders/astroid/default.nix
@@ -3,25 +3,23 @@
 
 stdenv.mkDerivation rec {
   name = "astroid-${version}";
-  version = "0.7";
+  version = "0.8";
 
   src = fetchFromGitHub {
     owner = "astroidmail";
     repo = "astroid";
     rev = "v${version}";
-    sha256 = "0r3hqwwr68bjhqaa1r3l9brbmvdp11pf8vhsjlvm5zv520z5y1rf";
+    sha256 = "1gjrdls1mz8y8bca7s8l965l0m7s2sb6g7a90gy848admjsyav7h";
   };
 
-  patches = [ ./propagate-environment.patch ];
-
   nativeBuildInputs = [ scons pkgconfig wrapGAppsHook ];
 
   buildInputs = [ gnome3.gtkmm gmime webkitgtk24x libsass gnome3.libpeas
                   notmuch boost gnome3.gsettings_desktop_schemas
                   gnome3.adwaita-icon-theme ];
 
-  buildPhase = "scons --prefix=$out build";
-  installPhase = "scons --prefix=$out install";
+  buildPhase = "scons --propagate-environment --prefix=$out build";
+  installPhase = "scons --propagate-environment --prefix=$out install";
 
   meta = {
     homepage = "https://astroidmail.github.io/";
diff --git a/pkgs/applications/networking/mailreaders/astroid/propagate-environment.patch b/pkgs/applications/networking/mailreaders/astroid/propagate-environment.patch
deleted file mode 100644
index db536ea721f..00000000000
--- a/pkgs/applications/networking/mailreaders/astroid/propagate-environment.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/SConstruct b/SConstruct
-index a80bca3..ed2cd6d 100644
---- a/SConstruct
-+++ b/SConstruct
-@@ -5,7 +5,7 @@ from subprocess import *
- def getGitDesc():
-   return Popen('git describe --abbrev=8 --tags --always', stdout=PIPE, shell=True).stdout.read ().strip ()
- 
--env = Environment ()
-+env = Environment(ENV = os.environ)
- 
- AddOption ("--release", action="store", dest="release", default="git", help="Make a release (default: git describe output)")
- AddOption ("--enable-debug", action="store", dest="debug", default=None, help="Enable the -g flag for debugging (default: true when release is git)")
diff --git a/pkgs/applications/networking/mailreaders/mutt/default.nix b/pkgs/applications/networking/mailreaders/mutt/default.nix
index e5cb54723d3..4800fa938a0 100644
--- a/pkgs/applications/networking/mailreaders/mutt/default.nix
+++ b/pkgs/applications/networking/mailreaders/mutt/default.nix
@@ -20,11 +20,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "mutt-${version}";
-  version = "1.8.0";
+  version = "1.8.2";
 
   src = fetchurl {
     url = "http://ftp.mutt.org/pub/mutt/${name}.tar.gz";
-    sha256 = "1axdcylyv0p194y6lj1jx127g5yc74zqzzxdc014cjw02bd1x125";
+    sha256 = "0dgjjryp1ggbc6ivy9cfz5jl3gnbahb6d6hcwn7c7wk5npqpn18x";
   };
 
   patchPhase = optionalString (openssl != null) ''
@@ -45,7 +45,6 @@ stdenv.mkDerivation rec {
     (enableFeature withSidebar  "sidebar")
     "--enable-smtp"
     "--enable-pop"
-    "--enable-imap"
     "--with-mailpath="
 
     # Look in $PATH at runtime, instead of hardcoding /usr/bin/sendmail
diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix
index 212d366facb..7c48075704e 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -97,10 +97,11 @@ stdenv.mkDerivation rec {
   '';
   dontGzipMan = true; # already compressed
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Mail indexer";
-    license = stdenv.lib.licenses.gpl3;
-    maintainers = with stdenv.lib.maintainers; [ chaoflow garbas ];
-    platforms = stdenv.lib.platforms.unix;
+    homepage    = https://notmuchmail.org/;
+    license     = licenses.gpl3;
+    maintainers = with maintainers; [ chaoflow garbas ];
+    platforms   = platforms.unix;
   };
 }
diff --git a/pkgs/applications/networking/mailreaders/notmuch/mutt.nix b/pkgs/applications/networking/mailreaders/notmuch/mutt.nix
index 6d08ad724b2..410e5e10ceb 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/mutt.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/mutt.nix
@@ -38,8 +38,8 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     inherit version;
     description = "Mutt support for notmuch";
-    homepage    = http://notmuchmua.org/;
-    license     = with licenses; mit;
+    homepage    = https://notmuchmail.org/;
+    license     = with licenses; gpl3;
     maintainers = with maintainers; [ peterhoeg ];
     platforms   = platforms.unix;
   };
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
index 851b8737495..aba121ba761 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, config
+{ stdenv, fetchurl, config, makeWrapper
 , gconf
 , alsaLib
 , at_spi2_atk
@@ -16,6 +16,7 @@
 , gst-plugins-base
 , gstreamer
 , gtk2
+, gtk3
 , kerberos
 , libX11
 , libXScrnSaver
@@ -29,6 +30,7 @@
 , libcanberra_gtk2
 , libgnome
 , libgnomeui
+, defaultIconTheme
 , mesa
 , nspr
 , nss
@@ -95,6 +97,7 @@ stdenv.mkDerivation {
       gst-plugins-base
       gstreamer
       gtk2
+      gtk3
       kerberos
       libX11
       libXScrnSaver
@@ -116,6 +119,10 @@ stdenv.mkDerivation {
       stdenv.cc.cc
     ];
 
+  buildInputs = [ gtk3 defaultIconTheme ];
+
+  nativeBuildInputs = [ makeWrapper ];
+
   installPhase =
     ''
       mkdir -p "$prefix/usr/lib/thunderbird-bin-${version}"
@@ -146,6 +153,11 @@ stdenv.mkDerivation {
       GenericName=Mail Reader
       Categories=Application;Network;
       EOF
+
+      wrapProgram "$out/bin/thunderbird" \
+        --argv0 "$out/bin/.thunderbird-wrapped" \
+        --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:" \
+        --suffix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
     '';
 
   passthru.updateScript = import ./../../browsers/firefox-bin/update.nix {
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix
index 286911e05c6..1b42957f908 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix
@@ -1,585 +1,595 @@
 {
-  version = "45.8.0";
+  version = "52.0.1";
   sources = [
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/ar/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/ar/thunderbird-52.0.1.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "b56803f7047547e0ffbe7491062e82a82b19dabf8d4a7483834720166b0fb913f4a0252bebb5653abfaaf526998a5af0c31ff8a62ad8f5ec7d9736a6d581a7d6";
+      sha512 = "1543d3b17ac8a6a437b34df0b3d33081b86554107321716b534471c86415a80fd4cb7f35fb60be7482a7476bdc4d2c5f9fe29dbd8381ff841e1f0daf2007e8a2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/ast/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/ast/thunderbird-52.0.1.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "c49d973c8b138743ea8fa0bca75f2de01ce1d051b15b5d9e6516ad7a8e489028d2198ba460abcb62a06f0738994f00885d0e26e98b5f3311dddb258622ef6f36";
+      sha512 = "b7b9543253530cb3f166d155465d320d30138542974e71cc92e5c3be6efe12014ff2db5b63372297f7cd3bf72cd1a866606f1bbb288504b6a272e7820ada1bdf";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/be/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/be/thunderbird-52.0.1.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "8e5463a97d93c70fd9fb3b5cda89ad916c7ae2abc89974536dbe2af0633e696c839a97e8dfbf35bb3c1efc7ccf1c588c5ab3e595a0cea519596ac2c112f8012f";
+      sha512 = "f9283894e7c9bbeafb8fa6dbd2aeb1756b8d2456fe06c4278741c79171197b505d9a3d4b8e1cc3b18cf22be71555e1eded616ef0ed2648958b0d4d07f9d96654";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/bg/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/bg/thunderbird-52.0.1.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "912056b19247376e3f8f4f8da493391c9e094abe2723091cf22c83017fcaefa3402e3465db99ea2a4413ea3fdecb9eb6170e8091a2ce3bc191061e9697daf0cb";
+      sha512 = "486e2b3e149b73d3bc272546f7cc55b9d8da97d48808ca5aa0c3fc12d5bc0ea49c353f8b2c95ca398cc6938e67087f8ace8bd9bbbffe75712fe64b05994937e8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/bn-BD/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/bn-BD/thunderbird-52.0.1.tar.bz2";
       locale = "bn-BD";
       arch = "linux-x86_64";
-      sha512 = "a221336fae5a44312b1fbf8027c9a6088152f96cf2e5ff55239c0256f6b824c92eddba4442b5efa9e4ae1ed81b3a7114d85fa08a785eb73a20aa0f2b86f73107";
+      sha512 = "da54a9b78deb56de84623e71e60083aaa53dd8180f6d63f6ecc5133af846e5f773e63ce9131dc751178210994765a4e3daf68c582e180dd25f26d4f8e95e9646";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/br/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/br/thunderbird-52.0.1.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "ba3d2a59ef9347cb1c23716bd308f62cdcf1399ea6a2c35ede563fa2af48e49a8ca9954f986f55e41c80647cceb218d664ebed0c7053e3ef4a0ea12395bd01d0";
+      sha512 = "b647bc0aa73ca1d4deca50f70d5cb78bc95663c7c1668464c1b2d6d0e944f69ad73de28dd3868a6ac3461c5e64e74e206d508569d52ae8aa2a1da8f1164c4d94";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/ca/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/ca/thunderbird-52.0.1.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "f64e2eaa1208fbcc8be61e28ceedc113101fd6a9d7b2ac23299f36913b7c696b7a3fbb83934c4ea2ca8d23d632891a22e48ce3001425fea54f7669599da136cb";
+      sha512 = "3c9562e14e20d90d76e6c8b39ef3047899fa094a5639ddffd716b687adb484a97cb6036e3228cdfb207086b28917b74fc44eca07408e7882f45941e50dfbfed6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/cs/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/cs/thunderbird-52.0.1.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "130c73d25b581988fc14f734d39bdea4d777258ba35f56f421b234a79a00cc4f322912977af0feab0b3d4ac72e3fd3d13eb26465da7b2d81d8ccbf05a42b8c0e";
+      sha512 = "ed20a0b054d4e86ed1577c8a2672aa692ef47345243716f6dc840910b29cd915df75f8be9ac05bef385afb5721739fb08276c4bf48a51178fa46033c1131c1be";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/cy/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/cy/thunderbird-52.0.1.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "a3894db9cef7368ee824ea7015b62d378a7e8733b86eaa5fa59645fea4fe9bd9bcb1752ed12678d6ac052b42060d2a3282f23c25c4451362a0c941001352a352";
+      sha512 = "2dcc1d221db9bb647f5bf454a767f692e5eb592d1c6af52e144c55cfc81f0e3e05ddc2e3c4cb66b0031e09531641716009d062f340a5948233165564a3d5a5d0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/da/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/da/thunderbird-52.0.1.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "ae037f835dd51fc4b140ca0165f75ff26a305715a8536929d46c487d4db1e77cb10f101faea6a612579b021db597b63045deaaa7db1cea2b3d4160d8ef423a4d";
+      sha512 = "1046c0ecf657a9c5b30e99175f6200e541bb5f33031f1a440b26d12d6de0c558e15f8c2f965a05e59f83c46849944e010bcbdeb6fe100672d97acf0d4038febc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/de/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/de/thunderbird-52.0.1.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "71255dfb152f4f204399b6ecaa837a468bce5582fb9f358a1d7bdd073e2aecd41a7302a0096f1429d20bd67a92d012172308e8df9aebde141bb7da828b158cd5";
+      sha512 = "10842eafd14068ae5d2447fc2d3aa35066af97a6e49b88d38bcf37be1e754d2403b1c039dc09f418128cd9369da6e0afee278914dd41a2ce48cb4872a7d4d18c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/dsb/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/dsb/thunderbird-52.0.1.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "39f02422d754637044fe4c75c9d677c43ff6a87229893c3eb637ff6b9c8adf541833aa929b70f2b783aa1fcf998e112645809c6256070fa746c4c95885c9232e";
+      sha512 = "f7e6b05dfc94f64c988c761877d02ad3c66a7cc47e2818d267d7839d0b1fa7688ecfac8fd3af98e9e9318806a78e4559d6cfe45de0d96b7f5f8d411c6f6cf051";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/el/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/el/thunderbird-52.0.1.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "3cf4cce1398e945a3cb41e5432aa0c2ed1fa386e8e553816b1478a12e1248ac709de8d21a938e6c3cd801fffb58fe6e10776b8b96bb295b5fa016492f70031e9";
+      sha512 = "0ac5a23a38987a5af15bbb8e458a89df378b89fdd8721063d6df16a3658201ef1fb4f2d04b6272e1d9d43c1d2273df4cc0fc79b7d374f1fdaf7335c77fdd9381";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/en-GB/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/en-GB/thunderbird-52.0.1.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "609ebe7d015af9dfd3b88ebfb04d67691314ac91d3df7cff91df3f20ba7fb12db5f44dff5c773b4b7c858cc4bc5817119fcfabff03ec550ce250a5289aaea9ab";
+      sha512 = "73f42d30f8fea9063e984d9b44c82aac545a20833133cead89ea147e92595e66da2a1f3d3bd0c09bd1584482474607e6856ba17ff80edff51b169aaba03bdfac";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/en-US/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/en-US/thunderbird-52.0.1.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "4294c93adb8f38617b2898c91d0362b3ab327158e1810d2304f2481bdc4e0e06e1fd2a2d6748cb491cc6c732a039fa3dd83dac801b12ec7be2d7c8cf7e986286";
+      sha512 = "51eafcc7466a2136ddad110fc43640c578d69758e53eace8da52a11ea86869b5d05e537b6132c3c49eb6bc6fc5bad77f2967a472c160963a41775b34600b7582";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/es-AR/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/es-AR/thunderbird-52.0.1.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "ded0d52934a5b74e4eff172037c1abe9c15cb522897daee5173739f4a149c1891309a366d3aded2f1306c447970e72b1a2930a9adce07d57287f7f5f0e8eec73";
+      sha512 = "b57cbef7843364917632605dafc056323adeb9d06da7e53a65a4450e009fa1f2c54cb5380ed886db4530e845bd6f39cd160ac90f19f99d63ca1f85af09ed77fe";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/es-ES/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/es-ES/thunderbird-52.0.1.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "523c9b931d9ef8319c5a30463035d84946d97b07a9714b2357637f9992a3dcda4536a29933a29340d4e4951ff2bc540d587ab290a16033bfc510ac911c32d3e7";
+      sha512 = "408adb2ef60bbad16152ceaebc8f26c62fb829960e941dc5fc2814b183b780bd0fe79847351395321026a0ef53f703b72b6f4bdc233b3284d050e8bde35c0beb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/et/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/et/thunderbird-52.0.1.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "376e5cd8f50c4b10c4f71b6410528965f256b69c17f3d0d103efe6bdd28ed96d0fc47dcfb709dce617757c3cec603c5a16ac675ae12e17b093db3d1184c8ebfb";
+      sha512 = "3186c5a026029e7b7b4dec47079b69b7f33398b2cf276b9bbf0b726d64709f176e45e31e0abb74c4302d693aae0ecafcde945c78da097cc2b0c1499481c78ea0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/eu/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/eu/thunderbird-52.0.1.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "8dba4439fadb14028903eb552ad08c62b0a63559ff5332fd2d5434179fe28a75d754b6769d1a171d7e580ec6d86fdfcad8ae6230c14c4e9aa981944013dc5b86";
+      sha512 = "c60d3e2ab30e84628158ac65dc5c58ffe5a7b9dc7c3d5e5135456ac4be4d4734a4f4dc7d65c15f400dacc55fddc739934f3978f6184a93a662466b759938d1c5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/fi/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/fi/thunderbird-52.0.1.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "40d579d59beae9070cf548f340d5b36d67d0456bb0f9569330dcaf4667d6cef71be1be4d32ffbb49446c8921486153e50d5c33ad87746f605e4d3a79b4b74a69";
+      sha512 = "14aadef508eabbaaf81a2304934f3848e3831f9d8df2413a49002be36f951c87355e1954d84d58509086c1b0e0aa1de5865edb733d0a07b655942830c83ffa18";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/fr/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/fr/thunderbird-52.0.1.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "80b489cb98c0a39c641c0d49cb750cd737594e6de1c9b0559208535a41f95855afbbaf987ab0cfedf5fb5b2fa1589d538b7eada05114d7259d3789fa399e20e7";
+      sha512 = "0711ff8a5955ef185678b27e8e43704c652d9024ab4b8558eddfc2c94f87dd24603f144f391f35580c3fd512cd44ca729253501495860e6799440e56c4895c67";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/fy-NL/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/fy-NL/thunderbird-52.0.1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "6bd13607375c513be19ae9f86e806ca94d4acb087700fdf85842cd2a7eecab66735b9ca5130b013d09dcaab12134d894bb991774727d67ff71ef2cef4b0f9b49";
+      sha512 = "99e49dcc4085db1895b0e2ec2e7a769fb608415135d550485fea03ccc99f325771682f725c78578944c82b2f18aeb207c8abceb86db5390056d27c291f19556d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/ga-IE/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/ga-IE/thunderbird-52.0.1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "de4744accb4332e8509a1cb439f29d773d67f42d3964e11df83e790e6f720063b3368d3a120f746829d61741abb18baaf1f2afd9dc3bffde1ae2a118025d7973";
+      sha512 = "f0bc291e1b3dc2e226aaa48e5b87c1e6690ccd04b4b62b36fc654e86173c9dc6ef47170524ceffbb59093bd4188a3cb01a894469daa4bf49a0a8895034d17645";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/gd/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/gd/thunderbird-52.0.1.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "98f73337263ea57e609bab9f8f0537c15c385448c48b84185d9c8cde8550d2d2fb6adc31735c7a45eff5d1872047f7137e168b977a5686401c1f0aa21a38effb";
+      sha512 = "65388bee6e5f8255779f319eb0d47310762ac6d3ff6b61f3accb151e52dfff8e079aa16be714fe4a89bd722bf72b65f930384d555d68016a27b71bd236388f7f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/gl/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/gl/thunderbird-52.0.1.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "b255dcc44f33c9b8d74ba664350cb6423245a146134e64292f7bd0850ddeafedfd691d8c5e4db51c019df92283b094a8d152441512aef33971ac8959a2904656";
+      sha512 = "64c439a0d2a75a3b9a460966c585913656884da7cf7f81f58e612c9f2523ac690a8585bca61e60fe31e13ed6f07d484e3dab6bff876fa247dc1488f084d8a6b4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/he/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/he/thunderbird-52.0.1.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "4c8406c16bae204a1aeb075dd061eb3a70585e439c29f585fed4bb7ee3c1d599f8fb2f12f2ad9d0521550729d7ad1a0b097349a3a318be89a37d10b749fa4fc1";
+      sha512 = "7b20a5d996164daca9ce2d6af03a987eb67394eba01c942b29aca3009ee062f0c57cc011baede67c09a7b0dba63e029a5fb5753d18edc34c87926fd16651e208";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/hr/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/hr/thunderbird-52.0.1.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "e855a5753de07b4f4435356571178149c0eb26d9b0b81bbd41de89e88bcf30c3d970514c3548a389cf719917f29899185e1bed9d18c4b467f2d31e00d271623b";
+      sha512 = "4419fac97644cf895021bd974e15466936b45babab7634e35855ddecb2575a43cf9be65cbf83c1c27648b58b656c9f6b4e8d454be901b479cdf86180f244a646";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/hsb/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/hsb/thunderbird-52.0.1.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "8afc5a73b43ae6b43595028213ff6e21da813f9e9a93aad498e583c4ad5fcc2c5eb90ecdf911a32a68710c36a742ca1a0cc89b987789aaeb9995716783e0fff3";
+      sha512 = "0f31903823ee2cada852aefa8d19b64ef9ee9e9f80fb709481c155a7a4c97169703a35e7de1f2b805fd91d98321dad81fe0321775c4bf9af5f01d38ab75c70a7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/hu/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/hu/thunderbird-52.0.1.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "da48fd9398349c6dd583391413add0b789d1500dd1481758a62121052bedaa739406011b5a3747fca810c74140c98498eb8c49a092ff3f184627bbc3469df90c";
+      sha512 = "a2972f056d54b7d22ff090e43144ee16f38b01a1d6ba76dcebeebfdae086bde752008fdc89650947944bc80c82078f94995db8bf8daf339ec0a8fa5475435477";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/hy-AM/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/hy-AM/thunderbird-52.0.1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "588c3670d7748453e273f515255c29e5644e521f9710d1f87360a2031334f9353adba4e219b0f90c3c028102e5e02a0ffe07071a6fddea2bd2a1d972c04e1537";
+      sha512 = "47e80c575adae2327cecb5c41ed747c9d4da5ecc9e9ff8afc5dd35764b039050aa07dcbdb79d50fd7a4d8eff6f233f1a3cac3365e6a4db26e0058030d82a0f6f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/id/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/id/thunderbird-52.0.1.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "a9acd62a369249370f7c6b70bb48aaa8af06de2439b328d92ddd3092cb95fd59df679a451f42173e6901d0e9fce9159e295331479d5128fc50ca7a2c93129bbb";
+      sha512 = "3d8f7a87727e772aa9435bf0e381703003f9a1fee98d71dd7f3fdb7add574a0c5245dcf8903895fa858ec2afbb9823d658db4fd800427d29c71ca93546adcd8d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/is/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/is/thunderbird-52.0.1.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "76aee81433e6d8f2f7906d754069a5aab3ff8caa2b3d503a730eefcc42ddc1ea2018049419015dd4725344dbb54d821633f10f1d0c0139ee62c230f7643c5ee9";
+      sha512 = "5ba20b28c08cf19f12acf887b92959a09cfb471776ab1805feda15ec4d406a23ab9c6c719a64ad2a65684f9e1bad00dd2f321285bfa85bf8e2f5aea5ffcc26e6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/it/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/it/thunderbird-52.0.1.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "c7912a63ab9141a32e8f9040522900b10bb56360fd387b8b47af860814fa1541ab7ec1c59eb6376b7aacc2a22faa046d05c4a1ae81ef12bf553fdf546cfc403a";
+      sha512 = "127471777e937b3b02f07bd66366680eea194171554bf7f11659331fcba414b49d0ce07457d754f5131084ea89d90d6e9d4e62929fe3d7c8c4a3d58b1b34b72c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/ja/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/ja/thunderbird-52.0.1.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "03f414eba62f4188bb7a368653f89f0b8d48e850751cab0fb6d706912787aa098a32934bd5c7b3026e466b23df4cc6780f6b88f1f252943b2d56b53f1ea62cb6";
+      sha512 = "aa013a6c50d660a150b2b4247eaee467ca1a1a232d268121a8e8113386c9575e2667f4cf75c1e7ae77458869a9bd4d2f7972c5cb2aa919296bbf3aca44d48093";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/ko/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/kab/thunderbird-52.0.1.tar.bz2";
+      locale = "kab";
+      arch = "linux-x86_64";
+      sha512 = "6f4f4b27c658103dd6c4a9d2c9cfdca09097539eef1e123bda9f11d185a25f0cb944e96d37e9a2c36664700948c4b052a5eaf463e4fb045fe6def4773b19a8c6";
+    }
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/ko/thunderbird-52.0.1.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "d9c1cfba0ab167b4f3e16eb8ee37ca3acfd94477df51a2526975602882b93a4c86e7936f76263bddfc904900146b0ed570c641f4cd1d48904bd5b9f09aef91ac";
+      sha512 = "4efbc262f563e03ec78a10658772c9c3b446e5c378159d35a68b432d1b582dac589723525a26e337a2739c0ea116cbaadfe8fae110ad172fd7268a7c5e76c50f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/lt/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/lt/thunderbird-52.0.1.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "5f28db94768ba285feb1a239cfd909a588a975dea16ade7793e4e1f71f8dcee1685e7370ba23cb50b253d8252a51a38a90375e8224653bfeb37e2a1e8d969d34";
+      sha512 = "b1f1cbdd9642e283144200d716783a212948bec80e1b5d27046e80c22349e8b103e98f31bbbe392f4a1467805bbb28801b0f8c597808f03bc6fdc9110cef2900";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/nb-NO/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/nb-NO/thunderbird-52.0.1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "e3078466c4a5aa5a2743c7224c279c908be05730a79bc541031efa48605e0b74fb4244e087f3cf526bab6c67c40da585815f11999ff29d6a3d0867614aa11e17";
+      sha512 = "51e675ca839bb7d205121b7023244a9716eb4b7f400c534f6b3a3275aceaf827262a816b790492d3cf01b6f01d64b7cb0c1f2385d1ecc74dad0f450f8d1b26dd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/nl/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/nl/thunderbird-52.0.1.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "7e2bc54b6d72fa495ef99e132dc4e476bc233c88c1652fc625ed66b504b901fcef53b4968d63d7d468e734903b38ef897282c2122e4bfca5b492e2f4d44b51b6";
+      sha512 = "866a4d117196834fc415e6dc394c82a9cef6747c838068abf0efef5cb5e03f26d65f5c3e9ccd90fe7229a8785817736ee574d73424ac50633650bfe6c9848633";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/nn-NO/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/nn-NO/thunderbird-52.0.1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "99a733996460fe3a425d7ac9d37d292ef9fdd0d1bb22aac251f592bd57f4ab2228040443ed132987cf17d971b3bb2232ba9e70aa2b6b702d73967ed55a1b3b41";
+      sha512 = "664d8941c433fc04fa836f1dbec12ad73ce3cf9d19d898c8cd6b6c9fc283380e7af27a0ab949881f5b6151595a6c584f938aee6f88e5239fa2de0403813c3388";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/pa-IN/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/pa-IN/thunderbird-52.0.1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "d43dc96e3620c8ee1257243e725743e72c64f39123d2e4648eb5a31e45175b9b01b066b85ee9cc3d9765151bc2aee32f73b50579619968ff95918189d45358ca";
+      sha512 = "4dfb57686154b3542fef873d08037fb86f7574260884494872433496b82f0b58a14710931fdd0bd5dbe7372658691b2e953a4fd794378a993f97fd6c8c9ac496";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/pl/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/pl/thunderbird-52.0.1.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "32f034261425fc41ad9b2c252aa456b1526526816d9ed66e92c49fbf8fb4b077405e2ead3256dac568e1470e29971ff84466854115f57f792a254f0723278054";
+      sha512 = "47041481a2cc660bd6de4a018aa77ee4f8217fc7091b37ab8c26d1ec1dcb0678ea80130ee84289dcacd6266431da4532a66b041faba56f1bd8746e991c748a82";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/pt-BR/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/pt-BR/thunderbird-52.0.1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "65f85f596241f812a548a90a1ebf3cd24733e590cbedd600ca8d1164d3d3f5db9fb9a0e152ea05025039203f192168f60fd28a03121c31cdcf14449505d57c0d";
+      sha512 = "3001331547a05bf5b76620886096fb80cc594c625a335fc613408da5c43075c15abb0a6803cc34c740cef5d7ed9339e21c2db3a8a736901350674ab3b1024514";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/pt-PT/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/pt-PT/thunderbird-52.0.1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "fab114396e6cbee135441392dfe6baa179640174edd19ec4d1854a4adb6d3310a38e162209bea0ac532e2734a9ad4c5abc1926e0a4ca2052c62697f99c374135";
+      sha512 = "402dc645810068339fb9fc18d6e3f025c48013281e3604e9a3da8228ee6cdd304ad3d2c10781dedbae9dbba3737fb122a3fd5abc3c856d1afaaaed2d7e23042e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/rm/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/rm/thunderbird-52.0.1.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "e03da559d75887e2418119cc946bb9ae2f11027dc2109035e533da46c859f3dcaf8fec294a6bdcb10d164866bc5c3652ccb6b8276c58a91311c2bba63117f1fc";
+      sha512 = "4789cbabb8ba897a508e9dff91fcf838eae8fb4d330f500bb7f545cf46efbffd978801016898bc89bd6f9fc558df2737c427c16e2ec40c0a7866301abd7450c5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/ro/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/ro/thunderbird-52.0.1.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "f7bed7908706485e0cb26a663bdd6b0fd8ad8ad5e687a21e1c137c39d01427e3edce5ce58602bcd18a185445badefa519ecd841367f88f169591aabdf570b940";
+      sha512 = "fbeb8ae935f69efe85b1fb45969b8142b197d340293034c088ed50cdb563466128e305f8ad2c1586c9c18c2fd5fd4042b95ac15aa9e2783fcda2c67a6aa941b3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/ru/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/ru/thunderbird-52.0.1.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "7775b9054e95d373d188e496287b2cbea1ddcd12c51681123642fbc181cff258d47b900b3dbf046f3de7d75e80eef5f343a50577a9db05ab2b56867a18f3c912";
+      sha512 = "a0a21b2ea3720b776b3a7944c1a9030ab80451a4405afd87f49b424326cfa69769e7e9bb54071c7747f4fe4af8f18fc3a9f8db73a848c554d9d4f3eded8cb9f9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/si/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/si/thunderbird-52.0.1.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "3e19c7e5b62b6d0bd3598ce6bfd23631abe381f7af91275aa8e424ff2950433fd5e58e912ad13c726185e528046d3bdccdb6b3e1fa540fc0cb69b18d37caa095";
+      sha512 = "bb919c3b00f4122cfaefad1a88a68d3dcc88f09bc6db717cee14ba3ab76adc4b4c1ff32dcbbe0babe7336856c31153eb69e2297d88ca60f9e561aab083344710";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/sk/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/sk/thunderbird-52.0.1.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "35a5b23cffb7a80aaab378ac17195b727b7776a0c91e1616fe9a66708adc08d6041efa55dd5b291eee823a5420b092671a34f930276521f0d757e3b5568e7861";
+      sha512 = "c6e1e049a264bac92fc103b3242fa36dc38caecfe22b909c41ac86e570d7f3c9a7b39ad9d8f9f918fafb60f91e0e3fcd925a598c9f7deb6f7874a92436de6ec6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/sl/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/sl/thunderbird-52.0.1.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "a7b27babbcd47b4bca6e0686aefa175fab17c4ab0d7f18793a0a3755fcaf04cd85e9bf8ddaec442ab83bafede0ad9f8211add33b6cad845f7c827e3af0982f76";
+      sha512 = "7af3e5a875077f94ef0e7aefd1b170d8f8285fe99b9c59ef568c055253f812949127a37557b88f2097282de8f1615d272abdee51713b30f376b08300c29bc814";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/sq/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/sq/thunderbird-52.0.1.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "796d3cd98d39fbad987387f92d23c10f4176f2e612c1fa939bbbcf86eb3de5798a9c9add31549dcae001041d0318de2186e00200190f467ebfc85e5c95797cb0";
+      sha512 = "ff37ad0845c95ff043c906bf80b7221a541a1eb038ee2be63d7b2d8d1cc8ecf26698b2fed0433334454203e09c98d4166e972e07968fa32e17d826811687613d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/sr/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/sr/thunderbird-52.0.1.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "8b296aaf9314a8b0381e567ff87e8ed261ebb976c0f63d3636d03fe2e416475dad8c500058e58793a7945ae620268854f99c97b93da0ab73a40f67d801b34af9";
+      sha512 = "487c92ecc4123607466a0e758a16dd87537be32750b12a206129281ec42afc8fc672cebdf948b3233850b8b31338abc829ef60f8a10187eab6bedcc11cd6e11e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/sv-SE/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/sv-SE/thunderbird-52.0.1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "59e0eb3a4e1cc65fc34369b0854d7029bfe108b3cc3550bde26628d88d82c0031bbf13ed8564c7508b2acae5ffc9a912f1cbb991bc5cecf2a210bcdb181e2a05";
+      sha512 = "e0eb86726198982cc14db6bf1c2b7fda2b60492ed318978c6c9349ad7514eb0a35798a3179ba1cc71c84f3219439068c957c38bc87207e5ad81c200378f5ea1d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/ta-LK/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/ta-LK/thunderbird-52.0.1.tar.bz2";
       locale = "ta-LK";
       arch = "linux-x86_64";
-      sha512 = "86719203c04b90e2d359ede21ef3bca7e2190b131a78ba4ccf6a7d9644bcb2971b541cb3c6432e6a12952a3a589769851277a257aeec594b6208918c17d76b32";
+      sha512 = "7a3ab20a071e8cd1728104c31260e3b443cf5c88e116240ce4575c544708fcd5ba386385c72d38b98c1ad76c1d58ff3553828d547e1e64e179521edbe5d31388";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/tr/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/tr/thunderbird-52.0.1.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "5b7fa2e0881dceeb0ac371a0d84209cb9e9c414ee617766ff898b50c2b21956919410be26cc0b1e30997931519fcc491c63c6e30144a2c57af8b7b8f61cd192d";
+      sha512 = "6ffd911857ecc23c6a41181b684cb9cf9eadc7a76ecb1cade7ae1a5cedca1cff5b18660d76d6b10d722f28493a618417ccf31037229a1af62281c04360a986a6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/uk/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/uk/thunderbird-52.0.1.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "8be8b331dce88d3244007066036741af4794559237811ab8d45dffe3e850383de636bb75a510d4a0500a2a78aa86d06768073a5626f5bf2676eb4d8e355eddcd";
+      sha512 = "751b43543f7ec4684f4f71450aa301e5f63ea252901cec77593ff637fbb054a578d7fc13a58ba05247af46e86af11f1ec7f0151ab49eb4f824fb11c03c15c6cc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/vi/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/vi/thunderbird-52.0.1.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "60ff68fc5190679b4faf2e80f89b8061348f24c0426f632fc2e523be2d47b0477b2ca122fe4c9a77e8baa91d5c55ef0204fba74f65a1d7e77727abb9846c93df";
+      sha512 = "9aa955924e9a7cf6dbf9f9ad94e9d8cff9f91cda4da5ddb8a1e9d2719081ba5adce1cdb57ec55a76473679c63dddc9ac95589503adfa5d4ad00afae6002ff4fe";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/zh-CN/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/zh-CN/thunderbird-52.0.1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "a7da3633bb13627a81681e2539472291e0ffbef2921ae59c7fa541b0115f761295221501ea7b4e71975ba89dff559aa0f4ae1be196983854021bef823cd7c40d";
+      sha512 = "3bf34fb329ea1bceab24b0249c138e82c3725569ac82023a33d70c8a94e559f9d930b277bfb8df34571e4e2195293ee997de95c6dc22285be9e3ef15bd145ebf";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-x86_64/zh-TW/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-x86_64/zh-TW/thunderbird-52.0.1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "dc16cdd23ad53baa7b0863aa889a9222a14ae8e81794efad08dfffc4a6282655fcce3ff64187ce149c06d808a0010af8a084bafc59e253f094d501ee6bebbbef";
+      sha512 = "f8928de4dce61b52fd69305023ff4893e35cfba2aa712dc34dc7deb024a36cd7c12a662a497a21e7f647b14779216a3aa2b6a01f84751860dea04b388b265c6a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/ar/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/ar/thunderbird-52.0.1.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "21c08dc4ae1655ddf62ab03ab68ff0d5fc3efd6c8cd3ccc6d757b0b684365a3316b4cf4fac5a51b21be27a5e3067fbc875bdac1a8bca5cceab6e048c10f0f177";
+      sha512 = "1a5f8a3da90724b1a85b63b7fee31d104e4ba1620b25e6823fa556d8f675335f3c25dce0499defbf8277c3fb6db98c58500aa6ec1460a194715d2d87942a35ed";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/ast/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/ast/thunderbird-52.0.1.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "3669b524e5d5800f9ef3c1c6b5f874c29ba6fbb336cebbfc9a88f857e73f9bf90ccdb0fa2f1723d4e883947e71dc0333391b9021166b5acf2e39ca3d7bf02ff1";
+      sha512 = "a4f5994657846378b0a472deb03d87fc30d27b35d9787c8fa53a7b428dbd4f3b0bef988863894606dc9b6c2370965353bba4b54140602a5acb7f3da433822f72";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/be/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/be/thunderbird-52.0.1.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "f49f90f1998a5b7dec1e3a862b8f76bc11445d99f66cc6503675fc6629a028624e55dac5245da777b6e3acffcba24305ed199674343cb610861da9c7671c342f";
+      sha512 = "2c029ac149cfab2eef9e1812dfaf755692265df49bc564f665e34308a1124f749a47850cfc19d1b15a16ee63aaa319ffce97e7025e894aa4a94c91cf81998f28";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/bg/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/bg/thunderbird-52.0.1.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "b46e78338269dc6c65f0eb2bcd2cb4a0dffd5c100b4b1905582c8189f79abc975f55c7edf06e1f0edbb641de86f3b6aba1ca9028d11f4fa08ea8bd1c276e41f6";
+      sha512 = "ece638e2a33645df20d4c59b157efc57650b591b78e774dc5f82174495faa6afe9e80aac62e5fa106feb29d5cd7369313e3a182adc65e7c9f870a7d0e9e796e0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/bn-BD/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/bn-BD/thunderbird-52.0.1.tar.bz2";
       locale = "bn-BD";
       arch = "linux-i686";
-      sha512 = "d349c503a13ae9b951af173a43f4f8dcbd5cab43d5a6219fe5b00e1d37efa7a0ceeeda36576f31f51bac615d6e4307611496e8036af4f9fc40dd3dfb495a6b6c";
+      sha512 = "8c799ded0a1d090bc8a82044dbbe843f737d9e0481db6ddf33b1609e19b0f7535249677b22a53d71a3f7cf430adeb86421eb2383cad5c73317da71c2c15e50b1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/br/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/br/thunderbird-52.0.1.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "4afebf7eab2f7205a8760f04e566ba8d54bc2974cbd132262eedeaf880d29aaaba48ebd731bb8dd7ca537e6cc3fe444c1ae4168e3e08b7e17c55e70f763fbadb";
+      sha512 = "9417121f1d26d5be82e4857b87283857b072e433e0d90c191902a118489f165add64a5241309934a0b91cb21128c92326a4ce98622a2b2444e55d5bf7ddf57ac";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/ca/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/ca/thunderbird-52.0.1.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "6b5e9abc4fc05ed580d35baeb6c7b1462daef2352f751e318b9a7bf16d032d8a8240f83d54fa17d02a9a967e7477a36808587a9183df4274f10b59059c55fede";
+      sha512 = "0b0e29ac69055336f5e157bb48d86316f36d86f0e984a11a000e4c4518478e8198cd4eb2d6815c1c6456d17c6047d92ff5ae0f6ef4f26a96bd172b8c0a8c308d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/cs/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/cs/thunderbird-52.0.1.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "1410e7bb8ffc8a4c515b1c023ffa6eedc960632c05e5e7f4675aee9e972877dfc73d09ef14deb1c308bfcc1a6333e62b24af582410854b62acf4d889c7d54158";
+      sha512 = "6124454cd4ded6cecf953beab5fff1ed6105ba881624b83fef6c0d8798bab161a63abc3b0dd9a94fff5ed850f638feb95f5de4b9268b9ea71b9fb5eb52618407";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/cy/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/cy/thunderbird-52.0.1.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "28b50a2fb0703f80fc9fb91d1add2305e71f2ddac99cfd086c8559f29b5a420e9e5e3d370f0b84a32f5c358661566b070844ccd0b33447ed4c5a427eec03cfa0";
+      sha512 = "b1f0c7dae07a7130f1e9f2abfeff12008ce40f7486ef14964c17c7e665c3b4ceb52e48d504965da78993117f5bb12e14853c2a740b00a71c03574445f1129db9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/da/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/da/thunderbird-52.0.1.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "c38cffe6416ca50c78651d24d5466d6e06b2cbaa66062eb13381c4402d39a7bd55aae10cbe3400ba0fe5983309f2d70d3058a46054911399a057679b09b451be";
+      sha512 = "5b1e6fd39cfd1d206a1a670a25df98ea73f490be5880a5190ab918b9ffc852000085c0ad89dec1dcea25c101a7ccc43bbc531f63a5dae95a515e0152dd2eee21";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/de/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/de/thunderbird-52.0.1.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "101ee34b890f1f3f9bc3eedf4936b8ef1fc9edd2f5af79b9c8375326d430585fc564a76a0bbc81bb119ce9a638af60055d578b5e6f1f760100171696351f13c1";
+      sha512 = "5690e0d91c4969f36805e21348fd5d868cf02dc524f24081b4af9afde85ec053a76f4b7a7746c591514973cf18b0e153b9e54112393aeea501e7696b3f63b0ff";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/dsb/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/dsb/thunderbird-52.0.1.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "a6dd564baa36402d082d5bc2b5bc6002a5abd66b9bd545a0962fc844f4800390e527b9deaa6ca4f197d98265bd85e7d52624e32be17b2efc96b136d4a0108109";
+      sha512 = "8b5663ccb6402578181d84ae92a823d86c243fcdb77a25c69e6be660d137fadde4fae5ca5385bc393d9809ae06bb9b57c68791c8d06c864e710e9f33ab2183e5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/el/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/el/thunderbird-52.0.1.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "d5611f341f3322adeb5e94f9dc83dc0de26d6dbaaaa45a904fb9add1770f77b86db57693aa3c89f69c1aeb27e98793475c900643b78a70284911a63791048069";
+      sha512 = "0cbf7aeb360ac59d4d4dcac603194c03082e37325c0aa08e79a872f819f5cb25484f0cd7577333194d12a80260ac665fc964b4300c49c2f96c6a6e885cc8b8c3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/en-GB/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/en-GB/thunderbird-52.0.1.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "b8c71ccef1793589f5cbbac8e12ad1aef833131a51a0029c75b08e26f28b3d5dfa821a84654efffae1e41c23cf5575cfb1b55de29e9c29b1a5adc1632581129f";
+      sha512 = "fd565d48ceeaddca038265577fef52643218afdcaeda5d022ea125012ed565628670aeb6db3822830a39b43b8372d843129dbeaabaabe7904e93a2389c03957c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/en-US/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/en-US/thunderbird-52.0.1.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "dbc77f7814b3a085fdf54536d77db69ad893b0230ca1930fb5fbf916cc09e421cdf8987e7f75d726f1fe31f3c7ed0afc584da1d1b1636a2750e9e0454a6de45f";
+      sha512 = "a0c4dbb1f39e9bacf8fdd7660d280142c072ab709204f02a2ea4eb7dab9a4475a121551c98fedb4cac2f1700b0adace7e7af04decd8c2d65bb14a4bc58bf8b59";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/es-AR/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/es-AR/thunderbird-52.0.1.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "f161bccff6692a9652568530faa89012e2a7438814fc87f816cbbf93d40425133ef24250a6d1b9990bc772e9ce86d778f905d844166527ab6020687bbede4688";
+      sha512 = "205893ac76ba91d29ed6f169da01b0ac548e03985eae64955c5493969060c7eb31b6fe0557ecf17301576e1a4b637f2615818ef38322f91bb366c747530dfe22";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/es-ES/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/es-ES/thunderbird-52.0.1.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "51ca5165f83366f0fd73fa900640b35d572656d123d14663b737e140c1903a816ca8e2980c2c121b1e0a512e9211ceef745c34d3fd8c04b21cbec84b868b468a";
+      sha512 = "6ffbb09840acf9033a7f1f1b19e81d6d51cb90f2578c741c42a81f2e7413d4e9f47afbf756a7b317dd7e7d66ffd025c0d2af31c765c7a8318a291e63d4eeb8a5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/et/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/et/thunderbird-52.0.1.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "a8524b1a72353ddf3d2b883b3936606b9eb3f1898aea05530c38d7d57fd03ad9c36085996fe3442f085ddf668e2fc909a704939c370ba1d2d0684253a10fa965";
+      sha512 = "79907c40de73a6761bc94b72395eddfd44cac795c6ab0614e764f467f59eb506829c9957ac3fa338feea8a900134195fe549c6b4568655078904337755319523";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/eu/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/eu/thunderbird-52.0.1.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "6c3f12ccd7dd48258ff5972163da3617f3038f4f670223617f1b7734181234eaef5be4762156650c0398c4791fc82cfb397149f62e14bc6c873d279eaca92fb3";
+      sha512 = "dd799f923143380e7a639a9ba313e24dc4457e6a0ec9d6b266103e64c606db2ee702f56fca746049972b2fb63f03713307ee7a19ca7b3dcb93ac6d6cabc897db";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/fi/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/fi/thunderbird-52.0.1.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "2d417c63a5c5d5203bea96f88a51ac4b501dee7575bb43fcda3ea523e76e65dacaf16c3f6ad772b25a242aa8016fb36c4f3a04c86431ade23389a97b7cac25cb";
+      sha512 = "1aed6627a6a0a72d5e0d52b1831d4f756205d92aadccff43a1b9543d0d426b2cea3b9d20ca1829f29b1c9a1a832a43a7cbe9b870aab138df3133c2e886d826c7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/fr/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/fr/thunderbird-52.0.1.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "2c64e8a21306b6129a87333ff1c29ebba10f708d67636042bf6daf40bf01e5ef954038afae8d0d76c42d83ed0c8074525b13b60791f0d0e21108053c9b81822e";
+      sha512 = "c3d1fc74da5379825e180c3a3d0569c83a3f0098eeb396fd73eb3470d054207317506fead5b116a32b7a3e2a4c7c98431da9eb16548daef3baab052d53f432ff";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/fy-NL/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/fy-NL/thunderbird-52.0.1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "fe444a91350d3c30e6254e526f5a506aedaebc92ed9632df6a4d2ee5c8f18246601bc8b853eadd54c0b02c2647cae21514a0c1767ff506bb3fd048aa431d5b7a";
+      sha512 = "c557220187979d06f1697511a69dac852c3f6662e6474b9d8bd0f0d49b5211d5963b1b6dc75a0e3f831bc724f3e28e0548da7cd67e8ab90c29901e07ec802f03";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/ga-IE/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/ga-IE/thunderbird-52.0.1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "73979022d045433b27f71a7278d518b2ee42a7250b166327bfd2f94c2f747acf2d14a9ea55e254f6ade0ccc3ffdc898f61e8dfaa9c7e2b8450fdee195db97b5b";
+      sha512 = "02b3ba15ab86764cf41d275aea8d39310455e74e0f00418c91151bfea623385efe0c59202dc499a7f3e72cb6c64c7c30ce35663c1fe69a761a1761865f7852a2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/gd/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/gd/thunderbird-52.0.1.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "e856393fe16f57ecbcdc796dd027d8f426f9c1b39fd51c4bcea8ceb82934087ab71d87e7c04ae67b12de6d063994ee4eb607cca9889c7e500272600f80d65f6c";
+      sha512 = "24086d6f92611b0b8a9e3b79e42a5494dca7147bf8597df33d5d3ff745a1bac41ce39156f7df43bd6c21b4e845474ca085f9082cf4207cfec982c50a88fc6c16";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/gl/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/gl/thunderbird-52.0.1.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "c1e8ae50ce6495e9706ff1ef4fb790c53be407eaa738e86f2a788feaa16e5e903386f59bc986497d2ae9e5dff8489007a16c0f2b8b9c37456d180794dfa82642";
+      sha512 = "66b9b1f073b352a6c3147e44631b88cd79e1985a4d6dabea142170871cb795778edcf2e7c2f0d4b94dbf35b24783b26e30534402d2a5e05cf2587609183820f9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/he/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/he/thunderbird-52.0.1.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "6caf34bd52e21809eb80ed88b104ed1a47a1c29abdc3b3f4059fb183a0b844449936362a1839d888e4d224ee987890982d37d27c32102cfe8029bea1371847cd";
+      sha512 = "b52223e1314043ea50a70184e7812533b389cc58c6e0442daa96975955645478ee161e60f4a8e4f517164efac83e0157bfe6a88d25d056f3849ebd3652b39d56";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/hr/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/hr/thunderbird-52.0.1.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "230f0bd3eddf99811d8fc60e988772ed107b75981beceec053d861f977e1e3c5261c0ea51475410aeff50efd0a4e378b5e666cdd4b2bfd76ad0ae465142a28a9";
+      sha512 = "010c2ae0a21e167613b88c110ed93e6e60920e8343c6ef22159dddd116f2cdaec18a6545132bac87d828ea717d6090979ad88483093cc280f9f97292fae1e456";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/hsb/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/hsb/thunderbird-52.0.1.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "389b0fab729562e09c17d7ca251675ed4d333f4a79932b5ef2ffeda9d3e683adb95b7f4e4cb192fcf9416826a8aa470b7f8ae4211165b50d7a5a21fe39ba199a";
+      sha512 = "1f7b6864a4760ad77c3b93f56eaa80f07c89cfbbf03523c71c74f7677c4a3b7b54505cc720990308477316d7e30839916b1c51cff8d3cd5c9af99919df8a3f38";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/hu/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/hu/thunderbird-52.0.1.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "2d0ec213b7cf3f875518841e0c08bc6b4134173606098cd0515e93206bf2419377041d44a2737c98b17a198998b80453763e695cabedc283ebbdfb42a60abd70";
+      sha512 = "5ef71ed0803dfbc0c4ecb28de017969e40b9df3c6099866863004914fff1804a010f721d779f43e6b240d7b309b7877664b5d96ea2c5dfef6fe0403b3592c359";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/hy-AM/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/hy-AM/thunderbird-52.0.1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "f77164c2fc3a083e13a11417f77454a885fd4ac77a0b7695c0d2bf8169b54afcd06c32e7c78cb6bbb4ac447a3d690a423344cdab59bc6fdfe83d82bac5d0be0d";
+      sha512 = "2271c6d528dfd2e61c98dc976a0aadc20d39bd8d1e7cdeefe7cdebd9e0eedcfc17e6503c8b204d560b2b9bdd05b5a87de5b0422268e39ef8fc1a31874a7807e4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/id/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/id/thunderbird-52.0.1.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "24c383b106de72a3741d7333aa4ec53c091d41ab3638c91f5f88f8d2952d25e77223e95a728611bdfd1cbe2d4418447e588069c286f90ffec0d12c7f245c07fd";
+      sha512 = "6469eed9762451392ff88ef76a4811b4122413050c4eb5b7f7ccc97e34ae0ce5c00ac8ccd41aeda92a9478d335f62bc2055e7200d1bae5217cc7370275ff72e6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/is/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/is/thunderbird-52.0.1.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "bae6f4fa377bb76ffd8d5257f525ce43f151f44f07eaeb5c4109a3440965c36a622c41d6577113bf111335d51d211e18b1c9decac6d9c1dea6303f90b7368f94";
+      sha512 = "6b46c946d456408152f7058540a1247f278b0d228717f089582f11a2e6c8221834fb09da48c93aa8ccd68fab537719d0f8ec3b16cd043ce6b59113cce75d1018";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/it/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/it/thunderbird-52.0.1.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "6b6082972ea030e2564bffaf4e9349d33800b840c0b185bb646c53d0578a1b6360a3d85cdf1dbc534a648d34138f1c8cd26d1c0297c99795e93b93b145a100c0";
+      sha512 = "2fa1ad4d939fd916e29d3f76bbc55f2eef4823225d32bf2292e03fc59c81d24657aabdd228df092e4039ddd555e7ea3a39c840bec58154f10c8535a79a2d3814";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/ja/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/ja/thunderbird-52.0.1.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "66c8808d49986675e9049e77328cf7b1d2fad163b193b8442ca39be1b605bce0180e29b239141509cfec6302f053eaf2197513d5d482beb6c498f6a0ae8bbd9b";
+      sha512 = "c4ad832486169e0bbbc1a14a7da399e0149b236a8ad9b71ec723a6c9098c4c90446e0c2c8ae0e4ccd78a48fdf8096f6b0290b0f6ab74469a53b8259358e6ea03";
+    }
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/kab/thunderbird-52.0.1.tar.bz2";
+      locale = "kab";
+      arch = "linux-i686";
+      sha512 = "9cfafbe2030610fa01901600c6661af69f9bd66f10c76ab227da966cc860e4a1ab9c07a80b3901d72ee440762536ddd0c1d478539f1087215dfe130e507df79a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/ko/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/ko/thunderbird-52.0.1.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "bdb8a9d6172b6f56d29b29043c484547c9a9dc7bd1477bd8ac4aaa4bf07c0ceffe2ae1560458acefefad66e4487d62746f60b6ec56d5d91603937b0c339d5625";
+      sha512 = "640c0f3466aebfb43b88e8a580797661a2eb016f4eea4d9dd081009f4bdb17008bbcae1759a2d70d8dda3159f024813ee943b2a88a0c21a97f14f4079dc7744a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/lt/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/lt/thunderbird-52.0.1.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "dd70d123787ef85ee1c596346bf4c40a99907c2ece2116f7fb4536cb078d162f9afe0f92b466b713d6b75bf92960de32a3b3dedd861946da5b2e946187d4ebc5";
+      sha512 = "9a5c403ea9456d2f27b77c7a46120f45eddad60fc2d93617b246d5b7b7cc59a93698d00dfc35b33997cac5ff71ffb036469f63e8553cf8cc6a73de8959b76b9a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/nb-NO/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/nb-NO/thunderbird-52.0.1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "caf4d3d27db952fce1f34d5c641194d555c2443b86fbecdf68869cafeed0d532d7379212f4338401743e6e26531dd98111f75bddc5e2a3af42a3a7731ec3039b";
+      sha512 = "c485347ea4518875bcc384259bbb63b1bf2b6c1e5fb76e7540bea9ac664c0f6b517c563144489ce6ce3a65fc6aa9736088040020e073627fca032ae53c3c6e2f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/nl/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/nl/thunderbird-52.0.1.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "dd5071174889bdda282c496c4aa05158887fffc652d4c557320fab2c11e16b0cbb7e5121ef20b423d703dfbf9da52983ff288b9377ecedabfdba496f9c99eb6b";
+      sha512 = "fab94d96dd0a0cd8370c336acda2049c58c73b7f22f7975d8304a33d81950ebf82a14a335dbea02d8e78a63512b4bac041965516948812d9ee833342fd54c951";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/nn-NO/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/nn-NO/thunderbird-52.0.1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "edd6a1384ed0060398cffb4598a7014aa13cfe83891a4cd4972db2ed6eaae5068703944a6e14b033409eaf6b6426838a0a3d708b9d83eb08907f39469fde4435";
+      sha512 = "63917ddf88f0731c228bf04513a753216c9393f2a9eef685ef36d0d6d442491e6eddcbf4e77cc87c4b588878667aec08c4346f3418a148af77585b0b037285b8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/pa-IN/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/pa-IN/thunderbird-52.0.1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "9e6227d28dc844621d1d9ac6c5536505dea0cc1d1b3d161bedf13b75a3255c5c681ce5b38bb510150f8db1add7f149119a8b5ce5b98c5f4dfe2427db6ad58581";
+      sha512 = "c49d476f02431e3ef23680ffb3dd58dc226e5b6c25003df7a98bebf69a0bb0167d60edc0ff764c9e36aeb9e7a06f19fec4651bee293f986b30688cec2f6d1d9e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/pl/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/pl/thunderbird-52.0.1.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "8da6ec38d37df6202b751f112031e590777e587e23437cb7a4dcfeb958b27928e2f01cbd1682daa96c143df756b3c8f31f7516ca8cb30a884db2dc03f130f960";
+      sha512 = "3764defe3440f4c283d9c9e806c05653017f70921d84778a40d71bfc4028d146b8aff5114631050fb3eca8c9f1b33e40f5440c647fadf238ce36dc0eb5245a27";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/pt-BR/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/pt-BR/thunderbird-52.0.1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "00a7ffd7509d538b9fe3e801d5c2ad069edd62665a7ce045381213b78226646b1cfe6356b5c873904277330b674608711e15f18dcf4664218b9c61048cf88e40";
+      sha512 = "3c016085676d2fb8b98685d7785f4163ebe4382f051760f2596e072f37c8d5121cdf87b5a90448a1360213fe2f6c1c369be04d744c22d39f7ce4dc6135fe458b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/pt-PT/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/pt-PT/thunderbird-52.0.1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "f12f544c9eb3a33f861791af9afcc987b72607c2456d7f741046ef9ad36f12552d4e9cf2682ac3f8adc108dc9d36c9fc1b013714b50ae894f72cbe367914f14b";
+      sha512 = "79ee1c273c74993b5e98ad9fb3c8434284e414dd14a70028525d214454f83ee1a1475531dd001d1b34ec37eb903f12f9675b388e7728c51c52164020e5cda0db";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/rm/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/rm/thunderbird-52.0.1.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "9a8497f13a459d5dde822edeb9516d98beed220d75735a2f620c69b1f5e75e68987420aac6bb2a77775b6b34c2e0daa277c15d1491a6a02bb0f9658a40a16526";
+      sha512 = "f150d1652924fc6a5f3ab9116a1000c08c99cc597fb433c3c27a4b4008768cd63034ccf6ed75870fa4444af02cbad33d0d11433017a3df461d98af59c1d6c8d9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/ro/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/ro/thunderbird-52.0.1.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "2c9c650647079eb754e471757cae6b5844ae8e19bf01ce25d91a73832483507f90e604caf11305760cab719fe4f830cace5b9313b7e2a6f07a92427f35441c55";
+      sha512 = "524f5266679084fa3d3dd97daa66d2c1c729c70e9d1a77dbb6565e0d8e15dba507f33c4ce4e4ab11a31f69dfafcb67b0d7ef2b20c21b8d98608d242f63313e2e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/ru/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/ru/thunderbird-52.0.1.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "4cbbe88691fd265b4d98aab61c5763f6baea168ea4cae222425973023174f765e7fa6b97fdef959ac0788a632f742715eb7e565113344147d43c228ece7f08ae";
+      sha512 = "fdc15364d34e676db345189247033b25a6b7cff4cf6b0096845a672e0ecb4d5ae41105b139c6814f359c5f4c2cdb2165faccca1028fe085bca1dd165920030e3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/si/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/si/thunderbird-52.0.1.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "a270a871187dc95d05cb79d9f4df7947aa58b875c2b0c588c2646f806e7e0eaeb1a62f69d38e78d40399f1c588f043b26d06c0d77cedc9949d8e3d8b026ad4a5";
+      sha512 = "d6782f94a20cc654801f3f17cc0b01fef195423b83c4f0ee9582de6af4f7fca97ec12649ae0de432d9ca2f3f1519b399a82609e70f101cea30f85e377dbabd4e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/sk/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/sk/thunderbird-52.0.1.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "8cfd22b92789766c179dbb70739fcf68907c4b215e70d164c83e50f67f2c834f515176e30788ba1fcd58717fdf5642c9e1ef05640a06470146ee942737744c83";
+      sha512 = "0c3072655ebffc0527f678a1b68cf56b117ea7b247891e12b80c22f2a4936ae087dafe17144d58a406d5b5bf38d2e6090c5146b6d3d34fa5b3ccd911cc960e58";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/sl/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/sl/thunderbird-52.0.1.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "fbf54d81b006625f526ab496e9ec7acf9698f7c95415d61aa4bd91896db07bce9d13c835ec944f164678fca9f49be16b69d6e8b728914ec84a5a8d733d3941b4";
+      sha512 = "439dd725c83bf40b258712385ef8a5286e92b10dc77996c16c6cd22589f7ea276ced47788bae29a6ecc3d2d785f25ce99c98a18fd4f9e0330478645803cc0944";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/sq/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/sq/thunderbird-52.0.1.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "f8dee08b3a4e049392f7c407e9403b972c755493fe638e7917181b8281a86d70f2d1113e69b785be756774bb9aef4cb493084bc8d0d12bda0f928f4cd468f569";
+      sha512 = "59b342d58a04cd4b71f1ae67ba66e3d10f4f464612f6e072c838fa5cf3479ada72fa7be09a10508dcc62da10983cd284f20ca6e4e6874fc92433337332733d51";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/sr/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/sr/thunderbird-52.0.1.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "8c8fba2fc92d91f086679b6ba451eed1af4fef5c56747260f9907300f057aab354d7f8ebc411fa25821bc006a551f26e0ddf29b344846a30dc493cfef30c7375";
+      sha512 = "1cb49257c91ba6afa41aeaa60380b812017210ea102dec90e405fa80ba48fbf8df70d4128c6c0bbab3bfabf81ee21b06c8180f38cbd87715093ae872f4c941e9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/sv-SE/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/sv-SE/thunderbird-52.0.1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "caf3911023d48fc48f4834be424c01cb22bd7383582c8bfc15468401a1558351659e93955103625872b5ea3351570bf216b34e93bff9bf535eccd1789f493bca";
+      sha512 = "28c6554e85186f5eefd79f63c9d0b3d258ce76c29156e70c1badbfc71e201ee82889223d7c60a98e3fd44644937378892725136781e9a1644007c80207ba1cb6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/ta-LK/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/ta-LK/thunderbird-52.0.1.tar.bz2";
       locale = "ta-LK";
       arch = "linux-i686";
-      sha512 = "99a0db9f4e7d9f05e8398f76f0dcce418d0230b8a325a1289b690a87a43febd0c17f52248bb6070ad7bd2dc60d6e877a78f1c4a23c8888b105160f131b31ec1c";
+      sha512 = "9f04041814a6f806b9b24aceedb9a7e608384b65a9b607994eded3813af83467c4ab8d85beb972775da7daaf0a86ab55bd74bbdda2a499323b6761550f568a61";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/tr/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/tr/thunderbird-52.0.1.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "79379c3dc58d330949aa5a0338fb38e6334ca47c964842bf090a9431e5b7267f871aaa519dd35262ed9d6e042188e998e95eb7a63c77b3592db09a81bdd95267";
+      sha512 = "bceaae576db6d1f49c40e9e361b77580f5bf142945ebf20b3cf38b0b61d8a68a2b9478b5a1dfea114daec363aec5934fbcef4ae88638626fe3ff93a28f07ccd0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/uk/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/uk/thunderbird-52.0.1.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "a2f0efb561fd84e5881bb93145f86f9445eb6cb3ce5ce0e209fc896c797e9a554d180ed1009f369bc12790b8d03d09d429dd3d52fda4ce48d7642009c1a9920a";
+      sha512 = "e88f4f496e3dd19655e76a3b79e4519a05e76390fb3acf05d194a300bc459a1e66b082a6150b9f4ec82308c881de402b30474764f946f81f55c1ea6e483e4161";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/vi/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/vi/thunderbird-52.0.1.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "14a7352ac3254aa0a748e98e208f48ee0b764853b37889077f651ed1d1a401d98c35dd6cd09bb5b25a7f8c5d5c3a7b02319ddf4dcdaa7a5440aa5caae9f09a32";
+      sha512 = "1c361e41b1ba06d9a08cfbb5532619311d81e3a7717eb0dd2d289195f198be7fea2558df707f97a49846fe073a0c775cfae610ed3fabeaa2cedbb1fa7c21d8ec";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/zh-CN/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/zh-CN/thunderbird-52.0.1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "5b991ccc4daafe744f1fffdc51882bdc72d5fadd1e570e0ff3670f7d7201a67151797a26f0222fe8cfa0ddefff45f0741da6c04d924367705347858cc028a945";
+      sha512 = "fabe94285cbc1ca40e398dd41747fcfb0a51aaefe3346835ac6e3946d5d8ce1610d39c55276e2c6e02f7a1424af46a06529d5533aeb83b8448aff0dd9183a6b4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/45.8.0/linux-i686/zh-TW/thunderbird-45.8.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/52.0.1/linux-i686/zh-TW/thunderbird-52.0.1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "231abcab55934962d3b8dec164ddf48b8b7bfc0e8cd70251479351d8be5d2605e2bb823bbf6c3002bba6c431461b0bfd570f101f31b5adf7c70804610262b856";
+      sha512 = "f4764c8fae1231d1e10c30baf99583c534fb403ff03ca9a61a472d932645590ee863b56feb13df13438a7eef83e55445be196a9f62078a0e18961edb043bbec9";
     }
     ];
 }
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/default.nix b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
index 6990c12439d..bb82cac0e84 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
@@ -1,32 +1,31 @@
-{ stdenv, lib, fetchurl, pkgconfig, which, m4, gtk2, pango, perl, python2, zip, libIDL
-, libjpeg, libpng, zlib, dbus, dbus_glib, bzip2, xorg
-, freetype, fontconfig, file, alsaLib, nspr, nss, libnotify
-, yasm, mesa, sqlite, unzip, makeWrapper
-, hunspell, libevent, libstartup_notification, libvpx
-, cairo, gstreamer, gst-plugins-base, icu
+{ lib, stdenv, fetchurl, pkgconfig, gtk2, pango, perl, python, zip, libIDL
+, libjpeg, zlib, dbus, dbus_glib, bzip2, xorg
+, freetype, fontconfig, file, nspr, nss, libnotify
+, yasm, mesa, sqlite, unzip
+, hunspell, libevent, libstartup_notification
+, cairo, gstreamer, gst-plugins-base, icu, libpng, jemalloc
+, autoconf213, which, m4
 , writeScript, xidel, common-updater-scripts, coreutils, gnused, gnugrep, curl
+, enableGTK3 ? false, gtk3, wrapGAppsHook
+, enableCalendar ? true
 , debugBuild ? false
-, # If you want the resulting program to call itself "Thunderbird"
-  # instead of "Earlybird", enable this option.  However, those
+, # If you want the resulting program to call itself "Thunderbird" instead
+  # of "Earlybird" or whatever, enable this option.  However, those
   # binaries may not be distributed without permission from the
   # Mozilla Foundation, see
   # http://www.mozilla.org/foundation/trademarks/.
   enableOfficialBranding ? false
 }:
 
-let version = "45.8.0"; in
-let verName = "${version}"; in
-
 stdenv.mkDerivation rec {
-  name = "thunderbird-${verName}";
+  name = "thunderbird-${version}";
+  version = "52.0.1";
 
   src = fetchurl {
-    url = "mirror://mozilla/thunderbird/releases/${verName}/source/thunderbird-${verName}.source.tar.xz";
-    sha512 = "f8ba08d874fb1a09ac9ba5d4d1f46cefe801783ba4bf82eee682ac2ecc4e231d07033a80e036ad04bda7780c093fb7bc3122a23dc6e19c12f18fb7168dc78deb";
+    url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
+    sha512 = "7b8324a230a10b738b9a28c31b195bfb149b1f47eec6662d93a7d0c424d56303dbc2bca6645b30323c6da86628d6e49de359e1067081a5d0bd66541174a8be48";
   };
 
-  patches = [ ./gcc6.patch ];
-
   # New sed no longer tolerates this mistake.
   postPatch = ''
     for f in mozilla/{js/src,}/configure; do
@@ -34,99 +33,96 @@ stdenv.mkDerivation rec {
     done
   '';
 
-  buildInputs = # from firefox30Pkgs.xulrunner, without gstreamer and libvpx
-    [ pkgconfig which libpng gtk2 perl zip libIDL libjpeg zlib bzip2
-      python2 dbus dbus_glib pango freetype fontconfig xorg.libXi
+  # from firefox, but without sound libraries
+  buildInputs =
+    [ gtk2 zip libIDL libjpeg zlib bzip2
+      dbus dbus_glib pango freetype fontconfig xorg.libXi
       xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file
-      alsaLib nspr nss libnotify xorg.pixman yasm mesa
+      nspr nss libnotify xorg.pixman yasm mesa
       xorg.libXScrnSaver xorg.scrnsaverproto
-      xorg.libXext xorg.xextproto sqlite unzip makeWrapper
-      hunspell libevent libstartup_notification cairo icu
-    ] ++ [ m4 ];
+      xorg.libXext xorg.xextproto sqlite unzip
+      hunspell libevent libstartup_notification /* cairo */
+      icu libpng jemalloc
+    ]
+    ++ lib.optional enableGTK3 gtk3;
+
+  # from firefox + m4
+  nativeBuildInputs = [ m4 autoconf213 which gnused pkgconfig perl python ] ++ lib.optional enableGTK3 wrapGAppsHook;
+
+  configureFlags =
+    [ # from firefox, but without sound libraries (alsa, libvpx, pulseaudio)
+      "--enable-application=mail"
+      "--disable-alsa"
+      "--disable-pulseaudio"
 
-  configurePhase = let configureFlags = [ "--enable-application=mail" ]
-    # from firefox30Pkgs.commonConfigureFlags, but without gstreamer and libvpx
-    ++ [
       "--with-system-jpeg"
       "--with-system-zlib"
       "--with-system-bz2"
       "--with-system-nspr"
       "--with-system-nss"
       "--with-system-libevent"
-      #"--with-system-libvpx"
-      "--with-system-png"
+      "--with-system-png" # needs APNG support
       "--with-system-icu"
       "--enable-system-ffi"
       "--enable-system-hunspell"
       "--enable-system-pixman"
       "--enable-system-sqlite"
-      "--enable-system-cairo"
-      "--disable-gconf"
-      "--disable-gstreamer"
+      #"--enable-system-cairo"
       "--enable-startup-notification"
-      # "--enable-content-sandbox"            # available since 26.0, but not much info available
-      # "--enable-content-sandbox-reporter"   # keeping disabled for now
+      "--enable-content-sandbox"            # available since 26.0, but not much info available
       "--disable-crashreporter"
       "--disable-tests"
       "--disable-necko-wifi" # maybe we want to enable this at some point
-      "--disable-installer"
       "--disable-updater"
-      "--disable-pulseaudio"
-    ] ++ (if debugBuild then [ "--enable-debug" "--enable-profiling"]
+      "--enable-jemalloc"
+      "--disable-gconf"
+      "--enable-default-toolkit=cairo-gtk${if enableGTK3 then "3" else "2"}"
+    ]
+      ++ lib.optional enableCalendar "--enable-calendar"
+      ++ (if debugBuild then [ "--enable-debug" "--enable-profiling"]
                         else [ "--disable-debug" "--enable-release"
                                "--disable-debug-symbols"
                                "--enable-optimize" "--enable-strip" ])
-    ++ [
-      "--disable-javaxpcom"
-      #"--enable-stdcxx-compat" # Avoid dependency on libstdc++ 4.7
-    ]
-    ++ stdenv.lib.optional enableOfficialBranding "--enable-official-branding";
-  in ''
-    mkdir -p objdir/mozilla
-    cd objdir
-    echo '${stdenv.lib.concatMapStrings (s : "ac_add_options ${s}\n") configureFlags}' > .mozconfig
-    echo 'ac_add_options --prefix="'"$out"'"' >> .mozconfig
-    # From version 38, we need to specify the source directory to build
-    # Thunderbird. Refer to mozilla/configure and search a line with
-    # "checking for application to build" and "# Support comm-central".
-    echo 'ac_add_options --with-external-source-dir="'`realpath ..`'"' >> .mozconfig
-    echo 'mk_add_options MOZ_MAKE_FLAGS="-j'"$NIX_BUILD_CORES"'"' >> .mozconfig
-    echo 'mk_add_options MOZ_OBJDIR="'`pwd`'"' >> .mozconfig
-
-    export MOZCONFIG=`realpath ./.mozconfig`
-
-    patchShebangs ../mozilla/mach
-    ../mozilla/mach configure
-  '';
+      ++ lib.optional enableOfficialBranding "--enable-official-branding";
 
   enableParallelBuilding = true;
-  requiredSystemFeatures = [ "big-parallel" ];
 
-  buildPhase =  "../mozilla/mach build";
+  preConfigure =
+    ''
+      configureScript="$(realpath ./configure)"
+      mkdir ../objdir
+      cd ../objdir
+    '';
+
+  preInstall =
+    ''
+      # The following is needed for startup cache creation on grsecurity kernels.
+      paxmark m ../objdir/dist/bin/xpcshell
+    '';
 
-  installPhase =
+  postInstall =
     ''
-      ../mozilla/mach install
-
-      rm -rf $out/include $out/lib/thunderbird-devel-* $out/share/idl
-
-      # Create a desktop item.
-      mkdir -p $out/share/applications
-      cat > $out/share/applications/thunderbird.desktop <<EOF
-      [Desktop Entry]
-      Type=Application
-      Exec=$out/bin/thunderbird
-      Icon=$out/lib/thunderbird-${version}/chrome/icons/default/default256.png
-      Name=Thunderbird
-      GenericName=Mail Reader
-      Categories=Application;Network;
-      EOF
+      # For grsecurity kernels
+      paxmark m $out/lib/thunderbird-[0-9]*/thunderbird
+
+      # Needed to find Mozilla runtime
+      gappsWrapperArgs+=(--argv0 "$out/bin/.thunderbird-wrapped")
     '';
 
-    postFixup =
-      ''
-        paxmark m $out/lib/thunderbird-${version}/thunderbird
-      '';
+  postFixup =
+    # Fix notifications. LibXUL uses dlopen for this, unfortunately; see #18712.
+    ''
+      patchelf --set-rpath "${lib.getLib libnotify
+        }/lib:$(patchelf --print-rpath "$out"/lib/thunderbird-*/libxul.so)" \
+          "$out"/lib/thunderbird-*/libxul.so
+    '';
+
+  doInstallCheck = true;
+  installCheckPhase =
+    ''
+      # Some basic testing
+      "$out/bin/thunderbird" --version
+    '';
 
   meta = with stdenv.lib; {
     description = "A full-featured e-mail client";
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/gcc6.patch b/pkgs/applications/networking/mailreaders/thunderbird/gcc6.patch
deleted file mode 100644
index bd102220285..00000000000
--- a/pkgs/applications/networking/mailreaders/thunderbird/gcc6.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-
-# HG changeset patch
-# User Mike Hommey <mh+mozilla@glandium.org>
-# Date 1457596445 -32400
-# Node ID 55212130f19da3079167a6b0a5a0ed6689c9a71d
-# Parent  27c94617d7064d566c24a42e11cd4c7ef725923d
-Bug 1245076 - Don't include mozalloc.h from the cstdlib wrapper. r=froydnj
-
-Our STL wrappers do various different things, one of which is including
-mozalloc.h for infallible operator new. mozalloc.h includes stdlib.h,
-which, in libstdc++ >= 6 is now itself a wrapper around cstdlib, which
-circles back to our STL wrapper.
-
-But of the things our STL wrappers do, including mozalloc.h is not one
-that is necessary for cstdlib. So skip including mozalloc.h in our
-cstdlib wrapper.
-
-Additionally, some C++ sources (in media/mtransport) are including
-headers in an extern "C" block, which end up including stdlib.h, which
-ends up including cstdlib because really, this is all C++, and our
-wrapper pre-includes <new> for mozalloc.h, which fails because templates
-don't work inside extern "C". So, don't pre-include <new> when we're not
-including mozalloc.h.
-
-
-diff --git a/mozilla/config/gcc-stl-wrapper.template.h b/mozilla/config/gcc-stl-wrapper.template.h
---- a/mozilla/config/gcc-stl-wrapper.template.h
-+++ b/mozilla/config/gcc-stl-wrapper.template.h
-@@ -12,33 +12,40 @@
- // compiling ObjC.
- #if defined(__EXCEPTIONS) && __EXCEPTIONS && !(__OBJC__ && __GNUC__ && XP_IOS)
- #  error "STL code can only be used with -fno-exceptions"
- #endif
- 
- // Silence "warning: #include_next is a GCC extension"
- #pragma GCC system_header
- 
-+// Don't include mozalloc for cstdlib. See bug 1245076.
-+#ifndef moz_dont_include_mozalloc_for_cstdlib
-+#  define moz_dont_include_mozalloc_for_cstdlib
-+#endif
-+#ifndef moz_dont_include_mozalloc_for_${HEADER}
- // mozalloc.h wants <new>; break the cycle by always explicitly
- // including <new> here.  NB: this is a tad sneaky.  Sez the gcc docs:
- //
- //    `#include_next' does not distinguish between <file> and "file"
- //    inclusion, nor does it check that the file you specify has the
- //    same name as the current file. It simply looks for the file
- //    named, starting with the directory in the search path after the
- //    one where the current file was found.
--#include_next <new>
-+#  include_next <new>
- 
- // See if we're in code that can use mozalloc.  NB: this duplicates
- // code in nscore.h because nscore.h pulls in prtypes.h, and chromium
- // can't build with that being included before base/basictypes.h.
--#if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
--#  include "mozilla/mozalloc.h"
--#else
--#  error "STL code can only be used with infallible ::operator new()"
-+#  if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
-+#    include "mozilla/mozalloc.h"
-+#  else
-+#    error "STL code can only be used with infallible ::operator new()"
-+#  endif
-+
- #endif
- 
- #if defined(DEBUG) && !defined(_GLIBCXX_DEBUG)
- // Enable checked iterators and other goodies
- //
- // FIXME/bug 551254: gcc's debug STL implementation requires -frtti.
- // Figure out how to resolve this with -fno-rtti.  Maybe build with
- // -frtti in DEBUG builds?
-
diff --git a/pkgs/applications/networking/mumble/default.nix b/pkgs/applications/networking/mumble/default.nix
index adcfa656eb9..3ec24bb2022 100644
--- a/pkgs/applications/networking/mumble/default.nix
+++ b/pkgs/applications/networking/mumble/default.nix
@@ -123,14 +123,14 @@ let
   };
 
   gitSource = rec {
-    version = "1.3.0-git-2016-04-10";
+    version = "2017-04-16";
     qtVersion = 5;
 
     # Needs submodules
     src = fetchgit {
       url = "https://github.com/mumble-voip/mumble";
-      rev = "0502fa67b036bae9f07a586d9f05a8bf74c24291";
-      sha256 = "07c1r26i0b5z7i787nr4mc60799skdzsh764ckk3gdi76agp2r2z";
+      rev = "eb63d0b14a7bc19bfdf34f80921798f0a67cdedf";
+      sha256 = "1nirbx0fnvi1nl6s5hrm4b0v7s2i22yshkmqnfjhxyr0y272s7lh";
     };
   };
 in {
diff --git a/pkgs/applications/networking/remote/teamviewer/default.nix b/pkgs/applications/networking/remote/teamviewer/default.nix
index 288fa438361..5c9e96c6527 100644
--- a/pkgs/applications/networking/remote/teamviewer/default.nix
+++ b/pkgs/applications/networking/remote/teamviewer/default.nix
@@ -9,7 +9,7 @@ let
 
   mkLdPath = ps: lib.makeLibraryPath (with ps; [ qt4 dbus alsaLib ]);
 
-  deps = ps: (with ps; [ dbus alsaLib fontconfig freetype libpng12 libjpeg ]) ++ (with ps.xlibs; [ libX11 libXext libXdamage libXrandr libXrender libXfixes libSM libXtst ]);
+  deps = ps: (with ps; [ dbus zlib alsaLib fontconfig freetype libpng12 libjpeg ]) ++ (with ps.xlibs; [ libX11 libXext libXdamage libXrandr libXrender libXfixes libSM libXtst libXinerama]);
   tvldpath32 = lib.makeLibraryPath (with pkgsi686Linux; [ qt4 "$out/share/teamviewer/tv_bin/wine" ] ++ deps pkgsi686Linux);
   tvldpath64 = lib.makeLibraryPath (deps pkgs);
 in
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     rm -R \
       $out/share/teamviewer/logfiles \
       $out/share/teamviewer/config \
-      $out/share/teamviewer/tv_bin/{xdg-utils,RTlib} \
+      $out/share/teamviewer/tv_bin/xdg-utils \
       $out/share/teamviewer/tv_bin/script/{teamviewer_setup,teamviewerd.sysv,teamviewerd.service,teamviewerd.*.conf,libdepend,tv-delayed-start.sh}
 
     ln -s $out/share/teamviewer/tv_bin/script/teamviewer $out/bin
@@ -57,13 +57,13 @@ stdenv.mkDerivation rec {
 
     sed -i "s,/opt/teamviewer,$out/share/teamviewer,g" desktop/com.teamviewer.*.desktop
 
-    for i in teamviewer-config teamviewerd TeamViewer_Desktop TVGuiDelegate TVGuiSlave.32 wine/bin/*; do
+    for i in teamviewer-config teamviewerd TeamViewer_Desktop TVGuiDelegate TVGuiSlave.32 wine/bin/* RTlib/libQtCore.so.4; do
       echo "patching $i"
-      patchelf --set-interpreter $(cat ${ld32}) --set-rpath ${tvldpath32} $i || true
+      patchelf --set-interpreter $(cat ${ld32}) --set-rpath $out/share/teamviewer/tv_bin/RTlib:${tvldpath32} $i || true
     done
-    for i in resources/*.so wine/drive_c/TeamViewer/tvwine.dll.so wine/lib/*.so* wine/lib/wine/*.so; do
+    for i in resources/*.so wine/drive_c/TeamViewer/tvwine.dll.so wine/lib/*.so* wine/lib/wine/*.so RTlib/*.so* ;  do
       echo "patching $i"
-      patchelf --set-rpath ${tvldpath32} $i || true
+      patchelf --set-rpath $out/share/teamviewer/tv_bin/RTlib:${tvldpath32} $i || true
     done
     ${if stdenv.system == "x86_64-linux" then ''
       patchelf --set-interpreter $(cat ${ld64}) --set-rpath ${tvldpath64} TVGuiSlave.64
@@ -81,6 +81,6 @@ stdenv.mkDerivation rec {
     license = licenses.unfree;
     description = "Desktop sharing application, providing remote support and online meetings";
     platforms = [ "i686-linux" "x86_64-linux" ];
-    maintainers = with maintainers; [ jagajaga ];
+    maintainers = with maintainers; [ jagajaga dasuxullebt ];
   };
 }
diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix
index 0f696d78855..81c459ff15a 100644
--- a/pkgs/applications/networking/syncthing/default.nix
+++ b/pkgs/applications/networking/syncthing/default.nix
@@ -1,14 +1,14 @@
 { stdenv, lib, fetchFromGitHub, go, pkgs, removeReferencesTo }:
 
 stdenv.mkDerivation rec {
-  version = "0.14.25";
+  version = "0.14.26";
   name = "syncthing-${version}";
 
   src = fetchFromGitHub {
     owner  = "syncthing";
     repo   = "syncthing";
     rev    = "v${version}";
-    sha256 = "1if92y32h1wp5sz2lnlw5fqibzbik7bklq850j9wcxfvr6ahck0w";
+    sha256 = "1ny41fj8gg555awqcsyvsjs1zghjlwciwhyxjh5ly16hzaixn499";
   };
 
   buildInputs = [ go removeReferencesTo ];
diff --git a/pkgs/applications/office/beancount/default.nix b/pkgs/applications/office/beancount/default.nix
index 72f6c5de8a1..70d5180191e 100644
--- a/pkgs/applications/office/beancount/default.nix
+++ b/pkgs/applications/office/beancount/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchhg, pkgs, pythonPackages }:
 
 pythonPackages.buildPythonApplication rec {
-  version = "2.0b13";
+  version = "2.0b15";
   name = "beancount-${version}";
   namePrefix = "";
 
   src = pkgs.fetchurl {
     url = "mirror://pypi/b/beancount/${name}.tar.gz";
-    sha256 = "16gkcq28bwd015b1qhdr5d7vhxid8xfn6ia4n9n8dnl5n448yqkm";
+    sha256 = "1dvnpgja4v4k5zagfsmdjavlib0z3r9r4z197yvj86szhzs0z86k";
   };
 
   buildInputs = with pythonPackages; [ nose ];
diff --git a/pkgs/applications/office/fava/default.nix b/pkgs/applications/office/fava/default.nix
index a246c7290a5..437a0cbbd13 100644
--- a/pkgs/applications/office/fava/default.nix
+++ b/pkgs/applications/office/fava/default.nix
@@ -1,17 +1,19 @@
 { stdenv, pkgs, fetchurl, python3Packages, fetchFromGitHub, fetchzip, python3, beancount }:
 
 python3Packages.buildPythonApplication rec {
-  version = "1.2";
+  version = "1.3";
   name = "fava-${version}";
 
-  src = fetchurl {
-    url = "https://github.com/beancount/fava/archive/v${version}.tar.gz";
-    sha256 = "0sykx054w4cvr0pgbqph0lmkxffafl83k5ir252gl5znxgcvg6yw";
+  src = fetchFromGitHub {
+    owner = "beancount";
+    repo = "fava";
+    rev = "v${version}";
+    sha256 = "0g0aj0qcmpny6dipi00nks7h3mf5a4jfd6bxjm1rb5807wswcpg8";
   };
 
   assets = fetchzip {
-    url = "https://github.com/beancount/fava/releases/download/v${version}/beancount-fava-${version}.tar.gz";
-    sha256 = "1lk6s3s6xvvwbcbkr1qpr9bqdgwspk3vms25zjd6xcs21s3hchmp";
+    url = "https://github.com/beancount/fava/releases/download/v${version}/fava-${version}.tar.gz";
+    sha256 = "0yn2psbn436g1w5ixn94z8ca6dfd54izg98979arn0k7slpiccvz";
   };
 
   buildInputs = with python3Packages; [ pytest_30 ];
diff --git a/pkgs/applications/science/biology/diamond/default.nix b/pkgs/applications/science/biology/diamond/default.nix
new file mode 100644
index 00000000000..a45e5df2f52
--- /dev/null
+++ b/pkgs/applications/science/biology/diamond/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, fetchurl, cmake, gcc, zlib }:
+
+stdenv.mkDerivation rec {
+  name = "diamond-0.8.36";
+
+  src = fetchurl {
+    url = "https://github.com/bbuchfink/diamond/archive/v0.8.36.tar.gz";
+    sha256 = "092smzzjcg51n3x4h84k52ijpz9m40ri838j9k2i463ribc3c8rh";
+  };
+
+  patches = [
+    ./diamond-0.8.36-no-warning.patch
+  ];
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ zlib ];
+
+  meta = with stdenv.lib; {
+    description = "Accelerated BLAST compatible local sequence aligner";
+    longDescription = ''
+      A sequence aligner for protein and translated DNA
+      searches and functions as a drop-in replacement for the NCBI BLAST
+      software tools. It is suitable for protein-protein search as well as
+      DNA-protein search on short reads and longer sequences including contigs
+      and assemblies, providing a speedup of BLAST ranging up to x20,000.
+
+      DIAMOND is developed by Benjamin Buchfink. Feel free to contact him for support (Email Twitter).
+
+      If you use DIAMOND in published research, please cite
+      B. Buchfink, Xie C., D. Huson,
+      "Fast and sensitive protein alignment using DIAMOND",
+      Nature Methods 12, 59-60 (2015).
+        '';
+    homepage = https://github.com/bbuchfink/diamond;
+    license = {
+      fullName = "University of Tuebingen, Benjamin Buchfink";
+      url = https://raw.githubusercontent.com/bbuchfink/diamond/master/src/COPYING;
+    };
+    maintainers = [ maintainers.metabar ];
+  };
+}
diff --git a/pkgs/applications/science/biology/diamond/diamond-0.8.36-no-warning.patch b/pkgs/applications/science/biology/diamond/diamond-0.8.36-no-warning.patch
new file mode 100644
index 00000000000..a16d475c556
--- /dev/null
+++ b/pkgs/applications/science/biology/diamond/diamond-0.8.36-no-warning.patch
@@ -0,0 +1,20 @@
+diff -u -r diamond-0.8.36/src/dp/scalar_traceback.h diamond-0.8.36-patched/src/dp/scalar_traceback.h
+--- diamond-0.8.36/src/dp/scalar_traceback.h	2017-02-06 16:32:05.000000000 +0100
++++ diamond-0.8.36-patched/src/dp/scalar_traceback.h	2017-02-23 15:13:24.000000000 +0100
+@@ -19,6 +19,7 @@
+ #ifndef SCALAR_TRACEBACK_H_
+ #define SCALAR_TRACEBACK_H_
+ 
++#include <cmath>
+ #include <exception>
+ #include "../basic/score_matrix.h"
+ 
+@@ -31,7 +32,7 @@
+ template<>
+ inline bool almost_equal<float>(float x, float y)
+ {
+-	return abs(x - y) < 0.001f;
++	return std::abs(x - y) < 0.001f;
+ }
+ 
+ template<typename _score>
diff --git a/pkgs/applications/science/biology/platypus/default.nix b/pkgs/applications/science/biology/platypus/default.nix
index 868540fcbc3..2947515652e 100644
--- a/pkgs/applications/science/biology/platypus/default.nix
+++ b/pkgs/applications/science/biology/platypus/default.nix
@@ -33,6 +33,6 @@ in stdenv.mkDerivation rec {
     license = licenses.gpl3;
     homepage = https://github.com/andyrimmer/Platypus;
     maintainers = with maintainers; [ jbedo ];
-    platforms = platforms.unix;
+    platforms = platforms.x86_64;
   };
 }
diff --git a/pkgs/applications/science/misc/simgrid/default.nix b/pkgs/applications/science/misc/simgrid/default.nix
index 7656668f056..8a3645705ab 100644
--- a/pkgs/applications/science/misc/simgrid/default.nix
+++ b/pkgs/applications/science/misc/simgrid/default.nix
@@ -1,18 +1,18 @@
-{ fetchurl, stdenv, cmake, perl, ruby, boost, lua5_1, graphviz, libsigcxx
-, libunwind, elfutils
+{ fetchurl, stdenv, cmake, perl, ruby, boost, lua5_3, graphviz, libsigcxx
+, libunwind, elfutils, python3, doxygen
 }:
 
 stdenv.mkDerivation rec {
-  version = "3.11.1";
+  version = "3.15";
   name = "simgrid-${version}";
 
   src = fetchurl {
-    url = "https://gforge.inria.fr/frs/download.php/33686/${name}.tar.gz";
-    sha256 = "0mkrzxpf42lmn96khfl1791vram67r2nqsgmppd2yil889nyz5kp";
+    url = "https://gforge.inria.fr/frs/download.php/36621/${name}.tar.gz";
+    sha256 = "1s595wc4z8hkvim3ypfdxy16pply6ckjg10v84cc0lx9pz6i3r6i";
   };
 
-  buildInputs = [ cmake perl ruby boost lua5_1 graphviz libsigcxx libunwind
-    elfutils
+  buildInputs = [ cmake perl ruby boost lua5_3 graphviz libsigcxx libunwind
+    elfutils python3 doxygen
     ];
 
   preConfigure =
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
        # Enable more functionality.
        export cmakeFlags="$cmakeFlags -Denable_tracing=on -Denable_jedule=on
          -Denable_latency_bound_tracking=on -Denable_lua=on
-	 -Denable_ns3=on -Denable_gtnets=on
+	 -Denable_ns3=off -Denable_gtnets=on
 	 "
     '';
 
@@ -61,6 +61,7 @@ stdenv.mkDerivation rec {
        do
          sed -i "$i" -e's|/usr/bin/perl|${perl}/bin/perl|g'
        done
+       patchShebangs ./tools/
     '';
 
   # Fixing the few tests that fail is left as an exercise to the reader.
diff --git a/pkgs/applications/version-management/git-and-tools/default.nix b/pkgs/applications/version-management/git-and-tools/default.nix
index 281a3914986..081bfd5918b 100644
--- a/pkgs/applications/version-management/git-and-tools/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/default.nix
@@ -30,6 +30,8 @@ rec {
 
   diff-so-fancy = callPackage ./diff-so-fancy { };
 
+  ghq = callPackage ./ghq { };
+
   git = appendToName "minimal" gitBase;
 
   # The full-featured Git.
@@ -68,8 +70,14 @@ rec {
 
   git-octopus = callPackage ./git-octopus { };
 
+  git-open = callPackage ./git-open { };
+
   git-radar = callPackage ./git-radar { };
 
+  git-recent = callPackage ./git-recent {
+    utillinux = if stdenv.isLinux then utillinuxMinimal else null;
+  };
+
   git-remote-hg = callPackage ./git-remote-hg { };
 
   git-stree = callPackage ./git-stree { };
diff --git a/pkgs/applications/version-management/git-and-tools/ghq/default.nix b/pkgs/applications/version-management/git-and-tools/ghq/default.nix
new file mode 100644
index 00000000000..4ba86a2a086
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/ghq/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "ghq-${version}";
+  version = "0.7.4";
+
+  goPackagePath = "github.com/motemen/ghq";
+
+  src = fetchFromGitHub {
+    owner = "motemen";
+    repo = "ghq";
+    rev = "v${version}";
+    sha256 = "0x2agr7why8mcjhq2j8kh8d0gbwx2333zgf1ribc9fn14ryas1j2";
+  };
+
+  goDeps = ./deps.nix;
+
+  buildFlagsArray = ''
+    -ldflags=
+      -X=main.Version=${version}
+  '';
+
+  postInstall = ''
+    install -m 444 -D ${src}/zsh/_ghq $bin/share/zsh/site-functions/_ghq
+  '';
+
+  meta = {
+    description = "Remote repository management made easy";
+    homepage = https://github.com/motemen/ghq;
+    maintainers = with stdenv.lib.maintainers; [ sigma ];
+    license = stdenv.lib.licenses.mit;
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/ghq/deps.nix b/pkgs/applications/version-management/git-and-tools/ghq/deps.nix
new file mode 100644
index 00000000000..ec54803a6e7
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/ghq/deps.nix
@@ -0,0 +1,38 @@
+[
+  {
+    goPackagePath = "github.com/codegangsta/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/codegangsta/cli";
+      rev = "0bdeddeeb0f650497d603c4ad7b20cfe685682f6";
+      sha256 = "1ny63c7bfwfrsp7vfkvb4i0xhq4v7yxqnwxa52y4xlfxs4r6v6fg";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-homedir";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-homedir";
+      rev = "b8bc1bf767474819792c23f32d8286a45736f1c6";
+      sha256 = "13ry4lylalkh4g2vny9cxwvryslzyzwp9r92z0b10idhdq3wad1q";
+    };
+  }
+  {
+    goPackagePath = "github.com/motemen/go-colorine";
+    fetch = {
+      type = "git";
+      url = "https://github.com/motemen/go-colorine";
+      rev = "49ff36b8fa42db28092361cd20dcefd0b03b1472";
+      sha256 = "1rfi5gggf2sxb52whgxfl37p22r2xp27rndixbiicw6swllmml9l";
+    };
+  }
+  {
+    goPackagePath = "github.com/daviddengcn/go-colortext";
+    fetch = {
+      type = "git";
+      url = "https://github.com/daviddengcn/go-colortext";
+      rev = "805cee6e0d43c72ba1d4e3275965ff41e0da068a";
+      sha256 = "0z0ggqnprqchnd8zyrz99w53kr4sgv372lyx12z5nsh9q342pmyf";
+    };
+  }
+]
diff --git a/pkgs/applications/version-management/git-and-tools/git-open/default.nix b/pkgs/applications/version-management/git-and-tools/git-open/default.nix
new file mode 100644
index 00000000000..6b696821f1c
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-open/default.nix
@@ -0,0 +1,32 @@
+{stdenv, git, xdg_utils, gnugrep, fetchFromGitHub, makeWrapper}:
+
+stdenv.mkDerivation rec {
+  name = "git-open-${version}";
+  version = "1.3.0";
+
+  src = fetchFromGitHub {
+    owner = "paulirish";
+    repo = "git-open";
+    rev = "v${version}";
+    sha256 = "005am4phf7j4ybc9k1hqsxjb7gv2i56a3axrza866pwwx1ayrhpq";
+  };
+
+  buildInputs = [ makeWrapper ];
+
+  buildPhase = null;
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp git-open $out/bin
+    wrapProgram $out/bin/git-open \
+      --prefix PATH : "${stdenv.lib.makeBinPath [ git xdg_utils gnugrep ]}"
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/paulirish/git-open;
+    description = "Open the GitHub page or website for a repository in your browser";
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = [ maintainers.jlesquembre ];
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-recent/default.nix b/pkgs/applications/version-management/git-and-tools/git-recent/default.nix
new file mode 100644
index 00000000000..ae1139e9993
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-recent/default.nix
@@ -0,0 +1,41 @@
+{stdenv, git, less, fetchFromGitHub, makeWrapper
+# utillinuxMinimal is included because we need the column command
+, utillinux ? null
+}:
+
+assert stdenv.isLinux -> utillinux != null;
+
+let
+  binpath = stdenv.lib.makeBinPath
+    ([ git less ]
+    ++ stdenv.lib.optional (utillinux != null) utillinux);
+in stdenv.mkDerivation rec {
+  name = "git-recent-${version}";
+  version = "1.0.3";
+
+  src = fetchFromGitHub {
+    owner = "paulirish";
+    repo = "git-recent";
+    rev = "v${version}";
+    sha256 = "0rckjjrw2xmvmbqaf66i36x59vs1v4pfnmvbinx5iggp7vjly1a4";
+  };
+
+  buildInputs = [ makeWrapper ];
+
+  buildPhase = null;
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp git-recent $out/bin
+    wrapProgram $out/bin/git-recent \
+      --prefix PATH : "${binpath}"
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/paulirish/git-recent;
+    description = "See your latest local git branches, formatted real fancy";
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = [ maintainers.jlesquembre ];
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/tig/default.nix b/pkgs/applications/version-management/git-and-tools/tig/default.nix
index f953bbad48b..99c1dcb281c 100644
--- a/pkgs/applications/version-management/git-and-tools/tig/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/tig/default.nix
@@ -1,20 +1,29 @@
-{ stdenv, fetchurl, ncurses, asciidoc, xmlto, docbook_xsl, docbook_xml_dtd_45
-, readline, makeWrapper, git, libiconv
+{ stdenv, fetchFromGitHub, ncurses, asciidoc, xmlto, docbook_xsl, docbook_xml_dtd_45
+, readline, makeWrapper, git, libiconv, autoreconfHook, findXMLCatalogs
 }:
 
 stdenv.mkDerivation rec {
-  name = "tig-2.2";
-
-  src = fetchurl {
-    url = "http://jonas.nitro.dk/tig/releases/${name}.tar.gz";
-    sha256 = "0k3m894vfkgkj7xbr0j6ph91351dl6id5f0hk2ksjp5lmg9i6llg";
+  pname = "tig";
+  version = "2.2.1";
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "jonas";
+    repo = pname;
+    rev = name;
+    sha256 = "09xiwm57df0vzk8r2hx5p1hwy5f9q8frmdf96aba2ia9837zn3av";
   };
 
-  buildInputs = [ ncurses asciidoc xmlto docbook_xsl readline git makeWrapper ]
+  nativeBuildInputs = [ makeWrapper autoreconfHook asciidoc xmlto docbook_xsl docbook_xml_dtd_45 findXMLCatalogs ];
+
+  autoreconfFlags = "-I tools -v";
+
+  buildInputs = [ ncurses readline git ]
     ++ stdenv.lib.optionals stdenv.isDarwin [ libiconv ];
 
-  preConfigure = ''
-    export XML_CATALOG_FILES='${docbook_xsl}/xml/xsl/docbook/catalog.xml ${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml'
+  # those files are inherently impure, we'll handle the corresponding dependencies.
+  postPatch = ''
+      rm -f contrib/config.make-*
   '';
 
   enableParallelBuilding = true;
@@ -30,7 +39,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = "http://jonas.nitro.dk/tig/";
+    homepage = "https://jonas.github.io/tig/";
     description = "Text-mode interface for git";
     maintainers = with maintainers; [ garbas bjornfor domenkozar qknight ];
     license = licenses.gpl2;
diff --git a/pkgs/applications/version-management/git-and-tools/transcrypt/default.nix b/pkgs/applications/version-management/git-and-tools/transcrypt/default.nix
index 36d81ae9c44..6238cf9c975 100644
--- a/pkgs/applications/version-management/git-and-tools/transcrypt/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/transcrypt/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "transcrypt-${version}";
-  version = "1.0.1";
+  version = "1.0.2";
 
   src = fetchFromGitHub {
     owner = "elasticdog";
     repo = "transcrypt";
     rev = "v${version}";
-    sha256 = "12n8714my9i93lysqa3dj1z5xgi10iv5y1mnsqki9zn5av3lgqkq";
+    sha256 = "05q0rgcsphrkavmcsm3qghsl1pkgshvhdf6zpwkn1qcj288h8gkc";
   };
 
   buildInputs = [ git makeWrapper openssl ];
diff --git a/pkgs/applications/version-management/git-lfs/default.nix b/pkgs/applications/version-management/git-lfs/default.nix
index c33ffb5cefb..6543f40c4da 100644
--- a/pkgs/applications/version-management/git-lfs/default.nix
+++ b/pkgs/applications/version-management/git-lfs/default.nix
@@ -1,30 +1,33 @@
-{ stdenv, lib, buildGoPackage, fetchFromGitHub }:
+{ stdenv, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   name = "git-lfs-${version}";
-  # NOTE: use versions after 1.2.1
-  version = "1.3.1";
-  rev = "9c9dffb1b5baddfa06f280ef1b5fbf68ecbc90b1";
-  
-  goPackagePath = "github.com/github/git-lfs";
+  version = "2.0.2";
+  rev = "85e2aec4d949517b4a7a53e4f745689331952b6c";
+
+  goPackagePath = "github.com/git-lfs/git-lfs";
 
   src = fetchFromGitHub {
     inherit rev;
-    owner = "github";
+    owner = "git-lfs";
     repo = "git-lfs";
-    sha256 = "0fg48jxh0gmd0w5yy3avascaasxk85019qayaikzfkym8bdqplb2";
+    sha256 = "0cvs17rd4qgaqj9vz6pwx9y3ni8c99gzykc3as92x37962nmq5cy";
   };
 
-  # Tests fail with 'lfstest-gitserver.go:46: main redeclared in this block'
-  excludedPackages = [ "test" ];
-
   preBuild = ''
-    pushd go/src/github.com/github/git-lfs
-      go generate ./commands
+    pushd go/src/github.com/git-lfs/git-lfs
+    go generate ./commands
     popd
   '';
 
   postInstall = ''
-    rm -v $bin/bin/{man,script}
+    rm -v $bin/bin/{man,script,genmakefile}
   '';
+
+  meta = with stdenv.lib; {
+    description = "Git extension for versioning large files";
+    homepage    = https://git-lfs.github.com/;
+    license     = [ licenses.mit ];
+    maintainers = [ maintainers.twey ];
+  };
 }
diff --git a/pkgs/applications/version-management/gitkraken/default.nix b/pkgs/applications/version-management/gitkraken/default.nix
index 023343f59cb..2090da057b0 100644
--- a/pkgs/applications/version-management/gitkraken/default.nix
+++ b/pkgs/applications/version-management/gitkraken/default.nix
@@ -9,11 +9,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "gitkraken-${version}";
-  version = "2.2.1";
+  version = "2.4.0";
 
   src = fetchurl {
     url = "https://release.gitkraken.com/linux/v${version}.deb";
-    sha256 = "0ld5wdnrz4qpjl9af8hwmzli3201rfsh73lyy2zp8c98749a2zqn";
+    sha256 = "1s95wnlyy41s8gy7vq4k8w03qrhxq56fr7idsrgvcv065cf5hqmd";
   };
 
   libPath = makeLibraryPath [
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index f04d0c89da3..442edc04fa2 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -18,11 +18,11 @@ let
     };
   };
 
-  version = "8.17.4";
+  version = "8.17.5";
 
   gitlabDeb = fetchurl {
     url = "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/jessie/gitlab-ce_${version}-ce.0_amd64.deb/download";
-    sha256 = "1fd6y9lyavzsm2ac10sip01dnvcd73ymcn2rqdljr4sq4f222mry";
+    sha256 = "1ga5ki1bh66sdk5yizjy0dqcg85hrzkdp0ag3si942yv28sjy1xk";
   };
 
 in
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     owner = "gitlabhq";
     repo = "gitlabhq";
     rev = "v${version}";
-    sha256 = "1yrbbf55pz7863xngl2mxwj9w4imdlqvmqywd1zpnswdsjqxa5xj";
+    sha256 = "0wvszxm28c80qwx6np5mi36saxzzg4n7jcp4ckvhhr3jvczn9m8g";
   };
 
   patches = [
diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix
index 1c97f7252f5..244a95447a9 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 = "3.9.2";
+  version = "4.1.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 = "1kw3cpcjygfapvi5c123limhpbkmg7is2i81pybk1s05gi16l139";
+    sha256 = "17imsf4haqgw364p1z9i416jinmfxfia537b84hcg0rg43hinmv3";
   };
 
   inherit python; # pass it so that the same version can be used in hg2git
diff --git a/pkgs/applications/version-management/pijul/default.nix b/pkgs/applications/version-management/pijul/default.nix
index aed907b2dcd..b9848f45aab 100644
--- a/pkgs/applications/version-management/pijul/default.nix
+++ b/pkgs/applications/version-management/pijul/default.nix
@@ -4,11 +4,11 @@ with rustPlatform;
 
 buildRustPackage rec {
   name = "pijul-${version}";
-  version = "0.3.3";
+  version = "0.4.4";
 
   src = fetchurl {
     url = "https://pijul.org/releases/${name}.tar.gz";
-    sha256 = "933e68703916ee7b50cd09f928bb072bdfc3388b69ff657578c23080f7df22b8";
+    sha256 = "8f133b7e14bfa84156c103126d53b12c6dfb996dcdebcf1091199ff9c77f3713";
   };
 
   sourceRoot = "${name}/pijul";
@@ -18,7 +18,7 @@ buildRustPackage rec {
 
   doCheck = false;
   
-  depsSha256 = "1aiyjl8jbmr8yys5bsd2mg1i7jryzb8kxqlmxp7kjn2qx7b4q2zd";
+  depsSha256 = "1zdvnarg182spgydmqwxxr929j44d771zkq7gyh152173i0xqb20";
 
   meta = with stdenv.lib; {
     description = "A distributed version control system";
diff --git a/pkgs/applications/version-management/tortoisehg/default.nix b/pkgs/applications/version-management/tortoisehg/default.nix
index c4eed94017c..1a0c506a19d 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 = "3.9.2";
+    version = "4.1.1";
 
     src = fetchurl {
       url = "https://bitbucket.org/tortoisehg/targz/downloads/${name}.tar.gz";
-      sha256 = "17wcsf91z7dnb7c8vyagasj5vvmas6ms5lx1ny4pnm94qzslkfh2";
+      sha256 = "14fy5p5hx4iij5kyma9679nrprd9lsjr6j047bfyfrwa3l4knj2g";
     };
 
     pythonPath = with python2Packages; [ pyqt4 mercurial qscintilla iniparse ];
diff --git a/pkgs/applications/video/handbrake/default.nix b/pkgs/applications/video/handbrake/default.nix
index f62e274874c..7d0cfb45530 100644
--- a/pkgs/applications/video/handbrake/default.nix
+++ b/pkgs/applications/video/handbrake/default.nix
@@ -23,14 +23,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.0.3";
+  version = "1.0.7";
   name = "handbrake-${version}";
 
   src = fetchFromGitHub {
     owner  = "HandBrake";
     repo   = "HandBrake";
     rev    = "${version}";
-    sha256 = "1r8yzs0xih03p5ybx5096zkvlwxhcmg34047awmda1wq3z3rdjh5";
+    sha256 = "1pdrvicq40s8n23n6k8k097kkjs3ah5wbz1mvxnfy3h2mh5rwk57";
   };
 
   nativeBuildInputs = [
@@ -52,6 +52,8 @@ stdenv.mkDerivation rec {
 
   dontUseCmakeConfigure = true;
 
+  enableParallelBuilding = true;
+
   preConfigure = ''
     patchShebangs scripts
 
@@ -85,6 +87,11 @@ stdenv.mkDerivation rec {
     cd build
   '';
 
+  # icon-theme.cache belongs in the icon theme, not in individual packages
+  postInstall = ''
+    rm $out/share/icons/hicolor/icon-theme.cache
+  '';
+
   meta = with stdenv.lib; {
     homepage = http://handbrake.fr/;
     description = "A tool for ripping DVDs into video files";
diff --git a/pkgs/applications/video/kodi/default.nix b/pkgs/applications/video/kodi/default.nix
index 9c421e0c828..10656af4ef4 100644
--- a/pkgs/applications/video/kodi/default.nix
+++ b/pkgs/applications/video/kodi/default.nix
@@ -43,6 +43,15 @@ let
     url = "https://github.com/xbmc/FFmpeg/archive/3.1.6-${rel}.tar.gz";
     sha256 = "14jicb26s20nr3qmfpazszpc892yjwjn81zbsb8szy3a5xs19y81";
   };
+  # Usage of kodi fork of libdvdnav and libdvdread is necessary for functional dvd playback:
+  libdvdnav_src = fetchurl {
+    url = "https://github.com/xbmc/libdvdnav/archive/981488f.tar.gz";
+    sha256 = "312b3d15bc448d24e92f4b2e7248409525eccc4e75776026d805478e51c5ef3d";
+  };
+  libdvdread_src = fetchurl {
+    url = "https://github.com/xbmc/libdvdread/archive/17d99db.tar.gz";
+    sha256 = "e7179b2054163652596a56301c9f025515cb08c6d6310b42b897c3ad11c0199b";
+  };
 in stdenv.mkDerivation rec {
     name = "kodi-${version}";
     version = "17.1";
@@ -92,8 +101,8 @@ in stdenv.mkDerivation rec {
         --replace "/bin/bash" "${bash}/bin/bash -ex"
       cp ${ffmpeg_3_1_6} tools/depends/target/ffmpeg/ffmpeg-3.1.6-${rel}.tar.gz
       ln -s ${libdvdcss.src} tools/depends/target/libdvdcss/libdvdcss-master.tar.gz
-      ln -s ${libdvdnav.src} tools/depends/target/libdvdnav/libdvdnav-master.tar.gz
-      ln -s ${libdvdread.src} tools/depends/target/libdvdread/libdvdread-master.tar.gz
+      cp ${libdvdnav_src} tools/depends/target/libdvdnav/libdvdnav-master.tar.gz
+      cp ${libdvdread_src} tools/depends/target/libdvdread/libdvdread-master.tar.gz
     '';
 
     preConfigure = ''
diff --git a/pkgs/applications/video/openshot-qt/default.nix b/pkgs/applications/video/openshot-qt/default.nix
index 3232e9c089b..656ec1163dc 100644
--- a/pkgs/applications/video/openshot-qt/default.nix
+++ b/pkgs/applications/video/openshot-qt/default.nix
@@ -1,39 +1,33 @@
 { stdenv, fetchFromGitHub
-, doxygen, python3Packages, ffmpeg, libopenshot
-, qtbase, qtmultimedia, makeQtWrapper }:
+, doxygen, python3Packages, libopenshot
+, makeQtWrapper, wrapGAppsHook, gtk3 }:
 
-with stdenv.lib;
-stdenv.mkDerivation rec {
+python3Packages.buildPythonApplication rec {
   name = "openshot-qt-${version}";
-  version = "2.2.0";
+  version = "2.3.1";
 
   src = fetchFromGitHub {
     owner = "OpenShot";
     repo = "openshot-qt";
     rev = "v${version}";
-    sha256 = "0dg4fkkci1rz49yrdd4fa1whv10c1pgm3cl4i49452ckqa7qg037";
+    sha256 = "10j3p10q66m9nhzcd8315q1yiqscidkjbm474mllw7c281vacvzw";
   };
-    
-  buildInputs =
-  [ python3Packages.python ffmpeg libopenshot qtbase qtmultimedia ];
-
-  nativeBuildInputs =
-  [ doxygen makeQtWrapper ];
-
-  installPhase = ''
-    mkdir -p $(toPythonPath $out)
-    cp -r src/* $(toPythonPath $out)
-    mkdir -p $out/bin
-    echo "#/usr/bin/env sh" >$out/bin/openshot-qt
-    echo "exec ${python3Packages.python.interpreter} $(toPythonPath $out)/launch.py" >>$out/bin/openshot-qt
-    chmod +x $out/bin/openshot-qt
-    wrapQtProgram $out/bin/openshot-qt \
-      --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${libopenshot}):$(toPythonPath ${python3Packages.pyqt5}):$(toPythonPath ${python3Packages.sip}):$(toPythonPath ${python3Packages.httplib2}):$(toPythonPath ${python3Packages.pyzmq}):$PYTHONPATH"
+
+  nativeBuildInputs = [ doxygen wrapGAppsHook ];
+
+  buildInputs = [ gtk3 ];
+
+  propagatedBuildInputs = with python3Packages; [ libopenshot pyqt5 sip httplib2 pyzmq ];
+
+
+  preConfigure = ''
+    # tries to create caching directories during install
+    export HOME=$(mktemp -d)
   '';
 
   doCheck = false;
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://openshot.org/;
     description = "Free, open-source video editor";
     longDescription = ''
diff --git a/pkgs/applications/video/openshot-qt/libopenshot.nix b/pkgs/applications/video/openshot-qt/libopenshot.nix
index dd141043169..b45460c426c 100644
--- a/pkgs/applications/video/openshot-qt/libopenshot.nix
+++ b/pkgs/applications/video/openshot-qt/libopenshot.nix
@@ -8,13 +8,13 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "libopenshot-${version}";
-  version = "0.1.3";
+  version = "0.1.4";
 
   src = fetchFromGitHub {
     owner = "OpenShot";
     repo = "libopenshot";
     rev = "v${version}";
-    sha256 = "0slszl6w96rhxhi6agw85dc4gmpab2qw03mq32g4qrirz68anz6f";
+    sha256 = "1mqci103kn4l7w8i9kqzi705kxn4q596vw0sh05r1w5nbyjwcyp6";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/video/streamlink/default.nix b/pkgs/applications/video/streamlink/default.nix
index 462d74c9672..163218c0478 100644
--- a/pkgs/applications/video/streamlink/default.nix
+++ b/pkgs/applications/video/streamlink/default.nix
@@ -1,17 +1,19 @@
-{ stdenv, pythonPackages, fetchFromGitHub, rtmpdump }:
+{ stdenv, pythonPackages, fetchFromGitHub, rtmpdump, ffmpeg }:
 
 pythonPackages.buildPythonApplication rec {
-  version = "0.3.0";
+  version = "0.5.0";
   name = "streamlink-${version}";
 
   src = fetchFromGitHub {
     owner = "streamlink";
     repo = "streamlink";
     rev = "${version}";
-    sha256 = "1bjih6y21vmjmsk3xvhgc1innymryklgylyvjrskqw610niai59j";
+    sha256 = "08q7f1fnm3zhs1knrkl6npr4yvpblqbiwa0m9r186ny11jq2dyib";
   };
 
-  propagatedBuildInputs = (with pythonPackages; [ pycrypto requests2 ]) ++ [ rtmpdump ];
+  buildInputs = with pythonPackages; [ pytest mock ];
+
+  propagatedBuildInputs = (with pythonPackages; [ pycryptodome requests2 iso-639 iso3166 ]) ++ [ rtmpdump ffmpeg ];
 
   meta = with stdenv.lib; {
     homepage = https://github.com/streamlink/streamlink;
@@ -25,6 +27,6 @@ pythonPackages.buildPythonApplication rec {
     '';
     license = licenses.bsd2;
     platforms = platforms.linux;
-    maintainers = [ maintainers.dezgeg ];
+    maintainers = with maintainers; [ dezgeg zraexy ];
   };
 }
diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix
index f3554ab230e..c52d1439012 100644
--- a/pkgs/applications/video/vlc/default.nix
+++ b/pkgs/applications/video/vlc/default.nix
@@ -27,6 +27,12 @@ stdenv.mkDerivation rec {
     sha256 = "1gjkrwlg8ab3skzl67cxb9qzg4187ifckd1z9kpy11q058fyjchn";
   };
 
+  patches = optional withQt5 (fetchurl {
+    name = "Fix-build-using-old-GCC-intrinsics.patch";
+    url = "https://patches.videolan.org/patch/14061/raw/";
+    sha256 = "16v4k7378a590diz11bdvdaqi9cpf6333hp5wr6v5sfrsma8qvpx";
+  });
+
   # Comment-out the Qt 5.5 version check, as we do apply the relevant patch.
   # https://trac.videolan.org/vlc/ticket/16497
   postPatch = if (!withQt5) then null else
@@ -50,6 +56,15 @@ stdenv.mkDerivation rec {
 
   LIVE555_PREFIX = live555;
 
+  preConfigure = ''
+    sed -e "s@/bin/echo@echo@g" -i configure
+  '' + optionalString withQt5 ''
+    # Make sure we only *add* "-std=c++11" to CXXFLAGS instead of overriding the
+    # values figured out by configure (for example "-g -O2").
+    sed -i -re '/^ *CXXFLAGS=("[^$"]+")? *$/s/CXXFLAGS="?/&-std=c++11 /' \
+      configure
+  '';
+
   configureFlags =
     [ "--enable-alsa"
       "--with-kde-solid=$out/share/apps/solid/actions"
@@ -61,8 +76,6 @@ stdenv.mkDerivation rec {
     ]
     ++ optional onlyLibVLC  "--disable-vlc";
 
-  preConfigure = ''sed -e "s@/bin/echo@echo@g" -i configure'';
-
   enableParallelBuilding = true;
 
   preBuild = ''
@@ -76,9 +89,5 @@ stdenv.mkDerivation rec {
     homepage = http://www.videolan.org/vlc/;
     platforms = platforms.linux;
     license = licenses.lgpl21Plus;
-    broken =
-      if withQt5
-      then builtins.compareVersions qtbase.version "5.7.0" >= 0
-      else false;
   };
 }
diff --git a/pkgs/applications/virtualization/docker-distribution/default.nix b/pkgs/applications/virtualization/docker-distribution/default.nix
index 4850d7d9f5f..c3c0de14966 100644
--- a/pkgs/applications/virtualization/docker-distribution/default.nix
+++ b/pkgs/applications/virtualization/docker-distribution/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "distribution-${version}";
-  version = "2.5.1";
+  version = "2.6.0";
   rev = "v${version}";
 
   goPackagePath = "github.com/docker/distribution";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     owner = "docker";
     repo = "distribution";
     inherit rev;
-    sha256 = "08nxcsl9bc3k9gav2mkqccm5byrlfcgy6qaqaywiyza0b0cn4kdc";
+    sha256 = "1yg2zrikn3vkvkx5mn51p6bfjk840qdkn7ahhhvvcsc8mpigrjc6";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
index b8667997b16..6f3feddfda0 100644
--- a/pkgs/applications/virtualization/docker/default.nix
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -6,134 +6,166 @@
 }:
 
 # https://github.com/docker/docker/blob/master/project/PACKAGERS.md
+# https://github.com/docker/docker/blob/TAG/hack/dockerfile/binaries-commits
 
 with lib;
 
-stdenv.mkDerivation rec {
-  name = "docker-${version}";
-  version = "17.03.0-ce";
-  rev = "60ccb22"; # should match the version commit
+rec {
+  dockerGen = {
+      version, rev, sha256
+      , runcRev, runcSha256
+      , containerdRev, containerdSha256
+      , tiniRev, tiniSha256
+  } : stdenv.mkDerivation rec {
+    inherit version rev;
 
-  src = fetchFromGitHub {
-    owner = "docker";
-    repo = "docker";
-    rev = "v${version}";
-    sha256 = "0ml9aan8x4w8kfz7dm9vvl8b1a0vq09si9b7z50xz84040cjhnr9";
-  };
+    name = "docker-${version}";
 
-  docker-runc = runc.overrideAttrs (oldAttrs: rec {
-    name = "docker-runc";
-    src = fetchFromGitHub {
-      owner = "docker";
-      repo = "runc";
-      rev = "a01dafd48bc1c7cc12bdb01206f9fea7dd6feb70";
-      sha256 = "0n7vr47fhpyxx5vdnp453qp4cq50w4hwgq3ldyj5878d91iir7l1";
-    };
-    # docker/runc already include these patches / are not applicable
-    patches = [];
-  });
-  docker-containerd = containerd.overrideAttrs (oldAttrs: rec {
-    name = "docker-containerd";
     src = fetchFromGitHub {
       owner = "docker";
-      repo = "containerd";
-      rev = "977c511eda0925a723debdc94d09459af49d082a";
-      sha256 = "0hmcj8i70vv3a3bbdawrgi84a442m09x5mpc7fgn8dd3v031lcbc";
-    };
-  });
-  docker-tini = tini.overrideAttrs  (oldAttrs: rec {
-    name = "docker-init";
-    src = fetchFromGitHub {
-      owner = "krallin";
-      repo = "tini";
-      rev = "949e6facb77383876aeff8a6944dde66b3089574";
-      sha256 = "0zj4kdis1vvc6dwn4gplqna0bs7v6d1y2zc8v80s3zi018inhznw";
+      repo = "docker";
+      rev = "v${version}";
+      sha256 = sha256;
     };
 
-    # Do not remove static from make files as we want a static binary
-    patchPhase = ''
+    docker-runc = runc.overrideAttrs (oldAttrs: rec {
+      name = "docker-runc";
+      src = fetchFromGitHub {
+        owner = "docker";
+        repo = "runc";
+        rev = runcRev;
+        sha256 = runcSha256;
+      };
+      # docker/runc already include these patches / are not applicable
+      patches = [];
+    });
+    docker-containerd = containerd.overrideAttrs (oldAttrs: rec {
+      name = "docker-containerd";
+      src = fetchFromGitHub {
+        owner = "docker";
+        repo = "containerd";
+        rev = containerdRev;
+        sha256 = containerdSha256;
+      };
+    });
+    docker-tini = tini.overrideAttrs  (oldAttrs: rec {
+      name = "docker-init";
+      src = fetchFromGitHub {
+        owner = "krallin";
+        repo = "tini";
+        rev = tiniRev;
+        sha256 = tiniSha256;
+      };
+
+      # Do not remove static from make files as we want a static binary
+      patchPhase = ''
+      '';
+
+      NIX_CFLAGS_COMPILE = [
+        "-DMINIMAL=ON"
+      ];
+    });
+
+    buildInputs = [
+      makeWrapper removeReferencesTo pkgconfig go-md2man go
+      sqlite devicemapper btrfs-progs systemd
+    ];
+
+    dontStrip = true;
+
+    DOCKER_BUILDTAGS = []
+      ++ optional (systemd != null) [ "journald" ]
+      ++ optional (btrfs-progs == null) "exclude_graphdriver_btrfs"
+      ++ optional (devicemapper == null) "exclude_graphdriver_devicemapper";
+
+    # systemd 230 no longer has libsystemd-journal as a separate entity from libsystemd
+    postPatch = ''
+      substituteInPlace ./hack/make.sh                   --replace libsystemd-journal libsystemd
+      substituteInPlace ./daemon/logger/journald/read.go --replace libsystemd-journal libsystemd
     '';
 
-    NIX_CFLAGS_COMPILE = [
-      "-DMINIMAL=ON"
-    ];
-  });
-
-  buildInputs = [
-    makeWrapper removeReferencesTo pkgconfig go-md2man go
-    sqlite devicemapper btrfs-progs systemd
-  ];
-
-  dontStrip = true;
-
-  DOCKER_BUILDTAGS = []
-    ++ optional (systemd != null) [ "journald" ]
-    ++ optional (btrfs-progs == null) "exclude_graphdriver_btrfs"
-    ++ optional (devicemapper == null) "exclude_graphdriver_devicemapper";
-
-  # systemd 230 no longer has libsystemd-journal as a separate entity from libsystemd
-  postPatch = ''
-    substituteInPlace ./hack/make.sh                   --replace libsystemd-journal libsystemd
-    substituteInPlace ./daemon/logger/journald/read.go --replace libsystemd-journal libsystemd
-  '';
-
-  buildPhase = ''
-    patchShebangs .
-    export AUTO_GOPATH=1
-    export DOCKER_GITCOMMIT="${rev}"
-    ./hack/make.sh dynbinary
-  '';
-
-  outputs = ["out" "man"];
-
-  extraPath = makeBinPath [ iproute iptables e2fsprogs xz xfsprogs procps utillinux ];
-
-  installPhase = ''
-    install -Dm755 ./bundles/${version}/dynbinary-client/docker-${version} $out/libexec/docker/docker
-    install -Dm755 ./bundles/${version}/dynbinary-daemon/dockerd-${version} $out/libexec/docker/dockerd
-    makeWrapper $out/libexec/docker/docker $out/bin/docker \
-      --prefix PATH : "$out/libexec/docker:$extraPath"
-    makeWrapper $out/libexec/docker/dockerd $out/bin/dockerd \
-      --prefix PATH : "$out/libexec/docker:$extraPath"
-
-    # docker uses containerd now
-    ln -s ${docker-containerd}/bin/containerd $out/libexec/docker/docker-containerd
-    ln -s ${docker-containerd}/bin/containerd-shim $out/libexec/docker/docker-containerd-shim
-    ln -s ${docker-runc}/bin/runc $out/libexec/docker/docker-runc
-    ln -s ${docker-proxy}/bin/docker-proxy $out/libexec/docker/docker-proxy
-    ln -s ${docker-tini}/bin/tini-static $out/libexec/docker/docker-init
-
-    # systemd
-    install -Dm644 ./contrib/init/systemd/docker.service $out/etc/systemd/system/docker.service
-
-    # completion
-    install -Dm644 ./contrib/completion/bash/docker $out/share/bash-completion/completions/docker
-    install -Dm644 ./contrib/completion/fish/docker.fish $out/share/fish/vendor_completions.d/docker.fish
-    install -Dm644 ./contrib/completion/zsh/_docker $out/share/zsh/site-functions/_docker
-
-    # Include contributed man pages
-    man/md2man-all.sh -q
-    manRoot="$man/share/man"
-    mkdir -p "$manRoot"
-    for manDir in man/man?; do
-      manBase="$(basename "$manDir")" # "man1"
-      for manFile in "$manDir"/*; do
-        manName="$(basename "$manFile")" # "docker-build.1"
-        mkdir -p "$manRoot/$manBase"
-        gzip -c "$manFile" > "$manRoot/$manBase/$manName.gz"
+    buildPhase = ''
+      patchShebangs .
+      export AUTO_GOPATH=1
+      export DOCKER_GITCOMMIT="${rev}"
+      ./hack/make.sh dynbinary
+    '';
+
+    outputs = ["out" "man"];
+
+    extraPath = makeBinPath [ iproute iptables e2fsprogs xz xfsprogs procps utillinux ];
+
+    installPhase = ''
+      install -Dm755 ./bundles/${version}/dynbinary-client/docker-${version} $out/libexec/docker/docker
+      install -Dm755 ./bundles/${version}/dynbinary-daemon/dockerd-${version} $out/libexec/docker/dockerd
+      makeWrapper $out/libexec/docker/docker $out/bin/docker \
+        --prefix PATH : "$out/libexec/docker:$extraPath"
+      makeWrapper $out/libexec/docker/dockerd $out/bin/dockerd \
+        --prefix PATH : "$out/libexec/docker:$extraPath"
+
+      # docker uses containerd now
+      ln -s ${docker-containerd}/bin/containerd $out/libexec/docker/docker-containerd
+      ln -s ${docker-containerd}/bin/containerd-shim $out/libexec/docker/docker-containerd-shim
+      ln -s ${docker-runc}/bin/runc $out/libexec/docker/docker-runc
+      ln -s ${docker-proxy}/bin/docker-proxy $out/libexec/docker/docker-proxy
+      ln -s ${docker-tini}/bin/tini-static $out/libexec/docker/docker-init
+
+      # systemd
+      install -Dm644 ./contrib/init/systemd/docker.service $out/etc/systemd/system/docker.service
+
+      # completion
+      install -Dm644 ./contrib/completion/bash/docker $out/share/bash-completion/completions/docker
+      install -Dm644 ./contrib/completion/fish/docker.fish $out/share/fish/vendor_completions.d/docker.fish
+      install -Dm644 ./contrib/completion/zsh/_docker $out/share/zsh/site-functions/_docker
+
+      # Include contributed man pages
+      man/md2man-all.sh -q
+      manRoot="$man/share/man"
+      mkdir -p "$manRoot"
+      for manDir in man/man?; do
+        manBase="$(basename "$manDir")" # "man1"
+        for manFile in "$manDir"/*; do
+          manName="$(basename "$manFile")" # "docker-build.1"
+          mkdir -p "$manRoot/$manBase"
+          gzip -c "$manFile" > "$manRoot/$manBase/$manName.gz"
+        done
       done
-    done
-  '';
-
-  preFixup = ''
-    find $out -type f -exec remove-references-to -t ${go} -t ${stdenv.cc.cc} -t ${stdenv.glibc.dev} '{}' +
-  '';
-
-  meta = {
-    homepage = http://www.docker.com/;
-    description = "An open source project to pack, ship and run any application as a lightweight container";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ offline tailhook ];
-    platforms = platforms.linux;
+    '';
+
+    preFixup = ''
+      find $out -type f -exec remove-references-to -t ${go} -t ${stdenv.cc.cc} -t ${stdenv.glibc.dev} '{}' +
+    '';
+
+    meta = {
+      homepage = http://www.docker.com/;
+      description = "An open source project to pack, ship and run any application as a lightweight container";
+      license = licenses.asl20;
+      maintainers = with maintainers; [ offline tailhook ];
+      platforms = platforms.linux;
+    };
+  };
+
+  docker_17_03 = dockerGen rec {
+    version = "17.03.1-ce";
+    rev = "c6d412e"; # git commit
+    sha256 = "1h3hkg15c3isfgaqpkp3mr7ys5826cz24hn3f3wz07jmismq98q7";
+    runcRev = "54296cf40ad8143b62dbcaa1d90e520a2136ddfe";
+    runcSha256 = "0ylymx7pi4jmvbqj94j2i8qspy8cpq0m91l6a0xiqlx43yx6qi2m";
+    containerdRev = "4ab9917febca54791c5f071a9d1f404867857fcc";
+    containerdSha256 = "06f2gsx4w9z4wwjhrpafmz6c829wi8p7crj6sya6x9ii50bkn8p6";
+    tiniRev = "949e6facb77383876aeff8a6944dde66b3089574";
+    tiniSha256 = "0zj4kdis1vvc6dwn4gplqna0bs7v6d1y2zc8v80s3zi018inhznw";
+  };
+
+  docker_17_04 = dockerGen rec {
+    version = "17.04.0-ce";
+    rev = "4845c56"; # git commit
+    sha256 = "04farary19ws7xzsyack0sbrxjzp5xwjh26frxbpdd0a88pxnbj7";
+    runcRev = "9c2d8d184e5da67c95d601382adf14862e4f2228";
+    runcSha256 = "131jv8f77pbdlx88ar0zjwdsp0a5v8kydaw0w0cl3i0j3622ydjl";
+    containerdRev = "422e31ce907fd9c3833a38d7b8fdd023e5a76e73";
+    containerdSha256 = "1g0k82f1mk3vn57k130q776wp5c226d06qbiq1q148pqxxhym2r2";
+    tiniRev = "949e6facb77383876aeff8a6944dde66b3089574";
+    tiniSha256 = "0zj4kdis1vvc6dwn4gplqna0bs7v6d1y2zc8v80s3zi018inhznw";
   };
 }
diff --git a/pkgs/applications/window-managers/fvwm/default.nix b/pkgs/applications/window-managers/fvwm/default.nix
index b374c982931..f8c8a59f6f6 100644
--- a/pkgs/applications/window-managers/fvwm/default.nix
+++ b/pkgs/applications/window-managers/fvwm/default.nix
@@ -26,5 +26,6 @@ stdenv.mkDerivation rec {
     description = "A multiple large virtual desktop window manager";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.linux;
+    maintainers = with stdenv.lib.maintainers; [ edanaher ];
   };
 }
diff --git a/pkgs/applications/window-managers/i3/default.nix b/pkgs/applications/window-managers/i3/default.nix
index b6de07bff8a..fded295b0ef 100644
--- a/pkgs/applications/window-managers/i3/default.nix
+++ b/pkgs/applications/window-managers/i3/default.nix
@@ -58,6 +58,8 @@ stdenv.mkDerivation rec {
     done
   '';
 
+  separateDebugInfo = true;
+
   meta = with stdenv.lib; {
     description = "A tiling window manager";
     homepage    = "http://i3wm.org";
diff --git a/pkgs/applications/window-managers/ratpoison/default.nix b/pkgs/applications/window-managers/ratpoison/default.nix
index 81080386689..fec3ae63132 100644
--- a/pkgs/applications/window-managers/ratpoison/default.nix
+++ b/pkgs/applications/window-managers/ratpoison/default.nix
@@ -1,22 +1,29 @@
 { stdenv, fetchurl, pkgconfig, perl, autoconf, automake
 , libX11, inputproto, libXt, libXpm, libXft, libXtst, xextproto, libXi
-, fontconfig, freetype, readline
+, libXrandr, fontconfig, freetype, readline
 }:
 
 stdenv.mkDerivation rec {
   name = "ratpoison-${version}";
-  version = "1.4.8";
+  version = "1.4.9";
 
   src = fetchurl {
     url = "mirror://savannah/ratpoison/${name}.tar.xz";
-    sha256 = "1w502z55vv7zs45l80nsllqh9fvfwjfdfi11xy1qikhzdmirains";
+    sha256 = "1wfir1gvh5h7izgvx2kd1pr2k7wlncd33zq7qi9s9k2y0aza93yr";
   };
 
   outputs = [ "out" "contrib" "doc" "info" ];
 
+  configureFlags = [
+    # >=1.4.9 requires this even with readline in inputs
+    "--enable-history"
+  ];
+
+  nativeBuildInputs = [ pkgconfig autoconf automake ];
+
   buildInputs =
-    [ pkgconfig perl autoconf automake
-      libX11 inputproto libXt libXpm libXft libXtst xextproto libXi
+    [ perl
+      libX11 inputproto libXt libXpm libXft libXtst xextproto libXi libXrandr
       fontconfig freetype readline ];
 
   postInstall = ''
diff --git a/pkgs/applications/window-managers/spectrwm/default.nix b/pkgs/applications/window-managers/spectrwm/default.nix
index 39825e37f30..1a3c976f77d 100644
--- a/pkgs/applications/window-managers/spectrwm/default.nix
+++ b/pkgs/applications/window-managers/spectrwm/default.nix
@@ -36,7 +36,10 @@ stdenv.mkDerivation rec {
     xcbutilwm
   ];
 
-  sourceRoot = "spectrwm-SPECTRWM_2_7_2/linux";
+  sourceRoot = let
+    subdir = if stdenv.isDarwin then "osx" else "linux";
+  in "spectrwm-SPECTRWM_2_7_2/${subdir}";
+
   makeFlags="PREFIX=$(out)";
   installPhase = "PREFIX=$out make install";
 
diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix
index 79077b477b4..f392945b36d 100644
--- a/pkgs/applications/window-managers/sway/default.nix
+++ b/pkgs/applications/window-managers/sway/default.nix
@@ -1,10 +1,11 @@
 { stdenv, fetchFromGitHub, pango, libinput
 , makeWrapper, cmake, pkgconfig, asciidoc, libxslt, docbook_xsl, cairo
 , wayland, wlc, libxkbcommon, pixman, fontconfig, pcre, json_c, dbus_libs, libcap
+, xwayland
 }:
 
 let
-  version = "0.11";
+  version = "0.12.2";
 in
   stdenv.mkDerivation rec {
     name = "sway-${version}";
@@ -13,12 +14,12 @@ in
       owner = "Sircmpwn";
       repo = "sway";
       rev = "${version}";
-      sha256 = "01k01f72kh90fwgqh2hgg6dv9931x4v18bzz11b47mn7p9z68ddv";
+      sha256 = "1hkr6pmz45xa5w5y21ijz7i2dwb62rifhcy28r8kh5r2hwbil2hs";
     };
 
     nativeBuildInputs = [ makeWrapper cmake pkgconfig asciidoc libxslt docbook_xsl ];
 
-    buildInputs = [ wayland wlc libxkbcommon pixman fontconfig pcre json_c dbus_libs pango cairo libinput libcap ];
+    buildInputs = [ wayland wlc libxkbcommon pixman fontconfig pcre json_c dbus_libs pango cairo libinput libcap xwayland ];
 
     patchPhase = ''
       sed -i s@/etc/sway@$out/etc/sway@g CMakeLists.txt;
diff --git a/pkgs/applications/window-managers/trayer/default.nix b/pkgs/applications/window-managers/trayer/default.nix
index 296de4e1e25..146bd7e1438 100644
--- a/pkgs/applications/window-managers/trayer/default.nix
+++ b/pkgs/applications/window-managers/trayer/default.nix
@@ -1,17 +1,21 @@
-{ stdenv, fetchFromGitHub, pkgconfig, gdk_pixbuf, gtk2, libXmu }:
+{ stdenv, fetchFromGitHub, pkgconfig, gdk_pixbuf, gtk2 }:
 
 stdenv.mkDerivation rec {
-  name = "trayer-1.1.6";
+  name = "trayer-1.1.7";
 
-  buildInputs = [ pkgconfig gdk_pixbuf gtk2 libXmu ];
+  buildInputs = [ pkgconfig gdk_pixbuf gtk2 ];
 
   src = fetchFromGitHub {
     owner = "sargon";
     repo = "trayer-srg";
     rev = name;
-    sha256 = "0mmya7a1qh3zyqgvcx5fz2lvr9n0ilr490l1j3z4myahi4snk2mg";
+    sha256 = "06lpgralggh5546qgvpilzxh4anshli2za41x68x2zbaizyqb09a";
   };
 
+  preConfigure = ''
+    patchShebangs configure
+  '';
+
   makeFlags = [ "PREFIX=$(out)" ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/build-support/build-fhs-userenv/env.nix b/pkgs/build-support/build-fhs-userenv/env.nix
index 9a1897695a9..9c228b39114 100644
--- a/pkgs/build-support/build-fhs-userenv/env.nix
+++ b/pkgs/build-support/build-fhs-userenv/env.nix
@@ -52,11 +52,12 @@ let
     export LOCALE_ARCHIVE='/usr/lib/locale/locale-archive'
     export LD_LIBRARY_PATH='/run/opengl-driver/lib:/run/opengl-driver-32/lib:/usr/lib:/usr/lib32'
     export PATH='/run/wrappers/bin:/usr/bin:/usr/sbin'
-    export PKG_CONFIG_PATH=/usr/lib/pkgconfig
 
-    # Force compilers to look in default search paths
+    # Force compilers and other tools to look in default search paths
     export NIX_CFLAGS_COMPILE='-idirafter /usr/include'
     export NIX_LDFLAGS_BEFORE='-L/usr/lib -L/usr/lib32'
+    export PKG_CONFIG_PATH=/usr/lib/pkgconfig
+    export ACLOCAL_PATH=/usr/share/aclocal
 
     ${profile}
   '';
diff --git a/pkgs/build-support/buildenv/default.nix b/pkgs/build-support/buildenv/default.nix
index dc05ec1678c..47e2c1b904c 100644
--- a/pkgs/build-support/buildenv/default.nix
+++ b/pkgs/build-support/buildenv/default.nix
@@ -2,7 +2,7 @@
 # a fork of the buildEnv in the Nix distribution.  Most changes should
 # eventually be merged back into the Nix distribution.
 
-{ perl, runCommand, lib }:
+{ buildPackages, runCommand, lib }:
 
 { name
 
@@ -66,6 +66,6 @@ runCommand name
     passAsFile = if builtins.stringLength pkgs >= 128*1024 then [ "pkgs" ] else null;
   }
   ''
-    ${perl}/bin/perl -w ${./builder.pl}
+    ${buildPackages.perl}/bin/perl -w ${./builder.pl}
     eval "$postBuild"
   ''
diff --git a/pkgs/build-support/docker/default.nix b/pkgs/build-support/docker/default.nix
index 27575053954..7f63664dadd 100644
--- a/pkgs/build-support/docker/default.nix
+++ b/pkgs/build-support/docker/default.nix
@@ -209,7 +209,7 @@ rec {
 
       postMount = ''
         echo "Packing raw image..."
-        tar -C mnt --mtime=0 -cf $out .
+        tar -C mnt --mtime="@$SOURCE_DATE_EPOCH" -cf $out .
       '';
     };
 
@@ -247,7 +247,7 @@ rec {
         echo "Adding contents..."
         for item in $contents; do
           echo "Adding $item"
-          rsync -ak $item/ layer/
+          rsync -ak --chown=0:0 $item/ layer/
         done
       else
         echo "No contents to add to layer."
@@ -260,7 +260,7 @@ rec {
       # Tar up the layer and throw it into 'layer.tar'.
       echo "Packing layer..."
       mkdir $out
-      tar -C layer --mtime=0 -cf $out/layer.tar .
+      tar -C layer --mtime="@$SOURCE_DATE_EPOCH" -cf $out/layer.tar .
 
       # Compute a checksum of the tarball.
       echo "Computing layer checksum..."
@@ -310,7 +310,7 @@ rec {
         echo "Adding contents..."
         for item in ${toString contents}; do
           echo "Adding $item..."
-          rsync -ak $item/ layer/
+          rsync -ak --chown=0:0 $item/ layer/
         done
       '';
 
@@ -340,7 +340,7 @@ rec {
 
         echo "Packing layer..."
         mkdir $out
-        tar -C layer --mtime=0 -cf $out/layer.tar .
+        tar -C layer --mtime="@$SOURCE_DATE_EPOCH" -cf $out/layer.tar .
 
         # Compute the tar checksum and add it to the output json.
         echo "Computing checksum..."
@@ -467,7 +467,8 @@ rec {
         comm <(sort -n baseFiles|uniq) \
              <(sort -n layerFiles|uniq|grep -v ${layer}) -1 -3 > newFiles
         # Append the new files to the layer.
-        tar -rpf temp/layer.tar --mtime=0 --no-recursion --files-from newFiles
+        tar -rpf temp/layer.tar --mtime="@$SOURCE_DATE_EPOCH" \
+          --owner=0 --group=0 --no-recursion --files-from newFiles
 
         echo "Adding meta..."
 
@@ -496,7 +497,7 @@ rec {
         chmod -R a-w image
 
         echo "Cooking the image..."
-        tar -C image --mtime=0 -c . | pigz -nT > $out
+        tar -C image --mtime="@$SOURCE_DATE_EPOCH" -c . | pigz -nT > $out
 
         echo "Finished."
       '';
diff --git a/pkgs/build-support/fetchurl/default.nix b/pkgs/build-support/fetchurl/default.nix
index 1e872fbc57a..fea06e22ab4 100644
--- a/pkgs/build-support/fetchurl/default.nix
+++ b/pkgs/build-support/fetchurl/default.nix
@@ -92,7 +92,7 @@ let
 
 in
 
-if md5 != "" then throw "fetchsvnssh does not support md5 anymore, please use sha256 or sha512"
+if md5 != "" then throw "fetchurl does not support md5 anymore, please use sha256 or sha512"
 else if (!hasHash) then throw "Specify hash for fetchurl fixed-output derivation: ${stdenv.lib.concatStringsSep ", " urls_}"
 else stdenv.mkDerivation {
   name =
diff --git a/pkgs/build-support/rust/default.nix b/pkgs/build-support/rust/default.nix
index 91569d0c070..2275a065594 100644
--- a/pkgs/build-support/rust/default.nix
+++ b/pkgs/build-support/rust/default.nix
@@ -7,6 +7,7 @@
 , buildInputs ? []
 , cargoUpdateHook ? ""
 , cargoDepsHook ? ""
+, cargoBuildFlags ? []
 , ... } @ args:
 
 let
@@ -26,7 +27,11 @@ in stdenv.mkDerivation (args // {
 
   buildInputs = [ git rust.cargo rust.rustc ] ++ buildInputs;
 
-  configurePhase = args.configurePhase or "true";
+  configurePhase = args.configurePhase or ''
+    runHook preConfigure
+    # noop
+    runHook postConfigure
+  '';
 
   postUnpack = ''
     eval "$cargoDepsHook"
@@ -92,22 +97,26 @@ in stdenv.mkDerivation (args // {
     )
   '' + (args.prePatch or "");
 
-  buildPhase = args.buildPhase or ''
-    echo "Running cargo build --release"
-    cargo build --release
+  buildPhase = with builtins; args.buildPhase or ''
+    runHook preBuild
+    echo "Running cargo build --release ${concatStringsSep " " cargoBuildFlags}"
+    cargo build --release ${concatStringsSep " " cargoBuildFlags}
+    runHook postBuild
   '';
 
   checkPhase = args.checkPhase or ''
+    runHook preCheck
     echo "Running cargo test"
     cargo test
+    runHook postCheck
   '';
 
   doCheck = args.doCheck or true;
 
   installPhase = args.installPhase or ''
+    runHook preInstall
     mkdir -p $out/bin
-    for f in $(find target/release -maxdepth 1 -type f); do
-      cp $f $out/bin
-    done;
+    find target/release -maxdepth 1 -executable -exec cp "{}" $out/bin \;
+    runHook postInstall
   '';
 })
diff --git a/pkgs/build-support/rust/fetch-cargo-deps b/pkgs/build-support/rust/fetch-cargo-deps
index 54593994990..76661a4f9ec 100755
--- a/pkgs/build-support/rust/fetch-cargo-deps
+++ b/pkgs/build-support/rust/fetch-cargo-deps
@@ -1,3 +1,18 @@
+# copied from libgit2 source code 'repo-template.h'
+makeGitTemplate() {
+    local target="$1"
+    mkdir -p -m777 "$target/info" "$target/pack" "$target/objects" "$target/refs"
+    mkdir -p -m777 "$target/refs/heads" "$target/refs/tags" "$target/objects/info" "$target/objects/pack"
+    cat <<'EOF' > "$target/description"
+Unnamed repository; edit this file 'description' to name the repository.
+EOF
+    chmod 666 "$target/description"
+    cat <<'EOF' > "$target/info/exclude"
+# File patterns to ignore; see `git help ignore` for more information.
+# Lines that start with '#' are comments.
+EOF
+}
+
 fetchCargoDeps() {
     src=$(realpath $1)
     out=$(realpath $2)
@@ -6,6 +21,23 @@ fetchCargoDeps() {
 
     mkdir $out
 
+    # Configure git template dir to make libgit2 more deterministic
+    #
+    # Without a template dir, libgit2 defaults to /usr/share/git-core/templates,
+    # which can vary between systems if sandboxed builds aren't used.
+    #
+    # Note: we explictly set --tmpdir for mktemp here to make it more friendly
+    # for nix-shell users, where $TMPDIR is not necessarily set to NIX_BUILD_TOP
+    echo "Setting up git templatedir"
+    export GIT_TEMPLATE_DIR="$(mktemp -d --tmpdir=$NIX_BUILD_TOP git-template.XXX)"
+    makeGitTemplate "$GIT_TEMPLATE_DIR"
+    export XDG_CONFIG_HOME="$(mktemp -d --tmpdir=$NIX_BUILD_TOP home.XXX)"
+    mkdir -p $XDG_CONFIG_HOME/git
+    cat <<EOF > $XDG_CONFIG_HOME/git/config
+[init]
+  templatedir = $GIT_TEMPLATE_DIR
+EOF
+
     # Configure cargo to fetch from a local copy of the crates.io registry
 
     echo "Using rust registry from $rustRegistry"
diff --git a/pkgs/data/fonts/comic-relief/default.nix b/pkgs/data/fonts/comic-relief/default.nix
index a8b2b786efa..31c89215ea7 100644
--- a/pkgs/data/fonts/comic-relief/default.nix
+++ b/pkgs/data/fonts/comic-relief/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "1.1";
 
   src = fetchurl {
-    url = "https://dl.dropbox.com/u/56493902/loudifier/comicrelief.zip";
+    url = "https://fontlibrary.org/assets/downloads/comic-relief/45c456b6db2aaf2f7f69ac66b5ac7239/comic-relief.zip";
     sha256 = "0wpf10m9zmcfvcxgc7dxzdm3syam7d7qxlfabgr1nxzq299kh8ch";
   };
 
diff --git a/pkgs/data/fonts/envypn-font/default.nix b/pkgs/data/fonts/envypn-font/default.nix
new file mode 100644
index 00000000000..203b68f5e5d
--- /dev/null
+++ b/pkgs/data/fonts/envypn-font/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, mkfontdir, mkfontscale }:
+
+stdenv.mkDerivation rec {
+  name = "envypn-font-1.7.1";
+
+  src = fetchurl {
+    url = "https://ywstd.fr/files/p/envypn-font/envypn-font-1.7.1.tar.gz";
+    sha256 = "bda67b6bc6d5d871a4d46565d4126729dfb8a0de9611dae6c68132a7b7db1270";
+  };
+
+  buildInputs = [ mkfontdir mkfontscale ];
+
+  unpackPhase = ''
+    tar -xzf $src --strip-components=1
+  '';
+
+  installPhase = ''
+    # install the pcf fonts (for xorg applications)
+    fontDir="$out/share/fonts/envypn"
+    mkdir -p "$fontDir"
+    mv *.pcf.gz "$fontDir"
+
+    cd "$fontDir"
+    mkfontdir
+    mkfontscale
+  '';
+
+  meta = with stdenv.lib; {
+    description = ''
+      Readable bitmap font inspired by Envy Code R
+    '';
+    homepage = "http://ywstd.fr/p/pj/#envypn";
+    license = licenses.miros;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/data/fonts/fontconfig-penultimate/default.nix b/pkgs/data/fonts/fontconfig-penultimate/default.nix
index a42e5d9109b..148cbb2f8c1 100644
--- a/pkgs/data/fonts/fontconfig-penultimate/default.nix
+++ b/pkgs/data/fonts/fontconfig-penultimate/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchFromGitHub }:
 
-let version = "0.3.2"; in
+let version = "0.3.3"; in
 stdenv.mkDerivation {
   name = "fontconfig-penultimate-${version}";
 
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
     owner = "ttuegel";
     repo = "fontconfig-penultimate";
     rev = version;
-    sha256 = "01cgqdmgpqahkg71lnvr3yzsmka9q1kgkbiz6w5ds1fhrpcswj7p";
+    sha256 = "0392lw31jps652dcjazln77ihb6bl7gk201gb7wb9i223avp86w9";
   };
 
   installPhase = ''
diff --git a/pkgs/data/fonts/iosevka/default.nix b/pkgs/data/fonts/iosevka/default.nix
index ac7dcea31b1..5fde19e0128 100644
--- a/pkgs/data/fonts/iosevka/default.nix
+++ b/pkgs/data/fonts/iosevka/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "iosevka-${version}";
-  version = "1.12.1";
+  version = "1.12.5";
 
   buildInputs = [ unzip ];
 
   src = fetchurl {
     url = "https://github.com/be5invis/Iosevka/releases/download/v${version}/iosevka-pack-${version}.zip";
-    sha256 = "1rwg06fbizf2cmjwysx4ciz96nh80k48drsyr3rshppycajnaahj";
+    sha256 = "0s3g6mk0ngwsrw9h9dqinb50cd9i8zhqdcmmh93fhyf4d87yfwyi";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/data/fonts/source-han-sans/default.nix b/pkgs/data/fonts/source-han-sans/default.nix
index 11132710a90..240f0ff5d29 100644
--- a/pkgs/data/fonts/source-han-sans/default.nix
+++ b/pkgs/data/fonts/source-han-sans/default.nix
@@ -23,10 +23,11 @@ let
     '';
 
     meta = {
-      description = "${language} subset of an open source Pan-CJK typeface";
+      description = "${language} subset of an open source Pan-CJK sans-serif typeface";
       homepage = https://github.com/adobe-fonts/source-han-sans;
-      license = stdenv.lib.licenses.asl20;
+      license = stdenv.lib.licenses.ofl;
       platforms = stdenv.lib.platforms.unix;
+      maintainers = with stdenv.lib.maintainers; [ taku0 ];
     };
   };
 in
diff --git a/pkgs/data/fonts/source-han-serif/default.nix b/pkgs/data/fonts/source-han-serif/default.nix
new file mode 100644
index 00000000000..148f5a4538f
--- /dev/null
+++ b/pkgs/data/fonts/source-han-serif/default.nix
@@ -0,0 +1,59 @@
+{stdenv, fetchurl, unzip}:
+
+let
+  makePackage = {variant, language, region, sha256}: stdenv.mkDerivation rec {
+    version = "1.000R";
+    name = "source-han-serif-${variant}-${version}";
+    revision = "f6cf97d92b22e7bd77e355a61fe549ae44b6de76";
+
+    buildInputs = [ unzip ];
+
+    src = fetchurl {
+      url = "https://github.com/adobe-fonts/source-han-serif/raw/${revision}/SubsetOTF/SourceHanSerif${region}.zip";
+      inherit sha256;
+    };
+
+    setSourceRoot = ''
+      sourceRoot=$( echo SourceHanSerif* )
+    '';
+
+    installPhase = ''
+      mkdir -p $out/share/fonts/opentype
+      cp $( find . -name '*.otf' ) $out/share/fonts/opentype
+    '';
+
+    meta = {
+      description = "${language} subset of an open source Pan-CJK serif typeface";
+      homepage = https://github.com/adobe-fonts/source-han-sans;
+      license = stdenv.lib.licenses.ofl;
+      platforms = stdenv.lib.platforms.unix;
+      maintainers = with stdenv.lib.maintainers; [ taku0 ];
+    };
+  };
+in
+{
+  japanese = makePackage {
+    variant = "japanese";
+    language = "Japanese";
+    region = "JP";
+    sha256 = "0488zxr6jpwinzayrznc4ciy8mqcq9afx80xnp37pl9gcxsv0jp7";
+  };
+  korean = makePackage {
+    variant = "korean";
+    language = "Korean";
+    region = "KR";
+    sha256 = "1kwsqrb3s52nminq65n3la540dgvahnhvgwv5h168nrmz881ni9r";
+  };
+  simplified-chinese = makePackage {
+    variant = "simplified-chinese";
+    language = "Simplified Chinese";
+    region = "CN";
+    sha256 = "0y6js0hjgf1i8mf7kzklcl02qg0bi7j8n7j1l4awmkij1ix2yc43";
+  };
+  traditional-chinese = makePackage {
+    variant = "traditional-chinese";
+    language = "Traditional Chinese";
+    region = "TW";
+    sha256 = "0q52dn0vh3pqpr9gn4r4qk99lkvhf2gl12y99n9423brrqyfbi6h";
+  };
+}
diff --git a/pkgs/data/icons/elementary-icon-theme/default.nix b/pkgs/data/icons/elementary-icon-theme/default.nix
index 008a4112531..76460bd7acf 100644
--- a/pkgs/data/icons/elementary-icon-theme/default.nix
+++ b/pkgs/data/icons/elementary-icon-theme/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  version = "4.0.1.1";
+  version = "4.0.3";
 
   package-name = "elementary-icon-theme";
 
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://launchpad.net/elementaryicons/4.x/${version}/+download/${name}.tar.xz";
-    sha256 = "1p20569lxgkif4gzvgpisd8vg93zxd6447y634lv7ay85nq4lx76";
+    sha256 = "0i3cp0wiy4g6d6symyfv3hvmw97109lfakd4qyphabbqllc9xlxb";
   };
 
   dontBuild = true;
diff --git a/pkgs/data/icons/hicolor-icon-theme/default.nix b/pkgs/data/icons/hicolor-icon-theme/default.nix
index 5d089315448..083ea80a69d 100644
--- a/pkgs/data/icons/hicolor-icon-theme/default.nix
+++ b/pkgs/data/icons/hicolor-icon-theme/default.nix
@@ -13,6 +13,6 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Default fallback theme used by implementations of the icon theme specification";
     homepage = http://icon-theme.freedesktop.org/releases/;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = with stdenv.lib.platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/data/misc/iana-etc/default.nix b/pkgs/data/misc/iana-etc/default.nix
index 01203f9b0bd..ed70de517ab 100644
--- a/pkgs/data/misc/iana-etc/default.nix
+++ b/pkgs/data/misc/iana-etc/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "iana-etc-${version}";
-  version = "20170328";
+  version = "20170417";
 
   src = fetchurl {
     url = "https://github.com/Mic92/iana-etc/releases/download/${version}/iana-etc-${version}.tar.gz";
-    sha256 = "0c0zgijmh035wan3pvz8ykkmkdbraml4b9kx36b4j1lj9fhgy1yk";
+    sha256 = "0gzv8ldyf3g70m4k3m50p2gbqwvxa343v2q4xcnl1jqfgw9db5wf";
   };
 
   installPhase = ''
@@ -14,9 +14,10 @@ stdenv.mkDerivation rec {
     cp services protocols $out/etc/
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://github.com/Mic92/iana-etc;
     description = "IANA protocol and port number assignments (/etc/protocols and /etc/services)";
-    platforms = stdenv.lib.platforms.unix;
+    platforms = platforms.unix;
+    license = licenses.mit;
   };
 }
diff --git a/pkgs/desktops/gnome-3/3.22/core/adwaita-icon-theme/default.nix b/pkgs/desktops/gnome-3/3.22/core/adwaita-icon-theme/default.nix
index 3c3a05dc3af..62cc4da6ba1 100644
--- a/pkgs/desktops/gnome-3/3.22/core/adwaita-icon-theme/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/adwaita-icon-theme/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   postInstall = '' rm -rf "$out/locale" '';
 
   meta = with stdenv.lib; {
-    platforms = platforms.linux;
+    platforms = with platforms; linux ++ darwin;
     maintainers = gnome3.maintainers;
   };
 }
diff --git a/pkgs/desktops/gnome-3/3.22/core/baobab/default.nix b/pkgs/desktops/gnome-3/3.22/core/baobab/default.nix
index f7a0ff473cc..15db270e80c 100644
--- a/pkgs/desktops/gnome-3/3.22/core/baobab/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/baobab/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, intltool, fetchurl, vala_0_32, libgtop
+{ stdenv, intltool, fetchurl, vala, libgtop
 , pkgconfig, gtk3, glib
-, bash, makeWrapper, itstool, libxml2
+, bash, wrapGAppsHook, itstool, libxml2
 , gnome3, librsvg, gdk_pixbuf, file }:
 
 stdenv.mkDerivation rec {
@@ -10,17 +10,8 @@ stdenv.mkDerivation rec {
 
   NIX_CFLAGS_COMPILE = "-I${gnome3.glib.dev}/include/gio-unix-2.0";
 
-  propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
-
-  buildInputs = [ vala_0_32 pkgconfig gtk3 glib libgtop intltool itstool libxml2
-                  gnome3.gsettings_desktop_schemas makeWrapper file
-                  gdk_pixbuf gnome3.defaultIconTheme librsvg ];
-
-  preFixup = ''
-    wrapProgram "$out/bin/baobab" \
-      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
-  '';
+  buildInputs = [ vala pkgconfig gtk3 glib libgtop intltool itstool libxml2
+                  wrapGAppsHook file gdk_pixbuf gnome3.defaultIconTheme librsvg ];
 
   meta = with stdenv.lib; {
     homepage = https://wiki.gnome.org/Apps/Baobab;
diff --git a/pkgs/desktops/gnome-3/3.22/core/gnome-keyring/default.nix b/pkgs/desktops/gnome-3/3.22/core/gnome-keyring/default.nix
index 3ea108808f5..df47c1a477b 100644
--- a/pkgs/desktops/gnome-3/3.22/core/gnome-keyring/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/gnome-keyring/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, dbus, libgcrypt, libtasn1, pam, python, glib, libxslt
-, intltool, pango, gcr, gdk_pixbuf, atk, p11_kit, makeWrapper
+, intltool, pango, gcr, gdk_pixbuf, atk, p11_kit, wrapGAppsHook
 , docbook_xsl_ns, docbook_xsl, gnome3 }:
 
 stdenv.mkDerivation rec {
@@ -7,25 +7,18 @@ stdenv.mkDerivation rec {
 
   buildInputs = with gnome3; [
     dbus libgcrypt pam python gtk3 gconf libgnome_keyring
-    pango gcr gdk_pixbuf atk p11_kit makeWrapper
+    pango gcr gdk_pixbuf atk p11_kit
   ];
 
   propagatedBuildInputs = [ glib libtasn1 libxslt ];
 
-  nativeBuildInputs = [ pkgconfig intltool docbook_xsl_ns docbook_xsl ];
+  nativeBuildInputs = [ pkgconfig intltool docbook_xsl_ns docbook_xsl wrapGAppsHook ];
 
   configureFlags = [
     "--with-pkcs11-config=$$out/etc/pkcs11/" # installation directories
     "--with-pkcs11-modules=$$out/lib/pkcs11/"
   ];
 
-  preFixup = ''
-    wrapProgram "$out/bin/gnome-keyring" \
-      --prefix XDG_DATA_DIRS : "${glib.out}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
-    wrapProgram "$out/bin/gnome-keyring-daemon" \
-      --prefix XDG_DATA_DIRS : "${glib.out}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
-  '';
-
   meta = with stdenv.lib; {
     platforms = platforms.linux;
     maintainers = gnome3.maintainers;
diff --git a/pkgs/desktops/gnome-3/3.22/core/gnome-settings-daemon/default.nix b/pkgs/desktops/gnome-3/3.22/core/gnome-settings-daemon/default.nix
index 00999353c2f..ff5670935bd 100644
--- a/pkgs/desktops/gnome-3/3.22/core/gnome-settings-daemon/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/gnome-settings-daemon/default.nix
@@ -1,7 +1,7 @@
 { fetchurl, stdenv, pkgconfig, gnome3, intltool, glib, libnotify, lcms2, libXtst
 , libxkbfile, libpulseaudio, libcanberra_gtk3, upower, colord, libgweather, polkit
 , geoclue2, librsvg, xf86_input_wacom, udev, libgudev, libwacom, libxslt, libtool, networkmanager
-, docbook_xsl, docbook_xsl_ns, makeWrapper, ibus, xkeyboard_config }:
+, docbook_xsl, docbook_xsl_ns, wrapGAppsHook, ibus, xkeyboard_config }:
 
 stdenv.mkDerivation rec {
   inherit (import ./src.nix fetchurl) name src;
@@ -14,15 +14,7 @@ stdenv.mkDerivation rec {
       libnotify gnome_desktop lcms2 libXtst libxkbfile libpulseaudio
       libcanberra_gtk3 upower colord libgweather xkeyboard_config
       polkit geocode_glib geoclue2 librsvg xf86_input_wacom udev libgudev libwacom libxslt
-      libtool docbook_xsl docbook_xsl_ns makeWrapper gnome_themes_standard ];
-
-  # FIXME: glib binaries shouldn't be in .dev!
-  preFixup = ''
-    wrapProgram "$out/libexec/gnome-settings-daemon-localeexec" \
-      --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
-      --prefix PATH : "${glib.dev}/bin" \
-      --prefix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH"
-  '';
+      libtool docbook_xsl docbook_xsl_ns wrapGAppsHook gnome_themes_standard ];
 
   meta = with stdenv.lib; {
     platforms = platforms.linux;
diff --git a/pkgs/desktops/gnome-3/3.22/core/gtksourceview/default.nix b/pkgs/desktops/gnome-3/3.22/core/gtksourceview/default.nix
index aac1739a6e9..3dfbe6fbf0b 100644
--- a/pkgs/desktops/gnome-3/3.22/core/gtksourceview/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/gtksourceview/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   patches = [ ./nix_share_path.patch ];
 
   meta = with stdenv.lib; {
-    platforms = platforms.linux;
+    platforms = with platforms; linux ++ darwin;
     maintainers = gnome3.maintainers;
   };
 }
diff --git a/pkgs/desktops/gnome-3/3.22/misc/gitg/default.nix b/pkgs/desktops/gnome-3/3.22/misc/gitg/default.nix
index 8d9ee143ac2..b3646abd6dd 100644
--- a/pkgs/desktops/gnome-3/3.22/misc/gitg/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/misc/gitg/default.nix
@@ -20,12 +20,11 @@ stdenv.mkDerivation rec {
   propagatedUserEnvPkgs = [ shared_mime_info
                             gnome3.gnome_themes_standard ];
 
-  buildInputs = [ vala_0_32 intltool libgit2 pkgconfig gtk3 glib json_glib webkitgtk libgee libpeas
-                  libgit2-glib gtkspell3 gnome3.gsettings_desktop_schemas gnome3.gtksourceview
-                  librsvg libsecret dconf
-                  gobjectIntrospection gnome3.adwaita-icon-theme ];
+  buildInputs = [ vala_0_32 libgit2 gtk3 glib json_glib webkitgtk libgee libpeas
+                  libgit2-glib gtkspell3 gnome3.gtksourceview gnome3.gsettings_desktop_schemas
+                  librsvg libsecret gobjectIntrospection gnome3.adwaita-icon-theme ];
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook intltool pkgconfig ];
 
   # https://bugzilla.gnome.org/show_bug.cgi?id=758240
   preBuild = ''make -j$NIX_BUILD_CORES Gitg-1.0.gir'';
diff --git a/pkgs/desktops/gnome-3/3.22/misc/gitg/src.nix b/pkgs/desktops/gnome-3/3.22/misc/gitg/src.nix
index bc9e517aceb..5a78b8d0ca6 100644
--- a/pkgs/desktops/gnome-3/3.22/misc/gitg/src.nix
+++ b/pkgs/desktops/gnome-3/3.22/misc/gitg/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "gitg-3.22.0";
+  name = "gitg-3.23.90";
 
   src = fetchurl {
-    url = mirror://gnome/sources/gitg/3.22/gitg-3.22.0.tar.xz;
-    sha256 = "ba6895f85c18748294075980a5e03e0936ad4e84534dbb0d8f9e29aa874ddeaf";
+    url = mirror://gnome/sources/gitg/3.23/gitg-3.23.90.tar.xz;
+    sha256 = "0m3g8ag8nh6vj5m188l7sgkm7p8mrs094mjijqaaav3r6cz91fdg";
   };
 }
diff --git a/pkgs/desktops/gnome-3/3.22/misc/libgit2-glib/src.nix b/pkgs/desktops/gnome-3/3.22/misc/libgit2-glib/src.nix
index 6922a7aee1b..b9abde42cbd 100644
--- a/pkgs/desktops/gnome-3/3.22/misc/libgit2-glib/src.nix
+++ b/pkgs/desktops/gnome-3/3.22/misc/libgit2-glib/src.nix
@@ -1,12 +1,12 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: rec {
-  major = "0.24";
-  minor = "4";
+  major = "0.25";
+  minor = "0";
   name = "libgit2-glib-${major}.${minor}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/libgit2-glib/${major}/${name}.tar.xz";
-    sha256 = "0802qskm64l5ic8rvfjxg27chj502irhw1xkabrl4015dxsiy89s";
+    sha256 = "0rf5gcr3khp35wj9ax9cbyq5j3iiwa1l0fi16w6sfgmrryd6n9aa";
   };
 }
diff --git a/pkgs/desktops/mate/mate-icon-theme/default.nix b/pkgs/desktops/mate/mate-icon-theme/default.nix
index e41a1c21710..ce0366b3669 100644
--- a/pkgs/desktops/mate/mate-icon-theme/default.nix
+++ b/pkgs/desktops/mate/mate-icon-theme/default.nix
@@ -4,11 +4,11 @@ stdenv.mkDerivation rec {
   name = "mate-icon-theme-${version}";
   version = "${major-ver}.${minor-ver}";
   major-ver = "1.18";
-  minor-ver = "0";
+  minor-ver = "1";
 
   src = fetchurl {
     url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz";
-    sha256 = "19bd9zlfc1jfdl7imvfy1vq35a0jvxq5fldmr2c5bq0kyasvww6i";
+    sha256 = "1217nza3ilmy6x3b9i1b75lpq7lpvhs18s0c2n3j6zhxdqy61nlm";
   };
 
   nativeBuildInputs = [ pkgconfig intltool iconnamingutils ];
diff --git a/pkgs/desktops/mate/mate-themes/default.nix b/pkgs/desktops/mate/mate-themes/default.nix
index cf78009708b..0a8b37b4e01 100644
--- a/pkgs/desktops/mate/mate-themes/default.nix
+++ b/pkgs/desktops/mate/mate-themes/default.nix
@@ -6,15 +6,15 @@ stdenv.mkDerivation rec {
   version = "${major-ver}.${minor-ver}";
   major-ver = gnome3.version;
   minor-ver = {
-    "3.20" = "16";
-    "3.22" = "7";
+    "3.20" = "19";
+    "3.22" = "10";
   }."${major-ver}";
 
   src = fetchurl {
     url = "http://pub.mate-desktop.org/releases/themes/${major-ver}/${name}.tar.xz";
     sha256 = {
-      "3.20" = "1dvzljpq6cscr82gnsqagf23inb039q84fnawraj0nhfjif11r7v";
-      "3.22" = "1kjchqkds0zj32x7cjfcq96zakcmhva1yg0nxfd6369a5nwkp5k0";
+      "3.20" = "11b8g374dkjhbs7x7khpriabvkip4dmfkma5myzfv6m54qlj3b8g";
+      "3.22" = "03ficjfxa4qpx4vcshhk2zxryivckxpw7wcjgbn8xqnjk3lgzjcb";
     }."${major-ver}";
   };
 
diff --git a/pkgs/desktops/plasma-5/plasma-nm/0002-openvpn-binary-path.patch b/pkgs/desktops/plasma-5/plasma-nm/0002-openvpn-binary-path.patch
new file mode 100644
index 00000000000..3bc871f0906
--- /dev/null
+++ b/pkgs/desktops/plasma-5/plasma-nm/0002-openvpn-binary-path.patch
@@ -0,0 +1,13 @@
+diff --git a/vpn/openvpn/openvpnadvancedwidget.cpp b/vpn/openvpn/openvpnadvancedwidget.cpp
+index 2f11ba1d..310f11b4 100644
+--- a/vpn/openvpn/openvpnadvancedwidget.cpp
++++ b/vpn/openvpn/openvpnadvancedwidget.cpp
+@@ -75,7 +75,7 @@ OpenVpnAdvancedWidget::OpenVpnAdvancedWidget(const NetworkManager::VpnSetting::P
+     connect(m_ui->cmbProxyType, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), this, &OpenVpnAdvancedWidget::proxyTypeChanged);
+ 
+     // start openVPN process and get its cipher list
+-    const QString openVpnBinary = QStandardPaths::findExecutable("openvpn", QStringList() << "/sbin" << "/usr/sbin");
++    const QString openVpnBinary = "@openvpn@/bin/openvpn";
+     const QStringList ciphersArgs(QLatin1String("--show-ciphers"));
+     const QStringList versionArgs(QLatin1String("--version"));
+ 
diff --git a/pkgs/desktops/plasma-5/plasma-nm/default.nix b/pkgs/desktops/plasma-5/plasma-nm/default.nix
index da57653bb08..736d59b4041 100644
--- a/pkgs/desktops/plasma-5/plasma-nm/default.nix
+++ b/pkgs/desktops/plasma-5/plasma-nm/default.nix
@@ -4,7 +4,7 @@
 , knotifications, kservice, kwallet, kwidgetsaddons, kwindowsystem
 , kxmlgui, mobile_broadband_provider_info
 , modemmanager-qt, networkmanager-qt, openconnect, plasma-framework
-, qca-qt5, qtdeclarative, solid
+, qca-qt5, qtdeclarative, solid, openvpn
 }:
 
 plasmaPackage {
@@ -14,6 +14,10 @@ plasmaPackage {
       src = ./0001-mobile-broadband-provider-info-path.patch;
       inherit mobile_broadband_provider_info;
     })
+    (substituteAll {
+      src = ./0002-openvpn-binary-path.patch;
+      inherit openvpn;
+    })
   ];
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   propagatedBuildInputs = [
@@ -23,4 +27,5 @@ plasmaPackage {
     mobile_broadband_provider_info modemmanager-qt networkmanager-qt openconnect
     qca-qt5 solid
   ];
+  enableParallelBuilding = true;
 }
diff --git a/pkgs/desktops/xfce/art/xfwm4-themes.nix b/pkgs/desktops/xfce/art/xfwm4-themes.nix
new file mode 100644
index 00000000000..80cf7dd28c5
--- /dev/null
+++ b/pkgs/desktops/xfce/art/xfwm4-themes.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  p_name  = "xfwm4-themes";
+  ver_maj = "4.10";
+  ver_min = "0";
+
+  src = fetchurl {
+    url = "mirror://xfce/src/art/${p_name}/${ver_maj}/${name}.tar.bz2";
+    sha256 = "0xfmdykav4rf6gdxbd6fhmrfrvbdc1yjihz7r7lba0wp1vqda51j";
+  };
+  name = "${p_name}-${ver_maj}.${ver_min}";
+
+  meta = with stdenv.lib; {
+    homepage = http://www.xfce.org/;
+    description = "Themes for Xfce";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.volth ];
+  };
+}
diff --git a/pkgs/desktops/xfce/default.nix b/pkgs/desktops/xfce/default.nix
index 36ef85aeb12..c6ac8973404 100644
--- a/pkgs/desktops/xfce/default.nix
+++ b/pkgs/desktops/xfce/default.nix
@@ -73,6 +73,7 @@ xfce_self = rec { # the lines are very long but it seems better than the even-od
   #### ART                  from "mirror://xfce/src/art/${p_name}/${ver_maj}/${name}.tar.bz2"
 
   xfce4icontheme  = callPackage ./art/xfce4-icon-theme.nix { };
+  xfwm4themes     = callPackage ./art/xfwm4-themes.nix { };
 
   #### PANEL PLUGINS        from "mirror://xfce/src/panel-plugins/${p_name}/${ver_maj}/${name}.tar.{bz2,gz}"
 
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin.nix
index ffda5b94e07..92564c4eb68 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin.nix
@@ -4,7 +4,7 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   p_name  = "xfce4-whiskermenu-plugin";
-  version = "1.6.2";
+  version = "1.7.2";
 
   name = "${p_name}-${version}";
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     owner = "gottcode";
     repo = "xfce4-whiskermenu-plugin";
     rev = "v${version}";
-    sha256 = "0vfyav01hynjm7p73wwbwnn2l8l9a0hkz755wmjzr6qv06f9019d";
+    sha256 = "1rpazgnjp443abc31bgi6gp9q3sgbg13v7v74nn7vf6kl4v725ah";
   };
 
   nativeBuildInputs = [ cmake pkgconfig intltool ];
diff --git a/pkgs/development/beam-modules/build-rebar3.nix b/pkgs/development/beam-modules/build-rebar3.nix
index de2c6d40d40..224d111026a 100644
--- a/pkgs/development/beam-modules/build-rebar3.nix
+++ b/pkgs/development/beam-modules/build-rebar3.nix
@@ -1,5 +1,5 @@
 { stdenv, writeText, erlang, rebar3, openssl, libyaml,
-  pc, buildEnv, lib }:
+  pc, lib }:
 
 { name, version
 , src
diff --git a/pkgs/development/compilers/arm-frc-linux-gnueabi-gcc/default.nix b/pkgs/development/compilers/arm-frc-linux-gnueabi-gcc/default.nix
new file mode 100755
index 00000000000..6fa25df5e03
--- /dev/null
+++ b/pkgs/development/compilers/arm-frc-linux-gnueabi-gcc/default.nix
@@ -0,0 +1,98 @@
+{stdenv, fetchurl
+, arm-frc-linux-gnueabi-binutils, arm-frc-linux-gnueabi-eglibc, arm-frc-linux-gnueabi-linux-api-headers
+, elfutils
+, libmpc, gmp, mpfr, zlib, isl_0_15, cloog}:
+
+stdenv.mkDerivation rec {
+  _target = "arm-frc-linux-gnueabi";
+
+  version = "4.9.4";
+  name = "${_target}-gcc-${version}";
+
+  src = fetchurl {
+    url = "ftp://gcc.gnu.org/pub/gcc/releases/gcc-${version}/gcc-${version}.tar.bz2";
+    sha256 = "6c11d292cd01b294f9f84c9a59c230d80e9e4a47e5c6355f046bb36d4f358092";
+  };
+
+  patches = [
+    ./minorSOname.patch
+    ./no-nested-deprecated-warnings.patch
+  ];
+
+  hardeningDisable = [ "format" ];
+
+  buildInputs = [
+    arm-frc-linux-gnueabi-binutils
+    arm-frc-linux-gnueabi-eglibc
+    arm-frc-linux-gnueabi-linux-api-headers
+    elfutils
+    libmpc
+    gmp
+    mpfr
+    zlib
+    isl_0_15
+    cloog
+  ];
+
+
+  configurePhase = ''
+    mkdir gcc-build
+    cd gcc-build
+    ../configure \
+      --prefix=$out \
+      --host=$CHOST \
+      --build=$CHOST \
+      --program-prefix=${_target}- \
+      --target=${_target} \
+      --enable-shared \
+      --disable-nls \
+      --enable-threads=posix \
+      --enable-languages=c,c++ \
+      --disable-multilib \
+      --disable-multiarch \
+      --with-sysroot=${arm-frc-linux-gnueabi-eglibc}/${_target} \
+      --with-build-sysroot=${arm-frc-linux-gnueabi-eglibc}/${_target} \
+      --with-as=${arm-frc-linux-gnueabi-binutils}/${_target}/bin/as \
+      --with-ld=${arm-frc-linux-gnueabi-binutils}/${_target}/bin/ld \
+      --with-cpu=cortex-a9 \
+      --with-float=softfp \
+      --with-fpu=vfp \
+      --with-specs='%{save-temps:-fverbose-asm} %{funwind-tables|fno-unwind-tables|mabi=*|ffreestanding|nostdlib:;:-funwind-tables}' \
+      --enable-lto \
+      --with-pkgversion='GCC-for-FRC' \
+      --with-cloog \
+      --enable-poison-system-directories \
+      --enable-plugin \
+      --with-system-zlib \
+      --disable-libmudflap \
+      --disable-libsanitizer
+  '';
+
+  makeFlags = [
+    "all-gcc"
+    "all-target-libgcc"
+    "all-target-libstdc++-v3"
+  ];
+
+  installPhase = ''
+    make install-gcc install-target-libgcc install-target-libstdc++-v3
+  '';
+
+  postInstall = ''
+    rm -rf $out/share/{man/man7,info}/ "$out/share/gcc-${version}/python"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "FRC cross compiler";
+    longDescription = ''
+      arm-frc-linux-gnueabi-gcc is a cross compiler for building
+      code for FIRST Robotics Competition. Used as a cross compiler
+      for the NI RoboRio.
+    '';
+    license = licenses.gpl2;
+    maintainers = [ maintainers.colescott ];
+    platforms = platforms.linux;
+
+    priority = 4;
+  };
+}
diff --git a/pkgs/development/compilers/arm-frc-linux-gnueabi-gcc/minorSOname.patch b/pkgs/development/compilers/arm-frc-linux-gnueabi-gcc/minorSOname.patch
new file mode 100755
index 00000000000..d97d12bc629
--- /dev/null
+++ b/pkgs/development/compilers/arm-frc-linux-gnueabi-gcc/minorSOname.patch
@@ -0,0 +1,49 @@
+Description: Make the default SONAME include minor numbers (c++)

+ This patch adds .0.20 to the end of the SONAME for libstdc++ to support

+ independent side-by-side usage of .17 and .20.

+ .

+ gcc-armel (4.9.1-0frc2) trusty; urgency=low

+ .

+   * Fixing dependency ambiguity yet again...

+Author: Patrick Plenefisch <phplenefisch@wpi.edu>

+

+---

+

+--- gcc-armel-4.9.1.orig/libstdc++-v3/configure

++++ gcc-armel-4.9.1/libstdc++-v3/configure

+@@ -10698,7 +10698,7 @@ gnu*)

+   need_lib_prefix=no

+   need_version=no

+   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'

+-  soname_spec='${libname}${release}${shared_ext}$major'

++  soname_spec='${libname}${release}${shared_ext}$versuffix'

+   shlibpath_var=LD_LIBRARY_PATH

+   hardcode_into_libs=yes

+   ;;

+@@ -10824,7 +10824,7 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu)

+   need_lib_prefix=no

+   need_version=no

+   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'

+-  soname_spec='${libname}${release}${shared_ext}$major'

++  soname_spec='${libname}${release}${shared_ext}$versuffix'

+   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'

+   shlibpath_var=LD_LIBRARY_PATH

+   shlibpath_overrides_runpath=no

+@@ -14382,7 +14382,7 @@ gnu*)

+   need_lib_prefix=no

+   need_version=no

+   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'

+-  soname_spec='${libname}${release}${shared_ext}$major'

++  soname_spec='${libname}${release}${shared_ext}$versuffix'

+   shlibpath_var=LD_LIBRARY_PATH

+   hardcode_into_libs=yes

+   ;;

+@@ -14508,7 +14508,7 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu)

+   need_lib_prefix=no

+   need_version=no

+   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'

+-  soname_spec='${libname}${release}${shared_ext}$major'

++  soname_spec='${libname}${release}${shared_ext}$versuffix'

+   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'

+   shlibpath_var=LD_LIBRARY_PATH

+   shlibpath_overrides_runpath=no

diff --git a/pkgs/development/compilers/arm-frc-linux-gnueabi-gcc/no-nested-deprecated-warnings.patch b/pkgs/development/compilers/arm-frc-linux-gnueabi-gcc/no-nested-deprecated-warnings.patch
new file mode 100755
index 00000000000..050a63e92fd
--- /dev/null
+++ b/pkgs/development/compilers/arm-frc-linux-gnueabi-gcc/no-nested-deprecated-warnings.patch
@@ -0,0 +1,22 @@
+Description: Get rid of recursive deprecated warnings.

+ As is, gcc gives warnings when a function with the

+ deprecated attribute calls another function with

+ the deprecated attribute.

+ See http://stackoverflow.com/questions/13459602/how-can-i-get-rid-of-deprecated-warnings-in-deprecated-functions-in-gcc

+

+Author: James Kuszmaul <jbkuszmaul@wpi.edu>

+

+--

+

+--- gcc-armel-4.9.1.orig/gcc/tree.c

++++ gcc-armel-4.9.1/gcc/tree.c

+@@ -12063,6 +12063,9 @@ warn_deprecated_use (tree node, tree attr)

+   if (node == 0 || !warn_deprecated_decl)

+     return;

+

++  if (current_function_decl && TREE_DEPRECATED(current_function_decl))

++    return;

++

+   if (!attr)

+     {

+       if (DECL_P (node))

diff --git a/pkgs/development/compilers/cmucl/binary.nix b/pkgs/development/compilers/cmucl/binary.nix
index 63290735f41..2833c5378c1 100644
--- a/pkgs/development/compilers/cmucl/binary.nix
+++ b/pkgs/development/compilers/cmucl/binary.nix
@@ -2,7 +2,7 @@
 
 let
   inherit (stdenv) system;
-  version = "21a";
+  version = "21b";
   downloadUrl = arch:
     "http://common-lisp.net/project/cmucl/downloads/release/" +
     "${version}/cmucl-${version}-${arch}.tar.bz2";
@@ -13,7 +13,7 @@ let
   dist =
     if system == "i686-linux" then fetchDist {
         arch = "x86-linux";
-        sha256 = "0w8dcaiasfd4fbj340zaf6wcjfgc4wzkvr24gbxa5rr3aw10rl02";
+        sha256 = "13k3b5ygnbsq6n2i3r5i4ljw3r1qlskn2p5f4x9hrx6vfvbb3k7a";
       }
     else throw "Unsupported platform for cmucl.";
 in
diff --git a/pkgs/development/compilers/dale/default.nix b/pkgs/development/compilers/dale/default.nix
new file mode 100644
index 00000000000..358bb060e48
--- /dev/null
+++ b/pkgs/development/compilers/dale/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchFromGitHub, cmake, libffi, llvm_35, perl }:
+
+let version = "20170419";
+    doCheck = false;
+in stdenv.mkDerivation {
+  name = "dale-${version}";
+
+  src = fetchFromGitHub {
+    owner = "tomhrr";
+    repo = "dale";
+    rev = "64e072d0520a134b9ae8038104fa977776b6e0af";
+    sha256 = "1apvq3v6ra8x0sj8gg9yavqsyxiggh2wnh1zbw2ccpg723bssl4a";
+  };
+
+  buildInputs = [ cmake libffi llvm_35 ] ++
+                stdenv.lib.optional doCheck perl;
+
+  inherit doCheck;
+
+  checkTarget = "tests";
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Lisp-flavoured C";
+    longDescription = ''
+      Dale is a system (no GC) programming language that uses
+      S-expressions for syntax and supports syntactic macros.
+    '';
+    homepage = "https://github.com/tomhrr/dale";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ amiloradovsky ];
+    platforms = with platforms; [ "i686-linux" "x86_64-linux" ];
+    # failed on Darwin: linker couldn't find the FFI lib
+    # failed on AArch64: because LLVM 3.5 is failed there
+  };
+}
diff --git a/pkgs/development/compilers/dtc/default.nix b/pkgs/development/compilers/dtc/default.nix
index ac7a275d66a..e8c36dc7a03 100644
--- a/pkgs/development/compilers/dtc/default.nix
+++ b/pkgs/development/compilers/dtc/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "dtc-${version}";
-  version = "1.4.2";
+  version = "1.4.4";
 
   src = fetchgit {
     url = "git://git.kernel.org/pub/scm/utils/dtc/dtc.git";
     rev = "refs/tags/v${version}";
-    sha256 = "0pwhbw930pnksrmkimqqwp4nqj9mmh06bs5b8p5l2cnhnh8lxn3j";
+    sha256 = "1pxp7700b3za7q4fnsnxx6i8v66rnr8p6lyi7jf684y1hq5ynlnf";
   };
 
   nativeBuildInputs = [ flex bison ];
diff --git a/pkgs/development/compilers/elm/packages/elm-format.nix b/pkgs/development/compilers/elm/packages/elm-format.nix
index 48eafff6f72..6fb36d7cbfb 100644
--- a/pkgs/development/compilers/elm/packages/elm-format.nix
+++ b/pkgs/development/compilers/elm/packages/elm-format.nix
@@ -29,6 +29,9 @@ mkDerivation {
     tasty-hunit tasty-quickcheck text union-find wl-pprint
   ];
   jailbreak = true;
+  postInstall = ''
+    ln -s $out/bin/elm-format-0.18 $out/bin/elm-format
+  '';
   homepage = "http://elm-lang.org";
   description = "A source code formatter for Elm";
   license = stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/compilers/emscripten-fastcomp/default.nix b/pkgs/development/compilers/emscripten-fastcomp/default.nix
index b5d2ba66e75..d3d7561ddfb 100644
--- a/pkgs/development/compilers/emscripten-fastcomp/default.nix
+++ b/pkgs/development/compilers/emscripten-fastcomp/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, cmake, python, ... }:
 
 let
-  rev = "1.37.3";
+  rev = "1.37.9";
   gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc;
 in
 stdenv.mkDerivation rec {
@@ -10,14 +10,14 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "kripken";
     repo = "emscripten-fastcomp";
-    sha256 = "0s5156g6576hm31628c2wbqwl9r6vn10z5ry59psl565zz3lpg8x";
+    sha256 = "0dvay98hlajhwgl5s58sh8s79i4nbcl3gajssgzimk0id8fa0ifx";
     inherit rev;
   };
 
   srcFL = fetchFromGitHub {
     owner = "kripken";
     repo = "emscripten-fastcomp-clang";
-    sha256 = "0jhk20wb7275n5m9niqkzmvrr8hh5v26glkmsfmng4p66cs7jkil";
+    sha256 = "1ilrb6p3vybjz0hj8hc80hpm0y01794v488dywwj81khhqahnhcv";
     inherit rev;
   };
 
diff --git a/pkgs/development/compilers/emscripten/default.nix b/pkgs/development/compilers/emscripten/default.nix
index 05df6e9359a..351e045b50a 100644
--- a/pkgs/development/compilers/emscripten/default.nix
+++ b/pkgs/development/compilers/emscripten/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, emscriptenfastcomp, python, nodejs, closurecompiler, jre }:
 
 let
-  rev = "1.37.3";
+  rev = "1.37.9";
   appdir = "share/emscripten";
 in
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
   src = fetchFromGitHub {
     owner = "kripken";
     repo = "emscripten";
-    sha256 = "0pkxm8nd2zv57f2xm0c3n4xsdh2scliyy3zx04xk2bpkvskyzl7x";
+    sha256 = "0dmvhw4j9bdqbdknz7ibg2fwzynw4w8ksnj8rkswdmp660889krp";
     inherit rev;
   };
 
diff --git a/pkgs/development/compilers/fsharp41/default.nix b/pkgs/development/compilers/fsharp41/default.nix
new file mode 100644
index 00000000000..35e6749659e
--- /dev/null
+++ b/pkgs/development/compilers/fsharp41/default.nix
@@ -0,0 +1,87 @@
+# Temporaririly avoid dependency on dotnetbuildhelpers to avoid rebuilding many times while working on it
+
+{ stdenv, fetchurl, pkgconfig, autoconf, automake, which, mono, dotnetbuildhelpers, dotnetPackages }:
+
+stdenv.mkDerivation rec {
+  name = "fsharp-${version}";
+  version = "4.1.7";
+
+  src = fetchurl {
+    url = "https://github.com/fsharp/fsharp/archive/${version}.tar.gz";
+    sha256 = "0rfkrk4mzi4w54mfqilvng9ar5swhmnwhsyjc54rx3fd0np3jiyl";
+  };
+
+  buildInputs = [
+    pkgconfig
+    autoconf
+    automake
+    which
+    mono
+    dotnetbuildhelpers
+    dotnetPackages.FsCheck262
+    dotnetPackages.FSharpCompilerTools
+    dotnetPackages.FSharpCore
+    dotnetPackages.FSharpData225
+    dotnetPackages.FsLexYacc704
+    dotnetPackages.MicrosoftDiaSymReader
+    dotnetPackages.MicrosoftDiaSymReaderPortablePdb
+    dotnetPackages.NUnit350
+    dotnetPackages.SystemCollectionsImmutable131
+    dotnetPackages.SystemReflectionMetadata
+    dotnetPackages.SystemValueTuple
+  ];
+
+  configurePhase = ''
+    substituteInPlace ./autogen.sh --replace "/usr/bin/env sh" "/bin/sh"
+    ./autogen.sh --prefix $out
+  '';
+
+  preBuild = ''
+    substituteInPlace Makefile --replace "MONO_ENV_OPTIONS=\$(monoopts) mono .nuget/NuGet.exe restore packages.config -PackagesDirectory packages -ConfigFile .nuget/NuGet.Config" "true"
+    substituteInPlace src/fsharp/Fsc-proto/Fsc-proto.fsproj --replace "<FSharpCoreOptSigFiles Include=\"\$(FSharpCoreLkgPath)\\FSharp.Core.dll\" />" ""
+    substituteInPlace src/fsharp/Fsc-proto/Fsc-proto.fsproj --replace "<FSharpCoreOptSigFiles Include=\"\$(FSharpCoreLkgPath)\\FSharp.Core.optdata\" />" ""
+    substituteInPlace src/fsharp/Fsc-proto/Fsc-proto.fsproj --replace "<FSharpCoreOptSigFiles Include=\"\$(FSharpCoreLkgPath)\\FSharp.Core.sigdata\" />" ""
+    substituteInPlace src/fsharp/Fsc-proto/Fsc-proto.fsproj --replace "<FSharpCoreOptSigFiles Include=\"\$(FSharpCoreLkgPath)\\FSharp.Core.xml\" />" ""
+
+    rm -rf packages
+    mkdir packages
+
+    ln -s ${dotnetPackages.FsCheck262}/lib/dotnet/FsCheck packages/FsCheck.2.6.2
+    ln -s ${dotnetPackages.FSharpCompilerTools}/lib/dotnet/FSharp.Compiler.Tools packages/FSharp.Compiler.Tools.4.1.4
+    ln -s ${dotnetPackages.FSharpCore}/lib/dotnet/FSharp.Core/ packages/FSharp.Core.4.0.0.1
+    ln -s ${dotnetPackages.FSharpData225}/lib/dotnet/FSharp.Data/ packages/FSharp.Data.2.2.5
+    ln -s ${dotnetPackages.FsLexYacc704}/lib/dotnet/FsLexYacc/ packages/FsLexYacc.7.0.4
+    ln -s ${dotnetPackages.MicrosoftDiaSymReader}/lib/dotnet/Microsoft.DiaSymReader/ packages/Microsoft.DiaSymReader.1.1.0
+    ln -s ${dotnetPackages.MicrosoftDiaSymReaderPortablePdb}/lib/dotnet/Microsoft.DiaSymReader.PortablePdb/ packages/Microsoft.DiaSymReader.PortablePdb.1.2.0
+    ln -s ${dotnetPackages.NUnit350}/lib/dotnet/NUnit/ packages/NUnit.3.5.0
+    ln -s ${dotnetPackages.SystemCollectionsImmutable131}/lib/dotnet/System.Collections.Immutable/ packages/System.Collections.Immutable.1.3.1
+    ln -s ${dotnetPackages.SystemReflectionMetadata}/lib/dotnet/System.Reflection.Metadata/ packages/System.Reflection.Metadata.1.4.2
+    ln -s ${dotnetPackages.SystemValueTuple}/lib/dotnet/System.ValueTuple/ packages/System.ValueTuple.4.3.0
+  '';
+
+  # Make sure the executables use the right mono binary,
+  # and set up some symlinks for backwards compatibility.
+  postInstall = ''
+    substituteInPlace $out/bin/fsharpc --replace " mono " " ${mono}/bin/mono "
+    substituteInPlace $out/bin/fsharpi --replace " mono " " ${mono}/bin/mono "
+    substituteInPlace $out/bin/fsharpiAnyCpu --replace " mono " " ${mono}/bin/mono "
+    ln -s $out/bin/fsharpc $out/bin/fsc
+    ln -s $out/bin/fsharpi $out/bin/fsi
+    for dll in "$out/lib/mono/fsharp"/FSharp*.dll
+    do
+      create-pkg-config-for-dll.sh "$out/lib/pkgconfig" "$dll"
+    done
+  '';
+
+  # To fix this error when running:
+  # The file "/nix/store/path/whatever.exe" is an not a valid CIL image
+  dontStrip = true;
+
+  meta = {
+    description = "A functional CLI language";
+    homepage = "http://fsharp.org/";
+    license = stdenv.lib.licenses.asl20;
+    maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin ];
+    platforms = with stdenv.lib.platforms; unix;
+  };
+}
diff --git a/pkgs/development/compilers/gcc/6/darwin-const-correct.patch b/pkgs/development/compilers/gcc/6/darwin-const-correct.patch
new file mode 100644
index 00000000000..a9b9b85acab
--- /dev/null
+++ b/pkgs/development/compilers/gcc/6/darwin-const-correct.patch
@@ -0,0 +1,25 @@
+From 5972cd58bde3bc8bacfe994e5b127c411241f255 Mon Sep 17 00:00:00 2001
+From: law <law@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Tue, 3 Jan 2017 05:36:40 +0000
+Subject: [PATCH] 	* config/darwin-driver.c (darwin_driver_init):
+ Const-correctness 	fixes for first_period and second_period variables.
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244010 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+diff --git a/gcc/config/darwin-driver.c b/gcc/config/darwin-driver.c
+index 0c4f0cd..e3ed79d 100644
+--- a/gcc/config/darwin-driver.c
++++ b/gcc/config/darwin-driver.c
+@@ -299,10 +299,10 @@ darwin_driver_init (unsigned int *decoded_options_count,
+   if (vers_string != NULL)
+     {
+       char *asm_major = NULL;
+-      char *first_period = strchr(vers_string, '.');
++      const char *first_period = strchr(vers_string, '.');
+       if (first_period != NULL)
+ 	{
+-	  char *second_period = strchr(first_period+1, '.');
++	  const char *second_period = strchr(first_period+1, '.');
+ 	  if (second_period  != NULL)
+ 	    asm_major = xstrndup (vers_string, second_period-vers_string);
+ 	  else
diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix
index c6fac16a76c..b4e588f6b14 100644
--- a/pkgs/development/compilers/gcc/6/default.nix
+++ b/pkgs/development/compilers/gcc/6/default.nix
@@ -73,7 +73,8 @@ let version = "6.3.0";
       # The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its
       # target libraries and tools.
       ++ optional langAda ../gnat-cflags.patch
-      ++ optional langFortran ../gfortran-driving.patch;
+      ++ optional langFortran ../gfortran-driving.patch
+      ++ optional stdenv.isDarwin ./darwin-const-correct.patch; # Kill this after 6.3.0
 
     javaEcj = fetchurl {
       # The `$(top_srcdir)/ecj.jar' file is automatically picked up at
diff --git a/pkgs/development/compilers/gcc/snapshot/default.nix b/pkgs/development/compilers/gcc/snapshot/default.nix
index 81bed7119ea..12eb8b3a542 100644
--- a/pkgs/development/compilers/gcc/snapshot/default.nix
+++ b/pkgs/development/compilers/gcc/snapshot/default.nix
@@ -60,7 +60,7 @@ assert langGo -> langCC;
 with stdenv.lib;
 with builtins;
 
-let version = "7-20161211";
+let version = "7-20170409";
 
     # Whether building a cross-compiler for GNU/Hurd.
     crossGNU = cross != null && cross.config == "i586-pc-gnu";
@@ -217,7 +217,7 @@ stdenv.mkDerivation ({
 
   src = fetchurl {
     url = "mirror://gcc/snapshots/${version}/gcc-${version}.tar.bz2";
-    sha256 = "114rrrm5d5cawmr3161d2wgjlzkb9l1imj1p7fnypwz7y85l1661";
+    sha256 = "19197rw1xrpkb8h10lfgn6zj7yj52x95hdmr0x5lg8i4v3i23b67";
   };
 
   inherit patches;
diff --git a/pkgs/development/compilers/ghcjs/base.nix b/pkgs/development/compilers/ghcjs/base.nix
index ac9419d662e..ab68a8fe3b5 100644
--- a/pkgs/development/compilers/ghcjs/base.nix
+++ b/pkgs/development/compilers/ghcjs/base.nix
@@ -19,7 +19,6 @@
 , executable-path
 , transformers-compat
 , haddock-api
-, ghcjs-prim
 , regex-posix
 , callPackage
 
@@ -122,7 +121,7 @@ in mkDerivation (rec {
     alex happy git gnumake autoconf automake libtool patch gmp
     base16-bytestring cryptohash executable-path haddock-api
     transformers-compat QuickCheck haddock hspec xhtml
-    ghcjs-prim regex-posix libiconv
+    regex-posix libiconv
   ];
   buildTools = [ nodejs git ];
   testDepends = [
diff --git a/pkgs/development/compilers/ghcjs/head.nix b/pkgs/development/compilers/ghcjs/head.nix
index e045dc67a50..591660f5c34 100644
--- a/pkgs/development/compilers/ghcjs/head.nix
+++ b/pkgs/development/compilers/ghcjs/head.nix
@@ -3,8 +3,6 @@
 bootPkgs.callPackage ./base.nix {
   version = "0.2.020170323";
 
-  # deprecated on HEAD, directly included in the distribution
-  ghcjs-prim = null;
   inherit bootPkgs;
 
   ghcjsSrc = fetchFromGitHub {
diff --git a/pkgs/development/compilers/ghcjs/stage2.nix b/pkgs/development/compilers/ghcjs/stage2.nix
index b88051113b5..8c68b6f15a6 100644
--- a/pkgs/development/compilers/ghcjs/stage2.nix
+++ b/pkgs/development/compilers/ghcjs/stage2.nix
@@ -327,7 +327,6 @@
         version = "1.22.8.0";
         src = "${ghcjsBoot}/boot/cabal/Cabal";
         doCheck = false;
-        hyperlinkSource = false;
         libraryHaskellDepends = [
           array base binary bytestring containers deepseq directory filepath
           pretty process time unix
diff --git a/pkgs/development/compilers/glslang/default.nix b/pkgs/development/compilers/glslang/default.nix
index d2384598456..20e156a72e4 100644
--- a/pkgs/development/compilers/glslang/default.nix
+++ b/pkgs/development/compilers/glslang/default.nix
@@ -2,19 +2,17 @@
 
 stdenv.mkDerivation rec {
   name = "glslang-git-${version}";
-  version = "2016-12-21";
+  version = "2017-03-29";
 
   # `vulkan-loader` requires a specific version of `glslang` as specified in
-  # `<vulkan-loader-repo>/glslang_revision`.
+  # `<vulkan-loader-repo>/external_revisions/glslang_revision`.
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "glslang";
-    rev = "807a0d9e2f4e176f75d62ac3c179c81800ec2608";
-    sha256 = "02jckgihqhagm73glipb4c6ri5fr3pnbxb5vrznn2vppyfdfghbj";
+    rev = "714e58b2fc5a45714596e6aa2f6ac8f64260365c";
+    sha256 = "0ihnd0c4mr6ppbv9g7z1abrn8vx66simfzx5q48nqcpnywn35jxv";
   };
 
-  patches = [ ./install-headers.patch ];
-
   buildInputs = [ cmake bison ];
   enableParallelBuilding = true;
 
@@ -23,5 +21,6 @@ stdenv.mkDerivation rec {
     description = "Khronos reference front-end for GLSL and ESSL";
     license = licenses.asl20;
     platforms = platforms.linux;
+    maintainers = [ maintainers.ralith ];
   };
 }
diff --git a/pkgs/development/compilers/glslang/install-headers.patch b/pkgs/development/compilers/glslang/install-headers.patch
deleted file mode 100644
index 75f27130978..00000000000
--- a/pkgs/development/compilers/glslang/install-headers.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-diff --git a/SPIRV/CMakeLists.txt b/SPIRV/CMakeLists.txt
-index c538e84..6ece1ab 100755
---- a/SPIRV/CMakeLists.txt
-+++ b/SPIRV/CMakeLists.txt
-@@ -34,8 +34,9 @@ if(ENABLE_AMD_EXTENSIONS)
- endif(ENABLE_AMD_EXTENSIONS)
- 
- if(ENABLE_NV_EXTENSIONS)
--    set(HEADERS
--        GLSL.ext.NV.h)
-+    list(APPEND
-+         HEADERS
-+         GLSL.ext.NV.h)
- endif(ENABLE_NV_EXTENSIONS)
- 
- add_library(SPIRV STATIC ${SOURCES} ${HEADERS})
-@@ -51,3 +52,5 @@ endif(WIN32)
- 
- install(TARGETS SPIRV SPVRemapper
-         ARCHIVE DESTINATION lib)
-+
-+install(FILES ${HEADERS} ${SPVREMAP_HEADERS} DESTINATION include/SPIRV/)
-diff --git a/glslang/CMakeLists.txt b/glslang/CMakeLists.txt
-index 95d4bdd..e7fda90 100644
---- a/glslang/CMakeLists.txt
-+++ b/glslang/CMakeLists.txt
-@@ -93,3 +93,8 @@ endif(WIN32)
- 
- install(TARGETS glslang 
-         ARCHIVE DESTINATION lib)
-+
-+foreach(file ${HEADERS})
-+    get_filename_component(dir ${file} DIRECTORY)
-+    install(FILES ${file} DESTINATION include/glslang/${dir})
-+endforeach()
diff --git a/pkgs/development/compilers/halvm/2.4.0.nix b/pkgs/development/compilers/halvm/2.4.0.nix
index c167f4bdd75..740752e1584 100644
--- a/pkgs/development/compilers/halvm/2.4.0.nix
+++ b/pkgs/development/compilers/halvm/2.4.0.nix
@@ -6,15 +6,16 @@ stdenv.mkDerivation rec {
   version = "2.4.0";
   name = "HaLVM-${version}";
   isHaLVM = true;
+  enableParallelBuilding = false;
   isGhcjs = false;
   src = fetchgit {
-    rev = "6aa72c9b047fd8ddff857c994a5a895461fc3925";
+    rev = "65fad65966eb7e60f234453a35aeb564a09d2595";
     url = "https://github.com/GaloisInc/HaLVM";
-    sha256 = "05cg4w6fw5ajmpmh8g2msprnygmr4isb3pphqhlddfqwyvqhl167";
+    sha256 = "09633h38w0z20cz0wcfp9z5kzv8v1zwcv0wqvgq3c8svqbrxp28k";
   };
   prePatch = ''
-    sed -i '312 d' Makefile
-    sed -i '316,446 d' Makefile # Removes RPM packaging
+    sed -i '305 d' Makefile
+    sed -i '309,439 d' Makefile # Removes RPM packaging
     sed -i '20 d' src/scripts/halvm-cabal.in
     sed -ie 's|ld |${binutils}/bin/ld |g' src/scripts/ldkernel.in
   '';
@@ -44,5 +45,6 @@ stdenv.mkDerivation rec {
     description = "The Haskell Lightweight Virtual Machine (HaLVM): GHC running on Xen";
     maintainers = with stdenv.lib.maintainers; [ dmjio ];
     inherit (bootPkgs.ghc.meta) license platforms;
+    broken = true;  # http://hydra.nixos.org/build/51814615
   };
 }
diff --git a/pkgs/development/compilers/llvm/4/default.nix b/pkgs/development/compilers/llvm/4/default.nix
index 999ff858d02..4be621adb5c 100644
--- a/pkgs/development/compilers/llvm/4/default.nix
+++ b/pkgs/development/compilers/llvm/4/default.nix
@@ -1,6 +1,6 @@
-{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC, darwin, ccWrapperFun }:
+{ newScope, stdenv, cmake, libxml2, python2, isl, fetchurl, overrideCC, wrapCC, darwin, ccWrapperFun }:
 let
-  callPackage = newScope (self // { inherit stdenv isl release_version version fetch; });
+  callPackage = newScope (self // { inherit stdenv cmake libxml2 python2 isl release_version version fetch; });
 
   release_version = "4.0.0";
   version = release_version; # differentiating these is important for rc's
diff --git a/pkgs/development/compilers/ocaml/4.04.nix b/pkgs/development/compilers/ocaml/4.04.nix
index 1ded1aed232..a63034d700d 100644
--- a/pkgs/development/compilers/ocaml/4.04.nix
+++ b/pkgs/development/compilers/ocaml/4.04.nix
@@ -1,8 +1,8 @@
 import ./generic.nix {
   major_version = "4";
   minor_version = "04";
-  patch_version = "0";
-  sha256 = "1d2nk3kq4dyzz8dls45r13jprq5by3q8kshc8kvxzm8n4fnnvvb4";
+  patch_version = "1";
+  sha256 = "11f2kcldpad9h5ihi1crad5lvv2501iccb2g4c8m197fnjac8b12";
 
   # If the executable is stipped it does not work
   dontStrip = true;
diff --git a/pkgs/development/compilers/openjdk/8.nix b/pkgs/development/compilers/openjdk/8.nix
index 6eb8f67b5f5..7ddf2c7ef5d 100644
--- a/pkgs/development/compilers/openjdk/8.nix
+++ b/pkgs/development/compilers/openjdk/8.nix
@@ -21,42 +21,42 @@ let
     else
       throw "openjdk requires i686-linux or x86_64 linux";
 
-  update = "121";
-  build = "13";
+  update = "131";
+  build = "11";
   baseurl = "http://hg.openjdk.java.net/jdk8u/jdk8u";
   repover = "jdk8u${update}-b${build}";
   paxflags = if stdenv.isi686 then "msp" else "m";
   jdk8 = fetchurl {
              url = "${baseurl}/archive/${repover}.tar.gz";
-             sha256 = "1ns0lnl5n05k1kgp8d6fyyk6gx57sx7rmlcc33d3vxhr58560nbv";
+             sha256 = "1k401wsickbdy50yxjd26v8qm9519kxayaj3b103cr6ygp2rd9s6";
           };
   langtools = fetchurl {
              url = "${baseurl}/langtools/archive/${repover}.tar.gz";
-             sha256 = "0vj5mnqw80r4xqlmiab7wbrkhz3rl8ijhwqplkbs42wad75lvnh8";
+             sha256 = "1qj75bb17a9czvxz7rm246w97cavglrssx0l1mkbickx0i0wamm8";
           };
   hotspot = fetchurl {
              url = "${baseurl}/hotspot/archive/${repover}.tar.gz";
-             sha256 = "0mcjjc34jvckg1f1x9v7gik3h5y4kx7skkfgzhknh14637jzb2hs";
+             sha256 = "0kh8rk5y3n4g3hyjzflc8nwc0kyakjivpwlpj1bncsm1sykw8lr8";
           };
   corba = fetchurl {
              url = "${baseurl}/corba/archive/${repover}.tar.gz";
-             sha256 = "0bxf1mrpmxgjmg40yi3ww7lh22f6h0nrvlvf5jwwzf4hb3a3998g";
+             sha256 = "0gqa58mwwyf6mbgp48j1akv1y8yq55zpwfziqrbdbpkcsaf603n7";
           };
   jdk = fetchurl {
              url = "${baseurl}/jdk/archive/${repover}.tar.gz";
-             sha256 = "10f641ngwiqr2z6hbz0xkyfh8h3z7kdxj5b1d30rgynzghf5wksr";
+             sha256 = "0ymvvi7srr9qkss20s1yg3x2mjw178bscrnxa6s8y82gsw02y820";
           };
   jaxws = fetchurl {
              url = "${baseurl}/jaxws/archive/${repover}.tar.gz";
-             sha256 = "1bgjpivlxi0qlmhvz838zzkzz26d4ly8b0c963kx0lpabz8p99xi";
+             sha256 = "0507mxvir4s536pdz45pvmahwa6s3h2yhg6rwdzrb568ab06asmi";
           };
   jaxp = fetchurl {
              url = "${baseurl}/jaxp/archive/${repover}.tar.gz";
-             sha256 = "17bcb5ic1ifk5rda1dzjd1483k9mah5npjg5dg77iyziq8kprvri";
+             sha256 = "0igbg8axk028kqs9q11m8hb5bg2fa0qcwffbpfbhilyw5gmf7cy8";
           };
   nashorn = fetchurl {
              url = "${baseurl}/nashorn/archive/${repover}.tar.gz";
-             sha256 = "19fmlipqk9qiv7jc84b0z022q403nyp7b32a5qqqcn6aavdqnf7c";
+             sha256 = "0l63zm5a7ql3xvfxy5kzazq2184mpx0zyqzinjmq7v0q573g8xak";
           };
   openjdk8 = stdenv.mkDerivation {
     name = "openjdk-8u${update}b${build}";
diff --git a/pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix b/pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix
index 2f16acb51d9..8e93f76ff18 100644
--- a/pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix
+++ b/pkgs/development/compilers/oraclejdk/jdk8cpu-linux.nix
@@ -1,9 +1,9 @@
 import ./jdk-linux-base.nix {
   productVersion = "8";
-  patchVersion = "121";
+  patchVersion = "131";
   downloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html;
-  sha256_i686 = "0k1xyg000qmd96c2r2m8l84ygn6dmjf1ih5yjzq1zry5d0aczmpp";
-  sha256_x86_64 = "1g0hh9ccmsrdfa9493k31v2vd6yiymwd1nclgjh29wxfy41h5qwp";
+  sha256_i686 = "0m3i1n1im1nlwb06wlsdajv19cd3zhrjkw8zbyjfznydn6qs4s80";
+  sha256_x86_64 = "0dhj623ya01glcl3iir9ajifcrf6awhvpk936x9cxfj8zfyibck2";
   jceName = "jce_policy-8.zip";
   jceDownloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html;
   sha256JCE = "0n8b6b8qmwb14lllk2lk1q1ahd3za9fnjigz5xn65mpg48whl0pk";
diff --git a/pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix b/pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix
index 2f16acb51d9..8e93f76ff18 100644
--- a/pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix
+++ b/pkgs/development/compilers/oraclejdk/jdk8psu-linux.nix
@@ -1,9 +1,9 @@
 import ./jdk-linux-base.nix {
   productVersion = "8";
-  patchVersion = "121";
+  patchVersion = "131";
   downloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html;
-  sha256_i686 = "0k1xyg000qmd96c2r2m8l84ygn6dmjf1ih5yjzq1zry5d0aczmpp";
-  sha256_x86_64 = "1g0hh9ccmsrdfa9493k31v2vd6yiymwd1nclgjh29wxfy41h5qwp";
+  sha256_i686 = "0m3i1n1im1nlwb06wlsdajv19cd3zhrjkw8zbyjfznydn6qs4s80";
+  sha256_x86_64 = "0dhj623ya01glcl3iir9ajifcrf6awhvpk936x9cxfj8zfyibck2";
   jceName = "jce_policy-8.zip";
   jceDownloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html;
   sha256JCE = "0n8b6b8qmwb14lllk2lk1q1ahd3za9fnjigz5xn65mpg48whl0pk";
diff --git a/pkgs/development/compilers/ponyc/default.nix b/pkgs/development/compilers/ponyc/default.nix
index 6cd407374db..5655cf61a0b 100644
--- a/pkgs/development/compilers/ponyc/default.nix
+++ b/pkgs/development/compilers/ponyc/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation ( rec {
   name = "ponyc-${version}";
-  version = "0.12.2";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     owner = "ponylang";
     repo = "ponyc";
     rev = version;
-    sha256 = "1gp92fwfq9ic43c525p0idap99jq5fkjbijf0s8bxif3kng7rxbp";
+    sha256 = "1agb7aiii7pl8zsh3h0lfzghmm1ajj15gx1j48xjyvplxixdgn9j";
   };
 
   buildInputs = [ llvm makeWrapper which ];
diff --git a/pkgs/development/compilers/purescript/psc-package/default.nix b/pkgs/development/compilers/purescript/psc-package/default.nix
new file mode 100644
index 00000000000..70ef8b63277
--- /dev/null
+++ b/pkgs/development/compilers/purescript/psc-package/default.nix
@@ -0,0 +1,26 @@
+{ haskellPackages, mkDerivation, fetchFromGitHub, lib }:
+
+with lib;
+
+mkDerivation rec {
+  pname = "psc-package";
+  version = "0.1.1";
+
+  src = fetchFromGitHub {
+    owner = "purescript";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "078xjn10yq4i0ff78bxscvxhn29p3s7iwv3pjyqxzlhaymn5949l";
+  };
+
+  isLibrary = false;
+  isExecutable = true;
+
+  executableHaskellDepends = with haskellPackages; [
+    aeson aeson-pretty optparse-applicative system-filepath turtle
+  ];
+
+  description = "An experimental package manager for PureScript";
+  license = licenses.bsd3;
+  maintainers = with lib.maintainers; [ profpatsch ];
+}
diff --git a/pkgs/development/compilers/rust/cargo.nix b/pkgs/development/compilers/rust/cargo.nix
index f0d7e0dabc2..2d4d6ad4db1 100644
--- a/pkgs/development/compilers/rust/cargo.nix
+++ b/pkgs/development/compilers/rust/cargo.nix
@@ -24,12 +24,6 @@ rustPlatform.buildRustPackage rec {
   LIBGIT2_SYS_USE_PKG_CONFIG=1;
 
   postInstall = ''
-    rm "$out/lib/rustlib/components" \
-       "$out/lib/rustlib/install.log" \
-       "$out/lib/rustlib/rust-installer-version" \
-       "$out/lib/rustlib/uninstall.sh" \
-       "$out/lib/rustlib/manifest-cargo"
-
     # NOTE: We override the `http.cainfo` option usually specified in
     # `.cargo/config`. This is an issue when users want to specify
     # their own certificate chain as environment variables take
diff --git a/pkgs/development/compilers/sbcl/1.2.5.nix b/pkgs/development/compilers/sbcl/1.2.5.nix
deleted file mode 100644
index 4f854652ffe..00000000000
--- a/pkgs/development/compilers/sbcl/1.2.5.nix
+++ /dev/null
@@ -1,84 +0,0 @@
-{ stdenv, fetchurl, sbclBootstrap, clisp, which}:
-
-stdenv.mkDerivation rec {
-  name    = "sbcl-${version}";
-  version = "1.2.5";
-
-  src = fetchurl {
-    url    = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2";
-    sha256 = "0nmb9amygr5flzk2z9fa6wzwqknbgd2qrkybxkxkamvbdwyayvzr";
-  };
-
-  buildInputs = [ which ]
-    ++ (stdenv.lib.optional stdenv.isDarwin sbclBootstrap)
-    ++ (stdenv.lib.optional stdenv.isLinux clisp)
-    ;
-
-  patchPhase = ''
-    echo '"${version}.nixos"' > version.lisp-expr
-    echo "
-    (lambda (features)
-      (flet ((enable (x)
-               (pushnew x features))
-             (disable (x)
-               (setf features (remove x features))))
-        (enable :sb-thread))) " > customize-target-features.lisp
-
-    pwd
-
-    # SBCL checks whether files are up-to-date in many places..
-    # Unfortunately, same timestamp is not good enough
-    sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp
-    sed -e '/(date)/i((= date 2208988801) 2208988800)' -i contrib/asdf/asdf.lisp
-    sed -i src/cold/slam.lisp -e \
-      '/file-write-date input/a)'
-    sed -i src/cold/slam.lisp -e \
-      '/file-write-date output/i(or (and (= 2208988801 (file-write-date output)) (= 2208988801 (file-write-date input)))'
-    sed -i src/code/target-load.lisp -e \
-      '/date defaulted-fasl/a)'
-    sed -i src/code/target-load.lisp -e \
-      '/date defaulted-source/i(or (and (= 2208988801 (file-write-date defaulted-source-truename)) (= 2208988801 (file-write-date defaulted-fasl-truename)))'
-
-    # Fix software version retrieval
-    sed -e "s@/bin/uname@$(which uname)@g" -i src/code/*-os.lisp
-
-    # Fix the tests
-    sed -e '/deftest pwent/inil' -i contrib/sb-posix/posix-tests.lisp
-    sed -e '/deftest grent/inil' -i contrib/sb-posix/posix-tests.lisp
-    sed -e '/deftest .*ent.non-existing/,+5d' -i contrib/sb-posix/posix-tests.lisp
-    sed -e '/deftest \(pw\|gr\)ent/,+3d' -i contrib/sb-posix/posix-tests.lisp
-
-    sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp
-    sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp
-
-    # Use whatever `cc` the stdenv provides
-    substituteInPlace src/runtime/Config.x86-64-darwin --replace gcc cc
-  '';
-
-  preBuild = ''
-    export INSTALL_ROOT=$out
-    mkdir -p test-home
-    export HOME=$PWD/test-home
-  '';
-
-  buildPhase = if stdenv.isLinux
-    then ''
-      sh make.sh clisp --prefix=$out
-    ''
-    else ''
-      sh make.sh --prefix=$out --xc-host='${sbclBootstrap}/bin/sbcl --disable-debugger --no-userinit --no-sysinit'
-    '';
-
-  installPhase = ''
-    INSTALL_ROOT=$out sh install.sh
-  '';
-
-  meta = {
-    description = "Lisp compiler";
-    homepage = http://www.sbcl.org;
-    license = stdenv.lib.licenses.bsd3;
-    maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
-    inherit version;
-  };
-}
diff --git a/pkgs/development/compilers/sbcl/bootstrap.nix b/pkgs/development/compilers/sbcl/bootstrap.nix
index 8f442bd890b..1fe2bb90ad9 100644
--- a/pkgs/development/compilers/sbcl/bootstrap.nix
+++ b/pkgs/development/compilers/sbcl/bootstrap.nix
@@ -8,15 +8,20 @@ let
       sha256 = "006pr88053wclvbjfjdypnbiw8wymbzdzi7a6kbkpdfn4zf5943j";
     };
     x86_64-linux = rec {
-      version = "1.2.15";
+      version = "1.3.16";
       system = "x86-64-linux";
-      sha256 = "1bpbfz9x2w73hy2kh8p0kd4m1p6pin90h2zycq52r3bbz8yv47aw";
+      sha256 = "0sq2dylwwyqfwkbdvcgqwz3vay9v895zpb0fyzsiwy31d1x9pr2s";
     };
     i686-linux = rec {
       version = "1.2.7";
       system = "x86-linux";
       sha256 = "07f3bz4br280qvn85i088vpzj9wcz8wmwrf665ypqx181pz2ai3j";
     };
+    aarch64-linux = rec {
+      version = "1.3.16";
+      system = "arm64-linux";
+      sha256 = "0q1brz9c49xgdljzfx8rpxxnlwhadxkcy5kg0mcd9wnxygind1cl";
+    };
     armv7l-linux = rec {
       version = "1.2.14";
       system = "armhf-linux";
diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix
index d1dcda064cb..a50c71b6209 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.3.15";
+  version = "1.3.16";
 
   src = fetchurl {
     url    = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2";
-    sha256 = "11db8pkv3i8ajyb295dh9nl0niyrkh9gjqv4vlaa1dl1vzck5ddi";
+    sha256 = "0qw8kcn66sr1k7ilm6i66dk3ybym722ccxa4xi8w7bkhgc0ripdp";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/compilers/scala/2.11.nix b/pkgs/development/compilers/scala/2.11.nix
index 9af3431b8c6..469c8c8e3bc 100644
--- a/pkgs/development/compilers/scala/2.11.nix
+++ b/pkgs/development/compilers/scala/2.11.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, makeWrapper, jre, gnugrep, coreutils }:
 
 stdenv.mkDerivation rec {
-  name = "scala-2.11.9";
+  name = "scala-2.11.11";
 
   src = fetchurl {
     url = "http://www.scala-lang.org/files/archive/${name}.tgz";
-    sha256 = "02rpx0pzr98vla2mgkgf6s8blccnrji5bxw05z36m1iwqmpryx5r";
+    sha256 = "02whsszxabyhyrbcmgg3figaxknmfzy4f3wmgrqqwik89jk7q0qj";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/pkgs/development/compilers/scala/default.nix b/pkgs/development/compilers/scala/default.nix
index 7971d7a8b23..e48fc63096e 100644
--- a/pkgs/development/compilers/scala/default.nix
+++ b/pkgs/development/compilers/scala/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, makeWrapper, jre, gnugrep, coreutils }:
 
 stdenv.mkDerivation rec {
-  name = "scala-2.12.1";
+  name = "scala-2.12.2";
 
   src = fetchurl {
     url = "http://www.scala-lang.org/files/archive/${name}.tgz";
-    sha256 = "0nf37ix3rrm50s7dacwlyr8fl1hgrbxbw5yz21qf58rj8n46ic2d";
+    sha256 = "1xd68q9h0vzqndar3r4mvabbd7naa25fbiciahkhxwgw8sr6hq8r";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/pkgs/development/guile-modules/guile-sdl2/default.nix b/pkgs/development/guile-modules/guile-sdl2/default.nix
index 8d98ace71f8..313580fe600 100644
--- a/pkgs/development/guile-modules/guile-sdl2/default.nix
+++ b/pkgs/development/guile-modules/guile-sdl2/default.nix
@@ -8,8 +8,7 @@
   fetchgit,
   guile,
   libtool,
-  pkgconfig,
-  buildEnv
+  pkgconfig
   }:
 stdenv.mkDerivation rec {
   name = "guile-sdl2-${version}";
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index d84db527951..9d689d5394a 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -171,7 +171,13 @@ self: super: {
     else dontCheck super.fsnotify;
 
   double-conversion = if !pkgs.stdenv.isDarwin
-    then addExtraLibrary super.double-conversion pkgs.stdenv.cc.cc.lib
+    then addExtraLibrary
+           # https://github.com/bos/double-conversion/pull/17
+           (appendPatch super.double-conversion (pkgs.fetchpatch {
+              url = "https://github.com/basvandijk/double-conversion/commit/0927e347d53dbd96d1949930e728cc2471dd4b14.patch";
+              sha256 = "042yqbq5p6nc9nymmbz9hgp51dlc5asaj9bf91kw5fph6dw2hwg9";
+           }))
+           pkgs.stdenv.cc.cc.lib
     else addExtraLibrary (overrideCabal super.double-conversion (drv:
       {
         postPatch = ''
@@ -680,8 +686,12 @@ self: super: {
     then appendConfigureFlag super.gtk "-fhave-quartz-gtk"
     else super.gtk;
 
-  # https://github.com/commercialhaskell/stack/issues/3001
-  stack = doJailbreak super.stack;
+  # The stack people don't bother making their own code compile in an LTS-based
+  # environment: https://github.com/commercialhaskell/stack/issues/3001.
+  stack = super.stack.overrideScope (self: super: {
+    store-core = self.store-core_0_3;
+    store = self.store_0_3_1;
+  });
 
   # The latest Hoogle needs versions not yet in LTS Haskell 7.x.
   hoogle = super.hoogle.override { haskell-src-exts = self.haskell-src-exts_1_19_1; };
@@ -752,13 +762,6 @@ self: super: {
   # https://github.com/roelvandijk/terminal-progress-bar/issues/13
   terminal-progress-bar = doJailbreak super.terminal-progress-bar;
 
-  # https://github.com/NixOS/nixpkgs/issues/19612
-  wai-app-file-cgi = (dontCheck super.wai-app-file-cgi).overrideScope (self: super: {
-    http-client = self.http-client_0_5_5;
-    http-client-tls = self.http-client-tls_0_3_3_1;
-    http-conduit = self.http-conduit_2_2_3;
-  });
-
   # https://hydra.nixos.org/build/42769611/nixlog/1/raw
   # note: the library is unmaintained, no upstream issue
   dataenc = doJailbreak super.dataenc;
@@ -769,10 +772,6 @@ self: super: {
   # horribly outdated (X11 interface changed a lot)
   sindre = markBroken super.sindre;
 
-  # https://github.com/jmillikin/haskell-dbus/pull/7
-  # http://hydra.cryp.to/build/498404/log/raw
-  dbus = dontCheck (appendPatch super.dbus ./patches/hdbus-semicolons.patch);
-
   # Test suite occasionally runs for 1+ days on Hydra.
   distributed-process-tests = dontCheck super.distributed-process-tests;
 
@@ -869,4 +868,34 @@ self: super: {
 
   # https://github.com/danidiaz/tailfile-hinotify/issues/2
   tailfile-hinotify = dontCheck super.tailfile-hinotify;
-}
+} // (let scope' = self: super: {
+            haskell-tools-ast = super.haskell-tools-ast_0_6_0_0;
+            haskell-tools-backend-ghc = super.haskell-tools-backend-ghc_0_6_0_0;
+            haskell-tools-cli = super.haskell-tools-cli_0_6_0_0;
+            haskell-tools-daemon = super.haskell-tools-daemon_0_6_0_0;
+            haskell-tools-debug = super.haskell-tools-debug_0_6_0_0;
+            haskell-tools-demo = super.haskell-tools-demo_0_6_0_0;
+            haskell-tools-prettyprint = super.haskell-tools-prettyprint_0_6_0_0;
+            haskell-tools-refactor = super.haskell-tools-refactor_0_6_0_0;
+            haskell-tools-rewrite = super.haskell-tools-rewrite_0_6_0_0;
+          };
+      in {
+        haskell-tools-ast_0_6_0_0 =
+          super.haskell-tools-ast_0_6_0_0.overrideScope scope';
+        haskell-tools-backend-ghc_0_6_0_0 =
+          super.haskell-tools-backend-ghc_0_6_0_0.overrideScope scope';
+        haskell-tools-cli_0_6_0_0 =
+          dontCheck (super.haskell-tools-cli_0_6_0_0.overrideScope scope');
+        haskell-tools-daemon_0_6_0_0 =
+          dontCheck (super.haskell-tools-daemon_0_6_0_0.overrideScope scope');
+        haskell-tools-debug_0_6_0_0 =
+          super.haskell-tools-debug_0_6_0_0.overrideScope scope';
+        haskell-tools-demo_0_6_0_0 =
+          super.haskell-tools-demo_0_6_0_0.overrideScope scope';
+        haskell-tools-prettyprint_0_6_0_0 =
+          super.haskell-tools-prettyprint_0_6_0_0.overrideScope scope';
+        haskell-tools-refactor_0_6_0_0 =
+          super.haskell-tools-refactor_0_6_0_0.overrideScope scope';
+        haskell-tools-rewrite_0_6_0_0 =
+          super.haskell-tools-rewrite_0_6_0_0.overrideScope scope';
+     })
diff --git a/pkgs/development/haskell-modules/configuration-ghc-6.12.x.nix b/pkgs/development/haskell-modules/configuration-ghc-6.12.x.nix
index 03a905ea3d1..6be7ae16572 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-6.12.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-6.12.x.nix
@@ -41,7 +41,7 @@ self: super: {
   unix = null;
 
   # These packages are core libraries in GHC 7.10.x, but not here.
-  binary = self.binary_0_8_4_1;
+  binary = self.binary_0_8_5_1;
   deepseq = self.deepseq_1_3_0_1;
   haskeline = self.haskeline_0_7_3_1;
   hoopl = self.hoopl_3_10_2_0;
diff --git a/pkgs/development/haskell-modules/configuration-ghc-7.0.x.nix b/pkgs/development/haskell-modules/configuration-ghc-7.0.x.nix
index ca271e6c271..58a3002b035 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-7.0.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-7.0.x.nix
@@ -62,6 +62,7 @@ self: super: {
 
   # Setup: Can't find transitive deps for haddock
   doctest = dontHaddock super.doctest;
+  hsdns = dontHaddock super.hsdns;
 
   # Needs hashable on pre 7.10.x compilers.
   nats_1 = addBuildDepend super.nats_1 self.hashable;
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 ee62cf64fec..7f561133b64 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix
@@ -95,18 +95,6 @@ self: super: {
   # https://github.com/kazu-yamamoto/unix-time/issues/30
   unix-time = dontCheck super.unix-time;
 
-  ghcjs-prim = self.callPackage ({ mkDerivation, fetchgit, primitive }: mkDerivation {
-    pname = "ghcjs-prim";
-    version = "0.1.0.0";
-    src = fetchgit {
-      url = git://github.com/ghcjs/ghcjs-prim.git;
-      rev = "dfeaab2aafdfefe46bf12960d069f28d2e5f1454"; # ghc-7.10 branch
-      sha256 = "19kyb26nv1hdpp0kc2gaxkq5drw5ib4za0641py5i4bbf1g58yvy";
-    };
-    buildDepends = [ primitive ];
-    license = pkgs.stdenv.lib.licenses.bsd3;
-  }) {};
-
   # diagrams/monoid-extras#19
   monoid-extras = overrideCabal super.monoid-extras (drv: {
     prePatch = "sed -i 's|4\.8|4.9|' monoid-extras.cabal";
diff --git a/pkgs/development/haskell-modules/configuration-ghc-7.2.x.nix b/pkgs/development/haskell-modules/configuration-ghc-7.2.x.nix
index ee6e59c65ef..b3f78e5b753 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-7.2.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-7.2.x.nix
@@ -42,7 +42,7 @@ self: super: {
   xhtml = self.xhtml_3000_2_1;
 
   # https://github.com/haskell/cabal/issues/2322
-  Cabal_1_22_4_0 = super.Cabal_1_22_4_0.override { binary = self.binary_0_8_4_1; process = self.process_1_2_3_0; };
+  Cabal_1_22_4_0 = super.Cabal_1_22_4_0.override { binary = self.binary_0_8_5_1; process = self.process_1_2_3_0; };
 
   # https://github.com/tibbe/hashable/issues/85
   hashable = dontCheck super.hashable;
@@ -63,6 +63,7 @@ self: super: {
 
   # Setup: Can't find transitive deps for haddock
   doctest = dontHaddock super.doctest;
+  hsdns = dontHaddock super.hsdns;
 
   # Needs hashable on pre 7.10.x compilers.
   nats_1 = addBuildDepend super.nats_1 self.hashable;
diff --git a/pkgs/development/haskell-modules/configuration-ghc-7.4.x.nix b/pkgs/development/haskell-modules/configuration-ghc-7.4.x.nix
index 4c2fb69ec80..111852ab34b 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-7.4.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-7.4.x.nix
@@ -41,10 +41,10 @@ self: super: {
   xhtml = self.xhtml_3000_2_1;
 
   # https://github.com/haskell/cabal/issues/2322
-  Cabal_1_22_4_0 = super.Cabal_1_22_4_0.override { binary = dontCheck self.binary_0_8_4_1; };
+  Cabal_1_22_4_0 = super.Cabal_1_22_4_0.override { binary = dontCheck self.binary_0_8_5_1; };
 
   # Avoid inconsistent 'binary' versions from 'text' and 'Cabal'.
-  cabal-install = super.cabal-install.overrideScope (self: super: { binary = dontCheck self.binary_0_8_4_1; });
+  cabal-install = super.cabal-install.overrideScope (self: super: { binary = dontCheck self.binary_0_8_5_1; });
 
   # https://github.com/tibbe/hashable/issues/85
   hashable = dontCheck super.hashable;
diff --git a/pkgs/development/haskell-modules/configuration-ghc-7.6.x.nix b/pkgs/development/haskell-modules/configuration-ghc-7.6.x.nix
index 27fed51e6fc..4ef1aa56211 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-7.6.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-7.6.x.nix
@@ -39,11 +39,8 @@ self: super: {
   transformers = self.transformers_0_4_3_0;
   xhtml = self.xhtml_3000_2_1;
 
-  # https://github.com/haskell/cabal/issues/2322
-  Cabal_1_22_4_0 = super.Cabal_1_22_4_0.override { binary = dontCheck self.binary_0_8_4_1; };
-
   # Avoid inconsistent 'binary' versions from 'text' and 'Cabal'.
-  cabal-install = super.cabal-install.overrideScope (self: super: { binary = dontCheck self.binary_0_8_4_1; });
+  cabal-install = super.cabal-install.overrideScope (self: super: { binary = dontCheck self.binary_0_8_5_1; });
 
   # https://github.com/tibbe/hashable/issues/85
   hashable = dontCheck super.hashable;
@@ -101,6 +98,12 @@ self: super: {
   lens = addBuildDepends super.lens (with self; [doctest generic-deriving nats simple-reflect]);
   distributive = addBuildDepend super.distributive self.semigroups;
   QuickCheck = addBuildDepend super.QuickCheck self.semigroups;
+  void = addBuildDepends super.void (with self; [hashable semigroups]);
+
+  # Need a newer version of Cabal to interpret their build instructions.
+  cmdargs = addSetupDepend super.cmdargs self.Cabal_1_24_2_0;
+  extra = addSetupDepend super.extra self.Cabal_1_24_2_0;
+  hlint = addSetupDepend super.hlint self.Cabal_1_24_2_0;
 
   # Haddock doesn't cope with the new markup.
   bifunctors = dontHaddock super.bifunctors;
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 78c3823a0f9..8eb87279c79 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix
@@ -41,19 +41,6 @@ self: super: {
   # jailbreak-cabal can use the native Cabal library.
   jailbreak-cabal = super.jailbreak-cabal.override { Cabal = null; };
 
-  ghcjs-prim = self.callPackage ({ mkDerivation, fetchgit, primitive }: mkDerivation {
-    pname = "ghcjs-prim";
-    version = "0.1.0.0";
-    src = fetchgit {
-      url = git://github.com/ghcjs/ghcjs-prim.git;
-      rev = "dfeaab2aafdfefe46bf12960d069f28d2e5f1454"; # ghc-7.10 branch
-      sha256 = "19kyb26nv1hdpp0kc2gaxkq5drw5ib4za0641py5i4bbf1g58yvy";
-    };
-    buildDepends = [ primitive ];
-    license = pkgs.stdenv.lib.licenses.bsd3;
-    broken = true;   # needs template-haskell >=2.9 && <2.11
-  }) {};
-
   # https://github.com/bmillwood/applicative-quoters/issues/6
   applicative-quoters = appendPatch super.applicative-quoters (pkgs.fetchpatch {
     url = "https://patch-diff.githubusercontent.com/raw/bmillwood/applicative-quoters/pull/7.patch";
diff --git a/pkgs/development/haskell-modules/configuration-ghc-head.nix b/pkgs/development/haskell-modules/configuration-ghc-head.nix
index f093c0e427e..6a9d15d402e 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-head.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-head.nix
@@ -53,7 +53,7 @@ self: super: {
     postPatch = "sed -i -e 's|base < 4.8|base|' hspec-expectations.cabal";
   });
   utf8-string = overrideCabal super.utf8-string (drv: {
-    postPatch = "sed -i -e 's|base >= 3 && < 4.8|base|' utf8-string.cabal";
+    postPatch = "sed -i -e 's|base >= 4.3 && < 4.10|base|' utf8-string.cabal";
   });
 
   # bos/attoparsec#92
@@ -87,6 +87,7 @@ self: super: {
   llvm-general = markBrokenVersion "3.4.5.3" super.llvm-general;
 
   # A bunch of jailbreaks due to 'base' bump
+  old-time = doJailbreak super.old-time;
   old-locale = doJailbreak super.old-locale;
   primitive = doJailbreak super.primitive;
   test-framework = doJailbreak super.test-framework;
diff --git a/pkgs/development/haskell-modules/configuration-ghcjs.nix b/pkgs/development/haskell-modules/configuration-ghcjs.nix
index d6d7277cc9d..fd7f15008d2 100644
--- a/pkgs/development/haskell-modules/configuration-ghcjs.nix
+++ b/pkgs/development/haskell-modules/configuration-ghcjs.nix
@@ -58,9 +58,13 @@ self: super:
   # Almost all packages require Cabal to build their Setup.hs,
   # but usually they don't declare it explicitly as they don't need to for normal GHC.
   # To account for that we add Cabal by default.
-  mkDerivation = args:
-    if args.pname == "Cabal" then super.mkDerivation args else super.mkDerivation (args //
-      { setupHaskellDepends = (args.setupHaskellDepends or []) ++ [ self.Cabal ]; });
+  mkDerivation = args: super.mkDerivation (args // {
+    setupHaskellDepends = (args.setupHaskellDepends or []) ++
+      (if args.pname == "Cabal" then [ ]
+      # Break the dependency cycle between Cabal and hscolour
+      else if args.pname == "hscolour" then [ (dontHyperlinkSource self.Cabal) ]
+      else [ self.Cabal ]);
+  });
 
 ## OTHER PACKAGES
 
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index 91460eb4019..4410e3c4c50 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -37,8 +37,7 @@ core-packages:
   - ghcjs-base-0
 
 default-package-overrides:
-  - store < 0.4.1               # https://github.com/fpco/store/issues/104
-  # LTS Haskell 8.6
+  # LTS Haskell 8.11
   - abstract-deque ==0.3
   - abstract-par ==0.3.3
   - AC-Vector ==2.3.2
@@ -55,6 +54,7 @@ default-package-overrides:
   - aeson-better-errors ==0.9.1.0
   - aeson-casing ==0.1.0.5
   - aeson-compat ==0.3.6
+  - aeson-diff ==1.1.0.2
   - aeson-extra ==0.4.0.0
   - aeson-generic-compat ==0.0.1.0
   - aeson-injector ==1.0.7.0
@@ -65,6 +65,7 @@ default-package-overrides:
   - airship ==0.6.0
   - alarmclock ==0.4.0.2
   - alex ==3.2.1
+  - algebraic-graphs ==0.0.4
   - alternators ==0.1.1.1
   - ALUT ==2.4.0.2
   - amazonka ==1.4.5
@@ -165,18 +166,22 @@ default-package-overrides:
   - ansigraph ==0.3.0.2
   - app-settings ==0.2.0.11
   - appar ==0.1.4
+  - apportionment ==0.0.0.2
   - arbtt ==0.9.0.12
   - arithmoi ==0.4.3.0
   - array-memoize ==0.6.0
+  - arrow-extras ==0.1.0.1
   - arrow-list ==0.7
   - ascii-progress ==0.3.3.0
   - asciidiagram ==1.3.3
   - asn1-encoding ==0.9.5
   - asn1-parse ==0.9.4
   - asn1-types ==0.3.2
-  - async ==2.1.1
+  - async ==2.1.1.1
   - async-dejafu ==0.1.3.0
   - async-extra ==0.1.0.0
+  - async-refresh ==0.2.0
+  - async-refresh-tokens ==0.1.0
   - atom-basic ==0.2.4
   - atom-conduit ==0.4.0.1
   - atomic-primops ==0.8.0.4
@@ -184,6 +189,7 @@ default-package-overrides:
   - attoparsec ==0.13.1.0
   - attoparsec-binary ==0.2
   - attoparsec-expr ==0.1.1.2
+  - audacity ==0.0.1.1
   - authenticate ==1.3.3.2
   - authenticate-oauth ==1.6
   - auto ==0.4.3.1
@@ -195,9 +201,10 @@ default-package-overrides:
   - avers-server ==0.0.18.0
   - avwx ==0.3.0.2
   - b9 ==0.5.31
+  - backprop ==0.0.3.0
   - bake ==0.5
   - bank-holidays-england ==0.1.0.5
-  - base-compat ==0.9.2
+  - base-compat ==0.9.3
   - base-noprelude ==4.9.1.0
   - base-orphans ==0.5.4
   - base-prelude ==1.0.1.1
@@ -214,6 +221,7 @@ default-package-overrides:
   - bencode ==0.6.0.0
   - bento ==0.1.0
   - between ==0.11.0.0
+  - bibtex ==0.1.0.6
   - bifunctors ==5.4.1
   - bimap ==0.3.2
   - bimap-server ==0.1.0.1
@@ -260,6 +268,7 @@ default-package-overrides:
   - bloodhound ==0.12.1.0
   - blosum ==0.1.1.4
   - bmp ==1.2.6.3
+  - board-games ==0.1.0.6
   - boltzmann-samplers ==0.1.0.0
   - bookkeeping ==0.2.1.1
   - bool-extras ==0.4.0
@@ -278,6 +287,7 @@ default-package-overrides:
   - bson-lens ==0.1.1
   - btrfs ==0.1.2.3
   - buffer-builder ==0.2.4.4
+  - buffer-pipe ==0.0
   - bumper ==0.6.0.3
   - bv ==0.4.1
   - byteable ==0.1.1
@@ -304,6 +314,7 @@ default-package-overrides:
   - cache ==0.1.0.0
   - cacophony ==0.9.2
   - cairo ==0.13.3.1
+  - calendar-recycling ==0.0
   - call-stack ==0.1.0
   - camfort ==0.901
   - carray ==0.1.6.6
@@ -311,6 +322,7 @@ default-package-overrides:
   - case-insensitive ==1.2.0.8
   - cased ==0.1.0.0
   - cases ==0.1.3.2
+  - casing ==0.1.2.1
   - cassava ==0.4.5.1
   - cassava-conduit ==0.3.5.1
   - cassava-megaparsec ==0.1.0
@@ -345,12 +357,12 @@ default-package-overrides:
   - cipher-rc4 ==0.1.4
   - circle-packing ==0.1.0.5
   - clang-pure ==0.2.0.2
-  - clash-ghc ==0.7.0.1
-  - clash-lib ==0.7
-  - clash-prelude ==0.11
-  - clash-systemverilog ==0.7
-  - clash-verilog ==0.7
-  - clash-vhdl ==0.7
+  - clash-ghc ==0.7.1
+  - clash-lib ==0.7.1
+  - clash-prelude ==0.11.1
+  - clash-systemverilog ==0.7.1
+  - clash-verilog ==0.7.1
+  - clash-vhdl ==0.7.1
   - classy-prelude ==1.2.0.1
   - classy-prelude-conduit ==1.2.0
   - classy-prelude-yesod ==1.2.0
@@ -371,12 +383,13 @@ default-package-overrides:
   - cmark ==0.5.5.1
   - cmark-highlight ==0.2.0.0
   - cmark-lucid ==0.1.0.0
-  - cmdargs ==0.10.16
+  - cmdargs ==0.10.17
   - code-builder ==0.1.3
   - code-page ==0.1.3
   - codo-notation ==0.5.2
   - colorful-monoids ==0.2.1.0
   - colour ==2.3.3
+  - comfort-graph ==0.0.2
   - commutative ==0.0.1.4
   - comonad ==5
   - comonad-transformers ==4.0
@@ -384,10 +397,12 @@ default-package-overrides:
   - compactmap ==0.1.4.2
   - composition ==1.0.2.1
   - composition-extra ==2.0.0
+  - concise ==0.1.0.0
   - concurrency ==1.0.0.0
   - concurrent-output ==1.7.9
+  - concurrent-split ==0.0.1
   - concurrent-supply ==0.1.8
-  - conduit ==1.2.9
+  - conduit ==1.2.9.1
   - conduit-combinators ==1.1.1
   - conduit-connection ==0.1.0.3
   - conduit-extra ==1.1.15
@@ -418,7 +433,7 @@ default-package-overrides:
   - cookie ==0.4.2.1
   - countable ==1.0
   - courier ==0.1.1.4
-  - cpphs ==1.20.4
+  - cpphs ==1.20.5
   - cprng-aes ==0.6.1
   - cpu ==0.1.2
   - cpuinfo ==0.1.0.1
@@ -458,16 +473,25 @@ default-package-overrides:
   - cubicspline ==0.1.2
   - cue-sheet ==0.1.0
   - curl ==1.3.8
+  - cutter ==0.0
   - darcs ==2.12.5
   - data-accessor ==0.2.2.7
   - data-accessor-mtl ==0.2.0.4
+  - data-accessor-template ==0.2.1.13
+  - data-accessor-transformers ==0.2.1.7
   - data-binary-ieee754 ==0.4.4
+  - data-bword ==0.1.0.1
   - data-check ==0.1.0
+  - data-checked ==0.3
   - data-default ==0.7.1.1
   - data-default-class ==0.1.2.0
   - data-default-instances-containers ==0.0.1
   - data-default-instances-dlist ==0.0.1
   - data-default-instances-old-locale ==0.0.1
+  - data-dword ==0.3.1
+  - data-endian ==0.1.1
+  - data-fix ==0.0.4
+  - data-has ==0.2.1.0
   - data-hash ==0.2.0.1
   - data-inttrie ==0.1.2
   - data-lens-light ==0.1.2.2
@@ -475,7 +499,10 @@ default-package-overrides:
   - data-msgpack ==0.0.9
   - data-or ==1.0.0.5
   - data-ordlist ==0.4.7.0
+  - data-ref ==0.0.1.1
   - data-reify ==0.6.1
+  - data-serializer ==0.3
+  - data-textual ==0.3.0.2
   - datasets ==0.2.1
   - dataurl ==0.1.0.0
   - DAV ==1.3.1
@@ -487,7 +514,8 @@ default-package-overrides:
   - dejafu ==0.4.0.0
   - dependent-map ==0.2.4.0
   - dependent-sum ==0.4
-  - deriving-compat ==0.3.5
+  - derive ==2.6.2
+  - deriving-compat ==0.3.6
   - descriptive ==0.9.4
   - diagrams ==1.4
   - diagrams-builder ==0.8.0.1
@@ -503,6 +531,7 @@ default-package-overrides:
   - diagrams-solve ==0.1.0.1
   - diagrams-svg ==1.4.1
   - dice ==0.1
+  - dictionaries ==0.1.0.1
   - Diff ==0.3.4
   - diff3 ==0.3.0
   - digest ==0.0.1.2
@@ -512,7 +541,7 @@ default-package-overrides:
   - directory-tree ==0.12.1
   - discount ==0.1.1
   - disk-free-space ==0.1.0.1
-  - disposable ==0.2.0.3
+  - disposable ==0.2.0.4
   - distance ==0.1.0.0
   - distributed-closure ==0.3.4.0
   - distributed-process ==0.6.6
@@ -546,6 +575,7 @@ default-package-overrides:
   - DRBG ==0.5.5
   - drifter ==0.2.2
   - drifter-postgresql ==0.1.0
+  - dsp ==0.2.3.1
   - dual-tree ==0.2.0.9
   - dvorak ==0.1.0.0
   - dynamic-state ==0.2.2.0
@@ -559,6 +589,7 @@ default-package-overrides:
   - EdisonAPI ==1.3.1
   - EdisonCore ==1.3.1.1
   - edit-distance ==0.2.2.1
+  - edit-distance-vector ==1.0.0.4
   - editor-open ==0.6.0.0
   - effect-handlers ==0.1.0.8
   - effin ==0.3.0.2
@@ -582,21 +613,26 @@ default-package-overrides:
   - engine-io-wai ==1.0.6
   - EntrezHTTP ==1.0.3
   - entropy ==0.3.7
+  - enummapset ==0.5.2.1
   - enummapset-th ==0.6.1.1
+  - enumset ==0.0.4
   - envelope ==0.2.1.0
   - envparse ==0.4
   - envy ==1.3.0.2
   - epub-metadata ==4.5
   - eq ==4.0.4
+  - equal-files ==0.0.5.3
   - equivalence ==0.3.2
   - erf ==2.0.0.0
   - errors ==2.1.3
   - ersatz ==0.3.1
   - esqueleto ==2.5.1
+  - etc ==0.0.0.2
   - etcd ==1.0.5
-  - ether ==0.4.0.2
+  - ether ==0.4.1.0
   - euphoria ==0.8.0.0
   - event ==0.1.4
+  - event-list ==0.1.1.3
   - eventstore ==0.14.0.1
   - exact-combinatorics ==0.2.0.8
   - exact-pi ==0.4.1.2
@@ -609,16 +645,18 @@ default-package-overrides:
   - exhaustive ==1.1.3
   - exp-pairs ==0.1.5.2
   - expiring-cache-map ==0.0.6.1
+  - explicit-exception ==0.1.8
   - extensible ==0.3.7
   - extensible-effects ==1.11.0.4
   - extensible-exceptions ==0.1.1.4
-  - extra ==1.5.1
+  - extra ==1.5.2
   - extract-dependencies ==0.2.0.1
   - fail ==4.9.0.0
   - farmhash ==0.1.0.5
   - fast-builder ==0.0.0.6
   - fast-digits ==0.2.1.0
   - fast-logger ==2.4.10
+  - fast-math ==1.0.2
   - fasta ==0.10.4.2
   - fay ==0.23.1.16
   - fay-base ==0.20.0.1
@@ -643,6 +681,7 @@ default-package-overrides:
   - fingertree-psqueue ==0.3
   - finite-typelits ==0.1.1.0
   - fixed ==0.2.1.1
+  - fixed-length ==0.2
   - fixed-vector ==0.9.0.0
   - fixed-vector-hetero ==0.3.1.1
   - flac ==0.1.1
@@ -666,6 +705,7 @@ default-package-overrides:
   - format-numbers ==0.1.0.0
   - formatting ==6.2.4
   - fortran-src ==0.1.0.4
+  - foundation ==0.0.6
   - Frames ==0.1.9
   - free ==4.12.4
   - free-vl ==0.1.4
@@ -680,11 +720,12 @@ default-package-overrides:
   - fsnotify-conduit ==0.1.0.0
   - funcmp ==1.8
   - fuzzcheck ==0.1.1
+  - fuzzy ==0.1.0.0
   - gd ==3000.7.3
   - Genbank ==1.0.3
   - general-games ==1.0.5
   - generic-aeson ==0.2.0.8
-  - generic-deriving ==1.11.1
+  - generic-deriving ==1.11.2
   - generic-random ==0.4.1.0
   - generic-xmlpickler ==0.1.0.5
   - GenericPretty ==1.2.1
@@ -695,20 +736,20 @@ default-package-overrides:
   - getopt-generics ==0.13
   - ghc-events ==0.4.4.0
   - ghc-exactprint ==0.5.3.0
-  - ghc-heap-view ==0.5.7
+  - ghc-heap-view ==0.5.9
   - ghc-mod ==5.7.0.0
   - ghc-paths ==0.1.0.9
   - ghc-prof ==1.3.0.2
   - ghc-syb-utils ==0.2.3
   - ghc-tcplugins-extra ==0.2
   - ghc-typelits-extra ==0.2.2
-  - ghc-typelits-knownnat ==0.2.3
+  - ghc-typelits-knownnat ==0.2.4
   - ghc-typelits-natnormalise ==0.5.2
   - ghcid ==0.6.6
   - ghcjs-base-stub ==0.1.0.2
   - ghcjs-codemirror ==0.0.0.1
   - ghcjs-hplay ==0.3.4.2
-  - ghcjs-perch ==0.3.3.1
+  - ghcjs-perch ==0.3.3.2
   - gi-atk ==2.0.11
   - gi-cairo ==1.0.11
   - gi-gdk ==3.0.11
@@ -716,7 +757,7 @@ default-package-overrides:
   - gi-gio ==2.0.11
   - gi-glib ==2.0.11
   - gi-gobject ==2.0.11
-  - gi-gtk ==3.0.11
+  - gi-gtk ==3.0.13
   - gi-javascriptcore ==3.0.11
   - gi-pango ==1.0.12
   - gi-soup ==2.4.11
@@ -736,6 +777,7 @@ default-package-overrides:
   - gitlib-test ==3.1.0.3
   - gitrev ==1.2.0
   - gitson ==0.5.2
+  - gl ==0.8.0
   - glabrous ==0.3.1
   - glaze ==0.2.0.2
   - glazier ==0.7.0.0
@@ -748,6 +790,7 @@ default-package-overrides:
   - gloss-rendering ==1.10.3.5
   - GLURaw ==2.0.0.3
   - GLUT ==2.7.0.11
+  - gnuplot ==0.5.4.1
   - gogol ==0.1.1
   - gogol-adexchange-buyer ==0.1.1
   - gogol-adexchange-seller ==0.1.1
@@ -874,7 +917,7 @@ default-package-overrides:
   - hackage-db ==1.22
   - hackage-security ==0.5.2.2
   - hackernews ==1.1.1.0
-  - haddock-library ==1.4.2
+  - haddock-library ==1.4.3
   - hailgun ==0.4.1.2
   - hailgun-simple ==0.1.0.0
   - hakyll ==4.9.5.1
@@ -895,12 +938,12 @@ default-package-overrides:
   - harp ==0.4.2
   - hasbolt ==0.1.1.2
   - hashable ==1.2.6.0
-  - hashable-time ==0.2
+  - hashable-time ==0.2.0.1
   - hashmap ==1.3.2
-  - hashtables ==1.2.1.0
+  - hashtables ==1.2.1.1
   - haskeline ==0.7.3.1
-  - haskell-gi ==0.20
-  - haskell-gi-base ==0.20
+  - haskell-gi ==0.20.1
+  - haskell-gi-base ==0.20.2
   - haskell-import-graph ==1.0.1
   - haskell-lexer ==1.0.1
   - haskell-names ==0.8.0
@@ -939,12 +982,13 @@ default-package-overrides:
   - HCodecs ==0.5
   - hdaemonize ==0.5.2
   - HDBC ==2.4.0.1
+  - HDBC-mysql ==0.7.1.0
   - HDBC-session ==0.1.1.0
   - hdevtools ==0.1.5.0
   - heap ==1.0.3
   - heaps ==0.3.3
   - hebrew-time ==0.1.1
-  - hedis ==0.9.7
+  - hedis ==0.9.8
   - here ==1.2.9
   - heredoc ==0.2.0.0
   - heterocephalus ==1.0.4.0
@@ -957,6 +1001,7 @@ default-package-overrides:
   - hfsevents ==0.1.6
   - hid ==0.2.2
   - hidapi ==0.1.4
+  - hidden-char ==0.1.0.0
   - hierarchical-clustering ==0.4.6
   - highjson ==0.4.0.0
   - highjson-swagger ==0.4.0.0
@@ -1008,6 +1053,7 @@ default-package-overrides:
   - hsass ==0.4.1
   - hsb2hs ==0.3.1
   - hscolour ==1.24.1
+  - hscurses ==1.4.2.0
   - hsdns ==1.7
   - hse-cpp ==0.2
   - hsebaysdk ==0.4.0.0
@@ -1019,13 +1065,15 @@ default-package-overrides:
   - hsinstall ==1.5
   - hslogger ==1.2.10
   - hslua ==0.4.1
+  - hslua-aeson ==0.1.0.3
   - hsndfile ==0.8.0
   - hsndfile-vector ==0.5.2
-  - HsOpenSSL ==0.11.4.4
+  - HsOpenSSL ==0.11.4.6
   - HsOpenSSL-x509-system ==0.1.0.3
   - hsp ==0.10.0
   - hspec ==2.4.3
   - hspec-attoparsec ==0.1.0.2
+  - hspec-checkers ==0.1.0.2
   - hspec-contrib ==0.4.0
   - hspec-core ==2.4.3
   - hspec-discover ==2.4.3
@@ -1039,6 +1087,7 @@ default-package-overrides:
   - hspec-wai ==0.8.0
   - hspec-wai-json ==0.8.0
   - hspec-webdriver ==1.2.0
+  - hsshellscript ==3.4.1
   - hstatistics ==0.3
   - hstatsd ==0.1
   - HStringTemplate ==0.8.5
@@ -1052,10 +1101,10 @@ default-package-overrides:
   - html-email-validate ==0.2.0.0
   - htoml ==1.0.0.3
   - HTTP ==4000.3.6
-  - http-api-data ==0.3.5
+  - http-api-data ==0.3.6
   - http-client ==0.5.6.1
-  - http-client-openssl ==0.2.0.4
-  - http-client-tls ==0.3.4
+  - http-client-openssl ==0.2.0.5
+  - http-client-tls ==0.3.4.1
   - http-common ==0.8.2.0
   - http-conduit ==2.2.3.1
   - http-date ==0.0.6.1
@@ -1065,6 +1114,7 @@ default-package-overrides:
   - http-streams ==0.8.4.0
   - http-types ==0.9.1
   - http2 ==1.6.3
+  - httpd-shed ==0.4.0.3
   - human-readable-duration ==0.2.0.3
   - HUnit ==1.5.0.0
   - HUnit-approx ==1.1
@@ -1097,10 +1147,12 @@ default-package-overrides:
   - hyphenation ==0.6
   - ical ==0.0.1
   - iconv ==0.4.1.3
-  - identicon ==0.2.0
+  - identicon ==0.2.1
+  - idris ==1.0
   - ieee754 ==0.8.0
   - if ==0.1.0.0
   - IfElse ==0.85
+  - iff ==0.0.6
   - ignore ==0.1.1.0
   - ilist ==0.2.0.0
   - imagesize-conduit ==1.1
@@ -1117,13 +1169,14 @@ default-package-overrides:
   - inline-c-cpp ==0.1.0.0
   - inline-java ==0.6.1
   - inline-r ==0.9.0.1
-  - insert-ordered-containers ==0.2.0.0
+  - insert-ordered-containers ==0.2.1.0
   - instance-control ==0.1.1.1
   - integer-logarithms ==1.0.1
   - integration ==0.2.1
   - intero ==0.1.20
   - interpolate ==0.1.0
   - interpolatedstring-perl6 ==1.0.0
+  - interpolation ==0.1.0.1
   - IntervalMap ==0.5.2.0
   - intervals ==0.7.2
   - intro ==0.1.0.10
@@ -1137,7 +1190,7 @@ default-package-overrides:
   - io-storage ==0.3
   - io-streams ==1.3.6.1
   - io-streams-haproxy ==1.0.0.1
-  - ip6addr ==0.5.2
+  - ip6addr ==0.5.3
   - iproute ==1.7.1
   - IPv6Addr ==0.6.3
   - irc ==0.6.1.0
@@ -1155,6 +1208,7 @@ default-package-overrides:
   - ixset ==1.0.7
   - ixset-typed ==0.3.1
   - jailbreak-cabal ==1.3.2
+  - javascript-extras ==0.3.1.0
   - jmacro ==0.6.14
   - jmacro-rpc ==0.3.2
   - jmacro-rpc-happstack ==0.3.2
@@ -1165,6 +1219,7 @@ default-package-overrides:
   - js-flot ==0.8.3
   - js-jquery ==3.1.1
   - json ==0.9.1
+  - json-ast ==0.3.1
   - json-builder ==0.3
   - json-rpc-generic ==0.2.1.2
   - json-schema ==0.7.4.1
@@ -1207,8 +1262,10 @@ default-package-overrides:
   - language-thrift ==0.10.0.0
   - large-hashable ==0.1.0.4
   - largeword ==1.2.5
+  - latex ==0.1.0.3
   - lattices ==1.5.0
   - lazy-csv ==0.5.1
+  - lazyio ==0.1.0.4
   - lca ==0.3
   - leapseconds-announced ==2017
   - lens ==4.15.1
@@ -1218,12 +1275,14 @@ default-package-overrides:
   - lens-family ==1.2.1
   - lens-family-core ==1.2.1
   - lens-family-th ==0.5.0.0
+  - lens-labels ==0.1.0.1
   - lens-regex ==0.1.0
   - lens-simple ==0.1.0.9
-  - lentil ==1.0.8.0
+  - lentil ==1.0.9.0
   - leveldb-haskell ==0.6.4
   - lexer-applicative ==2.1.0.1
   - lhs2tex ==1.19
+  - libffi ==0.1
   - libgit ==0.3.1
   - libinfluxdb ==0.0.4
   - libmpd ==0.9.0.6
@@ -1246,6 +1305,7 @@ default-package-overrides:
   - list-prompt ==0.1.1.0
   - list-t ==1
   - ListLike ==4.5.1
+  - llvm-hs-pure ==4.0.0.0
   - lmdb ==0.2.5
   - loch-th ==0.2.1
   - log ==0.7
@@ -1270,12 +1330,14 @@ default-package-overrides:
   - machines-io ==0.2.0.13
   - machines-process ==0.2.0.8
   - magic ==1.1
+  - magicbane ==0.1.1
   - mainland-pretty ==0.4.1.4
   - makefile ==0.1.1.0
   - managed ==1.0.5
   - mandrill ==0.5.3.1
   - markdown ==0.1.16
   - markdown-unlit ==0.4.0
+  - markov-chain ==0.0.3.4
   - markup ==3.1.0
   - marvin ==0.2.3
   - marvin-interpolate ==1.1
@@ -1284,14 +1346,17 @@ default-package-overrides:
   - matplotlib ==0.4.3
   - matrices ==0.4.4
   - matrix ==0.3.5.0
-  - matrix-market-attoparsec ==0.1.0.5
+  - matrix-market-attoparsec ==0.1.0.7
   - maximal-cliques ==0.1.1
   - mbox ==0.3.3
+  - mbox-utility ==0.0
   - mcmc-types ==1.0.3
+  - mediabus ==0.3.2.1
+  - mediabus-rtp ==0.3.2.1
   - median-stream ==0.7.0.0
   - mega-sdist ==0.3.0.2
   - megaparsec ==5.2.0
-  - memory ==0.14.2
+  - memory ==0.14.3
   - MemoTrie ==0.6.7
   - mersenne-random ==1.0.0.1
   - mersenne-random-pure64 ==0.2.2.0
@@ -1309,10 +1374,13 @@ default-package-overrides:
   - microlens-mtl ==0.1.10.0
   - microlens-platform ==0.3.8.0
   - microlens-th ==0.4.1.1
+  - midi ==0.2.2.1
+  - midi-music-box ==0.0.0.3
   - mighty-metropolis ==1.2.0
   - mime-mail ==0.4.13.1
   - mime-mail-ses ==0.3.2.3
   - mime-types ==0.1.0.7
+  - minio-hs ==0.2.1
   - mintty ==0.1.1
   - misfortune ==0.1.1.2
   - missing-foreign ==0.1.1
@@ -1320,6 +1388,7 @@ default-package-overrides:
   - mixed-types-num ==0.1.0.1
   - mmap ==0.5.9
   - mmorph ==1.0.9
+  - mnist-idx ==0.1.2.8
   - mockery ==0.3.4
   - modify-fasta ==0.8.2.3
   - monad-control ==1.0.1.0
@@ -1327,7 +1396,7 @@ default-package-overrides:
   - monad-extras ==0.6.0
   - monad-http ==0.1.0.0
   - monad-journal ==0.7.2
-  - monad-logger ==0.3.21
+  - monad-logger ==0.3.22
   - monad-logger-json ==0.1.0.0
   - monad-logger-prefix ==0.1.6
   - monad-logger-syslog ==0.1.3.0
@@ -1356,6 +1425,7 @@ default-package-overrides:
   - mono-traversable-instances ==0.1.0.0
   - monoid-extras ==0.4.2
   - monoid-subclasses ==0.4.3.1
+  - monoid-transformer ==0.0.3
   - monoidal-containers ==0.3.0.1
   - morte ==1.6.6
   - mountpoints ==1.0.2
@@ -1370,8 +1440,9 @@ default-package-overrides:
   - multiset-comb ==0.2.4.1
   - multistate ==0.7.1.1
   - murmur-hash ==0.1.0.9
+  - mushu ==0.1.1
   - MusicBrainz ==0.2.4
-  - mustache ==2.1.2
+  - mustache ==2.1.3
   - mutable-containers ==0.3.3
   - mwc-probability ==1.3.0
   - mwc-random ==0.13.5.0
@@ -1403,6 +1474,7 @@ default-package-overrides:
   - network-conduit-tls ==1.2.2
   - network-house ==0.1.0.2
   - network-info ==0.2.0.8
+  - network-ip ==0.3
   - network-msgpack-rpc ==0.0.3
   - network-multicast ==0.2.0
   - Network-NineP ==0.4.1
@@ -1420,13 +1492,17 @@ default-package-overrides:
   - nicify-lib ==1.0.1
   - NineP ==0.0.2.1
   - nix-paths ==1.0.0.1
+  - non-empty ==0.3
   - non-empty-sequence ==0.2.0.2
+  - non-negative ==0.1.1
   - nonce ==1.0.2
   - nondeterminism ==1.4
   - NoTrace ==0.3.0.1
   - nsis ==0.3.1
   - numbers ==3000.2.0.1
   - numeric-extras ==0.1
+  - numeric-prelude ==0.4.2
+  - numeric-quest ==0.2.0.1
   - NumInstances ==1.4
   - numtype-dk ==0.5.0.1
   - oanda-rest-api ==0.3.0.0
@@ -1439,6 +1515,7 @@ default-package-overrides:
   - old-locale ==1.0.0.7
   - old-time ==1.1.0.3
   - once ==0.2
+  - one-liner ==0.8.1
   - OneTuple ==0.2.1
   - oo-prototypes ==0.1.0.0
   - opaleye ==0.5.3.0
@@ -1457,7 +1534,7 @@ default-package-overrides:
   - optional-args ==1.0.1
   - options ==1.2.1.1
   - optparse-applicative ==0.13.2.0
-  - optparse-generic ==1.1.4
+  - optparse-generic ==1.1.5
   - optparse-helper ==0.2.1.1
   - optparse-simple ==0.0.3
   - optparse-text ==0.1.1.0
@@ -1473,7 +1550,7 @@ default-package-overrides:
   - pandoc-citeproc ==0.10.4.1
   - pandoc-types ==1.17.0.5
   - pango ==0.13.3.1
-  - parallel ==3.2.1.0
+  - parallel ==3.2.1.1
   - parallel-io ==0.3.3
   - parseargs ==0.2.0.8
   - parsec ==3.1.11
@@ -1523,7 +1600,7 @@ default-package-overrides:
   - pipes-category ==0.2.0.1
   - pipes-concurrency ==2.0.7
   - pipes-csv ==1.4.3
-  - pipes-extras ==1.0.8
+  - pipes-extras ==1.0.9
   - pipes-fluid ==0.5.0.3
   - pipes-group ==1.0.6
   - pipes-misc ==0.2.5.0
@@ -1546,8 +1623,10 @@ default-package-overrides:
   - pointedlist ==0.6.1
   - pointful ==1.0.9
   - pointless-fun ==1.1.0.6
+  - poly-arity ==0.1.0
   - polynomials-bernstein ==1.1.2
   - polyparse ==1.12
+  - pooled-io ==0.0.2.1
   - posix-paths ==0.2.1.1
   - posix-realtime ==0.0.0.4
   - post-mess-age ==0.2.1.0
@@ -1563,10 +1642,12 @@ default-package-overrides:
   - pred-set ==0.0.1
   - prednote ==0.36.0.4
   - prefix-units ==0.2.0
+  - prelude-compat ==0.0.0.1
   - prelude-extras ==0.4.0.3
   - prelude-safeenum ==0.1.1.2
   - preprocessor-tools ==1.0.1
   - presburger ==1.3.1
+  - present ==4.1.0
   - pretty-class ==1.0.1.1
   - pretty-hex ==1.0
   - pretty-show ==1.6.12
@@ -1576,6 +1657,7 @@ default-package-overrides:
   - primes ==0.2.1.0
   - primitive ==0.6.1.0
   - printcess ==0.1.0.3
+  - probability ==0.2.5.1
   - process-extras ==0.7.1
   - product-profunctors ==0.7.1.0
   - profiteur ==0.4.2.2
@@ -1586,8 +1668,14 @@ default-package-overrides:
   - prometheus-client ==0.1.0.1
   - prometheus-metrics-ghc ==0.1.0.1
   - prompt ==0.1.1.2
+  - proto-lens ==0.2.0.1
+  - proto-lens-arbitrary ==0.1.0.2
+  - proto-lens-combinators ==0.1.0.6
+  - proto-lens-descriptors ==0.2.0.1
+  - proto-lens-optparse ==0.1.0.2
+  - proto-lens-protoc ==0.2.0.1
   - protobuf ==0.2.1.1
-  - protobuf-simple ==0.1.0.2
+  - protobuf-simple ==0.1.0.4
   - protocol-buffers ==2.4.0
   - protocol-buffers-descriptor ==2.4.0
   - protolude ==0.1.10
@@ -1626,6 +1714,7 @@ default-package-overrides:
   - random-tree ==0.6.0.5
   - range ==0.1.2.0
   - range-set-list ==0.1.2.0
+  - rank-product ==0.2.0.1
   - rank1dynamic ==0.3.3.0
   - Rasterific ==0.7.2.1
   - rasterific-svg ==0.3.2.1
@@ -1636,6 +1725,7 @@ default-package-overrides:
   - rawfilepath ==0.1.1
   - rawstring-qm ==0.2.3.0
   - rdf ==0.1.0.1
+  - rdtsc ==1.3.0.1
   - read-editor ==0.1.0.2
   - read-env-var ==0.1.0.1
   - readable ==0.3.1
@@ -1650,6 +1740,7 @@ default-package-overrides:
   - ref-fd ==0.4.0.1
   - refact ==0.3.0.2
   - references ==0.3.2.1
+  - refined ==0.1.2.1
   - reflection ==2.1.2
   - reform ==0.2.7.1
   - reform-blaze ==0.2.4.3
@@ -1669,7 +1760,7 @@ default-package-overrides:
   - regex-tdfa ==1.2.2
   - regex-tdfa-text ==1.0.0.3
   - reinterpret-cast ==0.1.0
-  - relational-query ==0.8.3.5
+  - relational-query ==0.8.3.6
   - relational-query-HDBC ==0.6.0.2
   - relational-record ==0.1.7.1
   - relational-schemas ==0.1.3.1
@@ -1717,6 +1808,8 @@ default-package-overrides:
   - safe-exceptions-checked ==0.1.0
   - safecopy ==0.9.3.1
   - SafeSemaphore ==0.10.1
+  - sample-frame ==0.0.3
+  - sample-frame-np ==0.0.4.1
   - sampling ==0.3.2
   - sandi ==0.4.0
   - sandman ==0.2.0.1
@@ -1725,7 +1818,7 @@ default-package-overrides:
   - scalpel ==0.5.0
   - scalpel-core ==0.5.0
   - scanner ==0.2
-  - scientific ==0.3.4.10
+  - scientific ==0.3.4.12
   - scotty ==0.11.0
   - scrape-changes ==0.1.0.5
   - scrypt ==0.5.0
@@ -1747,7 +1840,7 @@ default-package-overrides:
   - serf ==0.1.1.0
   - servant ==0.9.1.1
   - servant-aeson-specs ==0.5.2.0
-  - servant-auth-cookie ==0.4.3.3
+  - servant-auth-cookie ==0.4.4
   - servant-blaze ==0.7.1
   - servant-cassava ==0.8
   - servant-client ==0.9.1.1
@@ -1759,7 +1852,9 @@ default-package-overrides:
   - servant-lucid ==0.7.1
   - servant-mock ==0.8.1.1
   - servant-purescript ==0.6.0.0
+  - servant-ruby ==0.2.1.0
   - servant-server ==0.9.1.1
+  - servant-static-th ==0.1.0.3
   - servant-subscriber ==0.5.0.3
   - servant-swagger ==1.1.2
   - servant-swagger-ui ==0.2.2.2.2.8
@@ -1769,6 +1864,7 @@ default-package-overrides:
   - serversession-frontend-wai ==1.0
   - serversession-frontend-yesod ==1.0
   - servius ==1.2.0.2
+  - set-cover ==0.0.8
   - set-monad ==0.2.0.0
   - setenv ==0.1.1.3
   - setlocale ==1.0.0.4
@@ -1806,8 +1902,9 @@ default-package-overrides:
   - smoothie ==0.4.2.6
   - smtLib ==1.0.8
   - smtp-mail ==0.1.4.6
+  - snap-blaze ==0.2.1.5
   - snap-core ==1.0.2.0
-  - snap-server ==1.0.1.1
+  - snap-server ==1.0.2.0
   - snowflake ==0.1.1.1
   - soap ==0.2.3.3
   - soap-openssl ==0.1.0.2
@@ -1836,6 +1933,7 @@ default-package-overrides:
   - Spock-worker ==0.3.1.0
   - spool ==0.1
   - spoon ==0.3.1
+  - spreadsheet ==0.1.3.4
   - sql-words ==0.1.4.1
   - sqlite-simple ==0.4.13.0
   - sqlite-simple-errors ==0.6.0.0
@@ -1843,6 +1941,7 @@ default-package-overrides:
   - stache ==0.2.2
   - stack-run-auto ==0.1.1.4
   - stack-type ==0.1.0.0
+  - stackage-curator ==0.14.5
   - state-plus ==0.1.2
   - stateref ==0.3
   - statestack ==0.2.0.5
@@ -1858,6 +1957,7 @@ default-package-overrides:
   - stm-containers ==0.2.15
   - stm-delay ==0.1.1.1
   - stm-extras ==0.1.0.2
+  - stm-split ==0.0.1
   - stm-stats ==0.2.0.0
   - stm-supply ==0.2.0.0
   - STMonadTrans ==0.4.3
@@ -1865,9 +1965,13 @@ default-package-overrides:
   - storable-complex ==0.2.2
   - storable-endian ==0.2.6
   - storable-record ==0.0.3.1
+  - storable-tuple ==0.0.3.2
+  - storablevector ==0.2.12
+  - storablevector-carray ==0.0
+  - store ==0.4.2
   - store-core ==0.4
   - Strafunski-StrategyLib ==5.0.0.10
-  - stratosphere ==0.4.1
+  - stratosphere ==0.4.2
   - streaming ==0.1.4.5
   - streaming-bytestring ==0.1.4.6
   - streaming-commons ==0.1.17
@@ -1909,6 +2013,7 @@ default-package-overrides:
   - system-posix-redirect ==1.1.0.1
   - syz ==0.2.0.0
   - tabular ==0.2.2.7
+  - tagchup ==0.4.0.5
   - tagged ==0.8.5
   - tagged-binary ==0.2.0.0
   - tagged-identity ==0.1.1
@@ -1935,20 +2040,23 @@ default-package-overrides:
   - tasty-program ==1.0.5
   - tasty-quickcheck ==0.8.4
   - tasty-rerun ==1.1.6
-  - tasty-silver ==3.1.9
+  - tasty-silver ==3.1.10
   - tasty-smallcheck ==0.8.1
   - tasty-stats ==0.2.0.2
   - tasty-tap ==0.0.4
-  - tasty-th ==0.1.4
+  - tasty-th ==0.1.7
   - Taxonomy ==1.0.2
   - TCache ==0.12.1
   - tce-conf ==1.3
   - tcp-streams ==0.6.0.0
   - tcp-streams-openssl ==0.6.0.0
+  - tdigest ==0.1
+  - tdigest-Chart ==0
   - telegram-api ==0.6.1.0
   - template ==0.2.0.10
   - temporary ==1.2.0.4
   - temporary-rc ==1.2.0.3
+  - termcolor ==0.2.0.0
   - terminal-progress-bar ==0.1.1
   - terminal-size ==0.3.2.1
   - terminfo ==0.4.0.2
@@ -1968,16 +2076,19 @@ default-package-overrides:
   - text-format ==0.3.1.1
   - text-generic-pretty ==1.2.1
   - text-icu ==0.7.0.1
+  - text-latin1 ==0.3
   - text-ldap ==0.1.1.8
   - text-manipulate ==0.2.0.1
   - text-metrics ==0.2.0
   - text-postgresql ==0.0.2.2
+  - text-printer ==0.5
   - text-region ==0.1.0.1
   - text-show ==3.4.1.1
   - text-show-instances ==3.5
   - text-zipper ==0.10
   - textlocal ==0.1.0.5
   - tf-random ==0.5
+  - tfp ==1.0.0.2
   - th-data-compat ==0.0.2.2
   - th-desugar ==1.6
   - th-expand-syns ==0.4.2.0
@@ -1997,6 +2108,7 @@ default-package-overrides:
   - through-text ==0.1.0.0
   - thumbnail-plus ==1.0.5
   - thyme ==0.3.5.5
+  - tibetan-utils ==0.1.1.2
   - tidal ==0.8.2
   - time-compat ==0.1.0.3
   - time-lens ==0.4.0.1
@@ -2026,7 +2138,7 @@ default-package-overrides:
   - tree-fun ==0.8.1.0
   - trifecta ==1.6.2.1
   - true-name ==0.1.0.2
-  - tsv2csv ==0.1.0.1
+  - tsv2csv ==0.1.0.2
   - ttrie ==0.1.2.1
   - tttool ==1.7.0.1
   - tuple ==0.3.0.2
@@ -2035,10 +2147,15 @@ default-package-overrides:
   - turtle ==1.3.2
   - turtle-options ==0.1.0.4
   - twitter-feed ==0.2.0.11
+  - twitter-types ==0.7.2.2
+  - twitter-types-lens ==0.7.2
   - type-aligned ==0.9.6
   - type-assertions ==0.1.0.0
+  - type-combinators ==0.2.4.3
   - type-eq ==0.5
   - type-fun ==0.1.1
+  - type-hint ==0.1
+  - type-level-integers ==0.0.1
   - type-level-kv-list ==1.1.0
   - type-level-numbers ==0.1.1.1
   - type-list ==0.5.0.0
@@ -2054,9 +2171,12 @@ default-package-overrides:
   - uglymemo ==0.1.0.1
   - unbound ==0.5.1
   - unbound-generics ==0.3.1
-  - unbounded-delays ==0.1.0.9
+  - unbounded-delays ==0.1.0.10
   - uncertain ==0.3.1.0
   - unexceptionalio ==0.3.0
+  - unfoldable ==0.9.2
+  - unfoldable-restricted ==0.0.2
+  - unicode ==0.0
   - unicode-show ==0.1.0.2
   - unicode-transforms ==0.2.1
   - unification-fd ==0.10.0.1
@@ -2065,6 +2185,8 @@ default-package-overrides:
   - uniplate ==1.6.12
   - uniq-deep ==1.1.0.0
   - Unique ==0.4.6.1
+  - unique ==0
+  - unit-constraint ==0.0.0
   - units ==2.4
   - units-defs ==2.0.1.1
   - units-parser ==0.1.0.0
@@ -2080,6 +2202,7 @@ default-package-overrides:
   - Unixutils ==1.54.1
   - unlit ==0.4.0.0
   - unordered-containers ==0.2.8.0
+  - unsafe ==0.0
   - uri-bytestring ==0.2.3.1
   - uri-encode ==1.5.0.5
   - uri-templater ==0.2.1.0
@@ -2105,7 +2228,7 @@ default-package-overrides:
   - vcswrapper ==0.1.5
   - vector ==0.11.0.0
   - vector-algorithms ==0.7.0.1
-  - vector-binary-instances ==0.2.3.4
+  - vector-binary-instances ==0.2.3.5
   - vector-buffer ==0.4.1
   - vector-fftw ==0.1.3.7
   - vector-instances ==3.4
@@ -2125,21 +2248,23 @@ default-package-overrides:
   - vty ==5.15
   - wai ==3.2.1.1
   - wai-app-static ==3.1.6.1
+  - wai-cli ==0.1.1
   - wai-conduit ==3.0.0.3
   - wai-cors ==0.2.5
   - wai-eventsource ==3.0.0
   - wai-extra ==3.0.19.1
   - wai-handler-launch ==3.0.2.2
   - wai-logger ==2.3.0
-  - wai-middleware-auth ==0.1.1.2
+  - wai-middleware-auth ==0.1.2.0
   - wai-middleware-caching ==0.1.0.2
   - wai-middleware-caching-lru ==0.1.0.0
   - wai-middleware-caching-redis ==0.2.0.0
   - wai-middleware-consul ==0.1.0.2
   - wai-middleware-content-type ==0.5.0.1
   - wai-middleware-crowd ==0.1.4.2
-  - wai-middleware-metrics ==0.2.3
+  - wai-middleware-metrics ==0.2.4
   - wai-middleware-prometheus ==0.1.0.1
+  - wai-middleware-rollbar ==0.3.0
   - wai-middleware-static ==0.8.1
   - wai-middleware-throttle ==0.2.1.0
   - wai-middleware-verbs ==0.3.2
@@ -2152,7 +2277,7 @@ default-package-overrides:
   - wai-transformers ==0.0.7
   - wai-websockets ==3.0.1.1
   - waitra ==0.0.4.0
-  - warp ==3.2.11.1
+  - warp ==3.2.11.2
   - warp-tls ==3.2.3
   - wave ==0.1.4
   - wavefront ==0.7.1
@@ -2168,9 +2293,10 @@ default-package-overrides:
   - webdriver-angular ==0.1.11
   - webkitgtk3 ==0.14.2.1
   - webkitgtk3-javascriptcore ==0.14.2.1
-  - webpage ==0.0.4
+  - webpage ==0.0.5
   - webrtc-vad ==0.1.0.3
   - websockets ==0.10.0.0
+  - websockets-rpc ==0.0.2
   - websockets-snap ==0.10.2.0
   - weigh ==0.0.3
   - wikicfp-scraper ==0.1.0.8
@@ -2199,11 +2325,11 @@ default-package-overrides:
   - wordpass ==1.0.0.7
   - Workflow ==0.8.3
   - wrap ==0.0.0
-  - wreq ==0.5.0.0
+  - wreq ==0.5.0.1
   - writer-cps-full ==0.1.0.0
   - writer-cps-lens ==0.1.0.1
   - writer-cps-morph ==0.1.0.2
-  - writer-cps-mtl ==0.1.1.2
+  - writer-cps-mtl ==0.1.1.3
   - writer-cps-transformers ==0.1.1.2
   - wuss ==1.1.3
   - X11 ==1.8
@@ -2222,6 +2348,7 @@ default-package-overrides:
   - xlsx ==0.4.3
   - xlsx-tabular ==0.2.2
   - xml ==1.3.14
+  - xml-basic ==0.1.1.3
   - xml-conduit ==1.4.0.4
   - xml-conduit-parse ==0.3.1.0
   - xml-conduit-writer ==0.1.1.1
@@ -2249,7 +2376,7 @@ default-package-overrides:
   - yesod-auth-basic ==0.1.0.2
   - yesod-auth-hashdb ==1.6.0.1
   - yesod-bin ==1.5.2.2
-  - yesod-core ==1.4.32
+  - yesod-core ==1.4.33
   - yesod-eventsource ==1.4.1
   - yesod-fay ==0.8.0
   - yesod-form ==1.4.11
@@ -2279,11 +2406,15 @@ default-package-overrides:
   - yi-rope ==0.8
   - yi-snippet ==0.13.5
   - yjtools ==0.9.18
+  - yoga ==0.0.0.1
+  - youtube ==0.2.1
   - zero ==0.1.4
   - zeromq4-haskell ==0.6.5
-  - zip ==0.1.9
+  - zip ==0.1.10
   - zip-archive ==0.3.0.5
   - zippers ==0.2.2
+  - ziptastic-client ==0.3.0.1
+  - ziptastic-core ==0.2.0.1
   - zlib ==0.6.1.2
   - zlib-bindings ==0.1.1.5
   - zlib-lens ==0.1.2.1
@@ -2316,6 +2447,8 @@ extra-packages:
   - seqid < 0.2                         # newer versions depend on transformers 0.4.x which we cannot provide in GHC 7.8.x
   - seqid-streams < 0.2                 # newer versions depend on transformers 0.4.x which we cannot provide in GHC 7.8.x
   - split < 0.2                         # newer versions don't work with GHC 6.12.3
+  - store < 0.4                         # needed by stack 1.4.0
+  - store-core < 0.4                    # needed by stack 1.4.0
   - tar < 0.4.2.0                       # later versions don't work with GHC < 7.6.x
   - transformers == 0.4.3.*             # the latest version isn't supported by mtl yet
   - vector < 0.10.10                    # newer versions don't work with GHC 6.12.3
@@ -2409,12 +2542,14 @@ dont-distribute-packages:
   shine-varying:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
 
   # these packages depend on software with an unfree license
+  accelerate-bignum:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   accelerate-cublas:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   accelerate-cuda:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   accelerate-cufft:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   accelerate-examples:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   accelerate-fft:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   accelerate-fourier-benchmark:                 [ i686-linux, x86_64-linux, x86_64-darwin ]
+  accelerate-llvm-ptx:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   bindings-yices:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   ccelerate-cuda:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   cublas:                                       [ 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 017f2ea7637..b9e96886ac5 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -126,8 +126,7 @@ self: super: builtins.intersectAttrs super {
   glib = disableHardening (addPkgconfigDepend (addBuildTool super.glib self.gtk2hs-buildtools) pkgs.glib) ["fortify"];
   gtk3 = disableHardening (super.gtk3.override { inherit (pkgs) gtk3; }) ["fortify"];
   gtk = disableHardening (addPkgconfigDepend (addBuildTool super.gtk self.gtk2hs-buildtools) pkgs.gtk2) ["fortify"];
-  gtksourceview2 = (addPkgconfigDepend super.gtksourceview2 pkgs.gtk2).override { inherit (pkgs.gnome2) gtksourceview; };
-  gtksourceview3 = super.gtksourceview3.override { inherit (pkgs.gnome3) gtksourceview; };
+  gtksourceview2 = addPkgconfigDepend super.gtksourceview2 pkgs.gtk2;
 
   # Need WebkitGTK, not just webkit.
   webkit = super.webkit.override { webkit = pkgs.webkitgtk2; };
@@ -239,6 +238,8 @@ self: super: builtins.intersectAttrs super {
       }
     );
 
+  llvm-hs = super.llvm-hs.override { llvm-config = pkgs.llvm_4; };
+
   # Needs help finding LLVM.
   spaceprobe = addBuildTool super.spaceprobe self.llvmPackages.llvm;
 
diff --git a/pkgs/development/haskell-modules/default.nix b/pkgs/development/haskell-modules/default.nix
index 694556123ab..8090732ddee 100644
--- a/pkgs/development/haskell-modules/default.nix
+++ b/pkgs/development/haskell-modules/default.nix
@@ -6,103 +6,13 @@
 
 let
 
-  inherit (stdenv.lib) fix' extends makeOverridable makeExtensible;
-  inherit (import ./lib.nix { inherit pkgs; }) overrideCabal;
+  inherit (stdenv.lib) extends makeExtensible;
+  inherit (import ./lib.nix { inherit pkgs; }) overrideCabal makePackageSet;
 
-  haskellPackages = self:
-    let
-
-      mkDerivationImpl = pkgs.callPackage ./generic-builder.nix {
-        inherit stdenv;
-        inherit (pkgs) fetchurl pkgconfig glibcLocales coreutils gnugrep gnused;
-        nodejs = pkgs.nodejs-slim;
-        jailbreak-cabal = if (self.ghc.cross or null) != null
-          then self.ghc.bootPkgs.jailbreak-cabal
-          else self.jailbreak-cabal;
-        inherit (self) ghc;
-        hscolour = overrideCabal self.hscolour (drv: {
-          isLibrary = false;
-          doHaddock = false;
-          hyperlinkSource = false;      # Avoid depending on hscolour for this build.
-          postFixup = "rm -rf $out/lib $out/share $out/nix-support";
-        });
-        cpphs = overrideCabal (self.cpphs.overrideScope (self: super: {
-          mkDerivation = drv: super.mkDerivation (drv // {
-            enableSharedExecutables = false;
-            enableSharedLibraries = false;
-            doHaddock = false;
-            useCpphs = false;
-          });
-        })) (drv: {
-            isLibrary = false;
-            postFixup = "rm -rf $out/lib $out/share $out/nix-support";
-        });
-      };
-
-      mkDerivation = makeOverridable mkDerivationImpl;
-
-      callPackageWithScope = scope: drv: args: (stdenv.lib.callPackageWith scope drv args) // {
-        overrideScope = f: callPackageWithScope (mkScope (fix' (extends f scope.__unfix__))) drv args;
-      };
-
-      mkScope = scope: pkgs // pkgs.xorg // pkgs.gnome2 // scope;
-      defaultScope = mkScope self;
-      callPackage = drv: args: callPackageWithScope defaultScope drv args;
-
-      withPackages = packages: callPackage ./with-packages-wrapper.nix {
-        inherit (self) llvmPackages;
-        haskellPackages = self;
-        inherit packages;
-      };
-
-      haskellSrc2nix = { name, src, sha256 ? null }:
-        let
-          sha256Arg = if isNull sha256 then "--sha256=" else ''--sha256="${sha256}"'';
-        in pkgs.stdenv.mkDerivation {
-          name = "cabal2nix-${name}";
-          buildInputs = [ pkgs.cabal2nix ];
-          phases = ["installPhase"];
-          LANG = "en_US.UTF-8";
-          LOCALE_ARCHIVE = pkgs.lib.optionalString pkgs.stdenv.isLinux "${pkgs.glibcLocales}/lib/locale/locale-archive";
-          installPhase = ''
-            export HOME="$TMP"
-            mkdir -p "$out"
-            cabal2nix --compiler=${self.ghc.name} --system=${stdenv.system} ${sha256Arg} "${src}" > "$out/default.nix"
-          '';
-      };
-
-      hackage2nix = name: version: haskellSrc2nix {
-        name   = "${name}-${version}";
-        sha256 = ''$(sed -e 's/.*"SHA256":"//' -e 's/".*$//' "${all-cabal-hashes}/${name}/${version}/${name}.json")'';
-        src    = "${all-cabal-hashes}/${name}/${version}/${name}.cabal";
-      };
-
-    in
-      import ./hackage-packages.nix { inherit pkgs stdenv callPackage; } self // {
-
-        inherit mkDerivation callPackage haskellSrc2nix hackage2nix;
-
-        callHackage = name: version: self.callPackage (self.hackage2nix name version);
-
-        # Creates a Haskell package from a source package by calling cabal2nix on the source.
-        callCabal2nix = name: src: self.callPackage (self.haskellSrc2nix { inherit src name; });
-
-        ghcWithPackages = selectFrom: withPackages (selectFrom self);
-
-        ghcWithHoogle = selectFrom:
-          let
-            packages = selectFrom self;
-            hoogle = callPackage ./hoogle.nix {
-              inherit packages;
-            };
-          in withPackages (packages ++ [ hoogle ]);
-
-        ghc = ghc // {
-          withPackages = self.ghcWithPackages;
-          withHoogle = self.ghcWithHoogle;
-        };
-
-      };
+  haskellPackages = makePackageSet {
+    package-set = import ./hackage-packages.nix;
+    inherit ghc;
+  };
 
   commonConfiguration = import ./configuration-common.nix { inherit pkgs; };
   nixConfiguration = import ./configuration-nix.nix { inherit pkgs; };
diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix
index 1f5d97941ce..f7d16a89df8 100644
--- a/pkgs/development/haskell-modules/generic-builder.nix
+++ b/pkgs/development/haskell-modules/generic-builder.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, ghc, pkgconfig, glibcLocales, coreutils, gnugrep, gnused
-, jailbreak-cabal, hscolour, cpphs, nodejs
+, jailbreak-cabal, hscolour, cpphs, nodejs, lib
 }: let isCross = (ghc.cross or null) != null; in
 
 { pname
@@ -53,7 +53,7 @@
 , shellHook ? ""
 , coreSetup ? false # Use only core packages to build Setup.hs.
 , useCpphs ? false
-, hardeningDisable ? []
+, hardeningDisable ? lib.optional (ghc.isHaLVM or false) "all"
 } @ args:
 
 assert editedCabalFile != null -> revision != null;
@@ -125,7 +125,6 @@ let
   ] ++ optionals (enableDeadCodeElimination && (stdenv.lib.versionOlder "8.0.1" ghc.version)) [
      "--ghc-option=-split-sections"
   ] ++ optionals isGhcjs [
-    "--with-hsc2hs=${nativeGhc}/bin/hsc2hs"
     "--ghcjs"
   ] ++ optionals isCross ([
     "--configure-option=--host=${ghc.cross.config}"
@@ -150,6 +149,8 @@ let
                      buildTools ++ libraryToolDepends ++ executableToolDepends ++
                      optionals (allPkgconfigDepends != []) ([pkgconfig] ++ allPkgconfigDepends) ++
                      optionals doCheck (testDepends ++ testHaskellDepends ++ testSystemDepends ++ testToolDepends) ++
+                     # ghcjs's hsc2hs calls out to the native hsc2hs
+                     optional isGhcjs nativeGhc ++
                      optionals withBenchmarkDepends (benchmarkDepends ++ benchmarkHaskellDepends ++ benchmarkSystemDepends ++ benchmarkToolDepends);
   allBuildInputs = propagatedBuildInputs ++ otherBuildInputs;
 
@@ -329,9 +330,11 @@ stdenv.mkDerivation ({
         export NIX_${ghcCommandCaps}="${ghcEnv}/bin/${ghcCommand}"
         export NIX_${ghcCommandCaps}PKG="${ghcEnv}/bin/${ghcCommand}-pkg"
         export NIX_${ghcCommandCaps}_DOCDIR="${ghcEnv}/share/doc/ghc/html"
-        '' + (if isHaLVM
-	       then ''export NIX_${ghcCommandCaps}_LIBDIR="${ghcEnv}/lib/HaLVM-${ghc.version}"''
-	       else ''export NIX_${ghcCommandCaps}_LIBDIR="${ghcEnv}/lib/${ghcCommand}-${ghc.version}"'') + "${shellHook}";
+        ${if isHaLVM
+            then ''export NIX_${ghcCommandCaps}_LIBDIR="${ghcEnv}/lib/HaLVM-${ghc.version}"''
+            else ''export NIX_${ghcCommandCaps}_LIBDIR="${ghcEnv}/lib/${ghcCommand}-${ghc.version}"''}
+        ${shellHook}
+      '';
     };
   };
 
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index e709108e9d8..ee906366630 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -1377,8 +1377,8 @@ self: {
      }:
      mkDerivation {
        pname = "BioHMM";
-       version = "1.0.7";
-       sha256 = "935925dabec9ebabc50947ffcb9c355639a2c1939bf68c712b3c32773a1c5685";
+       version = "1.1.0";
+       sha256 = "0072b6a48008d3f3ffb360d7c6ba493f44167a3f9eb5341a9ff25fc6f8dbc78a";
        libraryHaskellDepends = [
          base colour diagrams-cairo diagrams-lib directory either-unwrap
          filepath parsec ParsecTools StockholmAlignment SVGFonts text vector
@@ -1679,16 +1679,20 @@ self: {
 
   "BitStringRandomMonad" = callPackage
     ({ mkDerivation, base, bitstring, bytestring, mtl, parallel
-     , primitive, transformers, vector
+     , primitive, QuickCheck, transformers, vector
      }:
      mkDerivation {
        pname = "BitStringRandomMonad";
-       version = "0.1.1.2";
-       sha256 = "96a5bb1cb04427a64be71f83d1a09abb950d3023ae80e3811a304748ace16dbf";
+       version = "0.2.0.2";
+       sha256 = "9142bd6d2494e6585037efe2c4e9040dcb7b781cfa1881d116b2534abf1333fc";
        libraryHaskellDepends = [
          base bitstring bytestring mtl parallel primitive transformers
          vector
        ];
+       testHaskellDepends = [
+         base bitstring bytestring mtl parallel primitive QuickCheck
+         transformers vector
+       ];
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
@@ -1807,6 +1811,21 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "Blogdown" = callPackage
+    ({ mkDerivation, base, containers, MissingH, parsec }:
+     mkDerivation {
+       pname = "Blogdown";
+       version = "0.1.0";
+       sha256 = "e4485ea5f4b61b5887b930e23f7a3d0a1ed0068070c18aceff511ab980bd5532";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base containers MissingH parsec ];
+       executableHaskellDepends = [ base containers MissingH parsec ];
+       testHaskellDepends = [ base containers MissingH parsec ];
+       description = "A markdown-like markup language designed for blog posts";
+       license = stdenv.lib.licenses.agpl3;
+     }) {};
+
   "BluePrintCSS" = callPackage
     ({ mkDerivation, base, mtl }:
      mkDerivation {
@@ -3856,12 +3875,16 @@ self: {
      }) {};
 
   "DeepDarkFantasy" = callPackage
-    ({ mkDerivation, base, constraints, mtl, random }:
+    ({ mkDerivation, base, bimap, constraints, containers, mtl, random
+     }:
      mkDerivation {
        pname = "DeepDarkFantasy";
-       version = "0.2017.3.28";
-       sha256 = "e9dd1618c3e002cbf4fc6da18ad06202488b673b5d9e3ee5569830c5fc512f2d";
-       libraryHaskellDepends = [ base constraints mtl random ];
+       version = "0.2017.4.19";
+       sha256 = "3f0babaaaaa01d599bdcdf9926468e024a225480982d7b843ae4133bdd31d9a5";
+       libraryHaskellDepends = [
+         base bimap constraints containers mtl random
+       ];
+       testHaskellDepends = [ base constraints mtl random ];
        description = "A DSL for creating neural network";
        license = stdenv.lib.licenses.asl20;
      }) {};
@@ -6140,6 +6163,32 @@ self: {
        license = "GPL";
      }) {};
 
+  "Gene-CluEDO" = callPackage
+    ({ mkDerivation, ADPfusion, ADPfusionSet, base, cmdargs, containers
+     , filepath, FormalGrammars, log-domain, PrimitiveArray
+     , PrimitiveArray-Pretty, QuickCheck, ShortestPathProblems, tasty
+     , tasty-quickcheck, tasty-th, text, vector
+     }:
+     mkDerivation {
+       pname = "Gene-CluEDO";
+       version = "0.0.0.1";
+       sha256 = "88f801a06169d9748d5eabfe21638445d2d6dcfb2f4394c8c286e762cd35b010";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         ADPfusion ADPfusionSet base containers filepath FormalGrammars
+         log-domain PrimitiveArray PrimitiveArray-Pretty
+         ShortestPathProblems text vector
+       ];
+       executableHaskellDepends = [ base cmdargs filepath ];
+       testHaskellDepends = [
+         base QuickCheck tasty tasty-quickcheck tasty-th vector
+       ];
+       homepage = "https://github.com/choener/Gene-CluEDO";
+       description = "Hox gene clustering";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "GeneralTicTacToe" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -8412,20 +8461,21 @@ self: {
      }) {};
 
   "HUnit-Plus" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, cmdargs, containers
-     , directory, hashable, hexpat, hostname, parsec, time, timeit
+    ({ mkDerivation, base, bytestring, Cabal, cmdargs, directory
+     , hashable, hexpat, hostname, parsec, text, time, timeit
+     , unordered-containers
      }:
      mkDerivation {
        pname = "HUnit-Plus";
-       version = "1.1.0";
-       sha256 = "9cde0930c46c02833e82b10519bcc841ce5186a62be3bb29971538e85a5fcb74";
+       version = "2.0.0";
+       sha256 = "b225e07debe503d572e729c50b08d63a1dec76bbb0e9d2e35aedf05e45bb76f5";
        libraryHaskellDepends = [
-         base bytestring Cabal cmdargs containers hashable hexpat hostname
-         parsec time timeit
+         base bytestring Cabal cmdargs hashable hexpat hostname parsec text
+         time timeit unordered-containers
        ];
        testHaskellDepends = [
-         base bytestring Cabal cmdargs containers directory hashable hexpat
-         hostname parsec time timeit
+         base bytestring Cabal cmdargs directory hashable hexpat hostname
+         parsec text time timeit unordered-containers
        ];
        homepage = "https://github.com/emc2/HUnit-Plus";
        description = "A test framework building on HUnit";
@@ -9588,8 +9638,27 @@ self: {
      }:
      mkDerivation {
        pname = "HsOpenSSL";
-       version = "0.11.4.4";
-       sha256 = "efb284b5a3c55c2c83ba3ede5810bdd1efabf1939b40317023a090046a6849eb";
+       version = "0.11.4.6";
+       sha256 = "1ad6cbb50fc1ecaa98baa6de3660a9b82a9d101f17396b0da9b6c598b1114c4c";
+       libraryHaskellDepends = [
+         base bytestring integer-gmp network time
+       ];
+       librarySystemDepends = [ openssl ];
+       testHaskellDepends = [ base bytestring ];
+       homepage = "https://github.com/vshabanov/HsOpenSSL";
+       description = "Partial OpenSSL binding for Haskell";
+       license = stdenv.lib.licenses.publicDomain;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) openssl;};
+
+  "HsOpenSSL_0_11_4_7" = callPackage
+    ({ mkDerivation, base, bytestring, integer-gmp, network, openssl
+     , time
+     }:
+     mkDerivation {
+       pname = "HsOpenSSL";
+       version = "0.11.4.7";
+       sha256 = "d37bc6ce6e9a36d725a91763bafdb492a61d18630968aab5ee7f2493e89d5f64";
        libraryHaskellDepends = [
          base bytestring integer-gmp network time
        ];
@@ -9883,6 +9952,55 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "IPv6Addr_1_0_1" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, HUnit, iproute, network
+     , network-info, random, test-framework, test-framework-hunit, text
+     }:
+     mkDerivation {
+       pname = "IPv6Addr";
+       version = "1.0.1";
+       sha256 = "dff7e9d19e60f08401fd79a8d5004b2166d45d0a1160e5705aac821268a54207";
+       libraryHaskellDepends = [
+         aeson attoparsec base iproute network network-info random text
+       ];
+       testHaskellDepends = [
+         base HUnit test-framework test-framework-hunit text
+       ];
+       homepage = "https://github.com/MichelBoucey/IPv6Addr";
+       description = "Library to deal with IPv6 address text representations";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "IPv6DB" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, fast-logger
+     , hedis, hspec, http-client, http-types, IPv6Addr, mtl
+     , optparse-applicative, text, unordered-containers, vector, wai
+     , wai-logger, warp
+     }:
+     mkDerivation {
+       pname = "IPv6DB";
+       version = "0.2.0";
+       sha256 = "13c85bda2961b8748bcf643e32010322cb389da813d4bd306b1fee040d873809";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson attoparsec base bytestring hedis http-types IPv6Addr mtl text
+         unordered-containers vector
+       ];
+       executableHaskellDepends = [
+         aeson base bytestring fast-logger hedis http-types IPv6Addr mtl
+         optparse-applicative text unordered-containers vector wai
+         wai-logger warp
+       ];
+       testHaskellDepends = [
+         aeson base hspec http-client http-types vector
+       ];
+       homepage = "https://github.com/MichelBoucey/IPv6DB";
+       description = "A RESTful Web Service for IPv6-related data";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "IcoGrid" = callPackage
     ({ mkDerivation, array, base, GlomeVec }:
      mkDerivation {
@@ -10708,6 +10826,8 @@ self: {
        pname = "LambdaHack";
        version = "0.5.0.0";
        sha256 = "2587949dcdd9f2336b5365031340a0e7aa7705b7ce088dafc9b14a208051f96f";
+       revision = "1";
+       editedCabalFile = "a5df58582a0410c3f44a573d35970564dfbc998c9c88e065765d2646169bbcf7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -13037,8 +13157,8 @@ self: {
      }:
      mkDerivation {
        pname = "OpenAFP";
-       version = "1.4.2";
-       sha256 = "80558f9ac3512a98e25ace02ceed4ad5ddcf8727335b54c2b9ef3fee7ccf1e75";
+       version = "1.4.3";
+       sha256 = "47079d59bdd48df14da3020c6ad3f072727c83cb9854be6aacbe325f28793c7e";
        libraryHaskellDepends = [
          array base binary bytestring containers directory hashable
          hashtables mtl process regex-compat
@@ -16445,8 +16565,8 @@ self: {
      }:
      mkDerivation {
        pname = "StockholmAlignment";
-       version = "1.0.1";
-       sha256 = "04ae48d0061e8c7b8120c924677c33179cd837b2171e295c30558ad31583867f";
+       version = "1.0.2";
+       sha256 = "4267e5eeb5bf0f962c557ac84cf7dfec748e442d091fd12e687d033993213abb";
        libraryHaskellDepends = [
          base colour diagrams-cairo diagrams-lib directory either-unwrap
          filepath parsec ParsecTools SVGFonts text vector
@@ -17348,6 +17468,8 @@ self: {
        pname = "TypeCompose";
        version = "0.9.12";
        sha256 = "3a182c2cc93f8291b3aedfc32c0b1faa84a982601c1a24cbe7fe1ecc50e333e2";
+       revision = "1";
+       editedCabalFile = "038b7158deba8f68b9b32b05eb47d6ebc8709b1c960cb44d50469d1a5deb4748";
        libraryHaskellDepends = [ base base-orphans ];
        homepage = "https://github.com/conal/TypeCompose";
        description = "Type composition classes & instances";
@@ -18056,14 +18178,14 @@ self: {
      }) {advapi32 = null; gdi32 = null; shell32 = null; 
          shfolder = null; user32 = null; winmm = null;};
 
-  "Win32_2_5_3_0" = callPackage
+  "Win32_2_5_4_1" = callPackage
     ({ mkDerivation, advapi32, base, bytestring, filepath, gdi32, imm32
      , msimg32, shell32, shfolder, shlwapi, user32, winmm
      }:
      mkDerivation {
        pname = "Win32";
-       version = "2.5.3.0";
-       sha256 = "fd66d7feafc7863cbd0726c8dbf605a007804e009fe4e5b5ebdf4f4727257c31";
+       version = "2.5.4.1";
+       sha256 = "cc183e9e545ad04fe8e509eb9447e9d11b160b2027482230cee8cdc141fd3d64";
        libraryHaskellDepends = [ base bytestring filepath ];
        librarySystemDepends = [
          advapi32 gdi32 imm32 msimg32 shell32 shfolder shlwapi user32 winmm
@@ -19138,6 +19260,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "accelerate_1_0_0_0" = callPackage
+    ({ mkDerivation, base, base-orphans, containers, deepseq, directory
+     , exceptions, fclabels, filepath, ghc-prim, hashable, hashtables
+     , mtl, pretty, template-haskell, time, transformers, unique, unix
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "accelerate";
+       version = "1.0.0.0";
+       sha256 = "26bd346b77852ebaeef32e18907272e7b0cc54b033a2fcc7f24ee1afa0e8f112";
+       libraryHaskellDepends = [
+         base base-orphans containers deepseq directory exceptions fclabels
+         filepath ghc-prim hashable hashtables mtl pretty template-haskell
+         time transformers unique unix unordered-containers
+       ];
+       homepage = "https://github.com/AccelerateHS/accelerate/";
+       description = "An embedded language for accelerated array processing";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "accelerate-arithmetic" = callPackage
     ({ mkDerivation, accelerate, accelerate-utility, base, QuickCheck
      , utility-ht
@@ -19158,6 +19301,34 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "accelerate-bignum" = callPackage
+    ({ mkDerivation, accelerate, accelerate-io, accelerate-llvm
+     , accelerate-llvm-native, accelerate-llvm-ptx, base, criterion
+     , ghc-prim, llvm-hs-pure, mwc-random, tasty, tasty-quickcheck
+     , template-haskell, vector, vector-th-unbox, wide-word
+     }:
+     mkDerivation {
+       pname = "accelerate-bignum";
+       version = "0.1.0.0";
+       sha256 = "7c18c467d646ed30131ad197144c4f7fa6ce3e821d41c6db3dba4361f04e30a5";
+       libraryHaskellDepends = [
+         accelerate accelerate-llvm accelerate-llvm-native
+         accelerate-llvm-ptx base ghc-prim llvm-hs-pure template-haskell
+       ];
+       testHaskellDepends = [
+         accelerate accelerate-llvm-native accelerate-llvm-ptx base tasty
+         tasty-quickcheck
+       ];
+       benchmarkHaskellDepends = [
+         accelerate accelerate-io accelerate-llvm-native accelerate-llvm-ptx
+         base criterion mwc-random vector vector-th-unbox wide-word
+       ];
+       homepage = "https://github.com/tmcdonell/accelerate-bignum";
+       description = "Fixed-length large integer arithmetic for Accelerate";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "accelerate-cublas" = callPackage
     ({ mkDerivation, accelerate, accelerate-arithmetic, accelerate-cuda
      , accelerate-io, accelerate-utility, base, cublas, cuda, random
@@ -19185,18 +19356,20 @@ self: {
 
   "accelerate-cuda" = callPackage
     ({ mkDerivation, accelerate, array, base, binary, bytestring
-     , cryptohash, cuda, directory, fclabels, filepath, hashable
-     , hashtables, language-c-quote, mainland-pretty, mtl, old-time
-     , pretty, process, SafeSemaphore, srcloc, template-haskell, text
-     , transformers, unix, unordered-containers
+     , containers, cryptohash, cuda, directory, fclabels, filepath
+     , hashable, hashtables, language-c-quote, mainland-pretty, mtl
+     , old-time, pretty, process, SafeSemaphore, srcloc
+     , template-haskell, text, transformers, unix, unordered-containers
      }:
      mkDerivation {
        pname = "accelerate-cuda";
-       version = "0.16.0.0";
-       sha256 = "a5856713e24d2441823f3e53b7edaff3808b9757c687ca0c9fcf014a8001f7e5";
+       version = "0.17.0.0";
+       sha256 = "8bf1a11683db753961ce138aae1726f51aa93ff1bd29e9d30c0e53b60ad5b682";
+       revision = "3";
+       editedCabalFile = "7593f53c4d1e4851e226fef9f51b60b9addfc1cf7ed5f0f67eb2d3728e7f8013";
        libraryHaskellDepends = [
-         accelerate array base binary bytestring cryptohash cuda directory
-         fclabels filepath hashable hashtables language-c-quote
+         accelerate array base binary bytestring containers cryptohash cuda
+         directory fclabels filepath hashable hashtables language-c-quote
          mainland-pretty mtl old-time pretty process SafeSemaphore srcloc
          template-haskell text transformers unix unordered-containers
        ];
@@ -19227,37 +19400,41 @@ self: {
      }) {};
 
   "accelerate-examples" = callPackage
-    ({ mkDerivation, accelerate, accelerate-cuda, accelerate-fft
-     , accelerate-io, ansi-wl-pprint, array, attoparsec, base, binary
-     , bmp, bytestring, bytestring-lexing, cereal, containers, criterion
-     , directory, ekg, fclabels, filepath, gloss, gloss-accelerate
-     , gloss-raster-accelerate, gloss-rendering, HUnit, mwc-random
-     , normaldistribution, primitive, QuickCheck, random, repa, repa-io
-     , test-framework, test-framework-hunit, test-framework-quickcheck2
-     , vector, vector-algorithms
+    ({ mkDerivation, accelerate, accelerate-fft, accelerate-io
+     , accelerate-llvm-native, accelerate-llvm-ptx, ansi-wl-pprint
+     , array, base, binary, bmp, bytestring, bytestring-lexing, cereal
+     , colour-accelerate, containers, criterion, directory, fclabels
+     , filepath, gloss, gloss-accelerate, gloss-raster-accelerate
+     , gloss-rendering, HUnit, lens-accelerate, linear
+     , linear-accelerate, matrix-market-attoparsec, mwc-random
+     , normaldistribution, pipes, QuickCheck, random, repa, repa-io
+     , scientific, test-framework, test-framework-hunit
+     , test-framework-quickcheck2, vector, vector-algorithms
      }:
      mkDerivation {
        pname = "accelerate-examples";
-       version = "0.15.1.0";
-       sha256 = "2191601709da693aedb29f570e44b899b5132d2bc05fe618bc93608a43fec4a2";
+       version = "1.0.0.0";
+       sha256 = "a659dc486da23d220aeefac958008ae9c0a214570008bfa6eaccb6fc02ac05e9";
        revision = "2";
-       editedCabalFile = "bcebd104b948308a60f7f5ff63cdacb7e4b07d84be73fe3a83c5ef641a2b41f4";
+       editedCabalFile = "161778294ea7ef8ffbd452f6f0321113e8e7ee72bb369862ddfce6e69a4f7532";
        configureFlags = [ "-f-opencl" ];
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         accelerate accelerate-cuda ansi-wl-pprint base containers criterion
-         directory ekg fclabels HUnit mwc-random QuickCheck test-framework
-         test-framework-hunit test-framework-quickcheck2
+         accelerate accelerate-llvm-native accelerate-llvm-ptx
+         ansi-wl-pprint base containers criterion directory fclabels HUnit
+         linear mwc-random QuickCheck test-framework test-framework-hunit
+         test-framework-quickcheck2
        ];
        executableHaskellDepends = [
-         accelerate accelerate-cuda accelerate-fft accelerate-io array
-         attoparsec base binary bmp bytestring bytestring-lexing cereal
-         containers criterion directory fclabels filepath gloss
-         gloss-accelerate gloss-raster-accelerate gloss-rendering HUnit
-         mwc-random normaldistribution primitive QuickCheck random repa
-         repa-io test-framework test-framework-hunit
-         test-framework-quickcheck2 vector vector-algorithms
+         accelerate accelerate-fft accelerate-io array base binary bmp
+         bytestring bytestring-lexing cereal colour-accelerate containers
+         criterion directory fclabels filepath gloss gloss-accelerate
+         gloss-raster-accelerate gloss-rendering HUnit lens-accelerate
+         linear-accelerate matrix-market-attoparsec mwc-random
+         normaldistribution pipes QuickCheck random repa repa-io scientific
+         test-framework test-framework-hunit test-framework-quickcheck2
+         vector vector-algorithms
        ];
        homepage = "https://github.com/AccelerateHS/accelerate-examples";
        description = "Examples using the Accelerate library";
@@ -19266,15 +19443,20 @@ self: {
      }) {};
 
   "accelerate-fft" = callPackage
-    ({ mkDerivation, accelerate, accelerate-cuda, base, cuda, cufft }:
+    ({ mkDerivation, accelerate, accelerate-llvm
+     , accelerate-llvm-native, accelerate-llvm-ptx, base, bytestring
+     , carray, cuda, cufft, fft, file-embed, storable-complex
+     }:
      mkDerivation {
        pname = "accelerate-fft";
-       version = "0.15.1.0";
-       sha256 = "fd2648931ce4607aba4ad527691a4bba0f043ea4182a160aa8f024152101a702";
+       version = "1.0.0.0";
+       sha256 = "784a486d36ac3af714952744f5f592242f11f477bdf8b336356857d593a584e3";
        revision = "1";
-       editedCabalFile = "c283fc3767bf4281da75b958ae0c8a404ba0e26f7c7b746158355e6824e2d22d";
+       editedCabalFile = "cd5289477e41960b44fe1f5c091801dc54e3751814ad58817e34ea28b9602f80";
        libraryHaskellDepends = [
-         accelerate accelerate-cuda base cuda cufft
+         accelerate accelerate-llvm accelerate-llvm-native
+         accelerate-llvm-ptx base bytestring carray cuda cufft fft
+         file-embed storable-complex
        ];
        homepage = "https://github.com/AccelerateHS/accelerate-fft";
        description = "FFT using the Accelerate library";
@@ -19352,8 +19534,8 @@ self: {
      }:
      mkDerivation {
        pname = "accelerate-io";
-       version = "0.15.1.0";
-       sha256 = "d531fc6c950a6fcf0bdd72c65438c27fbffe2f3043444128979490d53fc7677c";
+       version = "1.0.0.0";
+       sha256 = "d12b3b85b488a860bee0c4d54c98d22a327e3264f5e8d328109035162cc8b640";
        libraryHaskellDepends = [
          accelerate array base bmp bytestring repa vector
        ];
@@ -19363,6 +19545,67 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "accelerate-llvm" = callPackage
+    ({ mkDerivation, abstract-deque, accelerate, base, chaselev-deque
+     , containers, data-default-class, dlist, exceptions, fclabels
+     , llvm-hs, llvm-hs-pure, mtl, mwc-random, unordered-containers
+     , vector
+     }:
+     mkDerivation {
+       pname = "accelerate-llvm";
+       version = "1.0.0.0";
+       sha256 = "b0ead40df7ff37ffd97374c5320c099cc85399af74e12b375dec46c172988ccf";
+       revision = "6";
+       editedCabalFile = "f9176273927c5a66cbd32d5039bd4d01ef33783fb5a8e7b24ec6f64da09e1ae6";
+       libraryHaskellDepends = [
+         abstract-deque accelerate base chaselev-deque containers
+         data-default-class dlist exceptions fclabels llvm-hs llvm-hs-pure
+         mtl mwc-random unordered-containers vector
+       ];
+       description = "Accelerate backend generating LLVM";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "accelerate-llvm-native" = callPackage
+    ({ mkDerivation, accelerate, accelerate-llvm, base, containers
+     , directory, dlist, fclabels, libffi, llvm-hs, llvm-hs-pure, mtl
+     , time
+     }:
+     mkDerivation {
+       pname = "accelerate-llvm-native";
+       version = "1.0.0.0";
+       sha256 = "2dca18b74e9eddb031d85bbf23a20dcdd0ee96a8b47b44ea2028e75fbabb0855";
+       revision = "1";
+       editedCabalFile = "6cc24adf5c991e7776a8ad0393bc7899caee5e431c8d90bccaf1f8610ae0811d";
+       libraryHaskellDepends = [
+         accelerate accelerate-llvm base containers directory dlist fclabels
+         libffi llvm-hs llvm-hs-pure mtl time
+       ];
+       description = "Accelerate backend generating LLVM";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "accelerate-llvm-ptx" = callPackage
+    ({ mkDerivation, accelerate, accelerate-llvm, base, bytestring
+     , containers, cuda, directory, dlist, fclabels, filepath, hashable
+     , llvm-hs, llvm-hs-pure, mtl, pretty, time, unordered-containers
+     }:
+     mkDerivation {
+       pname = "accelerate-llvm-ptx";
+       version = "1.0.0.0";
+       sha256 = "4fae1fb91339ce1e989f9fc8063869e68eb3cf152d972ec1913d6f5f37d12d0e";
+       revision = "1";
+       editedCabalFile = "c9e468c5a8c75f231122ba116ae645734f13051ef0163fef2a47bd2ea0278592";
+       libraryHaskellDepends = [
+         accelerate accelerate-llvm base bytestring containers cuda
+         directory dlist fclabels filepath hashable llvm-hs llvm-hs-pure mtl
+         pretty time unordered-containers
+       ];
+       description = "Accelerate backend generating LLVM";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "accelerate-random" = callPackage
     ({ mkDerivation, accelerate, base, mwc-random }:
      mkDerivation {
@@ -20473,6 +20716,8 @@ self: {
        pname = "aeson";
        version = "1.0.2.1";
        sha256 = "e0a66fba0a9996063d0e241b0b868c6271b6aeb457821a78bfcaac5d84c89066";
+       revision = "1";
+       editedCabalFile = "cf848d5d07a3e6962d7a274d452c772bc1c413a0f9f2d5f112fdde4556a7d7f1";
        libraryHaskellDepends = [
          attoparsec base base-compat bytestring containers deepseq dlist
          ghc-prim hashable scientific tagged template-haskell text time
@@ -20491,7 +20736,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "aeson_1_1_1_0" = callPackage
+  "aeson_1_2_0_0" = callPackage
     ({ mkDerivation, attoparsec, base, base-compat, base-orphans
      , base16-bytestring, bytestring, containers, deepseq, directory
      , dlist, filepath, generic-deriving, ghc-prim, hashable
@@ -20503,8 +20748,8 @@ self: {
      }:
      mkDerivation {
        pname = "aeson";
-       version = "1.1.1.0";
-       sha256 = "083791ed61fd5d2ce613ba9d54dd37e598a376fab63c9df0abfaa69e802272d6";
+       version = "1.2.0.0";
+       sha256 = "cba138d97a0b785db74103a9d89d77f387f10334991b71d13cb8ce8020e30a60";
        libraryHaskellDepends = [
          attoparsec base base-compat bytestring containers deepseq dlist
          ghc-prim hashable scientific tagged template-haskell text time
@@ -20611,8 +20856,8 @@ self: {
        pname = "aeson-compat";
        version = "0.3.6";
        sha256 = "7aa365d9f44f708f25c939489528836aa10b411e0a3e630c8c2888670874d142";
-       revision = "4";
-       editedCabalFile = "534f6f1d1b09f88910407d670dfc9283ceaf824bf929373e0be1566f206011a3";
+       revision = "6";
+       editedCabalFile = "4cff8e8279e84b02ab85046d48f5a8a751d8c26f878a14daa7988b79ee1578c3";
        libraryHaskellDepends = [
          aeson attoparsec base base-compat bytestring containers exceptions
          hashable nats scientific semigroups tagged text time
@@ -20669,8 +20914,8 @@ self: {
        pname = "aeson-extra";
        version = "0.4.0.0";
        sha256 = "78ecedf65f8b68c09223912878e2a055aa38536489eddc9b47911cbc05aba594";
-       revision = "2";
-       editedCabalFile = "205ca010ed9726b27ebe1f63fe6260dc26b327e2998cc4bc744a30bd3b708c3b";
+       revision = "3";
+       editedCabalFile = "df84e5ff1e5b0ad03cdd8173b5d8b41da124bb07759ac9fe47a6664e2ed09787";
        libraryHaskellDepends = [
          aeson aeson-compat attoparsec base base-compat bytestring
          containers exceptions hashable parsec recursion-schemes scientific
@@ -20709,8 +20954,8 @@ self: {
     ({ mkDerivation, aeson, base, text, unordered-containers, vector }:
      mkDerivation {
        pname = "aeson-flat";
-       version = "0.1.0.0";
-       sha256 = "1db507abdb802732ffa3444cb227411ad68b430692578fc79e7c19b7165a6214";
+       version = "0.1.1";
+       sha256 = "1c4f53a629d23bbaa0cb6100f3e7fe6788b1f40711d4142c491e43ec84a08801";
        libraryHaskellDepends = [
          aeson base text unordered-containers vector
        ];
@@ -21088,8 +21333,8 @@ self: {
      }:
      mkDerivation {
        pname = "aeson-value-parser";
-       version = "0.12.1";
-       sha256 = "11096d66a70d036bbe5d685aa516e454623f2f6de98693dbb36e1016dce8ac8d";
+       version = "0.12.2";
+       sha256 = "ce5a44b105f1f96a9b93126f7ce75f6908dd60ab9f5b07eeb863478ec618dcc3";
        libraryHaskellDepends = [
          aeson base-prelude json-pointer json-pointer-aeson mtl-prelude
          scientific text transformers unordered-containers vector
@@ -21149,6 +21394,17 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "affinely-extended" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "affinely-extended";
+       version = "0.1.0.0";
+       sha256 = "556d321690aa5e82ae6dce4a28c01ff74a9e32a9f5203ab43e3b2dfda6a48dae";
+       libraryHaskellDepends = [ base ];
+       homepage = "https://github.com/clintonmead/affinely-extended";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "afis" = callPackage
     ({ mkDerivation, base, byteable, bytestring, crypto-random
      , cryptohash, HUnit, mtl, packer, QuickCheck, test-framework
@@ -22112,6 +22368,7 @@ self: {
        homepage = "http://www.haskell.org/haskellwiki/ALSA";
        description = "Binding to the ALSA Library API (Exceptions)";
        license = stdenv.lib.licenses.bsd3;
+       platforms = [ "i686-linux" "x86_64-linux" ];
      }) {inherit (pkgs) alsaLib;};
 
   "alsa-gui" = callPackage
@@ -25694,6 +25951,36 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs.xorg) libXScrnSaver;};
 
+  "arbtt_0_9_0_13" = callPackage
+    ({ mkDerivation, aeson, array, base, binary, bytestring
+     , bytestring-progress, containers, deepseq, directory, filepath
+     , libXScrnSaver, parsec, pcre-light, process-extras, strict, tasty
+     , tasty-golden, tasty-hunit, terminal-progress-bar, time
+     , transformers, unix, utf8-string, X11
+     }:
+     mkDerivation {
+       pname = "arbtt";
+       version = "0.9.0.13";
+       sha256 = "89be821c7233ce7a3b9ba6df4ba7f82547f3326b3cfc7aa3197c207d0896403d";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         aeson array base binary bytestring bytestring-progress containers
+         deepseq directory filepath parsec pcre-light strict
+         terminal-progress-bar time transformers unix utf8-string X11
+       ];
+       executableSystemDepends = [ libXScrnSaver ];
+       testHaskellDepends = [
+         base binary bytestring containers deepseq directory parsec
+         pcre-light process-extras tasty tasty-golden tasty-hunit time
+         transformers unix utf8-string
+       ];
+       homepage = "http://arbtt.nomeata.de/";
+       description = "Automatic Rule-Based Time Tracker";
+       license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs.xorg) libXScrnSaver;};
+
   "archive" = callPackage
     ({ mkDerivation, base, bytestring, debian, debian-mirror, directory
      , Extra, filepath, help, HUnit, mtl, network, old-locale, pretty
@@ -26071,6 +26358,34 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "arithmoi_0_5_0_0" = callPackage
+    ({ mkDerivation, array, base, containers, criterion, exact-pi
+     , ghc-prim, integer-gmp, integer-logarithms, mtl, QuickCheck
+     , random, smallcheck, tasty, tasty-hunit, tasty-quickcheck
+     , tasty-smallcheck, transformers
+     }:
+     mkDerivation {
+       pname = "arithmoi";
+       version = "0.5.0.0";
+       sha256 = "4be5fcf0e3fff7dec673a4216f2e59ebb0d7b7645e72d1caa3f95ae14d4f4a3e";
+       configureFlags = [ "-f-llvm" ];
+       libraryHaskellDepends = [
+         array base containers exact-pi ghc-prim integer-gmp
+         integer-logarithms mtl random
+       ];
+       testHaskellDepends = [
+         base containers integer-gmp QuickCheck smallcheck tasty tasty-hunit
+         tasty-quickcheck tasty-smallcheck transformers
+       ];
+       benchmarkHaskellDepends = [
+         base containers criterion integer-logarithms random
+       ];
+       homepage = "https://github.com/cartazio/arithmoi";
+       description = "Efficient basic number-theoretic functions";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "armada" = callPackage
     ({ mkDerivation, base, GLUT, mtl, OpenGL, stm }:
      mkDerivation {
@@ -26363,6 +26678,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "ascii-art-to-unicode" = callPackage
+    ({ mkDerivation, base, comonad, doctest, strict }:
+     mkDerivation {
+       pname = "ascii-art-to-unicode";
+       version = "0.1.0.1";
+       sha256 = "c3aa7ed17df0d45fd9297c10b691502942897a0d4409664e676f6922b97e2eb1";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base comonad ];
+       executableHaskellDepends = [ base strict ];
+       testHaskellDepends = [ base doctest ];
+       homepage = "https://github.com/fmthoma/ascii-art-to-unicode#readme";
+       description = "ASCII Art to Unicode Box Drawing converter";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "ascii-cows" = callPackage
     ({ mkDerivation, base, random-extras, random-fu, text }:
      mkDerivation {
@@ -26742,8 +27073,8 @@ self: {
      }:
      mkDerivation {
        pname = "async";
-       version = "2.1.1";
-       sha256 = "24134b36921f9874abb73be90886b4c23a67a9b4990f2d8e32d08dbfa5f74f90";
+       version = "2.1.1.1";
+       sha256 = "cd83e471466ea6885b2e8fb60f452db3ac3fdf3ea2d6370aa1e071ebc37544e2";
        libraryHaskellDepends = [ base stm ];
        testHaskellDepends = [
          base HUnit test-framework test-framework-hunit
@@ -26860,6 +27191,51 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "async-refresh" = callPackage
+    ({ mkDerivation, base, criterion, formatting, HUnit, lens
+     , lifted-async, monad-control, monad-logger, safe-exceptions, stm
+     , test-framework, test-framework-hunit, text
+     }:
+     mkDerivation {
+       pname = "async-refresh";
+       version = "0.2.0";
+       sha256 = "28910b3236b3d406f2de543b1ff069d88c0de4edf6129927647f47872429bb1c";
+       libraryHaskellDepends = [
+         base formatting lens lifted-async monad-control monad-logger
+         safe-exceptions stm text
+       ];
+       testHaskellDepends = [
+         base criterion HUnit monad-logger stm test-framework
+         test-framework-hunit text
+       ];
+       homepage = "https://github.com/mtesseract/async-refresh";
+       description = "Package implementing core logic for refreshing of expiring data";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "async-refresh-tokens" = callPackage
+    ({ mkDerivation, async-refresh, base, bytestring, criterion
+     , formatting, HUnit, lens, lifted-async, monad-control
+     , monad-logger, safe-exceptions, stm, test-framework
+     , test-framework-hunit, text
+     }:
+     mkDerivation {
+       pname = "async-refresh-tokens";
+       version = "0.1.0";
+       sha256 = "3e341e9cfc940ea1e484abdec90fb8fb81b31d0cf960da4e17843b2678c3193e";
+       libraryHaskellDepends = [
+         async-refresh base bytestring formatting lens lifted-async
+         monad-control monad-logger safe-exceptions stm text
+       ];
+       testHaskellDepends = [
+         base criterion HUnit monad-logger stm test-framework
+         test-framework-hunit
+       ];
+       homepage = "https://github.com/mtesseract/async-refresh-tokens#readme";
+       description = "Package implementing core logic for refreshing of expiring access tokens";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "asynchronous-exceptions" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -27117,6 +27493,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "atomic-modify" = callPackage
+    ({ mkDerivation, base, stm }:
+     mkDerivation {
+       pname = "atomic-modify";
+       version = "0.1.0.0";
+       sha256 = "5e000e6be97e073bd6c2436a403b07455c9c7fcff493491b991ee5fceaa8168d";
+       libraryHaskellDepends = [ base stm ];
+       homepage = "https://github.com/chris-martin/haskell-libraries";
+       description = "A typeclass for mutable references that have an atomic modify operation";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "atomic-primops" = callPackage
     ({ mkDerivation, base, ghc-prim, primitive }:
      mkDerivation {
@@ -27410,6 +27798,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "attoparsec-iso8601" = callPackage
+    ({ mkDerivation, attoparsec, base, base-compat, text, time }:
+     mkDerivation {
+       pname = "attoparsec-iso8601";
+       version = "1.0.0.0";
+       sha256 = "aa6c6d87587383e386cb85e7ffcc4a6317aa8dafb8ba9a104ecac365ce2a858a";
+       libraryHaskellDepends = [ attoparsec base base-compat text time ];
+       homepage = "https://github.com/bos/aeson";
+       description = "Parsing of ISO 8601 dates, originally from aeson";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "attoparsec-iteratee" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, iteratee
      , transformers
@@ -27955,8 +28355,8 @@ self: {
        pname = "avers";
        version = "0.0.17.1";
        sha256 = "1b45d8aa036b3c2ec7ea180327ff3cdce28dc1e1ef319c062be79f0ffa7626f5";
-       revision = "7";
-       editedCabalFile = "fb4e416f91c130daa956139b2d2cac7c92735879c699802e7f2acb0115eb671f";
+       revision = "9";
+       editedCabalFile = "3037f35d45d512a965f96b9f3d707c6ebed6b8096c579b055b62e62de9ed801c";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring clock containers cryptonite
          filepath inflections memory MonadRandom mtl network network-uri
@@ -27973,7 +28373,7 @@ self: {
          aeson base criterion mtl network-uri resource-pool
          rethinkdb-client-driver text
        ];
-       description = "empty";
+       description = "Server-side implementation of the Avers storage model";
        license = stdenv.lib.licenses.gpl3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -27986,6 +28386,8 @@ self: {
        pname = "avers-api";
        version = "0.0.18.0";
        sha256 = "b1ba2ad32420636bf298efa7d4ff42fda9501672306f04b11c91aee1fe7805c5";
+       revision = "1";
+       editedCabalFile = "1b4647c9b83c58c85eda00a185f366602084de4e1a75f47ad02fcb1789ecda7e";
        libraryHaskellDepends = [
          aeson avers base bytestring cookie http-api-data servant text time
          vector
@@ -28004,6 +28406,8 @@ self: {
        pname = "avers-api-docs";
        version = "0.0.18.0";
        sha256 = "38a9f290cfd92ee922253337b30297dd5d3fa0db28c5aad5a0e6d01a205efca1";
+       revision = "1";
+       editedCabalFile = "23afde7dedb160851c8cb51c7d778d52bac33b38b01189d91d71a5d0db0b4512";
        libraryHaskellDepends = [
          aeson avers avers-api base cookie lens servant servant-swagger
          swagger2 text unordered-containers
@@ -28025,6 +28429,8 @@ self: {
        pname = "avers-server";
        version = "0.0.18.0";
        sha256 = "44ea17fd5f2351ae0c63d630f3c4a4879541f47b63b57bd447683d4644901cf7";
+       revision = "1";
+       editedCabalFile = "e685f7dcb5c8a80b047f6974e51cc2edab7e0a98b260587a7c82627fb858f559";
        libraryHaskellDepends = [
          aeson avers avers-api base base64-bytestring bytestring
          bytestring-conversion containers cookie cryptonite either
@@ -28288,29 +28694,30 @@ self: {
 
   "aws-ec2" = callPackage
     ({ mkDerivation, aeson, aws, base, base16-bytestring
-     , base64-bytestring, blaze-builder, byteable, bytestring
-     , conduit-extra, containers, cryptohash, http-conduit, http-types
-     , mtl, optparse-applicative, resourcet, scientific
-     , template-haskell, text, time, unordered-containers, vector
-     , xml-conduit, yaml
+     , base64-bytestring, blaze-builder, blaze-markup, byteable
+     , bytestring, conduit-extra, containers, cryptohash, exceptions
+     , http-conduit, http-types, iproute, mtl, optparse-applicative
+     , resourcet, scientific, template-haskell, text, time
+     , unordered-containers, vector, xml-conduit, yaml
      }:
      mkDerivation {
        pname = "aws-ec2";
-       version = "0.3.3";
-       sha256 = "8d52e45cf9c37d728d1c76db6653ff56dbec853c1b924b46b1519387cc2aa3f4";
+       version = "0.3.5";
+       sha256 = "17df4a182a25d1de78cddf933e9a9ae342d989e55487cbbc6b307ced4e2aef3b";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson aws base base16-bytestring base64-bytestring blaze-builder
-         byteable bytestring conduit-extra containers cryptohash
-         http-conduit http-types mtl resourcet scientific template-haskell
-         text time unordered-containers vector xml-conduit
+         blaze-markup byteable bytestring conduit-extra containers
+         cryptohash exceptions http-conduit http-types iproute mtl resourcet
+         scientific template-haskell text time unordered-containers vector
+         xml-conduit
        ];
        executableHaskellDepends = [
          aeson aws base bytestring containers optparse-applicative text
          unordered-containers vector yaml
        ];
-       homepage = "https://github.com/zalora/aws-ec2";
+       homepage = "https://github.com/memcachier/aws-ec2";
        description = "AWS EC2/VPC, ELB and CloudWatch client library for Haskell";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -28675,8 +29082,8 @@ self: {
      }:
      mkDerivation {
        pname = "axiom";
-       version = "0.4.4";
-       sha256 = "84f8b0b843c67cd34c28f4fa3fac1ef6abbdf0b141615ca29d8cc7f292895002";
+       version = "0.4.5";
+       sha256 = "717ce4edc1991da062d6b2124e8d2d39d4208b7748209ff98d238ea5f0fb087c";
        libraryHaskellDepends = [
          base bytestring containers directory ghcjs-perch mtl transformers
          transient transient-universe
@@ -28713,8 +29120,8 @@ self: {
      }:
      mkDerivation {
        pname = "azubi";
-       version = "0.2.0.1";
-       sha256 = "9c772283727f23f433bb3617917ad7318c179a7e34b9bc890ab42ca20e9bd651";
+       version = "0.2.0.2";
+       sha256 = "5b5901feb57f59e518e53cc8d29863650c5bf34d83224aafc10895e5f8915602";
        libraryHaskellDepends = [
          base Diff directory filepath options process unix
        ];
@@ -29357,8 +29764,8 @@ self: {
     ({ mkDerivation, base, hspec, QuickCheck, unix }:
      mkDerivation {
        pname = "base-compat";
-       version = "0.9.2";
-       sha256 = "b47c4cec234f9ec83c292e7e213ebcfb4e0418db142f151fd8c370ccd5e2b21b";
+       version = "0.9.3";
+       sha256 = "7d602b0f0543fadbd598a090c738e9ce9b07a1896673dc27f1503ae3bea1a210";
        libraryHaskellDepends = [ base unix ];
        testHaskellDepends = [ base hspec QuickCheck ];
        description = "A compatibility layer for base";
@@ -29417,6 +29824,20 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "base-orphans_0_6" = callPackage
+    ({ mkDerivation, base, ghc-prim, hspec, QuickCheck }:
+     mkDerivation {
+       pname = "base-orphans";
+       version = "0.6";
+       sha256 = "c7282aa7516652e6e4a78ccdfb654a99c9da683875748ad5898a3f200be7ad0e";
+       libraryHaskellDepends = [ base ghc-prim ];
+       testHaskellDepends = [ base hspec QuickCheck ];
+       homepage = "https://github.com/haskell-compat/base-orphans#readme";
+       description = "Backwards-compatible orphan instances for base";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "base-prelude" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -30435,6 +30856,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "bifunctors_5_4_2" = callPackage
+    ({ mkDerivation, base, base-orphans, comonad, containers, hspec
+     , QuickCheck, semigroups, tagged, template-haskell, transformers
+     , transformers-compat
+     }:
+     mkDerivation {
+       pname = "bifunctors";
+       version = "5.4.2";
+       sha256 = "38620267824abbf834f708f1b7cf10307c1d2719b1a0f8ae49330a1002dfdc8d";
+       libraryHaskellDepends = [
+         base base-orphans comonad containers semigroups tagged
+         template-haskell transformers transformers-compat
+       ];
+       testHaskellDepends = [
+         base hspec QuickCheck template-haskell transformers
+         transformers-compat
+       ];
+       homepage = "http://github.com/ekmett/bifunctors/";
+       description = "Bifunctors";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "bighugethesaurus" = callPackage
     ({ mkDerivation, base, HTTP, split }:
      mkDerivation {
@@ -30653,7 +31097,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "binary_0_8_4_1" = callPackage
+  "binary_0_8_5_1" = callPackage
     ({ mkDerivation, array, attoparsec, base, bytestring, Cabal, cereal
      , containers, criterion, deepseq, directory, filepath, HUnit, mtl
      , QuickCheck, random, tar, test-framework
@@ -30661,35 +31105,8 @@ self: {
      }:
      mkDerivation {
        pname = "binary";
-       version = "0.8.4.1";
-       sha256 = "8d13c700fe96c84644a2af37003f488668fe9cd1f8e5b316fc929de26ce7e7ba";
-       revision = "1";
-       editedCabalFile = "56a00340fec65458e3c7cfe1d63651db09dd8d6ac925f843aefd2e98f4adbd50";
-       libraryHaskellDepends = [ array base bytestring containers ];
-       testHaskellDepends = [
-         array base bytestring Cabal containers directory filepath HUnit
-         QuickCheck random test-framework test-framework-quickcheck2
-       ];
-       benchmarkHaskellDepends = [
-         array attoparsec base bytestring Cabal cereal containers criterion
-         deepseq directory filepath mtl tar unordered-containers zlib
-       ];
-       homepage = "https://github.com/kolmodin/binary";
-       description = "Binary serialisation for Haskell values using lazy ByteStrings";
-       license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "binary_0_9_0_0" = callPackage
-    ({ mkDerivation, array, attoparsec, base, bytestring, Cabal, cereal
-     , containers, criterion, deepseq, directory, filepath, HUnit, mtl
-     , QuickCheck, random, tar, test-framework
-     , test-framework-quickcheck2, unordered-containers, zlib
-     }:
-     mkDerivation {
-       pname = "binary";
-       version = "0.9.0.0";
-       sha256 = "881dc60e21685846e1f2e8e02e60b30db96da3763492c7f1009aaf7ab9768dea";
+       version = "0.8.5.1";
+       sha256 = "deb91a69662288f38bb62e04f2cedf8ef60d84437a194c778dacf6c31dfe0596";
        libraryHaskellDepends = [ array base bytestring containers ];
        testHaskellDepends = [
          array base bytestring Cabal containers directory filepath HUnit
@@ -30895,6 +31312,8 @@ self: {
        pname = "binary-orphans";
        version = "0.1.6.0";
        sha256 = "e0e1dc7e5f00feb225efde400988d5e0e199cc910446f05a40fecba7d55684a5";
+       revision = "1";
+       editedCabalFile = "b114cf269065159a2e49c71bf52245a0ba6c71fd623d2cee896ac2fd3a3dcbce";
        libraryHaskellDepends = [
          aeson base binary case-insensitive hashable scientific tagged text
          text-binary time unordered-containers vector
@@ -30926,6 +31345,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "binary-parser_0_5_5" = callPackage
+    ({ mkDerivation, base, base-prelude, bytestring, mtl
+     , quickcheck-instances, rerebase, tasty, tasty-hunit
+     , tasty-quickcheck, text, transformers
+     }:
+     mkDerivation {
+       pname = "binary-parser";
+       version = "0.5.5";
+       sha256 = "1dab718e06a978118cd28d2412bceaa0b6ec8d67785bdb0982e259fb60fe43b3";
+       revision = "3";
+       editedCabalFile = "4ec2771d498dc996c1c7a08df2856f1c303538663d4fb201c742cffa950fc492";
+       libraryHaskellDepends = [
+         base base-prelude bytestring mtl text transformers
+       ];
+       testHaskellDepends = [
+         quickcheck-instances rerebase tasty tasty-hunit tasty-quickcheck
+       ];
+       homepage = "https://github.com/nikita-volkov/binary-parser";
+       description = "A highly-efficient but limited parser API specialised for bytestrings";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "binary-parsers" = callPackage
     ({ mkDerivation, attoparsec, base, binary, bytestring
      , bytestring-lexing, case-insensitive, criterion, deepseq
@@ -31092,8 +31534,8 @@ self: {
        pname = "binary-tagged";
        version = "0.1.4.2";
        sha256 = "311fab8c2bac00cb6785cb144e25ed58b2efce85e5dc64e30e2b5a2a16cdc784";
-       revision = "3";
-       editedCabalFile = "6fd4d363bd8a64deacea2726daa15b67b4331f7d6b47de9980c11435564a3de1";
+       revision = "4";
+       editedCabalFile = "76530b6075b691eed9d1986d7487a03470a30abc3b92c7bb32abdcbe1a60b963";
        libraryHaskellDepends = [
          aeson array base base16-bytestring binary bytestring containers
          generics-sop hashable nats scientific semigroups SHA tagged text
@@ -31714,6 +32156,7 @@ self: {
        homepage = "https://github.com/fizruk/bindings-lxc";
        description = "Direct Haskell bindings to LXC (Linux containers) C API";
        license = stdenv.lib.licenses.bsd3;
+       platforms = [ "i686-linux" "x86_64-linux" ];
      }) {inherit (pkgs) lxc;};
 
   "bindings-mmap" = callPackage
@@ -33020,8 +33463,8 @@ self: {
        pname = "blank-canvas";
        version = "0.6";
        sha256 = "2a0e5c4fc50b1ce43e56b1a11056186c21d565e225da36f90c58f8c0a70f48b3";
-       revision = "9";
-       editedCabalFile = "14307379cfd353cceede81149b2cae2f357d27ee23816203fd1757804e6b5b48";
+       revision = "10";
+       editedCabalFile = "b3fca3e52b9662881d181fa39c63b5b5095f77f83f0fd223c2a4cfeffa05a486";
        libraryHaskellDepends = [
          aeson base base-compat base64-bytestring bytestring colour
          containers data-default-class http-types kansas-comet mime-types
@@ -33627,7 +34070,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "bloodhound_0_13_0_0" = callPackage
+  "bloodhound_0_14_0_0" = callPackage
     ({ mkDerivation, aeson, base, blaze-builder, bytestring, containers
      , data-default-class, errors, exceptions, generics-sop, hashable
      , hspec, http-client, http-types, mtl, mtl-compat, network-uri
@@ -33637,8 +34080,8 @@ self: {
      }:
      mkDerivation {
        pname = "bloodhound";
-       version = "0.13.0.0";
-       sha256 = "65217195be1d4d29c99bfc05712e3aa6ed9f67d8e12180e703b67be1b093c4f9";
+       version = "0.14.0.0";
+       sha256 = "2e1b7becfafe753712ba7540ab9c41285a77256a5129ae05f5391a1f3cd5eeee";
        libraryHaskellDepends = [
          aeson base blaze-builder bytestring containers data-default-class
          exceptions hashable http-client http-types mtl mtl-compat
@@ -33876,8 +34319,8 @@ self: {
      }:
      mkDerivation {
        pname = "board-games";
-       version = "0.1.0.5";
-       sha256 = "b03ba53621f7ebd508d1f910f71492252a7181cc3485ecf7ae874eb634bd5d5e";
+       version = "0.1.0.6";
+       sha256 = "173e6eba0eddd3807d610c305f37f049fe5d2346e0772e186b3c2aced4043e63";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -33943,8 +34386,8 @@ self: {
      }:
      mkDerivation {
        pname = "bolt";
-       version = "0.3.0.1";
-       sha256 = "dd7f157db6fe2c6cac86a19803ac56ed132d8aa27f602a98e3506d2765b23ff9";
+       version = "0.3.1.0";
+       sha256 = "b08cbc39c38084e540c30052ac03fc764871650444024008f67d407002f57764";
        libraryHaskellDepends = [
          base bifunctors bytestring cereal containers hashable network
          network-uri scientific text transformers unordered-containers
@@ -33987,8 +34430,8 @@ self: {
      }:
      mkDerivation {
        pname = "bond";
-       version = "0.8.0.0";
-       sha256 = "9ba0c8b618d342575d480488783117ea99dc19b0b5485192e3757cdbe267ccf7";
+       version = "0.9.0.0";
+       sha256 = "75054c85437dce0f15363cfef7bad6fb90258a9e22e47e6f3fb5d7db3c440a08";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -34614,12 +35057,31 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "brainheck" = callPackage
+    ({ mkDerivation, base, containers, lens, megaparsec, mtl
+     , optparse-applicative, recursion-schemes, text, vector
+     }:
+     mkDerivation {
+       pname = "brainheck";
+       version = "0.1.0.1";
+       sha256 = "50f9f8aa9b2b31ab7bb85151ed986d6de4aa1a334bd8eea6dafdbd56d7c30a40";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers lens megaparsec mtl recursion-schemes text vector
+       ];
+       executableHaskellDepends = [ base optparse-applicative text ];
+       homepage = "https://github.com/vmchale/brainheck#readme";
+       description = "Brainh*ck interpreter in haskell";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "break" = callPackage
     ({ mkDerivation, base, mtl, transformers }:
      mkDerivation {
        pname = "break";
-       version = "1.0.1";
-       sha256 = "28e0cff1cc4f96aa19ebaac3caad4ca6851e89cd26bd48c4de4f611cbcf95166";
+       version = "1.0.2";
+       sha256 = "7688bb40ec0fcf2fd7acf4f662e79d3761d3ab348eb8282b58355e8a5412f272";
        libraryHaskellDepends = [ base mtl transformers ];
        description = "Break from a loop";
        license = stdenv.lib.licenses.bsd3;
@@ -35041,6 +35503,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "bug" = callPackage
+    ({ mkDerivation, base, template-haskell }:
+     mkDerivation {
+       pname = "bug";
+       version = "1.0.1";
+       sha256 = "18f29682de6ec6dd78e1e6afe17c13dcb6b02a4b18973bde33c47a57eeb6def5";
+       libraryHaskellDepends = [ base template-haskell ];
+       homepage = "https://github.com/nikita-volkov/bug";
+       description = "Better alternatives to the \"error\" function";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "bugzilla" = callPackage
     ({ mkDerivation, aeson, base, blaze-builder, bytestring, connection
      , containers, data-default, http-conduit, http-types, iso8601-time
@@ -35728,8 +36202,8 @@ self: {
      }:
      mkDerivation {
        pname = "bytestring-strict-builder";
-       version = "0.4.3";
-       sha256 = "d56f6bc42518565f9310eaa13ce1d35cf29879bdae995d9b893fd309c093d231";
+       version = "0.4.5";
+       sha256 = "cf192d9951a42cf76f35c4b6dcc8d04868c5df3e279b7b29079ebcd076f8f3ce";
        libraryHaskellDepends = [
          base base-prelude bytestring semigroups
        ];
@@ -35912,6 +36386,27 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "c-mosquitto" = callPackage
+    ({ mkDerivation, base, bytestring, containers, inline-c, mosquitto
+     , options, primitive
+     }:
+     mkDerivation {
+       pname = "c-mosquitto";
+       version = "0.1.0.0";
+       sha256 = "f5ebcc828368ab3e76f45e64fc0266d8483f28f42cbcda911a22d6021204cd3f";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring containers inline-c primitive
+       ];
+       librarySystemDepends = [ mosquitto ];
+       executableHaskellDepends = [ base options ];
+       testHaskellDepends = [ base ];
+       homepage = "https://github.com/tolysz/c-mosquitto#readme";
+       description = "Simpe mosquito MQTT binding able to work with the Amazons IoT";
+       license = stdenv.lib.licenses.bsd3;
+     }) {inherit (pkgs) mosquitto;};
+
   "c-storable-deriving" = callPackage
     ({ mkDerivation, base, ghc-prim }:
      mkDerivation {
@@ -36629,8 +37124,8 @@ self: {
      }:
      mkDerivation {
        pname = "cabal-plan";
-       version = "0.1.0.0";
-       sha256 = "14181990a168231a74b5f277e33f55c3dce8b58e0cb9f7bd828cb06d82326eae";
+       version = "0.1.1.0";
+       sha256 = "aa33d57eb818ca5da4c1ebf96f12e6751c216b279ee6bffdaee09bfd9cf6ea69";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -38225,10 +38720,8 @@ self: {
     ({ mkDerivation, base, split }:
      mkDerivation {
        pname = "casing";
-       version = "0.1.2.0";
-       sha256 = "82fa20ff56d52349a9d0ee0c095f1aad384c8d5046a3563b956c4add841465a7";
-       revision = "1";
-       editedCabalFile = "fe967eec15b788744d08ffa34b33baa7e765764dcf2feb642c5985ca543dd804";
+       version = "0.1.2.1";
+       sha256 = "a8bff2e6ed42915a472fa6f62873d78f21c2d31390845a8d3b5ea2638101a638";
        libraryHaskellDepends = [ base split ];
        description = "Convert between various source code casing conventions";
        license = stdenv.lib.licenses.mit;
@@ -38534,8 +39027,10 @@ self: {
      }:
      mkDerivation {
        pname = "cassava-streams";
-       version = "0.3.0.0";
-       sha256 = "81a4548c78474d025c525728a57616a657e5d59c377625c54ebb3f1818f5c49b";
+       version = "0.3.0.1";
+       sha256 = "ee2ace965b317a6e6abd8197c24d34325317d95f5aad52f9ab8be9ed960e0d9d";
+       revision = "1";
+       editedCabalFile = "4163d0dd1c3de30360be4f10f3eb40b45fc4263557c5df573829688cbc3b3372";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -38785,6 +39280,27 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "cayley-client_0_4_1" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, binary, bytestring
+     , exceptions, hspec, http-client, http-conduit, lens, lens-aeson
+     , mtl, text, transformers, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "cayley-client";
+       version = "0.4.1";
+       sha256 = "98de26b33e95d45298afb182c961079dd9219bdebbb4a98c8bfb69c296140987";
+       libraryHaskellDepends = [
+         aeson attoparsec base binary bytestring exceptions http-client
+         http-conduit lens lens-aeson mtl text transformers
+         unordered-containers vector
+       ];
+       testHaskellDepends = [ aeson base hspec unordered-containers ];
+       homepage = "https://github.com/MichelBoucey/cayley-client";
+       description = "A Haskell client for the Cayley graph database";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "cayley-dickson" = callPackage
     ({ mkDerivation, base, random }:
      mkDerivation {
@@ -38906,6 +39422,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "cef3-raw" = callPackage
+    ({ mkDerivation, base, bindings-DSL, cef, gtk2 }:
+     mkDerivation {
+       pname = "cef3-raw";
+       version = "0.1.0";
+       sha256 = "e70ec9d8a43fadd7512858ec9da807bb3afa9656bbe12f82e05334386ab2c9b9";
+       libraryHaskellDepends = [ base bindings-DSL ];
+       librarySystemDepends = [ cef ];
+       libraryPkgconfigDepends = [ gtk2 ];
+       description = "Raw CEF3 bindings";
+       license = stdenv.lib.licenses.bsd3;
+     }) {cef = null; gtk2 = pkgs.gnome2.gtk;};
+
+  "cef3-simple" = callPackage
+    ({ mkDerivation, base, cef3-raw }:
+     mkDerivation {
+       pname = "cef3-simple";
+       version = "0.1.0";
+       sha256 = "6707baebc50283201f2abae0814f62cc5a6dbd6076b89d9a3dbbf7bb582d9340";
+       libraryHaskellDepends = [ base cef3-raw ];
+       description = "Simple wrapper around cef3-raw";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "ceilometer-common" = callPackage
     ({ mkDerivation, base, bimap, binary, bytestring, containers
      , data-ordlist, foldl, hspec, lens, lens-properties, mtl, pipes
@@ -39498,8 +40038,8 @@ self: {
     ({ mkDerivation, base, bytestring }:
      mkDerivation {
        pname = "charsetdetect";
-       version = "1.0";
-       sha256 = "f7d8e6a38572ed4e0789279ff9726a7a2b192e3f8c099cc54484c47acd1660f0";
+       version = "1.1.0.2";
+       sha256 = "5e8339ec02f13265016489141b69af373564edc7581ef46f8ae405b8a919d5e6";
        libraryHaskellDepends = [ base bytestring ];
        homepage = "http://www.github.com/batterseapower/charsetdetect";
        description = "Character set detection using Mozilla's Universal Character Set Detector";
@@ -39590,8 +40130,8 @@ self: {
      }:
      mkDerivation {
        pname = "chatter";
-       version = "0.9.0.0";
-       sha256 = "edf8212aeb172c7ba63be8d72eded4f7ca3eb0c29fbf78b134d7a9e64f989f5a";
+       version = "0.9.1.0";
+       sha256 = "c0bf8a15a71e935a83ae3b723a63ab81b13d59a1de1f9cd44c0a77e6a15852e0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -40764,11 +41304,13 @@ self: {
      }:
      mkDerivation {
        pname = "clash-ghc";
-       version = "0.7.0.1";
-       sha256 = "74ccedf030ca1ee3c09c51b6e9fbb7caef4693f1ae0610694d03b9398d9ced56";
-       isLibrary = false;
+       version = "0.7.1";
+       sha256 = "b942391622ccc093daf78de34d81fff0f29e097f769c7cb403a802f79ae39b25";
+       revision = "1";
+       editedCabalFile = "567b69e3b3872430406fa5b1db7f86051fe42b6fc5f23c57a01a74fa62d54d8f";
+       isLibrary = true;
        isExecutable = true;
-       executableHaskellDepends = [
+       libraryHaskellDepends = [
          array base bifunctors bytestring clash-lib clash-prelude
          clash-systemverilog clash-verilog clash-vhdl containers deepseq
          directory filepath ghc ghc-boot ghc-typelits-extra
@@ -40776,6 +41318,7 @@ self: {
          haskeline lens mtl process text time transformers unbound-generics
          uniplate unix unordered-containers
        ];
+       executableHaskellDepends = [ base ];
        homepage = "http://www.clash-lang.org/";
        description = "CAES Language for Synchronous Hardware";
        license = stdenv.lib.licenses.bsd2;
@@ -40792,8 +41335,8 @@ self: {
      }:
      mkDerivation {
        pname = "clash-lib";
-       version = "0.7";
-       sha256 = "867a976ec5a436e953cd342ee3cff0fbeb54d32fb412ae5cade43bcb80aaab96";
+       version = "0.7.1";
+       sha256 = "087106396917d5119410d3048d1d666f572be580f22f2b61a439b60a821bb4d6";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring clash-prelude concurrent-supply
          containers data-binary-ieee754 deepseq directory errors fgl
@@ -40823,18 +41366,18 @@ self: {
     ({ mkDerivation, array, base, constraints, criterion
      , data-binary-ieee754, data-default, deepseq, doctest, ghc-prim
      , ghc-typelits-extra, ghc-typelits-knownnat
-     , ghc-typelits-natnormalise, integer-gmp, lens, QuickCheck
-     , reflection, singletons, template-haskell
+     , ghc-typelits-natnormalise, half, integer-gmp, lens, QuickCheck
+     , reflection, singletons, template-haskell, vector
      }:
      mkDerivation {
        pname = "clash-prelude";
-       version = "0.11";
-       sha256 = "e73490ee73228af3b2a7dca432a226a45bf5d8a52791134a99d4eeb32ac8043a";
+       version = "0.11.1";
+       sha256 = "afb318ea893448638372745cb3387f57569eb4d715c2d9462876d8e3570086b1";
        libraryHaskellDepends = [
          array base constraints data-binary-ieee754 data-default deepseq
          ghc-prim ghc-typelits-extra ghc-typelits-knownnat
-         ghc-typelits-natnormalise integer-gmp lens QuickCheck reflection
-         singletons template-haskell
+         ghc-typelits-natnormalise half integer-gmp lens QuickCheck
+         reflection singletons template-haskell vector
        ];
        testHaskellDepends = [ base doctest ];
        benchmarkHaskellDepends = [
@@ -40864,8 +41407,8 @@ self: {
      }:
      mkDerivation {
        pname = "clash-systemverilog";
-       version = "0.7";
-       sha256 = "1189f40348bb48d002614c3d9fbed3c228e71ab5a9a33c056256e1e763bf47bb";
+       version = "0.7.1";
+       sha256 = "65a920a186465159a7c01a8dc3853470b3c93d22d7f663795da11dea62402b3b";
        libraryHaskellDepends = [
          base clash-lib clash-prelude fgl hashable lens mtl text
          unordered-containers wl-pprint-text
@@ -40882,8 +41425,8 @@ self: {
      }:
      mkDerivation {
        pname = "clash-verilog";
-       version = "0.7";
-       sha256 = "4a10084bd2333333af2c1616a030c57fb959f73639647ae2b6788d1d5f79e4ef";
+       version = "0.7.1";
+       sha256 = "364a45e0643fdaafda32e485bf3c79990b2862a65665fb8a4952d91d4fe87ded";
        libraryHaskellDepends = [
          base clash-lib clash-prelude fgl hashable lens mtl text
          unordered-containers wl-pprint-text
@@ -40900,8 +41443,8 @@ self: {
      }:
      mkDerivation {
        pname = "clash-vhdl";
-       version = "0.7";
-       sha256 = "6fb6c1dfa951021307bf121cb9ed622c3b726c20d2f0b873751fbd9329458af1";
+       version = "0.7.1";
+       sha256 = "462600defd6bf6ec5ae44c9e084546d7778f1d1fe8ae09885bedd1e712a47dbf";
        libraryHaskellDepends = [
          base clash-lib clash-prelude fgl hashable lens mtl text
          unordered-containers wl-pprint-text
@@ -41738,6 +42281,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "cloudi" = callPackage
+    ({ mkDerivation, array, base, binary, bytestring, containers
+     , network, time, unix, zlib
+     }:
+     mkDerivation {
+       pname = "cloudi";
+       version = "1.7.0";
+       sha256 = "66d372c0fe9a19f465f6b40d43864e9a43195c5de99ab560f0b5bbb6f3978648";
+       libraryHaskellDepends = [
+         array base binary bytestring containers network time unix zlib
+       ];
+       homepage = "https://github.com/CloudI/cloudi_api_haskell";
+       description = "Haskell CloudI API";
+       license = stdenv.lib.licenses.bsdOriginal;
+     }) {};
+
   "cloudyfs" = callPackage
     ({ mkDerivation, base, bytestring, containers, convertible
      , datetime, filepath, HFuse, HTTP, regex-base, regex-tdfa, tagsoup
@@ -42016,8 +42575,8 @@ self: {
      }:
      mkDerivation {
        pname = "cmdargs";
-       version = "0.10.16";
-       sha256 = "fb194adb76f6f464ff38df8a6644c6ed7375cc7054278492145a705a87526fbd";
+       version = "0.10.17";
+       sha256 = "3437a4caf4ced650b61620e1c66f406db76ff70244928e5a4e7a20e5e88374da";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -42330,25 +42889,27 @@ self: {
      }) {};
 
   "codex" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, cryptohash
-     , directory, either, filepath, hackage-db, http-client, lens
-     , machines, machines-directory, MissingH, monad-loops, network
-     , process, tar, text, transformers, wreq, yaml, zlib
+    ({ mkDerivation, ascii-progress, base, bytestring, Cabal
+     , containers, cryptohash, directory, either, filepath, hackage-db
+     , http-client, lens, machines, machines-directory, MissingH
+     , monad-loops, network, process, tar, text, transformers, wreq
+     , yaml, zlib
      }:
      mkDerivation {
        pname = "codex";
-       version = "0.5.0.2";
-       sha256 = "491064e6cf6b1afc6be30b061f6876b1d9da1ecc769fc74f485853b5bab8d907";
+       version = "0.5.1.2";
+       sha256 = "f98093465412d4fb67c9a4e5debe92356a080f5e2670d730d5afb9b1cf383571";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring Cabal containers cryptohash directory either
-         filepath hackage-db http-client lens machines machines-directory
-         process tar text transformers wreq yaml zlib
+         ascii-progress base bytestring Cabal containers cryptohash
+         directory either filepath hackage-db http-client lens machines
+         machines-directory process tar text transformers wreq yaml zlib
        ];
        executableHaskellDepends = [
-         base bytestring Cabal directory either filepath hackage-db MissingH
-         monad-loops network process transformers wreq yaml
+         ascii-progress base bytestring Cabal directory either filepath
+         hackage-db MissingH monad-loops network process transformers wreq
+         yaml
        ];
        homepage = "http://github.com/aloiscochard/codex";
        description = "A ctags file generator for cabal project dependencies";
@@ -42473,6 +43034,25 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "coincident-root-loci" = callPackage
+    ({ mkDerivation, array, base, combinat, containers, random, tasty
+     , tasty-hunit, transformers
+     }:
+     mkDerivation {
+       pname = "coincident-root-loci";
+       version = "0.2";
+       sha256 = "b05fa82685037016dc15328de28ac041e796c482e3828c5902a89ed25ea9dc5c";
+       libraryHaskellDepends = [
+         array base combinat containers random transformers
+       ];
+       testHaskellDepends = [
+         array base combinat containers tasty tasty-hunit
+       ];
+       homepage = "http://code.haskell.org/~bkomuves/";
+       description = "Equivariant CSM classes of coincident root loci";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "colada" = callPackage
     ({ mkDerivation, base, bytestring, cereal, cmdargs, containers
      , fclabels, ghc-prim, ListZipper, monad-atom, mtl, nlp-scores
@@ -42760,6 +43340,18 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "colour-accelerate" = callPackage
+    ({ mkDerivation, accelerate, base }:
+     mkDerivation {
+       pname = "colour-accelerate";
+       version = "0.1.0.0";
+       sha256 = "3292dae683026ae6890908a70363d80500f56c0f539c8571672e667623b08cb2";
+       libraryHaskellDepends = [ accelerate base ];
+       homepage = "https://github.com/tmcdonell/colour-accelerate";
+       description = "Working with colours in Accelerate";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "colour-space" = callPackage
     ({ mkDerivation, base, colour, constrained-categories, JuicyPixels
      , linear, linearmap-category, manifolds, semigroups, vector-space
@@ -43102,6 +43694,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "comonad_5_0_1" = callPackage
+    ({ mkDerivation, base, Cabal, cabal-doctest, containers
+     , contravariant, distributive, doctest, semigroups, tagged
+     , transformers, transformers-compat
+     }:
+     mkDerivation {
+       pname = "comonad";
+       version = "5.0.1";
+       sha256 = "561ffd697d9d38467d0d426947e0bade25a05e3c507235eca29ec800ad3f463d";
+       setupHaskellDepends = [ base Cabal cabal-doctest ];
+       libraryHaskellDepends = [
+         base containers contravariant distributive semigroups tagged
+         transformers transformers-compat
+       ];
+       testHaskellDepends = [ base doctest ];
+       homepage = "http://github.com/ekmett/comonad/";
+       description = "Comonads";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "comonad-extras" = callPackage
     ({ mkDerivation, array, base, comonad, containers, distributive
      , semigroupoids, transformers
@@ -43429,10 +44042,10 @@ self: {
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "complex-generic";
-       version = "0.1.1";
-       sha256 = "9422670fd08f3daaae823466398a9d4b9b2d8b4b9d568380833c5c391e679896";
+       version = "0.1.1.1";
+       sha256 = "1f535c9ab52930cfae7665b659713214af81ab6ffdfddb42c540bad8522a8b0f";
        libraryHaskellDepends = [ base template-haskell ];
-       homepage = "https://gitorious.org/complex-generic";
+       homepage = "https://code.mathr.co.uk/complex-generic";
        description = "complex numbers with non-mandatory RealFloat";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -43494,26 +44107,25 @@ self: {
 
   "composite-aeson" = callPackage
     ({ mkDerivation, aeson, aeson-better-errors, aeson-qq, base
-     , basic-prelude, composite-base, containers, contravariant, Frames
-     , generic-deriving, hspec, lens, profunctors, QuickCheck
-     , scientific, tagged, template-haskell, text, time
-     , unordered-containers, vector, vinyl
+     , composite-base, containers, contravariant, generic-deriving
+     , hashable, hspec, lens, profunctors, QuickCheck, scientific
+     , tagged, template-haskell, text, time, unordered-containers
+     , vector, vinyl
      }:
      mkDerivation {
        pname = "composite-aeson";
-       version = "0.2.0.0";
-       sha256 = "57319e561a9b8d52dcaff3ef5fda46de8128e39ed2a7bbae212b32f8652f21a6";
+       version = "0.3.0.0";
+       sha256 = "c2f48c0e6e4b975b65c64988abcd72890bb1ec428a7e6f3212a58cf379cfd820";
        libraryHaskellDepends = [
-         aeson aeson-better-errors base basic-prelude composite-base
-         containers contravariant Frames generic-deriving lens profunctors
-         scientific tagged template-haskell text time unordered-containers
-         vector vinyl
+         aeson aeson-better-errors base composite-base containers
+         contravariant generic-deriving hashable lens profunctors scientific
+         tagged template-haskell text time unordered-containers vector vinyl
        ];
        testHaskellDepends = [
-         aeson aeson-better-errors aeson-qq base basic-prelude
-         composite-base containers contravariant Frames generic-deriving
-         hspec lens profunctors QuickCheck scientific tagged
-         template-haskell text time unordered-containers vector vinyl
+         aeson aeson-better-errors aeson-qq base composite-base containers
+         contravariant generic-deriving hashable hspec lens profunctors
+         QuickCheck scientific tagged template-haskell text time
+         unordered-containers vector vinyl
        ];
        homepage = "https://github.com/ConferHealth/composite#readme";
        description = "JSON for Vinyl/Frames records";
@@ -43521,19 +44133,20 @@ self: {
      }) {};
 
   "composite-base" = callPackage
-    ({ mkDerivation, base, basic-prelude, Frames, hspec, lens
-     , QuickCheck, template-haskell, text, vinyl
+    ({ mkDerivation, base, hspec, lens, monad-control, mtl, QuickCheck
+     , template-haskell, text, transformers, transformers-base, vinyl
      }:
      mkDerivation {
        pname = "composite-base";
-       version = "0.2.0.0";
-       sha256 = "b18c0b286d4d8dfd8771df540dba9f8e9d0fc58484650d7434ed24e95d6428b1";
+       version = "0.3.0.0";
+       sha256 = "48ec59eb4b27cd57be950f32b59ecfca118a597fcc84da0e466a009cfe411372";
        libraryHaskellDepends = [
-         base basic-prelude Frames lens template-haskell text vinyl
+         base lens monad-control mtl template-haskell text transformers
+         transformers-base vinyl
        ];
        testHaskellDepends = [
-         base basic-prelude Frames hspec lens QuickCheck template-haskell
-         text vinyl
+         base hspec lens monad-control mtl QuickCheck template-haskell text
+         transformers transformers-base vinyl
        ];
        homepage = "https://github.com/ConferHealth/composite#readme";
        description = "Shared utilities for composite-* packages";
@@ -43541,16 +44154,15 @@ self: {
      }) {};
 
   "composite-ekg" = callPackage
-    ({ mkDerivation, base, basic-prelude, composite-base, ekg, ekg-core
-     , Frames, lens, text, vinyl
+    ({ mkDerivation, base, composite-base, ekg, ekg-core, lens, text
+     , vinyl
      }:
      mkDerivation {
        pname = "composite-ekg";
-       version = "0.2.0.0";
-       sha256 = "bb836d7e938e18848ae3bae573c4e7ec47b4dfdd56e5ebfdb556033e1a62c095";
+       version = "0.3.0.0";
+       sha256 = "548f3bd735ca1aad856f3088d37a6d631e264afa3cbd19a9b2918550f1044fda";
        libraryHaskellDepends = [
-         base basic-prelude composite-base ekg ekg-core Frames lens text
-         vinyl
+         base composite-base ekg ekg-core lens text vinyl
        ];
        homepage = "https://github.com/ConferHealth/composite#readme";
        description = "EKG Metrics for Vinyl/Frames records";
@@ -43558,18 +44170,17 @@ self: {
      }) {};
 
   "composite-opaleye" = callPackage
-    ({ mkDerivation, base, basic-prelude, bytestring, composite-base
-     , Frames, lens, opaleye, postgresql-simple, product-profunctors
-     , profunctors, template-haskell, text, vinyl
+    ({ mkDerivation, base, bytestring, composite-base, lens, opaleye
+     , postgresql-simple, product-profunctors, profunctors
+     , template-haskell, text, vinyl
      }:
      mkDerivation {
        pname = "composite-opaleye";
-       version = "0.2.0.0";
-       sha256 = "e1f018cd598679e2a79d9ce4b99463cdf0a2720ff3df57be2e1025731417ef37";
+       version = "0.3.0.0";
+       sha256 = "cfd8e41e5824044de462aa890051cc3fb283c6417ff35208cec2f5f4618ab251";
        libraryHaskellDepends = [
-         base basic-prelude bytestring composite-base Frames lens opaleye
-         postgresql-simple product-profunctors profunctors template-haskell
-         text vinyl
+         base bytestring composite-base lens opaleye postgresql-simple
+         product-profunctors profunctors template-haskell text vinyl
        ];
        homepage = "https://github.com/ConferHealth/composite#readme";
        description = "Opaleye SQL for Frames records";
@@ -43951,14 +44562,14 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "concurrency_1_1_1_0" = callPackage
+  "concurrency_1_1_2_0" = callPackage
     ({ mkDerivation, array, atomic-primops, base, exceptions
      , monad-control, mtl, stm, transformers
      }:
      mkDerivation {
        pname = "concurrency";
-       version = "1.1.1.0";
-       sha256 = "f955671cc7814d06d99a84f003423d8903604cdc9911d7f4986acaa39c519973";
+       version = "1.1.2.0";
+       sha256 = "1d33bf13dad0d3fedf53fcabfed7f99c511c6856c4e6e132809a4a84bdf37b4c";
        libraryHaskellDepends = [
          array atomic-primops base exceptions monad-control mtl stm
          transformers
@@ -44256,8 +44867,8 @@ self: {
      }:
      mkDerivation {
        pname = "conduit";
-       version = "1.2.9";
-       sha256 = "8adf9d8916dcb7abf86c4c82cc1c92e99dea8d0a9a5835302a824142d214cf06";
+       version = "1.2.9.1";
+       sha256 = "05a4ea49a56ca27cc47b9138ed840b7aaa0176b0d917e06c1626fb940797dffe";
        libraryHaskellDepends = [
          base exceptions lifted-base mmorph monad-control mtl resourcet
          transformers transformers-base
@@ -44275,6 +44886,34 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "conduit_1_2_10" = callPackage
+    ({ mkDerivation, base, containers, criterion, deepseq, exceptions
+     , hspec, kan-extensions, lifted-base, mmorph, monad-control, mtl
+     , mwc-random, primitive, QuickCheck, resourcet, safe, split
+     , transformers, transformers-base, vector
+     }:
+     mkDerivation {
+       pname = "conduit";
+       version = "1.2.10";
+       sha256 = "d1167adea7da849a2636418926006546dce4cbde5ba324ade83416a691be58dd";
+       libraryHaskellDepends = [
+         base exceptions lifted-base mmorph monad-control mtl primitive
+         resourcet transformers transformers-base
+       ];
+       testHaskellDepends = [
+         base containers exceptions hspec mtl QuickCheck resourcet safe
+         split transformers
+       ];
+       benchmarkHaskellDepends = [
+         base containers criterion deepseq hspec kan-extensions mwc-random
+         transformers vector
+       ];
+       homepage = "http://github.com/snoyberg/conduit";
+       description = "Streaming data processing library";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "conduit-audio" = callPackage
     ({ mkDerivation, base, conduit, vector }:
      mkDerivation {
@@ -45055,17 +45694,24 @@ self: {
      }) {};
 
   "constrained-monads" = callPackage
-    ({ mkDerivation, base, containers, doctest, QuickCheck
-     , transformers
+    ({ mkDerivation, base, containers, criterion, deepseq, doctest
+     , free, nat-sized-numbers, QuickCheck, smallcheck, transformers
+     , vector
      }:
      mkDerivation {
        pname = "constrained-monads";
-       version = "0.4.0.0";
-       sha256 = "335432d74b02ada378b2815a57ba9b840fe24474e2d5c25fa2aac32c3a431cc1";
-       libraryHaskellDepends = [ base containers transformers ];
+       version = "0.5.0.0";
+       sha256 = "8e618d145ec4d38c41446b56fdc4264d789bf3f9bc03e1db64827086ecdb07c0";
+       libraryHaskellDepends = [
+         base containers deepseq free transformers
+       ];
        testHaskellDepends = [
          base containers doctest QuickCheck transformers
        ];
+       benchmarkHaskellDepends = [
+         base containers criterion deepseq nat-sized-numbers QuickCheck
+         smallcheck transformers vector
+       ];
        homepage = "https://github.com/oisdk/constrained-monads#readme";
        description = "Typeclasses and instances for monads with constraints";
        license = stdenv.lib.licenses.mit;
@@ -45256,15 +45902,15 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "containers_0_5_10_1" = callPackage
+  "containers_0_5_10_2" = callPackage
     ({ mkDerivation, array, base, ChasingBottoms, criterion, deepseq
      , ghc-prim, HUnit, QuickCheck, random, test-framework
      , test-framework-hunit, test-framework-quickcheck2, transformers
      }:
      mkDerivation {
        pname = "containers";
-       version = "0.5.10.1";
-       sha256 = "fa74241147e58084fe2520a376349df114b8280ddcd9062ae351fed20946d347";
+       version = "0.5.10.2";
+       sha256 = "a04efef290be272cdeca1c36f9cff17271ccd8d2b484ebf152bb496fb5328c23";
        libraryHaskellDepends = [ array base deepseq ghc-prim ];
        testHaskellDepends = [
          array base ChasingBottoms deepseq ghc-prim HUnit QuickCheck
@@ -46487,22 +47133,19 @@ self: {
      }) {};
 
   "cpphs" = callPackage
-    ({ mkDerivation, base, directory, filepath, old-locale, old-time
-     , polyparse
+    ({ mkDerivation, base, directory, old-locale, old-time, polyparse
      }:
      mkDerivation {
        pname = "cpphs";
-       version = "1.20.4";
-       sha256 = "d159437cea89854c3f413f7157f40ea2d82272fce83efe6ce17e2065883da47e";
-       revision = "1";
-       editedCabalFile = "9304f73fec5750ee55b381f925d34c73cc1f660f5adaa6490d9d8dabf4ae1880";
+       version = "1.20.5";
+       sha256 = "c5a30c30b7479cc69704242a0313ecbcf8acf775b2164511efc0e4b47931a5b3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base directory filepath old-locale old-time polyparse
+         base directory old-locale old-time polyparse
        ];
        executableHaskellDepends = [
-         base directory filepath old-locale old-time polyparse
+         base directory old-locale old-time polyparse
        ];
        homepage = "http://projects.haskell.org/cpphs/";
        description = "A liberalised re-implementation of cpp, the C pre-processor";
@@ -47910,6 +48553,8 @@ self: {
        pname = "cryptohash-md5";
        version = "0.11.100.1";
        sha256 = "710bd48770fa3e9a3b05428c6dc77fb72c91956d334a1eb89ded11bb843e18f9";
+       revision = "1";
+       editedCabalFile = "83170b82a6ca15da59f4f7831325128ce26e5ad00549d986fc294256ac963db7";
        libraryHaskellDepends = [ base bytestring ];
        testHaskellDepends = [
          base base16-bytestring bytestring pureMD5 tasty tasty-hunit
@@ -47929,6 +48574,8 @@ self: {
        pname = "cryptohash-sha1";
        version = "0.11.100.1";
        sha256 = "3c79af33542512442f8f87f6abb1faef7cd43bbfb2859260a33251d861eb0dab";
+       revision = "1";
+       editedCabalFile = "0bd72d71afeb9183a7b9248499b871c31c2bd07166ffc97a220985ec6515f198";
        libraryHaskellDepends = [ base bytestring ];
        testHaskellDepends = [
          base base16-bytestring bytestring SHA tasty tasty-hunit
@@ -47948,6 +48595,8 @@ self: {
        pname = "cryptohash-sha256";
        version = "0.11.100.1";
        sha256 = "57b02338e9648639335788b422dd4c744543cb0991347472e2e3628a33c2f5d6";
+       revision = "1";
+       editedCabalFile = "0fd2d404c8c1cb3b3b3a810a5d5eaf2ade6f1cc7f30b50ae88d7102f5ca78d7b";
        libraryHaskellDepends = [ base bytestring ];
        testHaskellDepends = [
          base base16-bytestring bytestring SHA tasty tasty-hunit
@@ -47967,6 +48616,8 @@ self: {
        pname = "cryptohash-sha512";
        version = "0.11.100.1";
        sha256 = "10698bb9575eaa414a65d9644caa9408f9276c63447406e0a4faef91db1071a9";
+       revision = "1";
+       editedCabalFile = "de229945e423e586bf5ffda9535b11b5cb9cb4299d17bd8a4de7f7dbbecf492a";
        libraryHaskellDepends = [ base bytestring ];
        testHaskellDepends = [
          base base16-bytestring bytestring SHA tasty tasty-hunit
@@ -48556,6 +49207,27 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "cubicbezier_0_6_0_0" = callPackage
+    ({ mkDerivation, base, containers, fast-math, integration, matrices
+     , microlens, microlens-mtl, microlens-th, mtl, parsec, tasty
+     , tasty-hunit, vector, vector-space
+     }:
+     mkDerivation {
+       pname = "cubicbezier";
+       version = "0.6.0.0";
+       sha256 = "3265ad631316aaba8854f4fbb6cc7f680e4b6a91b58216f88b818d128bbb2b24";
+       revision = "1";
+       editedCabalFile = "4023405ed972ab01de3edd95f9cbf996d9b33be26f35efeb8a287c5fdb8503a7";
+       libraryHaskellDepends = [
+         base containers fast-math integration matrices microlens
+         microlens-mtl microlens-th mtl vector vector-space
+       ];
+       testHaskellDepends = [ base parsec tasty tasty-hunit ];
+       description = "Efficient manipulating of 2D cubic bezier curves";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "cubicspline" = callPackage
     ({ mkDerivation, base, hmatrix, safe }:
      mkDerivation {
@@ -48575,6 +49247,8 @@ self: {
        pname = "cublas";
        version = "0.2.1.0";
        sha256 = "3c6031d2f7332a6a2357a1ec9adc4ba1404c5c05cb5a42193847ceac7652a80b";
+       revision = "1";
+       editedCabalFile = "2784c7237bd25f49735d8779ea8d3a57514b2418bfdeb2697bdd06e688acd9d7";
        libraryHaskellDepends = [
          base cuda filepath language-c storable-complex template-haskell
        ];
@@ -51248,20 +51922,20 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "datasets_0_2_3" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, cassava, directory
-     , file-embed, filepath, hashable, microlens, stringsearch, text
-     , time, vector, wreq
+  "datasets_0_2_4" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, cassava
+     , directory, file-embed, filepath, hashable, microlens
+     , stringsearch, text, time, vector, wreq
      }:
      mkDerivation {
        pname = "datasets";
-       version = "0.2.3";
-       sha256 = "f155d4aea31d03fd14c7050793d9e90685ba8858460ce7c3716919bd00c12ea4";
+       version = "0.2.4";
+       sha256 = "59403047f553fce17046ade4cb03bf1d5e2ee1e71f045cd8ac1e6f177693add0";
        libraryHaskellDepends = [
-         aeson base bytestring cassava directory file-embed filepath
-         hashable microlens stringsearch text time vector wreq
+         aeson attoparsec base bytestring cassava directory file-embed
+         filepath hashable microlens stringsearch text time vector wreq
        ];
-       homepage = "https://github.com/glutamate/datasets";
+       homepage = "https://github.com/filopodia/open/datasets";
        description = "Classical data sets for statistics and machine learning";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -51574,10 +52248,8 @@ self: {
      }:
      mkDerivation {
        pname = "dbus";
-       version = "0.10.12";
-       sha256 = "f6d7b5640eb03e9598e38b1a2b2e7af1e9d357f3f845fc9528f9750965b92d54";
-       revision = "1";
-       editedCabalFile = "056e9977d3cf251022d8f4013531c0dd6b62afa68719b5567756386e1503271e";
+       version = "0.10.13";
+       sha256 = "aa94aefba8a0be240faddec88442afd8db1fa4e994423d474b112ec1c67e7aca";
        libraryHaskellDepends = [
          base bytestring cereal containers libxml-sax network parsec random
          text transformers unix vector xml-types
@@ -51589,7 +52261,7 @@ self: {
        ];
        benchmarkHaskellDepends = [ base criterion deepseq ];
        doCheck = false;
-       homepage = "https://john-millikin.com/software/haskell-dbus/";
+       homepage = "https://github.com/rblaze/haskell-dbus#readme";
        description = "A client library for the D-Bus IPC system";
        license = stdenv.lib.licenses.gpl3;
      }) {};
@@ -52606,15 +53278,15 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "dejafu_0_5_1_2" = callPackage
+  "dejafu_0_6_0_0" = callPackage
     ({ mkDerivation, base, concurrency, containers, deepseq, exceptions
      , monad-loops, mtl, random, ref-fd, semigroups, transformers
      , transformers-base
      }:
      mkDerivation {
        pname = "dejafu";
-       version = "0.5.1.2";
-       sha256 = "0e6114f59678ff0c5a9f5a4561f9b1ae4d87c77c50fd498e447ca7f67eae6d4c";
+       version = "0.6.0.0";
+       sha256 = "c0d8f49b5c2c9d6c2d1aacc0e25eb688a795c6582df087cd619eaeea268a811e";
        libraryHaskellDepends = [
          base concurrency containers deepseq exceptions monad-loops mtl
          random ref-fd semigroups transformers transformers-base
@@ -53146,8 +53818,8 @@ self: {
      }:
      mkDerivation {
        pname = "deriving-compat";
-       version = "0.3.5";
-       sha256 = "0a165c8eeb78349ded41cf51750753cdd0e25c139171789f7a4b0c6be4ccd231";
+       version = "0.3.6";
+       sha256 = "0c1fab416505e3fabaec007828073c065db077f004dcc6955f2cd32ca139356d";
        libraryHaskellDepends = [
          base containers ghc-boot-th ghc-prim template-haskell transformers
          transformers-compat
@@ -53394,8 +54066,8 @@ self: {
      }:
      mkDerivation {
        pname = "dhall";
-       version = "1.1.0";
-       sha256 = "338152e2bd5e894f6d331f4c7230facb6585ebf789aab18b129d4873093f1302";
+       version = "1.2.0";
+       sha256 = "9727b876f006d0e26fafd63fccc6d456a6e462ee9524f81883c1f743eafdf1ed";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -53409,14 +54081,36 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "dhall-bash" = callPackage
+    ({ mkDerivation, base, bytestring, containers, dhall
+     , neat-interpolation, optparse-generic, shell-escape, text
+     , text-format, trifecta, vector
+     }:
+     mkDerivation {
+       pname = "dhall-bash";
+       version = "1.0.0";
+       sha256 = "4e46f6a1540b8e6dc7585ba00eee6231fd38ddd1223bfda0888a8328ccb32253";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring containers dhall neat-interpolation shell-escape
+         text text-format vector
+       ];
+       executableHaskellDepends = [
+         base bytestring dhall optparse-generic text trifecta
+       ];
+       description = "Compile Dhall to Bash";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "dhall-json" = callPackage
     ({ mkDerivation, aeson, base, bytestring, dhall, neat-interpolation
      , optparse-generic, text, trifecta, vector, yaml
      }:
      mkDerivation {
        pname = "dhall-json";
-       version = "1.0.0";
-       sha256 = "514e14a765b0fd360dad7aec62980ca02424d6670be9bf5b9a5a171835a7758d";
+       version = "1.0.1";
+       sha256 = "ccf235f785207bedf29ea42d4ee26b44c2d2777fda8aa8d0306beaca43960726";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -53435,8 +54129,8 @@ self: {
      }:
      mkDerivation {
        pname = "dhall-nix";
-       version = "1.0.1";
-       sha256 = "83e217056193e67bfa9b81074baeb0289372dd4bb185be4aff034956340d8f4c";
+       version = "1.0.2";
+       sha256 = "d86b35774d065fa198d750a411e49cf75752657193f1579400ce36cf47977db3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -53518,6 +54212,8 @@ self: {
        pname = "diagrams-builder";
        version = "0.8.0.1";
        sha256 = "6e9b0eba4c9aa698ffdd21d55492b4cfd867cd4107ed8ccc591888cba7fe5b1c";
+       revision = "1";
+       editedCabalFile = "ecda2354b5f1e5f585b482eff8df0b7423c9328a03185dfc977170e48515bc64";
        configureFlags = [ "-fcairo" "-fps" "-frasterific" "-fsvg" ];
        isLibrary = true;
        isExecutable = true;
@@ -53592,8 +54288,8 @@ self: {
        pname = "diagrams-contrib";
        version = "1.4.0.1";
        sha256 = "1194be9ab13c8660ef1c56c35b3a6578953db51e173de96eb8d49603e855750c";
-       revision = "2";
-       editedCabalFile = "f48239089189d320f3f48f25d2381f5d1e931ed7cdbdd70eb2ce246a9d04fda5";
+       revision = "4";
+       editedCabalFile = "b3b01a324248fb57044b9b324bd68cdd0de294310850d170da7d0ad5d883f390";
        libraryHaskellDepends = [
          base circle-packing colour containers cubicbezier data-default
          data-default-class diagrams-core diagrams-lib diagrams-solve
@@ -54964,22 +55660,22 @@ self: {
      }) {};
 
   "discord-hs" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, case-insensitive
+    ({ mkDerivation, aeson, base, bytestring, case-insensitive, comonad
      , containers, data-default, hakyll, hashable, hslogger, http-client
      , mmorph, mtl, pipes, req, split, stm, stm-conduit, text, time
      , transformers, unordered-containers, url, vector, websockets, wuss
      }:
      mkDerivation {
        pname = "discord-hs";
-       version = "0.2.1";
-       sha256 = "439cc60b1206c4709a9a28e9ac5c64f7fb6eb5e40014ef055624459842add95e";
+       version = "0.3.2";
+       sha256 = "2eb06980c5b4e8e25c3ba4b7ad6816edac35c637a8abde2da14a3d304a8e56f8";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base bytestring case-insensitive containers data-default
-         hashable hslogger http-client mmorph mtl pipes req stm stm-conduit
-         text time transformers unordered-containers url vector websockets
-         wuss
+         aeson base bytestring case-insensitive comonad containers
+         data-default hashable hslogger http-client mmorph mtl pipes req stm
+         stm-conduit text time transformers unordered-containers url vector
+         websockets wuss
        ];
        executableHaskellDepends = [ base hakyll split ];
        homepage = "https://github.com/jano017/Discord.hs";
@@ -55131,8 +55827,8 @@ self: {
     ({ mkDerivation, base, dlist, ghcjs-base-stub }:
      mkDerivation {
        pname = "disposable";
-       version = "0.2.0.3";
-       sha256 = "6d1b6d12d1f742f204effb46c204a596cd3aeeae42bebacb86c37e60db202351";
+       version = "0.2.0.4";
+       sha256 = "c23fe12dce0aef49bcd52206fe927ac6ae1aa4af5c32028d6ceb4bc52b1fc96a";
        libraryHaskellDepends = [ base dlist ghcjs-base-stub ];
        homepage = "https://github.com/louispan/disposable#readme";
        description = "Allows storing different resource-releasing actions together";
@@ -56357,6 +57053,34 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "doctest_0_11_2" = callPackage
+    ({ mkDerivation, base, base-compat, code-page, deepseq, directory
+     , filepath, ghc, ghc-paths, hspec, HUnit, mockery, process
+     , QuickCheck, setenv, silently, stringbuilder, syb, transformers
+     , with-location
+     }:
+     mkDerivation {
+       pname = "doctest";
+       version = "0.11.2";
+       sha256 = "0752de5ea4ad4179573cfc0f357781841221b4c14f2269a32111e5dbf161948b";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base base-compat code-page deepseq directory filepath ghc ghc-paths
+         process syb transformers
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base base-compat code-page deepseq directory filepath ghc ghc-paths
+         hspec HUnit mockery process QuickCheck setenv silently
+         stringbuilder syb transformers with-location
+       ];
+       homepage = "https://github.com/sol/doctest#readme";
+       description = "Test interactive Haskell examples";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "doctest-discover" = callPackage
     ({ mkDerivation, aeson, base, bytestring, directory, doctest
      , filepath
@@ -56769,6 +57493,18 @@ self: {
        license = "GPL";
      }) {};
 
+  "doublify-toolkit" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "doublify-toolkit";
+       version = "0.0.1";
+       sha256 = "dba394c7bf1d64898679a3b8108245abcf053fee439b8e4066ce2135f8592b52";
+       libraryHaskellDepends = [ base ];
+       homepage = "https://github.com/doublifyapis/toolkit-haskell";
+       description = "Doublify API toolkit for Haskell";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "dove" = callPackage
     ({ mkDerivation, acl2, base }:
      mkDerivation {
@@ -57717,6 +58453,19 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "dwergaz" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "dwergaz";
+       version = "0.2.0.0";
+       sha256 = "18bd15c3019f91ac0fe9efa78c79e0cac71f31b8faa1f8dba92d700dc427d70b";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base ];
+       homepage = "https://github.com/xngns/dwergaz";
+       description = "A minimal testing library";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "dx9base" = callPackage
     ({ mkDerivation, base, Win32 }:
      mkDerivation {
@@ -58946,6 +59695,25 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "ekg_0_4_0_13" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, ekg-core, ekg-json
+     , filepath, network, snap-core, snap-server, text, time
+     , transformers, unordered-containers
+     }:
+     mkDerivation {
+       pname = "ekg";
+       version = "0.4.0.13";
+       sha256 = "44b1d5987e8d8061aaf05fd96f9072399ba16b07999caf5186e856c7e47bb48f";
+       libraryHaskellDepends = [
+         aeson base bytestring ekg-core ekg-json filepath network snap-core
+         snap-server text time transformers unordered-containers
+       ];
+       homepage = "https://github.com/tibbe/ekg";
+       description = "Remote monitoring of processes";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ekg-bosun" = callPackage
     ({ mkDerivation, aeson, base, ekg-core, http-client, lens, network
      , network-uri, old-locale, text, time, unordered-containers, vector
@@ -59020,6 +59788,40 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ekg-elastic" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, ekg-core, hostname
+     , http-client, lens, text, time, unordered-containers, wreq
+     }:
+     mkDerivation {
+       pname = "ekg-elastic";
+       version = "0.2.2.0";
+       sha256 = "ae21e2ebc65d58e7faa9e4b660d4c67a1e41341014a47494e6dc9aa2bc8d8e19";
+       libraryHaskellDepends = [
+         aeson base bytestring ekg-core hostname http-client lens text time
+         unordered-containers wreq
+       ];
+       homepage = "https://github.com/cdodev/ekg-elastic";
+       description = "Push metrics to elastic";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "ekg-elasticsearch" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, ekg-core, hostname
+     , http-client, lens, text, time, unordered-containers, wreq
+     }:
+     mkDerivation {
+       pname = "ekg-elasticsearch";
+       version = "0.3.0.0";
+       sha256 = "7ce37cb775b93f85e482e77d6477aab8a50e6c1fea3d9ff4264fd0adff146377";
+       libraryHaskellDepends = [
+         aeson base bytestring ekg-core hostname http-client lens text time
+         unordered-containers wreq
+       ];
+       homepage = "https://github.com/cdodev/ekg-elasticsearch";
+       description = "Push metrics to elasticsearch";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "ekg-influxdb" = callPackage
     ({ mkDerivation, base, clock, containers, ekg-core, libinfluxdb
      , text, time, unordered-containers, vector
@@ -59052,6 +59854,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ekg-json_0_1_0_5" = callPackage
+    ({ mkDerivation, aeson, base, ekg-core, text, unordered-containers
+     }:
+     mkDerivation {
+       pname = "ekg-json";
+       version = "0.1.0.5";
+       sha256 = "0cd5ecae57a156a5c779acff70d0fa3b02c52cb05283c0effb62a2902ebe8556";
+       libraryHaskellDepends = [
+         aeson base ekg-core text unordered-containers
+       ];
+       homepage = "https://github.com/tibbe/ekg-json";
+       description = "JSON encoding of ekg metrics";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ekg-log" = callPackage
     ({ mkDerivation, aeson, base, bytestring, directory, ekg-core
      , fast-logger, filepath, text, time, unix, unordered-containers
@@ -59163,6 +59981,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ekg-wai_0_1_0_1" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, ekg-core, ekg-json
+     , filepath, http-types, network, text, time, transformers
+     , unordered-containers, wai, wai-app-static, warp
+     }:
+     mkDerivation {
+       pname = "ekg-wai";
+       version = "0.1.0.1";
+       sha256 = "b814937bfaadf3d53172fb1f7e9b7f8a21799e1d7ce5247974e71e2ccf2c7493";
+       libraryHaskellDepends = [
+         aeson base bytestring ekg-core ekg-json filepath http-types network
+         text time transformers unordered-containers wai wai-app-static warp
+       ];
+       homepage = "https://github.com/tvh/ekg-wai";
+       description = "Remote monitoring of processes";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "electrum-mnemonic" = callPackage
     ({ mkDerivation, base, tasty, tasty-quickcheck }:
      mkDerivation {
@@ -59601,8 +60438,8 @@ self: {
      }:
      mkDerivation {
        pname = "elocrypt";
-       version = "0.4.1";
-       sha256 = "8f2d96c3e91584e96d7a80f34577b541047220d1d9ca5d03c950985421ee5ac3";
+       version = "0.6.0";
+       sha256 = "5804d0012a1d4cc648b4b4881d1c7627ba6798765cb2ed9f04615519098dc36e";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base MonadRandom random ];
@@ -59624,8 +60461,8 @@ self: {
      }:
      mkDerivation {
        pname = "elsa";
-       version = "0.2.0.0";
-       sha256 = "79d83d3ab692b21920189ea780ab4418e06330959165b29f4d9940e1e03e64af";
+       version = "0.2.0.1";
+       sha256 = "41d484621c446a2fb80248d3f53bd68a8d7ff48d234d597165b5f33ae206f1c6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -60357,6 +61194,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "envelope_0_2_2_0" = callPackage
+    ({ mkDerivation, aeson, base, doctest, Glob, http-api-data, mtl
+     , text
+     }:
+     mkDerivation {
+       pname = "envelope";
+       version = "0.2.2.0";
+       sha256 = "cf4d6fe3f906e859ec3c16684a8dafb349e77f0fa4f21b7090ca33e707867ef9";
+       libraryHaskellDepends = [ aeson base http-api-data mtl text ];
+       testHaskellDepends = [ base doctest Glob ];
+       homepage = "https://github.com/cdepillabout/envelope#readme";
+       description = "Defines generic 'Envelope' type to wrap reponses from a JSON API";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "envparse" = callPackage
     ({ mkDerivation, base, containers, hspec, text }:
      mkDerivation {
@@ -61094,6 +61947,51 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "etc" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, directory
+     , exceptions, hashable, protolude, tasty, tasty-hunit, tasty-rerun
+     , text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "etc";
+       version = "0.0.0.2";
+       sha256 = "11c93030ccf2e2dc1916b1fb52d7886ee729ac26d8b88287d4ebe253bb557db1";
+       libraryHaskellDepends = [
+         aeson base bytestring containers directory exceptions hashable
+         protolude text unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers protolude tasty tasty-hunit
+         tasty-rerun text unordered-containers vector
+       ];
+       homepage = "https://github.com/roman/Haskell-etc";
+       description = "Declarative configuration spec for Haskell projects";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
+  "etc_0_1_0_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, directory
+     , exceptions, hashable, protolude, tasty, tasty-hunit, tasty-rerun
+     , text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "etc";
+       version = "0.1.0.0";
+       sha256 = "3f8a444e65e9a302a3282f87207a929929c8d78b5160ffad7c5c54655068980a";
+       libraryHaskellDepends = [
+         aeson base bytestring containers directory exceptions hashable
+         protolude text unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers protolude tasty tasty-hunit
+         tasty-rerun text unordered-containers vector
+       ];
+       homepage = "https://github.com/roman/Haskell-etc";
+       description = "Declarative configuration spec for Haskell projects";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "etcd" = callPackage
     ({ mkDerivation, aeson, async, base, bytestring, hspec
      , http-conduit, MonadRandom, mtl, text, time
@@ -61136,10 +62034,8 @@ self: {
      }:
      mkDerivation {
        pname = "ether";
-       version = "0.4.0.2";
-       sha256 = "8b9dce4d444613dc46df988fa3a437297503e63ff29fd28113b35b98a8dcd953";
-       revision = "1";
-       editedCabalFile = "a876e46771d9778373b6a63d43ecb4bb88e303c420341547bfd3f9b9054d1373";
+       version = "0.4.1.0";
+       sha256 = "4790c6a8d2f81fcda1dd037bd89e4183d215417f0f3228b6f3dee5a2be139d30";
        libraryHaskellDepends = [
          base exceptions mmorph monad-control mtl template-haskell
          transformers transformers-base transformers-lift
@@ -61152,6 +62048,100 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ethereum-analyzer" = callPackage
+    ({ mkDerivation, base, bimap, bytestring, containers
+     , ethereum-analyzer-deps, extra, fgl, graphviz, hexstring, hoopl
+     , hspec, text
+     }:
+     mkDerivation {
+       pname = "ethereum-analyzer";
+       version = "1.0.3";
+       sha256 = "c4144ad2572957cbd33d3c03c6eb68707b31e2e029741cbeb3b530237a6da8a1";
+       libraryHaskellDepends = [
+         base bimap bytestring containers ethereum-analyzer-deps extra fgl
+         graphviz hexstring hoopl text
+       ];
+       testHaskellDepends = [
+         base bytestring ethereum-analyzer-deps extra hoopl hspec text
+       ];
+       homepage = "https://github.com/ethereumK/ethereum-analyzer";
+       description = "A Ethereum contract analyzer";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
+  "ethereum-analyzer-cli" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, conduit-combinators
+     , directory, ethereum-analyzer, ethereum-analyzer-deps, exceptions
+     , hexstring, hflags, http-conduit, json-rpc, monad-logger, mtl
+     , text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "ethereum-analyzer-cli";
+       version = "1.0.3";
+       sha256 = "8cd1c6e8e694147b97fcb1ed9f07442018c66dd91b736756b94ae1d5b4810b17";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring conduit-combinators ethereum-analyzer-deps
+         exceptions hexstring http-conduit json-rpc text
+         unordered-containers vector
+       ];
+       executableHaskellDepends = [
+         base directory ethereum-analyzer ethereum-analyzer-deps hflags
+         monad-logger mtl text
+       ];
+       homepage = "https://github.com/ethereumK/ethereum-analyzer";
+       description = "A CLI frontend for ethereum-analyzer";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
+  "ethereum-analyzer-deps" = callPackage
+    ({ mkDerivation, aeson, ansi-wl-pprint, base, base16-bytestring
+     , binary, bytestring, containers, deepseq, fast-logger, global-lock
+     , monad-logger, nibblestring, split, text
+     }:
+     mkDerivation {
+       pname = "ethereum-analyzer-deps";
+       version = "0.0.1";
+       sha256 = "2b83d2f3e13d2d85d6662df3c9469e834b9f02d60b737e94a94802ab0c8c7b71";
+       libraryHaskellDepends = [
+         aeson ansi-wl-pprint base base16-bytestring binary bytestring
+         containers deepseq fast-logger global-lock monad-logger
+         nibblestring split text
+       ];
+       description = "Stripped dependencies of ethereum-analyzer";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
+  "ethereum-analyzer-webui" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, ethereum-analyzer
+     , ethereum-analyzer-deps, exceptions, hflags, http-media
+     , http-types, logging-effect, monad-logger, mtl, neat-interpolation
+     , optparse-applicative, prometheus-client, prometheus-metrics-ghc
+     , protolude, servant, servant-server, text, time, wai, wai-extra
+     , warp, wl-pprint-text
+     }:
+     mkDerivation {
+       pname = "ethereum-analyzer-webui";
+       version = "1.0.3";
+       sha256 = "487dcbd54fbc52682c51e9f52aa98a49e1cb369dad50bb29b2b9a1a94f0f900a";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring ethereum-analyzer exceptions http-media
+         http-types logging-effect mtl neat-interpolation
+         optparse-applicative prometheus-client prometheus-metrics-ghc
+         protolude servant servant-server text time wai wai-extra warp
+         wl-pprint-text
+       ];
+       executableHaskellDepends = [
+         base ethereum-analyzer ethereum-analyzer-deps hflags monad-logger
+       ];
+       homepage = "https://github.com/ethereumK/ethereum-analyzer";
+       description = "A web frontend for ethereum-analyzer";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "ethereum-client-haskell" = callPackage
     ({ mkDerivation, ansi-wl-pprint, array, base, base16-bytestring
      , binary, bytestring, cmdargs, containers, cryptohash, data-default
@@ -61328,8 +62318,8 @@ self: {
      }:
      mkDerivation {
        pname = "eve";
-       version = "0.1.7";
-       sha256 = "b1d4ad466224f3cad47bce852e5c1605e3353b57adb1a4dc57591ee89e99b237";
+       version = "0.1.8";
+       sha256 = "1f2bfd2114adc4bee6096bf4ae0faa835117627eca225f9cebc9b860604d1bae";
        libraryHaskellDepends = [
          base containers data-default free lens mtl
        ];
@@ -61437,8 +62427,8 @@ self: {
      }:
      mkDerivation {
        pname = "eventloop";
-       version = "0.8.2.2";
-       sha256 = "20681dea13cfc53e4b8e0b27c4e8ec62462a0c0886a797eb773370db1ca0e00e";
+       version = "0.8.2.3";
+       sha256 = "5867c9f778f0947301cddd83cd940f08daa2689b9a5bac3cc268806fde08cf2b";
        libraryHaskellDepends = [
          aeson base bytestring concurrent-utilities deepseq network stm
          suspend text timers websockets
@@ -61455,8 +62445,8 @@ self: {
      }:
      mkDerivation {
        pname = "eventsource-api";
-       version = "1.0.0";
-       sha256 = "3d72797d5d9b81f2f5f1e613d6681983d9fd541a6b5dd773d92b1982ced422e8";
+       version = "1.0.2";
+       sha256 = "d97fc24411bb872084ad41b2113070c8b576b3a055ed918e7880993c5fd64107";
        libraryHaskellDepends = [
          aeson base containers mtl protolude unordered-containers uuid
        ];
@@ -61935,8 +62925,8 @@ self: {
      }:
      mkDerivation {
        pname = "exinst";
-       version = "0.3.0.1";
-       sha256 = "7a7351355ac5bf1f0bf1fb1028993399f7f644b661579a62bbc88853a55c796b";
+       version = "0.4";
+       sha256 = "49f2465086a7e0411d9bdfe5957e54e7bd85d873dc7e75d3447c7b2edf98ee58";
        libraryHaskellDepends = [
          aeson base binary bytes cereal constraints deepseq hashable
          profunctors QuickCheck singletons
@@ -61947,7 +62937,7 @@ self: {
          tasty-quickcheck
        ];
        homepage = "https://github.com/k0001/exinst";
-       description = "Recover instances for your existential types";
+       description = "Recover type indexes and instances for your existentialized types";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -62484,8 +63474,8 @@ self: {
      }:
      mkDerivation {
        pname = "extra";
-       version = "1.5.1";
-       sha256 = "8f3397c7a176045f1bb3b2a181e36b54192cb6fb5e99a9d28552975130ec49fc";
+       version = "1.5.2";
+       sha256 = "47dcc02deb532850291f30ba2d2e7d251ac31b90021323fac71ab4c9ac80e063";
        libraryHaskellDepends = [
          base clock directory filepath process time unix
        ];
@@ -62538,6 +63528,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "extralife" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, http-client
+     , http-client-tls, text, time
+     }:
+     mkDerivation {
+       pname = "extralife";
+       version = "0.1.0.1";
+       sha256 = "766886bed3ce56d91dc082427849f96c8e8f116cadf06a28c1fcda94bac58488";
+       libraryHaskellDepends = [
+         aeson base bytestring http-client http-client-tls text time
+       ];
+       homepage = "https://github.com/wuest/haskell-extralife-api";
+       description = "API Client for ExtraLife team and user data";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "ez-couch" = callPackage
     ({ mkDerivation, aeson, attoparsec, attoparsec-conduit, base
      , blaze-builder, bytestring, classy-prelude, classy-prelude-conduit
@@ -62944,8 +63950,8 @@ self: {
      }:
      mkDerivation {
        pname = "fast-tagsoup";
-       version = "1.0.12";
-       sha256 = "6447078da5a85c62528edab1a266ae8709811ba1d113f6dee1ec249e75e3904a";
+       version = "1.0.13";
+       sha256 = "250658a41dae37448ce938ef05f9eaa1d9083b4b6030de03df074d3e546a0986";
        libraryHaskellDepends = [
          base bytestring containers tagsoup text text-icu
        ];
@@ -63262,29 +64268,29 @@ self: {
     ({ mkDerivation, aeson, attoparsec, base, base16-bytestring
      , base64-bytestring, bytestring, cereal, conduit, conduit-extra
      , containers, crypto-api, cryptohash, cryptohash-cryptoapi
-     , data-default, hspec, http-conduit, http-types, HUnit, lifted-base
-     , monad-control, monad-logger, old-locale, QuickCheck, resourcet
-     , text, time, transformers, transformers-base, unordered-containers
+     , data-default, hspec, http-client, http-conduit, http-types, HUnit
+     , lifted-base, monad-control, monad-logger, old-locale, QuickCheck
+     , resourcet, text, time, transformers, transformers-base
+     , unordered-containers
      }:
      mkDerivation {
        pname = "fb";
-       version = "1.0.13";
-       sha256 = "52af3e05b5721b5d38fea9231e9fde68b0e1987c4cc979acaf6e2f940537935e";
-       revision = "1";
-       editedCabalFile = "ff5a76303ad659f13394147cf6a3bbc3ee25e0ddf2df684d5b9a199c546dc75c";
+       version = "1.1.1";
+       sha256 = "c8d23435144e58af8ee64dde629f072043e4800daecce1bddb0670069a657f65";
        libraryHaskellDepends = [
          aeson attoparsec base base16-bytestring base64-bytestring
          bytestring cereal conduit conduit-extra crypto-api cryptohash
-         cryptohash-cryptoapi data-default http-conduit http-types
-         lifted-base monad-control monad-logger old-locale resourcet text
-         time transformers transformers-base unordered-containers
+         cryptohash-cryptoapi data-default http-client http-conduit
+         http-types lifted-base monad-control monad-logger old-locale
+         resourcet text time transformers transformers-base
+         unordered-containers
        ];
        testHaskellDepends = [
          aeson base bytestring conduit containers data-default hspec
          http-conduit HUnit lifted-base monad-control QuickCheck resourcet
          text time transformers
        ];
-       homepage = "https://github.com/prowdsponsor/fb";
+       homepage = "https://github.com/psibi/fb";
        description = "Bindings to Facebook's API";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -63522,8 +64528,8 @@ self: {
        pname = "feed";
        version = "0.3.12.0";
        sha256 = "cc2d6a3b91027d75b91a0a4c0f83f2df68bee3ce0d7338ea5ae0bcab6dd47942";
-       revision = "1";
-       editedCabalFile = "f4f8a8372bb2337c23c91e9fb5e29b379def01dba7234db0e44b9e753c25cc8c";
+       revision = "2";
+       editedCabalFile = "32389b33d279208406a223eb0c35ca1d687f6c2ac172dc106d684c11c1c6f73d";
        libraryHaskellDepends = [
          base old-locale old-time time time-locale-compat utf8-string xml
        ];
@@ -64064,6 +65070,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ficketed" = callPackage
+    ({ mkDerivation, async, base, binary, blaze-html, bytestring
+     , containers, directory, http-types, mime-types, MissingH
+     , optparse-applicative, socketed, text, wai, wai-app-static, warp
+     }:
+     mkDerivation {
+       pname = "ficketed";
+       version = "0.1.0.0";
+       sha256 = "9cf19ad44621750d659c6bcddb5cbc323c64bb3bd7c6b3d0a13b9759d1caa14c";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         async base binary blaze-html bytestring containers directory
+         http-types mime-types MissingH optparse-applicative socketed text
+         wai wai-app-static warp
+       ];
+       description = "update statically hosted file in a push stule through socketed";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "fields" = callPackage
     ({ mkDerivation, array, base, containers, fclabels, monads-fd
      , transformers
@@ -64195,8 +65221,8 @@ self: {
      }:
      mkDerivation {
        pname = "file-location";
-       version = "0.4.9";
-       sha256 = "be29deb3c2267913f642e511deca988cedd287ae519012d01178d37d05f814dc";
+       version = "0.4.9.1";
+       sha256 = "f4b2b84f8d602e0ae4194f897b584af95b3bfdc785e5030110743724d0b74974";
        libraryHaskellDepends = [
          base containers HUnit lifted-base template-haskell th-orphans
          transformers
@@ -65202,6 +66228,28 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "flat" = callPackage
+    ({ mkDerivation, array, base, bytestring, containers, cpu, deepseq
+     , derive, dlist, ghc-prim, mono-traversable, pretty, primitive
+     , tasty, tasty-hunit, tasty-quickcheck, text, transformers, vector
+     }:
+     mkDerivation {
+       pname = "flat";
+       version = "0.2.2";
+       sha256 = "27bb1b915b1a922d22c13c04cda6ea373e75d70fa198b6d8096027f8681bea36";
+       libraryHaskellDepends = [
+         array base bytestring containers cpu deepseq dlist ghc-prim
+         mono-traversable pretty primitive text transformers vector
+       ];
+       testHaskellDepends = [
+         base bytestring containers cpu deepseq derive ghc-prim pretty tasty
+         tasty-hunit tasty-quickcheck text
+       ];
+       homepage = "http://github.com/tittoassini/flat";
+       description = "Principled and efficient bit-oriented binary serialization";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "flat-maybe" = callPackage
     ({ mkDerivation, base, ghc-prim }:
      mkDerivation {
@@ -65248,6 +66296,19 @@ self: {
        license = stdenv.lib.licenses.gpl2;
      }) {};
 
+  "flay" = callPackage
+    ({ mkDerivation, base, constraints, tasty, tasty-quickcheck }:
+     mkDerivation {
+       pname = "flay";
+       version = "0.1";
+       sha256 = "c44ec42882dbb5713737a44619f7bbad742cf152ce864059b78cb4605bdc8da3";
+       libraryHaskellDepends = [ base constraints ];
+       testHaskellDepends = [ base tasty tasty-quickcheck ];
+       homepage = "https://github.com/k0001/flay";
+       description = "Work on your datatype without knowing its shape nor its contents";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "flexible-defaults" = callPackage
     ({ mkDerivation, base, containers, template-haskell, th-extras
      , transformers
@@ -65802,22 +66863,27 @@ self: {
 
   "fmt" = callPackage
     ({ mkDerivation, base, base16-bytestring, base64-bytestring
-     , bytestring, containers, hspec, microlens, neat-interpolation
-     , text, text-format, vector
+     , bytestring, containers, criterion, deepseq, formatting, hspec
+     , interpolate, microlens, neat-interpolation, text, text-format
+     , vector
      }:
      mkDerivation {
        pname = "fmt";
-       version = "0.0.0.4";
-       sha256 = "bfc71940c7f5c90c72945906e0887eb71894858593d536cb43b04109fd82634f";
+       version = "0.1.0.0";
+       sha256 = "94153a2e1aa613e8ab77eaa9fbc4723697b4cb4351f2383bc649290c2cbac495";
        libraryHaskellDepends = [
-         base base16-bytestring base64-bytestring bytestring microlens text
-         text-format
+         base base16-bytestring base64-bytestring bytestring containers
+         microlens text text-format
        ];
        testHaskellDepends = [
          base bytestring containers hspec neat-interpolation text vector
        ];
+       benchmarkHaskellDepends = [
+         base bytestring containers criterion deepseq formatting interpolate
+         text text-format vector
+       ];
        homepage = "http://github.com/aelve/fmt";
-       description = "Nice formatting library";
+       description = "A new formatting library";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
@@ -66638,10 +67704,29 @@ self: {
      }:
      mkDerivation {
        pname = "foundation";
-       version = "0.0.4";
-       sha256 = "a86d2383d2be673593c4862ce082bb2662ce1e2f32d5187f351d47105b95921b";
-       revision = "3";
-       editedCabalFile = "bd8219e3179c900cc49b70d006c8844fcda618f33867d2e8b5679fed9afd360b";
+       version = "0.0.6";
+       sha256 = "9f0a2e9823146e7d13d1a11522446d43e110d80bde4937214107415f593c0222";
+       libraryHaskellDepends = [ base ghc-prim ];
+       testHaskellDepends = [
+         base mtl QuickCheck tasty tasty-hunit tasty-quickcheck
+       ];
+       benchmarkHaskellDepends = [ base criterion ];
+       homepage = "https://github.com/haskell-foundation/foundation";
+       description = "Alternative prelude with batteries and no dependencies";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "foundation_0_0_7" = callPackage
+    ({ mkDerivation, base, criterion, ghc-prim, mtl, QuickCheck, tasty
+     , tasty-hunit, tasty-quickcheck
+     }:
+     mkDerivation {
+       pname = "foundation";
+       version = "0.0.7";
+       sha256 = "6b4e2ed9920a47ef7cbfe015f502695f707694f54e4febea6d296b6c08dda49b";
+       revision = "1";
+       editedCabalFile = "28e6ea019acf74e5800bebd14ba601086541f227f46682277e5ab469d767aa88";
        libraryHaskellDepends = [ base ghc-prim ];
        testHaskellDepends = [
          base mtl QuickCheck tasty tasty-hunit tasty-quickcheck
@@ -67264,6 +68349,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "freer-effects_0_3_0_1" = callPackage
+    ({ mkDerivation, base, criterion, free, mtl, QuickCheck, tasty
+     , tasty-hunit, tasty-quickcheck
+     }:
+     mkDerivation {
+       pname = "freer-effects";
+       version = "0.3.0.1";
+       sha256 = "6aee97d69d573b5ed0d5e549330299adba393f46845dfd8339e4cc19b48a4c8d";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base QuickCheck tasty tasty-hunit tasty-quickcheck
+       ];
+       benchmarkHaskellDepends = [ base criterion free mtl ];
+       homepage = "https://github.com/IxpertaSolutions/freer-effects";
+       description = "Implementation of effect system for Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "freesect" = callPackage
     ({ mkDerivation, array, base, cpphs, directory, mtl, parallel
      , pretty, random, syb
@@ -69137,8 +70244,8 @@ self: {
      }:
      mkDerivation {
        pname = "generic-deriving";
-       version = "1.11.1";
-       sha256 = "b38d427f990f3080108c565a81284217290a47be63bab7bf59036ece2e2cb0e9";
+       version = "1.11.2";
+       sha256 = "29960f2aa810abffc2f02658e7fa523cbfa4c92102e02d252482f9551bc122f9";
        libraryHaskellDepends = [
          base containers ghc-prim template-haskell
        ];
@@ -69226,6 +70333,21 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "generic-random_0_5_0_0" = callPackage
+    ({ mkDerivation, base, QuickCheck }:
+     mkDerivation {
+       pname = "generic-random";
+       version = "0.5.0.0";
+       sha256 = "4effa13c9af919a27ac6e1268937d903e8fe7daf588668ef79a1fea62c096503";
+       revision = "1";
+       editedCabalFile = "d29d7fb8fd61317a1117ddb5189abd1498d2dccdf5a353349f712c4ea1e6e094";
+       libraryHaskellDepends = [ base QuickCheck ];
+       homepage = "http://github.com/lysxia/generic-random";
+       description = "Generic random generators";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "generic-records" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -69349,6 +70471,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "generics-sop_0_2_5_0" = callPackage
+    ({ mkDerivation, base, deepseq, ghc-prim, template-haskell }:
+     mkDerivation {
+       pname = "generics-sop";
+       version = "0.2.5.0";
+       sha256 = "f3977cfd6c3e21555393294b2be2b8fd23729f9224828418208d06da65d34ddc";
+       libraryHaskellDepends = [ base deepseq ghc-prim template-haskell ];
+       testHaskellDepends = [ base ];
+       description = "Generic Programming using True Sums of Products";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "generics-sop-lens" = callPackage
     ({ mkDerivation, base, generics-sop, lens }:
      mkDerivation {
@@ -69671,6 +70806,28 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "genvalidity-hspec-hashable" = callPackage
+    ({ mkDerivation, base, doctest, genvalidity, genvalidity-hspec
+     , genvalidity-property, hashable, hspec, hspec-core, QuickCheck
+     , validity
+     }:
+     mkDerivation {
+       pname = "genvalidity-hspec-hashable";
+       version = "0.0.0.0";
+       sha256 = "ccae0bc7eb9afdc14669a5d8e8d8fbe292ea9f3613ce810ba682d541e5faafea";
+       libraryHaskellDepends = [
+         base genvalidity genvalidity-hspec genvalidity-property hashable
+         hspec QuickCheck validity
+       ];
+       testHaskellDepends = [
+         base doctest genvalidity genvalidity-hspec hashable hspec
+         hspec-core QuickCheck
+       ];
+       homepage = "https://github.com/NorfairKing/validity";
+       description = "Standard spec's for Hashable instances";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "genvalidity-path" = callPackage
     ({ mkDerivation, base, genvalidity, genvalidity-hspec, hspec, path
      , validity-path
@@ -70315,8 +71472,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-heap-view";
-       version = "0.5.7";
-       sha256 = "4b6cbb42c256987e55b5d6136f4c7efb560a5ea1fd34d4878dcec1fe9aa71524";
+       version = "0.5.9";
+       sha256 = "c631a30ed4dc3d6b53ffe1dbed7d2dc5799a362e6e490a7760ff2fd2b0df32af";
        libraryHaskellDepends = [
          base binary bytestring containers ghc template-haskell transformers
        ];
@@ -70517,8 +71674,8 @@ self: {
        pname = "ghc-paths";
        version = "0.1.0.9";
        sha256 = "afa68fb86123004c37c1dc354286af2d87a9dcfb12ddcb80e8bd0cd55bc87945";
-       revision = "1";
-       editedCabalFile = "b47858cf533ae8d72bd422106bcb9e075ae477ab2e537f59ffe437277840bcef";
+       revision = "2";
+       editedCabalFile = "d3f3470c7bd13b765891fb56b28d809cb7aeda0a78050679ae6f29b6705c46bf";
        setupHaskellDepends = [ base Cabal directory ];
        libraryHaskellDepends = [ base ];
        description = "Knowledge of GHC's installation directories";
@@ -70593,14 +71750,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "ghc-prof_1_4_0" = callPackage
+  "ghc-prof_1_4_0_1" = callPackage
     ({ mkDerivation, attoparsec, base, containers, directory, filepath
      , process, scientific, tasty, tasty-hunit, temporary, text, time
      }:
      mkDerivation {
        pname = "ghc-prof";
-       version = "1.4.0";
-       sha256 = "2ab282b118684c30cf10f6b69aa362dacaf274a73b7e23b668c36d6830ce4253";
+       version = "1.4.0.1";
+       sha256 = "af2e4919097e4bed023aefd9b10fb70ded3ea369e7457324e7ad7d2b96d809e0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -70775,18 +71932,19 @@ self: {
   "ghc-typelits-knownnat" = callPackage
     ({ mkDerivation, base, ghc, ghc-tcplugins-extra
      , ghc-typelits-natnormalise, singletons, tasty, tasty-hunit
-     , template-haskell, transformers
+     , tasty-quickcheck, template-haskell, transformers
      }:
      mkDerivation {
        pname = "ghc-typelits-knownnat";
-       version = "0.2.3";
-       sha256 = "bd7828cf6c3062a785ad5c35a82d2229341acca4c2fd605c4718f6f595316133";
+       version = "0.2.4";
+       sha256 = "76940aad94517a3fae00d007396edef8238d306094aa82b30da0613df0b33e82";
        libraryHaskellDepends = [
          base ghc ghc-tcplugins-extra ghc-typelits-natnormalise singletons
          template-haskell transformers
        ];
        testHaskellDepends = [
          base ghc-typelits-natnormalise singletons tasty tasty-hunit
+         tasty-quickcheck
        ];
        homepage = "http://clash-lang.org/";
        description = "Derive KnownNat constraints from other KnownNat constraints";
@@ -71047,8 +72205,8 @@ self: {
     ({ mkDerivation, base, ghcjs-dom-jsaddle, text, transformers }:
      mkDerivation {
        pname = "ghcjs-dom";
-       version = "0.7.0.4";
-       sha256 = "1c9e57e7de17179c2aca7c6a0417304fa2229b498431f1137dc0a606d8315bac";
+       version = "0.8.0.0";
+       sha256 = "68f450ee0c8c3fdb9becec30bb88ab340df9639244f0e49b53caf904ed06026a";
        libraryHaskellDepends = [
          base ghcjs-dom-jsaddle text transformers
        ];
@@ -71077,8 +72235,8 @@ self: {
     ({ mkDerivation, jsaddle-dom }:
      mkDerivation {
        pname = "ghcjs-dom-jsaddle";
-       version = "0.7.0.3";
-       sha256 = "3ec7c0973dfce18d77df9b6162c29c4af6ea2356da679510c034ae8c31a4c029";
+       version = "0.8.0.0";
+       sha256 = "8a003ecab2ee0c8c8af5b8a0fb20820dc809c2e200c956bd07e6c60c5958774c";
        libraryHaskellDepends = [ jsaddle-dom ];
        doHaddock = false;
        description = "DOM library that supports both GHCJS and GHC using jsaddle";
@@ -71090,8 +72248,8 @@ self: {
     ({ mkDerivation }:
      mkDerivation {
        pname = "ghcjs-dom-jsffi";
-       version = "0.7.0.4";
-       sha256 = "2a44162bf30cb0ebee18b76db5831804add52d3a4bba4c183d0229b975c15619";
+       version = "0.8.0.0";
+       sha256 = "5c1fc8af094ce01411a6ed7d9c5fa61c4cabad676539fe5383b64e7bcc7ef3e2";
        description = "DOM library using JSFFI and GHCJS";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -71152,8 +72310,8 @@ self: {
     ({ mkDerivation, base, transformers }:
      mkDerivation {
        pname = "ghcjs-perch";
-       version = "0.3.3.1";
-       sha256 = "5a9e656474f2b57c18ed028217f7c44d00468ca2b8d433422b049084143a1275";
+       version = "0.3.3.2";
+       sha256 = "a7cee1699b51af9e0aa62dec2ab4a04f68250106da02c77bed19dd69fae5e6d9";
        libraryHaskellDepends = [ base transformers ];
        description = "GHCJS version of Perch library";
        license = stdenv.lib.licenses.mit;
@@ -71552,8 +72710,8 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gtk";
-       version = "3.0.11";
-       sha256 = "a4bce9a9ea706a880bb9e8f6a2f8eb872b66acf550f8f42dd13a552b4d725f3f";
+       version = "3.0.13";
+       sha256 = "a5c79de84124785e308b5fc253574bca3130e47b425fb1a7543f3f17505720a2";
        setupHaskellDepends = [ base Cabal haskell-gi ];
        libraryHaskellDepends = [
          base bytestring containers gi-atk gi-cairo gi-gdk gi-gdkpixbuf
@@ -71575,8 +72733,8 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gtk-hs";
-       version = "0.3.4.0";
-       sha256 = "2e7ce60dded6d70a4598001469894d1f415bc28d600e5a6ac9f4558c624200e4";
+       version = "0.3.4.2";
+       sha256 = "4383641d4150ca745a339628e4b824480839568b344ef0f5d6659b7354d3e88e";
        libraryHaskellDepends = [
          base base-compat containers gi-gdk gi-gdkpixbuf gi-glib gi-gobject
          gi-gtk haskell-gi-base mtl text transformers
@@ -71612,7 +72770,7 @@ self: {
   "gi-gtksource" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, gi-atk
      , gi-cairo, gi-gdk, gi-gdkpixbuf, gi-gio, gi-glib, gi-gobject
-     , gi-gtk, gi-pango, gtksourceview, haskell-gi, haskell-gi-base
+     , gi-gtk, gi-pango, gtksourceview3, haskell-gi, haskell-gi-base
      , text, transformers
      }:
      mkDerivation {
@@ -71625,13 +72783,13 @@ self: {
          gi-gio gi-glib gi-gobject gi-gtk gi-pango haskell-gi
          haskell-gi-base text transformers
        ];
-       libraryPkgconfigDepends = [ gtksourceview ];
+       libraryPkgconfigDepends = [ gtksourceview3 ];
        doHaddock = false;
        homepage = "https://github.com/haskell-gi/haskell-gi";
        description = "GtkSource bindings";
        license = stdenv.lib.licenses.lgpl21;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {inherit (pkgs.gnome2) gtksourceview;};
+     }) {gtksourceview3 = pkgs.gnome3.gtksourceview;};
 
   "gi-javascriptcore" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, haskell-gi
@@ -71697,6 +72855,27 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) libnotify;};
 
+  "gi-ostree" = callPackage
+    ({ mkDerivation, base, bytestring, Cabal, containers, gi-gio
+     , gi-glib, gi-gobject, haskell-gi, haskell-gi-base, ostree, text
+     , transformers
+     }:
+     mkDerivation {
+       pname = "gi-ostree";
+       version = "1.0.1";
+       sha256 = "de10141aad3fe918b337743231d86f2dd70e876e6e49de8f4d36ef700d241299";
+       setupHaskellDepends = [ base Cabal haskell-gi ];
+       libraryHaskellDepends = [
+         base bytestring containers gi-gio gi-glib gi-gobject haskell-gi
+         haskell-gi-base text transformers
+       ];
+       libraryPkgconfigDepends = [ ostree ];
+       doHaddock = false;
+       homepage = "https://github.com/haskell-gi/haskell-gi";
+       description = "OSTree bindings";
+       license = stdenv.lib.licenses.lgpl21;
+     }) {inherit (pkgs) ostree;};
+
   "gi-pango" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, cairo, containers
      , gi-glib, gi-gobject, haskell-gi, haskell-gi-base, pango, text
@@ -72066,6 +73245,30 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "gipeda_0_3_3_2" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, cassava
+     , concurrent-output, containers, directory, extra, file-embed
+     , filepath, gitlib, gitlib-libgit2, scientific, shake, split
+     , tagged, text, transformers, unordered-containers, vector, yaml
+     }:
+     mkDerivation {
+       pname = "gipeda";
+       version = "0.3.3.2";
+       sha256 = "39c0e0e3b892d37a66c34d741c563bfda9d171f481b4810dbf0697c312ce2d13";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         aeson base bytestring cassava concurrent-output containers
+         directory extra file-embed filepath gitlib gitlib-libgit2
+         scientific shake split tagged text transformers
+         unordered-containers vector yaml
+       ];
+       homepage = "https://github.com/nomeata/gipeda";
+       description = "Git Performance Dashboard";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "giphy-api" = callPackage
     ({ mkDerivation, aeson, base, basic-prelude, bytestring, containers
      , directory, hspec, http-api-data, http-client, http-client-tls
@@ -72515,8 +73718,8 @@ self: {
      }:
      mkDerivation {
        pname = "gitHUD";
-       version = "1.3.6";
-       sha256 = "a522924926b65d19601726fb5fde020c0523f0b30c95d6bb1e0ba0d751da8a49";
+       version = "1.3.7";
+       sha256 = "dc38431b13d2dc4625987131c1389ed4ab67154990035c0c66f30d90d1a344af";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base mtl parsec process text unix ];
@@ -72581,8 +73784,8 @@ self: {
        pname = "github";
        version = "0.15.0";
        sha256 = "f091c35c446619bace51bd4d3831563cccfbda896954ed98d2aed818feead609";
-       revision = "2";
-       editedCabalFile = "dfa08cdd826d10c2b751d80356cb956f38dddd4b7247fdb0beeefb6f98e94373";
+       revision = "3";
+       editedCabalFile = "50040d65a00580e8ff6bfc642b4a99fa722893692908c062629de88d2b3ea20f";
        libraryHaskellDepends = [
          aeson aeson-compat base base-compat base16-bytestring binary
          binary-orphans byteable bytestring containers cryptohash deepseq
@@ -72670,6 +73873,28 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "github-release_1_0_2" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, http-client
+     , http-client-tls, http-types, mime-types, optparse-generic, text
+     , unordered-containers, uri-templater
+     }:
+     mkDerivation {
+       pname = "github-release";
+       version = "1.0.2";
+       sha256 = "c3bc7318a9497f7b44fda6ed1ac993bd1de72b5f802fb00e2c9e6436a1e8854d";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring http-client http-client-tls http-types
+         mime-types optparse-generic text unordered-containers uri-templater
+       ];
+       executableHaskellDepends = [ base ];
+       homepage = "https://github.com/tfausak/github-release#readme";
+       description = "Upload files to GitHub releases";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "github-tools" = callPackage
     ({ mkDerivation, base, bytestring, containers, exceptions, github
      , groom, html, http-client, http-client-tls, monad-parallel
@@ -73154,6 +74379,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "glabrous_0_3_2" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, attoparsec, base, bytestring
+     , cereal, cereal-text, directory, either, hspec, text
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "glabrous";
+       version = "0.3.2";
+       sha256 = "39c84b225b4d85b0f662e22f762e3b7e9c8f67c1097f23d0af094be79f09db7f";
+       libraryHaskellDepends = [
+         aeson aeson-pretty attoparsec base bytestring cereal cereal-text
+         either text unordered-containers
+       ];
+       testHaskellDepends = [
+         base directory either hspec text unordered-containers
+       ];
+       homepage = "https://github.com/MichelBoucey/glabrous";
+       description = "A template DSL library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "glade" = callPackage
     ({ mkDerivation, base, Cabal, glib, gtk, gtk2hs-buildtools
      , libglade
@@ -73339,8 +74586,8 @@ self: {
      }:
      mkDerivation {
        pname = "glazier-react";
-       version = "0.4.0.0";
-       sha256 = "2486f02a5c8375cc2b7f75d53279ef96257067e24bc1b946c9ab304cf3b7b883";
+       version = "0.6.0.0";
+       sha256 = "57b7d5b55b3c05fa27664971e206a679c52c718e88a0000c0dc692471ec1be1a";
        libraryHaskellDepends = [
          base containers deepseq disposable dlist free ghcjs-base-stub
          glazier javascript-extras lens mmorph mtl pipes-concurrency
@@ -73361,8 +74608,8 @@ self: {
      }:
      mkDerivation {
        pname = "glazier-react-examples";
-       version = "0.4.0.0";
-       sha256 = "2bff5dbf10e7f78bf61f93a8abe210d0cafcf634f3973e78aa2b1e7fd8188152";
+       version = "0.6.0.0";
+       sha256 = "f5c39db40f0ccc6cb0beeddd1118c7117af7fa7510e99edfc6ceba49c45a2aa8";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -73384,8 +74631,8 @@ self: {
      }:
      mkDerivation {
        pname = "glazier-react-widget";
-       version = "0.4.0.0";
-       sha256 = "f60ebf2ff016382dda3d5808eef28eb900fc62f86b5f7c6be98c92186bce2d68";
+       version = "0.6.0.0";
+       sha256 = "8ae667b96efe25af3d2ac44bdf752e2216f80e41eff4de1c9a5855b1fde2feac";
        libraryHaskellDepends = [
          base containers disposable dlist free ghcjs-base-stub glazier
          glazier-react javascript-extras lens mmorph mtl pipes-concurrency
@@ -73495,8 +74742,8 @@ self: {
      }:
      mkDerivation {
        pname = "glirc";
-       version = "2.20.2.1";
-       sha256 = "95b148b68701f7a1f521e0884ab405fe61bbb5a4a1a47d399e536cad1a400110";
+       version = "2.20.3";
+       sha256 = "2c50f79c534a9d350cf956f559041d7d344f5c09586c648ec4284a6093a7aec1";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal filepath ];
@@ -73693,10 +74940,8 @@ self: {
     ({ mkDerivation, accelerate, base, gloss, gloss-rendering }:
      mkDerivation {
        pname = "gloss-accelerate";
-       version = "1.9.0.0";
-       sha256 = "3bf746a687ed23fbb19d6ac358cad52dfeb06301315ac4e69d221c6a5139798f";
-       revision = "1";
-       editedCabalFile = "cddab61d37317ec1a15ad7da65d909b8668b284dcf182a7a348d234bff7d30ff";
+       version = "2.0.0.0";
+       sha256 = "2ea628c30c52a6a9600f6fd782b1aa65266a7253b6fca9968e1e1474a4f0d1c1";
        libraryHaskellDepends = [ accelerate base gloss gloss-rendering ];
        description = "Extras to interface Gloss and Accelerate";
        license = stdenv.lib.licenses.bsd3;
@@ -73814,15 +75059,15 @@ self: {
      }) {};
 
   "gloss-raster-accelerate" = callPackage
-    ({ mkDerivation, accelerate, accelerate-cuda, base, gloss
+    ({ mkDerivation, accelerate, base, colour-accelerate, gloss
      , gloss-accelerate
      }:
      mkDerivation {
        pname = "gloss-raster-accelerate";
-       version = "1.9.0.0";
-       sha256 = "288e1937da8a28e947bafd55624bffb469c84ef031b23b895589deac205ef24d";
+       version = "2.0.0.0";
+       sha256 = "2db125ba6435ee4c20ac4210a66899a063f34554e80e4b7a88c6e4e579ea18c4";
        libraryHaskellDepends = [
-         accelerate accelerate-cuda base gloss gloss-accelerate
+         accelerate base colour-accelerate gloss gloss-accelerate
        ];
        description = "Parallel rendering of raster images using Accelerate";
        license = stdenv.lib.licenses.bsd3;
@@ -74114,8 +75359,8 @@ self: {
      }:
      mkDerivation {
        pname = "gnss-converters";
-       version = "0.2.5";
-       sha256 = "fdb2f813be0fe972855910100b544f7dbf3a2cd69d79e99bcffc9f60e761ec02";
+       version = "0.2.6";
+       sha256 = "029d9ec796ae8cb7a1986676ea85552b3f48ddaa0c92dddb49e406cd3129b79f";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -77092,8 +78337,8 @@ self: {
      }:
      mkDerivation {
        pname = "google-maps-geocoding";
-       version = "0.2.0.0";
-       sha256 = "73a2560c6fb927d689e826cbd4ec1aba6a9f35bb3ba0b66b0d693614bfc492b3";
+       version = "0.3.0.0";
+       sha256 = "11b543397fd2a414371b0ba795ae4f49ab29db318d1f154df1d4f6c9cebe39b2";
        libraryHaskellDepends = [
          aeson base google-static-maps http-client servant servant-client
          text
@@ -77171,17 +78416,20 @@ self: {
      }) {};
 
   "google-static-maps" = callPackage
-    ({ mkDerivation, aeson, base, bytedump, double-conversion
-     , http-client, JuicyPixels, network-uri, servant, servant-client
-     , servant-JuicyPixels, text
+    ({ mkDerivation, aeson, base, base64-bytestring, bytedump
+     , bytestring, cryptonite, double-conversion, http-client
+     , JuicyPixels, memory, MissingH, network-uri, servant
+     , servant-client, servant-JuicyPixels, text, utf8-string
      }:
      mkDerivation {
        pname = "google-static-maps";
-       version = "0.3.0.0";
-       sha256 = "4344c0b1470dd2025bae93a0a9e29c43826c00a16b618513515d696eab96c196";
+       version = "0.4.0.0";
+       sha256 = "015e9f538cac89c82eda25732905eefc7c31bda40d068da5e13b8d3402b03464";
        libraryHaskellDepends = [
-         aeson base bytedump double-conversion http-client JuicyPixels
+         aeson base base64-bytestring bytedump bytestring cryptonite
+         double-conversion http-client JuicyPixels memory MissingH
          network-uri servant servant-client servant-JuicyPixels text
+         utf8-string
        ];
        homepage = "https://github.com/mpilgrem/google-static-maps#readme";
        description = "Bindings to the Google Static Maps API";
@@ -77695,8 +78943,8 @@ self: {
      }:
      mkDerivation {
        pname = "grapefruit-examples";
-       version = "0.1.0.6";
-       sha256 = "d12f367a313bebb5d793a152ab59223ada856fb4150428d994f30b87ae60e99b";
+       version = "0.1.0.7";
+       sha256 = "5f52af837b36a2e9981aa44af01523372d760d27ce96eb6777386214c1712714";
        libraryHaskellDepends = [
          base colour containers fraction grapefruit-frp grapefruit-records
          grapefruit-ui
@@ -77713,8 +78961,8 @@ self: {
      }:
      mkDerivation {
        pname = "grapefruit-frp";
-       version = "0.1.0.6";
-       sha256 = "4e661fd1f137e438e1fa82d2d2bba7e9df24f5cf2e08027b2085793bc0c08ec0";
+       version = "0.1.0.7";
+       sha256 = "bacf6c5dce5cfdc30ae0cf099ac3117bb622ba36cbb366bebac424d99b68528c";
        libraryHaskellDepends = [
          arrows base containers fingertree semigroups TypeCompose
        ];
@@ -77728,8 +78976,8 @@ self: {
     ({ mkDerivation, arrows, base, grapefruit-frp }:
      mkDerivation {
        pname = "grapefruit-records";
-       version = "0.1.0.6";
-       sha256 = "f5b41878c93312c4149b8c44dbc51bef35de6f9ab9b0d6a5e898f3285c5c99e4";
+       version = "0.1.0.7";
+       sha256 = "a6b112dcae7cadba6948246eb0636459da45719bfa7c86803cf3858033f13248";
        libraryHaskellDepends = [ arrows base grapefruit-frp ];
        homepage = "https://grapefruit-project.org/";
        description = "A record system for Functional Reactive Programming";
@@ -77743,8 +78991,8 @@ self: {
      }:
      mkDerivation {
        pname = "grapefruit-ui";
-       version = "0.1.0.6";
-       sha256 = "16c7d95fa20d962c72dcc25d13ccd60d625f6c8fee6ea2b7d8a66dc1725f8fc9";
+       version = "0.1.0.7";
+       sha256 = "b2c111e0efe13a06840cc76b7fc5b2aac7b41fd5af3d672ed0637c8192bd5ce4";
        libraryHaskellDepends = [
          arrows base colour containers fraction grapefruit-frp
          grapefruit-records
@@ -77762,8 +79010,8 @@ self: {
      }:
      mkDerivation {
        pname = "grapefruit-ui-gtk";
-       version = "0.1.0.6";
-       sha256 = "1f3411ae628b64f842a205e22226bc651e698dd368950d0063bf8ef3f1a7ba42";
+       version = "0.1.0.7";
+       sha256 = "483c621ddce5ad92111106d91578c23e4494a7770c610ee36662f721696ca647";
        libraryHaskellDepends = [
          base colour containers fraction glib grapefruit-frp
          grapefruit-records grapefruit-ui gtk3 transformers
@@ -78473,6 +79721,29 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "grenade" = callPackage
+    ({ mkDerivation, ad, base, bytestring, cereal, constraints
+     , containers, criterion, deepseq, exceptions, hedgehog, hmatrix
+     , MonadRandom, mtl, primitive, random, reflection, singletons, text
+     , transformers, typelits-witnesses, vector
+     }:
+     mkDerivation {
+       pname = "grenade";
+       version = "0.1.0";
+       sha256 = "9b7c94a4587943f2de9fec9c1d44a34ad5626b49903a493f6a9a9727d8f2c5f7";
+       libraryHaskellDepends = [
+         base bytestring cereal containers deepseq exceptions hmatrix
+         MonadRandom mtl primitive singletons text vector
+       ];
+       testHaskellDepends = [
+         ad base constraints hedgehog hmatrix MonadRandom mtl random
+         reflection singletons text transformers typelits-witnesses vector
+       ];
+       benchmarkHaskellDepends = [ base bytestring criterion hmatrix ];
+       description = "Practical Deep Learning in Haskell";
+       license = stdenv.lib.licenses.bsd2;
+     }) {};
+
   "greplicate" = callPackage
     ({ mkDerivation, base, directory, doctest, filepath, lens
      , QuickCheck, template-haskell
@@ -78607,6 +79878,21 @@ self: {
        license = stdenv.lib.licenses.publicDomain;
      }) {};
 
+  "groom_0_1_2_1" = callPackage
+    ({ mkDerivation, base, haskell-src-exts }:
+     mkDerivation {
+       pname = "groom";
+       version = "0.1.2.1";
+       sha256 = "a6b4a4d3af1b26f63039f04bd4176493f8dd4f6a9ab281f0e33c0151c20de59d";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base haskell-src-exts ];
+       executableHaskellDepends = [ base ];
+       description = "Pretty printing for well-behaved Show instances";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gross" = callPackage
     ({ mkDerivation, base, lens, mtl, ncurses }:
      mkDerivation {
@@ -78724,6 +80010,26 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "groundhog-postgresql_0_8_0_1" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, blaze-builder, bytestring
+     , containers, groundhog, monad-control, postgresql-libpq
+     , postgresql-simple, resource-pool, resourcet, text, time
+     , transformers, vector
+     }:
+     mkDerivation {
+       pname = "groundhog-postgresql";
+       version = "0.8.0.1";
+       sha256 = "ad8ef33fb170dc63f97ef2add891d2e20f279f12495a2f56c7086d49c20b95e8";
+       libraryHaskellDepends = [
+         aeson attoparsec base blaze-builder bytestring containers groundhog
+         monad-control postgresql-libpq postgresql-simple resource-pool
+         resourcet text time transformers vector
+       ];
+       description = "PostgreSQL backend for the groundhog library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "groundhog-sqlite" = callPackage
     ({ mkDerivation, base, bytestring, containers, direct-sqlite
      , groundhog, monad-control, resource-pool, resourcet, text
@@ -78765,8 +80071,8 @@ self: {
      }:
      mkDerivation {
        pname = "group-by-date";
-       version = "0.1";
-       sha256 = "6660c6bd7be563375b5bacf6c3d0a0499678896808b1843e62e94c7bebb7f3ee";
+       version = "0.1.0.1";
+       sha256 = "0dd84e94fe79f318d17aceed32a5b1360f52102cff2762af48d5a474a7eeff21";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -79477,7 +80783,7 @@ self: {
 
   "gtksourceview3" = callPackage
     ({ mkDerivation, array, base, Cabal, containers, glib
-     , gtk2hs-buildtools, gtk3, gtksourceview, mtl, text
+     , gtk2hs-buildtools, gtk3, gtksourceview3, mtl, text
      }:
      mkDerivation {
        pname = "gtksourceview3";
@@ -79487,11 +80793,11 @@ self: {
        libraryHaskellDepends = [
          array base containers glib gtk3 mtl text
        ];
-       libraryPkgconfigDepends = [ gtksourceview ];
+       libraryPkgconfigDepends = [ gtksourceview3 ];
        homepage = "http://projects.haskell.org/gtk2hs/";
        description = "Binding to the GtkSourceView library";
        license = stdenv.lib.licenses.lgpl21;
-     }) {inherit (pkgs.gnome2) gtksourceview;};
+     }) {gtksourceview3 = pkgs.gnome3.gtksourceview;};
 
   "guarded-rewriting" = callPackage
     ({ mkDerivation, base, instant-generics }:
@@ -80748,8 +82054,8 @@ self: {
        pname = "hackage-security";
        version = "0.5.2.2";
        sha256 = "507a837851264a774c8f4d400f798c3dac5be11dc428fe72d33ef594ca533c41";
-       revision = "2";
-       editedCabalFile = "678fde798c4291a66cc8d0497c1df558292dd8526b46132d6c651dc090ef0e5a";
+       revision = "3";
+       editedCabalFile = "ae15fe2cddfec6ebd0e4fe78c3b295335e88deb00fdaf82adb7144ecc7a3ad6d";
        libraryHaskellDepends = [
          base base16-bytestring base64-bytestring bytestring Cabal
          containers cryptohash-sha256 directory ed25519 filepath ghc-prim
@@ -81057,8 +82363,8 @@ self: {
     ({ mkDerivation, base, filepath, haddock-api, hspec }:
      mkDerivation {
        pname = "haddock";
-       version = "2.17.2";
-       sha256 = "9dd499b022b775b1168c2a8fc940a8cca5eec2416289277a8f59d7321117bb15";
+       version = "2.17.4";
+       sha256 = "a51805a200e93ff8be4bf8a9c048ae29212ed8bd6dab7848d5bf11c4cf1e70fc";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base haddock-api ];
@@ -81115,8 +82421,8 @@ self: {
      }:
      mkDerivation {
        pname = "haddock-api";
-       version = "2.17.3.1";
-       sha256 = "ed8c5282260d3300dc06e45e2f9a5d53606315a15a2336db749d3faa64d564ba";
+       version = "2.17.4";
+       sha256 = "5a97114f567bb7384d07dfc77a7c2f6c35017193e63411b85ab2a3f7fe35d601";
        libraryHaskellDepends = [
          array base bytestring Cabal containers deepseq directory filepath
          ghc ghc-boot ghc-paths haddock-library transformers xhtml
@@ -81170,8 +82476,8 @@ self: {
      }:
      mkDerivation {
        pname = "haddock-library";
-       version = "1.4.2";
-       sha256 = "e8edf0714ef3c0e64ad61db6e9f3c1ca0980941b4e9128c94881588cdb4168dc";
+       version = "1.4.3";
+       sha256 = "f764763f8004715431a184a981493781b8380e13fd89ca0075ac426edc5d445b";
        libraryHaskellDepends = [ base bytestring deepseq transformers ];
        testHaskellDepends = [
          base base-compat bytestring deepseq hspec QuickCheck transformers
@@ -81389,6 +82695,26 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "hail" = callPackage
+    ({ mkDerivation, base, bytestring, directory, filepath, http-client
+     , lens, lens-aeson, netrc, network-uri, optparse-applicative
+     , parsec, process, text, wreq
+     }:
+     mkDerivation {
+       pname = "hail";
+       version = "0.1.0.1";
+       sha256 = "1bbc974c1fc1858312d8937b0e0fc10123979377433547afaf056a90d442673c";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base bytestring directory filepath http-client lens lens-aeson
+         netrc network-uri optparse-applicative parsec process text wreq
+       ];
+       homepage = "https://github.com/TaktInc/hail";
+       description = "A service for pull-based continuous deployment based on hydra";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "hailgun" = callPackage
     ({ mkDerivation, aeson, base, bytestring, email-validate
      , exceptions, filepath, http-client, http-client-tls, http-types
@@ -81407,6 +82733,25 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hailgun_0_4_1_3" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, email-validate
+     , exceptions, filepath, http-client, http-client-tls, http-types
+     , tagsoup, text, time, transformers
+     }:
+     mkDerivation {
+       pname = "hailgun";
+       version = "0.4.1.3";
+       sha256 = "57bec1b8be9b2bcf8b87fc84ff6f91a9f75edde7081f79c942cf1b2f73977e74";
+       libraryHaskellDepends = [
+         aeson base bytestring email-validate exceptions filepath
+         http-client http-client-tls http-types tagsoup text time
+         transformers
+       ];
+       description = "Mailgun REST api interface for Haskell";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hailgun-send" = callPackage
     ({ mkDerivation, base, bytestring, configurator, hailgun, text }:
      mkDerivation {
@@ -82006,23 +83351,16 @@ self: {
      }) {};
 
   "halma" = callPackage
-    ({ mkDerivation, async, base, containers, data-default
-     , diagrams-cairo, diagrams-gtk, diagrams-lib, grid, gtk, HUnit, mtl
-     , mvc, pipes, QuickCheck, test-framework, test-framework-hunit
-     , test-framework-quickcheck2, timeit
+    ({ mkDerivation, aeson, base, containers, data-default
+     , diagrams-lib, grid, HUnit, QuickCheck, test-framework
+     , test-framework-hunit, test-framework-quickcheck2
      }:
      mkDerivation {
        pname = "halma";
-       version = "0.2.0.1";
-       sha256 = "4c1b2990d2cbe3b46f5895cf9db75aaabbdf3a9e31df09d3c9fc5528a36c6011";
-       isLibrary = true;
-       isExecutable = true;
+       version = "0.3.0.0";
+       sha256 = "ce4af6881502d16e55be04ff055c79898885aed2e657c981633b3a14584cd542";
        libraryHaskellDepends = [
-         base containers data-default diagrams-lib grid
-       ];
-       executableHaskellDepends = [
-         async base data-default diagrams-cairo diagrams-gtk diagrams-lib
-         gtk mtl mvc pipes timeit
+         aeson base containers data-default diagrams-lib grid
        ];
        testHaskellDepends = [
          base containers grid HUnit QuickCheck test-framework
@@ -82034,6 +83372,50 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "halma-gui" = callPackage
+    ({ mkDerivation, async, base, data-default, diagrams-cairo
+     , diagrams-gtk, diagrams-lib, gtk, halma, mtl, mvc, pipes, timeit
+     }:
+     mkDerivation {
+       pname = "halma-gui";
+       version = "0.1.1.0";
+       sha256 = "28c092d95859946c408bfec96a4794923802c8644b987d3fb7477504cb898861";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         async base data-default diagrams-cairo diagrams-gtk diagrams-lib
+         gtk halma mtl mvc pipes timeit
+       ];
+       homepage = "https://github.com/timjb/halma";
+       description = "GTK application for playing Halma";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
+  "halma-telegram-bot" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, base, bytestring, containers
+     , data-default, diagrams-cairo, diagrams-lib, directory, exceptions
+     , filepath, halma, http-client, http-client-tls, megaparsec, mtl
+     , optparse-applicative, semigroups, servant-client, telegram-api
+     , temporary, text, transformers, vector
+     }:
+     mkDerivation {
+       pname = "halma-telegram-bot";
+       version = "0.1.0.0";
+       sha256 = "0b7e311a1d86c7ccb8df208f985914e07c2f5df7f80ebcdbedd658cfb7afdcfa";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         aeson aeson-pretty base bytestring containers data-default
+         diagrams-cairo diagrams-lib directory exceptions filepath halma
+         http-client http-client-tls megaparsec mtl optparse-applicative
+         semigroups servant-client telegram-api temporary text transformers
+         vector
+       ];
+       homepage = "https://github.com/timjb/halma";
+       description = "Telegram bot for playing Halma";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "haltavista" = callPackage
     ({ mkDerivation, base, hint, process }:
      mkDerivation {
@@ -82290,17 +83672,17 @@ self: {
      }) {};
 
   "handsy" = callPackage
-    ({ mkDerivation, base, bytestring, data-default-class, operational
-     , process-extras, retry, shell-escape, split, tasty, tasty-hunit
-     , tasty-th, transformers
+    ({ mkDerivation, base, bytestring, data-default-class, errors
+     , lifted-base, operational, process-extras, retry, shell-escape
+     , split, tasty, tasty-hunit, tasty-th, transformers
      }:
      mkDerivation {
        pname = "handsy";
-       version = "0.0.14";
-       sha256 = "be7efb53d3e4b1e20c9f3624db8bf3186bc98ddd52783602b09a0f84e4fd5ea8";
+       version = "0.0.14.1";
+       sha256 = "6498abb2160e45996d4ba2fd03e284bcef43f9260b05cbaf3d3c6f0015302d46";
        libraryHaskellDepends = [
-         base bytestring data-default-class operational process-extras retry
-         shell-escape split transformers
+         base bytestring data-default-class errors lifted-base operational
+         process-extras retry shell-escape split transformers
        ];
        testHaskellDepends = [
          base bytestring tasty tasty-hunit tasty-th
@@ -82463,15 +83845,17 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hapistrano_0_3_1_0" = callPackage
+  "hapistrano_0_3_2_0" = callPackage
     ({ mkDerivation, aeson, async, base, directory, filepath, hspec
      , mtl, optparse-applicative, path, path-io, process, stm, temporary
      , time, transformers, yaml
      }:
      mkDerivation {
        pname = "hapistrano";
-       version = "0.3.1.0";
-       sha256 = "41d680421dad0d83f7c05f7271788955ff332c6acd83cc9aa1a6af776b1c7a6a";
+       version = "0.3.2.0";
+       sha256 = "2ef2cf50d8280870bb443007688c31ab8b38392e40d9d59b78eb5c6160a58928";
+       revision = "1";
+       editedCabalFile = "7849d85faebfe49d82ec513efaa2a0225aaa3170020e1d413532ca5e1e3ae389";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -83286,8 +84670,8 @@ self: {
      }:
      mkDerivation {
        pname = "har";
-       version = "0.1.1.0";
-       sha256 = "e387def36cc56e1953fc0746a711d06fe8e641711b666b36be02bbe529d6a174";
+       version = "0.3.0";
+       sha256 = "268c183e842194e66a8483cc57c55ccb516d9396ce9d2c16be0495e9b0fbceea";
        libraryHaskellDepends = [
          aeson base bytestring directory filepath text
        ];
@@ -83749,14 +85133,24 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "hashable-orphans" = callPackage
+    ({ mkDerivation, base, hashable, sorted-list, time }:
+     mkDerivation {
+       pname = "hashable-orphans";
+       version = "0";
+       sha256 = "87c0181252c6b8794a10f0539b4804341245f0ca39d7b4f69190eb031c74fb56";
+       libraryHaskellDepends = [ base hashable sorted-list time ];
+       homepage = "https://oss.xkcd.com/";
+       description = "Provides instances missing from Hashable";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hashable-time" = callPackage
     ({ mkDerivation, base, hashable, time }:
      mkDerivation {
        pname = "hashable-time";
-       version = "0.2";
-       sha256 = "97b722ab467fae0d499de91bfaf3d6e346c7c1cac126796f0031aee5dbfe2b0a";
-       revision = "1";
-       editedCabalFile = "b925aba56f1b9a5a1952fae307eaf8ee653293b68651d3807c3852dc4c771d35";
+       version = "0.2.0.1";
+       sha256 = "b5752bb9b91d7cb98b01aa68c27d6a9338e1af39763c0157ef8322d0bc15234d";
        libraryHaskellDepends = [ base hashable time ];
        description = "Hashable instances for Data.Time";
        license = stdenv.lib.licenses.bsd3;
@@ -83904,20 +85298,6 @@ self: {
     ({ mkDerivation, base, ghc-prim, hashable, primitive, vector }:
      mkDerivation {
        pname = "hashtables";
-       version = "1.2.1.0";
-       sha256 = "ef5122c8f3b72d1e817a4f2adb410ad88b30818934a276b7184790697f4fdcac";
-       libraryHaskellDepends = [
-         base ghc-prim hashable primitive vector
-       ];
-       homepage = "http://github.com/gregorycollins/hashtables";
-       description = "Mutable hash tables in the ST monad";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "hashtables_1_2_1_1" = callPackage
-    ({ mkDerivation, base, ghc-prim, hashable, primitive, vector }:
-     mkDerivation {
-       pname = "hashtables";
        version = "1.2.1.1";
        sha256 = "227f554a93310645c654254659969b347de3d1bf3d98901dbb5c113ece72e951";
        libraryHaskellDepends = [
@@ -83926,7 +85306,6 @@ self: {
        homepage = "http://github.com/gregorycollins/hashtables";
        description = "Mutable hash tables in the ST monad";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hashtables-plus" = callPackage
@@ -84205,6 +85584,17 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskeline-repl" = callPackage
+    ({ mkDerivation, base, haskeline, mtl }:
+     mkDerivation {
+       pname = "haskeline-repl";
+       version = "0.1.0.0";
+       sha256 = "1f1b05d615d6e35a98aec2bf705f848ff91f2b668e982f891537c83bbb5930e7";
+       libraryHaskellDepends = [ base haskeline mtl ];
+       homepage = "https://github.com/githubuser/haskeline-repl#readme";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "haskelisp" = callPackage
     ({ mkDerivation, base, containers, mtl, protolude, text }:
      mkDerivation {
@@ -84512,32 +85902,6 @@ self: {
      }) {};
 
   "haskell-gi" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, directory
-     , filepath, glib, gobjectIntrospection, haskell-gi-base, mtl
-     , pretty-show, process, regex-tdfa, safe, text, transformers
-     , xdg-basedir, xml-conduit
-     }:
-     mkDerivation {
-       pname = "haskell-gi";
-       version = "0.20";
-       sha256 = "9eec8bad2539b01d833f31cde7dbbe3cc911ab7ba89b68b20d4b2dfc0716d6f6";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         base bytestring Cabal containers directory filepath haskell-gi-base
-         mtl pretty-show process regex-tdfa safe text transformers
-         xdg-basedir xml-conduit
-       ];
-       libraryPkgconfigDepends = [ glib gobjectIntrospection ];
-       executableHaskellDepends = [
-         base containers directory filepath haskell-gi-base pretty-show text
-       ];
-       homepage = "https://github.com/haskell-gi/haskell-gi";
-       description = "Generate Haskell bindings for GObject Introspection capable libraries";
-       license = stdenv.lib.licenses.lgpl21;
-     }) {inherit (pkgs) glib; inherit (pkgs) gobjectIntrospection;};
-
-  "haskell-gi_0_20_1" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, Cabal, containers
      , directory, doctest, filepath, glib, gobjectIntrospection
      , haskell-gi-base, mtl, pretty-show, process, regex-tdfa, safe
@@ -84562,15 +85926,14 @@ self: {
        homepage = "https://github.com/haskell-gi/haskell-gi";
        description = "Generate Haskell bindings for GObject Introspection capable libraries";
        license = stdenv.lib.licenses.lgpl21;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) glib; inherit (pkgs) gobjectIntrospection;};
 
   "haskell-gi-base" = callPackage
     ({ mkDerivation, base, bytestring, containers, glib, text }:
      mkDerivation {
        pname = "haskell-gi-base";
-       version = "0.20";
-       sha256 = "d62e8b11d67441974e7cb52b0a30e7a1efe6051ddde62c48fe276185c670b80a";
+       version = "0.20.2";
+       sha256 = "e7ee6b5061acb06412fe321b9cb8a2c7dd31eaf8689577ae762a0ab9e7185916";
        libraryHaskellDepends = [ base bytestring containers text ];
        libraryPkgconfigDepends = [ glib ];
        homepage = "https://github.com/haskell-gi/haskell-gi-base";
@@ -84578,19 +85941,19 @@ self: {
        license = stdenv.lib.licenses.lgpl21;
      }) {inherit (pkgs) glib;};
 
-  "haskell-gi-base_0_20_1" = callPackage
-    ({ mkDerivation, base, bytestring, containers, glib, text }:
+  "haskell-go-checkers" = callPackage
+    ({ mkDerivation, base, containers, gloss }:
      mkDerivation {
-       pname = "haskell-gi-base";
-       version = "0.20.1";
-       sha256 = "e9d8d3d75e0ea91108339daa172bc938512432509caeafdf5bd96551a380f046";
-       libraryHaskellDepends = [ base bytestring containers text ];
-       libraryPkgconfigDepends = [ glib ];
-       homepage = "https://github.com/haskell-gi/haskell-gi-base";
-       description = "Foundation for libraries generated by haskell-gi";
-       license = stdenv.lib.licenses.lgpl21;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {inherit (pkgs) glib;};
+       pname = "haskell-go-checkers";
+       version = "0.1.0.0";
+       sha256 = "0bf488fcce071ecd545025f0804e9b7287fdde4c094ce8bb82afa46738c7ac49";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [ base containers gloss ];
+       homepage = "https://github.com/prateekkumarweb/haskell-go-checkers";
+       description = "Go and Checkers game in Haskell";
+       license = stdenv.lib.licenses.mit;
+     }) {};
 
   "haskell-google-trends" = callPackage
     ({ mkDerivation, base, bytestring, haskell-fake-user-agent, lens
@@ -84613,14 +85976,14 @@ self: {
 
   "haskell-igraph" = callPackage
     ({ mkDerivation, base, binary, bytestring, bytestring-lexing, c2hs
-     , colour, data-default-class, hashable, hxt, igraph, primitive
-     , random, split, tasty, tasty-golden, tasty-hunit
-     , unordered-containers
+     , colour, data-default-class, data-ordlist, hashable, hxt, igraph
+     , matrices, primitive, random, split, tasty, tasty-golden
+     , tasty-hunit, unordered-containers
      }:
      mkDerivation {
        pname = "haskell-igraph";
-       version = "0.2.2";
-       sha256 = "33673e6369f2b83c9103367af9b4050c3a6ed71ebbb3033a601a1e4c65f57a7d";
+       version = "0.3.0";
+       sha256 = "fb02f544b8ff98893bae89c72323dbb5ff49357e7c7b65f45eb11d26168517b4";
        libraryHaskellDepends = [
          base binary bytestring bytestring-lexing colour data-default-class
          hashable hxt primitive split unordered-containers
@@ -84628,7 +85991,7 @@ self: {
        librarySystemDepends = [ igraph ];
        libraryToolDepends = [ c2hs ];
        testHaskellDepends = [
-         base random tasty tasty-golden tasty-hunit
+         base data-ordlist matrices random tasty tasty-golden tasty-hunit
        ];
        description = "Imcomplete igraph bindings";
        license = stdenv.lib.licenses.mit;
@@ -85171,8 +86534,8 @@ self: {
     ({ mkDerivation, base, doctest, lens, semigroups, text, time }:
      mkDerivation {
        pname = "haskell-time-range";
-       version = "0.2.0.0";
-       sha256 = "73c6258304465cd4e243287e7012a9630a6835025104414105c29c9e9f5503c7";
+       version = "0.2.0.1";
+       sha256 = "249315cc1167c23e9e50bdc61b5b2ddb062603616df0b2e575a6235516320ef6";
        libraryHaskellDepends = [ base lens semigroups text time ];
        testHaskellDepends = [ base doctest ];
        homepage = "https://github.com/mankyKitty/haskell-time-range#readme";
@@ -85222,6 +86585,23 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskell-tools-ast_0_6_0_0" = callPackage
+    ({ mkDerivation, base, ghc, mtl, references, template-haskell
+     , uniplate
+     }:
+     mkDerivation {
+       pname = "haskell-tools-ast";
+       version = "0.6.0.0";
+       sha256 = "bb3669b5fb70875551a29efd781e58408c26107eb26f1a4b41d8123a9f7dd6a6";
+       libraryHaskellDepends = [
+         base ghc mtl references template-haskell uniplate
+       ];
+       homepage = "https://github.com/nboldi/haskell-tools";
+       description = "Haskell AST for efficient tooling";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tools-ast-fromghc" = callPackage
     ({ mkDerivation, base, bytestring, containers, ghc
      , haskell-tools-ast, mtl, references, safe, split, template-haskell
@@ -85295,6 +86675,25 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskell-tools-backend-ghc_0_6_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, ghc
+     , haskell-tools-ast, mtl, references, safe, split, template-haskell
+     , transformers, uniplate
+     }:
+     mkDerivation {
+       pname = "haskell-tools-backend-ghc";
+       version = "0.6.0.0";
+       sha256 = "1bc88d278a314207ebe47cc8a85cebf6b6cd6d835f858e45be2d0cc663a40d96";
+       libraryHaskellDepends = [
+         base bytestring containers ghc haskell-tools-ast mtl references
+         safe split template-haskell transformers uniplate
+       ];
+       homepage = "https://github.com/nboldi/haskell-tools";
+       description = "Creating the Haskell-Tools AST from GHC's representations";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tools-cli" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, criterion
      , directory, filepath, ghc, ghc-paths, haskell-tools-ast
@@ -85325,6 +86724,36 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskell-tools-cli_0_6_0_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, criterion
+     , directory, filepath, ghc, ghc-paths, haskell-tools-ast
+     , haskell-tools-prettyprint, haskell-tools-refactor, knob, mtl
+     , process, references, split, strict, tasty, tasty-hunit, time
+     }:
+     mkDerivation {
+       pname = "haskell-tools-cli";
+       version = "0.6.0.0";
+       sha256 = "fe6da0d9a8cfd42ff74579bbfe7d727a64f4e3b8b99770920877a0ddcee6d786";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers directory filepath ghc ghc-paths haskell-tools-ast
+         haskell-tools-prettyprint haskell-tools-refactor mtl references
+         split strict
+       ];
+       executableHaskellDepends = [ base directory process split ];
+       testHaskellDepends = [
+         base bytestring directory filepath knob tasty tasty-hunit
+       ];
+       benchmarkHaskellDepends = [
+         aeson base bytestring criterion directory filepath knob split time
+       ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "Command-line frontend for Haskell-tools Refact";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tools-daemon" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
      , filepath, ghc, ghc-paths, haskell-tools-ast
@@ -85353,6 +86782,34 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskell-tools-daemon_0_6_0_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, Diff
+     , directory, filepath, ghc, ghc-paths, haskell-tools-ast
+     , haskell-tools-prettyprint, haskell-tools-refactor, HUnit, mtl
+     , network, process, references, split, strict, tasty, tasty-hunit
+     }:
+     mkDerivation {
+       pname = "haskell-tools-daemon";
+       version = "0.6.0.0";
+       sha256 = "25500cc2877eb692cb70905b8f52fc4934ead7030d1acad4165a663dc59e7545";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers Diff directory filepath ghc
+         ghc-paths haskell-tools-ast haskell-tools-prettyprint
+         haskell-tools-refactor mtl network process references split strict
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         aeson base bytestring directory filepath ghc HUnit network process
+         tasty tasty-hunit
+       ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "Background process for Haskell-tools refactor that editors can connect to";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tools-debug" = callPackage
     ({ mkDerivation, base, ghc, ghc-paths, haskell-tools-ast
      , haskell-tools-backend-ghc, haskell-tools-prettyprint
@@ -85375,6 +86832,29 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskell-tools-debug_0_6_0_0" = callPackage
+    ({ mkDerivation, base, filepath, ghc, ghc-paths, haskell-tools-ast
+     , haskell-tools-backend-ghc, haskell-tools-prettyprint
+     , haskell-tools-refactor, references, template-haskell
+     }:
+     mkDerivation {
+       pname = "haskell-tools-debug";
+       version = "0.6.0.0";
+       sha256 = "e7c1d57bf0399e5421cff93a7873eb762fc428d0165a18512ef6a755b40f3a80";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base filepath ghc ghc-paths haskell-tools-ast
+         haskell-tools-backend-ghc haskell-tools-prettyprint
+         haskell-tools-refactor references template-haskell
+       ];
+       executableHaskellDepends = [ base ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "Debugging Tools for Haskell-tools";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tools-demo" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
      , filepath, ghc, ghc-paths, haskell-tools-ast
@@ -85406,6 +86886,37 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskell-tools-demo_0_6_0_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, directory
+     , filepath, ghc, ghc-paths, haskell-tools-ast
+     , haskell-tools-backend-ghc, haskell-tools-prettyprint
+     , haskell-tools-refactor, http-types, HUnit, mtl, network
+     , references, tasty, tasty-hunit, transformers, wai, wai-websockets
+     , warp, websockets
+     }:
+     mkDerivation {
+       pname = "haskell-tools-demo";
+       version = "0.6.0.0";
+       sha256 = "d914bcd4e1e5eb9bee7dcb309847a075ee218c995bc1614bdf0f1ef7a10a1547";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers directory filepath ghc ghc-paths
+         haskell-tools-ast haskell-tools-backend-ghc
+         haskell-tools-prettyprint haskell-tools-refactor http-types mtl
+         references transformers wai wai-websockets warp websockets
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         aeson base bytestring directory filepath HUnit network tasty
+         tasty-hunit websockets
+       ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "A web-based demo for Haskell-tools Refactor";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tools-prettyprint" = callPackage
     ({ mkDerivation, base, containers, ghc, haskell-tools-ast, mtl
      , references, split, uniplate
@@ -85423,6 +86934,24 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskell-tools-prettyprint_0_6_0_0" = callPackage
+    ({ mkDerivation, base, containers, ghc, haskell-tools-ast, mtl
+     , references, split, text, uniplate
+     }:
+     mkDerivation {
+       pname = "haskell-tools-prettyprint";
+       version = "0.6.0.0";
+       sha256 = "3940d50675b96c29a45a8682effb22a65bf49711dc44deaafcf46272d1c821f8";
+       libraryHaskellDepends = [
+         base containers ghc haskell-tools-ast mtl references split text
+         uniplate
+       ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "Pretty printing of Haskell-Tools AST";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tools-refactor" = callPackage
     ({ mkDerivation, base, Cabal, containers, directory, either
      , filepath, ghc, ghc-paths, haskell-tools-ast
@@ -85454,6 +86983,37 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskell-tools-refactor_0_6_0_0" = callPackage
+    ({ mkDerivation, base, Cabal, containers, directory, either
+     , filepath, ghc, ghc-paths, haskell-tools-ast
+     , haskell-tools-backend-ghc, haskell-tools-prettyprint
+     , haskell-tools-rewrite, mtl, old-time, polyparse, references
+     , split, tasty, tasty-hunit, template-haskell, time, transformers
+     , uniplate
+     }:
+     mkDerivation {
+       pname = "haskell-tools-refactor";
+       version = "0.6.0.0";
+       sha256 = "1a339d0571d78a94099cd442bf0865cb30df3b7054e7c75d7a5a20effbf94087";
+       libraryHaskellDepends = [
+         base Cabal containers directory filepath ghc ghc-paths
+         haskell-tools-ast haskell-tools-backend-ghc
+         haskell-tools-prettyprint haskell-tools-rewrite mtl references
+         split template-haskell transformers uniplate
+       ];
+       testHaskellDepends = [
+         base Cabal containers directory either filepath ghc ghc-paths
+         haskell-tools-ast haskell-tools-backend-ghc
+         haskell-tools-prettyprint haskell-tools-rewrite mtl old-time
+         polyparse references split tasty tasty-hunit template-haskell time
+         transformers uniplate
+       ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "Refactoring Tool for Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tools-rewrite" = callPackage
     ({ mkDerivation, base, containers, directory, filepath, ghc
      , haskell-tools-ast, haskell-tools-prettyprint, mtl, references
@@ -85477,6 +87037,29 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskell-tools-rewrite_0_6_0_0" = callPackage
+    ({ mkDerivation, base, containers, directory, filepath, ghc
+     , haskell-tools-ast, haskell-tools-prettyprint, mtl, references
+     , tasty, tasty-hunit
+     }:
+     mkDerivation {
+       pname = "haskell-tools-rewrite";
+       version = "0.6.0.0";
+       sha256 = "3a328de2b8df98fdb7e10308daf31b3ca8be401ad8df3b26887f2035642705f7";
+       libraryHaskellDepends = [
+         base containers ghc haskell-tools-ast haskell-tools-prettyprint mtl
+         references
+       ];
+       testHaskellDepends = [
+         base directory filepath haskell-tools-ast haskell-tools-prettyprint
+         tasty tasty-hunit
+       ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "Facilities for generating new parts of the Haskell-Tools AST";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tor" = callPackage
     ({ mkDerivation, array, asn1-encoding, asn1-types, async
      , attoparsec, base, base64-bytestring, binary, bytestring, cereal
@@ -87219,23 +88802,22 @@ self: {
      }) {};
 
   "hath" = callPackage
-    ({ mkDerivation, base, cmdargs, MissingH, process, split, tasty
-     , tasty-hunit, tasty-quickcheck
+    ({ mkDerivation, base, cmdargs, process, split, tasty, tasty-hunit
+     , tasty-quickcheck
      }:
      mkDerivation {
        pname = "hath";
-       version = "0.3.0";
-       sha256 = "a1d7e9643a4f09395f1af453beffca2b371c4bac6003ba16fc5aa1b41c6177fe";
+       version = "0.4.2";
+       sha256 = "ba25f8e70d7ce80bfa0ef892c8cc29182781adb0858b2f539837b31c75ae1df5";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         base cmdargs MissingH split tasty tasty-hunit tasty-quickcheck
+         base cmdargs split tasty tasty-hunit tasty-quickcheck
        ];
        testHaskellDepends = [
-         base cmdargs MissingH process split tasty tasty-hunit
-         tasty-quickcheck
+         base cmdargs process split tasty tasty-hunit tasty-quickcheck
        ];
-       homepage = "http://michael.orlitzky.com/code/hath.php";
+       homepage = "http://michael.orlitzky.com/code/hath.xhtml";
        description = "Hath manipulates network blocks in CIDR notation";
        license = stdenv.lib.licenses.agpl3;
      }) {};
@@ -88293,21 +89875,22 @@ self: {
      }) {};
 
   "hdo" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, comonad, data-default
-     , free, iproute, lens, mtl, network-uri, optparse-applicative
-     , pretty, process, random, tagged, text, time, transformers, unix
-     , unordered-containers, vector, wreq
+    ({ mkDerivation, aeson, base, bytestring, case-insensitive, comonad
+     , data-default, free, http-conduit, iproute, lens, mtl, network-uri
+     , optparse-applicative, parsec, pretty, process, random, tagged
+     , text, time, transformers, unix, unordered-containers, vector
      }:
      mkDerivation {
        pname = "hdo";
-       version = "0.2";
-       sha256 = "4d031d84de97173db977731938918166f9dc54240ee53cac24d0ccf79b96c547";
+       version = "0.4";
+       sha256 = "b15832e660ec0072d50aea07fab0324a107b090d221446961dce20babffd69d0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base bytestring comonad data-default free iproute lens mtl
-         network-uri pretty process random tagged text time transformers
-         unix unordered-containers vector wreq
+         aeson base bytestring case-insensitive comonad data-default free
+         http-conduit iproute lens mtl network-uri parsec pretty process
+         random tagged text time transformers unix unordered-containers
+         vector
        ];
        executableHaskellDepends = [
          aeson base bytestring comonad data-default free iproute network-uri
@@ -88470,6 +90053,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "heatshrink" = callPackage
+    ({ mkDerivation, base, bytestring, c2hs, cereal, pcre-heavy, tasty
+     , tasty-golden, tasty-hunit, text
+     }:
+     mkDerivation {
+       pname = "heatshrink";
+       version = "0.1.0.0";
+       sha256 = "59dd111b2deb207b606d6615a3e5ca7ea3ddead77ea7b525e10e0cf26e4df37f";
+       libraryHaskellDepends = [ base bytestring cereal ];
+       libraryToolDepends = [ c2hs ];
+       testHaskellDepends = [
+         base bytestring cereal pcre-heavy tasty tasty-golden tasty-hunit
+         text
+       ];
+       homepage = "https://github.com/fpinsight/heatshrink#readme";
+       description = "Compression and decompression using heatshrink";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hebrew-time" = callPackage
     ({ mkDerivation, base, HUnit, QuickCheck, test-framework
      , test-framework-hunit, test-framework-quickcheck2, time
@@ -88521,6 +90123,31 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "hedgehog" = callPackage
+    ({ mkDerivation, ansi-terminal, async, base, bytestring
+     , concurrent-output, containers, directory, exceptions, mmorph, mtl
+     , pretty-show, primitive, random, resourcet, template-haskell, text
+     , th-lift, time, transformers, transformers-base
+     , wl-pprint-annotated
+     }:
+     mkDerivation {
+       pname = "hedgehog";
+       version = "0.1";
+       sha256 = "4d098f3162f92fe26d15cb589f17ce83c627c4591d155475afcb97161938d8a5";
+       libraryHaskellDepends = [
+         ansi-terminal async base bytestring concurrent-output containers
+         directory exceptions mmorph mtl pretty-show primitive random
+         resourcet template-haskell text th-lift time transformers
+         transformers-base wl-pprint-annotated
+       ];
+       testHaskellDepends = [
+         base containers pretty-show text transformers
+       ];
+       homepage = "https://hedgehog.qa";
+       description = "Hedgehog will eat all your bugs";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hedis" = callPackage
     ({ mkDerivation, async, base, bytestring, bytestring-lexing
      , deepseq, HUnit, mtl, network, resource-pool, scanner
@@ -88529,8 +90156,8 @@ self: {
      }:
      mkDerivation {
        pname = "hedis";
-       version = "0.9.7";
-       sha256 = "594c2d210745a72559de6a6a5f3fa646bf400fd0bb990c8f29d3390d1a2d6d87";
+       version = "0.9.8";
+       sha256 = "822e298c2fe55f7edf0e3a005e901fe7b107c4734eb0dd8f1ab6382330d3ae62";
        libraryHaskellDepends = [
          async base bytestring bytestring-lexing deepseq mtl network
          resource-pool scanner stm text time unordered-containers vector
@@ -90210,15 +91837,15 @@ self: {
      }) {};
 
   "hgis" = callPackage
-    ({ mkDerivation, ansi-wl-pprint, base, binary, bytestring, cairo
-     , Chart, Chart-cairo, Chart-diagrams, colour, composition
+    ({ mkDerivation, ansi-wl-pprint, base, binary, bytestring, Chart
+     , Chart-cairo, Chart-diagrams, colour, composition
      , data-binary-ieee754, data-default, directory, filepath, hspec
      , lens, monad-loops, optparse-applicative, transformers
      }:
      mkDerivation {
        pname = "hgis";
-       version = "0.1.3.1";
-       sha256 = "1616cb332092457e7649ea02687cfc7a5a7d777ac426207870a4df2afc32d6ab";
+       version = "0.1.3.4";
+       sha256 = "f520ce30391997c4d9ac04329893b79abe7850deaea84cdb7a57c7ef6db2e21e";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -90227,14 +91854,13 @@ self: {
          directory filepath lens monad-loops optparse-applicative
          transformers
        ];
-       libraryPkgconfigDepends = [ cairo ];
        executableHaskellDepends = [ base ];
        testHaskellDepends = [ base hspec ];
        homepage = "https://github.com/vmchale/hgis#readme";
        description = "Package and command-line for GIS with Haskell";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {inherit (pkgs) cairo;};
+     }) {};
 
   "hgithub" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, base64-bytestring
@@ -90488,6 +92114,19 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {systemd = null;};
 
+  "hidden-char" = callPackage
+    ({ mkDerivation, base, hspec }:
+     mkDerivation {
+       pname = "hidden-char";
+       version = "0.1.0.0";
+       sha256 = "805d8e7f4919f2b32374cf0074c3987831464a359be3b72f6b38509b58d7c9b7";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base hspec ];
+       homepage = "https://github.com/rcook/hidden-char#readme";
+       description = "Provides getHiddenChar function";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "hieraclus" = callPackage
     ({ mkDerivation, base, containers, HUnit, mtl, multiset }:
      mkDerivation {
@@ -91647,6 +93286,28 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hjsonpointer_1_1_1" = callPackage
+    ({ mkDerivation, aeson, base, hashable, hspec, http-types
+     , QuickCheck, semigroups, text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "hjsonpointer";
+       version = "1.1.1";
+       sha256 = "e3b10de420cf3d6751f69c6aabcdfccb3cae6c3ec7e6378b909aac6e46840d5f";
+       libraryHaskellDepends = [
+         aeson base hashable QuickCheck semigroups text unordered-containers
+         vector
+       ];
+       testHaskellDepends = [
+         aeson base hspec http-types QuickCheck text unordered-containers
+         vector
+       ];
+       homepage = "https://github.com/seagreen/hjsonpointer";
+       description = "JSON Pointer library";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hjsonschema" = callPackage
     ({ mkDerivation, aeson, async, base, bytestring, containers
      , directory, file-embed, filepath, hashable, hjsonpointer, hspec
@@ -91674,7 +93335,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hjsonschema_1_6_1" = callPackage
+  "hjsonschema_1_6_2" = callPackage
     ({ mkDerivation, aeson, async, base, bytestring, containers
      , directory, file-embed, filepath, hashable, hjsonpointer, hspec
      , http-client, http-types, pcre-heavy, profunctors, protolude
@@ -91683,8 +93344,8 @@ self: {
      }:
      mkDerivation {
        pname = "hjsonschema";
-       version = "1.6.1";
-       sha256 = "c3816837b0ff64d32db0e575bf25cf3c23866b4bd1825e51172e1f964c81bc9e";
+       version = "1.6.2";
+       sha256 = "b331f637d0dbfaf59bfe582b4c270a3d53cb029cc37b22de70542277a87590cf";
        libraryHaskellDepends = [
          aeson base bytestring containers file-embed filepath hashable
          hjsonpointer http-client http-types pcre-heavy profunctors
@@ -91804,49 +93465,47 @@ self: {
   "hledger" = callPackage
     ({ mkDerivation, base, base-compat, bytestring, cmdargs, containers
      , criterion, csv, data-default, directory, file-embed, filepath
-     , hashable, haskeline, hledger-lib, html, HUnit, megaparsec, mtl
-     , mtl-compat, old-time, parsec, pretty-show, process, regex-tdfa
-     , safe, shakespeare, split, tabular, temporary, terminfo
-     , test-framework, test-framework-hunit, text, time, timeit
-     , transformers, unordered-containers, utf8-string, wizards
+     , hashable, haskeline, here, hledger-lib, html, HUnit, megaparsec
+     , mtl, mtl-compat, old-time, parsec, pretty-show, process
+     , regex-tdfa, safe, shakespeare, split, tabular, temporary
+     , terminfo, test-framework, test-framework-hunit, text, time
+     , timeit, transformers, unordered-containers, utf8-string, wizards
      }:
      mkDerivation {
        pname = "hledger";
-       version = "1.1";
-       sha256 = "b254b2a3918e047ca031f6dfafc42dd5fcb4b859157fae2d019dcd95262408e5";
-       revision = "1";
-       editedCabalFile = "d33edead74698ee1e7f3e5f167bfd8e32664d520df69092f5ac48f0816939aaf";
+       version = "1.2";
+       sha256 = "06f4bae5a49916e0291b1b6d6c2017794c98f14bb22ffa20c49e9650278247a2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base base-compat bytestring cmdargs containers csv data-default
-         directory file-embed filepath hashable haskeline hledger-lib HUnit
-         megaparsec mtl mtl-compat old-time pretty-show process regex-tdfa
-         safe shakespeare split tabular temporary terminfo text time
-         transformers unordered-containers utf8-string wizards
+         directory file-embed filepath hashable haskeline here hledger-lib
+         HUnit megaparsec mtl mtl-compat old-time pretty-show process
+         regex-tdfa safe shakespeare split tabular temporary terminfo text
+         time transformers unordered-containers utf8-string wizards
        ];
        executableHaskellDepends = [
          base base-compat bytestring cmdargs containers csv data-default
-         directory file-embed filepath haskeline hledger-lib HUnit mtl
+         directory file-embed filepath haskeline here hledger-lib HUnit mtl
          mtl-compat old-time parsec pretty-show process regex-tdfa safe
          shakespeare split tabular temporary terminfo text time
          unordered-containers utf8-string wizards
        ];
        testHaskellDepends = [
          base base-compat bytestring cmdargs containers csv data-default
-         directory file-embed filepath haskeline hledger-lib HUnit mtl
+         directory file-embed filepath haskeline here hledger-lib HUnit mtl
          mtl-compat old-time parsec pretty-show process regex-tdfa safe
          shakespeare split tabular temporary terminfo test-framework
          test-framework-hunit text time unordered-containers utf8-string
          wizards
        ];
        benchmarkHaskellDepends = [
-         base base-compat criterion directory file-embed filepath
+         base base-compat criterion directory file-embed filepath here
          hledger-lib html pretty-show process tabular temporary time timeit
        ];
        homepage = "http://hledger.org";
        description = "Command-line interface for the hledger accounting tool";
-       license = "GPL";
+       license = stdenv.lib.licenses.gpl3;
        maintainers = with stdenv.lib.maintainers; [ peti ];
      }) {};
 
@@ -91858,8 +93517,8 @@ self: {
      }:
      mkDerivation {
        pname = "hledger-api";
-       version = "1.1";
-       sha256 = "182b8bdaf2b4b7d621a8570f0fa81a34de4f34f1a41f8dca6d60c05dd5701b1c";
+       version = "1.2";
+       sha256 = "98d3590c8ba7ea11f1d374b6dc0e26642b0d20ce091b83918d42118fd381425d";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -91869,7 +93528,7 @@ self: {
        ];
        homepage = "http://hledger.org";
        description = "Web API server for the hledger accounting tool";
-       license = "GPL";
+       license = stdenv.lib.licenses.gpl3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
@@ -91897,8 +93556,8 @@ self: {
     ({ mkDerivation, base, hledger-lib, text, time }:
      mkDerivation {
        pname = "hledger-diff";
-       version = "0.2.0.7";
-       sha256 = "54ff8674369de54eeb6e62a7a11c9e98c2c4c32730f48d2e714bc304417df6f4";
+       version = "0.2.0.8";
+       sha256 = "e691e44a95abd4b904e3c3fc8734091b919d7a39ebca40b3a0f5cbc00408747b";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base hledger-lib text time ];
@@ -91916,8 +93575,8 @@ self: {
      }:
      mkDerivation {
        pname = "hledger-iadd";
-       version = "1.2";
-       sha256 = "7ec0817c2c9c20c05c6496eca6264124139e7575e452ada5b1fd225c97533083";
+       version = "1.2.1";
+       sha256 = "bc2636fbdce63f62b29ef9cba4e876469b4a040b0b10d2d4575927ef186a591e";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -91979,35 +93638,31 @@ self: {
     ({ mkDerivation, array, base, base-compat, blaze-markup, bytestring
      , cmdargs, containers, csv, data-default, Decimal, deepseq
      , directory, doctest, filepath, Glob, hashtables, HUnit, megaparsec
-     , mtl, mtl-compat, old-time, parsec, parsers, pretty-show
-     , regex-tdfa, safe, semigroups, split, system-filepath
-     , test-framework, test-framework-hunit, text, time, transformers
-     , trifecta, uglymemo, utf8-string
+     , mtl, mtl-compat, old-time, parsec, pretty-show, regex-tdfa, safe
+     , semigroups, split, test-framework, test-framework-hunit, text
+     , time, transformers, uglymemo, utf8-string
      }:
      mkDerivation {
        pname = "hledger-lib";
-       version = "1.1";
-       sha256 = "4142142fb92e6c1affc1420e3478449cf0d9d696ab05cc801338a562a5560556";
-       revision = "1";
-       editedCabalFile = "cf72c68e9c71bc059e7ea98e764837e649ec9ecda073ac936e5fb71e06115724";
+       version = "1.2";
+       sha256 = "2c7fd837b2a9596b4d6bd3e5f5b60918c697ebb411942f973b6bd4587042d797";
        libraryHaskellDepends = [
          array base base-compat blaze-markup bytestring cmdargs containers
          csv data-default Decimal deepseq directory filepath hashtables
-         HUnit megaparsec mtl mtl-compat old-time parsec parsers pretty-show
-         regex-tdfa safe semigroups split system-filepath text time
-         transformers trifecta uglymemo utf8-string
+         HUnit megaparsec mtl mtl-compat old-time parsec pretty-show
+         regex-tdfa safe semigroups split text time transformers uglymemo
+         utf8-string
        ];
        testHaskellDepends = [
          array base base-compat blaze-markup bytestring cmdargs containers
          csv data-default Decimal deepseq directory doctest filepath Glob
-         hashtables HUnit megaparsec mtl mtl-compat old-time parsec parsers
-         pretty-show regex-tdfa safe split system-filepath test-framework
-         test-framework-hunit text time transformers trifecta uglymemo
-         utf8-string
+         hashtables HUnit megaparsec mtl mtl-compat old-time parsec
+         pretty-show regex-tdfa safe split test-framework
+         test-framework-hunit text time transformers uglymemo utf8-string
        ];
        homepage = "http://hledger.org";
        description = "Core data types, parsers and functionality for the hledger accounting tools";
-       license = "GPL";
+       license = stdenv.lib.licenses.gpl3;
      }) {};
 
   "hledger-ui" = callPackage
@@ -92019,10 +93674,8 @@ self: {
      }:
      mkDerivation {
        pname = "hledger-ui";
-       version = "1.1.2";
-       sha256 = "5cc85502297f3ccf31990ebbe60178ee9f90ea434e86756f39e2848f0ae788d1";
-       revision = "2";
-       editedCabalFile = "b8f09f1a5411bec106f6f507a5d71eea67685f6271c716e390b4f6513c7acddd";
+       version = "1.2";
+       sha256 = "61e2aa3496a7f2898de3e487d9ee90d045e1c8851e74b3995ce37f332784b00a";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -92033,7 +93686,7 @@ self: {
        ];
        homepage = "http://hledger.org";
        description = "Curses-style user interface for the hledger accounting tool";
-       license = "GPL";
+       license = stdenv.lib.licenses.gpl3;
        maintainers = with stdenv.lib.maintainers; [ peti ];
      }) {};
 
@@ -92067,10 +93720,8 @@ self: {
      }:
      mkDerivation {
        pname = "hledger-web";
-       version = "1.1";
-       sha256 = "da0c0c1096497737540efdc85cbb95cd01cbd48410491d8b2c26529b4151a2ca";
-       revision = "1";
-       editedCabalFile = "fbc15617f161701111b55e6d19f2fa0b4bac297c0db23194ca5c5d9d87a8301d";
+       version = "1.2";
+       sha256 = "a3a14ae8d0548aeb239768639afbfc0631aed4ff620720c28448d88d20eac5e6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -92099,7 +93750,7 @@ self: {
        ];
        homepage = "http://hledger.org";
        description = "Web interface for the hledger accounting tool";
-       license = "GPL";
+       license = stdenv.lib.licenses.gpl3;
        maintainers = with stdenv.lib.maintainers; [ peti ];
      }) {};
 
@@ -92198,6 +93849,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hlint_2_0_5" = callPackage
+    ({ mkDerivation, ansi-terminal, base, bytestring, cmdargs
+     , containers, cpphs, directory, extra, filepath, haskell-src-exts
+     , hscolour, process, refact, text, transformers, uniplate
+     , unordered-containers, vector, yaml
+     }:
+     mkDerivation {
+       pname = "hlint";
+       version = "2.0.5";
+       sha256 = "fc3517275a2878a25a6463a6e8f8492b7b525adb5f3e6099ff388e9bc280a6b1";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         ansi-terminal base bytestring cmdargs containers cpphs directory
+         extra filepath haskell-src-exts hscolour process refact text
+         transformers uniplate unordered-containers vector yaml
+       ];
+       executableHaskellDepends = [ base ];
+       homepage = "https://github.com/ndmitchell/hlint#readme";
+       description = "Source code suggestions";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hlogger" = callPackage
     ({ mkDerivation, base, old-locale, time }:
      mkDerivation {
@@ -92917,19 +94592,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hoauth2_0_5_8" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, http-conduit, http-types
-     , text, unordered-containers
+  "hoauth2_1_2_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, exceptions, http-conduit
+     , http-types, microlens, text, unordered-containers, uri-bytestring
      }:
      mkDerivation {
        pname = "hoauth2";
-       version = "0.5.8";
-       sha256 = "caacec1259455de9d1cb78c38fe8ca4dabc901e5b9fd8a9e7d17eaca0a820e60";
+       version = "1.2.0";
+       sha256 = "5ef9bc142c79b3f1d9141777c52c3276ce8b1d1352ffb41dff75920a1bc8c8a5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base bytestring http-conduit http-types text
-         unordered-containers
+         aeson base bytestring exceptions http-conduit http-types microlens
+         text unordered-containers uri-bytestring
        ];
        homepage = "https://github.com/freizl/hoauth2";
        description = "Haskell OAuth2 authentication client";
@@ -93154,6 +94829,17 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hol" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "hol";
+       version = "1.0";
+       sha256 = "02096cc47725c04c58bd511a804780e748f7cdc5512e4f849fee90ff499f1f0a";
+       libraryHaskellDepends = [ base ];
+       description = "Higher order logic";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "hold-em" = callPackage
     ({ mkDerivation, base, random, safe }:
      mkDerivation {
@@ -93597,8 +95283,8 @@ self: {
      }:
      mkDerivation {
        pname = "hoogle";
-       version = "5.0.9";
-       sha256 = "93f584c5f7fc6a57ee50803ae8df5e6c41051a3177044b273cb7fbcd39d11874";
+       version = "5.0.10";
+       sha256 = "eb6eec27ceb6f4d70757353156a70cc6501e7424db581bf3aba100555ed48a84";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -93932,23 +95618,28 @@ self: {
     ({ mkDerivation, aeson, ansi-terminal, attoparsec, base, bytestring
      , conduit, conduit-extra, containers, deepseq, directory, filepath
      , http-conduit, http-types, optparse-applicative, parallel, process
-     , QuickCheck, resourcet, scientific, text, transformers, vector
+     , QuickCheck, resourcet, text, transformers, vector
      }:
      mkDerivation {
        pname = "hops";
-       version = "0.5.0";
-       sha256 = "94045ae1eed0a54e62e144943c132df95ca1c9804722bb773852077e745be607";
-       isLibrary = false;
+       version = "0.7.0";
+       sha256 = "f72370b572a2d5e9e792b9036fc52718c0a0d11aae34e039b9ade6c6d9260fb4";
+       isLibrary = true;
        isExecutable = true;
+       libraryHaskellDepends = [
+         aeson ansi-terminal attoparsec base bytestring conduit
+         conduit-extra containers deepseq directory filepath http-conduit
+         http-types optparse-applicative resourcet text transformers vector
+       ];
        executableHaskellDepends = [
          aeson ansi-terminal attoparsec base bytestring conduit
          conduit-extra containers deepseq directory filepath http-conduit
-         http-types optparse-applicative parallel resourcet scientific text
+         http-types optparse-applicative parallel resourcet text
          transformers vector
        ];
        testHaskellDepends = [
-         aeson attoparsec base bytestring containers deepseq process
-         QuickCheck scientific text vector
+         aeson attoparsec base bytestring containers deepseq directory
+         filepath process QuickCheck text transformers vector
        ];
        homepage = "http://akc.is/hops";
        description = "Handy Operations on Power Series";
@@ -94198,6 +95889,23 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "hourglass-orphans" = callPackage
+    ({ mkDerivation, aeson, base, hourglass, hspec, hspec-expectations
+     , text
+     }:
+     mkDerivation {
+       pname = "hourglass-orphans";
+       version = "0.1.0.0";
+       sha256 = "9f0ba9f3b3cdd391b26daf3dce0bac44ab1f9dd883eaff063af9ebfb0b373d64";
+       libraryHaskellDepends = [ aeson base hourglass ];
+       testHaskellDepends = [
+         aeson base hourglass hspec hspec-expectations text
+       ];
+       homepage = "https://github.com/psibi/hourglass-orphans#readme";
+       description = "Orphan Aeson instances to hourglass";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "houseman" = callPackage
     ({ mkDerivation, base, bytestring, directory, dotenv, hspec
      , interpolate, io-streams, mockery, mtl, optparse-generic, parsers
@@ -94571,6 +96279,33 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "hpc-coveralls_1_0_9" = callPackage
+    ({ mkDerivation, aeson, async, base, bytestring, Cabal, cmdargs
+     , containers, curl, directory, directory-tree, hpc, HUnit, process
+     , pureMD5, regex-posix, retry, safe, split, transformers
+     }:
+     mkDerivation {
+       pname = "hpc-coveralls";
+       version = "1.0.9";
+       sha256 = "43ab8bda2e874cfc5690bca938ab3c84688fa332d2a70b390a490ea47bb73e74";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring Cabal cmdargs containers curl directory
+         directory-tree hpc process pureMD5 retry safe split transformers
+       ];
+       executableHaskellDepends = [
+         aeson async base bytestring Cabal cmdargs containers curl directory
+         directory-tree hpc process pureMD5 regex-posix retry safe split
+         transformers
+       ];
+       testHaskellDepends = [ base HUnit ];
+       homepage = "https://github.com/guillaume-nargeot/hpc-coveralls";
+       description = "Coveralls.io support for Haskell.";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hpc-strobe" = callPackage
     ({ mkDerivation, base, filepath, hpc }:
      mkDerivation {
@@ -94783,6 +96518,8 @@ self: {
        pname = "hprotoc";
        version = "2.4.0";
        sha256 = "6e4aedf9a421f01a22ca7a2f50b064917b4ef895d76174f59bc44ca1cc6f2f73";
+       revision = "1";
+       editedCabalFile = "89e6eab714a4538e006fc35f4c5e6bba61da9dc49f30b14c7ba6794ead08d5f5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -96477,7 +98214,7 @@ self: {
      , data-default, deepseq, directory, exceptions, filepath, fsnotify
      , ghc, ghc-boot, ghc-paths, ghc-syb-utils, haddock-api
      , haskell-src-exts, hdocs, hformat, hlint, hspec, HTTP, lens
-     , lifted-base, monad-control, monad-loops, mtl, network
+     , lifted-base, mmorph, monad-control, monad-loops, mtl, network
      , optparse-applicative, process, regex-pcre-builtin, scientific
      , simple-log, syb, template-haskell, text, text-region, time
      , transformers, transformers-base, uniplate, unix
@@ -96485,15 +98222,15 @@ self: {
      }:
      mkDerivation {
        pname = "hsdev";
-       version = "0.2.2.2";
-       sha256 = "39fa69fb48273f81c6a6683544720cf9b61d41374901e8e1730609c1a189d1d2";
+       version = "0.2.3.2";
+       sha256 = "3f630b10a61693e09e2642a871af6eb9ddb2bec8b020a1791286c6869c3d552a";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson aeson-pretty array async attoparsec base bytestring Cabal
          containers cpphs data-default deepseq directory exceptions filepath
          fsnotify ghc ghc-boot ghc-paths ghc-syb-utils haddock-api
-         haskell-src-exts hdocs hformat hlint HTTP lens lifted-base
+         haskell-src-exts hdocs hformat hlint HTTP lens lifted-base mmorph
          monad-control monad-loops mtl network optparse-applicative process
          regex-pcre-builtin scientific simple-log syb template-haskell text
          text-region time transformers transformers-base uniplate unix
@@ -96857,8 +98594,8 @@ self: {
      }:
      mkDerivation {
        pname = "hsimport";
-       version = "0.8.2";
-       sha256 = "0c66301edd1225d92271d9235b847a0c8bf526bc49865852adef1f355bfd5937";
+       version = "0.8.3";
+       sha256 = "4bf498a47814d95b548b023a4d3177e10f24ab6094fe37f0c610855250b4d0c1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -97113,6 +98850,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hslua-aeson_0_1_0_4" = callPackage
+    ({ mkDerivation, aeson, base, hashable, hslua, hspec, HUnit
+     , ieee754, QuickCheck, quickcheck-instances, scientific, text
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "hslua-aeson";
+       version = "0.1.0.4";
+       sha256 = "a887c2defdb30e851d2bafd88e657db8c9982fbfbd0578e63af408643a7e2d9d";
+       libraryHaskellDepends = [
+         aeson base hashable hslua scientific text unordered-containers
+         vector
+       ];
+       testHaskellDepends = [
+         aeson base hashable hslua hspec HUnit ieee754 QuickCheck
+         quickcheck-instances scientific text unordered-containers vector
+       ];
+       homepage = "https://github.com/tarleb/hslua-aeson#readme";
+       description = "Glue between aeson and hslua";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hsmagick" = callPackage
     ({ mkDerivation, base, bytestring, bzip2, directory, filepath
      , freetype2, GraphicsMagick, jasper, lcms, libjpeg, libpng, libxml2
@@ -97405,8 +99165,8 @@ self: {
      }:
      mkDerivation {
        pname = "hsparql";
-       version = "0.3.0";
-       sha256 = "a9b1e3ce4e7ad04634a4eec62249f877d8a2203bdd38192dee9a57714c779fe1";
+       version = "0.3.1";
+       sha256 = "80cdbdec7f99957514f76faa858a0fd7b3c7e7c8539afd141983d6af6a32e728";
        libraryHaskellDepends = [
          base bytestring HTTP MissingH mtl network network-uri rdf4h text
          xml
@@ -97581,8 +99341,8 @@ self: {
     ({ mkDerivation, base, hspec-expectations, transformers }:
      mkDerivation {
        pname = "hspec-expectations-lifted";
-       version = "0.8.2";
-       sha256 = "2b629013b07f69b2dbbe1462f067f097a9f28beae2eb222b1255ff45327cecef";
+       version = "0.10.0";
+       sha256 = "22cdf1509b396fea2f53a0bb88dec3552f540d58cc60962a82970264c1e73828";
        libraryHaskellDepends = [ base hspec-expectations transformers ];
        description = "A version of hspec-expectations generalized to MonadIO";
        license = stdenv.lib.licenses.mit;
@@ -97676,6 +99436,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hspec-hedgehog" = callPackage
+    ({ mkDerivation, base, hedgehog, hspec, hspec-core }:
+     mkDerivation {
+       pname = "hspec-hedgehog";
+       version = "0.0.0.1";
+       sha256 = "3bc5d51e3fbd788fc4fb23b3ba37052b1935211e1f883fe73b72e2a3414ec820";
+       libraryHaskellDepends = [ base hedgehog hspec-core ];
+       testHaskellDepends = [ base hedgehog hspec hspec-core ];
+       homepage = "https://github.com/erikd/hspec-hedgehog/";
+       description = "Hedgehog support for the Hspec testing framework";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "hspec-jenkins" = callPackage
     ({ mkDerivation, base, blaze-markup, hspec }:
      mkDerivation {
@@ -98382,10 +100155,10 @@ self: {
     ({ mkDerivation, base, c2hs, directory, parsec, random, unix }:
      mkDerivation {
        pname = "hsshellscript";
-       version = "3.3.4";
-       sha256 = "3bd909d227215e0de6d6a42af736ccc21c360b677b9bff5b9c366859f582b54e";
-       revision = "2";
-       editedCabalFile = "29ba42acbe811deb1bf36828db57e8063c8e733e39e7d848fc29c0aca184602b";
+       version = "3.4.1";
+       sha256 = "6124321260ad53147315005647d0482ff901934ebf6c52ceef1c23cc24f6eb78";
+       revision = "1";
+       editedCabalFile = "77298b29f497412c56a8c2981ee48af6c52b623bf24458295af2deb86f1cdfbd";
        libraryHaskellDepends = [ base directory parsec random unix ];
        libraryToolDepends = [ c2hs ];
        homepage = "http://www.volker-wysk.de/hsshellscript/";
@@ -99297,18 +101070,18 @@ self: {
 
   "http-api-data" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, directory
-     , doctest, filepath, hashable, hspec, HUnit, QuickCheck
+     , doctest, filepath, hashable, hspec, http-types, HUnit, QuickCheck
      , quickcheck-instances, text, time, time-locale-compat
      , unordered-containers, uri-bytestring, uuid, uuid-types
      }:
      mkDerivation {
        pname = "http-api-data";
-       version = "0.3.5";
-       sha256 = "3711ac5f97afe8e89d1f8959138de8f2b3afd8ec30f9c6f3eebbfb2caa2fbc45";
+       version = "0.3.6";
+       sha256 = "46315cdf457553ac3ecaaa3bd2109cbe5bbf41bd561a22a9282b3b460b147641";
        setupHaskellDepends = [ base Cabal directory filepath ];
        libraryHaskellDepends = [
-         base bytestring containers hashable text time time-locale-compat
-         unordered-containers uri-bytestring uuid-types
+         base bytestring containers hashable http-types text time
+         time-locale-compat unordered-containers uri-bytestring uuid-types
        ];
        testHaskellDepends = [
          base bytestring directory doctest filepath hspec HUnit QuickCheck
@@ -99319,6 +101092,33 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "http-api-data_0_3_7" = callPackage
+    ({ mkDerivation, attoparsec, attoparsec-iso8601, base, bytestring
+     , Cabal, containers, directory, doctest, filepath, hashable, hspec
+     , http-types, HUnit, QuickCheck, quickcheck-instances, text, time
+     , time-locale-compat, unordered-containers, uri-bytestring, uuid
+     , uuid-types
+     }:
+     mkDerivation {
+       pname = "http-api-data";
+       version = "0.3.7";
+       sha256 = "d0d2d8348d9958ab1ae1180d1a33678f346e33df3beaa4db2761bd6695a309aa";
+       setupHaskellDepends = [ base Cabal directory filepath ];
+       libraryHaskellDepends = [
+         attoparsec attoparsec-iso8601 base bytestring containers hashable
+         http-types text time time-locale-compat unordered-containers
+         uri-bytestring uuid-types
+       ];
+       testHaskellDepends = [
+         base bytestring directory doctest filepath hspec HUnit QuickCheck
+         quickcheck-instances text time unordered-containers uuid
+       ];
+       homepage = "http://github.com/fizruk/http-api-data";
+       description = "Converting to/from HTTP API data like URL pieces, headers and query parameters";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "http-attoparsec" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, http-types }:
      mkDerivation {
@@ -99460,8 +101260,8 @@ self: {
      }:
      mkDerivation {
        pname = "http-client-openssl";
-       version = "0.2.0.4";
-       sha256 = "28dddd694ed91174c2544dd388d3550df5c79d5cc4be7e4b260a825ebde1afed";
+       version = "0.2.0.5";
+       sha256 = "a1e407688800be2f337d00c89b19c8c0cc708bfbc14b58ea93f31aa5cd7160cf";
        libraryHaskellDepends = [ base HsOpenSSL http-client network ];
        testHaskellDepends = [
          base HsOpenSSL hspec http-client http-types
@@ -99554,8 +101354,8 @@ self: {
      }:
      mkDerivation {
        pname = "http-client-tls";
-       version = "0.3.4";
-       sha256 = "37693b0ebcfa6ce796abf39647ff4df17361ab1ab1f999ac10faba67d3042bc1";
+       version = "0.3.4.1";
+       sha256 = "b08fed2f18a03eeac5e2db6caf15fd8922032cd9dd50412b67146948ac6b7cd5";
        libraryHaskellDepends = [
          base bytestring case-insensitive connection containers cryptonite
          data-default-class exceptions http-client http-types memory network
@@ -100052,6 +101852,34 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "http-reverse-proxy_0_4_4" = callPackage
+    ({ mkDerivation, async, base, blaze-builder, bytestring
+     , case-insensitive, conduit, conduit-extra, containers
+     , data-default-class, hspec, http-client, http-conduit, http-types
+     , lifted-base, monad-control, network, resourcet, streaming-commons
+     , text, transformers, wai, wai-logger, warp, word8
+     }:
+     mkDerivation {
+       pname = "http-reverse-proxy";
+       version = "0.4.4";
+       sha256 = "1caa943a7b9704a73ae9fa14606f96a6b9eec7312c424dd59574515a8c954978";
+       libraryHaskellDepends = [
+         async base blaze-builder bytestring case-insensitive conduit
+         conduit-extra containers data-default-class http-client http-types
+         lifted-base monad-control network resourcet streaming-commons text
+         transformers wai wai-logger word8
+       ];
+       testHaskellDepends = [
+         base blaze-builder bytestring conduit conduit-extra hspec
+         http-conduit http-types lifted-base network resourcet
+         streaming-commons transformers wai warp
+       ];
+       homepage = "https://github.com/fpco/http-reverse-proxy";
+       description = "Reverse proxy HTTP requests, either over raw sockets or with WAI";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "http-server" = callPackage
     ({ mkDerivation, base, HTTP, mime, network, network-uri, text, unix
      , url, utf8-string
@@ -100468,6 +102296,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "human-parse" = callPackage
+    ({ mkDerivation, base, text }:
+     mkDerivation {
+       pname = "human-parse";
+       version = "0.1.0.0";
+       sha256 = "45ed4171156d094b9632eea619db7432bb46c785fa0b8121484d8ab1c17f5602";
+       libraryHaskellDepends = [ base text ];
+       homepage = "https://github.com/chris-martin/haskell-libraries";
+       description = "A lawless typeclass for parsing text entered by humans";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "human-readable-duration" = callPackage
     ({ mkDerivation, base, criterion, doctest, Glob }:
      mkDerivation {
@@ -100482,6 +102322,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "human-text" = callPackage
+    ({ mkDerivation, base, text }:
+     mkDerivation {
+       pname = "human-text";
+       version = "0.1.0.1";
+       sha256 = "ea9f98ad4aae1d0a3a3b8a268cf63a9b238a04aa3307d4179ba31d4c2b3c7f44";
+       libraryHaskellDepends = [ base text ];
+       homepage = "https://github.com/chris-martin/haskell-libraries";
+       description = "A lawless typeclass for converting values to human-friendly text";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "hums" = callPackage
     ({ mkDerivation, base, blaze-builder, bytestring, case-insensitive
      , ConfigFile, containers, directory, filepath, HaXml, http-types
@@ -100542,13 +102394,13 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hunit-dejafu_0_4_0_1" = callPackage
-    ({ mkDerivation, base, dejafu, exceptions, HUnit, random }:
+  "hunit-dejafu_0_5_0_0" = callPackage
+    ({ mkDerivation, base, dejafu, exceptions, HUnit }:
      mkDerivation {
        pname = "hunit-dejafu";
-       version = "0.4.0.1";
-       sha256 = "b0e97ecb22eb7b0b1552daad8cd7ddab4e91c255e7fc8183e0ee2536fa7d8caf";
-       libraryHaskellDepends = [ base dejafu exceptions HUnit random ];
+       version = "0.5.0.0";
+       sha256 = "d05e262141024e1f414ea3468176255f6de3b2650df6d11a502758914fd58816";
+       libraryHaskellDepends = [ base dejafu exceptions HUnit ];
        homepage = "https://github.com/barrucadu/dejafu";
        description = "Deja Fu support for the HUnit test framework";
        license = stdenv.lib.licenses.mit;
@@ -100951,6 +102803,25 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "hw-conduit_0_2_0_0" = callPackage
+    ({ mkDerivation, array, base, bytestring, conduit, criterion, hspec
+     , mmap, vector, word8
+     }:
+     mkDerivation {
+       pname = "hw-conduit";
+       version = "0.2.0.0";
+       sha256 = "727c855c51e3e5a211641fe0e27b7a32275276f3851905b79e66ebd8db0d639d";
+       libraryHaskellDepends = [ array base bytestring conduit word8 ];
+       testHaskellDepends = [ base bytestring conduit hspec ];
+       benchmarkHaskellDepends = [
+         base bytestring conduit criterion mmap vector
+       ];
+       homepage = "http://github.com/haskell-works/hw-conduit#readme";
+       description = "Conduits for tokenizing streams";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hw-diagnostics" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -102850,24 +104721,6 @@ self: {
 
   "identicon" = callPackage
     ({ mkDerivation, base, bytestring, criterion, hspec, JuicyPixels
-     , random, tf-random
-     }:
-     mkDerivation {
-       pname = "identicon";
-       version = "0.2.0";
-       sha256 = "c9d22c41893f50ac6c096c11ac037f91153cd3b324c76bcbdd3277b2761cb346";
-       libraryHaskellDepends = [ base bytestring JuicyPixels ];
-       testHaskellDepends = [ base bytestring hspec JuicyPixels ];
-       benchmarkHaskellDepends = [
-         base bytestring criterion JuicyPixels random tf-random
-       ];
-       homepage = "https://github.com/mrkkrp/identicon";
-       description = "Flexible generation of identicons";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "identicon_0_2_1" = callPackage
-    ({ mkDerivation, base, bytestring, criterion, hspec, JuicyPixels
      , QuickCheck, random, tf-random
      }:
      mkDerivation {
@@ -102884,7 +104737,6 @@ self: {
        homepage = "https://github.com/mrkkrp/identicon";
        description = "Flexible generation of identicons";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "identifiers" = callPackage
@@ -102995,8 +104847,8 @@ self: {
      }:
      mkDerivation {
        pname = "idris";
-       version = "0.99.2";
-       sha256 = "c3ff38dfeecab2edb7afee907ccbc9b3f348c658ceff686d0617aa3b661d8c3a";
+       version = "1.0";
+       sha256 = "b06852c83e307c9398fa33e031ca1fbe3c4f927496e7f5b00f13b4ed19f82beb";
        configureFlags = [ "-fcurses" "-fffi" "-fgmp" ];
        isLibrary = true;
        isExecutable = true;
@@ -103535,6 +105387,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ilist_0_3_0_0" = callPackage
+    ({ mkDerivation, base, criterion, hspec, lens, transformers, vector
+     }:
+     mkDerivation {
+       pname = "ilist";
+       version = "0.3.0.0";
+       sha256 = "c81b0dc782e110d7861c81099cc161a4949dcea8594c65ecccb8e07e5dec794c";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base hspec transformers ];
+       benchmarkHaskellDepends = [
+         base criterion lens transformers vector
+       ];
+       homepage = "http://github.com/aelve/ilist";
+       description = "Optimised list functions for doing index-related things";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "illuminate" = callPackage
     ({ mkDerivation, alex, array, base, containers, filemanip, filepath
      , hscolour, html, utf8-string, xhtml
@@ -103651,24 +105521,25 @@ self: {
 
   "imap" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, connection
-     , data-default, derive, either, exceptions, hslogger, HUnit, list-t
-     , monadIO, mtl, QuickCheck, random, rolling-queue, stm, stm-delay
-     , tasty, tasty-hunit, tasty-quickcheck, text, transformers, word8
+     , containers, derive, either, exceptions, hslogger, HUnit, list-t
+     , monadIO, mtl, network, pipes, QuickCheck, random, rolling-queue
+     , stm, stm-delay, tasty, tasty-hunit, tasty-quickcheck, text
+     , transformers, word8
      }:
      mkDerivation {
        pname = "imap";
-       version = "0.2.0.3";
-       sha256 = "912e050ba15043cbc05782bd5a6069d249402f86a41d17e0761fd6153a5a5f88";
+       version = "0.3.0.0";
+       sha256 = "df9d551e51416efea48bc31f3d31096c9dfb94ad3dc0231f74b5ae5b65d26d28";
        libraryHaskellDepends = [
-         attoparsec base bytestring connection data-default derive either
-         exceptions hslogger list-t monadIO random rolling-queue stm
+         attoparsec base bytestring connection containers derive either
+         exceptions hslogger list-t network pipes random rolling-queue stm
          stm-delay text transformers word8
        ];
        testHaskellDepends = [
-         attoparsec base bytestring connection data-default derive either
-         exceptions hslogger HUnit list-t monadIO mtl QuickCheck random
-         rolling-queue stm stm-delay tasty tasty-hunit tasty-quickcheck text
-         transformers word8
+         attoparsec base bytestring connection containers derive either
+         exceptions hslogger HUnit list-t monadIO mtl network pipes
+         QuickCheck random rolling-queue stm stm-delay tasty tasty-hunit
+         tasty-quickcheck text transformers word8
        ];
        description = "An efficient IMAP client library, with SSL and streaming";
        license = stdenv.lib.licenses.bsd3;
@@ -104577,10 +106448,8 @@ self: {
      }:
      mkDerivation {
        pname = "influxdb";
-       version = "1.1.1";
-       sha256 = "7dead9ab13e8feca491f5444d6d42383f948b347c7ceb44942a21c21f8b3a522";
-       revision = "1";
-       editedCabalFile = "5f2759927fa334b8991455100079701ef0064764715e42c82f5b469325e2174d";
+       version = "1.1.2";
+       sha256 = "d5beba48d2dd15c0228e2152b5960dae8f4356d7f2ca848d5460dcd55949ae29";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -104773,6 +106642,8 @@ self: {
        pname = "inline-java";
        version = "0.6.1";
        sha256 = "f722733b43839d12f936c5d2e3e8f2d33aae6752a605d4582959a7ad71ce2045";
+       revision = "1";
+       editedCabalFile = "c8779aee8e53b6f5e6240c542ff2a299aaec6b6a3eb20482d83fc9e5820de5cf";
        libraryHaskellDepends = [
          base binary bytestring Cabal containers directory
          distributed-closure filepath ghc-heap-view inline-c jni jvm
@@ -104788,7 +106659,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "inline-java_0_6_3" = callPackage
+  "inline-java_0_6_5" = callPackage
     ({ mkDerivation, base, binary, bytestring, Cabal, containers
      , directory, distributed-closure, filepath, ghc-heap-view, hspec
      , inline-c, jni, jvm, language-java, process, singletons, syb
@@ -104796,8 +106667,8 @@ self: {
      }:
      mkDerivation {
        pname = "inline-java";
-       version = "0.6.3";
-       sha256 = "a9d5742b78b22ea4190269d73e2cc6f74a5f45e150ee9582bdbb31ba966c657c";
+       version = "0.6.5";
+       sha256 = "696aa523d0c8a1090f5a2102bd846165d92bd5ff507368ce17e533bae4880adf";
        libraryHaskellDepends = [
          base binary bytestring Cabal containers directory
          distributed-closure filepath ghc-heap-view inline-c jni jvm
@@ -104871,10 +106742,10 @@ self: {
      }:
      mkDerivation {
        pname = "insert-ordered-containers";
-       version = "0.2.0.0";
-       sha256 = "0353fcf5c58e9ed3fe33ddc3f57bfb2faccaa4d61fbf832f7fc2bfbe2c30d02e";
-       revision = "4";
-       editedCabalFile = "b4b8544fe733ff569ff0f726a632c9c10831f3c7bff804ec5d75f62225363fa5";
+       version = "0.2.1.0";
+       sha256 = "d71d126bf455898492e1d2ba18b2ad04453f8b0e4daff3926a67f0560a712298";
+       revision = "1";
+       editedCabalFile = "642acfbcacd418f194e6fd7bf6d64cbb8efaf625bb0efaaed00504f3ba54c877";
        libraryHaskellDepends = [
          aeson base base-compat hashable lens semigroupoids semigroups text
          transformers unordered-containers
@@ -105097,8 +106968,8 @@ self: {
        pname = "int-cast";
        version = "0.1.2.0";
        sha256 = "6bfa10f7296fb0bf63d9078e2c7520112a22988f04202c3eb25e060bde1ddd3d";
-       revision = "1";
-       editedCabalFile = "4aacf85f637814a493046953cc39cc8dca530f8d2df7ce3b37222c2e991b5621";
+       revision = "2";
+       editedCabalFile = "9a5567529932b1db9870eed2fb6ffb5e5929d3f358b29eaafc68f8e435122792";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [
          base QuickCheck test-framework test-framework-quickcheck2
@@ -105132,6 +107003,8 @@ self: {
        pname = "integer-logarithms";
        version = "1.0.1";
        sha256 = "0f453f8eb8b19122eac37d04ea95e9da5f9f07eb9ad750c174c3522e7d3a784c";
+       revision = "1";
+       editedCabalFile = "3e6c78b7d38f5767da86e1948a1816e0ede7f123f93a9594e7bb5a8c902369ce";
        libraryHaskellDepends = [ array base ghc-prim integer-gmp ];
        testHaskellDepends = [
          base QuickCheck smallcheck tasty tasty-hunit tasty-quickcheck
@@ -105548,27 +107421,24 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "intro_0_2_0_2" = callPackage
-    ({ mkDerivation, aeson, async, attoparsec, base, bifunctors, binary
-     , bytestring, cassava, containers, contravariant, deepseq, dlist
-     , extra, filepath, hashable, lens, megaparsec, mtl, profunctors
-     , QuickCheck, quickcheck-instances, safe, tagged, text
-     , transformers, unordered-containers, writer-cps-mtl
+  "intro_0_3_0_0" = callPackage
+    ({ mkDerivation, base, bifunctors, binary, bytestring, containers
+     , deepseq, dlist, extra, hashable, lens, mtl, QuickCheck, safe
+     , text, transformers, unordered-containers, writer-cps-mtl
      }:
      mkDerivation {
        pname = "intro";
-       version = "0.2.0.2";
-       sha256 = "24a45432efcf9920391465723fde8c20384dcd2d2c4c0e7ca921f4aeb14c88d7";
+       version = "0.3.0.0";
+       sha256 = "a4400c37d0a3a56d7c57eca0474b3760acdb79b0ebb1c5c8aa5cef78910e1e4a";
        libraryHaskellDepends = [
          base bifunctors binary bytestring containers deepseq dlist extra
-         hashable mtl safe tagged text transformers unordered-containers
+         hashable mtl safe text transformers unordered-containers
          writer-cps-mtl
        ];
        testHaskellDepends = [
-         aeson async attoparsec base bifunctors binary bytestring cassava
-         containers contravariant deepseq dlist extra filepath hashable lens
-         megaparsec mtl profunctors QuickCheck quickcheck-instances safe
-         tagged text transformers unordered-containers writer-cps-mtl
+         base bifunctors binary bytestring containers deepseq dlist extra
+         hashable lens mtl QuickCheck safe text transformers
+         unordered-containers writer-cps-mtl
        ];
        homepage = "https://github.com/minad/intro#readme";
        description = "\"Fixed Prelude\" - Mostly total and safe, provides Text and Monad transformers";
@@ -105669,6 +107539,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "invariant_0_4_1" = callPackage
+    ({ mkDerivation, array, base, bifunctors, comonad, containers
+     , contravariant, ghc-prim, hspec, profunctors, QuickCheck
+     , semigroups, StateVar, stm, tagged, template-haskell, transformers
+     , transformers-compat, unordered-containers
+     }:
+     mkDerivation {
+       pname = "invariant";
+       version = "0.4.1";
+       sha256 = "b0a9a54dbc3b850feb8c7dadf1ccfef4ef2fff87165e1a28e52ad297577446a1";
+       libraryHaskellDepends = [
+         array base bifunctors comonad containers contravariant ghc-prim
+         profunctors semigroups StateVar stm tagged template-haskell
+         transformers transformers-compat unordered-containers
+       ];
+       testHaskellDepends = [ base hspec QuickCheck template-haskell ];
+       homepage = "https://github.com/nfrisby/invariant-functors";
+       description = "Haskell98 invariant functors";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "invertible" = callPackage
     ({ mkDerivation, base, haskell-src-meta, invariant, lens
      , partial-isomorphisms, QuickCheck, semigroupoids, template-haskell
@@ -106061,10 +107953,8 @@ self: {
     ({ mkDerivation, base, cmdargs, IPv6Addr, text }:
      mkDerivation {
        pname = "ip6addr";
-       version = "0.5.2";
-       sha256 = "ad460bf7d2765aa050968154188ba51a1b8483b6a27b179042528058b0e9549f";
-       revision = "1";
-       editedCabalFile = "f59669c0e8198ef3c56ecff75b7304d379fc1bbd5485114e3be6774d0d07037c";
+       version = "0.5.3";
+       sha256 = "1ff90994e691785a6eb4bc080d71556761f0ef6f91f0a3a1452c58a8b06e03c6";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base cmdargs IPv6Addr text ];
@@ -107689,11 +109579,14 @@ self: {
     ({ mkDerivation, base, deepseq, ghcjs-base-stub, parallel, text }:
      mkDerivation {
        pname = "javascript-extras";
-       version = "0.2.0.2";
-       sha256 = "45075e3abfe658311f209110701c02fa57dddd36b1df9405cb7ae5abdb3d6c83";
+       version = "0.3.1.0";
+       sha256 = "eaf047f32a75b89f555ebba46ee6e66a257498104beb3759f36abde50719c717";
+       isLibrary = true;
+       isExecutable = true;
        libraryHaskellDepends = [
          base deepseq ghcjs-base-stub parallel text
        ];
+       executableHaskellDepends = [ base ghcjs-base-stub ];
        homepage = "https://github.com/louispan/javascript-extras#readme";
        description = "Extra javascript functions when using GHCJS";
        license = stdenv.lib.licenses.bsd3;
@@ -108059,6 +109952,39 @@ self: {
        license = stdenv.lib.licenses.asl20;
      }) {};
 
+  "jose_0_6_0_0" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, base64-bytestring
+     , bytestring, concise, containers, cryptonite, hspec, lens, memory
+     , monad-time, mtl, network-uri, QuickCheck, quickcheck-instances
+     , safe, tasty, tasty-hspec, tasty-quickcheck, template-haskell
+     , text, time, unordered-containers, vector, x509
+     }:
+     mkDerivation {
+       pname = "jose";
+       version = "0.6.0.0";
+       sha256 = "91766bdc72d524e43d77cf008176ec2eb38fbdf09e1a457dae1faf78e1e7fe97";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson attoparsec base base64-bytestring bytestring concise
+         containers cryptonite lens memory monad-time mtl network-uri
+         QuickCheck quickcheck-instances safe template-haskell text time
+         unordered-containers vector x509
+       ];
+       executableHaskellDepends = [ aeson base bytestring lens mtl ];
+       testHaskellDepends = [
+         aeson attoparsec base base64-bytestring bytestring concise
+         containers cryptonite hspec lens memory monad-time mtl network-uri
+         QuickCheck quickcheck-instances safe tasty tasty-hspec
+         tasty-quickcheck template-haskell text time unordered-containers
+         vector x509
+       ];
+       homepage = "https://github.com/frasertweedale/hs-jose";
+       description = "Javascript Object Signing and Encryption and JSON Web Token library";
+       license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "jose-jwt" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring, cereal
      , containers, criterion, cryptonite, doctest, either, hspec, HUnit
@@ -108083,6 +110009,30 @@ self: {
        hydraPlatforms = [ "x86_64-darwin" "x86_64-linux" ];
      }) {};
 
+  "jose-jwt_0_7_6" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, cereal
+     , containers, criterion, cryptonite, doctest, either, hspec, HUnit
+     , memory, mtl, QuickCheck, text, time, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "jose-jwt";
+       version = "0.7.6";
+       sha256 = "4aa0a8b3f7ede90e3d490361bd5bfbc918f1323d6c07ace4e53d9e1d68dac94d";
+       libraryHaskellDepends = [
+         aeson attoparsec base bytestring cereal containers cryptonite
+         either memory mtl text time unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring cryptonite doctest either hspec HUnit memory
+         mtl QuickCheck text unordered-containers vector
+       ];
+       benchmarkHaskellDepends = [ base bytestring criterion cryptonite ];
+       homepage = "http://github.com/tekul/jose-jwt";
+       description = "JSON Object Signing and Encryption Library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "jpeg" = callPackage
     ({ mkDerivation, base, mtl }:
      mkDerivation {
@@ -108157,8 +110107,8 @@ self: {
      }:
      mkDerivation {
        pname = "jsaddle";
-       version = "0.8.0.1";
-       sha256 = "de68f74a6a546b91ce0a1a74512db7d1a7a583a4455d0de5ef9d300cf179cb3b";
+       version = "0.8.3.0";
+       sha256 = "e1d9838c5481f1dad2a12eecca2d1af0933e02f8f786df6bd1968b865b24f640";
        libraryHaskellDepends = [
          aeson attoparsec base base64-bytestring bytestring containers
          deepseq filepath ghc-prim http-types lens primitive process ref-tf
@@ -108175,8 +110125,8 @@ self: {
      }:
      mkDerivation {
        pname = "jsaddle-dom";
-       version = "0.7.1.0";
-       sha256 = "e93ea7dccd9aa640226a162fb6674b0c71c7acebf0ce9b85d76b0d388f06d53a";
+       version = "0.8.0.0";
+       sha256 = "27be860b6b6f8cbf4132889c88e39733b65e3727773ef9046c1dafe43537d650";
        libraryHaskellDepends = [
          base base-compat jsaddle lens text transformers
        ];
@@ -108202,21 +110152,23 @@ self: {
 
   "jsaddle-warp" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, deepseq
-     , doctest, filepath, ghc-prim, http-types, jsaddle, lens, primitive
-     , process, QuickCheck, ref-tf, stm, text, time, transformers, wai
-     , wai-websockets, warp, websockets
+     , doctest, filepath, ghc-prim, http-types, jsaddle, lens, network
+     , primitive, process, QuickCheck, ref-tf, stm, text, time
+     , transformers, wai, wai-websockets, warp, webdriver, websockets
      }:
      mkDerivation {
        pname = "jsaddle-warp";
-       version = "0.8.2.0";
-       sha256 = "e9616e7bedb12c1b37ab1e82c065d7b6de6f341ec4cb01748e623a583c834f11";
+       version = "0.8.3.0";
+       sha256 = "1749c9ddc02d140378bcac307bcd6ef198551b274f0087ac982509a0e7d2e693";
        libraryHaskellDepends = [
          aeson base containers http-types jsaddle stm text time transformers
          wai wai-websockets warp websockets
        ];
        testHaskellDepends = [
-         base bytestring deepseq doctest filepath ghc-prim jsaddle lens
-         primitive process QuickCheck ref-tf
+         aeson base bytestring containers deepseq doctest filepath ghc-prim
+         http-types jsaddle lens network primitive process QuickCheck ref-tf
+         stm text time transformers wai wai-websockets warp webdriver
+         websockets
        ];
        description = "Interface for JavaScript that works with GHCJS and GHC";
        license = stdenv.lib.licenses.mit;
@@ -108249,8 +110201,8 @@ self: {
      }:
      mkDerivation {
        pname = "jsaddle-webkitgtk";
-       version = "0.8.2.2";
-       sha256 = "ef64f87f898566ff786ef6632800f0c0700b78137e65250e313c67683bb3d457";
+       version = "0.8.3.0";
+       sha256 = "dbd6405844157342707a8a82dd03bf150eb017112b684de8ad9f45537b6e10ba";
        libraryHaskellDepends = [
          aeson base bytestring directory gi-glib gi-gtk gi-javascriptcore
          gi-webkit haskell-gi-base jsaddle text unix
@@ -108265,8 +110217,8 @@ self: {
     ({ mkDerivation, aeson, base, bytestring, jsaddle }:
      mkDerivation {
        pname = "jsaddle-wkwebview";
-       version = "0.8.2.0";
-       sha256 = "aa7968119b68ed7166482f2bfb217e942fbd2ead932fc2f349894fa149d2dfb6";
+       version = "0.8.3.0";
+       sha256 = "007886eaa4cfa3a2c04828398448602eb1bcc697dfba3a890f5f577753ea13f5";
        libraryHaskellDepends = [ aeson base bytestring jsaddle ];
        description = "Interface for JavaScript that works with GHCJS and GHC";
        license = stdenv.lib.licenses.mit;
@@ -108363,8 +110315,8 @@ self: {
      }:
      mkDerivation {
        pname = "json-ast";
-       version = "0.3";
-       sha256 = "877c8fde915cae37aa24a3d1c98dab75a81aa00a86aa7077b766ab5033c516b9";
+       version = "0.3.1";
+       sha256 = "12fd767139ad4a92f684336228f986732ec65b6abdcbbe55354cd130d10ec4ba";
        libraryHaskellDepends = [
          base scientific text unordered-containers vector
        ];
@@ -108380,8 +110332,8 @@ self: {
      }:
      mkDerivation {
        pname = "json-ast-json-encoder";
-       version = "0.1";
-       sha256 = "c0e75b796effda6b295d21c2ea99f992425f7085a07513b95c9943377eb87233";
+       version = "0.1.1";
+       sha256 = "b119e690e9f6481005b7d26530a1dd60c3f10395b1e491a1ad9c34f43079514a";
        libraryHaskellDepends = [
          base-prelude contravariant contravariant-extras json-ast
          json-encoder scientific text unordered-containers vector
@@ -108583,8 +110535,8 @@ self: {
      }:
      mkDerivation {
        pname = "json-incremental-decoder";
-       version = "0.1.1";
-       sha256 = "015c9e90dbb90ec08ebb2b5e8fbe5b4858defbeabc2f69b0b6aad1128208513d";
+       version = "0.1.2";
+       sha256 = "821dd84c1e4375f28089c618666c03ac678269c5fe6de90bfd7824305065d4a6";
        libraryHaskellDepends = [
          attoparsec base base-prelude bytestring ghc-prim hashable
          interspersed matcher monad-par scientific success supplemented text
@@ -108632,8 +110584,8 @@ self: {
      }:
      mkDerivation {
        pname = "json-pointer-aeson";
-       version = "0.1.1";
-       sha256 = "009a92279d7965bea1a8d57751cf27de1f1a30d5afb1e8f80a813b866eba03d1";
+       version = "0.1.2";
+       sha256 = "7d288daf60857a59cd585cdce4200e8d8da3427b51ea2e9eb18939fc6bb3f846";
        libraryHaskellDepends = [
          aeson base-prelude json-pointer unordered-containers vector
        ];
@@ -108732,6 +110684,8 @@ self: {
        pname = "json-rpc-client";
        version = "0.2.5.0";
        sha256 = "5349f5c0b0fa8f6c5433152d6effc10846cfb3480e78c5aa99adb7540bcff49c";
+       revision = "1";
+       editedCabalFile = "58dde2e281df3137bee6c229903be2ac74e60e4fcea0dbdf1e0199c5824abd91";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -108778,6 +110732,8 @@ self: {
        pname = "json-rpc-server";
        version = "0.2.6.0";
        sha256 = "169e9997734bd1d7d07a13b5ae0223d5363c43de93b0d5fbb845a598f9eaccf5";
+       revision = "1";
+       editedCabalFile = "5ca219714b618102f3b16454f24700caad9191b8fce7ae10528502e220d41464";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -109296,16 +111252,17 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "jvm_0_2_0" = callPackage
-    ({ mkDerivation, base, bytestring, criterion, distributed-closure
-     , hspec, jni, singletons, text, vector
+  "jvm_0_2_1" = callPackage
+    ({ mkDerivation, base, bytestring, choice, criterion
+     , distributed-closure, hspec, jni, singletons, text, vector
      }:
      mkDerivation {
        pname = "jvm";
-       version = "0.2.0";
-       sha256 = "f766db5293100de25605f883170d4869fcca7b99e1ae2b2d418cdb92eca7ccce";
+       version = "0.2.1";
+       sha256 = "73e7c287e7c31bbc62a61e43de3f2e47a76a161594ed71cd1ba190823bf66faf";
        libraryHaskellDepends = [
-         base bytestring distributed-closure jni singletons text vector
+         base bytestring choice distributed-closure jni singletons text
+         vector
        ];
        testHaskellDepends = [ base bytestring hspec text ];
        benchmarkHaskellDepends = [ base criterion jni ];
@@ -109339,8 +111296,8 @@ self: {
        pname = "jvm-streaming";
        version = "0.1";
        sha256 = "45788461c552dc2cdcbbe389f3783c67942341e38fa7ba17bd0a906db573d256";
-       revision = "1";
-       editedCabalFile = "f0e204ab4b6d0a8aedb7105800727d22a990a4761787d5abfaa70d016832b184";
+       revision = "3";
+       editedCabalFile = "57b993f64d93a59503b828da207510878117dd0f845e24906c7c4f0470cad2c1";
        libraryHaskellDepends = [
          base distributed-closure inline-java jni jvm singletons streaming
        ];
@@ -109657,8 +111614,8 @@ self: {
        pname = "kansas-comet";
        version = "0.4";
        sha256 = "1f1a4565f2e955b8947bafcb9611789b0ccdf9efdfed8aaa2a2aa162a07339e1";
-       revision = "9";
-       editedCabalFile = "6b788670bd0b22096693d6fca5770c5522bc3c89c9ca12123034f7957172a38a";
+       revision = "11";
+       editedCabalFile = "9fac0a290b4507cc894ae5f2e59a31a38d83ce1044d97760cd9cadde96d5a650";
        libraryHaskellDepends = [
          aeson base containers data-default-class scotty stm text time
          transformers unordered-containers
@@ -109758,6 +111715,34 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "karps" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, base, base16-bytestring
+     , binary, bytestring, containers, cryptohash-sha256, deepseq
+     , either, exceptions, formatting, hashable, hspec, lens
+     , monad-logger, mtl, QuickCheck, random, raw-strings-qq, scientific
+     , semigroups, SHA, text, text-format, transformers
+     , unordered-containers, vector, wreq
+     }:
+     mkDerivation {
+       pname = "karps";
+       version = "0.2.0.0";
+       sha256 = "33ed22f3e4f2110dd0dadbd868746383aeb190a19a993b93d9bf03272e08e01b";
+       libraryHaskellDepends = [
+         aeson aeson-pretty base base16-bytestring binary bytestring
+         containers cryptohash-sha256 deepseq either exceptions formatting
+         hashable lens monad-logger mtl QuickCheck random scientific
+         semigroups SHA text text-format transformers unordered-containers
+         vector wreq
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers formatting hspec QuickCheck
+         raw-strings-qq text vector
+       ];
+       homepage = "https://github.com/krapsh/kraps-haskell";
+       description = "Haskell bindings for Spark Dataframes and Datasets";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "karver" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring, hspec, text
      , unordered-containers, vector
@@ -109916,6 +111901,30 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "kawhi_0_2_2" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, exceptions, http-client
+     , http-conduit, http-types, mtl, safe, scientific, smallcheck
+     , tasty, tasty-hunit, tasty-quickcheck, tasty-smallcheck, text
+     }:
+     mkDerivation {
+       pname = "kawhi";
+       version = "0.2.2";
+       sha256 = "4e97700861c2113992c656272c6b95a30968352e40199732f6122cb25dadefff";
+       libraryHaskellDepends = [
+         aeson base bytestring exceptions http-client http-conduit
+         http-types mtl safe scientific text
+       ];
+       testHaskellDepends = [
+         aeson base bytestring exceptions http-client http-types mtl
+         scientific smallcheck tasty tasty-hunit tasty-quickcheck
+         tasty-smallcheck text
+       ];
+       homepage = "https://github.com/thunky-monk/kawhi";
+       description = "stats.NBA.com library";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "kazura-queue" = callPackage
     ({ mkDerivation, async, atomic-primops, base, containers, criterion
      , deepseq, doctest, exceptions, free, hspec, hspec-expectations
@@ -110459,6 +112468,8 @@ self: {
        pname = "keycode";
        version = "0.2.2";
        sha256 = "56f9407cf182b01e5f0fda80f569ff629f37d894f75ef28b6b8af3024343d310";
+       revision = "1";
+       editedCabalFile = "4aeea9bed0b4be8a05914845eb5524282210a0de8ba2d77ab217f1d71443d05f";
        libraryHaskellDepends = [
          base containers ghc-prim template-haskell
        ];
@@ -111360,20 +113371,20 @@ self: {
      }) {};
 
   "lambda-calculator" = callPackage
-    ({ mkDerivation, base, hlint, hspec, HUnit, optparse-applicative
-     , parsec, Shellac, Shellac-readline
+    ({ mkDerivation, base, containers, hlint, hspec, HUnit
+     , optparse-applicative, parsec, Shellac, Shellac-readline
      }:
      mkDerivation {
        pname = "lambda-calculator";
-       version = "1.1.1";
-       sha256 = "9dec187ddefcf7276e845a50f3dc74a61ab4347c196d8f8165b1ddfa2f2dcc84";
+       version = "2.0.0";
+       sha256 = "e5312fb24d720fd9f5547397194af3df5e23506a56a44efcc7cc8f9b09e814af";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [ base parsec ];
+       libraryHaskellDepends = [ base containers parsec ];
        executableHaskellDepends = [
          base optparse-applicative Shellac Shellac-readline
        ];
-       testHaskellDepends = [ base hlint hspec HUnit ];
+       testHaskellDepends = [ base containers hlint hspec HUnit ];
        homepage = "https://github.com/sgillespie/lambda-calculus#readme";
        description = "A lambda calculus interpreter";
        license = stdenv.lib.licenses.mit;
@@ -111985,15 +113996,17 @@ self: {
      }) {};
 
   "lambdatex" = callPackage
-    ({ mkDerivation, async, base, containers, directory, HaTeX, hspec
-     , mtl, QuickCheck, quickcheck-text, text, transformers
+    ({ mkDerivation, async, base, containers, directory, filepath
+     , HaTeX, hspec, mtl, QuickCheck, quickcheck-text, text
+     , transformers
      }:
      mkDerivation {
        pname = "lambdatex";
-       version = "0.1.1.0";
-       sha256 = "ab86128908697c0f595076b36769e26365d927ade325879d9b350deb489c0164";
+       version = "0.2.0.0";
+       sha256 = "64d89ff1a397e7cc1390f5c0c49fd83e358b9fa12ca78325ff63a2cc44ddcea9";
        libraryHaskellDepends = [
-         async base containers directory HaTeX mtl text transformers
+         async base containers directory filepath HaTeX mtl text
+         transformers
        ];
        testHaskellDepends = [
          base hspec QuickCheck quickcheck-text text
@@ -112127,8 +114140,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-bash";
-       version = "0.6.2";
-       sha256 = "63b3201611262cf8aad5b836b2bbe673a6b718bd1a05d16289e3adc790b08ce8";
+       version = "0.7.0";
+       sha256 = "9debcc259bba8c09490965d6886db1b5495193aae633e624542e8e7f9f2df970";
        libraryHaskellDepends = [ base parsec pretty transformers ];
        testHaskellDepends = [
          base parsec process QuickCheck tasty tasty-expected-failure
@@ -113776,18 +115789,18 @@ self: {
     ({ mkDerivation, aeson, base, binary, binary-conduit, bytestring
      , canteven-http, conduit, conduit-extra, containers
      , data-default-class, data-dword, exceptions, http-types
-     , monad-logger, network, Ranged-sets, scotty, scotty-resource, text
-     , time, transformers, unix, uuid, wai, wai-extra, warp
+     , monad-logger, network, Ranged-sets, scotty, scotty-resource, stm
+     , text, time, transformers, unix, uuid, wai, wai-extra, warp
      }:
      mkDerivation {
        pname = "legion";
-       version = "0.9.0.2";
-       sha256 = "784005d0ca6875192b9837ea169b4b768e0fd34881f913809c2e7310044191eb";
+       version = "0.10.0.0";
+       sha256 = "6f49e1324f5b256977e8859cae06c3993d0596a3a39776a47e75e0a21799d3df";
        libraryHaskellDepends = [
          aeson base binary binary-conduit bytestring canteven-http conduit
          conduit-extra containers data-default-class data-dword exceptions
          http-types monad-logger network Ranged-sets scotty scotty-resource
-         text time transformers unix uuid wai wai-extra warp
+         stm text time transformers unix uuid wai wai-extra warp
        ];
        homepage = "https://github.com/owensmurray/legion#readme";
        description = "Distributed, stateful, homogeneous microservice framework";
@@ -114004,6 +116017,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "lens-accelerate" = callPackage
+    ({ mkDerivation, accelerate, base, lens }:
+     mkDerivation {
+       pname = "lens-accelerate";
+       version = "0.1.0.0";
+       sha256 = "e4a736962342c116960425a32a17f4eaccc03bf583c09d2a619779deee5c9548";
+       libraryHaskellDepends = [ accelerate base lens ];
+       homepage = "https://github.com/tmcdonell/lens-accelerate";
+       description = "Instances to mix lens with accelerate";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "lens-action" = callPackage
     ({ mkDerivation, base, comonad, contravariant, directory, doctest
      , filepath, lens, mtl, profunctors, semigroupoids, semigroups
@@ -114034,8 +116059,8 @@ self: {
        pname = "lens-aeson";
        version = "1.0.0.5";
        sha256 = "65faad5b75852209b4c6df43ae1f7460c2b94bf3bbc10b5cd529f43c743a5d9f";
-       revision = "4";
-       editedCabalFile = "6fde3d7feb42ad58f74e89202ec01d0397bd1c8bf00b2042edaa293479d70385";
+       revision = "5";
+       editedCabalFile = "6444dd1026845cecf8a5ab70d783392ac2be7e9fd45419df2c4e9fa5cb17edb7";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring lens scientific text
          unordered-containers vector
@@ -114103,8 +116128,8 @@ self: {
     ({ mkDerivation, base, ghc-prim }:
      mkDerivation {
        pname = "lens-labels";
-       version = "0.1.0.0";
-       sha256 = "cde729cf0f9024417d17234a933a54e0a4f3e2073e84f00e8ad60da5fc39e67c";
+       version = "0.1.0.1";
+       sha256 = "341771c6b3733aeaf220a39bd8cd89a5a6365182a6059e198e9895f8e15b537b";
        libraryHaskellDepends = [ base ghc-prim ];
        homepage = "https://github.com/google/proto-lens";
        description = "Integration of lenses with OverloadedLabels";
@@ -114294,8 +116319,8 @@ self: {
      }:
      mkDerivation {
        pname = "lentil";
-       version = "1.0.8.0";
-       sha256 = "108af2057f56b74a8a42e8f1bbb47e7af64cff612bb90f886e93f6118651154e";
+       version = "1.0.9.0";
+       sha256 = "4403da26f4c6bef7848a20587422103e1e84cd446fc428dfe6370b875c78cf93";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -114859,8 +116884,8 @@ self: {
      }:
      mkDerivation {
        pname = "liblawless";
-       version = "0.19.1";
-       sha256 = "e2d5e56b411098adcd139d6aae5f9226f8951b0a932af8cbfa178ffa626f326c";
+       version = "0.20.1";
+       sha256 = "df2ce59748a56fb7886109c7c7dd0bdb47eeba41fa3d0aeb0b7d8e7239528924";
        libraryHaskellDepends = [
          aeson base base-unicode-symbols binary boomerang bytestring
          concurrent-machines containers containers-unicode-symbols
@@ -115373,6 +117398,8 @@ self: {
        pname = "lift-generics";
        version = "0.1.1";
        sha256 = "07cf2cc4416fb7b0e45595da8a964459498da976e18cdcc169ac2416143930cb";
+       revision = "1";
+       editedCabalFile = "c87b8172eb3a45b26347d563ebf8d1dbe1d1475f44858243ff81fcac5eab770f";
        libraryHaskellDepends = [
          base generic-deriving ghc-prim template-haskell
        ];
@@ -115755,6 +117782,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "linear-accelerate_0_3" = callPackage
+    ({ mkDerivation, accelerate, base, Cabal, distributive, filepath
+     , lens, linear
+     }:
+     mkDerivation {
+       pname = "linear-accelerate";
+       version = "0.3";
+       sha256 = "3aef0c04059e3b650573929aabbf782cc712b2926d76a2a3ed7e37079bdb42a9";
+       setupHaskellDepends = [ base Cabal filepath ];
+       libraryHaskellDepends = [
+         accelerate base distributive lens linear
+       ];
+       homepage = "http://github.com/ekmett/linear-accelerate/";
+       description = "Lifting linear vector spaces into Accelerate";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "linear-algebra-cblas" = callPackage
     ({ mkDerivation, base, ieee754, QuickCheck, storable-complex
      , test-framework, test-framework-quickcheck2, vector
@@ -116059,8 +118104,8 @@ self: {
      }:
      mkDerivation {
        pname = "linode";
-       version = "0.2.0.0";
-       sha256 = "3a5c1d507121a40848217ad8e092c3347c1c26a1ada09ccfa1450b30d22d59fa";
+       version = "0.3.0.0";
+       sha256 = "7c5c35938d19cd8577bd40c8c574a27011b3c0b30da45920129187d4d204139e";
        libraryHaskellDepends = [
          aeson async base binary bytestring containers errors lens process
          retry safe text transformers wreq
@@ -117148,8 +119193,8 @@ self: {
      }:
      mkDerivation {
        pname = "llvm-hs";
-       version = "4.0.0.0";
-       sha256 = "9f67758f1a0f73d9f1182251f0ded41cf9bd82382aa7b767d0b7ed6ee46c93b5";
+       version = "4.0.1.0";
+       sha256 = "48f5a375514269fae1fa8723c80500de845e0798a55fc36074e22bc2e7daa82d";
        setupHaskellDepends = [ base Cabal containers ];
        libraryHaskellDepends = [
          array base bytestring containers llvm-hs-pure mtl parsec
@@ -117800,27 +119845,27 @@ self: {
      }) {};
 
   "log-warper" = callPackage
-    ({ mkDerivation, aeson, ansi-terminal, async, base, bytestring
-     , containers, data-default, directory, dlist, errors, exceptions
-     , extra, filepath, formatting, hashable, hspec, HUnit, lens, mmorph
+    ({ mkDerivation, aeson, ansi-terminal, async, base, containers
+     , data-default, directory, dlist, errors, exceptions, extra
+     , filepath, formatting, hashable, hspec, HUnit, lens, mmorph
      , monad-control, monad-loops, mtl, network, QuickCheck, safecopy
      , text, text-format, time, transformers, transformers-base
      , universum, unix, unordered-containers, yaml
      }:
      mkDerivation {
        pname = "log-warper";
-       version = "1.0.4";
-       sha256 = "c2024e6a5c01d2862d05ea47273e659c3ee31afeeb2f69e67b52fec0749f0990";
+       version = "1.1.1";
+       sha256 = "6a9c42649e8ebaa3959bed7faccbc22c40d78f0d626ca8c41673284d3ce4ee7c";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson ansi-terminal base bytestring containers directory dlist
-         errors exceptions extra filepath formatting hashable lens mmorph
+         aeson ansi-terminal base containers directory dlist errors
+         exceptions extra filepath formatting hashable lens mmorph
          monad-control monad-loops mtl network safecopy text text-format
          time transformers transformers-base universum unix
          unordered-containers yaml
        ];
-       executableHaskellDepends = [ base exceptions text ];
+       executableHaskellDepends = [ base exceptions text universum yaml ];
        testHaskellDepends = [
          async base data-default directory filepath hspec HUnit lens
          QuickCheck universum unordered-containers
@@ -118765,8 +120810,8 @@ self: {
      }:
      mkDerivation {
        pname = "ltext";
-       version = "0.1.2.1";
-       sha256 = "7b1af9f04f227226de237e98ace6b658768ab8b24ee86ee1252fbda41a447534";
+       version = "0.1.2.2";
+       sha256 = "0e899fe89f6621e2b266c1c155867b3959f0fa45f677b7e0a964c5f9d315148b";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -119496,8 +121541,8 @@ self: {
      }:
      mkDerivation {
        pname = "machines-amazonka";
-       version = "0.4.1";
-       sha256 = "cce59823213d25be8bc6b570baaf2f2af5bcbbb5ccc79443afa6542586d5d6bd";
+       version = "0.6.0";
+       sha256 = "fc67b4018230a710f2ab182618fb051504b63f39270838609a0b9d020a90d90a";
        libraryHaskellDepends = [
          amazonka amazonka-core amazonka-ec2 amazonka-s3 amazonka-sts base
          concurrent-machines containers exceptions focus hashable liblawless
@@ -119666,19 +121711,21 @@ self: {
      }) {};
 
   "madlang" = callPackage
-    ({ mkDerivation, ansi-wl-pprint, base, containers, criterion, hspec
-     , hspec-megaparsec, lens, megaparsec, mtl, mwc-random
-     , optparse-applicative, text, tibetan-utils
+    ({ mkDerivation, ansi-wl-pprint, base, composition, containers
+     , criterion, directory, file-embed-poly, hspec, hspec-megaparsec
+     , megaparsec, microlens, MonadRandom, mtl, optparse-applicative
+     , random-shuffle, template-haskell, text
      }:
      mkDerivation {
        pname = "madlang";
-       version = "2.0.1.1";
-       sha256 = "f58b9a47a8f213c030ffbee9c8b2ed71443b32b832eaa761fd06ac3c37a0dccb";
+       version = "2.3.0.3";
+       sha256 = "8382c746f0508e56656705245d593e3ab07f158c6e61a447d88d77753ff0cf28";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         ansi-wl-pprint base containers lens megaparsec mtl mwc-random
-         optparse-applicative text tibetan-utils
+         ansi-wl-pprint base composition containers directory
+         file-embed-poly megaparsec microlens MonadRandom mtl
+         optparse-applicative random-shuffle template-haskell text
        ];
        executableHaskellDepends = [ base ];
        testHaskellDepends = [
@@ -119732,10 +121779,10 @@ self: {
      }:
      mkDerivation {
        pname = "magicbane";
-       version = "0.1.0";
-       sha256 = "8449c50e3abe937f235ce806c0f8dd193b2172949e7a2111f5b7d78b4aa38d94";
-       revision = "1";
-       editedCabalFile = "0da48eedc8e65efecfd5b41191ec1f27c198c35334af15baea2febf759659656";
+       version = "0.1.1";
+       sha256 = "a4022e70c5d97717127fe947e1d03a8648616ed84cb99fd6ab4775d83a014dc6";
+       revision = "3";
+       editedCabalFile = "707d4c38ae27930b18c675893fef20afab379474dc22783bc4e70842cc7f4d62";
        libraryHaskellDepends = [
          aeson aeson-qq attoparsec base classy-prelude conduit
          conduit-combinators data-default data-has either ekg-core ekg-wai
@@ -120045,6 +122092,23 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "makefile_1_0_0_1" = callPackage
+    ({ mkDerivation, attoparsec, base, doctest, Glob, QuickCheck, text
+     }:
+     mkDerivation {
+       pname = "makefile";
+       version = "1.0.0.1";
+       sha256 = "bf30dcdb767e3aa501657dc7bc5338fd015e29573f46b7a24e51e0493a1e5ff1";
+       libraryHaskellDepends = [ attoparsec base text ];
+       testHaskellDepends = [
+         attoparsec base doctest Glob QuickCheck text
+       ];
+       homepage = "http://github.com/nmattia/mask";
+       description = "Simple Makefile parser and generator";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "managed" = callPackage
     ({ mkDerivation, base, transformers }:
      mkDerivation {
@@ -120450,6 +122514,31 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "mandrill_0_5_3_2" = 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
+     }:
+     mkDerivation {
+       pname = "mandrill";
+       version = "0.5.3.2";
+       sha256 = "270d7df72da9c7d1d17bb3c5b115dac449b05a2931a6be41e55336b24e74f4cb";
+       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
+       ];
+       testHaskellDepends = [
+         aeson base bytestring QuickCheck raw-strings-qq tasty tasty-hunit
+         tasty-quickcheck text
+       ];
+       description = "Library for interfacing with the Mandrill JSON API";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "mandulia" = callPackage
     ({ mkDerivation, array, base, bytestring, containers, directory
      , filepath, GLUT, hslua, time
@@ -120926,6 +123015,8 @@ self: {
        pname = "marvin";
        version = "0.2.3";
        sha256 = "79f439662bd8acd8ab528f29fad7ec73517edcf198fc29dc693c35100110553d";
+       revision = "1";
+       editedCabalFile = "a540a43827599459bed0dbfeb02f587bc0c68cdd63c73d97f1e02a81a2d65fab";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -120964,6 +123055,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "marvin-interpolate_1_1_1" = callPackage
+    ({ mkDerivation, base, haskell-src-meta, hspec, mtl, parsec
+     , template-haskell, text
+     }:
+     mkDerivation {
+       pname = "marvin-interpolate";
+       version = "1.1.1";
+       sha256 = "40c87c6430f54d7f8f6f57f97367395f0a4e2cc44576c187dddfded280450dfb";
+       libraryHaskellDepends = [
+         base haskell-src-meta mtl parsec template-haskell text
+       ];
+       testHaskellDepends = [ base hspec text ];
+       homepage = "http://marvin.readthedocs.io/en/latest/interpolation.html";
+       description = "Compile time string interpolation a la Scala and CoffeeScript";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "marxup" = callPackage
     ({ mkDerivation, base, configurator, containers, directory, dlist
      , filepath, haskell-src-exts, labeled-tree, lens, lp-diagrams, mtl
@@ -121262,8 +123371,8 @@ self: {
      }:
      mkDerivation {
        pname = "matrix-market-attoparsec";
-       version = "0.1.0.5";
-       sha256 = "cb200336ba478707e4c0aefc7d4cb4ba4d38ec7a1d637e105184c26ff401565a";
+       version = "0.1.0.7";
+       sha256 = "52c1665cde8ffc684fb4725e545bf8b454ab2708711af7b91301b5aae72bbb31";
        libraryHaskellDepends = [
          attoparsec base bytestring exceptions scientific
        ];
@@ -121768,6 +123877,38 @@ self: {
        hydraPlatforms = [ "x86_64-darwin" "x86_64-linux" ];
      }) {};
 
+  "mediabus_0_4_0_0" = callPackage
+    ({ mkDerivation, array, async, base, binary, bytestring, cereal
+     , conduit, conduit-combinators, conduit-extra, containers
+     , data-default, deepseq, hspec, lens, lifted-async, monad-control
+     , monad-logger, mtl, network, parallel, primitive, process
+     , QuickCheck, random, resourcet, singletons, spool, stm
+     , streaming-commons, tagged, template-haskell, text, time
+     , transformers, type-spec, vector
+     }:
+     mkDerivation {
+       pname = "mediabus";
+       version = "0.4.0.0";
+       sha256 = "e3bcbaef9f47fe40d0341e06187ddd4d40deec5fea7e46340703d14ae1d05701";
+       libraryHaskellDepends = [
+         array async base bytestring cereal conduit conduit-combinators
+         conduit-extra containers data-default deepseq lens lifted-async
+         monad-control monad-logger mtl network parallel primitive process
+         QuickCheck random resourcet spool stm streaming-commons tagged text
+         time transformers vector
+       ];
+       testHaskellDepends = [
+         array async base binary bytestring conduit conduit-combinators
+         conduit-extra containers data-default deepseq hspec lens
+         monad-control mtl QuickCheck singletons spool stm tagged
+         template-haskell text time transformers type-spec vector
+       ];
+       homepage = "https://github.com/lindenbaum/mediabus";
+       description = "Multimedia streaming on top of Conduit";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "mediabus-fdk-aac" = callPackage
     ({ mkDerivation, base, bytestring, conduit, conduit-combinators
      , containers, criterion, deepseq, fdk-aac, ghc-prim, inline-c, lens
@@ -121836,6 +123977,45 @@ self: {
        hydraPlatforms = [ "x86_64-darwin" "x86_64-linux" ];
      }) {};
 
+  "mediabus-rtp_0_4_0_0" = callPackage
+    ({ mkDerivation, array, async, base, binary, bytestring, cereal
+     , conduit, conduit-combinators, conduit-extra, containers
+     , data-default, deepseq, hspec, lens, lifted-async, mediabus
+     , monad-control, monad-logger, mtl, network, parallel, primitive
+     , process, QuickCheck, random, resourcet, singletons, spool, stm
+     , streaming-commons, tagged, template-haskell, text, time
+     , transformers, type-spec, vector
+     }:
+     mkDerivation {
+       pname = "mediabus-rtp";
+       version = "0.4.0.0";
+       sha256 = "338fa64524e1647d2526b74a36c8781b0cd58c108a02826764d88a039687162d";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array async base bytestring cereal conduit conduit-combinators
+         conduit-extra containers data-default deepseq lens lifted-async
+         mediabus monad-control monad-logger mtl network parallel primitive
+         process QuickCheck random resourcet spool stm streaming-commons
+         tagged text time transformers vector
+       ];
+       executableHaskellDepends = [
+         async base conduit conduit-combinators conduit-extra data-default
+         lens lifted-async mediabus monad-control monad-logger mtl parallel
+         QuickCheck random stm streaming-commons tagged time vector
+       ];
+       testHaskellDepends = [
+         array async base binary bytestring conduit conduit-combinators
+         conduit-extra containers data-default deepseq hspec lens mediabus
+         monad-control monad-logger mtl QuickCheck singletons spool stm
+         tagged template-haskell text time transformers type-spec vector
+       ];
+       homepage = "https://github.com/lindenbaum/mediabus-rtp";
+       description = "Receive and Send RTP Packets";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "median-stream" = callPackage
     ({ mkDerivation, base, heap, QuickCheck }:
      mkDerivation {
@@ -122283,22 +124463,35 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "memory" = callPackage
-    ({ mkDerivation, base, bytestring, deepseq, ghc-prim, tasty
-     , tasty-hunit, tasty-quickcheck
+  "memorable-bits" = callPackage
+    ({ mkDerivation, base, binary, bits, bytes, bytestring, criterion
+     , cryptonite, data-dword, doctest, hashable, HUnit, memory, mtl
+     , network-ip, optparse-applicative, random, split, tasty
+     , tasty-hunit, tasty-quickcheck, tasty-smallcheck
      }:
      mkDerivation {
-       pname = "memory";
-       version = "0.14.2";
-       sha256 = "e4428c76a6da8f232d96fe12a15c130fcc808d7542c2ce21744266f3cb905012";
-       libraryHaskellDepends = [ base bytestring deepseq ghc-prim ];
-       testHaskellDepends = [ base tasty tasty-hunit tasty-quickcheck ];
-       homepage = "https://github.com/vincenthz/hs-memory";
-       description = "memory and related abstraction stuff";
-       license = stdenv.lib.licenses.bsd3;
+       pname = "memorable-bits";
+       version = "0.1.0.0";
+       sha256 = "7ac3591f17c1a32c9d74f10cb610979729a1201e6f617604300152d2410cbd4b";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base binary bits bytes bytestring cryptonite data-dword hashable
+         memory mtl network-ip random split
+       ];
+       executableHaskellDepends = [
+         base bytestring cryptonite optparse-applicative
+       ];
+       testHaskellDepends = [
+         base doctest HUnit tasty tasty-hunit tasty-quickcheck
+         tasty-smallcheck
+       ];
+       benchmarkHaskellDepends = [ base bytestring criterion random ];
+       description = "Generate human memorable strings from binary data";
+       license = stdenv.lib.licenses.bsd2;
      }) {};
 
-  "memory_0_14_3" = callPackage
+  "memory" = callPackage
     ({ mkDerivation, base, bytestring, deepseq, foundation, ghc-prim
      , tasty, tasty-hunit, tasty-quickcheck
      }:
@@ -122313,7 +124506,6 @@ self: {
        homepage = "https://github.com/vincenthz/hs-memory";
        description = "memory and related abstraction stuff";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "memorypool" = callPackage
@@ -122779,6 +124971,29 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "microlens-aeson_2_2_0_1" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, microlens
+     , scientific, tasty, tasty-hunit, text, unordered-containers
+     , vector
+     }:
+     mkDerivation {
+       pname = "microlens-aeson";
+       version = "2.2.0.1";
+       sha256 = "d0b1d08f91736a63daac283abf4c2a862f612fc4bd9dfaddc4017b104830f142";
+       libraryHaskellDepends = [
+         aeson attoparsec base bytestring microlens scientific text
+         unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring microlens tasty tasty-hunit text
+         unordered-containers vector
+       ];
+       homepage = "http://github.com/fosskers/microlens-aeson/";
+       description = "Law-abiding lenses for Aeson, using microlens";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "microlens-contra" = callPackage
     ({ mkDerivation, base, contravariant, microlens }:
      mkDerivation {
@@ -124704,28 +126919,6 @@ self: {
      }:
      mkDerivation {
        pname = "monad-logger";
-       version = "0.3.21";
-       sha256 = "878d41b5a15e08817e0ad8675ea2f1e012747027f773df7a319e05f47828e53c";
-       libraryHaskellDepends = [
-         base blaze-builder bytestring conduit conduit-extra exceptions
-         fast-logger lifted-base monad-control monad-loops mtl resourcet stm
-         stm-chans template-haskell text transformers transformers-base
-         transformers-compat
-       ];
-       homepage = "https://github.com/kazu-yamamoto/logger";
-       description = "A class of monads which can log messages";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "monad-logger_0_3_22" = callPackage
-    ({ mkDerivation, base, blaze-builder, bytestring, conduit
-     , conduit-extra, exceptions, fast-logger, lifted-base
-     , monad-control, monad-loops, mtl, resourcet, stm, stm-chans
-     , template-haskell, text, transformers, transformers-base
-     , transformers-compat
-     }:
-     mkDerivation {
-       pname = "monad-logger";
        version = "0.3.22";
        sha256 = "997152368c9200cff7547cc2037ed4f2b34e6e56de97d1aaac6b5a888a9b01e6";
        libraryHaskellDepends = [
@@ -124737,7 +126930,6 @@ self: {
        homepage = "https://github.com/kazu-yamamoto/logger";
        description = "A class of monads which can log messages";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "monad-logger-json" = callPackage
@@ -125021,6 +127213,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "monad-persist" = callPackage
+    ({ mkDerivation, base, hspec, monad-control, monad-logger, mtl
+     , persistent, persistent-sqlite, persistent-template, text
+     , transformers-base
+     }:
+     mkDerivation {
+       pname = "monad-persist";
+       version = "0.0.1.0";
+       sha256 = "389c06f837678593b4cd14348bb0a8774bd6da87be0639ebadc3aca6b830f8c9";
+       libraryHaskellDepends = [
+         base monad-control monad-logger mtl persistent text
+         transformers-base
+       ];
+       testHaskellDepends = [
+         base hspec monad-control monad-logger persistent persistent-sqlite
+         persistent-template text
+       ];
+       description = "An mtl-style typeclass and transformer for persistent";
+       license = stdenv.lib.licenses.isc;
+     }) {};
+
   "monad-primitive" = callPackage
     ({ mkDerivation, base, primitive, transformers }:
      mkDerivation {
@@ -125661,6 +127874,38 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "mongoDB_2_2_0" = callPackage
+    ({ mkDerivation, array, base, base16-bytestring, base64-bytestring
+     , binary, bson, bytestring, conduit, conduit-extra, containers
+     , criterion, cryptohash, data-default-class, hashtables, hspec
+     , lifted-base, monad-control, mtl, network, nonce, old-locale
+     , parsec, pureMD5, random, random-shuffle, resourcet, tagged, text
+     , time, tls, transformers, transformers-base
+     }:
+     mkDerivation {
+       pname = "mongoDB";
+       version = "2.2.0";
+       sha256 = "bc13e213b5fe23eb291eaf33a303b8899495f538d29aa3a1d6ba9400729c5d69";
+       libraryHaskellDepends = [
+         array base base16-bytestring base64-bytestring binary bson
+         bytestring conduit conduit-extra containers cryptohash
+         data-default-class hashtables lifted-base monad-control mtl network
+         nonce parsec pureMD5 random random-shuffle resourcet tagged text
+         time tls transformers transformers-base
+       ];
+       testHaskellDepends = [ base hspec mtl old-locale text time ];
+       benchmarkHaskellDepends = [
+         array base base16-bytestring base64-bytestring binary bson
+         bytestring containers criterion cryptohash hashtables lifted-base
+         monad-control mtl network nonce parsec random random-shuffle text
+         transformers-base
+       ];
+       homepage = "https://github.com/mongodb-haskell/mongodb";
+       description = "Driver (client) for MongoDB, a free, scalable, fast, document DBMS";
+       license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "mongodb-queue" = callPackage
     ({ mkDerivation, base, data-default, hspec, lifted-base
      , monad-control, mongoDB, network, text, transformers
@@ -127487,6 +129732,33 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "mushu" = callPackage
+    ({ mkDerivation, base, brick, bytestring, classy-prelude
+     , connection, containers, data-default, directory, filepath, fuzzy
+     , hscurses, htoml, libmpd, list-t, microlens, microlens-platform
+     , microlens-th, mtl, network, pretty, process, safe-exceptions
+     , template-haskell, text, text-zipper, time, transformers
+     , unordered-containers, vector, vty
+     }:
+     mkDerivation {
+       pname = "mushu";
+       version = "0.1.1";
+       sha256 = "9b0a749a3f81d3101df1295ff0a2509604f5142d51e1daa97fab692c4b8b35f2";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base brick bytestring classy-prelude connection containers
+         data-default directory filepath fuzzy hscurses htoml libmpd list-t
+         microlens microlens-platform microlens-th mtl network pretty
+         process safe-exceptions template-haskell text text-zipper time
+         transformers unordered-containers vector vty
+       ];
+       testHaskellDepends = [ base classy-prelude ];
+       homepage = "https://github.com/elaye/mushu#README.md";
+       description = "Minimalist MPD client";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "music-articulation" = callPackage
     ({ mkDerivation, average, base, semigroups }:
      mkDerivation {
@@ -127786,8 +130058,8 @@ self: {
      }:
      mkDerivation {
        pname = "mustache";
-       version = "2.1.2";
-       sha256 = "383305b302400070f0b4f6d95f28d5b6b9ffc5d6d660421bb18d122351880f80";
+       version = "2.1.3";
+       sha256 = "6bf426f9633aeff26bc78a5219b4ff93a785614adfc35f59933368ece71781b4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -127911,6 +130183,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "mvar-lock" = callPackage
+    ({ mkDerivation, base, safe-exceptions }:
+     mkDerivation {
+       pname = "mvar-lock";
+       version = "0.1.0.0";
+       sha256 = "1719f3d321129663a8c4a93a136e3c14a09de0db5328a03172e9637ba48468c8";
+       libraryHaskellDepends = [ base safe-exceptions ];
+       homepage = "https://github.com/chris-martin/haskell-libraries";
+       description = "A trivial lock based on MVar";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "mvc" = callPackage
     ({ mkDerivation, async, base, contravariant, foldl, managed, mmorph
      , pipes, pipes-concurrency, transformers
@@ -127984,6 +130268,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "mwc-random-accelerate" = callPackage
+    ({ mkDerivation, accelerate, base, mwc-random }:
+     mkDerivation {
+       pname = "mwc-random-accelerate";
+       version = "0.1.0.0";
+       sha256 = "30fad33d12b130457a6dcb8bedc885700e6ac0eea9b0f25fe6e5fe34968932e3";
+       libraryHaskellDepends = [ accelerate base mwc-random ];
+       description = "Generate Accelerate arrays filled with high quality pseudorandom numbers";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "mwc-random-monad" = callPackage
     ({ mkDerivation, base, monad-primitive, mwc-random, primitive
      , transformers, vector
@@ -130933,15 +133228,17 @@ self: {
      }) {};
 
   "niagra" = callPackage
-    ({ mkDerivation, base, ghc-prim, mtl, primitive, text, transformers
+    ({ mkDerivation, base, ghc-prim, HUnit, mtl, primitive, QuickCheck
+     , text, transformers
      }:
      mkDerivation {
        pname = "niagra";
-       version = "0.2.3";
-       sha256 = "19d15b13766496bfceea6b871329984441d42884d662fbf25902b30538745431";
+       version = "0.2.5";
+       sha256 = "23bff9497a62fef7970065594f25840e84a8bcd34b5159812e650c3031e6b67e";
        libraryHaskellDepends = [
          base ghc-prim mtl primitive text transformers
        ];
+       testHaskellDepends = [ base HUnit QuickCheck ];
        homepage = "https://github.com/fhsjaagshs/niagra";
        description = "High performance CSS EDSL";
        license = stdenv.lib.licenses.mit;
@@ -131001,8 +133298,8 @@ self: {
      }:
      mkDerivation {
        pname = "nicovideo-translator";
-       version = "0.2.0.0";
-       sha256 = "039a1dd1e25450b96ee513091b382f2f9e00826fa2ae69811da9c9a2fe0d4bf0";
+       version = "0.3.0.0";
+       sha256 = "1fe01ffaeff2e58b24ad057df1be81a7b4561d667332a0fb454303d1d2a81ae2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -131507,8 +133804,8 @@ self: {
     ({ mkDerivation, base, checkers, QuickCheck }:
      mkDerivation {
        pname = "non-empty-zipper";
-       version = "0.1.0.5";
-       sha256 = "196e30fd12ce74458a62b8b61ea7c1f6cec4d5999f465d2ccb11b394c3ed77b4";
+       version = "0.1.0.7";
+       sha256 = "6b840c98fbe045bf3a2d4b5606ef8deb6668f6dbdaf872473273f129fda081fe";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base checkers QuickCheck ];
        description = "The Zipper for NonEmpty";
@@ -132250,6 +134547,49 @@ self: {
        license = stdenv.lib.licenses.asl20;
      }) {};
 
+  "numhask" = callPackage
+    ({ mkDerivation, adjunctions, base, distributive, doctest, HUnit
+     , protolude, QuickCheck, singletons, tasty, tasty-hunit
+     , tasty-quickcheck, vector
+     }:
+     mkDerivation {
+       pname = "numhask";
+       version = "0.0.3";
+       sha256 = "edca61ca143227ce701d53d6b848c7340b66af4338cbbcfa33c201402e421871";
+       libraryHaskellDepends = [
+         adjunctions base distributive protolude QuickCheck singletons
+         vector
+       ];
+       testHaskellDepends = [
+         base doctest HUnit QuickCheck tasty tasty-hunit tasty-quickcheck
+       ];
+       homepage = "https://github.com/tonyday567/numhask";
+       description = "A numeric prelude";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "numhask-range" = callPackage
+    ({ mkDerivation, base, containers, foldl, formatting, HUnit, lens
+     , linear, numhask, protolude, QuickCheck, smallcheck, tasty
+     , tasty-hspec, tasty-hunit, tasty-quickcheck, tasty-smallcheck
+     }:
+     mkDerivation {
+       pname = "numhask-range";
+       version = "0.0.1";
+       sha256 = "52a73be1f8d653bb4ef0e54da3ec6a923494944e88ccbd86f2f9b7ea39c44f05";
+       libraryHaskellDepends = [
+         base containers foldl formatting lens linear numhask protolude
+         QuickCheck
+       ];
+       testHaskellDepends = [
+         base HUnit numhask protolude QuickCheck smallcheck tasty
+         tasty-hspec tasty-hunit tasty-quickcheck tasty-smallcheck
+       ];
+       homepage = "https://github.com/tonyday567/numhask-range";
+       description = "see readme.md";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "nums" = callPackage
     ({ mkDerivation }:
      mkDerivation {
@@ -132360,24 +134700,20 @@ self: {
 
   "nvim-hs-contrib" = callPackage
     ({ mkDerivation, ansi-wl-pprint, base, bytestring, data-default
-     , directory, exceptions, hspec, hspec-discover, messagepack, mtl
-     , nvim-hs, parsec, process, QuickCheck, resourcet, setenv, stm
-     , text, time, transformers, transformers-base, utf8-string
+     , directory, exceptions, filepath, hspec, hspec-discover
+     , messagepack, mtl, nvim-hs, QuickCheck, text, time, utf8-string
+     , yaml
      }:
      mkDerivation {
        pname = "nvim-hs-contrib";
-       version = "0.1.0";
-       sha256 = "f0de17887d394301ec1975ab768ad6a6131bd7e6580b11c8b9364980e3be6472";
+       version = "0.2.0";
+       sha256 = "6ee5e9777fbe4dcfa7085923ee1386c2f9c317177c9d61f332cf424e544d2915";
        libraryHaskellDepends = [
          ansi-wl-pprint base bytestring data-default directory exceptions
-         messagepack mtl nvim-hs parsec process resourcet setenv stm text
-         time transformers transformers-base utf8-string
+         filepath messagepack mtl nvim-hs text time utf8-string yaml
        ];
        testHaskellDepends = [
-         ansi-wl-pprint base bytestring data-default exceptions hspec
-         hspec-discover messagepack mtl nvim-hs parsec process QuickCheck
-         resourcet setenv stm text time transformers transformers-base
-         utf8-string
+         base hspec hspec-discover nvim-hs QuickCheck
        ];
        homepage = "https://github.com/neovimhaskell/nvim-hs";
        description = "Haskell plugin backend for neovim";
@@ -132387,15 +134723,15 @@ self: {
 
   "nvim-hs-ghcid" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, filepath
-     , ghcid, nvim-hs, nvim-hs-contrib, resourcet, yaml
+     , ghcid, nvim-hs, nvim-hs-contrib, resourcet, transformers, yaml
      }:
      mkDerivation {
        pname = "nvim-hs-ghcid";
-       version = "0.1.0";
-       sha256 = "c0f900633873759e49a08be61d8c91c1507f95b2e108d39d1d517adf9adc7bde";
+       version = "0.2.0";
+       sha256 = "6ed326f9de682ec3a7b8493c1f5ef710f7e14ec65c815a67911e306def880e81";
        libraryHaskellDepends = [
          base bytestring containers directory filepath ghcid nvim-hs
-         nvim-hs-contrib resourcet yaml
+         nvim-hs-contrib resourcet transformers yaml
        ];
        homepage = "https://github.com/saep/nvim-hs-ghcid";
        description = "Neovim plugin that runs ghcid to update the quickfix list";
@@ -132409,8 +134745,8 @@ self: {
      }:
      mkDerivation {
        pname = "nvvm";
-       version = "0.7.5.1";
-       sha256 = "73914a6a1816432b0cc687a6200b52a030a705b51276f8266a984c3617f69109";
+       version = "0.7.5.2";
+       sha256 = "f1248c969830152e9bcad6d0e2234f5693c4c8625a48328f8d0cd6eb81270f1f";
        setupHaskellDepends = [
          base Cabal directory filepath template-haskell
        ];
@@ -132699,6 +135035,30 @@ self: {
        hydraPlatforms = [ "x86_64-darwin" "x86_64-linux" ];
      }) {};
 
+  "octane_0_18_3" = callPackage
+    ({ mkDerivation, aeson, base, bimap, binary, bytestring, containers
+     , data-default-class, file-embed, http-client, http-client-tls
+     , overloaded-records, rattletrap, text
+     }:
+     mkDerivation {
+       pname = "octane";
+       version = "0.18.3";
+       sha256 = "2555a69101e39813d2f9b4f2bcbbb0a70f40592be1ef6c4414f3a7bc4297f415";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bimap binary bytestring containers data-default-class
+         file-embed overloaded-records rattletrap text
+       ];
+       executableHaskellDepends = [
+         aeson base binary bytestring http-client http-client-tls
+       ];
+       homepage = "https://github.com/tfausak/octane#readme";
+       description = "Parse Rocket League replays";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "octohat" = callPackage
     ({ mkDerivation, aeson, base, base-compat, base16-bytestring
      , base64-bytestring, bytestring, containers, cryptohash, dotenv
@@ -133015,15 +135375,16 @@ self: {
      }) {};
 
   "ombra" = callPackage
-    ({ mkDerivation, base, gl, hashable, hashtables, transformers
-     , unordered-containers, vect
+    ({ mkDerivation, base, Boolean, gl, hashable, hashtables
+     , transformers, unordered-containers, vector-space
      }:
      mkDerivation {
        pname = "ombra";
-       version = "0.2.2.0";
-       sha256 = "006dde6ad3c4273078f7129a67380b1002b2fb6f2f92f253695e846a23181d60";
+       version = "0.3.0.0";
+       sha256 = "99516f07fdc85967a562668f136a2899fda28ea6fe3be27e09bc06a2aca654ad";
        libraryHaskellDepends = [
-         base gl hashable hashtables transformers unordered-containers vect
+         base Boolean gl hashable hashtables transformers
+         unordered-containers vector-space
        ];
        homepage = "https://github.com/ziocroc/Ombra";
        description = "Render engine";
@@ -133275,8 +135636,8 @@ self: {
        pname = "opaleye";
        version = "0.5.3.0";
        sha256 = "6ceda758d97c5b0b547182fb2c7a0379f0f5843e76f4bbd0baa81a171a763d73";
-       revision = "1";
-       editedCabalFile = "0188a5df6e42350cafb8771ed56b190451291bc04767a451c0aba76582bbed28";
+       revision = "2";
+       editedCabalFile = "382c87c048eba0af1b6eee069c2083a183b20806b696a16cab98db776b9afcdb";
        libraryHaskellDepends = [
          aeson attoparsec base base16-bytestring bytestring case-insensitive
          contravariant postgresql-simple pretty product-profunctors
@@ -133489,6 +135850,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "opench-meteo" = callPackage
+    ({ mkDerivation, aeson, base, data-default, text, time }:
+     mkDerivation {
+       pname = "opench-meteo";
+       version = "0.1.0.0";
+       sha256 = "16c8d5f0a4d14d57672d41b0b6e5d4764f276db2ba86e88aa3ccc6ddc05f9b0e";
+       libraryHaskellDepends = [ aeson base data-default text time ];
+       homepage = "https://github.com/hansroland/opench";
+       description = "A Haskell implementation of the Swiss Meteo Net data API";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "opencog-atomspace" = callPackage
     ({ mkDerivation, atomspace-cwrapper, base, transformers }:
      mkDerivation {
@@ -134422,8 +136795,8 @@ self: {
      }:
      mkDerivation {
        pname = "optparse-generic";
-       version = "1.1.4";
-       sha256 = "dc69bc73d6e3de52bcc5c4ccd8ce741eebb8d10747bc7f819b38b0cdaf1e520c";
+       version = "1.1.5";
+       sha256 = "ba7a5d1f8baef521e6cb0f21d723f0841f8b0f24f4c0a9f923062368e061e6f5";
        libraryHaskellDepends = [
          base bytestring optparse-applicative semigroups system-filepath
          text time transformers void
@@ -135549,6 +137922,26 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "pandoc-filter-graphviz" = callPackage
+    ({ mkDerivation, base, base16-bytestring, byteable, bytestring
+     , containers, cryptonite, directory, filepath, pandoc, pandoc-types
+     , process, text
+     }:
+     mkDerivation {
+       pname = "pandoc-filter-graphviz";
+       version = "0.1.0.0";
+       sha256 = "24766b1a4c54ec3d5ffbd29ea01d7a9b9766c0153fec3648847015bcd6679a44";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base base16-bytestring byteable bytestring containers cryptonite
+         directory filepath pandoc pandoc-types process text
+       ];
+       homepage = "https://github.com/jpierre03/pandoc-filter-graphviz";
+       description = "A Pandoc filter to use graphviz";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "pandoc-include" = callPackage
     ({ mkDerivation, base, directory, pandoc, pandoc-types, text }:
      mkDerivation {
@@ -135575,8 +137968,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc-include-code";
-       version = "0.2.0";
-       sha256 = "0241672e57d3bc0a5fa6ae953cf98d6d702b36076d58eaa64490b5089f377b72";
+       version = "0.3.0";
+       sha256 = "518eeb61e25b1872580a30bf927b0dbd874b713bd6ebc412ab2fe87c02ea6c74";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -135612,8 +138005,8 @@ self: {
     ({ mkDerivation, base, containers, lens, pandoc-types }:
      mkDerivation {
        pname = "pandoc-lens";
-       version = "0.6";
-       sha256 = "70ffd8f5a5086cd6e2f3f92fd3f304ac6cf5ebbef70361086984ce8a11faf3fc";
+       version = "0.6.2";
+       sha256 = "e5e126cd882d41caf1392a4a21ccc4e5f2e46e45e73ff32e7c4d324b951662a3";
        libraryHaskellDepends = [ base containers lens pandoc-types ];
        homepage = "http://github.com/bgamari/pandoc-lens";
        description = "Lenses for Pandoc documents";
@@ -136310,8 +138703,8 @@ self: {
     ({ mkDerivation, array, base, containers, deepseq }:
      mkDerivation {
        pname = "parallel";
-       version = "3.2.1.0";
-       sha256 = "4de3cdbb71dfd13cbb70a1dc1d1d5cf34fbe9828e05eb02b3dc658fdc2148526";
+       version = "3.2.1.1";
+       sha256 = "323bb9bc9e36fb9bfb08e68a772411302b1599bfffbc6de20fa3437ce1473c17";
        libraryHaskellDepends = [ array base containers deepseq ];
        description = "Parallel programming library";
        license = stdenv.lib.licenses.bsd3;
@@ -138157,6 +140550,23 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "peregrin" = callPackage
+    ({ mkDerivation, base, hspec, pg-harness-client, postgresql-simple
+     , resource-pool, text, transformers
+     }:
+     mkDerivation {
+       pname = "peregrin";
+       version = "0.1.0";
+       sha256 = "9cd335665b1d4e453d88c3dbe3ffb238ebca89890ac7998bc80f6968be2e1ac1";
+       libraryHaskellDepends = [ base postgresql-simple text ];
+       testHaskellDepends = [
+         base hspec pg-harness-client postgresql-simple resource-pool text
+         transformers
+       ];
+       description = "Database migration support for use in other libraries";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "perfecthash" = callPackage
     ({ mkDerivation, array, base, bytestring, cmph, containers
      , criterion, deepseq, hspec, QuickCheck, random, time
@@ -138295,6 +140705,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "persistable-record_0_5_0_1" = callPackage
+    ({ mkDerivation, array, base, containers, dlist, names-th
+     , quickcheck-simple, template-haskell, th-data-compat, transformers
+     }:
+     mkDerivation {
+       pname = "persistable-record";
+       version = "0.5.0.1";
+       sha256 = "e30d56e8ca9ef1e1b8ac6c15907567c5b635679951a67731c55843dde3100b64";
+       libraryHaskellDepends = [
+         array base containers dlist names-th template-haskell
+         th-data-compat transformers
+       ];
+       testHaskellDepends = [ base quickcheck-simple ];
+       homepage = "http://khibino.github.io/haskell-relational-record/";
+       description = "Binding between SQL database values and haskell records";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "persistable-types-HDBC-pg" = callPackage
     ({ mkDerivation, base, bytestring, convertible, HDBC
      , persistable-record, relational-query-HDBC, text-postgresql
@@ -138346,6 +140775,41 @@ self: {
        maintainers = with stdenv.lib.maintainers; [ psibi ];
      }) {};
 
+  "persistent_2_7_0" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, base64-bytestring
+     , blaze-html, blaze-markup, bytestring, conduit, containers
+     , exceptions, fast-logger, hspec, http-api-data, lifted-base
+     , monad-control, monad-logger, mtl, old-locale, path-pieces
+     , resource-pool, resourcet, scientific, silently, tagged
+     , template-haskell, text, time, transformers, transformers-base
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "persistent";
+       version = "2.7.0";
+       sha256 = "cebc4d51d362ce329cb29cb3873eacc01a1453c54d356c4115a7488543e3deea";
+       libraryHaskellDepends = [
+         aeson attoparsec base base64-bytestring blaze-html blaze-markup
+         bytestring conduit containers exceptions fast-logger http-api-data
+         lifted-base monad-control monad-logger mtl old-locale path-pieces
+         resource-pool resourcet scientific silently tagged template-haskell
+         text time transformers transformers-base unordered-containers
+         vector
+       ];
+       testHaskellDepends = [
+         aeson attoparsec base base64-bytestring blaze-html bytestring
+         conduit containers fast-logger hspec http-api-data lifted-base
+         monad-control monad-logger mtl old-locale path-pieces resource-pool
+         resourcet scientific tagged template-haskell text time transformers
+         unordered-containers vector
+       ];
+       homepage = "http://www.yesodweb.com/book/persistent";
+       description = "Type-safe, multi-backend data serialization";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       maintainers = with stdenv.lib.maintainers; [ psibi ];
+     }) {};
+
   "persistent-audit" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring
      , getopt-generics, hashable, hspec, mongoDB, persistent
@@ -138492,8 +140956,8 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-mongoDB";
-       version = "2.5.0.1";
-       sha256 = "0fa7b288a063d0e3dd187a41992d14ac9af9eb57a494923074d3a4db3b04b91e";
+       version = "2.6.0";
+       sha256 = "e34ee25417a232e97c25989d04d8d62d907def78c6fd1710ba61f15c3d9924f9";
        libraryHaskellDepends = [
          aeson attoparsec base bson bytestring cereal conduit containers
          http-api-data monad-control mongoDB network path-pieces persistent
@@ -138525,6 +140989,31 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "persistent-mysql-haskell" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, conduit, containers
+     , io-streams, monad-control, monad-logger, mysql-haskell, network
+     , persistent, persistent-template, resource-pool, resourcet, text
+     , time, tls, transformers
+     }:
+     mkDerivation {
+       pname = "persistent-mysql-haskell";
+       version = "0.3.0.0";
+       sha256 = "e4b1b4761c946f9ed6d89a28e7d06c74dd8c34a4d1b5993154a940f420073ea6";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring conduit containers io-streams monad-control
+         monad-logger mysql-haskell network persistent resource-pool
+         resourcet text time tls transformers
+       ];
+       executableHaskellDepends = [
+         base monad-logger persistent persistent-template transformers
+       ];
+       homepage = "http://www.yesodweb.com/book/persistent";
+       description = "A pure haskell backend for the persistent library using MySQL database server";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "persistent-odbc" = callPackage
     ({ mkDerivation, aeson, base, bytestring, conduit, containers
      , convertible, HDBC, HDBC-odbc, monad-control, monad-logger
@@ -139169,8 +141658,8 @@ self: {
      }:
      mkDerivation {
        pname = "phoityne-vscode";
-       version = "0.0.12.0";
-       sha256 = "db6c64e67759c9133f12a70fa82df22c8f7d4ba4450b5317aa57f35a177976fb";
+       version = "0.0.13.0";
+       sha256 = "72d782287fccefaab02a524a8fc64affbee3692b56889dd07ed64427a1c453f7";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -139525,6 +142014,19 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "pictikz" = callPackage
+    ({ mkDerivation, base, matrix, transformers, xml }:
+     mkDerivation {
+       pname = "pictikz";
+       version = "1.1.0.0";
+       sha256 = "2ceb510ae550c5edbadf4222a71b227324b94c2c613904691cb20e60c104507d";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [ base matrix transformers xml ];
+       description = "Converts a svg image to tikz code";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "pid1" = callPackage
     ({ mkDerivation, base, process, unix }:
      mkDerivation {
@@ -140134,8 +142636,8 @@ self: {
      }:
      mkDerivation {
        pname = "pipes-extras";
-       version = "1.0.8";
-       sha256 = "4d0f7932212988b5e4c661238d66db316cd11bae15506a87d925ae058194d37b";
+       version = "1.0.9";
+       sha256 = "102192c53657e72a43b37a1ef7b1452c3cfb0f63d21cc1aacfd70e140d722d47";
        libraryHaskellDepends = [ base foldl pipes transformers ];
        testHaskellDepends = [
          base HUnit pipes test-framework test-framework-hunit transformers
@@ -140735,8 +143237,8 @@ self: {
      }:
      mkDerivation {
        pname = "pipes-zeromq4";
-       version = "0.2.0.0";
-       sha256 = "24f3ae9640eb6e2180edb8e0fc12bc420c7fa83aa32605900de1d961d93e92fe";
+       version = "0.3.0.0";
+       sha256 = "577ef357525645b258e068e84e58d75c315ca0aba85c39ea247f6b88e710139d";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -141145,6 +143647,19 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "plocketed" = callPackage
+    ({ mkDerivation, base, optparse-applicative, socketed }:
+     mkDerivation {
+       pname = "plocketed";
+       version = "0.1.0.1";
+       sha256 = "0f63c8565349b15df882208debfede7ccdb6fc5e143d65ccbcc3e5bd9cd1ab6e";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [ base optparse-applicative socketed ];
+       description = "plot data from stdin through socketed";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "plot" = callPackage
     ({ mkDerivation, array, base, cairo, colour, hmatrix, mtl, pango
      , transformers
@@ -141239,16 +143754,13 @@ self: {
      }:
      mkDerivation {
        pname = "plotlyhs";
-       version = "0.1.0";
-       sha256 = "445bc874f9edef177830e39968ac487bfd156702750c74f287ed6387a07b5f5b";
-       isLibrary = true;
-       isExecutable = true;
+       version = "0.2";
+       sha256 = "85fb0446b3e92267357dc52b770da90b222b85337f3db593e0350021d1e53259";
        libraryHaskellDepends = [
          aeson base blaze-html blaze-markup bytestring lucid microlens
          microlens-th text
        ];
-       executableHaskellDepends = [ aeson base lucid microlens text ];
-       homepage = "https://github.com/glutamate/plotlyhs";
+       homepage = "https://github.com/filopodia/open/plotlyhs";
        description = "Haskell bindings to Plotly.js";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -141825,9 +144337,11 @@ self: {
        pname = "polydata";
        version = "0.1.0.0";
        sha256 = "1e1785b31d8fac68db19771440e564cec451a7cf0d4a8ac9f3bb634b4a2db7bb";
+       revision = "1";
+       editedCabalFile = "2a13f5f9f2a608617e0fc21d8af90cfb7fd367eb0e94c111bdd6a2b3d3e89980";
        libraryHaskellDepends = [ base constraint-manip indextype ];
        testHaskellDepends = [ base constraint-manip hspec indextype ];
-       description = "Wrap together data and it's constraints";
+       description = "Wrap together data and its constraints";
        license = stdenv.lib.licenses.mit;
      }) {};
 
@@ -142023,12 +144537,16 @@ self: {
      }) {};
 
   "pong-server" = callPackage
-    ({ mkDerivation, base, data-default, hspec, network, QuickCheck }:
+    ({ mkDerivation, base, bytestring, classy-prelude, exceptions
+     , hspec, http-types, network, QuickCheck
+     }:
      mkDerivation {
        pname = "pong-server";
-       version = "0.0.2.1";
-       sha256 = "145242c8ad672f358eb83f503ba5f92478040d943236b25010d343085f42779a";
-       libraryHaskellDepends = [ base data-default network ];
+       version = "0.0.3.0";
+       sha256 = "dd84310b20b09d2667dcc1af7b6ecab2a47f19986395049eeebb7ddc86b8c326";
+       libraryHaskellDepends = [
+         base bytestring classy-prelude exceptions http-types network
+       ];
        testHaskellDepends = [ base hspec network QuickCheck ];
        homepage = "http://github.com/RobertFischer/pong-server#readme";
        description = "A simple embedded pingable server that runs in the background";
@@ -142417,10 +144935,13 @@ self: {
     ({ mkDerivation, base, bytestring, process, unix, util }:
      mkDerivation {
        pname = "posix-pty";
-       version = "0.2.1";
-       sha256 = "16e941681511ef1d59300314d4f6f85192b00787fc2605fbd18a300192c4edc1";
+       version = "0.2.1.1";
+       sha256 = "a2c50cec87434afa5758fe79efa95ac730843be689dac8a1d78a9e7d66fdbbb9";
+       revision = "1";
+       editedCabalFile = "f1e54f10c49d9f27dba33539391659d2daa4874badc1554ffc6c25b329ef1db6";
        libraryHaskellDepends = [ base bytestring process unix ];
        librarySystemDepends = [ util ];
+       testHaskellDepends = [ base bytestring process ];
        homepage = "https://bitbucket.org/merijnv/posix-pty";
        description = "Pseudo terminal interaction with subprocesses";
        license = stdenv.lib.licenses.bsd3;
@@ -142845,8 +145366,8 @@ self: {
      }:
      mkDerivation {
        pname = "postgresql-simple-typed";
-       version = "0.1.0.1";
-       sha256 = "4c30a001b15267cd8a8480bf03d8312b3038c4cd70936029ca9a7147ba06fe65";
+       version = "0.1.0.2";
+       sha256 = "5f21b97131f54fe2ac98cf78d901276e2e1ee456ebf1c8a73f824f013f35c089";
        libraryHaskellDepends = [
          base postgresql-libpq postgresql-simple template-haskell
          transformers typedquery utf8-string
@@ -142930,6 +145451,23 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "postgresql-typed-lifted" = callPackage
+    ({ mkDerivation, base, base-unicode-symbols, bytestring, exceptions
+     , lens, monad-control, postgresql-typed, transformers-base
+     }:
+     mkDerivation {
+       pname = "postgresql-typed-lifted";
+       version = "0.5.1.1";
+       sha256 = "f8a66b60c9b2106690287c16f87b1d8e22621a2950f9aaf4609bd9deb6a37a6b";
+       libraryHaskellDepends = [
+         base base-unicode-symbols bytestring exceptions lens monad-control
+         postgresql-typed transformers-base
+       ];
+       homepage = "https://gitlab.com/theunixman/postgresql-typed-lifted";
+       description = "postgresql-typed operations lifted to any instance of MonadBase or MonadBaseControl";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "postgrest" = callPackage
     ({ mkDerivation, aeson, aeson-qq, ansi-wl-pprint, async
      , auto-update, base, base64-bytestring, bytestring
@@ -143347,20 +145885,22 @@ self: {
 
   "preamble" = callPackage
     ({ mkDerivation, aeson, base, basic-prelude, exceptions
-     , fast-logger, lens, monad-control, monad-logger, mtl, resourcet
-     , safe, shakers, template-haskell, text, text-manipulate, time
-     , transformers-base, unordered-containers, uuid
+     , fast-logger, lens, monad-control, monad-logger, MonadRandom, mtl
+     , network, resourcet, safe, shakers, template-haskell, text
+     , text-manipulate, time, transformers-base, unordered-containers
+     , uuid
      }:
      mkDerivation {
        pname = "preamble";
-       version = "0.0.23";
-       sha256 = "9da28ef916d8c8dec8bb28071e2536a4a5076438028d2e7b1c4e4b020383b044";
+       version = "0.0.32";
+       sha256 = "428d5bd2ad1e3b1564675bf18feea19d82a5b28a2c0623de5f00e49c3eeec04d";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson base basic-prelude exceptions fast-logger lens monad-control
-         monad-logger mtl resourcet safe template-haskell text
-         text-manipulate time transformers-base unordered-containers uuid
+         monad-logger MonadRandom mtl network resourcet safe
+         template-haskell text text-manipulate time transformers-base
+         unordered-containers uuid
        ];
        executableHaskellDepends = [ base shakers ];
        homepage = "https://github.com/swift-nav/preamble";
@@ -143426,8 +145966,8 @@ self: {
      }:
      mkDerivation {
        pname = "pred-trie";
-       version = "0.5.1.1";
-       sha256 = "7342dab0c18f25b023da8613798dcb3e75fceb8b082a1feb57e5597de9827ecf";
+       version = "0.5.1.2";
+       sha256 = "437b4f2578444adad0eeb519d23c339d4f5cb3532b12745bc1e94144135a0a34";
        libraryHaskellDepends = [
          base composition-extra containers hashable hashtables mtl
          poly-arity pred-set QuickCheck semigroups tries
@@ -144273,15 +146813,15 @@ self: {
      }) {};
 
   "privileged-concurrency" = callPackage
-    ({ mkDerivation, base, lifted-base, monad-control, stm
-     , transformers-base
+    ({ mkDerivation, base, contravariant, lifted-base, monad-control
+     , stm, transformers-base
      }:
      mkDerivation {
        pname = "privileged-concurrency";
-       version = "0.5";
-       sha256 = "5be035781722144dec6ab14f443ecccb6addcf4be2f871f4bb372e5a9790ebfe";
+       version = "0.6";
+       sha256 = "67f768353b4bacf2c060f6a4107b4c54216cf238d0250716865436d9b723425b";
        libraryHaskellDepends = [
-         base lifted-base monad-control stm transformers-base
+         base contravariant lifted-base monad-control stm transformers-base
        ];
        description = "Provides privilege separated versions of the concurrency primitives";
        license = stdenv.lib.licenses.bsd3;
@@ -144766,6 +147306,8 @@ self: {
        pname = "profunctors";
        version = "5.2";
        sha256 = "87a7e25c4745ea8ff479dd1212ec2e57710abb3d3dd30f948fa16be1d3ee05a4";
+       revision = "1";
+       editedCabalFile = "530cbe1328db594389d931c3d5dac1e6e923447d2046901d3065e1098cda1fe0";
        libraryHaskellDepends = [
          base base-orphans bifunctors comonad contravariant distributive
          tagged transformers
@@ -144787,6 +147329,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "progress-meter" = callPackage
+    ({ mkDerivation, async, base, containers, stm }:
+     mkDerivation {
+       pname = "progress-meter";
+       version = "0.1.0";
+       sha256 = "ae1322e234fa3c785e5fb47f7445ec9135fe1e006195f239a59b98d8bcd07975";
+       libraryHaskellDepends = [ async base containers stm ];
+       homepage = "https://github.com/esoeylemez/progress-meter";
+       description = "Live diagnostics for concurrent activity";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "progress-reporting" = callPackage
     ({ mkDerivation, base, deepseq, mtl, time }:
      mkDerivation {
@@ -145103,8 +147657,8 @@ self: {
      }:
      mkDerivation {
        pname = "propellor";
-       version = "4.0.2";
-       sha256 = "cb659ab34b22126c0c07075e556a6f56170af3896f2e23dcd16035d70e578624";
+       version = "4.0.3";
+       sha256 = "b3d15b9bd473489dad05bb77b8984f732b48ddf9562c8caea4fab573ce96e096";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -145223,8 +147777,8 @@ self: {
      }:
      mkDerivation {
        pname = "proto-lens";
-       version = "0.2.0.0";
-       sha256 = "db1ce1c786941c98ac67885d583731eed5bf6998022985e699915f5aa757b07f";
+       version = "0.2.0.1";
+       sha256 = "73c0502e28c55d073e1ea9965f97f7212d27954db46a64f2b2117d4ebb9b8090";
        libraryHaskellDepends = [
          attoparsec base bytestring containers data-default-class
          lens-family parsec pretty text transformers void
@@ -145281,8 +147835,8 @@ self: {
      }:
      mkDerivation {
        pname = "proto-lens-descriptors";
-       version = "0.2.0.0";
-       sha256 = "1fca9713d7678b2328e5f330eebfc690b487ccca719fe2cdf84f24af71d98bb5";
+       version = "0.2.0.1";
+       sha256 = "b0ca73f013ceb40ddf89c1932e1a70b73d36f363f7219528e6184177ecb84dee";
        libraryHaskellDepends = [
          base bytestring containers data-default-class lens-family
          lens-labels proto-lens text
@@ -145314,8 +147868,8 @@ self: {
      }:
      mkDerivation {
        pname = "proto-lens-protoc";
-       version = "0.2.0.0";
-       sha256 = "60df593b670ca8f984e67ac784a97425e5056b0cdf16f231f53cc228ada85376";
+       version = "0.2.0.1";
+       sha256 = "de085ff0bd6d3326b2e01b43eb0b00ac6286ef512984778bd22e476bf83b4d7f";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -145386,8 +147940,8 @@ self: {
      }:
      mkDerivation {
        pname = "protobuf-simple";
-       version = "0.1.0.2";
-       sha256 = "ef2b79ffd3f11796027cbc5bbcfcc68a6d1948f66acd079bb60c6d6ed00622f3";
+       version = "0.1.0.4";
+       sha256 = "a20618342a6de7046935a347f5a7bfa17f7922140f5d57d7df0e7b0eb670c484";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -145568,6 +148122,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "proxied_0_3" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "proxied";
+       version = "0.3";
+       sha256 = "534d4d425f2834b39689e2af301bd5ff81d1619e65664a5efd797a0c88dbeb26";
+       libraryHaskellDepends = [ base ];
+       homepage = "https://github.com/RyanGlScott/proxied";
+       description = "Make functions consume Proxy instead of undefined";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "proxy-kindness" = callPackage
     ({ mkDerivation, base, tagged }:
      mkDerivation {
@@ -145761,6 +148328,23 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "publicsuffix_0_20170416" = callPackage
+    ({ mkDerivation, base, criterion, filepath, hspec, random
+     , template-haskell
+     }:
+     mkDerivation {
+       pname = "publicsuffix";
+       version = "0.20170416";
+       sha256 = "f05995b722e195dd33d996074cc05f51dd07165e8519c4e27215a59598411712";
+       libraryHaskellDepends = [ base filepath template-haskell ];
+       testHaskellDepends = [ base hspec ];
+       benchmarkHaskellDepends = [ base criterion random ];
+       homepage = "https://github.com/wereHamster/publicsuffix-haskell/";
+       description = "The publicsuffix list exposed as proper Haskell types";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "publicsuffixlist" = callPackage
     ({ mkDerivation, base, bytestring, cereal, containers, data-default
      , HUnit, idna, text, utf8-string
@@ -146200,8 +148784,8 @@ self: {
      }:
      mkDerivation {
        pname = "purescript";
-       version = "0.11.1";
-       sha256 = "359894f7b8d6ba28e3150fbba3988a14aedf68d55b1eb7d6b69111a4a119ec86";
+       version = "0.11.4";
+       sha256 = "98df8d401839645176a337b4dacf9014b6fcc986b64d74ebf578a5c395ab8d04";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -146216,19 +148800,29 @@ self: {
          unordered-containers utf8-string vector
        ];
        executableHaskellDepends = [
-         aeson ansi-terminal ansi-wl-pprint base base-compat blaze-html
-         boxes bytestring containers directory file-embed filepath gitrev
-         Glob haskeline http-types monad-logger mtl network
-         optparse-applicative parsec process protolude sourcemap split stm
-         text time transformers transformers-compat utf8-string wai
-         wai-websockets warp websockets
+         aeson aeson-better-errors ansi-terminal ansi-wl-pprint base
+         base-compat blaze-html bower-json boxes bytestring cheapskate clock
+         containers data-ordlist deepseq directory dlist edit-distance
+         file-embed filepath fsnotify gitrev Glob haskeline http-client
+         http-types language-javascript lens lifted-base monad-control
+         monad-logger mtl network optparse-applicative parallel parsec
+         pattern-arrows pipes pipes-http process protolude regex-tdfa safe
+         scientific semigroups sourcemap spdx split stm syb text time
+         transformers transformers-base transformers-compat
+         unordered-containers utf8-string vector wai wai-websockets warp
+         websockets
        ];
        testHaskellDepends = [
-         aeson aeson-better-errors base base-compat bower-json boxes
-         bytestring containers directory filepath Glob haskeline hspec
-         hspec-discover HUnit lens monad-logger mtl optparse-applicative
-         parsec process protolude silently stm text time transformers
-         transformers-compat utf8-string vector
+         aeson aeson-better-errors ansi-terminal base base-compat blaze-html
+         bower-json boxes bytestring cheapskate clock containers
+         data-ordlist deepseq directory dlist edit-distance filepath
+         fsnotify Glob haskeline hspec hspec-discover http-client http-types
+         HUnit language-javascript lens lifted-base monad-control
+         monad-logger mtl parallel parsec pattern-arrows pipes pipes-http
+         process protolude regex-tdfa safe scientific semigroups silently
+         sourcemap spdx split stm syb text time transformers
+         transformers-base transformers-compat unordered-containers
+         utf8-string vector
        ];
        doCheck = false;
        homepage = "http://www.purescript.org/";
@@ -146380,6 +148974,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "pushbullet" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, hspec, lens, text
+     , unordered-containers, wreq
+     }:
+     mkDerivation {
+       pname = "pushbullet";
+       version = "0.0.0";
+       sha256 = "5771ae314185d66f63652b1bdea2d5653ecc1ff01eccf1ec3de5caa4492a7e5b";
+       libraryHaskellDepends = [
+         aeson base bytestring lens text unordered-containers wreq
+       ];
+       testHaskellDepends = [ base hspec ];
+       description = "Simple push support for pushbullet";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "pushbullet-types" = callPackage
     ({ mkDerivation, aeson, base, http-api-data, microlens
      , microlens-th, scientific, text, time, unordered-containers
@@ -146437,15 +149047,15 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "pusher-http-haskell_1_2_0_0" = callPackage
+  "pusher-http-haskell_1_2_0_1" = callPackage
     ({ mkDerivation, aeson, base, base16-bytestring, bytestring
      , cryptohash, hashable, hspec, http-client, http-types, QuickCheck
      , text, time, transformers, unordered-containers
      }:
      mkDerivation {
        pname = "pusher-http-haskell";
-       version = "1.2.0.0";
-       sha256 = "372de78c2efaf60512d22311ad38bd6e968e9e29de171517438c8b129a4b7371";
+       version = "1.2.0.1";
+       sha256 = "e8a17fe91d9d81f32eace3a40ee3090a7dc926543ba1199b48d8e9bb1379a232";
        libraryHaskellDepends = [
          aeson base base16-bytestring bytestring cryptohash hashable
          http-client http-types text time transformers unordered-containers
@@ -146884,23 +149494,23 @@ self: {
 
   "qr-imager" = callPackage
     ({ mkDerivation, aeson, base, bytestring, cryptonite, directory
-     , haskell-qrencode, hspec, jose-jwt, JuicyPixels, lens, libqrencode
-     , MissingH, optparse-applicative, process, vector
+     , haskell-qrencode, hspec, jose-jwt, JuicyPixels, libqrencode
+     , microlens, MissingH, optparse-applicative, process, vector
      }:
      mkDerivation {
        pname = "qr-imager";
-       version = "1.0.0.3";
-       sha256 = "ff97d131702a42710d3c9a4a211055499495bd3319697908b4fa83c4a01381f4";
+       version = "1.0.1.0";
+       sha256 = "764be703283dfc074158c6a80ed52a23af0b933fddd191bc0c175af7eece3f48";
        revision = "1";
-       editedCabalFile = "9011708b42c261b2ec8a2f7a39315fbdff193d61c8d70c73f32b60e3428fe067";
+       editedCabalFile = "6688bfa62ae7757658ba419eb13ce7ac52cb5a9956428aea61040068a87568d4";
        libraryHaskellDepends = [
          aeson base bytestring cryptonite directory haskell-qrencode
-         jose-jwt JuicyPixels lens MissingH optparse-applicative process
-         vector
+         jose-jwt JuicyPixels microlens MissingH optparse-applicative
+         process vector
        ];
        libraryPkgconfigDepends = [ libqrencode ];
        testHaskellDepends = [ base hspec ];
-       homepage = "https://github.com/vmchale/QRImager#readme";
+       homepage = "https://github.com/vmchale/QR-writer";
        description = "Library to generate QR codes from bytestrings and objects";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -147370,8 +149980,8 @@ self: {
     ({ mkDerivation, base, QuickCheck, unfoldable-restricted }:
      mkDerivation {
        pname = "quickcheck-combinators";
-       version = "0.0.1";
-       sha256 = "bc334ff44f93e580e13cbe07c4ccf5924bf22df943934987f769ebec6800ec8d";
+       version = "0.0.2";
+       sha256 = "7fcd7b320a3d6d66b1db3cc8e63c21bc2b2b84329ffc490113ea7df61a711b65";
        libraryHaskellDepends = [ base QuickCheck unfoldable-restricted ];
        description = "Simple type-level combinators for augmenting QuickCheck instances";
        license = stdenv.lib.licenses.bsd3;
@@ -148113,8 +150723,8 @@ self: {
      }:
      mkDerivation {
        pname = "radium";
-       version = "0.6";
-       sha256 = "cc03e011817649426e527cb35f31b2daf7c2f8ab90c281d308dadddfd80f8500";
+       version = "0.7";
+       sha256 = "f8bafb43deaf0d656a8c170cb56861948af90d1c72cd99a2c9540c1eb6f1bc23";
        libraryHaskellDepends = [ base containers parsec ];
        testHaskellDepends = [
          base Cabal containers hspec parsec QuickCheck
@@ -148225,6 +150835,27 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "rails-session" = callPackage
+    ({ mkDerivation, base, base-compat, base64-bytestring, bytestring
+     , cryptonite, http-types, pbkdf, ruby-marshal, string-conv, tasty
+     , tasty-hspec, vector
+     }:
+     mkDerivation {
+       pname = "rails-session";
+       version = "0.1.0.0";
+       sha256 = "e897b191410818f2cb2b85985e547b87b250727cf23dc2a7d9effd5c28fdc2da";
+       libraryHaskellDepends = [
+         base base-compat base64-bytestring bytestring cryptonite http-types
+         pbkdf ruby-marshal string-conv vector
+       ];
+       testHaskellDepends = [
+         base bytestring ruby-marshal tasty tasty-hspec vector
+       ];
+       homepage = "http://github.com/iconnect/rails-session#readme";
+       description = "Decrypt Ruby on Rails sessions in Haskell";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "rainbow" = callPackage
     ({ mkDerivation, base, bytestring, lens-simple, process, QuickCheck
      , text
@@ -148344,12 +150975,15 @@ self: {
      }) {};
 
   "ralist" = callPackage
-    ({ mkDerivation, base }:
+    ({ mkDerivation, base, criterion, deepseq, hspec }:
      mkDerivation {
        pname = "ralist";
-       version = "0.1.0.0";
-       sha256 = "b1fc92a18b3890ae9899d6d29b3de298e5e49d0f9f6174e6f34c7e2e5a784c6c";
+       version = "0.2.0.0";
+       sha256 = "ab379b5d61661796a23448b7aaa7e5d6dc64aae4cb11835caa80d80d8f2df5b7";
        libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base hspec ];
+       benchmarkHaskellDepends = [ base criterion deepseq ];
+       homepage = "http://github.com/cartazio/ralist";
        description = "Random access list with a list compatible interface";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -148780,6 +151414,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "rank-product" = callPackage
+    ({ mkDerivation, base, random-fu }:
+     mkDerivation {
+       pname = "rank-product";
+       version = "0.2.0.1";
+       sha256 = "79ffdf09bd6eb37109ff80e965c94def0031bd8c0d8b1cdb9918d903e91fc0b6";
+       libraryHaskellDepends = [ base random-fu ];
+       homepage = "http://github.com/GregorySchwartz/rank-product#readme";
+       description = "Find the rank product of a data set";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "rank1dynamic" = callPackage
     ({ mkDerivation, base, binary, HUnit, test-framework
      , test-framework-hunit
@@ -148812,15 +151458,15 @@ self: {
      }) {};
 
   "rapid-term" = callPackage
-    ({ mkDerivation, ansi-terminal, base, clock, kan-extensions
-     , process, transformers, unix
+    ({ mkDerivation, base, clock, kan-extensions, process, transformers
+     , unix
      }:
      mkDerivation {
        pname = "rapid-term";
-       version = "0.1.1";
-       sha256 = "49cb96ef27649b3caf9fbac4a293f03ac884dd1ed0e96a3f0b6749ad1e8ed1a0";
+       version = "0.1.2";
+       sha256 = "28f0d811c0d140bd78241a9ba1e02abde2d49259bad60b9fbb336e2c3362c560";
        libraryHaskellDepends = [
-         ansi-terminal base clock kan-extensions process transformers unix
+         base clock kan-extensions process transformers unix
        ];
        homepage = "https://github.com/esoeylemez/rapid-term";
        description = "External terminal support for rapid";
@@ -149122,6 +151768,26 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "ratel_0_3_3" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, case-insensitive
+     , containers, http-client, http-client-tls, http-types, tasty
+     , tasty-hspec, text, uuid
+     }:
+     mkDerivation {
+       pname = "ratel";
+       version = "0.3.3";
+       sha256 = "c3210d5a1b43fa792d6e26a98497fd11f3fd16e1e6d4f58d0b4c61b3bc0adee2";
+       libraryHaskellDepends = [
+         aeson base bytestring case-insensitive containers http-client
+         http-client-tls http-types text uuid
+       ];
+       testHaskellDepends = [ base tasty tasty-hspec ];
+       homepage = "https://github.com/tfausak/ratel#readme";
+       description = "Notify Honeybadger about exceptions";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ratel-wai" = callPackage
     ({ mkDerivation, base, bytestring, case-insensitive, containers
      , http-client, ratel, wai
@@ -149188,7 +151854,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "rattletrap_2_2_0" = callPackage
+  "rattletrap_2_2_1" = callPackage
     ({ mkDerivation, aeson, aeson-casing, base, bimap, binary
      , binary-bits, bytestring, containers, data-binary-ieee754
      , filepath, tasty, tasty-hspec, template-haskell, temporary, text
@@ -149196,8 +151862,8 @@ self: {
      }:
      mkDerivation {
        pname = "rattletrap";
-       version = "2.2.0";
-       sha256 = "fe1ba54cce7d1d6c2b4bfe54f433bc61a31b15b866abae7ae2ee4a53b384f2c8";
+       version = "2.2.1";
+       sha256 = "aa2e970e4fa7d4d5c542aa1b89f2f8e814742a2d9087edbd19e0d527f41f219e";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -150362,6 +153028,8 @@ self: {
        pname = "recursion-schemes";
        version = "5.0.1";
        sha256 = "b7a97c72fd7edc2d85060626a1f7e3c56756868aec43510dfe41c1e1fa43ff03";
+       revision = "1";
+       editedCabalFile = "36143fa4a8c0474a6799fc6975a051cecfdafb72a34d43a10cd53e395286ae38";
        libraryHaskellDepends = [
          base base-orphans bifunctors comonad free semigroups
          template-haskell transformers transformers-compat
@@ -151176,6 +153844,34 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "refurb" = callPackage
+    ({ mkDerivation, ansi-wl-pprint, base, bytestring, classy-prelude
+     , composite-base, composite-opaleye, dlist, fast-logger, hspec
+     , lens, monad-logger, old-locale, opaleye, optparse-applicative
+     , postgresql-simple, process, product-profunctors, template-haskell
+     , text, these, thyme, vector-space
+     }:
+     mkDerivation {
+       pname = "refurb";
+       version = "0.2.2.0";
+       sha256 = "144e3a38291261c9db5cb5e5d8ab7fe32a12cb31ee93045c0fca3088e29dd462";
+       libraryHaskellDepends = [
+         ansi-wl-pprint base bytestring classy-prelude composite-base
+         composite-opaleye dlist fast-logger lens monad-logger old-locale
+         opaleye optparse-applicative postgresql-simple process
+         product-profunctors template-haskell text these thyme vector-space
+       ];
+       testHaskellDepends = [
+         ansi-wl-pprint base bytestring classy-prelude composite-base
+         composite-opaleye dlist fast-logger hspec lens monad-logger
+         old-locale opaleye optparse-applicative postgresql-simple process
+         product-profunctors template-haskell text these thyme vector-space
+       ];
+       homepage = "https://github.com/ConferHealth/refurb#readme";
+       description = "Tools for maintaining a database";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "regex" = callPackage
     ({ mkDerivation, array, base, base-compat, bytestring, containers
      , hashable, heredoc, regex-base, regex-pcre-builtin, regex-tdfa
@@ -151200,7 +153896,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "regex_0_10_0_3" = callPackage
+  "regex_1_0_0_0" = callPackage
     ({ mkDerivation, array, base, base-compat, bytestring, containers
      , hashable, regex-base, regex-tdfa, regex-tdfa-text
      , template-haskell, text, time, time-locale-compat, transformers
@@ -151208,8 +153904,8 @@ self: {
      }:
      mkDerivation {
        pname = "regex";
-       version = "0.10.0.3";
-       sha256 = "304230caeb624689d05e41350bfbfa02d3a49f4087088c3017eb35ce6832ba3a";
+       version = "1.0.0.0";
+       sha256 = "97029564bc1cf10b620cb6a04d55cabbc8ff82b3248b36d5205e906cfd6c8766";
        libraryHaskellDepends = [
          array base base-compat bytestring containers hashable regex-base
          regex-tdfa regex-tdfa-text template-haskell text time
@@ -151358,31 +154054,31 @@ self: {
 
   "regex-examples" = callPackage
     ({ mkDerivation, array, base, base-compat, bytestring, containers
-     , directory, hashable, heredoc, http-conduit, regex, regex-base
-     , regex-pcre-builtin, regex-tdfa, regex-tdfa-text, regex-with-pcre
-     , shelly, smallcheck, tasty, tasty-hunit, tasty-smallcheck
-     , template-haskell, text, time, time-locale-compat, transformers
-     , unordered-containers
+     , directory, filepath, hashable, heredoc, http-conduit, regex
+     , regex-base, regex-pcre-builtin, regex-tdfa, regex-tdfa-text
+     , regex-with-pcre, shelly, smallcheck, tasty, tasty-hunit
+     , tasty-smallcheck, template-haskell, text, time
+     , time-locale-compat, transformers, unordered-containers
      }:
      mkDerivation {
        pname = "regex-examples";
-       version = "0.10.0.3";
-       sha256 = "88a3ead02eed5054aaa19c09671b24e5ba0e3892f2e64e8bec5ba948d428bb54";
+       version = "1.0.0.0";
+       sha256 = "88aa93a443b8969e19d2150625098343e47d3425cf993544a6ddc1de2f5abe0c";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         array base base-compat bytestring containers directory hashable
-         heredoc http-conduit regex regex-base regex-pcre-builtin regex-tdfa
-         regex-tdfa-text regex-with-pcre shelly smallcheck tasty tasty-hunit
-         tasty-smallcheck template-haskell text time time-locale-compat
-         transformers unordered-containers
+         array base base-compat bytestring containers directory filepath
+         hashable heredoc http-conduit regex regex-base regex-pcre-builtin
+         regex-tdfa regex-tdfa-text regex-with-pcre shelly smallcheck tasty
+         tasty-hunit tasty-smallcheck template-haskell text time
+         time-locale-compat transformers unordered-containers
        ];
        testHaskellDepends = [
-         array base base-compat bytestring containers directory hashable
-         heredoc http-conduit regex regex-base regex-pcre-builtin regex-tdfa
-         regex-tdfa-text regex-with-pcre shelly smallcheck tasty tasty-hunit
-         tasty-smallcheck template-haskell text time time-locale-compat
-         transformers unordered-containers
+         array base base-compat bytestring containers directory filepath
+         hashable heredoc http-conduit regex regex-base regex-pcre-builtin
+         regex-tdfa regex-tdfa-text regex-with-pcre shelly smallcheck tasty
+         tasty-hunit tasty-smallcheck template-haskell text time
+         time-locale-compat transformers unordered-containers
        ];
        homepage = "http://regex.uk";
        description = "Tutorial, tests and example programs for regex";
@@ -151645,8 +154341,8 @@ self: {
      }:
      mkDerivation {
        pname = "regex-with-pcre";
-       version = "0.10.0.3";
-       sha256 = "0fed51f7ee7d142b090c1f71a38c99fa51aa7cf74ec05bfea55fdb4a6feb10da";
+       version = "1.0.0.0";
+       sha256 = "67bb2649f1b3bf4c934202b8765e71e5ea37b777d7d575e87c881dffd453efb5";
        libraryHaskellDepends = [
          base base-compat bytestring containers regex regex-base
          regex-pcre-builtin regex-tdfa template-haskell transformers
@@ -152102,8 +154798,31 @@ self: {
      }:
      mkDerivation {
        pname = "relational-query";
-       version = "0.8.3.5";
-       sha256 = "473145c2bf23b03711a307b4dd6a22609606327e0c15f8f27f874ee783f7f1a6";
+       version = "0.8.3.6";
+       sha256 = "227d39084a0d27fdb135b4e4ee48a0fbcbd9c3e99d69ba8429c2187be6fdf94b";
+       libraryHaskellDepends = [
+         array base bytestring containers dlist names-th persistable-record
+         sql-words template-haskell text th-reify-compat time
+         time-locale-compat transformers
+       ];
+       testHaskellDepends = [
+         base containers quickcheck-simple transformers
+       ];
+       homepage = "http://khibino.github.io/haskell-relational-record/";
+       description = "Typeful, Modular, Relational, algebraic query engine";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "relational-query_0_9_0_1" = callPackage
+    ({ mkDerivation, array, base, bytestring, containers, dlist
+     , names-th, persistable-record, quickcheck-simple, sql-words
+     , template-haskell, text, th-reify-compat, time, time-locale-compat
+     , transformers
+     }:
+     mkDerivation {
+       pname = "relational-query";
+       version = "0.9.0.1";
+       sha256 = "2dedf32ee73538fc3608bbbc062dd3f2daf6572d4282972cd872c57a772257c3";
        libraryHaskellDepends = [
          array base bytestring containers dlist names-th persistable-record
          sql-words template-haskell text th-reify-compat time
@@ -152115,6 +154834,7 @@ self: {
        homepage = "http://khibino.github.io/haskell-relational-record/";
        description = "Typeful, Modular, Relational, algebraic query engine";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "relational-query-HDBC" = callPackage
@@ -152137,6 +154857,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "relational-query-HDBC_0_6_1_0" = callPackage
+    ({ mkDerivation, base, containers, convertible, dlist, HDBC
+     , HDBC-session, names-th, persistable-record, relational-query
+     , relational-schemas, template-haskell, th-data-compat
+     , transformers
+     }:
+     mkDerivation {
+       pname = "relational-query-HDBC";
+       version = "0.6.1.0";
+       sha256 = "377ce34c521df92099a82915a16b776aa14e9dc0a5c1e644a91150a0d3e29d0c";
+       libraryHaskellDepends = [
+         base containers convertible dlist HDBC HDBC-session names-th
+         persistable-record relational-query relational-schemas
+         template-haskell th-data-compat transformers
+       ];
+       homepage = "http://khibino.github.io/haskell-relational-record/";
+       description = "HDBC instance of relational-query and typed query interface for HDBC";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "relational-record" = callPackage
     ({ mkDerivation, base, persistable-types-HDBC-pg, relational-query
      , relational-query-HDBC
@@ -152161,8 +154902,8 @@ self: {
      }:
      mkDerivation {
        pname = "relational-record-examples";
-       version = "0.3.1.1";
-       sha256 = "56d726b946e454390b4efbda9e7effe11343c88aeb6390f9516b51445e96a242";
+       version = "0.3.1.4";
+       sha256 = "e0bced76ceb888bd7c2e38afc0df18468f272af8ee68de15dddbcc9ea7809f67";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -152191,6 +154932,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "relational-schemas_0_1_3_3" = callPackage
+    ({ mkDerivation, base, bytestring, containers, relational-query
+     , template-haskell, time
+     }:
+     mkDerivation {
+       pname = "relational-schemas";
+       version = "0.1.3.3";
+       sha256 = "3aaf158b18f4dea23ff42b028224ec81f72c2c6934769a639d4291cf04ea0bc3";
+       libraryHaskellDepends = [
+         base bytestring containers relational-query template-haskell time
+       ];
+       homepage = "http://khibino.github.io/haskell-relational-record/";
+       description = "RDBMSs' schema templates for relational-query";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "relative-date" = callPackage
     ({ mkDerivation, base, concatenative, datetime, mtl, parsec, time
      }:
@@ -153005,8 +155763,8 @@ self: {
        pname = "req";
        version = "0.2.0";
        sha256 = "e64e56622f1ec06df83e2c8516effa49058b4d7196c28127ab98190cc320ebbc";
-       revision = "1";
-       editedCabalFile = "b37d82306c1346da0bbaa129073d8cc8d7fa86df7ae938fb45de47925b8ed6b0";
+       revision = "2";
+       editedCabalFile = "5895d467759fc89c2007336012c7ab38b6af831e925fce72fb98cd04be602417";
        libraryHaskellDepends = [
          aeson authenticate-oauth base blaze-builder bytestring
          case-insensitive connection data-default-class http-api-data
@@ -153994,6 +156752,34 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "ridley" = callPackage
+    ({ mkDerivation, async, base, bytestring, containers, ekg-core
+     , ekg-prometheus-adapter, http-client, inline-c, katip, microlens
+     , microlens-th, mtl, process, prometheus, raw-strings-qq, shelly
+     , string-conv, tasty, tasty-hunit, tasty-quickcheck
+     , template-haskell, text, time, transformers, unix, vector
+     , wai-middleware-metrics
+     }:
+     mkDerivation {
+       pname = "ridley";
+       version = "0.3.0.0";
+       sha256 = "60d4cfc2e22099b4335bdf427d499b46b6b18f4c29e7c68a148061bd4e130f8d";
+       libraryHaskellDepends = [
+         async base containers ekg-core ekg-prometheus-adapter inline-c
+         katip microlens microlens-th mtl process prometheus raw-strings-qq
+         shelly template-haskell text time transformers unix vector
+         wai-middleware-metrics
+       ];
+       testHaskellDepends = [
+         base bytestring containers ekg-core ekg-prometheus-adapter
+         http-client microlens prometheus string-conv tasty tasty-hunit
+         tasty-quickcheck text
+       ];
+       homepage = "https://github.com/iconnect/ridley#readme";
+       description = "Quick metrics to grow you app strong";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "riemann" = callPackage
     ({ mkDerivation, base, bytestring, cereal, containers, data-default
      , directory, doctest, errors, filepath, http-client, HUnit, lens
@@ -155431,8 +158217,8 @@ self: {
      }:
      mkDerivation {
        pname = "ruby-marshal";
-       version = "0.1.1";
-       sha256 = "d61ceb301b82e439b064eb4b1b84b1bb21c4ac9dc0239a0dc8d361cfe1b1800e";
+       version = "0.1.2";
+       sha256 = "37bc92262a7b0be2a608566f3523b37ac2e017611ff591d3f722d588f509408f";
        libraryHaskellDepends = [
          base bytestring cereal containers mtl string-conv vector
        ];
@@ -156599,8 +159385,8 @@ self: {
      }:
      mkDerivation {
        pname = "sbp";
-       version = "2.1.7";
-       sha256 = "481f1bb36ecd467b2e60d2a97c6393384d78b96ece7afd644d96641ee51bb32e";
+       version = "2.2.0";
+       sha256 = "4964d3c77c2b9ddc0da60a2cbd26820628f796f463ca41d6fc243e3c93ad69bd";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -157219,32 +160005,8 @@ self: {
      }:
      mkDerivation {
        pname = "scientific";
-       version = "0.3.4.10";
-       sha256 = "4d3b8ae5d741facfb0e84a2f1b6964a7ab3817269568c37de44f1be5cc0ff1a1";
-       libraryHaskellDepends = [
-         base binary bytestring containers deepseq ghc-prim hashable
-         integer-gmp integer-logarithms text vector
-       ];
-       testHaskellDepends = [
-         base binary bytestring QuickCheck smallcheck tasty tasty-ant-xml
-         tasty-hunit tasty-quickcheck tasty-smallcheck text
-       ];
-       benchmarkHaskellDepends = [ base criterion ];
-       homepage = "https://github.com/basvandijk/scientific";
-       description = "Numbers represented using scientific notation";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "scientific_0_3_4_11" = callPackage
-    ({ mkDerivation, base, binary, bytestring, containers, criterion
-     , deepseq, ghc-prim, hashable, integer-gmp, integer-logarithms
-     , QuickCheck, smallcheck, tasty, tasty-ant-xml, tasty-hunit
-     , tasty-quickcheck, tasty-smallcheck, text, vector
-     }:
-     mkDerivation {
-       pname = "scientific";
-       version = "0.3.4.11";
-       sha256 = "990f4ba464606eb2bf07059c527b8e1e7aa11e2f0d9e2f3c0b4e6aec9f9e7ed4";
+       version = "0.3.4.12";
+       sha256 = "26fa8f757082fb686b356fb6d6d3c50e6dcbe47436c29317547e6914922e955d";
        libraryHaskellDepends = [
          base binary bytestring containers deepseq ghc-prim hashable
          integer-gmp integer-logarithms text vector
@@ -157257,7 +160019,6 @@ self: {
        homepage = "https://github.com/basvandijk/scientific";
        description = "Numbers represented using scientific notation";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "scion" = callPackage
@@ -157407,8 +160168,8 @@ self: {
        pname = "scotty";
        version = "0.11.0";
        sha256 = "892203c937ccf1279f5005ddb78ebea84629b80687a1e38fc118b38011a386ed";
-       revision = "4";
-       editedCabalFile = "0d6fc88c2396a69e0d0f23ccad17b7b47d548f67bc23e417aad2940fdd71c5a1";
+       revision = "5";
+       editedCabalFile = "ae76edc7f78a68ecf982aaa2d4421e80796a365fbb13c38b1cf0f77c3586e482";
        libraryHaskellDepends = [
          aeson base blaze-builder bytestring case-insensitive
          data-default-class fail http-types monad-control mtl nats network
@@ -158100,8 +160861,8 @@ self: {
      }:
      mkDerivation {
        pname = "seakale-postgresql";
-       version = "0.2.0.1";
-       sha256 = "c214ab985c0bb5174acceaec0d5952e3bd01f6b998dbfd4025203bf4a78643b9";
+       version = "0.3.0.0";
+       sha256 = "d87affc23848b8d79033a89a4eb6d090d1be7ad1438debbc714e602f04886a7c";
        libraryHaskellDepends = [
          base bytestring free mtl postgresql-libpq seakale time
        ];
@@ -158393,6 +161154,53 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {sedna = null;};
 
+  "selda" = callPackage
+    ({ mkDerivation, base, exceptions, hashable, mtl, psqueues, text
+     , time, unordered-containers
+     }:
+     mkDerivation {
+       pname = "selda";
+       version = "0.1.2.0";
+       sha256 = "8eedfc94f4e792756710bdd50ec89dd4655dce25956cf0015ea9f75fe4116385";
+       libraryHaskellDepends = [
+         base exceptions hashable mtl psqueues text time
+         unordered-containers
+       ];
+       homepage = "https://github.com/valderman/selda";
+       description = "Type-safe, high-level EDSL for interacting with relational databases";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
+  "selda-postgresql" = callPackage
+    ({ mkDerivation, base, bytestring, exceptions, postgresql-libpq
+     , selda, text
+     }:
+     mkDerivation {
+       pname = "selda-postgresql";
+       version = "0.1.1.0";
+       sha256 = "d7424f901d1c46ef50e55f2ad0e97d8304d2ef8c674df384732761f229fe8386";
+       libraryHaskellDepends = [
+         base bytestring exceptions postgresql-libpq selda text
+       ];
+       homepage = "https://github.com/valderman/selda";
+       description = "PostgreSQL backend for the Selda database EDSL";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
+  "selda-sqlite" = callPackage
+    ({ mkDerivation, base, direct-sqlite, exceptions, selda, text }:
+     mkDerivation {
+       pname = "selda-sqlite";
+       version = "0.1.1.0";
+       sha256 = "ed7d175665d65424b63412b47a55d6b660c4b8983e2251cff334f57d531f0b20";
+       libraryHaskellDepends = [
+         base direct-sqlite exceptions selda text
+       ];
+       homepage = "https://github.com/valderman/selda";
+       description = "SQLite backend for the Selda database EDSL";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "select" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -158575,6 +161383,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "semigroupoids_5_2" = callPackage
+    ({ mkDerivation, base, base-orphans, bifunctors, Cabal
+     , cabal-doctest, comonad, containers, contravariant, distributive
+     , doctest, semigroups, tagged, transformers, transformers-compat
+     }:
+     mkDerivation {
+       pname = "semigroupoids";
+       version = "5.2";
+       sha256 = "d957f8804ca0dc2b85ef68edcab92dba9cd5d61ea0dddc41c173dda6f97791bc";
+       setupHaskellDepends = [ base Cabal cabal-doctest ];
+       libraryHaskellDepends = [
+         base base-orphans bifunctors comonad containers contravariant
+         distributive semigroups tagged transformers transformers-compat
+       ];
+       testHaskellDepends = [ base doctest ];
+       homepage = "http://github.com/ekmett/semigroupoids";
+       description = "Semigroupoids: Category sans id";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "semigroupoids-syntax" = callPackage
     ({ mkDerivation, base, comonad, containers, contravariant
      , directory, distributive, doctest, filepath, QuickCheck
@@ -158609,6 +161438,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "semigroups_0_18_3" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "semigroups";
+       version = "0.18.3";
+       sha256 = "35297c986872406e2efe29620c623727369f8c578e2f9c22998d575996e5a9ca";
+       libraryHaskellDepends = [ base ];
+       homepage = "http://github.com/ekmett/semigroups/";
+       description = "Anything that associates";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "semigroups-actions" = callPackage
     ({ mkDerivation, base, containers, semigroups }:
      mkDerivation {
@@ -158926,8 +161768,8 @@ self: {
     ({ mkDerivation, base, io-streams, seqid }:
      mkDerivation {
        pname = "seqid-streams";
-       version = "0.5.0";
-       sha256 = "3b553c7bf0ae0ce770e70ab970739fe815831d025c6cc32d7c351b710a9de2a6";
+       version = "0.6.1";
+       sha256 = "cd19b6fc73682e276db51c72452f875e710d74fa348695daa4c6caefbc85909d";
        libraryHaskellDepends = [ base io-streams seqid ];
        homepage = "https://github.com/LukeHoersten/seqid-streams";
        description = "Sequence ID IO-Streams";
@@ -159381,8 +162223,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-auth-cookie";
-       version = "0.4.3.3";
-       sha256 = "40376b033b2bd4d78ad327d0b83c2d2dcce05406fb5fbb4fd49e306f30dfee10";
+       version = "0.4.4";
+       sha256 = "7e49a7d1b71b19544a200b0d13968878ef5f73bcd5efd4bf248834b3255dd4ca";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -159401,6 +162243,36 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "servant-auth-cookie_0_5_0_1" = callPackage
+    ({ mkDerivation, base, base64-bytestring, blaze-builder, bytestring
+     , cereal, cookie, criterion, cryptonite, data-default, deepseq
+     , exceptions, hspec, http-api-data, http-types, memory, mtl
+     , QuickCheck, servant, servant-server, tagged, time, transformers
+     , wai
+     }:
+     mkDerivation {
+       pname = "servant-auth-cookie";
+       version = "0.5.0.1";
+       sha256 = "05933224b1eeb1c3e44e1c01c337fade7c9da864a0ed1727118fd3d9aa10c1ad";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base base64-bytestring blaze-builder bytestring cereal cookie
+         cryptonite data-default exceptions http-api-data http-types memory
+         mtl servant servant-server tagged time transformers wai
+       ];
+       testHaskellDepends = [
+         base bytestring cereal cryptonite data-default deepseq hspec
+         QuickCheck servant-server time transformers
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring criterion cryptonite servant-server
+       ];
+       description = "Authentication via encrypted cookies";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "servant-auth-docs" = callPackage
     ({ mkDerivation, base, doctest, Glob, hspec, lens, QuickCheck
      , servant, servant-auth, servant-docs, text, yaml
@@ -159526,8 +162398,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-auth-token";
-       version = "0.4.2.0";
-       sha256 = "4e43edd4241521b366c9a55cfd1fce1e8f9e3963037257f3552f8c946d8ed668";
+       version = "0.4.4.0";
+       sha256 = "60cc885befaf7a53d2252617e982d8f6a89c43051438a6b1cf3c102786c03a38";
        libraryHaskellDepends = [
          aeson-injector base bytestring containers mtl pwstore-fast
          servant-auth-token-api servant-server text time transformers uuid
@@ -159567,8 +162439,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-auth-token-api";
-       version = "0.4.1.1";
-       sha256 = "70c5ab5e1bbd3b29e9b8dcc558d08c6688fdd4fee4412ffef964454386dadfda";
+       version = "0.4.2.0";
+       sha256 = "2c9349c10789fccc0b11249305748b7868daa3e1f639b5be8c7c2b075246236c";
        libraryHaskellDepends = [
          aeson aeson-injector base lens raw-strings-qq servant servant-docs
          servant-swagger swagger2 text
@@ -160054,6 +162926,8 @@ self: {
        pname = "servant-js";
        version = "0.9.3";
        sha256 = "086905a2c5d8903910b415b71f007c28cb6de9bccc4ab273e7ed944ceeca2cc2";
+       revision = "1";
+       editedCabalFile = "d1012bbe974704eef8d067abd6051846b8262290911c54f87fb1f10f1d9e6dcf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -160205,6 +163079,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "servant-options" = callPackage
+    ({ mkDerivation, base, bytestring, http-types, servant-foreign
+     , servant-server, text, wai
+     }:
+     mkDerivation {
+       pname = "servant-options";
+       version = "0.1.0.0";
+       sha256 = "5cfe2e60ec6267c80dfd2c5ccfb2ce8d9d13b2bcaf646ee80de6bc32c8f49fb3";
+       libraryHaskellDepends = [
+         base bytestring http-types servant-foreign servant-server text wai
+       ];
+       homepage = "https://github.com/sordina/servant-options";
+       description = "Provide responses to OPTIONS requests for Servant applications";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "servant-pandoc" = callPackage
     ({ mkDerivation, base, bytestring, http-media, lens, pandoc-types
      , servant-docs, text, unordered-containers
@@ -160392,8 +163282,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-ruby";
-       version = "0.2.0.0";
-       sha256 = "5ac0095edc4254edc3db4f4a0913669391f838a8a6b4c9f78ff00daa2b467e17";
+       version = "0.2.1.0";
+       sha256 = "90b89a911a4a8741b8cbb63af21e03d81883b913a5f380278cdfc82f36aa89e1";
        libraryHaskellDepends = [ base casing lens servant-foreign text ];
        testHaskellDepends = [ base doctest ];
        homepage = "https://github.com/joneshf/servant-ruby#readme";
@@ -160558,6 +163448,33 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "servant-static-th" = callPackage
+    ({ mkDerivation, base, blaze-html, bytestring, containers
+     , directory, doctest, filepath, Glob, hspec-wai, http-media
+     , semigroups, servant, servant-blaze, servant-server, tasty
+     , tasty-hspec, tasty-hunit, template-haskell, text, wai
+     }:
+     mkDerivation {
+       pname = "servant-static-th";
+       version = "0.1.0.3";
+       sha256 = "9d1bf11e2063abd6a281f51337c16e05edb7fd9cb7c071c7aeac204be4351e94";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base blaze-html bytestring containers directory filepath http-media
+         semigroups servant servant-blaze servant-server template-haskell
+         text
+       ];
+       testHaskellDepends = [
+         base blaze-html bytestring directory doctest filepath Glob
+         hspec-wai servant servant-blaze servant-server tasty tasty-hspec
+         tasty-hunit wai
+       ];
+       homepage = "https://github.com/cdepillabout/servant-static-th";
+       description = "Embed a directory of static files in your Servant server";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "servant-subscriber" = callPackage
     ({ mkDerivation, aeson, async, attoparsec, base, blaze-builder
      , bytestring, case-insensitive, containers, directory, filepath
@@ -161579,6 +164496,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "shake-path" = callPackage
+    ({ mkDerivation, base, path, path-io, shake }:
+     mkDerivation {
+       pname = "shake-path";
+       version = "0.0.0.0";
+       sha256 = "eb6290368e92a637a5a3651c084790bc84e8cd614707e6227dde6b98ea761a33";
+       libraryHaskellDepends = [ base path path-io shake ];
+       homepage = "http://cs-syd.eu";
+       description = "path alternatives to shake functions";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "shake-persist" = callPackage
     ({ mkDerivation, base, binary, directory, shake, template-haskell
      }:
@@ -161632,8 +164561,8 @@ self: {
     ({ mkDerivation, base, basic-prelude, directory, shake }:
      mkDerivation {
        pname = "shakers";
-       version = "0.0.16";
-       sha256 = "d6f7d889b2030acbc12a233d1666828559c5c6d35ec688b9fc62ebed86eafeef";
+       version = "0.0.17";
+       sha256 = "b8705c18de95396e5b816f9f72967fbbc181579f382021cda6e2f7bd7b1cb5e3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base basic-prelude directory shake ];
@@ -161670,6 +164599,33 @@ self: {
        maintainers = with stdenv.lib.maintainers; [ psibi ];
      }) {};
 
+  "shakespeare_2_0_13" = 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.13";
+       sha256 = "a67e7f3186a7f33b90f97377b5e68ed20f76daedc564fcf578cf17a7f7ac580e";
+       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
+       ];
+       homepage = "http://www.yesodweb.com/book/shakespearean-templates";
+       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
@@ -162160,8 +165116,8 @@ self: {
      }:
      mkDerivation {
        pname = "shikensu";
-       version = "0.2.1";
-       sha256 = "3984671ee884f828df248aa5d9033ece376ecb30cb0f689a4a4aa10a93d697f8";
+       version = "0.3.2";
+       sha256 = "74c76ed29a086f3d8c2d4a017c358cf78505e0b862da6d931f2202b52b51301f";
        libraryHaskellDepends = [
          aeson base bytestring directory filepath flow Glob text
          unordered-containers
@@ -163006,19 +165962,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "simple-log_0_6_0" = callPackage
-    ({ mkDerivation, async, base, containers, data-default, deepseq
-     , directory, exceptions, filepath, hformat, mtl, SafeSemaphore
+  "simple-log_0_8_5" = callPackage
+    ({ mkDerivation, async, base, base-unicode-symbols, containers
+     , data-default, deepseq, directory, exceptions, filepath, hformat
+     , hspec, microlens, microlens-platform, mmorph, mtl, SafeSemaphore
      , text, time, transformers
      }:
      mkDerivation {
        pname = "simple-log";
-       version = "0.6.0";
-       sha256 = "e22ba314bcfc3be5594db3d2a7ad505dcbf7b89d91e6f71f9921d80b76fadc5d";
+       version = "0.8.5";
+       sha256 = "f435eafb411f38ab43c09c034bb3829acbbb51adcb96ebb6436d5409a967c9a5";
        libraryHaskellDepends = [
-         async base containers data-default deepseq directory exceptions
-         filepath hformat mtl SafeSemaphore text time transformers
+         async base base-unicode-symbols containers data-default deepseq
+         directory exceptions filepath hformat microlens microlens-platform
+         mmorph mtl SafeSemaphore text time transformers
        ];
+       testHaskellDepends = [ base hspec microlens-platform text ];
        homepage = "http://github.com/mvoidex/simple-log";
        description = "Simple log for Haskell";
        license = stdenv.lib.licenses.bsd3;
@@ -163997,8 +166956,8 @@ self: {
      }:
      mkDerivation {
        pname = "skylark-client";
-       version = "0.1.5";
-       sha256 = "e50e874a1f16ce71721d92118740853c53ee8822d43e173e670b47297dbb3ff7";
+       version = "0.1.7";
+       sha256 = "070a1836271311e4c848bee4c69a042a7696b142fcc42df811a0a79bb28ebda2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -164044,7 +167003,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "skylighting_0_3_1" = callPackage
+  "skylighting_0_3_2" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, binary, blaze-html
      , bytestring, case-insensitive, containers, criterion, Diff
      , directory, filepath, HUnit, hxt, mtl, pretty-show, random
@@ -164053,8 +167012,8 @@ self: {
      }:
      mkDerivation {
        pname = "skylighting";
-       version = "0.3.1";
-       sha256 = "d93ee3b15d74ab66fd729c4b56741c052fe331b4cfc78bad2a433827417d4f74";
+       version = "0.3.2";
+       sha256 = "fe48ff596d3971cbb285a1ce677d1527285845feaed16d46fcb49b8ad50767bc";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -164363,6 +167322,8 @@ self: {
        pname = "slug";
        version = "0.1.6";
        sha256 = "c4d589b30d7d4788ed5dbf1a24652a5f880751a0250707bf8ac82a3714734692";
+       revision = "1";
+       editedCabalFile = "7255ff29461a929bd2149a46d657a39b054997412032b82642a50d120d6faae0";
        libraryHaskellDepends = [
          aeson base exceptions http-api-data path-pieces persistent
          QuickCheck text
@@ -164630,6 +167591,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "smoothie_0_4_2_7" = callPackage
+    ({ mkDerivation, aeson, base, linear, text, vector }:
+     mkDerivation {
+       pname = "smoothie";
+       version = "0.4.2.7";
+       sha256 = "84561c3463d870312fafb48680ef0122688814fcbb2eb605570c48cceb64deb2";
+       libraryHaskellDepends = [ aeson base linear text vector ];
+       homepage = "https://github.com/phaazon/smoothie";
+       description = "Smooth curves via several interpolation modes";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "smsaero" = callPackage
     ({ mkDerivation, aeson, base, containers, http-api-data
      , http-client, servant, servant-client, servant-docs, text, time
@@ -165200,10 +168174,8 @@ self: {
      }:
      mkDerivation {
        pname = "snap-server";
-       version = "1.0.1.1";
-       sha256 = "878d83a815b9cc8f3d282ef6fafc441528b5f7819147f17f0c1b1f9904146c70";
-       revision = "1";
-       editedCabalFile = "5b9b8071df32b8590c28df9cf4eb4afd77ee4554ff536b7e5a1d617f5e32f9a7";
+       version = "1.0.2.0";
+       sha256 = "677f29595331aeee82b5bbbe3fdbe228093c387c6527d4b70c5492de0c5bd549";
        configureFlags = [ "-fopenssl" ];
        isLibrary = true;
        isExecutable = true;
@@ -166585,6 +169557,32 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "socketed" = callPackage
+    ({ mkDerivation, async, base, bytestring, conduit-combinators
+     , conduit-extra, http-types, MissingH, optparse-applicative, stm
+     , stm-chans, stm-conduit, template-haskell, text, wai
+     , wai-websockets, warp, websockets
+     }:
+     mkDerivation {
+       pname = "socketed";
+       version = "0.1.0.0";
+       sha256 = "71410dfc76ec523e3744ddce3a32d69e4566f36b3c477c63440c1cda488e974f";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         async base bytestring conduit-combinators conduit-extra http-types
+         MissingH optparse-applicative stm stm-chans stm-conduit
+         template-haskell text wai wai-websockets warp websockets
+       ];
+       executableHaskellDepends = [
+         async base bytestring conduit-combinators conduit-extra http-types
+         MissingH optparse-applicative stm stm-chans stm-conduit
+         template-haskell text wai wai-websockets warp websockets
+       ];
+       description = "simpe tool to serve piped data over http and websocket";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "socketio" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, attoparsec, base
      , blaze-builder, bytestring, conduit, conduit-extra, http-types
@@ -167393,8 +170391,8 @@ self: {
     ({ mkDerivation, base, cmdargs, containers, leancheck }:
      mkDerivation {
        pname = "speculate";
-       version = "0.2.3";
-       sha256 = "d7db98c9cf05b393469f843535e3255d6f16ab3cc82244ccdb77c25a36e9a127";
+       version = "0.2.4";
+       sha256 = "7cafbb4269289cadef7562059b3d6bbce09e933cc41369c68e7f991f8a7d1e14";
        libraryHaskellDepends = [ base cmdargs containers leancheck ];
        testHaskellDepends = [ base cmdargs containers leancheck ];
        benchmarkHaskellDepends = [ base cmdargs containers leancheck ];
@@ -168591,6 +171589,8 @@ self: {
        pname = "stable-memo";
        version = "0.3.1";
        sha256 = "fd8ddc1d5a6200b8cfb192195d0f078545d85088bd6f04aa3f76b310063a65e7";
+       revision = "1";
+       editedCabalFile = "3246671703f40d04d1f1f0087cfce88a8ba97b5b9c3774188915b9bd2e339ff2";
        libraryHaskellDepends = [ base ghc-prim hashtables ];
        description = "Memoization based on argument identity";
        license = stdenv.lib.licenses.mit;
@@ -168633,6 +171633,8 @@ self: {
        pname = "stache";
        version = "0.2.2";
        sha256 = "66c75aaf078dc778b2e33ddef4850107b5b488fd966c81c7e2f133539276b86e";
+       revision = "1";
+       editedCabalFile = "297114f7d0e3404be169b5abb243938cf531b04bf24163e81e2beaa8464da667";
        libraryHaskellDepends = [
          aeson base bytestring containers deepseq directory exceptions
          filepath megaparsec mtl template-haskell text unordered-containers
@@ -169277,6 +172279,19 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "state-plus_0_1_3" = callPackage
+    ({ mkDerivation, base, checkers, mtl, QuickCheck }:
+     mkDerivation {
+       pname = "state-plus";
+       version = "0.1.3";
+       sha256 = "a990264ab1d26aee077b035c1959fb792e5b015e46010d08dd065dea2a4cb0bc";
+       libraryHaskellDepends = [ base mtl ];
+       testHaskellDepends = [ base checkers mtl QuickCheck ];
+       description = "MonadPlus for StateT";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "state-record" = callPackage
     ({ mkDerivation, base, mtl, template-haskell }:
      mkDerivation {
@@ -169608,25 +172623,27 @@ self: {
      }) {};
 
   "staversion" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, containers, directory
-     , filepath, hspec, http-client, http-client-tls, http-types
-     , megaparsec, optparse-applicative, QuickCheck, text, transformers
+    ({ mkDerivation, aeson, ansi-wl-pprint, base, bytestring, Cabal
+     , containers, directory, filepath, hspec, http-client
+     , http-client-tls, http-types, megaparsec, optparse-applicative
+     , pretty, QuickCheck, semigroups, text, transformers
      , transformers-compat, unordered-containers, yaml
      }:
      mkDerivation {
        pname = "staversion";
-       version = "0.1.3.2";
-       sha256 = "d3281fe9b7aa3795251c7e45d6364bfb051ffa3bee44d691f40c0c928fe886e0";
+       version = "0.1.4.0";
+       sha256 = "f09fd5ad180ddac974201de99eaf74ff6d63cc172857f9d41379eb1707eda09a";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base bytestring containers directory filepath http-client
-         http-client-tls http-types megaparsec optparse-applicative text
-         transformers transformers-compat unordered-containers yaml
+         aeson ansi-wl-pprint base bytestring Cabal containers directory
+         filepath http-client http-client-tls http-types megaparsec
+         optparse-applicative pretty semigroups text transformers
+         transformers-compat unordered-containers yaml
        ];
        executableHaskellDepends = [ base ];
        testHaskellDepends = [
-         base bytestring filepath hspec QuickCheck text
+         base bytestring Cabal filepath hspec QuickCheck semigroups text
        ];
        homepage = "https://github.com/debug-ito/staversion";
        description = "What version is the package X in stackage lts-Y.ZZ?";
@@ -169856,6 +172873,8 @@ self: {
        pname = "stm";
        version = "2.4.4.1";
        sha256 = "8f999095ed8d50d2056fc6e185035ee8166c50751e1af8de02ac38d382bf3384";
+       revision = "1";
+       editedCabalFile = "49cfd80cba95f84d42eda0045346c8a567df5ce434d4da3d26ac3e977826fc4f";
        libraryHaskellDepends = [ array base ];
        description = "Software Transactional Memory";
        license = stdenv.lib.licenses.bsd3;
@@ -170370,7 +173389,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "store" = callPackage
+  "store_0_3_1" = callPackage
     ({ mkDerivation, array, async, base, base-orphans
      , base64-bytestring, bytestring, cereal, cereal-vector, conduit
      , containers, contravariant, criterion, cryptohash, deepseq
@@ -170384,8 +173403,8 @@ self: {
      }:
      mkDerivation {
        pname = "store";
-       version = "0.4.0";
-       sha256 = "bdbbc77a10941ee721c4c3fb456ec236ada3be51a890415c00a57cd4f06973cc";
+       version = "0.3.1";
+       sha256 = "ec1005ebaf7334f6e5166315f8406553c94cffa8e06bc1d60f372c0d46ceda90";
        libraryHaskellDepends = [
          array async base base-orphans base64-bytestring bytestring conduit
          containers contravariant cryptohash deepseq directory filepath free
@@ -170423,7 +173442,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "store_0_4_1" = callPackage
+  "store" = callPackage
     ({ mkDerivation, array, async, base, base-orphans
      , base64-bytestring, bytestring, cereal, cereal-vector, conduit
      , containers, contravariant, criterion, cryptohash, deepseq
@@ -170437,8 +173456,8 @@ self: {
      }:
      mkDerivation {
        pname = "store";
-       version = "0.4.1";
-       sha256 = "aee7f803b9338569b089d01c3ab3ec1384d9ae55d1ebb6c867faefb34656bdb2";
+       version = "0.4.2";
+       sha256 = "584fd61fd788772398a233fce40f8956b6eb7cd6b8e86f35a30b44c849a7076b";
        libraryHaskellDepends = [
          array async base base-orphans base64-bytestring bytestring conduit
          containers contravariant cryptohash deepseq directory filepath free
@@ -170476,6 +173495,23 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "store-core_0_3" = callPackage
+    ({ mkDerivation, base, bytestring, fail, ghc-prim, primitive, text
+     , transformers
+     }:
+     mkDerivation {
+       pname = "store-core";
+       version = "0.3";
+       sha256 = "8793230b634a310a91db98727dfa6f34a0b7f5ded55985342066d33d98507087";
+       libraryHaskellDepends = [
+         base bytestring fail ghc-prim primitive text transformers
+       ];
+       homepage = "https://github.com/fpco/store#readme";
+       description = "Fast and lightweight binary serialization";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "store-core" = callPackage
     ({ mkDerivation, base, bytestring, fail, ghc-prim, primitive, text
      , transformers
@@ -170517,30 +173553,6 @@ self: {
      }:
      mkDerivation {
        pname = "stratosphere";
-       version = "0.4.1";
-       sha256 = "7a8a7c8bbe4c154c1a8def4a0bb7384ff9f60198ce7a8583063c7cd0c84bc790";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson aeson-pretty base bytestring hashable lens template-haskell
-         text unordered-containers
-       ];
-       testHaskellDepends = [
-         aeson aeson-pretty base bytestring directory hashable hlint lens
-         tasty tasty-hspec template-haskell text unordered-containers
-       ];
-       homepage = "https://github.com/frontrowed/stratosphere#readme";
-       description = "EDSL for AWS CloudFormation";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "stratosphere_0_4_2" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, base, bytestring, directory
-     , hashable, hlint, lens, tasty, tasty-hspec, template-haskell, text
-     , unordered-containers
-     }:
-     mkDerivation {
-       pname = "stratosphere";
        version = "0.4.2";
        sha256 = "37947aaff44e8732625e31f3c2e75e7e0ed380ad0ba459cbd461b93059347a66";
        isLibrary = true;
@@ -170556,7 +173568,6 @@ self: {
        homepage = "https://github.com/frontrowed/stratosphere#readme";
        description = "EDSL for AWS CloudFormation";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "stratum-tool" = callPackage
@@ -170808,6 +173819,8 @@ self: {
        pname = "streaming-eversion";
        version = "0.3.1.1";
        sha256 = "4277a6cd32bef41230f4a74cb1786c57f9bb09b3ec57edf7acdec6c9eaa1da8d";
+       revision = "1";
+       editedCabalFile = "1aea18d0246597ae046c75b4500789b25190d585c4652f6d9af6b9b486f27229";
        libraryHaskellDepends = [
          base foldl pipes streaming transformers
        ];
@@ -171538,6 +174551,26 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "strive_3_0_3" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, data-default, gpolyline
+     , http-client, http-client-tls, http-types, markdown-unlit
+     , template-haskell, text, time, transformers
+     }:
+     mkDerivation {
+       pname = "strive";
+       version = "3.0.3";
+       sha256 = "95ac2cc6763cf9c6a409ec91dc438b53a1dd4993da42a901a7523a1598e6283d";
+       libraryHaskellDepends = [
+         aeson base bytestring data-default gpolyline http-client
+         http-client-tls http-types template-haskell text time transformers
+       ];
+       testHaskellDepends = [ base bytestring markdown-unlit time ];
+       homepage = "https://github.com/tfausak/strive#readme";
+       description = "A client for the Strava V3 API";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "strptime" = callPackage
     ({ mkDerivation, base, bytestring, text, time }:
      mkDerivation {
@@ -174432,21 +177465,22 @@ self: {
      }) {};
 
   "tailfile-hinotify" = callPackage
-    ({ mkDerivation, async, base, bytestring, conceit, directory, foldl
-     , hinotify, pipes, process-streaming, streaming, streaming-eversion
-     , tasty, tasty-hunit
+    ({ mkDerivation, async, base, bytestring, conceit, directory
+     , filepath, foldl, hinotify, pipes, process-streaming, streaming
+     , streaming-eversion, tasty, tasty-hunit
      }:
      mkDerivation {
        pname = "tailfile-hinotify";
-       version = "1.0.0.2";
-       sha256 = "e63dab76d95842cef9b3b47c48cb0c2ee1fe0e5bb7bd73ff349a9c49a03aa43f";
+       version = "1.0.0.3";
+       sha256 = "df2fc8f4583dff80cffd3e714665da70e6b85c1e7e99f7a1879d7d52a10afc33";
        libraryHaskellDepends = [
          async base bytestring foldl hinotify pipes streaming
          streaming-eversion
        ];
        testHaskellDepends = [
-         async base bytestring conceit directory foldl hinotify pipes
-         process-streaming streaming streaming-eversion tasty tasty-hunit
+         async base bytestring conceit directory filepath foldl hinotify
+         pipes process-streaming streaming streaming-eversion tasty
+         tasty-hunit
        ];
        description = "Tail files in Unix, using hinotify";
        license = stdenv.lib.licenses.mit;
@@ -174929,12 +177963,12 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "tasty-dejafu_0_4_0_0" = callPackage
+  "tasty-dejafu_0_5_0_0" = callPackage
     ({ mkDerivation, base, dejafu, random, tagged, tasty }:
      mkDerivation {
        pname = "tasty-dejafu";
-       version = "0.4.0.0";
-       sha256 = "b2e4f21f9ccc2777d36090f71f560fbff0c3fde3bf43d966339b3fc2bf19577e";
+       version = "0.5.0.0";
+       sha256 = "5bbdd7a9aeb800078803dff2f48fb6707c6f6c633a07f197d440a586498c195f";
        libraryHaskellDepends = [ base dejafu random tagged tasty ];
        homepage = "https://github.com/barrucadu/dejafu";
        description = "Deja Fu support for the Tasty test framework";
@@ -174964,14 +177998,14 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "tasty-discover_2_0_1" = callPackage
+  "tasty-discover_2_0_3" = callPackage
     ({ mkDerivation, base, directory, filepath, tasty, tasty-hspec
      , tasty-hunit, tasty-quickcheck, tasty-smallcheck
      }:
      mkDerivation {
        pname = "tasty-discover";
-       version = "2.0.1";
-       sha256 = "b4a9be2c27ee29de6ee41bf2a43abcc5f155ef263f3ae3c48d9a5a281e78242c";
+       version = "2.0.3";
+       sha256 = "120dfe99db61ea2acbe96a19ceae1137329b03ce8c52f95fc0ce9857633c43e1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base directory filepath ];
@@ -175064,6 +178098,8 @@ self: {
        pname = "tasty-hspec";
        version = "1.1.3.1";
        sha256 = "8ac658b530202d84e34891a6274df1e8e08495a2e5d9d75a8e53a88d2ad85444";
+       revision = "1";
+       editedCabalFile = "ea3758e2cf8970122e4e9215786e5c25012536cbdddc12550221704a0539ae3d";
        libraryHaskellDepends = [
          base hspec hspec-core QuickCheck random tagged tasty
          tasty-quickcheck tasty-smallcheck
@@ -175273,8 +178309,8 @@ self: {
      }:
      mkDerivation {
        pname = "tasty-silver";
-       version = "3.1.9";
-       sha256 = "7067a64be061c42102eca6c09215bcaebe27c8bb9c554c38521c105dcc69b630";
+       version = "3.1.10";
+       sha256 = "8e886d93bff49da4221b917162613e00f83902af4a2ea014ab4bdcd9029d6efb";
        libraryHaskellDepends = [
          ansi-terminal async base bytestring containers deepseq directory
          filepath mtl optparse-applicative process process-extras regex-tdfa
@@ -175336,12 +178372,17 @@ self: {
      }) {};
 
   "tasty-th" = callPackage
-    ({ mkDerivation, base, tasty, template-haskell }:
+    ({ mkDerivation, base, haskell-src-exts, tasty, tasty-hunit
+     , template-haskell
+     }:
      mkDerivation {
        pname = "tasty-th";
-       version = "0.1.4";
-       sha256 = "18a14d693e709046eba3bb1a4e9febfce09d04059342728f06178788a24ece35";
-       libraryHaskellDepends = [ base tasty template-haskell ];
+       version = "0.1.7";
+       sha256 = "435aac8f317e2f8cb1aa96fb3f7c9003c1ac28e6d3ca4c3c23f5142178de512c";
+       libraryHaskellDepends = [
+         base haskell-src-exts tasty template-haskell
+       ];
+       testHaskellDepends = [ base tasty-hunit ];
        homepage = "http://github.com/bennofs/tasty-th";
        description = "Automatic tasty test case discovery using TH";
        license = stdenv.lib.licenses.bsd3;
@@ -176184,6 +179225,21 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "termcolor" = callPackage
+    ({ mkDerivation, base, cli }:
+     mkDerivation {
+       pname = "termcolor";
+       version = "0.2.0.0";
+       sha256 = "b09d399a733d867cb05dc51de4ee31d5db73cd453099e342973da91c30f21a90";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base ];
+       executableHaskellDepends = [ base cli ];
+       homepage = "https://github.com/mdibaiee/termcolor#readme";
+       description = "Composable terminal colors";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "terminal-progress-bar" = callPackage
     ({ mkDerivation, base, HUnit, stm, stm-chans, test-framework
      , test-framework-hunit
@@ -176358,8 +179414,8 @@ self: {
        pname = "test-framework";
        version = "0.8.1.1";
        sha256 = "7883626a5aebb1df327bf26dbd382208946250a79f9cc3bf9a9eb0b0767bb273";
-       revision = "1";
-       editedCabalFile = "a6d9dbedbb574271e85c6e5ef9a9f935d87501a9b99b473bf306e3dcd36bdd9e";
+       revision = "2";
+       editedCabalFile = "3e3101b9aab6788ba62a5984d326df68652021ba740cbe6cef4375fe1d80e1d6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -176607,8 +179663,8 @@ self: {
      }:
      mkDerivation {
        pname = "test-sandbox";
-       version = "0.1.5";
-       sha256 = "5a02005aed04af0ed9d2781df0921ff0934e01c0ae6ac50cc1980bf7e9c276b2";
+       version = "0.1.6";
+       sha256 = "b68d5e3ebcb77444b6e4685172cbae2f3b59121f85d61e0f80af728784ea4822";
        libraryHaskellDepends = [
          base bytestring cereal containers data-default directory filepath
          lifted-base monad-control monad-loops mtl network process random
@@ -177461,6 +180517,8 @@ self: {
        pname = "text-show";
        version = "3.4.1.1";
        sha256 = "f0ba04cb7389decad861b668764f7d7e58a6371269f2ac5809f842d2844f9921";
+       revision = "2";
+       editedCabalFile = "d347c19babfeb5980f3730a68f830e873060ba0c5219e4068cff866045c00289";
        libraryHaskellDepends = [
          array base base-compat bifunctors bytestring bytestring-builder
          containers contravariant generic-deriving ghc-boot-th ghc-prim
@@ -177942,6 +181000,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "th-expand-syns_0_4_3_0" = callPackage
+    ({ mkDerivation, base, containers, syb, template-haskell }:
+     mkDerivation {
+       pname = "th-expand-syns";
+       version = "0.4.3.0";
+       sha256 = "9fee68a387610574ed6445022fdcd0879a7415d910dcb6618f1de5d2001e679d";
+       libraryHaskellDepends = [ base containers syb template-haskell ];
+       testHaskellDepends = [ base template-haskell ];
+       homepage = "https://github.com/DanielSchuessler/th-expand-syns";
+       description = "Expands type synonyms in Template Haskell ASTs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "th-extras" = callPackage
     ({ mkDerivation, base, syb, template-haskell }:
      mkDerivation {
@@ -178066,6 +181138,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "th-lift_0_7_7" = callPackage
+    ({ mkDerivation, base, ghc-prim, template-haskell }:
+     mkDerivation {
+       pname = "th-lift";
+       version = "0.7.7";
+       sha256 = "16c6fa6fbe972fa0d850698c147cd9a30dc0e201554d9a4ee9ade62dc807cbb5";
+       libraryHaskellDepends = [ base ghc-prim template-haskell ];
+       testHaskellDepends = [ base ghc-prim template-haskell ];
+       homepage = "http://github.com/mboes/th-lift";
+       description = "Derive Template Haskell's Lift class for datatypes";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "th-lift-instances" = callPackage
     ({ mkDerivation, base, bytestring, containers, QuickCheck
      , template-haskell, text, th-lift, vector
@@ -178349,8 +181435,8 @@ self: {
        pname = "these";
        version = "0.7.3";
        sha256 = "14339c111ec2caffcb2a9f64164a5dc307a0afb716925ddcb1774d9d442a3d9b";
-       revision = "2";
-       editedCabalFile = "12ec949fc6530adb5b534e773a786d467f59e8087480d5b50a298894aec96e2b";
+       revision = "3";
+       editedCabalFile = "acf48c0c351a4d79fc468cb1293e7b4cbc403a53981518c1d578473ce813cc12";
        libraryHaskellDepends = [
          aeson base bifunctors binary containers data-default-class deepseq
          hashable keys mtl profunctors QuickCheck semigroupoids transformers
@@ -178639,12 +181725,12 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "threepenny-gui-flexbox_0_4_0_2" = callPackage
+  "threepenny-gui-flexbox_0_4_1" = callPackage
     ({ mkDerivation, base, clay, text, threepenny-gui }:
      mkDerivation {
        pname = "threepenny-gui-flexbox";
-       version = "0.4.0.2";
-       sha256 = "6edbd91b86e3711bd9198e9747cbcc49603b5f852bfb175f24abceef90ce0918";
+       version = "0.4.1";
+       sha256 = "bca8c8b56f419559d3ce2a991737c52e38f4194cb1bdfcc4744e4a4de7fc7467";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base clay text threepenny-gui ];
@@ -178922,19 +182008,20 @@ self: {
        license = stdenv.lib.licenses.gpl3;
      }) {};
 
-  "tidal_0_9" = callPackage
-    ({ mkDerivation, base, colour, containers, hashable, hosc
-     , mersenne-random-pure64, mtl, parsec, safe, text, time, websockets
+  "tidal_0_9_2" = callPackage
+    ({ mkDerivation, applicative-numbers, base, colour, containers
+     , hashable, hosc, mersenne-random-pure64, mtl, parsec, safe, text
+     , time, websockets
      }:
      mkDerivation {
        pname = "tidal";
-       version = "0.9";
-       sha256 = "7578110ee03cf8716cadf16a8ee25c7e963a1b9cbf7d678dc2361a03bdabac86";
+       version = "0.9.2";
+       sha256 = "518187f765f2ccb70b83a65f833e4a6fa1a02be36519f27c53a738ef8c9bdc40";
        libraryHaskellDepends = [
-         base colour containers hashable hosc mersenne-random-pure64 mtl
-         parsec safe text time websockets
+         applicative-numbers base colour containers hashable hosc
+         mersenne-random-pure64 mtl parsec safe text time websockets
        ];
-       homepage = "http://tidal.lurk.org/";
+       homepage = "http://tidalcycles.org/";
        description = "Pattern language for improvised music";
        license = stdenv.lib.licenses.gpl3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -178946,8 +182033,8 @@ self: {
      }:
      mkDerivation {
        pname = "tidal-midi";
-       version = "0.9";
-       sha256 = "09d0d4893f73f93439c571dbb2365f80d72a41d28fecb21ad76d51c5dee4e9c0";
+       version = "0.9.2";
+       sha256 = "ac9555387d046e382532d8816d57b2e4999b9713fb88e0cfbfe00f8252a8de60";
        libraryHaskellDepends = [
          base containers PortMidi tidal time transformers
        ];
@@ -179873,6 +182960,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "tiny-scheduler" = callPackage
+    ({ mkDerivation, async, base, time }:
+     mkDerivation {
+       pname = "tiny-scheduler";
+       version = "0.1.4.2";
+       sha256 = "aea6a3b9773e92cccfced04626ae9da51307b33a0b9374797c9aa84c9dd52e1f";
+       libraryHaskellDepends = [ async base time ];
+       homepage = "https://github.com/functor-soup/tiny-scheduler#readme";
+       description = "tiny no-brainer job scheduler";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "tinyMesh" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, hex, serialport
      , unix
@@ -180086,8 +183185,8 @@ self: {
     ({ mkDerivation, base, containers, HUnit, network-uri, text }:
      mkDerivation {
        pname = "tld";
-       version = "0.3.0.0";
-       sha256 = "feb269cd135796d7a378a01150ca89fdea380e4e7fa67b031b299fcd16acac5e";
+       version = "0.3.0.1";
+       sha256 = "aa433c4fe7bfd06937bb68602a2c95272e221bb65272bd11cbd0bb241567df65";
        libraryHaskellDepends = [ base containers network-uri text ];
        testHaskellDepends = [ base HUnit network-uri text ];
        description = "This project separates subdomains, domains, and top-level-domains from URLs";
@@ -180282,17 +183381,17 @@ self: {
      }) {};
 
   "toboggan" = callPackage
-    ({ mkDerivation, base, clit, directory, madlang, optparse-generic
-     , text
+    ({ mkDerivation, base, directory, madlang, optparse-generic, text
+     , tweet-hs
      }:
      mkDerivation {
        pname = "toboggan";
-       version = "0.1.0.0";
-       sha256 = "72281351961f1d55149379c273b72e4e4d7a5134c432351044a17317152f3a67";
+       version = "0.1.0.1";
+       sha256 = "3eca9e54376ea057907a57205231f654916e3f7f845f0aaeb83a43b81fc408a6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base clit directory madlang optparse-generic text
+         base directory madlang optparse-generic text tweet-hs
        ];
        executableHaskellDepends = [ base ];
        homepage = "https://github.com/vmchale/toboggan#readme";
@@ -180372,8 +183471,8 @@ self: {
        pname = "token-bucket";
        version = "0.1.0.1";
        sha256 = "312609c0037271b1091f23c2edf467e9449edca5bbed0cfb45c2c93c1bee6ad0";
-       revision = "1";
-       editedCabalFile = "41232cfabd4ba8e217d2b78f0f897d5a245756cf525c9a84c5ba2c695b533576";
+       revision = "2";
+       editedCabalFile = "a36253bf7bafd131327019f3ccac6b02cf8b6ca3db45c05e578fd600f856730e";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base time ];
        homepage = "https://github.com/hvr/token-bucket";
@@ -181209,14 +184308,14 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "transient_0_5_3" = callPackage
+  "transient_0_5_4" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, mtl
      , random, stm, time, transformers
      }:
      mkDerivation {
        pname = "transient";
-       version = "0.5.3";
-       sha256 = "e3b4ae35933e4452745f257f2043356b00611b0772d73085d9af75e1bdd28d3e";
+       version = "0.5.4";
+       sha256 = "653065cb45b443606e30b4295d73885bd73795c7b254f26b65d9a15bf610855e";
        libraryHaskellDepends = [
          base bytestring containers directory mtl random stm time
          transformers
@@ -181599,8 +184698,8 @@ self: {
      }:
      mkDerivation {
        pname = "tries";
-       version = "0.0.4.1";
-       sha256 = "c0b8ba913f98dd0732efe37bc29bacc28d2ed6d6ac23584102865e0cbeaab28a";
+       version = "0.0.4.2";
+       sha256 = "164c26a8d5efbd669545e1028f06c090554cabbe005a377827cc9a3b9ed15994";
        libraryHaskellDepends = [
          base bytestring bytestring-trie composition composition-extra
          containers deepseq hashable keys QuickCheck quickcheck-instances
@@ -181610,7 +184709,9 @@ self: {
          base containers mtl QuickCheck quickcheck-instances tasty
          tasty-quickcheck
        ];
-       benchmarkHaskellDepends = [ base criterion ];
+       benchmarkHaskellDepends = [
+         base containers criterion mtl rose-trees unordered-containers
+       ];
        description = "Various trie implementations in Haskell";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -181835,13 +184936,16 @@ self: {
      }) {};
 
   "tslogger" = callPackage
-    ({ mkDerivation, async, base, containers, random }:
+    ({ mkDerivation, async, base, bytestring, containers, random, text
+     }:
      mkDerivation {
        pname = "tslogger";
-       version = "0.1.0.0";
-       sha256 = "b41d3612219cc49b7e61531587ca33e582ec11f76e24254154f44fd515a5cbf7";
-       libraryHaskellDepends = [ async base containers random ];
-       description = "Thread-safe logging";
+       version = "0.2.1.0";
+       sha256 = "f8f15b288db3071e017afbb6b0326109e074bee9e6adc468da70b2d8bbfc9eac";
+       libraryHaskellDepends = [
+         async base bytestring containers random text
+       ];
+       description = "Thread-safe logging, with additional interleaving fuzz-testing";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -181916,15 +185020,12 @@ self: {
     ({ mkDerivation, base, HUnit, split }:
      mkDerivation {
        pname = "tsv2csv";
-       version = "0.1.0.1";
-       sha256 = "c0c505350d73c53068f5c186d58de7bcabea839ce3b3d84c2c604a633f4c77fc";
-       revision = "2";
-       editedCabalFile = "f93f38f878487b20ee86e91a3923f285acd63a2a360fab8097224ec7e8da37b0";
+       version = "0.1.0.2";
+       sha256 = "2c082f8bac93a5d47e312148493d0b8f078e2e0d0e919caa0fa24cab63dd3397";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base HUnit split ];
        executableHaskellDepends = [ base ];
-       homepage = "https://github.com/MackeyRMS/tsv2csv";
        description = "Convert tsv to csv";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -182024,6 +185125,31 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "tttool_1_7_0_2" = callPackage
+    ({ mkDerivation, aeson, base, binary, bytestring, containers
+     , directory, executable-path, filepath, hashable, haskeline, HPDF
+     , JuicyPixels, mtl, natural-sort, optparse-applicative, parsec
+     , process, random, split, spool, template-haskell, time, vector
+     , yaml, zlib
+     }:
+     mkDerivation {
+       pname = "tttool";
+       version = "1.7.0.2";
+       sha256 = "37100655b5a42ced12a9d144d07462f9a5fce440faac556a4c9fe64665d00322";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         aeson base binary bytestring containers directory executable-path
+         filepath hashable haskeline HPDF JuicyPixels mtl natural-sort
+         optparse-applicative parsec process random split spool
+         template-haskell time vector yaml zlib
+       ];
+       homepage = "https://github.com/entropia/tip-toi-reveng";
+       description = "Working with files for the Tiptoi® pen";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "tubes" = callPackage
     ({ mkDerivation, base, comonad, contravariant, free, mtl
      , profunctors, semigroups, transformers
@@ -182367,7 +185493,7 @@ self: {
      }) {};
 
   "tweet-hs" = callPackage
-    ({ mkDerivation, ansi-wl-pprint, authenticate-oauth, base
+    ({ mkDerivation, aeson, ansi-wl-pprint, authenticate-oauth, base
      , bytestring, composition, criterion, data-default, directory
      , extra, hspec, hspec-megaparsec, http-client, http-client-tls
      , http-types, lens, megaparsec, MissingH, optparse-applicative
@@ -182375,12 +185501,12 @@ self: {
      }:
      mkDerivation {
        pname = "tweet-hs";
-       version = "0.5.3.2";
-       sha256 = "749ac037384f0f9e09526cffcb7c1a55375480effeb3d586b19bcbb1f1c6e40e";
+       version = "0.5.3.6";
+       sha256 = "f3f882d1431241e5c0368d4994f675c38e13a4caae95f044e660d472d3633395";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         ansi-wl-pprint authenticate-oauth base bytestring composition
+         aeson ansi-wl-pprint authenticate-oauth base bytestring composition
          data-default directory extra http-client http-client-tls http-types
          lens megaparsec MissingH optparse-applicative split text
        ];
@@ -182781,8 +185907,8 @@ self: {
      }:
      mkDerivation {
        pname = "twitter-conduit";
-       version = "0.2.1";
-       sha256 = "56271d64566f5c43f7557e384e2e8e655f19f782078c28e99919efc32cfff3ff";
+       version = "0.2.2";
+       sha256 = "837f9aa3b80826c93b3ce8110b84760fb786fe8e52957038b2bb3f7049fffd5b";
        libraryHaskellDepends = [
          aeson attoparsec authenticate-oauth base bytestring conduit
          conduit-extra containers data-default exceptions http-client
@@ -182832,8 +185958,8 @@ self: {
        pname = "twitter-feed";
        version = "0.2.0.11";
        sha256 = "8b98b4ddfb88f4c14f8eb43bd74a4c4e7941a92d44b90717e9b8dbe4c454c889";
-       revision = "2";
-       editedCabalFile = "40c6941bd4bc222ad94a0963036f74f66fc1ef084b8d7c5c07f5dc9f3d861a59";
+       revision = "3";
+       editedCabalFile = "4e853ce6a5aa6db38e4ce5ca5bfa68bb5934320470fd83bbd345a5acc880f943";
        libraryHaskellDepends = [
          aeson authenticate-oauth base bytestring http-conduit
        ];
@@ -183219,6 +186345,19 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "type-level-integers" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "type-level-integers";
+       version = "0.0.1";
+       sha256 = "118be3a4b3ab65bb1d31220738079013bd14fc77db674a9a1577f5582ffcc7ba";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base ];
+       homepage = "https://github.com/mtesseract/type-level-integers";
+       description = "Provides integers lifted to the type level";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "type-level-kv-list" = callPackage
     ({ mkDerivation, base, doctest, Glob }:
      mkDerivation {
@@ -183315,6 +186454,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "type-map" = callPackage
+    ({ mkDerivation, base, containers, ghc-prim, HUnit, test-framework
+     , test-framework-hunit, vector
+     }:
+     mkDerivation {
+       pname = "type-map";
+       version = "0.1.0.0";
+       sha256 = "84e61e322c7da78a32ce4f1a5950eab6717f902c47ee7e131d8516162f565ac3";
+       revision = "1";
+       editedCabalFile = "82b3d3434e40fa630cd04f9cdcc6b25206e72332de597b85b1098269b9cd4120";
+       libraryHaskellDepends = [ base containers ghc-prim vector ];
+       testHaskellDepends = [
+         base HUnit test-framework test-framework-hunit
+       ];
+       homepage = "https://github.com/Lysxia/type-map";
+       description = "Type-indexed maps";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "type-natural" = callPackage
     ({ mkDerivation, base, constraints, equational-reasoning
      , ghc-typelits-natnormalise, ghc-typelits-presburger, monomorphic
@@ -183826,6 +186984,26 @@ self: {
        license = "GPL";
      }) {};
 
+  "tyro" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, HUnit, protolude
+     , reflection, singletons, test-framework, test-framework-hunit
+     , text
+     }:
+     mkDerivation {
+       pname = "tyro";
+       version = "0.2.0.0";
+       sha256 = "d076802ae695308f5d76e7ab87e37c8c890f7f05e6f78557bfcfe23b8257d084";
+       libraryHaskellDepends = [
+         aeson base bytestring protolude reflection singletons text
+       ];
+       testHaskellDepends = [
+         aeson base HUnit protolude test-framework test-framework-hunit text
+       ];
+       homepage = "https://github.com/rlupton20/tyro#readme";
+       description = "Type derived JSON parsing using Aeson";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "tz" = callPackage
     ({ mkDerivation, base, binary, bytestring, containers, criterion
      , data-default, deepseq, HUnit, lens, QuickCheck, template-haskell
@@ -184057,6 +187235,7 @@ self: {
        homepage = "https://github.com/pxqr/udev";
        description = "libudev bindings";
        license = stdenv.lib.licenses.bsd3;
+       platforms = [ "i686-linux" "x86_64-linux" ];
      }) {inherit (pkgs) libudev;};
 
   "udp-conduit" = callPackage
@@ -184342,28 +187521,18 @@ self: {
      }) {};
 
   "unbounded-delays" = callPackage
-    ({ mkDerivation, base }:
-     mkDerivation {
-       pname = "unbounded-delays";
-       version = "0.1.0.9";
-       sha256 = "4010ca5c4ca800039db259fc7a5180f10fc98f00580c7223ac7ad401ca4190b8";
-       libraryHaskellDepends = [ base ];
-       homepage = "https://github.com/basvandijk/unbounded-delays";
-       description = "Unbounded thread delays and timeouts";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "unbounded-delays_0_1_0_10" = callPackage
-    ({ mkDerivation, base }:
+    ({ mkDerivation, base, Cabal }:
      mkDerivation {
        pname = "unbounded-delays";
        version = "0.1.0.10";
        sha256 = "1c3621437c267f313231a56cf85136bbe7ff6fea0c08a016240d482cc69ca123";
+       revision = "1";
+       editedCabalFile = "98424c728917bd4638112a913f0032be8b84e837f4f60fc96e0d6dc40d61e5c6";
+       setupHaskellDepends = [ base Cabal ];
        libraryHaskellDepends = [ base ];
        homepage = "https://github.com/basvandijk/unbounded-delays";
        description = "Unbounded thread delays and timeouts";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "unbounded-delays-units" = callPackage
@@ -185246,8 +188415,8 @@ self: {
      }:
      mkDerivation {
        pname = "universum";
-       version = "0.3";
-       sha256 = "cc5b5056e4a0c930a40bb9e015c90a3adf8d15e483d6da586fcf9ea23693acb5";
+       version = "0.4.1";
+       sha256 = "1c08722ec9365d931cedcfa8dcdad31efaa6e1a46c55a83501c945b56020e12a";
        libraryHaskellDepends = [
          base bytestring containers deepseq exceptions ghc-prim hashable
          microlens microlens-mtl mtl safe stm text text-format transformers
@@ -185411,10 +188580,8 @@ self: {
      }:
      mkDerivation {
        pname = "unjson";
-       version = "0.14.0.1";
-       sha256 = "d173f0c4ad8c80d4e1035a57c6bf3e4a8620ffb71c0c1f6ddcb474ac440a3e13";
-       revision = "4";
-       editedCabalFile = "129fd242ec0082f7c3dfa73cdadb13d7b7556a61395b62d0d2e0acbb4e3768ec";
+       version = "0.14.1.2";
+       sha256 = "8f06d68b66269385a34d59ee6b68de932e0f4ee9bfb76219d9a278260e0a9d4b";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring containers free hashable invariant
          pretty primitive scientific text time unordered-containers vector
@@ -185424,6 +188591,7 @@ self: {
          invariant pretty primitive scientific text time
          unordered-containers vector
        ];
+       homepage = "https://github.com/scrive/unjson";
        description = "Bidirectional JSON parsing and generation";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -185905,6 +189073,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "uri-bytestring-aeson" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, text, uri-bytestring }:
+     mkDerivation {
+       pname = "uri-bytestring-aeson";
+       version = "0.1.0.0";
+       sha256 = "d852485339347c7a3c79598819d063261c297f6cfc1b0faf4d59093bb315285f";
+       libraryHaskellDepends = [
+         aeson base bytestring text uri-bytestring
+       ];
+       homepage = "https://github.com/reactormonk/uri-bytestring-aeson";
+       description = "Aeson instances for URI Bytestring";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "uri-conduit" = callPackage
     ({ mkDerivation, base, bytestring, conduit, containers, deepseq
      , failure, monad-control, network, system-fileio, system-filepath
@@ -187257,6 +190439,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "vault_0_3_0_7" = callPackage
+    ({ mkDerivation, base, containers, hashable, unordered-containers
+     }:
+     mkDerivation {
+       pname = "vault";
+       version = "0.3.0.7";
+       sha256 = "9e9189da0821d68fc8f85aab958bbec141635858a7aeb8178e1eec5872a366f0";
+       libraryHaskellDepends = [
+         base containers hashable unordered-containers
+       ];
+       homepage = "https://github.com/HeinrichApfelmus/vault";
+       description = "a persistent store for values of arbitrary types";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "vault-tool" = callPackage
     ({ mkDerivation, aeson, base, bytestring, http-client
      , http-client-tls, http-types, text, unordered-containers
@@ -187560,6 +190758,8 @@ self: {
        pname = "vector";
        version = "0.12.0.1";
        sha256 = "b100ee79b9da2651276278cd3e0f08a3c152505cc52982beda507515af173d7b";
+       revision = "1";
+       editedCabalFile = "0b838071449021040b4366201eb5e51790a8946a1b85c30d823bf5690e425bf6";
        libraryHaskellDepends = [ base deepseq ghc-prim primitive ];
        testHaskellDepends = [
          base HUnit QuickCheck random template-haskell test-framework
@@ -187610,8 +190810,8 @@ self: {
      }:
      mkDerivation {
        pname = "vector-binary-instances";
-       version = "0.2.3.4";
-       sha256 = "f3cef04ff645bbf25198c2c0c33d0c13e44bfe63602e1e694c2be9abf0e57d00";
+       version = "0.2.3.5";
+       sha256 = "e11255baeca51fb01df28b120ee308802d4e45929e520c8464e3f74513682a5a";
        libraryHaskellDepends = [ base binary vector ];
        testHaskellDepends = [ base binary tasty tasty-quickcheck vector ];
        benchmarkHaskellDepends = [
@@ -187639,8 +190839,8 @@ self: {
      }:
      mkDerivation {
        pname = "vector-builder";
-       version = "0.3";
-       sha256 = "6041b4a9b05c8d39c67cb4bedcf1192a33babda444f2ec64b24598874db45ec0";
+       version = "0.3.1";
+       sha256 = "77f3938c3b0864d56f4a0e2773c2b8f62f269b343c341ceefc07042dda73dad0";
        libraryHaskellDepends = [ base base-prelude semigroups vector ];
        testHaskellDepends = [
          quickcheck-instances rebase tasty tasty-hunit tasty-quickcheck
@@ -189448,13 +192648,13 @@ self: {
      , clientsession, cookie, exceptions, hoauth2, http-client
      , http-client-tls, http-conduit, http-reverse-proxy, http-types
      , optparse-simple, regex-posix, safe-exceptions, shakespeare, text
-     , unix-compat, unordered-containers, vault, wai, wai-app-static
-     , wai-extra, warp, yaml
+     , unix-compat, unordered-containers, uri-bytestring, vault, wai
+     , wai-app-static, wai-extra, warp, yaml
      }:
      mkDerivation {
        pname = "wai-middleware-auth";
-       version = "0.1.1.2";
-       sha256 = "f14016ba27f24a11395661cd2969cc41cf5a5043045468c584a0e03c4ddfa896";
+       version = "0.1.2.0";
+       sha256 = "8b89a4c9c0551254eb8624d1a927981d58555a1e42c78fa442ffe548c1919312";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -189462,7 +192662,8 @@ self: {
          bytestring case-insensitive cereal clientsession cookie exceptions
          hoauth2 http-client http-client-tls http-conduit http-reverse-proxy
          http-types regex-posix safe-exceptions shakespeare text unix-compat
-         unordered-containers vault wai wai-app-static wai-extra yaml
+         unordered-containers uri-bytestring vault wai wai-app-static
+         wai-extra yaml
        ];
        executableHaskellDepends = [
          base bytestring cereal clientsession optparse-simple warp
@@ -189764,8 +192965,8 @@ self: {
      }:
      mkDerivation {
        pname = "wai-middleware-metrics";
-       version = "0.2.3";
-       sha256 = "c9123ca10c2d0d223ce0c39faa7097de2e61ec2b9a24cff042d7248850ea2e2a";
+       version = "0.2.4";
+       sha256 = "e73685a748f0ba6d16956b500cdc23f3802f794f5259a3d6b8a5b885e928ec74";
        libraryHaskellDepends = [ base ekg-core http-types text time wai ];
        testHaskellDepends = [
          base bytestring ekg-core http-types QuickCheck scotty tasty
@@ -189818,6 +193019,55 @@ self: {
        license = stdenv.lib.licenses.asl20;
      }) {};
 
+  "wai-middleware-rollbar" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, case-insensitive
+     , containers, hostname, http-client, http-conduit, http-types, lens
+     , lens-aeson, network, QuickCheck, text, time, unordered-containers
+     , uuid, wai
+     }:
+     mkDerivation {
+       pname = "wai-middleware-rollbar";
+       version = "0.3.0";
+       sha256 = "c97f632b96d355ec115028eb56ba4986358216c9e164d73b440e79fb244c3200";
+       libraryHaskellDepends = [
+         aeson base bytestring case-insensitive hostname http-client
+         http-conduit http-types network text time unordered-containers uuid
+         wai
+       ];
+       testHaskellDepends = [
+         aeson base bytestring case-insensitive containers lens lens-aeson
+         QuickCheck text
+       ];
+       homepage = "https://github.com/joneshf/wai-middleware-rollbar#readme";
+       description = "Middleware that communicates to Rollbar";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "wai-middleware-rollbar_0_4_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, case-insensitive
+     , containers, hostname, hspec, hspec-golden-aeson, http-client
+     , http-conduit, http-types, lens, lens-aeson, network, QuickCheck
+     , text, time, unordered-containers, uuid, wai
+     }:
+     mkDerivation {
+       pname = "wai-middleware-rollbar";
+       version = "0.4.0";
+       sha256 = "4a0e203151fc3a6d4a356a187571578b6f1ca65d8cde3c3d32bdf5636511b991";
+       libraryHaskellDepends = [
+         aeson base bytestring case-insensitive hostname http-client
+         http-conduit http-types network text time unordered-containers uuid
+         wai
+       ];
+       testHaskellDepends = [
+         aeson base bytestring case-insensitive containers hspec
+         hspec-golden-aeson lens lens-aeson QuickCheck text
+       ];
+       homepage = "https://github.com/joneshf/wai-middleware-rollbar#readme";
+       description = "Middleware that communicates to Rollbar";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "wai-middleware-route" = callPackage
     ({ mkDerivation, base, bytestring, http-types, HUnit
      , test-framework, test-framework-hunit, text, wai, wai-test
@@ -189850,8 +193100,8 @@ self: {
        pname = "wai-middleware-static";
        version = "0.8.1";
        sha256 = "e0b5f13f410f81897759acf43198a08101d2af4c9d506164367c7d1a96d55375";
-       revision = "1";
-       editedCabalFile = "2884eb9d594bdc91a8ab7dd045e4252472c45361907c470f594a7f2a573d7752";
+       revision = "2";
+       editedCabalFile = "c9e6b72329833d8da9183c5d1b8de5119bbc183b96aee13682f2f7da5e17a8f9";
        libraryHaskellDepends = [
          base bytestring containers cryptonite directory expiring-cache-map
          filepath http-types memory mime-types mtl old-locale semigroups
@@ -190037,6 +193287,32 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "wai-routes_0_10_0" = callPackage
+    ({ mkDerivation, aeson, base, blaze-builder, bytestring
+     , case-insensitive, containers, cookie, data-default-class
+     , filepath, hspec, hspec-wai, hspec-wai-json, http-types
+     , mime-types, monad-loops, mtl, path-pieces, random
+     , template-haskell, text, vault, wai, wai-extra
+     }:
+     mkDerivation {
+       pname = "wai-routes";
+       version = "0.10.0";
+       sha256 = "5e3b4d938a2b05b324c18d9448270669ed61d924315ef114ba8776505f3a0dfb";
+       libraryHaskellDepends = [
+         aeson base blaze-builder bytestring case-insensitive containers
+         cookie data-default-class filepath http-types mime-types
+         monad-loops mtl path-pieces random template-haskell text vault wai
+         wai-extra
+       ];
+       testHaskellDepends = [
+         aeson base hspec hspec-wai hspec-wai-json text wai
+       ];
+       homepage = "https://ajnsit.github.io/wai-routes/";
+       description = "Typesafe URLs for Wai applications";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "wai-routing" = callPackage
     ({ mkDerivation, attoparsec, base, blaze-builder, bytestring
      , bytestring-conversion, case-insensitive, containers, cookie
@@ -190406,8 +193682,8 @@ self: {
      }:
      mkDerivation {
        pname = "warp";
-       version = "3.2.11.1";
-       sha256 = "853f672c48893936902a0c6b3e4711f58c0fd02f36e8badb46a0c8b58067e5fe";
+       version = "3.2.11.2";
+       sha256 = "fbe460ab787777b07cd0a77403453469b46736929da4047ab38032b90e4f4b6a";
        libraryHaskellDepends = [
          array async auto-update base blaze-builder bytestring
          bytestring-builder case-insensitive containers ghc-prim hashable
@@ -190813,8 +194089,8 @@ self: {
      }:
      mkDerivation {
        pname = "web-output";
-       version = "0.3.0.0";
-       sha256 = "db201c91c1c96db59670142d1ca1e63d31cbc0bdf495538994eab1b585894ead";
+       version = "0.4.0.0";
+       sha256 = "700bf50355a9232cb76af526c03d44d964a6829b01c66d909006db5c7e7d3404";
        libraryHaskellDepends = [
          base directory filepath open-browser temporary text
        ];
@@ -191089,22 +194365,24 @@ self: {
      }) {};
 
   "webapp" = callPackage
-    ({ mkDerivation, aeson, base, base16-bytestring, blaze-builder
-     , bytestring, case-insensitive, http-types, mtl, network
-     , optparse-applicative, regex-posix, stm, streaming-commons, text
-     , transformers, unix, wai, warp, warp-tls, zlib
+    ({ mkDerivation, array, base, blaze-builder, bytestring
+     , case-insensitive, hspec, http-types, network
+     , optparse-applicative, regex-base, regex-pcre-builtin, stm, text
+     , transformers, unix, vault, wai, warp, warp-tls
      }:
      mkDerivation {
        pname = "webapp";
-       version = "0.3.6";
-       sha256 = "cc15c419454db7a1e61bbeb8827d971234b43a120a8d372d3d015991fa04c8ec";
+       version = "0.6.1";
+       sha256 = "390de0de4c7e777f217466fb532cae1edfaa45c042ea987af67200a9d92a2242";
        libraryHaskellDepends = [
-         aeson base base16-bytestring blaze-builder bytestring
-         case-insensitive http-types mtl network optparse-applicative
-         regex-posix stm streaming-commons text transformers unix wai warp
-         warp-tls zlib
+         array base blaze-builder bytestring case-insensitive http-types
+         network optparse-applicative regex-base regex-pcre-builtin stm text
+         transformers unix vault wai warp warp-tls
+       ];
+       testHaskellDepends = [
+         base hspec http-types network text transformers wai
        ];
-       homepage = "https://github.com/fhsjaagshs/webapp";
+       homepage = "https://github.com/natesymer/webapp";
        description = "Haskell web app framework based on WAI & Warp";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -191217,6 +194495,31 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "webdriver_0_8_5" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, base64-bytestring
+     , bytestring, data-default-class, directory, directory-tree
+     , exceptions, filepath, http-client, http-types, lifted-base
+     , monad-control, network, network-uri, scientific, temporary, text
+     , time, transformers, transformers-base, unordered-containers
+     , vector, zip-archive
+     }:
+     mkDerivation {
+       pname = "webdriver";
+       version = "0.8.5";
+       sha256 = "a8167a8b147411a929e81727a77bc31fcd7d93424442268913fb522e1932c1be";
+       libraryHaskellDepends = [
+         aeson attoparsec base base64-bytestring bytestring
+         data-default-class directory directory-tree exceptions filepath
+         http-client http-types lifted-base monad-control network
+         network-uri scientific temporary text time transformers
+         transformers-base unordered-containers vector zip-archive
+       ];
+       homepage = "https://github.com/kallisti-dev/hs-webdriver";
+       description = "a Haskell client for the Selenium WebDriver protocol";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "webdriver-angular" = callPackage
     ({ mkDerivation, aeson, base, hspec, hspec-webdriver
      , language-javascript, template-haskell, text, transformers
@@ -191415,8 +194718,8 @@ self: {
     ({ mkDerivation, base, blaze-html, data-default, lucid, text }:
      mkDerivation {
        pname = "webpage";
-       version = "0.0.4";
-       sha256 = "17fba395357bf4d1462d1a50e2a06d1004d0df02cab524dc26e982a90f70c648";
+       version = "0.0.5";
+       sha256 = "213e92ff931d7f58becb532a70cb958a691b216fa85c43f950b429ffad3d1aad";
        libraryHaskellDepends = [
          base blaze-html data-default lucid text
        ];
@@ -191525,6 +194828,38 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "websockets_0_11_1_0" = callPackage
+    ({ mkDerivation, attoparsec, base, base64-bytestring, binary
+     , blaze-builder, bytestring, case-insensitive, containers
+     , criterion, entropy, HUnit, network, QuickCheck, random, SHA
+     , streaming-commons, test-framework, test-framework-hunit
+     , test-framework-quickcheck2, text
+     }:
+     mkDerivation {
+       pname = "websockets";
+       version = "0.11.1.0";
+       sha256 = "3c2dc3417c99acb713276a55c16ff3bf2964ab3990044215a996ae235fa57ae1";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         attoparsec base base64-bytestring binary blaze-builder bytestring
+         case-insensitive containers entropy network random SHA
+         streaming-commons text
+       ];
+       testHaskellDepends = [
+         attoparsec base base64-bytestring binary blaze-builder bytestring
+         case-insensitive containers entropy HUnit network QuickCheck random
+         SHA streaming-commons test-framework test-framework-hunit
+         test-framework-quickcheck2 text
+       ];
+       benchmarkHaskellDepends = [ base bytestring criterion random ];
+       doCheck = false;
+       homepage = "http://jaspervdj.be/websockets";
+       description = "A sensible and clean way to write WebSocket-capable servers in Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "websockets-rpc" = callPackage
     ({ mkDerivation, aeson, async, base, bytestring, containers
      , exceptions, mtl, QuickCheck, quickcheck-instances, stm, tasty
@@ -191566,6 +194901,23 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "websockets-snap_0_10_2_1" = callPackage
+    ({ mkDerivation, base, bytestring, bytestring-builder, io-streams
+     , mtl, snap-core, snap-server, websockets
+     }:
+     mkDerivation {
+       pname = "websockets-snap";
+       version = "0.10.2.1";
+       sha256 = "4264992c29f800b9623632fc366094ebbfe6353fb0e346f0a51519afed3586af";
+       libraryHaskellDepends = [
+         base bytestring bytestring-builder io-streams mtl snap-core
+         snap-server websockets
+       ];
+       description = "Snap integration for the websockets library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "webwire" = callPackage
     ({ mkDerivation, base, base64-bytestring, blaze-builder, blaze-html
      , bytestring, case-insensitive, containers, cookie, cprng-aes
@@ -191901,8 +195253,8 @@ self: {
      }:
      mkDerivation {
        pname = "wide-word";
-       version = "0.1.0.2";
-       sha256 = "c5fa2df76b8391b34f5671c6280bedecd56ee6600db260bd4942bc91cacb41fb";
+       version = "0.1.0.3";
+       sha256 = "e0ec5b2db38736d81c7a5fff880ed4dec2d774f24282d19aad5d72180124f879";
        libraryHaskellDepends = [ base deepseq ghc-prim ];
        testHaskellDepends = [ base bytestring ghc-prim hspec QuickCheck ];
        homepage = "https://github.com/erikd/wide-word";
@@ -192316,6 +195668,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "wl-pprint-annotated_0_1_0_0" = callPackage
+    ({ mkDerivation, base, containers, deepseq, tasty, tasty-hunit
+     , text
+     }:
+     mkDerivation {
+       pname = "wl-pprint-annotated";
+       version = "0.1.0.0";
+       sha256 = "b7ce310688626b25c19e2c93c3546ce5f6a3a6c5943b0a687031b757ba494930";
+       libraryHaskellDepends = [ base containers deepseq text ];
+       testHaskellDepends = [
+         base containers deepseq tasty tasty-hunit text
+       ];
+       homepage = "https://github.com/minad/wl-pprint-annotated#readme";
+       description = "Wadler/Leijen pretty printer with annotations and slightly modernized API";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "wl-pprint-ansiterm" = callPackage
     ({ mkDerivation, ansi-terminal, base, bytestring, containers, mtl
      , nats, semigroups, text, transformers, wl-pprint-extras
@@ -192342,6 +195712,8 @@ self: {
        pname = "wl-pprint-console";
        version = "0.1.0.1";
        sha256 = "a7c7f6aa14f78bf6a8aae1a629433872f8bfb377b1392f08047520cdcb3b70fc";
+       revision = "1";
+       editedCabalFile = "45b92029f969643191e9902ad781b63781d80ea857bb8d7f9763c35aa6948bd6";
        libraryHaskellDepends = [
          base bytestring colorful-monoids text wl-pprint-annotated
        ];
@@ -192489,20 +195861,20 @@ self: {
     ({ mkDerivation, aeson, amazonka, amazonka-core, amazonka-s3
      , amazonka-swf, base, bytestring, conduit, conduit-combinators
      , conduit-extra, directory, exceptions, filemanip, filepath
-     , lifted-async, monad-control, optparse-applicative
+     , http-types, lifted-async, monad-control, optparse-applicative
      , optparse-generic, preamble, process, resourcet, shakers, text
      , time, uuid, yaml
      }:
      mkDerivation {
        pname = "wolf";
-       version = "0.3.8";
-       sha256 = "af9021f6b883cd9f90d984e6e66535f17738d0064fa96bd0f39938eeb863dd4b";
+       version = "0.3.13";
+       sha256 = "e96203096f770c4241d1ac2e0b8163b6af551c32eb57950a5223f9f1c2327283";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson amazonka amazonka-core amazonka-s3 amazonka-swf base
          bytestring conduit conduit-combinators conduit-extra directory
-         exceptions filemanip filepath lifted-async monad-control
+         exceptions filemanip filepath http-types lifted-async monad-control
          optparse-applicative preamble process resourcet text time uuid yaml
        ];
        executableHaskellDepends = [ base optparse-generic shakers ];
@@ -192866,8 +196238,8 @@ self: {
      }:
      mkDerivation {
        pname = "wreq";
-       version = "0.5.0.0";
-       sha256 = "15e5787791148991d6055ad1269b9d9cb22db04e16b0bd1d266e2f00cec1f4d5";
+       version = "0.5.0.1";
+       sha256 = "6c2a92bb8054091e4e170066b70fbc1d42a9842aab887ccfea457f96d108168d";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -192933,8 +196305,8 @@ self: {
     ({ mkDerivation, base, bytestring, text, utf8-string, wreq }:
      mkDerivation {
        pname = "wreq-stringless";
-       version = "0.5.0.0";
-       sha256 = "e58cb6e6c44b33df3507c1e5fc3f7cea2961a8244c3c6840a085327ce731b921";
+       version = "0.5.0.1";
+       sha256 = "ca975c77c7a87ff673d4ca0b6156b5867273e8a1275f00c349aec3918a3f965b";
        libraryHaskellDepends = [ base bytestring text utf8-string wreq ];
        homepage = "https://github.com/j-keck/wreq-stringless#readme";
        description = "Simple wrapper to use wreq without Strings";
@@ -193026,21 +196398,6 @@ self: {
      }:
      mkDerivation {
        pname = "writer-cps-mtl";
-       version = "0.1.1.2";
-       sha256 = "55d14bfe21dad79b4254c188b5b3f30144d741a821bfb024e38c798dbf7c5f61";
-       libraryHaskellDepends = [
-         base mtl transformers writer-cps-transformers
-       ];
-       homepage = "https://github.com/minad/writer-cps-mtl#readme";
-       description = "MonadWriter orphan instances for writer-cps-transformers";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "writer-cps-mtl_0_1_1_3" = callPackage
-    ({ mkDerivation, base, mtl, transformers, writer-cps-transformers
-     }:
-     mkDerivation {
-       pname = "writer-cps-mtl";
        version = "0.1.1.3";
        sha256 = "b7a37f1e3183fdbd381149dbf3e55e727e7af19fef9136b0201df2600691a7f3";
        libraryHaskellDepends = [
@@ -193049,7 +196406,6 @@ self: {
        homepage = "https://github.com/minad/writer-cps-mtl#readme";
        description = "MonadWriter orphan instances for writer-cps-transformers";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "writer-cps-transformers" = callPackage
@@ -193064,6 +196420,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ws-chans" = callPackage
+    ({ mkDerivation, async, base, http-types, HUnit, network
+     , QuickCheck, quickcheck-instances, test-framework
+     , test-framework-quickcheck2, text, unagi-chan, wai, wai-websockets
+     , warp, websockets
+     }:
+     mkDerivation {
+       pname = "ws-chans";
+       version = "0.1.0.0";
+       sha256 = "70b5344b6711504f72c612cb2d4ff61b61927a844df427222d757e944d1c3664";
+       libraryHaskellDepends = [
+         async base network unagi-chan websockets
+       ];
+       testHaskellDepends = [
+         base http-types HUnit QuickCheck quickcheck-instances
+         test-framework test-framework-quickcheck2 text unagi-chan wai
+         wai-websockets warp websockets
+       ];
+       homepage = "https://github.com/shmish111/ws-chans";
+       description = "Unagi chan based websocket client";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "wsdl" = callPackage
     ({ mkDerivation, base, bytestring, conduit, exceptions, file-embed
      , hspec, mtl, network-uri, resourcet, text, xml-conduit, xml-types
@@ -193228,6 +196607,22 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "wuss_1_1_4" = callPackage
+    ({ mkDerivation, base, bytestring, connection, network, websockets
+     }:
+     mkDerivation {
+       pname = "wuss";
+       version = "1.1.4";
+       sha256 = "75361b9f91752c050b271d6362a2f586d394e1d7d7f6a8d27d53bfb2945dfd5b";
+       libraryHaskellDepends = [
+         base bytestring connection network websockets
+       ];
+       homepage = "https://github.com/tfausak/wuss#readme";
+       description = "Secure WebSocket (WSS) clients";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "wx" = callPackage
     ({ mkDerivation, base, stm, time, wxcore }:
      mkDerivation {
@@ -193285,11 +196680,18 @@ self: {
      }) {};
 
   "wxc" = callPackage
-    ({ mkDerivation, base, libX11, mesa, split, wxdirect, wxGTK }:
+    ({ mkDerivation, base, bytestring, Cabal, directory, filepath
+     , libX11, mesa, process, split, wxdirect, wxGTK
+     }:
      mkDerivation {
        pname = "wxc";
        version = "0.92.2.0";
        sha256 = "e0da20807bafb22d51a0922211da11eb428b2a6661cb53bc98f6e17be9775191";
+       revision = "1";
+       editedCabalFile = "8ebef4ae5773d0abcb5777dd1f8b9fbf978b6c7ed8b1d88bbcb25594db0c79c2";
+       setupHaskellDepends = [
+         base bytestring Cabal directory filepath process split
+       ];
        libraryHaskellDepends = [ base split wxdirect ];
        librarySystemDepends = [ libX11 mesa ];
        libraryPkgconfigDepends = [ wxGTK ];
@@ -193330,6 +196732,8 @@ self: {
        pname = "wxdirect";
        version = "0.92.2.0";
        sha256 = "2303834061c544f7e32ffd7aaf91e644ee89e178487689f109f06625f0eefd3b";
+       revision = "1";
+       editedCabalFile = "72b1487d63c458854733436e6938a76b709cb5392f155dad8ece7aafb73979a7";
        isLibrary = true;
        isExecutable = true;
        executableHaskellDepends = [
@@ -194115,6 +197519,35 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "xlsx_0_5_0" = callPackage
+    ({ mkDerivation, base, base64-bytestring, binary-search, bytestring
+     , conduit, containers, data-default, Diff, errors, extra, filepath
+     , groom, lens, mtl, mtl-compat, network-uri, old-locale
+     , raw-strings-qq, safe, smallcheck, tasty, tasty-hunit
+     , tasty-smallcheck, text, time, transformers, vector, xml-conduit
+     , zip-archive, zlib
+     }:
+     mkDerivation {
+       pname = "xlsx";
+       version = "0.5.0";
+       sha256 = "2a58417a65696da106a70f135e028b6af39cc7f504d382c9f352d52b3e2cb672";
+       libraryHaskellDepends = [
+         base base64-bytestring binary-search bytestring conduit containers
+         data-default errors extra filepath lens mtl mtl-compat network-uri
+         old-locale safe text time transformers vector xml-conduit
+         zip-archive zlib
+       ];
+       testHaskellDepends = [
+         base bytestring containers Diff groom lens mtl raw-strings-qq
+         smallcheck tasty tasty-hunit tasty-smallcheck text time vector
+         xml-conduit
+       ];
+       homepage = "https://github.com/qrilka/xlsx";
+       description = "Simple and incomplete Excel file parser/writer";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "xlsx-tabular" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, data-default
      , lens, text, xlsx
@@ -195936,6 +199369,20 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "yarn-lock" = callPackage
+    ({ mkDerivation, base, containers, megaparsec, protolude, text }:
+     mkDerivation {
+       pname = "yarn-lock";
+       version = "0.1.0";
+       sha256 = "e7a92421d7641e0741a05bdcd9632ac7b110e95802fc87a6b1ae03c1e83a4b3d";
+       libraryHaskellDepends = [
+         base containers megaparsec protolude text
+       ];
+       homepage = "https://github.com/Profpatsch/yaml-lock#readme";
+       description = "Represent and parse yarn.lock files";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "yarr" = callPackage
     ({ mkDerivation, base, deepseq, fixed-vector, ghc-prim
      , missing-foreign, primitive, template-haskell
@@ -196168,6 +199615,29 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "yesod-articles" = callPackage
+    ({ mkDerivation, base, blaze-html, dates, directory, filepath
+     , hspec, regex-compat, shakespeare, template-haskell, text
+     , th-lift-instances, yesod, yesod-core, yesod-test
+     }:
+     mkDerivation {
+       pname = "yesod-articles";
+       version = "0.1.0.0";
+       sha256 = "0b2cd01a7cb488ff59a97a5e011e9d4067f48104b10207052659ac845fa8a5ca";
+       libraryHaskellDepends = [
+         base blaze-html dates directory filepath regex-compat shakespeare
+         template-haskell text th-lift-instances yesod yesod-core
+       ];
+       testHaskellDepends = [
+         base blaze-html dates directory filepath hspec regex-compat
+         shakespeare template-haskell text th-lift-instances yesod
+         yesod-core yesod-test
+       ];
+       homepage = "https://github.com/matthew-eads/yesod-articles";
+       description = "Automatically generate article previews for a yesod site";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "yesod-auth" = callPackage
     ({ mkDerivation, aeson, authenticate, base, base16-bytestring
      , base64-bytestring, binary, blaze-builder, blaze-html
@@ -196183,6 +199653,8 @@ self: {
        pname = "yesod-auth";
        version = "1.4.17";
        sha256 = "444a9b4b913e5f7addb1b9c5aa778f32d2b9e040d9b1c4d8a232fae908392891";
+       revision = "1";
+       editedCabalFile = "d9c7b733c2bd8557bb5994a0320b125d129b30f716841be42f670ad65e2c73ac";
        libraryHaskellDepends = [
          aeson authenticate base base16-bytestring base64-bytestring binary
          blaze-builder blaze-html blaze-markup byteable bytestring conduit
@@ -196311,14 +199783,14 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-auth-fb";
-       version = "1.7";
-       sha256 = "02c041d0f58c630a2b2f4b3e810722fe71aca60c729770fd47324a9dd4dce4ce";
+       version = "1.8.0";
+       sha256 = "96d4aa8b901becac64eeb92593fe0531b76df1376cef5f2e3f1e2484dbb96588";
        libraryHaskellDepends = [
          aeson base bytestring conduit fb http-conduit lifted-base
          shakespeare text time transformers wai yesod-auth yesod-core
          yesod-fb
        ];
-       homepage = "https://github.com/prowdsponsor/yesod-auth-fb";
+       homepage = "https://github.com/psibi/yesod-auth-fb";
        description = "Authentication backend for Yesod using Facebook";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -196351,6 +199823,33 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "yesod-auth-hashdb_1_6_1" = callPackage
+    ({ mkDerivation, aeson, base, basic-prelude, bytestring, containers
+     , hspec, http-conduit, http-types, monad-logger, network-uri
+     , persistent, persistent-sqlite, pwstore-fast, resourcet, text
+     , unordered-containers, wai-extra, yesod, yesod-auth, yesod-core
+     , yesod-form, yesod-persistent, yesod-test
+     }:
+     mkDerivation {
+       pname = "yesod-auth-hashdb";
+       version = "1.6.1";
+       sha256 = "694405dea4e644acb74d6ad4ec8806d0f4b3779c5b36a430ebcf111542d35af8";
+       libraryHaskellDepends = [
+         aeson base bytestring persistent pwstore-fast text yesod-auth
+         yesod-core yesod-form yesod-persistent
+       ];
+       testHaskellDepends = [
+         aeson base basic-prelude bytestring containers hspec http-conduit
+         http-types monad-logger network-uri persistent-sqlite resourcet
+         text unordered-containers wai-extra yesod yesod-auth yesod-core
+         yesod-test
+       ];
+       homepage = "https://github.com/paul-rouse/yesod-auth-hashdb";
+       description = "Authentication plugin for Yesod";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "yesod-auth-kerberos" = callPackage
     ({ mkDerivation, authenticate-kerberos, base, bytestring
      , shakespeare, text, transformers, yesod-auth, yesod-core
@@ -196681,10 +200180,10 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-core";
-       version = "1.4.32";
-       sha256 = "0a3389e0e5d188c0bfcb99bb39856adcde28a1ebf572c0aebf8afa0e34946869";
+       version = "1.4.33";
+       sha256 = "abe26a1c5bd32e59ecc4ef84b4dad25b09ff6876f1d34249e9baff4bab5f63de";
        revision = "1";
-       editedCabalFile = "570c6168c84e518cc4978bfbbfd7a2cc23a04879937f66a8729eb592a9492af8";
+       editedCabalFile = "1bc830932296c48d528866b45239245ea5ed955a83c065c2b91a9cbc6664dd67";
        libraryHaskellDepends = [
          aeson auto-update base blaze-builder blaze-html blaze-markup
          byteable bytestring case-insensitive cereal clientsession conduit
@@ -196915,13 +200414,13 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-fb";
-       version = "0.3.4";
-       sha256 = "b7e631a440037b7b077d1bcc5d859006cf5e7420923d93dfe26a07e1d3ad9e25";
+       version = "0.4.0";
+       sha256 = "95dd01bf20fc5eed60960106621d5f8212bdab985a6e92b05f51fabf7f267310";
        libraryHaskellDepends = [
          aeson base bytestring conduit crypto-api fb http-conduit text wai
          yesod-core
        ];
-       homepage = "https://github.com/prowdsponsor/yesod-fb";
+       homepage = "https://github.com/psibi/yesod-fb";
        description = "Useful glue functions between the fb library and Yesod";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -197264,6 +200763,8 @@ self: {
        pname = "yesod-persistent";
        version = "1.4.2";
        sha256 = "d938894209e27a7f2a6e41906a9db02cf5c66df2236a864361571ba4e63b1056";
+       revision = "1";
+       editedCabalFile = "4e3bd12304f5c0e111330eb9f8d1700e83d0a314463eaaebd84308bcf06041a9";
        libraryHaskellDepends = [
          base blaze-builder conduit persistent persistent-template
          resource-pool resourcet transformers yesod-core
@@ -198536,6 +202037,19 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "yoga" = callPackage
+    ({ mkDerivation, base, bindings-DSL, ieee754 }:
+     mkDerivation {
+       pname = "yoga";
+       version = "0.0.0.1";
+       sha256 = "7b2191d2ccb7ec550496457156b74341439a214f2ed4444b3d079a468974942a";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base bindings-DSL ieee754 ];
+       description = "Bindings to Facebook's Yoga layout library";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "yoko" = callPackage
     ({ mkDerivation, base, bifunctors, containers, invariant, kinds
      , mtl, records, semigroups, template-haskell, th-sccs, type-cereal
@@ -199014,6 +202528,8 @@ self: {
        pname = "zifter";
        version = "0.0.1.1";
        sha256 = "ea8c1a721789144ae7207474a91f0471d17c42aa5a8e6962eca93c41b189de45";
+       revision = "1";
+       editedCabalFile = "38d76a58f2a44cbef3d535592d54e082011fb7ee539c1a659d4a58d5bbc961a1";
        libraryHaskellDepends = [
          ansi-terminal async base directory exceptions filepath
          optparse-applicative path path-io process safe stm validity
@@ -199083,6 +202599,8 @@ self: {
        pname = "zifter-hlint";
        version = "0.0.0.0";
        sha256 = "d7588cfa7dc22acc664a1438881abca0b38789e787e1014d4a9a0a320b35772f";
+       revision = "1";
+       editedCabalFile = "9b56b30b5d88ccb8613851ec14d630dd4d5ec5dbcb6b6f104f5b8d475afc9523";
        libraryHaskellDepends = [
          base filepath hlint path path-io safe zifter
        ];
@@ -199156,8 +202674,8 @@ self: {
      }:
      mkDerivation {
        pname = "zip";
-       version = "0.1.9";
-       sha256 = "82dd97404ff2dde034b6786838ee51a5102da31c20835d61fef3bdfe69279860";
+       version = "0.1.10";
+       sha256 = "8ec11736f49ffc9b07fa51910d7e06791358e02ba4073e5ad6346b7d3172530d";
        libraryHaskellDepends = [
          base bytestring bzlib-conduit case-insensitive cereal conduit
          conduit-extra containers digest exceptions filepath mtl path
diff --git a/pkgs/development/haskell-modules/lib.nix b/pkgs/development/haskell-modules/lib.nix
index 912d26c806c..6c718bafda5 100644
--- a/pkgs/development/haskell-modules/lib.nix
+++ b/pkgs/development/haskell-modules/lib.nix
@@ -1,6 +1,7 @@
 { pkgs }:
 
 rec {
+  makePackageSet = pkgs.callPackage ./make-package-set.nix {};
 
   overrideCabal = drv: f: (drv.override (args: args // {
     mkDerivation = drv: (args.mkDerivation drv).override f;
@@ -79,6 +80,9 @@ rec {
     fixupPhase = ":";
   });
 
+  linkWithGold = drv : appendConfigureFlag drv
+    "--ghc-option=-optl-fuse-ld=gold --ld-option=-fuse-ld=gold --with-ld=ld.gold";
+
   # link executables statically against haskell libs to reduce closure size
   justStaticExecutables = drv: overrideCabal drv (drv: {
     enableSharedExecutables = false;
@@ -101,4 +105,7 @@ rec {
 
   triggerRebuild = drv: i: overrideCabal drv (drv: { postUnpack = ": trigger rebuild ${toString i}"; });
 
+  overrideSrc = drv: { src, version ? drv.version }:
+    overrideCabal drv (_: { inherit src version; editedCabalFile = null; });
+
 }
diff --git a/pkgs/development/haskell-modules/make-package-set.nix b/pkgs/development/haskell-modules/make-package-set.nix
new file mode 100644
index 00000000000..29b294619e6
--- /dev/null
+++ b/pkgs/development/haskell-modules/make-package-set.nix
@@ -0,0 +1,107 @@
+# This expression takes a file like `hackage-packages.nix` and constructs
+# a full package set out of that.
+
+# required dependencies:
+{ pkgs, stdenv, all-cabal-hashes }:
+
+# arguments:
+#  * ghc package to use
+#  * package-set: a function that takes { pkgs, stdenv, callPackage } as first arg and `self` as second
+{ ghc, package-set }:
+
+# return value: a function from self to the package set
+self: let
+
+  inherit (stdenv.lib) fix' extends makeOverridable;
+  inherit (import ./lib.nix { inherit pkgs; }) overrideCabal;
+
+  mkDerivationImpl = pkgs.callPackage ./generic-builder.nix {
+    inherit stdenv;
+    inherit (pkgs) fetchurl pkgconfig glibcLocales coreutils gnugrep gnused;
+    nodejs = pkgs.nodejs-slim;
+    jailbreak-cabal = if (self.ghc.cross or null) != null
+      then self.ghc.bootPkgs.jailbreak-cabal
+      else self.jailbreak-cabal;
+    inherit (self) ghc;
+    hscolour = overrideCabal self.hscolour (drv: {
+      isLibrary = false;
+      doHaddock = false;
+      hyperlinkSource = false;      # Avoid depending on hscolour for this build.
+      postFixup = "rm -rf $out/lib $out/share $out/nix-support";
+    });
+    cpphs = overrideCabal (self.cpphs.overrideScope (self: super: {
+      mkDerivation = drv: super.mkDerivation (drv // {
+        enableSharedExecutables = false;
+        enableSharedLibraries = false;
+        doHaddock = false;
+        useCpphs = false;
+      });
+    })) (drv: {
+        isLibrary = false;
+        postFixup = "rm -rf $out/lib $out/share $out/nix-support";
+    });
+  };
+
+  mkDerivation = makeOverridable mkDerivationImpl;
+
+  callPackageWithScope = scope: drv: args: (stdenv.lib.callPackageWith scope drv args) // {
+    overrideScope = f: callPackageWithScope (mkScope (fix' (extends f scope.__unfix__))) drv args;
+  };
+
+  mkScope = scope: pkgs // pkgs.xorg // pkgs.gnome2 // scope;
+  defaultScope = mkScope self;
+  callPackage = drv: args: callPackageWithScope defaultScope drv args;
+
+  withPackages = packages: callPackage ./with-packages-wrapper.nix {
+    inherit (self) llvmPackages;
+    haskellPackages = self;
+    inherit packages;
+  };
+
+  haskellSrc2nix = { name, src, sha256 ? null }:
+    let
+      sha256Arg = if isNull sha256 then "--sha256=" else ''--sha256="${sha256}"'';
+    in pkgs.stdenv.mkDerivation {
+      name = "cabal2nix-${name}";
+      buildInputs = [ pkgs.cabal2nix ];
+      phases = ["installPhase"];
+      LANG = "en_US.UTF-8";
+      LOCALE_ARCHIVE = pkgs.lib.optionalString pkgs.stdenv.isLinux "${pkgs.glibcLocales}/lib/locale/locale-archive";
+      installPhase = ''
+        export HOME="$TMP"
+        mkdir -p "$out"
+        cabal2nix --compiler=${self.ghc.name} --system=${stdenv.system} ${sha256Arg} "${src}" > "$out/default.nix"
+      '';
+  };
+
+  hackage2nix = name: version: haskellSrc2nix {
+    name   = "${name}-${version}";
+    sha256 = ''$(sed -e 's/.*"SHA256":"//' -e 's/".*$//' "${all-cabal-hashes}/${name}/${version}/${name}.json")'';
+    src    = "${all-cabal-hashes}/${name}/${version}/${name}.cabal";
+  };
+
+in package-set { inherit pkgs stdenv callPackage; } self // {
+
+    inherit mkDerivation callPackage haskellSrc2nix hackage2nix;
+
+    callHackage = name: version: self.callPackage (self.hackage2nix name version);
+
+    # Creates a Haskell package from a source package by calling cabal2nix on the source.
+    callCabal2nix = name: src: self.callPackage (self.haskellSrc2nix { inherit src name; });
+
+    ghcWithPackages = selectFrom: withPackages (selectFrom self);
+
+    ghcWithHoogle = selectFrom:
+      let
+        packages = selectFrom self;
+        hoogle = callPackage ./hoogle.nix {
+          inherit packages;
+        };
+      in withPackages (packages ++ [ hoogle ]);
+
+    ghc = ghc // {
+      withPackages = self.ghcWithPackages;
+      withHoogle = self.ghcWithHoogle;
+    };
+
+  }
diff --git a/pkgs/development/haskell-modules/patches/hdbus-semicolons.patch b/pkgs/development/haskell-modules/patches/hdbus-semicolons.patch
deleted file mode 100644
index dc7ece8f3e8..00000000000
--- a/pkgs/development/haskell-modules/patches/hdbus-semicolons.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 8fd84b4d6ba257ac93a61bce3378777840e8bf80 Mon Sep 17 00:00:00 2001
-From: Nikolay Amiantov <ab@fmap.me>
-Date: Sat, 5 Nov 2016 14:27:04 +0300
-Subject: [PATCH] getSessionAddress: take first bus address from
- semicolon-separated variable
-
----
- lib/DBus/Address.hs | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/lib/DBus/Address.hs b/lib/DBus/Address.hs
-index 72ac99d..596b18c 100644
---- a/lib/DBus/Address.hs
-+++ b/lib/DBus/Address.hs
-@@ -18,6 +18,7 @@ module DBus.Address where
- import qualified Control.Exception
- import           Data.Char (digitToInt, ord, chr)
- import           Data.List (intercalate)
-+import           Data.Maybe (listToMaybe)
- import qualified Data.Map
- import           Data.Map (Map)
- import qualified System.Environment
-@@ -152,7 +153,7 @@ getSystemAddress = do
- getSessionAddress :: IO (Maybe Address)
- getSessionAddress = do
- 	env <- getenv "DBUS_SESSION_BUS_ADDRESS"
--	return (env >>= parseAddress)
-+	return $ maybe Nothing listToMaybe (env >>= parseAddresses)
- 
- -- | Returns the address in the environment variable
- -- @DBUS_STARTER_ADDRESS@, which must be set.
--- 
-2.10.1
-
diff --git a/pkgs/development/interpreters/hy/default.nix b/pkgs/development/interpreters/hy/default.nix
index e1ce01b5906..3cafd956277 100644
--- a/pkgs/development/interpreters/hy/default.nix
+++ b/pkgs/development/interpreters/hy/default.nix
@@ -2,15 +2,14 @@
 
 pythonPackages.buildPythonApplication rec {
   name = "hy-${version}";
-  version = "0.11.1";
+  version = "0.12.1";
 
   src = fetchurl {
     url = "mirror://pypi/h/hy/${name}.tar.gz";
-    sha256 = "1msqv747iz12r73mz4qvsmlwkddwjvrahlrk7ysrcz07h7dsscxs";
+    sha256 = "1fjip998k336r26i1gpri18syvfjg7z46wng1n58dmc238wm53sx";
   };
 
-  buildInputs = [ pythonPackages.appdirs ];
-  propagatedBuildInputs = [ pythonPackages.clint pythonPackages.astor pythonPackages.rply ];
+  propagatedBuildInputs = with pythonPackages; [ appdirs clint astor rply ];
 
   meta = {
     description = "A LISP dialect embedded in Python";
diff --git a/pkgs/development/interpreters/octave/default.nix b/pkgs/development/interpreters/octave/default.nix
index 3233baea8f4..ab1dc4b5fe1 100644
--- a/pkgs/development/interpreters/octave/default.nix
+++ b/pkgs/development/interpreters/octave/default.nix
@@ -41,9 +41,15 @@ stdenv.mkDerivation rec {
     ++ (stdenv.lib.optionals (!stdenv.isDarwin) [ mesa libX11 ])
     ;
 
+  # makeinfo is required by Octave at runtime to display help
+  prePatch = ''
+    substituteInPlace libinterp/corefcn/help.cc \
+      --replace 'Vmakeinfo_program = "makeinfo"' \
+                'Vmakeinfo_program = "${texinfo}/bin/makeinfo"'
+  ''
   # REMOVE ON VERSION BUMP
   # Needed for Octave-4.2.1 on darwin. See https://savannah.gnu.org/bugs/?50234
-  prePatch = stdenv.lib.optionalString stdenv.isDarwin ''
+  + stdenv.lib.optionalString stdenv.isDarwin ''
     sed 's/inline file_stat::~file_stat () { }/file_stat::~file_stat () { }/' -i ./liboctave/system/file-stat.cc
   '';
 
diff --git a/pkgs/development/interpreters/octave/hg.nix b/pkgs/development/interpreters/octave/hg.nix
new file mode 100644
index 00000000000..a34834af48c
--- /dev/null
+++ b/pkgs/development/interpreters/octave/hg.nix
@@ -0,0 +1,75 @@
+args@{ stdenv, openblas, ghostscript ? null, texinfo
+
+     , # These are arguments that shouldn't be passed to the
+       # octave package.
+       texlive, tex ? texlive.combined.scheme-small
+     , epstool, pstoedit, transfig
+     , lib, fetchhg, callPackage
+     , autoconf, automake, libtool
+     , bison, librsvg, icoutils, gperf
+
+     , # These are options that can be passed in addition to the ones
+       # octave usually takes.
+       # - rev is the HG revision.  Use "tip" for the bleeding edge.
+       # - docs can be set to false to skip building documentation.
+       rev ? "23269", docs ? true
+
+     , # All remaining arguments will be passed to the octave package.
+       ...
+     }:
+
+with stdenv.lib;
+let
+  octaveArgs = removeAttrs args
+    [ "texlive" "tex"
+      "epstool" "pstoedit" "transfig"
+      "lib" "fetchhg" "callPackage"
+      "autoconf" "automake" "libtool"
+      "bison" "librsvg" "icoutils" "gperf"
+      "rev" "docs"
+    ];
+  octave = callPackage ./default.nix octaveArgs;
+
+  # List of hashes for known HG revisions.
+  sha256s = {
+    "23269" = "87f560e873ad1454fdbcdd8aca65f9f0b1e605bdc00aebbdc4f9d862ca72ff1d";
+  };
+
+in lib.overrideDerivation octave (attrs: rec {
+  version = "4.3.0pre${rev}";
+  name = "octave-${version}";
+
+  src = fetchhg {
+    url = http://www.octave.org/hg/octave;
+    inherit rev;
+
+    sha256 =
+      if builtins.hasAttr rev sha256s
+      then builtins.getAttr rev sha256s
+      else null;
+
+    fetchSubrepos = true;
+  };
+
+  # Octave's test for including this flag seems to be broken in 4.3.
+  F77_INTEGER_8_FLAG = optional openblas.blas64 "-fdefault-integer-8";
+
+  # This enables texinfo to find the files it needs.
+  TEXINPUTS = ".:build-aux:${texinfo}/texmf-dist/tex/generic/epsf:";
+
+  disableDocs = !docs || ghostscript == null;
+
+  nativeBuildInputs = attrs.nativeBuildInputs
+    ++ [ autoconf automake libtool bison librsvg icoutils gperf ]
+    ++ optionals (!disableDocs) [ tex epstool pstoedit transfig ];
+
+  # Run bootstrap before any other patches, as other patches may refer
+  # to files that are generated by the bootstrap.
+  prePatch = ''
+    patchShebangs bootstrap
+    ./bootstrap
+  '' + attrs.prePatch;
+
+  configureFlags = attrs.configureFlags ++
+    optional disableDocs "--disable-docs";
+})
diff --git a/pkgs/development/interpreters/picolisp/default.nix b/pkgs/development/interpreters/picolisp/default.nix
index 04aca84f902..2a5d9d2f574 100644
--- a/pkgs/development/interpreters/picolisp/default.nix
+++ b/pkgs/development/interpreters/picolisp/default.nix
@@ -3,10 +3,10 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "picoLisp-${version}";
-  version = "16.6";
+  version = "16.12";
   src = fetchurl {
     url = "http://www.software-lab.de/${name}.tgz";
-    sha256 = "0y9b4wqpgx0j0igbp4h7k0bw3hvp7dnrhl3fsaagjpp305b003z3";
+    sha256 = "1k3x6mvk9b34iiyml142bzh3gf241f25ywjlaagbxzb9vklpws75";
   };
   buildInputs = optional stdenv.is64bit jdk;
   patchPhase = optionalString stdenv.isArm ''
diff --git a/pkgs/development/interpreters/python/catch_conflicts/README.md b/pkgs/development/interpreters/python/catch_conflicts/README.md
new file mode 100644
index 00000000000..d144b80e338
--- /dev/null
+++ b/pkgs/development/interpreters/python/catch_conflicts/README.md
@@ -0,0 +1,13 @@
+
+
+catch_conflicts.py
+==================
+
+The file catch_conflicts.py is in a subdirectory because, if it isn't, the
+/nix/store/ directory is added to sys.path causing a delay when building.
+
+Pointers:
+
+- https://docs.python.org/3/library/sys.html#sys.path
+
+- https://github.com/NixOS/nixpkgs/pull/23600
diff --git a/pkgs/development/interpreters/python/catch_conflicts.py b/pkgs/development/interpreters/python/catch_conflicts/catch_conflicts.py
index bb82900c65a..bb82900c65a 100644
--- a/pkgs/development/interpreters/python/catch_conflicts.py
+++ b/pkgs/development/interpreters/python/catch_conflicts/catch_conflicts.py
diff --git a/pkgs/development/interpreters/python/cpython/3.6/default.nix b/pkgs/development/interpreters/python/cpython/3.6/default.nix
index 2acca2b8a3c..78e57fef15f 100644
--- a/pkgs/development/interpreters/python/cpython/3.6/default.nix
+++ b/pkgs/development/interpreters/python/cpython/3.6/default.nix
@@ -26,7 +26,7 @@ with stdenv.lib;
 
 let
   majorVersion = "3.6";
-  minorVersion = "0";
+  minorVersion = "1";
   minorVersionSuffix = "";
   pythonVersion = majorVersion;
   version = "${majorVersion}.${minorVersion}${minorVersionSuffix}";
@@ -47,7 +47,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://www.python.org/ftp/python/${majorVersion}.${minorVersion}/Python-${version}.tar.xz";
-    sha256 = "08inlbb2vb8lahw6wfq654lqk6l1x7ncpggp6a92vqw5yq2gkidh";
+    sha256 = "0ha03sbakxblzyvlramx5fj0ranzmzx4pa2png6nn8gczkfi0650";
   };
 
   NIX_LDFLAGS = optionalString stdenv.isLinux "-lgcc_s";
@@ -63,14 +63,6 @@ in stdenv.mkDerivation {
     substituteInPlace configure --replace '-Wl,-stack_size,1000000' ' '
   '';
 
-  patches = [
-    (fetchpatch {
-      name = "glibc-2.25-failed-to-get-random-numbers.patch";
-      url = https://github.com/python/cpython/commit/ff558f5aba4.patch;
-      sha256 = "1k12gpn69np94cm942vaf40sv7gsxqf20rv1m3parzgi1gs4hqa3";
-    })
-  ];
-
   postPatch = ''
     # Determinism
     substituteInPlace "Lib/py_compile.py" --replace "source_stats['mtime']" "(1 if 'DETERMINISTIC_BUILD' in os.environ else source_stats['mtime'])"
diff --git a/pkgs/development/interpreters/python/mk-python-derivation.nix b/pkgs/development/interpreters/python/mk-python-derivation.nix
index f30bd175daa..5d710fcad88 100644
--- a/pkgs/development/interpreters/python/mk-python-derivation.nix
+++ b/pkgs/development/interpreters/python/mk-python-derivation.nix
@@ -79,9 +79,10 @@ python.stdenv.mkDerivation (builtins.removeAttrs attrs ["disabled"] // {
   postFixup = ''
     wrapPythonPrograms
   '' + lib.optionalString catchConflicts ''
-    # check if we have two packages with the same name in closure and fail
-    # this shouldn't happen, something went wrong with dependencies specs
-    ${python.interpreter} ${./catch_conflicts.py}
+    # Check if we have two packages with the same name in the closure and fail.
+    # If this happens, something went wrong with the dependencies specs.
+    # Intentionally kept in a subdirectory, see catch_conflicts/README.md.
+    ${python.interpreter} ${./catch_conflicts}/catch_conflicts.py
   '' + attrs.postFixup or '''';
 
   passthru = {
@@ -98,5 +99,3 @@ python.stdenv.mkDerivation (builtins.removeAttrs attrs ["disabled"] // {
     isBuildPythonPackage = python.meta.platforms;
   };
 })
-
-
diff --git a/pkgs/development/interpreters/ruby/default.nix b/pkgs/development/interpreters/ruby/default.nix
index 98be02da3b2..a552b2719bb 100644
--- a/pkgs/development/interpreters/ruby/default.nix
+++ b/pkgs/development/interpreters/ruby/default.nix
@@ -181,10 +181,10 @@ let
 
 in {
   ruby_2_0_0 = generic {
-    version = rubyVersion "2" "0" "0" "p647";
+    version = rubyVersion "2" "0" "0" "p648";
     sha256 = {
-      src = "1v2vbvydarcx5801gx9lc6gr6dfi0i7qbzwhsavjqbn79rdsz2n8";
-      git = "186pf4q9xymzn4zn1sjppl1skrl5f0159ixz5cz8g72dmmynq3g3";
+      src = "1y3n4c6xw2wki7pyjpq5zpbgxnw5i3jc8mcpj6rk7hs995mvv446";
+      git = "0ncjfq4hfqj9kcr8pbll6kypwnmcgs8w7l4466qqfyv7jj3yjd76";
     };
   };
 
@@ -196,27 +196,27 @@ in {
     };
   };
 
-  ruby_2_2_5 = generic {
-    version = rubyVersion "2" "2" "5" "";
+  ruby_2_2_7 = generic {
+    version = rubyVersion "2" "2" "7" "";
     sha256 = {
-      src = "1qrmlcyc0cy9hgafb1wny2h90rjyyh6d72nvr2h4xjm4jwbb7i1h";
-      git = "0k0av6ypyq08c9axm721f0xi2bcp1443l7ydbxv4v8x4vsxdkmq2";
+      src = "199xz5bvmp26c7vyzw47cpxkd8jk826kc8nlpavqzj5vqp388h9p";
+      git = "0i0nsm9ldjp39m9xq47v8w6wlg821ikczz530493cs150qkqa0a1";
     };
   };
 
-  ruby_2_3_3 = generic {
-    version = rubyVersion "2" "3" "3" "";
+  ruby_2_3_4 = generic {
+    version = rubyVersion "2" "3" "4" "";
     sha256 = {
-      src = "1dqmh42p6siv9aqzdjldsnhljj3f2h30m0v8cf25icjmqp40h514";
-      git = "0cwjf0nrzaa5g81bw0qp65byyadhxvbnvprkshv3ckjl7yi46zf6";
+      src = "1hy0zr4vwkqcjbykh2hp0d6ifkrhgskaxlzy6878sc9kr4bqzqcq";
+      git = "0jjhgdjv3aayxb0flxjiny7xfzh3ggrqcpvgjv2ydm25padfbqmp";
     };
   };
 
-  ruby_2_4_0 = generic {
-    version = rubyVersion "2" "4" "0" "";
+  ruby_2_4_1 = generic {
+    version = rubyVersion "2" "4" "1" "";
     sha256 = {
-      src = "0gcyn9328w2vma882l71c9v9ygmmsj2z8j1l44c4l2x92nyx0bqm";
-      git = "1w9zyx8xmka8jdiha57snnbfls2r6dc9g03d8cjx0nxkmwf3r2l3";
+      src = "0l0201fqwzwygnrgxay469gbb2w865bnqckq00x3prdmbh6y2c53";
+      git = "1gjn31ymypzzcwkrjx62hqw59fywz1x3cyvmi1f2yb9bwb3659ss";
     };
   };
 }
diff --git a/pkgs/development/interpreters/ruby/patchsets.nix b/pkgs/development/interpreters/ruby/patchsets.nix
index f1b82210aec..f6ecb7c8e28 100644
--- a/pkgs/development/interpreters/ruby/patchsets.nix
+++ b/pkgs/development/interpreters/ruby/patchsets.nix
@@ -24,24 +24,19 @@ rec {
     "${patchSet}/patches/ruby/2.1.8/railsexpress/08-funny-falcon-method-cache.patch"
     "${patchSet}/patches/ruby/2.1.8/railsexpress/09-heap-dump-support.patch"
   ];
-  "2.2.5" = ops useRailsExpress [
-    "${patchSet}/patches/ruby/2.2.5/railsexpress/01-zero-broken-tests.patch"
-    "${patchSet}/patches/ruby/2.2.5/railsexpress/02-improve-gc-stats.patch"
-    "${patchSet}/patches/ruby/2.2.5/railsexpress/03-display-more-detailed-stack-trace.patch"
+  "2.2.7" = ops useRailsExpress [
+    "${patchSet}/patches/ruby/2.2/head/railsexpress/01-zero-broken-tests.patch"
+    "${patchSet}/patches/ruby/2.2/head/railsexpress/02-improve-gc-stats.patch"
+    "${patchSet}/patches/ruby/2.2/head/railsexpress/03-display-more-detailed-stack-trace.patch"
   ];
-  "2.3.1" = ops useRailsExpress [
+  "2.3.4" = ops useRailsExpress [
     "${patchSet}/patches/ruby/2.3/head/railsexpress/01-skip-broken-tests.patch"
     "${patchSet}/patches/ruby/2.3/head/railsexpress/02-improve-gc-stats.patch"
     "${patchSet}/patches/ruby/2.3/head/railsexpress/03-display-more-detailed-stack-trace.patch"
   ];
-  "2.3.3" = ops useRailsExpress [
-    "${patchSet}/patches/ruby/2.3/head/railsexpress/01-skip-broken-tests.patch"
-    "${patchSet}/patches/ruby/2.3/head/railsexpress/02-improve-gc-stats.patch"
-    "${patchSet}/patches/ruby/2.3/head/railsexpress/03-display-more-detailed-stack-trace.patch"
-  ];
-  "2.4.0" = ops useRailsExpress [
-    "${patchSet}/patches/ruby/2.4.0/railsexpress/01-skip-broken-tests.patch"
-    "${patchSet}/patches/ruby/2.4.0/railsexpress/02-improve-gc-stats.patch"
-    "${patchSet}/patches/ruby/2.4.0/railsexpress/03-display-more-detailed-stack-trace.patch"
+  "2.4.1" = ops useRailsExpress [
+    "${patchSet}/patches/ruby/2.4/head/railsexpress/01-skip-broken-tests.patch"
+    "${patchSet}/patches/ruby/2.4/head/railsexpress/02-improve-gc-stats.patch"
+    "${patchSet}/patches/ruby/2.4/head/railsexpress/03-display-more-detailed-stack-trace.patch"
   ];
 }
diff --git a/pkgs/development/interpreters/ruby/rvm-patchsets.nix b/pkgs/development/interpreters/ruby/rvm-patchsets.nix
index 51db26b7823..c60d6e3728d 100644
--- a/pkgs/development/interpreters/ruby/rvm-patchsets.nix
+++ b/pkgs/development/interpreters/ruby/rvm-patchsets.nix
@@ -1,8 +1,8 @@
 { fetchFromGitHub }:
 
 fetchFromGitHub {
-  owner  = "manveru";
+  owner  = "skaes";
   repo   = "rvm-patchsets";
-  rev    = "46e04f230ce91a786f5e583389443efec0ecd594";
-  sha256 = "0ayh8zj8knyz3344an942qdf33pi42jmksqk34frb346zi1ag693";
+  rev    = "15f5df0fba0e2fb489856b5bdb67a52fb9745f94";
+  sha256 = "0vdgr7xp3gbmsyaz4q78qlbwmp006b1gkgj0kwi6h8d80dclbzny";
 }
diff --git a/pkgs/development/java-modules/build-maven-package.nix b/pkgs/development/java-modules/build-maven-package.nix
index d83b43ffd75..b3c3e1732e0 100644
--- a/pkgs/development/java-modules/build-maven-package.nix
+++ b/pkgs/development/java-modules/build-maven-package.nix
@@ -27,7 +27,7 @@ in stdenv.mkDerivation rec {
     echo "<settings><mirrors>\
       <mirror><id>tmpm2</id><url>file://$out/m2</url><mirrorOf>*</mirrorOf></mirror></mirrors>\
       <localRepository>$out/m2/</localRepository></settings>" >> $out/m2/settings.xml
-    ${maven}/bin/mvn ${optionalString (quiet) "-q"} clean package -Dmaven.test.skip=${if skipTests then "true" else "false"} -Danimal.sniffer.skip=true -gs $out/m2/settings.xml
+    ${maven}/bin/mvn ${optionalString (quiet) "-q"} clean package -Dmaven.test.skip=${boolToString skipTests} -Danimal.sniffer.skip=true -gs $out/m2/settings.xml
     cp ./target/*.jar $out/m2/${m2Path}
     cp -v ./target/*.jar $out/target/
   '';
diff --git a/pkgs/development/libraries/NSPlist/default.nix b/pkgs/development/libraries/NSPlist/default.nix
new file mode 100644
index 00000000000..bfee9961984
--- /dev/null
+++ b/pkgs/development/libraries/NSPlist/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation {
+  name = "NSPlist-713decf";
+
+  src = fetchFromGitHub {
+    owner = "matthewbauer";
+    repo = "NSPlist";
+    rev = "713decf06c1ef6c39a707bc99eb45ac9925f2b8a";
+    sha256 = "0v4yfiwfd08hmh2ydgy6pnmlzjbd96k78dsla9pfd56ka89aw74r";
+  };
+
+  buildInputs = [ cmake ];
+
+  meta = with stdenv.lib; {
+    maintainers = with maintainers; [ matthewbauer ];
+    description = "Parses .plist files";
+    license = licenses.mit;
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/libraries/PlistCpp/default.nix b/pkgs/development/libraries/PlistCpp/default.nix
new file mode 100644
index 00000000000..f7703b731b9
--- /dev/null
+++ b/pkgs/development/libraries/PlistCpp/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchFromGitHub, cmake, boost, NSPlist, pugixml }:
+
+stdenv.mkDerivation {
+  name = "PlistCpp-11615d";
+
+  src = fetchFromGitHub {
+    owner = "matthewbauer";
+    repo = "PlistCpp";
+    rev = "11615deab3369356a182dabbf5bae30574967264";
+    sha256 = "10jn6bvm9vn6492zix2pd724v5h4lccmkqg3lxfw8r0qg3av0yzv";
+  };
+
+  buildInputs = [ cmake boost NSPlist pugixml ];
+
+
+  meta = with stdenv.lib; {
+    maintainers = with maintainers; [ matthewbauer ];
+    description = "CPP bindings for Plist";
+    license = licenses.mit;
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/libraries/arm-frc-linux-gnueabi-eglibc/default.nix b/pkgs/development/libraries/arm-frc-linux-gnueabi-eglibc/default.nix
new file mode 100755
index 00000000000..8adbef8f576
--- /dev/null
+++ b/pkgs/development/libraries/arm-frc-linux-gnueabi-eglibc/default.nix
@@ -0,0 +1,65 @@
+{stdenv, fetchurl, arm-frc-linux-gnueabi-linux-api-headers}:
+
+let
+  _target = "arm-frc-linux-gnueabi";
+  _basever = "2.21-r0.83";
+  srcs = [
+    (fetchurl {
+      url = "http://download.ni.com/ni-linux-rt/feeds/2016/arm/ipk/cortexa9-vfpv3/libc6_${_basever}_cortexa9-vfpv3.ipk";
+      sha256 = "117058215440e258027bb9ff18db63c078d55288787dbedfcd5730c06c7a1ae9";
+    })
+    (fetchurl {
+      url = "http://download.ni.com/ni-linux-rt/feeds/2016/arm/ipk/cortexa9-vfpv3/libc6-dev_${_basever}_cortexa9-vfpv3.ipk";
+      sha256 = "e28b05d498c1160949f51539270035e12c5bb9d75d68df1f5f111a8fc087f3a6";
+    })
+    (fetchurl {
+      url = "http://download.ni.com/ni-linux-rt/feeds/2016/arm/ipk/cortexa9-vfpv3/libcidn1_${_basever}_cortexa9-vfpv3.ipk";
+      sha256 = "0f7372590abf69da54a9b7db8f944cf6c48d9ac8a091218ee60f84fdd9de2398";
+    })
+    (fetchurl {
+      url = "http://download.ni.com/ni-linux-rt/feeds/2016/arm/ipk/cortexa9-vfpv3/libc6-thread-db_${_basever}_cortexa9-vfpv3.ipk";
+      sha256 = "5a839498507a0b63165cb7a78234d7eb2ee2bb6a046bff586090f2e70e0e2bfb";
+    })
+    (fetchurl {
+      url = "http://download.ni.com/ni-linux-rt/feeds/2016/arm/ipk/cortexa9-vfpv3/libc6-extra-nss_${_basever}_cortexa9-vfpv3.ipk";
+      sha256 = "d765d43c8ec95a4c64fa38eddf8cee848fd090d9cc5b9fcda6d2c9b03d2635c5";
+    })
+  ];
+in
+stdenv.mkDerivation rec {
+  version = "2.21";
+  name = "${_target}-eglibc-${version}";
+
+  sourceRoot = ".";
+  inherit srcs;
+
+  phases = [ "unpackPhase" "installPhase" ];
+
+  unpackCmd = ''
+      ar x $curSrc
+      tar xf data.tar.gz
+  '';
+
+  installPhase = ''
+    mkdir -p $out/${_target}
+    rm -rf lib/eglibc
+    find . \( -name .install -o -name ..install.cmd \) -delete
+    cp -r lib $out/${_target}
+    cp -r usr $out/${_target}
+
+    cp -r ${arm-frc-linux-gnueabi-linux-api-headers}/* $out
+  '';
+
+  meta = {
+    description = "FRC standard C lib";
+    longDescription = ''
+      eglibc library for the NI RoboRio to be used in compiling frc user
+      programs.
+    '';
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = [ stdenv.lib.maintainers.colescott ];
+    platforms = stdenv.lib.platforms.linux;
+
+    priority = 2;
+  };
+}
diff --git a/pkgs/development/libraries/arm-frc-linux-gnueabi-linux-api-headers/default.nix b/pkgs/development/libraries/arm-frc-linux-gnueabi-linux-api-headers/default.nix
new file mode 100755
index 00000000000..29e349e0a82
--- /dev/null
+++ b/pkgs/development/libraries/arm-frc-linux-gnueabi-linux-api-headers/default.nix
@@ -0,0 +1,43 @@
+{stdenv, fetchurl}:
+
+let
+  _target = "arm-frc-linux-gnueabi";
+  _basever = "3.19-r0.36";
+  src = fetchurl {
+    url = "http://download.ni.com/ni-linux-rt/feeds/2016/arm/ipk/cortexa9-vfpv3/linux-libc-headers-dev_${_basever}_cortexa9-vfpv3.ipk";
+    sha256 = "10066ddb9a19bf764a9a67919a7976478041e98c44c19308f076c78ecb07408c";
+  };
+in
+stdenv.mkDerivation rec {
+  version = "3.19";
+  name = "${_target}-linux-api-headers-${version}";
+
+  sourceRoot = ".";
+  inherit src;
+
+  phases = [ "unpackPhase" "installPhase" ];
+
+  unpackCmd = ''
+    ar x $curSrc
+    tar xf data.tar.gz
+  '';
+
+  installPhase = ''
+    mkdir -p $out/${_target}
+    find . \( -name .install -o -name ..install.cmd \) -delete
+    cp -r usr/ $out/${_target}
+  '';
+
+  meta = {
+    description = "FRC linux api headers";
+    longDescription = ''
+      All linux api headers required to compile the arm-frc-linux-gnuaebi-gcc
+      cross compiler and all user programs.
+    '';
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = [ stdenv.lib.maintainers.colescott ];
+    platforms = stdenv.lib.platforms.linux;
+
+    priority = 1;
+  };
+}
diff --git a/pkgs/development/libraries/aspell/default.nix b/pkgs/development/libraries/aspell/default.nix
index 5af340bef07..e69bbe0d2f2 100644
--- a/pkgs/development/libraries/aspell/default.nix
+++ b/pkgs/development/libraries/aspell/default.nix
@@ -23,12 +23,27 @@ stdenv.mkDerivation rec {
     );
   '';
 
-  # Note: Users should define the `ASPELL_CONF' environment variable to
-  # `data-dir $HOME/.nix-profile/lib/aspell/' so that they can access
-  # dictionaries installed in their profile.
-  #
-  # We can't use `$out/etc/aspell.conf' for that purpose since Aspell
-  # doesn't expand environment variables such as `$HOME'.
+  postInstall = ''
+    local prog="$out/bin/aspell"
+    local hidden="$out/bin/.aspell-wrapped"
+    mv "$prog" "$hidden"
+    cat > "$prog" <<END
+    #! $SHELL -e
+    if [ -z "\$ASPELL_CONF" ]; then
+      for p in \$NIX_PROFILES; do
+        if [ -d "\$p/lib/aspell" ]; then
+          ASPELL_CONF="data-dir \$p/lib/aspell"
+        fi
+      done
+      if [ -z "\$ASPELL_CONF" ] && [ -d "\$HOME/.nix-profile/lib/aspell" ]; then
+        ASPELL_CONF="data-dir \$HOME/.nix-profile/lib/aspell"
+      fi
+      export ASPELL_CONF
+    fi
+    exec "$hidden" "\$@"
+    END
+    chmod +x "$prog"
+  '';
 
   meta = {
     description = "Spell checker for many languages";
diff --git a/pkgs/development/libraries/at-spi2-core/default.nix b/pkgs/development/libraries/at-spi2-core/default.nix
index 3562969f6c9..85ab3f35fe7 100644
--- a/pkgs/development/libraries/at-spi2-core/default.nix
+++ b/pkgs/development/libraries/at-spi2-core/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   versionMajor = "2.22";
-  versionMinor = "0";
+  versionMinor = "1";
   moduleName   = "at-spi2-core";
   name = "${moduleName}-${versionMajor}.${versionMinor}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz";
-    sha256 = "415ea3af21318308798e098be8b3a17b2f0cf2fe16cecde5ad840cf4e0f2c80a";
+    sha256 = "6f8f39f091bfe2c57870cb8bfbb02edac4fc85cda69665e6967937daf7201c42";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/botan/generic.nix b/pkgs/development/libraries/botan/generic.nix
index 4a4ec5d9fe9..b37fd6079b9 100644
--- a/pkgs/development/libraries/botan/generic.nix
+++ b/pkgs/development/libraries/botan/generic.nix
@@ -3,6 +3,7 @@
 , baseVersion, revision, sha256
 , extraConfigureFlags ? ""
 , postPatch ? null
+, darwin
 , ...
 }:
 
@@ -20,7 +21,8 @@ stdenv.mkDerivation rec {
   };
   inherit postPatch;
 
-  buildInputs = [ python bzip2 zlib gmp openssl boost ];
+  buildInputs = [ python bzip2 zlib gmp openssl boost ]
+             ++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
 
   configurePhase = ''
     python configure.py --prefix=$out --with-bzip2 --with-zlib ${if openssl != null then "--with-openssl" else ""} ${extraConfigureFlags}${if stdenv.cc.isClang then " --cc=clang" else "" }
diff --git a/pkgs/development/libraries/ffmpeg-full/default.nix b/pkgs/development/libraries/ffmpeg-full/default.nix
index 47fcd76240b..9a5c228ac82 100644
--- a/pkgs/development/libraries/ffmpeg-full/default.nix
+++ b/pkgs/development/libraries/ffmpeg-full/default.nix
@@ -110,7 +110,7 @@
 #, libquvi ? null # Quvi input support
 , samba ? null # Samba protocol
 #, schroedinger ? null # Dirac de/encoder
-, SDL ? null
+, SDL2 ? null
 #, shine ? null # Fixed-point MP3 encoder
 , soxr ? null # Resampling via soxr
 , speex ? null # Speex de/encoder
@@ -199,7 +199,7 @@ assert ffplayProgram -> avcodecLibrary
                      && avformatLibrary
                      && swscaleLibrary
                      && swresampleLibrary
-                     && SDL != null;
+                     && SDL2 != null;
 assert ffprobeProgram -> avcodecLibrary && avformatLibrary;
 assert ffserverProgram -> avformatLibrary;
 /*
@@ -368,7 +368,7 @@ stdenv.mkDerivation rec {
     #(enableFeature (schroedinger != null) "libschroedinger")
     #(enableFeature (shine != null) "libshine")
     (enableFeature (samba != null && gplLicensing && version3Licensing) "libsmbclient")
-    (enableFeature (SDL != null) "sdl") # Only configurable since 2.5, auto detected before then
+    (enableFeature (SDL2 != null) "sdl2")
     (enableFeature (soxr != null) "libsoxr")
     (enableFeature (speex != null) "libspeex")
     #(enableFeature (twolame != null) "libtwolame")
@@ -401,7 +401,7 @@ stdenv.mkDerivation rec {
     libjack2 ladspaH lame libass libbluray libbs2b libcaca libdc1394 libmodplug
     libogg libopus libssh libtheora libvdpau libvorbis libvpx libwebp libX11
     libxcb libXext libXfixes libXv lzma openal openjpeg_1 libpulseaudio rtmpdump
-    samba SDL soxr speex vid-stab wavpack x264 x265 xavs xvidcore zeromq4 zlib
+    samba SDL2 soxr speex vid-stab wavpack x264 x265 xavs xvidcore zeromq4 zlib
   ] ++ optional openglExtlib mesa
     ++ optionals x11grabExtlib [ libXext libXfixes ]
     ++ optionals nonfreeLicensing [ fdk_aac openssl ]
diff --git a/pkgs/development/libraries/gdbm/default.nix b/pkgs/development/libraries/gdbm/default.nix
index 71b65131015..de77b4c99b8 100644
--- a/pkgs/development/libraries/gdbm/default.nix
+++ b/pkgs/development/libraries/gdbm/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "gdbm-1.12";
+  name = "gdbm-1.13";
 
   src = fetchurl {
     url = "mirror://gnu/gdbm/${name}.tar.gz";
-    sha256 = "1smwz4x5qa4js0zf1w3asq6z7mh20zlgwbh2bk5dczw6xrk22yyr";
+    sha256 = "0lx201q20dvc70f8a3c9s7s18z15inlxvbffph97ngvrgnyjq9cx";
   };
 
   doCheck = true;
diff --git a/pkgs/development/libraries/gdk-pixbuf/default.nix b/pkgs/development/libraries/gdk-pixbuf/default.nix
index af4bfc0709e..f40ebf00590 100644
--- a/pkgs/development/libraries/gdk-pixbuf/default.nix
+++ b/pkgs/development/libraries/gdk-pixbuf/default.nix
@@ -3,14 +3,14 @@
 
 let
   ver_maj = "2.36";
-  ver_min = "5";
+  ver_min = "6";
 in
 stdenv.mkDerivation rec {
   name = "gdk-pixbuf-${ver_maj}.${ver_min}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gdk-pixbuf/${ver_maj}/${name}.tar.xz";
-    sha256 = "7ace06170291a1f21771552768bace072ecdea9bd4a02f7658939b9a314c40fc";
+    sha256 = "455eb90c09ed1b71f95f3ebfe1c904c206727e0eeb34fc94e5aaf944663a820c";
   };
 
   outputs = [ "out" "dev" "devdoc" ];
diff --git a/pkgs/development/libraries/geoclue/2.0.nix b/pkgs/development/libraries/geoclue/2.0.nix
index 0c22cc9ff9f..8cc06f9269e 100644
--- a/pkgs/development/libraries/geoclue/2.0.nix
+++ b/pkgs/development/libraries/geoclue/2.0.nix
@@ -1,7 +1,9 @@
-{ fetchurl, stdenv, intltool, pkgconfig, glib, json_glib, libsoup, geoip
+{ fetchurl, stdenv, intltool, libintlOrEmpty, pkgconfig, glib, json_glib, libsoup, geoip
 , dbus, dbus_glib, modemmanager, avahi
 }:
 
+with stdenv.lib;
+
 stdenv.mkDerivation rec {
   name = "geoclue-2.4.3";
 
@@ -10,23 +12,31 @@ stdenv.mkDerivation rec {
     sha256 = "0pk07k65dlw37nz8z5spksivsv5nh96xmbi336rf2yfxf2ldpadd";
   };
 
-  buildInputs =
+  buildInputs = libintlOrEmpty ++
    [ intltool pkgconfig glib json_glib libsoup geoip
-     dbus dbus_glib modemmanager avahi
-   ];
+     dbus dbus_glib avahi
+   ] ++ optionals (!stdenv.isDarwin) [ modemmanager ];
 
   preConfigure = ''
      substituteInPlace configure --replace "-Werror" ""
   '';
 
-  configureFlags = [ "--with-systemdsystemunitdir=$(out)/etc/systemd/system" ];
+  configureFlags = [ "--with-systemdsystemunitdir=$(out)/etc/systemd/system" ] ++
+                   optionals stdenv.isDarwin [
+                       "--disable-silent-rules"
+                       "--disable-3g-source"
+                       "--disable-cdma-source"
+                       "--disable-modem-gps-source"
+                       "--disable-nmea-source" ];
+
+  NIX_CFLAGS_COMPILE = optionalString stdenv.isDarwin " -lintl";
 
   propagatedBuildInputs = [ dbus dbus_glib glib ];
 
   meta = with stdenv.lib; {
     description = "Geolocation framework and some data providers";
     maintainers = with maintainers; [ raskin garbas ];
-    platforms = platforms.linux;
+    platforms = with platforms; linux ++ darwin;
     license = licenses.lgpl2;
   };
 }
diff --git a/pkgs/development/libraries/git2/default.nix b/pkgs/development/libraries/git2/default.nix
index 51e366ba29c..cf27249064f 100644
--- a/pkgs/development/libraries/git2/default.nix
+++ b/pkgs/development/libraries/git2/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, pkgconfig, cmake, zlib, python, libssh2, openssl, curl, http-parser, libiconv }:
 
 stdenv.mkDerivation (rec {
-  version = "0.24.6";
+  version = "0.25.1";
   name = "libgit2-${version}";
 
   src = fetchurl {
     name = "${name}.tar.gz";
     url = "https://github.com/libgit2/libgit2/tarball/v${version}";
-    sha256 = "070jrv690bd5dq991lc32qfnai9ywvrjzsfgi3rcw6kw4l2ynxjr";
+    sha256 = "100bah8picqjzyhpw4wd7z5vyidcb8aggin50bhbpn607h8n8bml";
   };
 
   # TODO: `cargo` (rust's package manager) surfaced a serious bug in
diff --git a/pkgs/development/libraries/glfw/3.x.nix b/pkgs/development/libraries/glfw/3.x.nix
index feb769229c0..1500718c737 100644
--- a/pkgs/development/libraries/glfw/3.x.nix
+++ b/pkgs/development/libraries/glfw/3.x.nix
@@ -1,5 +1,6 @@
 { stdenv, fetchFromGitHub, cmake, mesa, libXrandr, libXi, libXxf86vm, libXfixes, xlibsWrapper
 , libXinerama, libXcursor
+, darwin
 }:
 
 stdenv.mkDerivation rec {
@@ -18,7 +19,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     cmake mesa libXrandr libXi libXxf86vm libXfixes xlibsWrapper
     libXinerama libXcursor
-  ];
+  ] ++ stdenv.lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ Cocoa Kernel ]);
 
   cmakeFlags = "-DBUILD_SHARED_LIBS=ON";
 
diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix
index 7128f560619..66510919e34 100644
--- a/pkgs/development/libraries/glibc/common.nix
+++ b/pkgs/development/libraries/glibc/common.nix
@@ -48,7 +48,8 @@ stdenv.mkDerivation ({
          "/bin:/usr/bin", which is inappropriate on NixOS machines. This
          patch extends the search path by "/run/current-system/sw/bin". */
       ./fix_path_attribute_in_getconf.patch
-    ];
+    ]
+      ++ lib.optional stdenv.isi686 ./fix-i686-memchr.patch;
 
   postPatch =
     # Needed for glibc to build with the gnumake 3.82
diff --git a/pkgs/development/libraries/glibc/fix-i686-memchr.patch b/pkgs/development/libraries/glibc/fix-i686-memchr.patch
new file mode 100644
index 00000000000..32564de9f3a
--- /dev/null
+++ b/pkgs/development/libraries/glibc/fix-i686-memchr.patch
@@ -0,0 +1,23 @@
+Fix i686 memchr overflow calculation (BZ#21182)
+
+https://sourceware.org/git/?p=glibc.git;a=commit;h=3abeeec5f46ff03
+diff --git a/sysdeps/i386/i686/multiarch/memchr-sse2.S b/sysdeps/i386/i686/multiarch/memchr-sse2.S
+index 910679c..e41f324 100644
+--- a/sysdeps/i386/i686/multiarch/memchr-sse2.S
++++ b/sysdeps/i386/i686/multiarch/memchr-sse2.S
+@@ -117,7 +117,6 @@ L(crosscache):
+ 
+ # ifndef USE_AS_RAWMEMCHR
+ 	jnz	L(match_case2_prolog1)
+-	lea	-16(%edx), %edx
+         /* Calculate the last acceptable address and check for possible
+            addition overflow by using satured math:
+            edx = ecx + edx
+@@ -125,6 +124,7 @@ L(crosscache):
+ 	add	%ecx, %edx
+ 	sbb	%eax, %eax
+ 	or	%eax, %edx
++	sub	$16, %edx
+ 	jbe	L(return_null)
+ 	lea	16(%edi), %edi
+ # else
diff --git a/pkgs/development/libraries/gmp/6.x.nix b/pkgs/development/libraries/gmp/6.x.nix
index bb4e40dd3a7..e30c15e629e 100644
--- a/pkgs/development/libraries/gmp/6.x.nix
+++ b/pkgs/development/libraries/gmp/6.x.nix
@@ -3,11 +3,11 @@
 let inherit (stdenv.lib) optional optionalString; in
 
 let self = stdenv.mkDerivation rec {
-  name = "gmp-6.1.1";
+  name = "gmp-6.1.2";
 
   src = fetchurl { # we need to use bz2, others aren't in bootstrapping stdenv
     urls = [ "mirror://gnu/gmp/${name}.tar.bz2" "ftp://ftp.gmplib.org/pub/${name}/${name}.tar.bz2" ];
-    sha256 = "1mpzprdzkgfpdc1v2lf4dxlxps4x8bvmzvd8n1ri6gw9y9jrh458";
+    sha256 = "1clg7pbpk6qwxj5b2mw0pghzawp2qlm3jf9gdd8i6fl6yh2bnxaj";
   };
 
   #outputs TODO: split $cxx due to libstdc++ dependency
diff --git a/pkgs/development/libraries/gnutls/3.5.10.nix b/pkgs/development/libraries/gnutls/3.5.10.nix
new file mode 100644
index 00000000000..a1eab1a84c1
--- /dev/null
+++ b/pkgs/development/libraries/gnutls/3.5.10.nix
@@ -0,0 +1,10 @@
+{ callPackage, fetchurl, libunistring, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  version = "3.5.10";
+
+  src = fetchurl {
+    url = "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.5/gnutls-${version}.tar.xz";
+    sha256 = "17apwvdkkazh5w8z8mbanpj2yj8s2002qwy46wz4v3akpa33wi5g";
+  };
+})
diff --git a/pkgs/development/libraries/gnutls/3.5.nix b/pkgs/development/libraries/gnutls/3.5.nix
index a1eab1a84c1..77ecd4957f7 100644
--- a/pkgs/development/libraries/gnutls/3.5.nix
+++ b/pkgs/development/libraries/gnutls/3.5.nix
@@ -1,10 +1,18 @@
 { callPackage, fetchurl, libunistring, ... } @ args:
 
 callPackage ./generic.nix (args // rec {
-  version = "3.5.10";
+  version = "3.5.11";
 
   src = fetchurl {
     url = "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.5/gnutls-${version}.tar.xz";
-    sha256 = "17apwvdkkazh5w8z8mbanpj2yj8s2002qwy46wz4v3akpa33wi5g";
+    sha256 = "13z2dxxyrsb7gfpl1k2kafqh2zaigi872y5xgykhs9cyaz2mqxji";
   };
+
+  # Skip two tests introduced in 3.5.11.  Probable reasons of failure:
+  #  - pkgconfig: building against the result won't work before installing
+  #  - trust-store: default trust store path (/etc/ssl/...) is missing in sandbox
+  postPatch = ''
+    sed '2iexit 77' -i tests/pkgconfig.sh
+    sed '/^void doit(void)/,$s/{/{ exit(77);/; t' -i tests/trust-store.c
+  '';
 })
diff --git a/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch b/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch
index 49e059befdb..75d9281dfb0 100644
--- a/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch
+++ b/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch
@@ -57,15 +57,16 @@ diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py
 index 838d343..ca7fc0d 100644
 --- a/giscanner/shlibs.py
 +++ b/giscanner/shlibs.py
-@@ -53,10 +53,24 @@ def _resolve_libtool(options, binary, libraries):
+@@ -53,10 +53,27 @@ def _resolve_libtool(options, binary, libraries):
  # Match absolute paths on OS X to conform to how libraries are usually
  # referenced on OS X systems.
  def _ldd_library_pattern(library_name):
 +    nix_store_dir = re.escape('@nixStoreDir@'.rstrip('/'))
      pattern = "(?<![A-Za-z0-9_-])(lib*%s[^A-Za-z0-9_-][^\s\(\)]*)"
--    if platform.system() == 'Darwin':
--        pattern = "([^\s]*lib*%s[^A-Za-z0-9_-][^\s\(\)]*)"
+     if platform.system() == 'Darwin':
+         pattern = "([^\s]*lib*%s[^A-Za-z0-9_-][^\s\(\)]*)"
 -    return re.compile(pattern % re.escape(library_name))
++        return re.compile(pattern % re.escape(library_name))
 +    pattern = r'''
 +        (
 +          (?:
@@ -85,7 +86,7 @@ index 838d343..ca7fc0d 100644
  
  
  # This is a what we do for non-la files. We assume that we are on an
-@@ -115,7 +129,11 @@ def _resolve_non_libtool(options, binary, libraries):
+@@ -115,7 +132,11 @@ def _resolve_non_libtool(options, binary, libraries):
                  m = pattern.search(line)
                  if m:
                      del patterns[library]
diff --git a/pkgs/development/libraries/gtk+/3.x.nix b/pkgs/development/libraries/gtk+/3.x.nix
index 10f01294301..aa8957b2c7d 100644
--- a/pkgs/development/libraries/gtk+/3.x.nix
+++ b/pkgs/development/libraries/gtk+/3.x.nix
@@ -13,7 +13,7 @@ with stdenv.lib;
 
 let
   ver_maj = "3.22";
-  ver_min = "8";
+  ver_min = "11";
   version = "${ver_maj}.${ver_min}";
 in
 stdenv.mkDerivation rec {
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/gtk+/${ver_maj}/gtk+-${version}.tar.xz";
-    sha256 = "c7254a88df5c17e9609cee9e848c3d0104512707edad4c3b4f256b131f8d3af1";
+    sha256 = "db440670cb6f3c098b076df3735fbc4e69359bd605385e87c90ee48344a804ca";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/gtk-mac-integration/default.nix b/pkgs/development/libraries/gtk-mac-integration/default.nix
index 30ac8f2fe28..f9ce0aa4b81 100644
--- a/pkgs/development/libraries/gtk-mac-integration/default.nix
+++ b/pkgs/development/libraries/gtk-mac-integration/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, autoreconfHook, pkgconfig, glib, gtk_doc, gtk }:
+{ stdenv, lib, fetchFromGitHub, autoreconfHook, pkgconfig, glib, gtk_doc, gtk, gobjectIntrospection }:
 
 stdenv.mkDerivation rec {
   name = "gtk-mac-integration-2.0.8";
@@ -10,8 +10,9 @@ stdenv.mkDerivation rec {
     sha256 = "1fbhnvj0rqc3089ypvgnpkp6ad2rr37v5qk38008dgamb9h7f3qs";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkgconfig gtk_doc ];
-  buildInputs = [ glib gtk ];
+  nativeBuildInputs = [ autoreconfHook pkgconfig gtk_doc gobjectIntrospection ];
+  buildInputs = [ glib ];
+  propagatedBuildInputs = [ gtk ];
 
   preAutoreconf = ''
     gtkdocize
diff --git a/pkgs/development/libraries/hidapi/default.nix b/pkgs/development/libraries/hidapi/default.nix
index 07534ed63d7..80085759a76 100644
--- a/pkgs/development/libraries/hidapi/default.nix
+++ b/pkgs/development/libraries/hidapi/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, udev, libusb }:
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, udev, libusb
+, darwin }:
 
 stdenv.mkDerivation rec {
   name = "hidapi-0.8.0-rc1";
@@ -10,7 +11,10 @@ stdenv.mkDerivation rec {
     sha256 = "13d5jkmh9nh4c2kjch8k8amslnxapa9vkqzrk1z6rqmw8qgvzbkj";
   };
 
-  buildInputs = [ autoreconfHook pkgconfig udev libusb ];
+  buildInputs = [ autoreconfHook pkgconfig ]
+    ++ stdenv.lib.optionals stdenv.isLinux [ udev libusb ];
+
+  propagatedBuildInputs = stdenv.lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ IOKit Cocoa ]);
 
   meta = with stdenv.lib; {
     homepage = https://github.com/signal11/hidapi;
diff --git a/pkgs/development/libraries/hivex/default.nix b/pkgs/development/libraries/hivex/default.nix
index 76836b69d2a..eced02fd33e 100644
--- a/pkgs/development/libraries/hivex/default.nix
+++ b/pkgs/development/libraries/hivex/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   name = "hivex-${version}";
-  version = "1.3.11";
+  version = "1.3.14";
 
   src = fetchurl {
     url = "http://libguestfs.org/download/hivex/${name}.tar.gz";
-    sha256 = "0y3nqykwy58divxkv7gmsb067dasyfz3apbp437hl57rgrndyfn6";
+    sha256 = "0aqv28prjcmc66znw0wgaxjijg5mjm44bgn1iil8a4dlbsgv4p7b";
   };
 
   patches = [ ./hivex-syms.patch ];
diff --git a/pkgs/development/libraries/hivex/hivex-syms.patch b/pkgs/development/libraries/hivex/hivex-syms.patch
index 2280ade59a6..bacd34e8515 100644
--- a/pkgs/development/libraries/hivex/hivex-syms.patch
+++ b/pkgs/development/libraries/hivex/hivex-syms.patch
@@ -1,6 +1,6 @@
-diff -rupN hivex-1.3.11/lib/Makefile.am hivex-1.3.11-new/lib/Makefile.am
---- hivex-1.3.11/lib/Makefile.am	2013-09-10 13:04:12.000000000 +0200
-+++ hivex-1.3.11-new/lib/Makefile.am	2014-11-06 01:31:05.956106861 +0100
+diff -rupN hivex-1.3.14/lib/Makefile.am hivex-1.3.14-new/lib/Makefile.am
+--- hivex-1.3.14/lib/Makefile.am	2013-09-10 13:04:12.000000000 +0200
++++ hivex-1.3.14-new/lib/Makefile.am	2014-11-06 01:31:05.956106861 +0100
 @@ -40,8 +40,7 @@ libhivex_la_SOURCES = \
  
  libhivex_la_LIBADD =  ../gnulib/lib/libgnu.la $(LTLIBOBJS)
diff --git a/pkgs/development/libraries/itk/default.nix b/pkgs/development/libraries/itk/default.nix
index 7e3220d8a37..3865aa226f9 100644
--- a/pkgs/development/libraries/itk/default.nix
+++ b/pkgs/development/libraries/itk/default.nix
@@ -1,13 +1,20 @@
-{ stdenv, fetchurl, cmake, libX11, libuuid, xz, vtk }:
+{ stdenv, fetchurl, fetchpatch, cmake, libX11, libuuid, xz, vtk }:
 
 stdenv.mkDerivation rec {
-  name = "itk-4.10.0";
+  name = "itk-4.11.0";
 
   src = fetchurl {
-    url = mirror://sourceforge/itk/InsightToolkit-4.10.0.tar.xz;
-    sha256 = "0pxijhqsnwcp9jv1d8p11hsj90k8ajpwxhrnn8kk8c56k7y1207a";
+    url = mirror://sourceforge/itk/InsightToolkit-4.11.0.tar.xz;
+    sha256 = "0axvyds0gads5914g0m70z5q16gzghr0rk0hy3qjpf1k9bkxvcq6";
   };
 
+  # Clang 4 dislikes signed comparisons of pointers against integers. Should no longer be
+  # necessary once we get past ITK 4.11.
+  patches = [ (fetchpatch {
+    url    = "https://github.com/InsightSoftwareConsortium/ITK/commit/d1407a55910ad9c232f3d241833cfd2e59024946.patch";
+    sha256 = "0h851afkv23fwgkibjss30fkbz4nkfg6rmmm4pfvkwpml23gzz7s";
+  }) ];
+
   cmakeFlags = [
     "-DBUILD_TESTING=OFF"
     "-DBUILD_EXAMPLES=OFF"
diff --git a/pkgs/development/libraries/leptonica/default.nix b/pkgs/development/libraries/leptonica/default.nix
index eacab92d36b..b9b6c3c7c24 100644
--- a/pkgs/development/libraries/leptonica/default.nix
+++ b/pkgs/development/libraries/leptonica/default.nix
@@ -1,14 +1,38 @@
-{stdenv, fetchurl, libpng, libtiff, libjpeg, zlib}:
+{ stdenv, fetchurl, fetchpatch, autoreconfHook, pkgconfig
+, giflib, libjpeg, libpng, libtiff, libwebp, openjpeg, zlib
+}:
 
-stdenv.mkDerivation {
-  name = "leptonica-1.72";
+stdenv.mkDerivation rec {
+  name = "leptonica-${version}";
+  version = "1.74.1";
 
   src = fetchurl {
-    url = http://www.leptonica.org/source/leptonica-1.72.tar.gz;
-    sha256 = "0mhzvqs0im04y1cpcc1yma70hgdac1frf33h73m9z3356bfymmbr";
+    url = "http://www.leptonica.org/source/${name}.tar.gz";
+    sha256 = "0qpcidvv6igybrrhj0m6j47g642c8sk1qn4dpj82mgd38xx52skl";
   };
 
-  buildInputs = [ libpng libtiff libjpeg zlib ];
+  patches = stdenv.lib.singleton (fetchpatch {
+    # configure: Support pkg-config
+    url = "https://github.com/DanBloomberg/leptonica/commit/"
+        + "4476d162cc191a0fefb2ce434153e12bbf188664.patch";
+    sha256 = "1razzp2g49shfaravfqpxm3ivcd1r92lvqysll6nnf6d1wp9865s";
+  });
+
+  postPatch = ''
+    # Remove the AC_SUBST() macros on *_LIBS, because the *_LIBS variables will
+    # be automatically set by PKG_CHECK_MODULES() since autotools 0.24 and
+    # using the ones that are set here in Leptonica's configure.ac do not
+    # include -L linker flags.
+    sed -i -e '/PKG_CHECK_MODULES/,/^ *\])/s/AC_SUBST([^)]*)//' configure.ac
+
+    # The giflib package doesn't ship a pkg-config file, so we need to inject
+    # the linker search path.
+    substituteInPlace configure.ac --replace -lgif \
+      ${stdenv.lib.escapeShellArg "'-L${giflib}/lib -lgif'"}
+  '';
+
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+  buildInputs = [ giflib libjpeg libpng libtiff libwebp openjpeg zlib ];
 
   meta = {
     description = "Image processing and analysis library";
diff --git a/pkgs/development/libraries/libbap/default.nix b/pkgs/development/libraries/libbap/default.nix
new file mode 100644
index 00000000000..83bd81456c0
--- /dev/null
+++ b/pkgs/development/libraries/libbap/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub, bap, ocaml, findlib, ctypes, autoreconfHook,
+  which }:
+
+stdenv.mkDerivation rec {
+  name = "libbap-${version}";
+  version = "master-2017-02-08";
+
+  src = fetchFromGitHub {
+    owner = "BinaryAnalysisPlatform";
+    repo = "bap-bindings";
+    rev = "b3da5bd5cdb3d646015ccdeb886b5ea8fd85a108";
+    sha256 = "0cwfyfpxbi9bm4kkpamyd7mgsm5b6j1rh217fqb5gi05wg45rkbb";
+  };
+
+  nativeBuildInputs = [ autoreconfHook which ];
+  buildInputs = [ ocaml bap findlib ctypes ];
+
+  preInstall = ''
+    mkdir -p $out/lib
+    mkdir -p $out/include
+  '';
+
+  meta = {
+    homepage = http://github.com/binaryanalysisplatform/bap-bindings;
+    description = "A C library for interacting with BAP";
+    maintainers = [ stdenv.lib.maintainers.maurer ];
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/pkgs/development/libraries/libbsd/darwin.patch b/pkgs/development/libraries/libbsd/darwin.patch
new file mode 100644
index 00000000000..77062cf4ec8
--- /dev/null
+++ b/pkgs/development/libraries/libbsd/darwin.patch
@@ -0,0 +1,675 @@
+diff --git a/configure.ac b/configure.ac
+index 5a432d4..a69ae0b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -55,7 +55,7 @@ AS_CASE([$host_os],
+ )
+ 
+ # Checks for header files.
+-AC_CHECK_HEADERS([sys/ndir.h sys/dir.h ndir.h dirent.h])
++AC_CHECK_HEADERS([sys/ndir.h sys/dir.h ndir.h dirent.h stdio_ext.h])
+ 
+ # Checks for typedefs, structures, and compiler characteristics.
+ AC_TYPE_UID_T
+@@ -143,6 +143,31 @@ AC_CHECK_FUNCS([clearenv dirfd fopencookie __fpurge \
+                 pstat_getproc sysconf])
+ AM_CONDITIONAL(HAVE_GETENTROPY, [test "x$ac_cv_func_getentropy" = "xtrue"])
+ 
++HostOS=`echo "$host" | sed 's/.*-//'`
++os_is_macosx=false
++nonLinuxOS=false
++AC_SUBST(HostOS)
++case ${HostOS} in
++	darwin* | powerpc*-*-darwin* | freebsd* | netbsd* | openbsd*)
++		os_is_macosx=true
++		nonLinuxOS=true
++		echo HostOS="$HostOS"
++		;;
++	*)
++		echo host="$host"
++		echo HostOS="$HostOS"
++		os_is_macosx=false
++		nonLinuxOS=false
++		;;
++esac		
++AM_CONDITIONAL([IS_DARWIN], [test x$os_is_macosx = xtrue])
++AM_COND_IF([IS_DARWIN],
++	[AC_DEFINE([IS_DARWIN], [1], [Get HostOS Type is Darwin])])
++
++AM_CONDITIONAL([NON_LINUX], [test x$userdefine_gethostbyname_r = xtrue])
++AM_COND_IF([NON_LINUX],
++	[AC_DEFINE([NON_LINUX], [1], [Get HostOS Type])])
++
+ AC_CONFIG_FILES([
+ 	Makefile
+ 	include/Makefile
+diff --git a/include/bsd/libutil.h b/include/bsd/libutil.h
+index ebb6160..ce882bf 100644
+--- a/include/bsd/libutil.h
++++ b/include/bsd/libutil.h
+@@ -39,7 +39,9 @@
+ #ifndef _LIBUTIL_H_
+ #define _LIBUTIL_H_
+ 
++#ifdef HAVE_FEATURES_H
+ #include <features.h>
++#endif
+ #include <sys/cdefs.h>
+ #include <sys/types.h>
+ #include <stdint.h>
+diff --git a/include/bsd/stdio.h b/include/bsd/stdio.h
+index 7697425..ef34c4f 100644
+--- a/include/bsd/stdio.h
++++ b/include/bsd/stdio.h
+@@ -44,12 +44,16 @@
+ __BEGIN_DECLS
+ const char *fmtcheck(const char *, const char *);
+ 
++#if !defined(darwin) && !defined(__APPLE__) && !defined(MACOSX)
+ /* XXX: The function requires cooperation from the system libc to store the
+  * line buffer in the FILE struct itself. */
+ char *fgetln(FILE *fp, size_t *lenp)
+ 	__attribute__((deprecated("This functions cannot be safely ported, "
+ 	                          "use getline(3) instead, as it is supported "
+ 	                          "by GNU and POSIX.1-2008.")));
++#else
++char *fgetln(FILE *fp, size_t *lenp);
++#endif
+ 
+ /*
+  * Note: We diverge from the FreeBSD, OpenBSD and DragonFlyBSD declarations,
+diff --git a/include/bsd/string.h b/include/bsd/string.h
+index ee2f953..a3ab077 100644
+--- a/include/bsd/string.h
++++ b/include/bsd/string.h
+@@ -37,11 +37,14 @@
+ #include <sys/types.h>
+ 
+ __BEGIN_DECLS
+-size_t strlcpy(char *dst, const char *src, size_t siz);
+-size_t strlcat(char *dst, const char *src, size_t siz);
+ char *strnstr(const char *str, const char *find, size_t str_len);
++#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
++size_t bsd_strlcpy(char *dst, const char *src, size_t siz);
++size_t bsd_strlcat(char *dst, const char *src, size_t siz);
++void bsd_strmode(mode_t mode, char *str);
++#else
+ void strmode(mode_t mode, char *str);
+-
++#endif
+ void explicit_bzero(void *buf, size_t len);
+ __END_DECLS
+ 
+diff --git a/src/Makefile.am b/src/Makefile.am
+index ad83dbf..0f2a7ee 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -54,17 +54,21 @@ libbsd_la_DEPENDENCIES = \
+ 	libbsd.map
+ libbsd_la_LIBADD = \
+ 	$(CLOCK_GETTIME_LIBS)
++
++if IS_DARWIN
++libbsd_la_LDFLAGS = \
++	-Wl \
++	-version-number $(LIBBSD_ABI)
++else
+ libbsd_la_LDFLAGS = \
+ 	-Wl,--version-script=$(srcdir)/libbsd.map \
+ 	-version-number $(LIBBSD_ABI)
++endif
++
+ libbsd_la_SOURCES = \
+ 	arc4random.c \
+-	arc4random.h \
+-	arc4random_unix.h \
+-	arc4random_openbsd.h \
+ 	arc4random_uniform.c \
+ 	bsd_getopt.c \
+-	chacha_private.h \
+ 	closefrom.c \
+ 	dehumanize_number.c \
+ 	err.c \
+@@ -117,6 +121,15 @@ libbsd_la_SOURCES += \
+ 	$(nil)
+ endif
+ 
++noinst_HEADERS = \
++	arc4random.h \
++	arc4random_bsd.h \
++	arc4random_linux.h \
++	arc4random_unix.h \
++	arc4random_osx.h \
++	arc4random_openbsd.h \
++	chacha_private.h
++
+ libbsd_ctor_a_SOURCES = \
+ 	setproctitle_ctor.c \
+ 	$(nil)
+diff --git a/src/arc4random_bsd.h b/src/arc4random_bsd.h
+new file mode 100644
+index 0000000..ece2f85
+--- /dev/null
++++ b/src/arc4random_bsd.h
+@@ -0,0 +1,86 @@
++/*	$OpenBSD: arc4random_freebsd.h,v 1.2 2015/01/15 06:57:18 deraadt Exp $	*/
++
++/*
++ * Copyright (c) 1996, David Mazieres <dm@uun.org>
++ * Copyright (c) 2008, Damien Miller <djm@openbsd.org>
++ * Copyright (c) 2013, Markus Friedl <markus@openbsd.org>
++ * Copyright (c) 2014, Theo de Raadt <deraadt@openbsd.org>
++ *
++ * Permission to use, copy, modify, and distribute this software for any
++ * purpose with or without fee is hereby granted, provided that the above
++ * copyright notice and this permission notice appear in all copies.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
++ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
++ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
++ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
++ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
++ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
++ */
++
++/*
++ * Stub functions for portability.
++ */
++
++#include <sys/mman.h>
++
++#include <pthread.h>
++#include <signal.h>
++
++static pthread_mutex_t arc4random_mtx = PTHREAD_MUTEX_INITIALIZER;
++#define _ARC4_LOCK()   pthread_mutex_lock(&arc4random_mtx)
++#define _ARC4_UNLOCK() pthread_mutex_unlock(&arc4random_mtx)
++
++/*
++ * Unfortunately, pthread_atfork() is broken on FreeBSD (at least 9 and 10) if
++ * a program does not link to -lthr. Callbacks registered with pthread_atfork()
++ * appear to fail silently. So, it is not always possible to detect a PID
++ * wraparound.
++ */
++#define _ARC4_ATFORK(f) pthread_atfork(NULL, NULL, (f))
++
++static inline void
++_getentropy_fail(void)
++{
++	raise(SIGKILL);
++}
++
++static volatile sig_atomic_t _rs_forked;
++
++static inline void
++_rs_forkhandler(void)
++{
++	_rs_forked = 1;
++}
++
++static inline void
++_rs_forkdetect(void)
++{
++	static pid_t _rs_pid = 0;
++	pid_t pid = getpid();
++
++	if (_rs_pid == 0 || _rs_pid != pid || _rs_forked) {
++		_rs_pid = pid;
++		_rs_forked = 0;
++		if (rs)
++			memset(rs, 0, sizeof(*rs));
++	}
++}
++
++static inline int
++_rs_allocate(struct _rs **rsp, struct _rsx **rsxp)
++{
++	if ((*rsp = mmap(NULL, sizeof(**rsp), PROT_READ|PROT_WRITE,
++	    MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED)
++		return (-1);
++
++	if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE,
++	    MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) {
++		munmap(*rsp, sizeof(**rsp));
++		return (-1);
++	}
++
++	_ARC4_ATFORK(_rs_forkhandler);
++	return (0);
++}
+diff --git a/src/arc4random_linux.h b/src/arc4random_linux.h
+new file mode 100644
+index 0000000..d61a8db
+--- /dev/null
++++ b/src/arc4random_linux.h
+@@ -0,0 +1,86 @@
++/*	$OpenBSD: arc4random_linux.h,v 1.8 2014/08/13 06:04:10 deraadt Exp $	*/
++
++/*
++ * Copyright (c) 1996, David Mazieres <dm@uun.org>
++ * Copyright (c) 2008, Damien Miller <djm@openbsd.org>
++ * Copyright (c) 2013, Markus Friedl <markus@openbsd.org>
++ * Copyright (c) 2014, Theo de Raadt <deraadt@openbsd.org>
++ *
++ * Permission to use, copy, modify, and distribute this software for any
++ * purpose with or without fee is hereby granted, provided that the above
++ * copyright notice and this permission notice appear in all copies.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
++ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
++ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
++ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
++ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
++ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
++ */
++
++/*
++ * Stub functions for portability.
++ */
++
++#include <sys/mman.h>
++
++#include <pthread.h>
++#include <signal.h>
++
++static pthread_mutex_t arc4random_mtx = PTHREAD_MUTEX_INITIALIZER;
++#define _ARC4_LOCK()   pthread_mutex_lock(&arc4random_mtx)
++#define _ARC4_UNLOCK() pthread_mutex_unlock(&arc4random_mtx)
++
++#ifdef __GLIBC__
++extern void *__dso_handle;
++extern int __register_atfork(void (*)(void), void(*)(void), void (*)(void), void *);
++#define _ARC4_ATFORK(f) __register_atfork(NULL, NULL, (f), __dso_handle)
++#else
++#define _ARC4_ATFORK(f) pthread_atfork(NULL, NULL, (f))
++#endif
++
++static inline void
++_getentropy_fail(void)
++{
++	raise(SIGKILL);
++}
++
++static volatile sig_atomic_t _rs_forked;
++
++static inline void
++_rs_forkhandler(void)
++{
++	_rs_forked = 1;
++}
++
++static inline void
++_rs_forkdetect(void)
++{
++	static pid_t _rs_pid = 0;
++	pid_t pid = getpid();
++
++	if (_rs_pid == 0 || _rs_pid != pid || _rs_forked) {
++		_rs_pid = pid;
++		_rs_forked = 0;
++		if (rs)
++			memset(rs, 0, sizeof(*rs));
++	}
++}
++
++static inline int
++_rs_allocate(struct _rs **rsp, struct _rsx **rsxp)
++{
++	if ((*rsp = mmap(NULL, sizeof(**rsp), PROT_READ|PROT_WRITE,
++	    MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED)
++		return (-1);
++
++	if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE,
++	    MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) {
++		munmap(*rsp, sizeof(**rsp));
++		return (-1);
++	}
++
++	_ARC4_ATFORK(_rs_forkhandler);
++	return (0);
++}
+diff --git a/src/arc4random_osx.h b/src/arc4random_osx.h
+new file mode 100644
+index 0000000..14771a6
+--- /dev/null
++++ b/src/arc4random_osx.h
+@@ -0,0 +1,82 @@
++/*	$OpenBSD: arc4random_osx.h,v 1.10 2015/09/11 11:52:55 deraadt Exp $	*/
++
++/*
++ * Copyright (c) 1996, David Mazieres <dm@uun.org>
++ * Copyright (c) 2008, Damien Miller <djm@openbsd.org>
++ * Copyright (c) 2013, Markus Friedl <markus@openbsd.org>
++ * Copyright (c) 2014, Theo de Raadt <deraadt@openbsd.org>
++ *
++ * Permission to use, copy, modify, and distribute this software for any
++ * purpose with or without fee is hereby granted, provided that the above
++ * copyright notice and this permission notice appear in all copies.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
++ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
++ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
++ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
++ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
++ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
++ */
++
++/*
++ * Stub functions for portability.
++ */
++
++#include <sys/mman.h>
++
++#include <unistd.h>
++#include <pthread.h>
++#include <signal.h>
++
++static pthread_mutex_t arc4random_mtx = PTHREAD_MUTEX_INITIALIZER;
++#define _ARC4_LOCK()   pthread_mutex_lock(&arc4random_mtx)
++#define _ARC4_UNLOCK() pthread_mutex_unlock(&arc4random_mtx)
++
++#define _ARC4_ATFORK(f) pthread_atfork(NULL, NULL, (f))
++
++static inline void
++_getentropy_fail(void)
++{
++	raise(SIGKILL);
++}
++
++static volatile sig_atomic_t _rs_forked;
++
++static inline void
++_rs_forkhandler(void)
++{
++	_rs_forked = 1;
++}
++
++static inline void
++_rs_forkdetect(void)
++{
++	static pid_t _rs_pid = 0;
++	pid_t pid = getpid();
++
++	if (_rs_pid == 0 || _rs_pid != pid || _rs_forked) {
++		_rs_pid = pid;
++		_rs_forked = 0;
++		if (rs)
++			memset(rs, 0, sizeof(*rs));
++	}
++}
++
++static inline int
++_rs_allocate(struct _rs **rsp, struct _rsx **rsxp)
++{
++	if ((*rsp = mmap(NULL, sizeof(**rsp), PROT_READ|PROT_WRITE,
++	    MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED)
++		return (-1);
++
++	if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE,
++	    MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) {
++		munmap(*rsp, sizeof(**rsp));
++		*rsp = NULL;
++		return (-1);
++	}
++
++	_ARC4_ATFORK(_rs_forkhandler);
++	return (0);
++}
+diff --git a/src/fgetln.c b/src/fgetln.c
+index 4d1726e..9c73788 100644
+--- a/src/fgetln.c
++++ b/src/fgetln.c
+@@ -30,7 +30,9 @@
+ #include <sys/types.h>
+ #include <string.h>
+ 
++#if !defined(darwin) && !defined(__APPLE__) && !defined(MACOSX)
+ #include "local-link.h"
++#endif
+ 
+ #ifdef HAVE_GETLINE
+ struct filebuf {
+@@ -75,9 +77,11 @@ fgetln(FILE *stream, size_t *len)
+ 		return fb->buf;
+ 	}
+ }
++#if !defined(darwin) && !defined(__APPLE__) && !defined(MACOSX)
+ libbsd_link_warning(fgetln,
+                     "This functions cannot be safely ported, use getline(3) "
+                     "instead, as it is supported by GNU and POSIX.1-2008.")
++#endif
+ #else
+ #error "Function fgetln() needs to be ported."
+ #endif
+diff --git a/src/fpurge.c b/src/fpurge.c
+index 462535a..e7eb46f 100644
+--- a/src/fpurge.c
++++ b/src/fpurge.c
+@@ -26,9 +26,11 @@
+ 
+ #include <errno.h>
+ #include <stdio.h>
++#if HAVE___FPURGE
+ #include <stdio_ext.h>
++#endif
+ 
+-#ifdef HAVE___FPURGE
++#ifdef HAVE___FPURGE                   /* glibc >= 2.2, Haiku, Solaris >= 7 */
+ int
+ fpurge(FILE *fp)
+ {
+@@ -42,5 +44,55 @@ fpurge(FILE *fp)
+ 	return 0;
+ }
+ #else
+-#error "Function fpurge() needs to be ported."
++#define fp_ fp
++//#error "Function fpurge() needs to be ported."
++//#elif HAVE_FPURGE                   /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin 1.7 */
++int
++fpurge(FILE *fp)
++{
++	if (fp == NULL || fileno(fp) < 0) {
++		errno = EBADF;
++		return EOF;
++	}
++
++  /* Call the system's fpurge function.  */
++# undef fpurge
++# if !HAVE_DECL_FPURGE
++  extern int fpurge (FILE *);
++# endif
++  int result = fpurge (fp);
++# if defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */
++  if (result == 0)
++    /* Correct the invariants that fpurge broke.
++       <stdio.h> on BSD systems says:
++         "The following always hold: if _flags & __SRD, _w is 0."
++       If this invariant is not fulfilled and the stream is read-write but
++       currently reading, subsequent putc or fputc calls will write directly
++       into the buffer, although they shouldn't be allowed to.  */
++    if ((fp_->_flags & __SRD) != 0)
++      fp_->_w = 0;
++#endif
++  return result;
++}
++//#endif
++#endif
++
++#ifdef TEST
++int
++main()
++{
++	static FILE fp_bad;
++	FILE *fp;
++
++	if (fpurge(&fp_bad) == 0)
++		return 1;
++
++	fp = fopen("/dev/zero", "r");
++	if (fpurge(fp) < 0)
++		return 1;
++
++	fclose(fp);
++
++	return 0;
++}
+ #endif
+diff --git a/src/funopen.c b/src/funopen.c
+index 7d6ae31..9963162 100644
+--- a/src/funopen.c
++++ b/src/funopen.c
+@@ -137,6 +137,7 @@ funopen(const void *cookie,
+ 
+ 	return fopencookie(cookiewrap, mode, funcswrap);
+ }
++#elif defined(darwin) || defined(__APPLE__) || defined(MACOSX)
+ #else
+ #error "Function funopen() needs to be ported."
+ #endif
+diff --git a/src/getentropy.c b/src/getentropy.c
+index 3f11a1e..8a23a07 100644
+--- a/src/getentropy.c
++++ b/src/getentropy.c
+@@ -28,9 +28,7 @@
+ #include "getentropy_linux.c"
+ #elif defined(__GNU__)
+ #include "getentropy_hurd.c"
+-#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
+-#include "getentropy_bsd.c"
+-#elif defined(__NetBSD__)
++#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__)
+ #include "getentropy_bsd.c"
+ #elif defined(__sun)
+ #include "getentropy_solaris.c"
+diff --git a/src/hash/sha512.h b/src/hash/sha512.h
+index 4f368a1..ab22fc1 100644
+--- a/src/hash/sha512.h
++++ b/src/hash/sha512.h
+@@ -29,7 +29,11 @@
+ #ifndef _SHA512_H_
+ #define _SHA512_H_
+ 
++#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
++#include <stdint.h>
++#else
+ #include <sys/types.h>
++#endif
+ 
+ #define SHA512_DIGEST_LENGTH		64
+ 
+diff --git a/src/hash/sha512c.c b/src/hash/sha512c.c
+index c2a93be..f69013d 100644
+--- a/src/hash/sha512c.c
++++ b/src/hash/sha512c.c
+@@ -27,7 +27,11 @@
+ #include <sys/cdefs.h>
+ __FBSDID("$FreeBSD$");
+ 
++#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
++#include <machine/endian.h>
++#else
+ #include <sys/endian.h>
++#endif
+ #include <sys/types.h>
+ 
+ #include <string.h>
+diff --git a/src/nlist.c b/src/nlist.c
+index 0cffe55..f785b61 100644
+--- a/src/nlist.c
++++ b/src/nlist.c
+@@ -27,6 +27,7 @@
+  * SUCH DAMAGE.
+  */
+ 
++#if !defined(darwin) && !defined(__APPLE__) && !defined(MACOSX)
+ #if defined(LIBC_SCCS) && !defined(lint)
+ static char sccsid[] = "@(#)nlist.c	8.1 (Berkeley) 6/4/93";
+ #endif /* LIBC_SCCS and not lint */
+@@ -409,3 +410,4 @@ elf_sym_to_nlist(struct nlist *nl, Elf_Sym *s, Elf_Shdr *shdr, int shnum)
+ 		nl->n_type |= N_EXT;
+ }
+ #endif /* _NLIST_DO_ELF */
++#endif
+diff --git a/src/setproctitle.c b/src/setproctitle.c
+index c18c61c..b1b1591 100644
+--- a/src/setproctitle.c
++++ b/src/setproctitle.c
+@@ -32,6 +32,11 @@
+ #include <unistd.h>
+ #include <string.h>
+ 
++#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
++#define __asm__(x)
++extern char **environ;
++#endif
++
+ static struct {
+ 	/* Original value. */
+ 	const char *arg0;
+@@ -287,7 +292,14 @@ __asm__(".symver setproctitle_impl,setproctitle@@LIBBSD_0.5");
+  * for code linking against that version, and change the default to use the
+  * new version, so that new code depends on the implemented version. */
+ #ifdef HAVE_TYPEOF
++#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
++//
++// HACK: even weak aliasing breaks in clang so just comment this out for now
++//
++// extern typeof(setproctitle_impl) setproctitle_stub __attribute__((weak, alias("setproctitle_impl")));
++#else
+ extern typeof(setproctitle_impl) setproctitle_stub __attribute__((alias("setproctitle_impl")));
++#endif
+ #else
+ void setproctitle_stub(const char *fmt, ...)
+ 	__attribute__((alias("setproctitle_impl")));
+diff --git a/src/strlcat.c b/src/strlcat.c
+index 21c8afb..e036132 100644
+--- a/src/strlcat.c
++++ b/src/strlcat.c
+@@ -27,7 +27,11 @@
+  * If retval >= siz, truncation occurred.
+  */
+ size_t
++#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
++bsd_strlcat(char *dst, const char *src, size_t siz)
++#else
+ strlcat(char *dst, const char *src, size_t siz)
++#endif
+ {
+ 	char *d = dst;
+ 	const char *s = src;
+diff --git a/src/strlcpy.c b/src/strlcpy.c
+index 1719d35..c63591d 100644
+--- a/src/strlcpy.c
++++ b/src/strlcpy.c
+@@ -25,7 +25,11 @@
+  * Returns strlen(src); if retval >= siz, truncation occurred.
+  */
+ size_t
++#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
++bsd_strlcpy(char *dst, const char *src, size_t siz)
++#else
+ strlcpy(char *dst, const char *src, size_t siz)
++#endif
+ {
+ 	char *d = dst;
+ 	const char *s = src;
+diff --git a/src/strmode.c b/src/strmode.c
+index 8d825ae..c1b5f8d 100644
+--- a/src/strmode.c
++++ b/src/strmode.c
+@@ -37,7 +37,11 @@ static char sccsid[] = "@(#)strmode.c	8.3 (Berkeley) 8/15/94";
+ #include <string.h>
+ 
+ void
++#if defined(darwin) || defined(__APPLE__) || defined(MACOSX)
++bsd_strmode(mode_t mode, char *p)
++#else
+ strmode(mode_t mode, char *p)
++#endif
+ {
+ 	 /* print type */
+ 	switch (mode & S_IFMT) {
diff --git a/pkgs/development/libraries/libbsd/default.nix b/pkgs/development/libraries/libbsd/default.nix
index 44a1fd5b3e2..013fea3e9fc 100644
--- a/pkgs/development/libraries/libbsd/default.nix
+++ b/pkgs/development/libraries/libbsd/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, autoreconfHook }:
 
 stdenv.mkDerivation rec {
   name = "libbsd-${version}";
@@ -9,10 +9,16 @@ stdenv.mkDerivation rec {
     sha256 = "1a1l7afchlvvj2zfi7ajcg26bbkh5i98y2v5h9j5p1px9m7n6jwk";
   };
 
+  # darwin changes configure.ac which means we need to regenerate
+  # the configure scripts
+  nativeBuildInputs = [ autoreconfHook ];
+
+  patches = stdenv.lib.optionals stdenv.isDarwin [ ./darwin.patch ];
+
   meta = with stdenv.lib; {
     description = "Common functions found on BSD systems";
     homepage = http://libbsd.freedesktop.org/;
     license = licenses.bsd3;
-    platforms = platforms.linux;
+    platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix
index 3dfbdd7040f..de219bee382 100644
--- a/pkgs/development/libraries/libdrm/default.nix
+++ b/pkgs/development/libraries/libdrm/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, valgrind }:
 
 stdenv.mkDerivation rec {
-  name = "libdrm-2.4.75";
+  name = "libdrm-2.4.79";
 
   src = fetchurl {
     url = "http://dri.freedesktop.org/libdrm/${name}.tar.bz2";
-    sha256 = "2d5a500eef412cc287d12268eed79d571e262d4957a2ec9258073f305985054f";
+    sha256 = "c6aaf319293bce38023e9a637471b0f45c93c807d2a279060d741fc7a2e5b197";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/libgudev/default.nix b/pkgs/development/libraries/libgudev/default.nix
index e751c6ee6c0..5b29c23fa6e 100644
--- a/pkgs/development/libraries/libgudev/default.nix
+++ b/pkgs/development/libraries/libgudev/default.nix
@@ -1,21 +1,23 @@
-{ lib, stdenv, fetchurl, pkgconfig, udev, glib }:
-
-let version = "230"; in
+{ stdenv, fetchurl, pkgconfig, udev, glib }:
 
 stdenv.mkDerivation rec {
   name = "libgudev-${version}";
+  version = "231";
 
   src = fetchurl {
     url = "https://download.gnome.org/sources/libgudev/${version}/${name}.tar.xz";
-    sha256 = "a2e77faced0c66d7498403adefcc0707105e03db71a2b2abd620025b86347c18";
+    sha256 = "15iz0qp57qy5pjrblsn36l0chlncqggqsg8h8i8c71499afzj7iv";
   };
 
   buildInputs = [ pkgconfig udev glib ];
 
-  meta = {
+  # There's a dependency cycle with umockdev and the tests fail to LD_PRELOAD anyway.
+  configureFlags = [ "--disable-umockdev" ];
+
+  meta = with stdenv.lib; {
     homepage = https://wiki.gnome.org/Projects/libgudev;
-    maintainers = [ lib.maintainers.eelco ];
-    platforms = lib.platforms.linux;
-    license = lib.licenses.lgpl2Plus;
+    maintainers = [ maintainers.eelco ];
+    platforms = platforms.linux;
+    license = licenses.lgpl2Plus;
   };
 }
diff --git a/pkgs/development/libraries/libguestfs/default.nix b/pkgs/development/libraries/libguestfs/default.nix
index 02e75788d01..7902cf67c8d 100644
--- a/pkgs/development/libraries/libguestfs/default.nix
+++ b/pkgs/development/libraries/libguestfs/default.nix
@@ -1,32 +1,45 @@
 { stdenv, fetchurl, pkgconfig, autoreconfHook, makeWrapper
 , ncurses, cpio, gperf, perl, cdrkit, flex, bison, qemu, pcre, augeas, libxml2
 , acl, libcap, libcap_ng, libconfig, systemd, fuse, yajl, libvirt, hivex
-, gmp, readline, file, libintlperl, GetoptLong, SysVirt, numactl, xen, libapparmor }:
+, gmp, readline, file, libintlperl, GetoptLong, SysVirt, numactl, xen, libapparmor
+, getopt, perlPackages, ocamlPackages }:
 
 stdenv.mkDerivation rec {
   name = "libguestfs-${version}";
-  version = "1.29.5";
+  version = "1.36.3";
 
   appliance = fetchurl {
-    url = "http://libguestfs.org/download/binaries/appliance/appliance-1.26.0.tar.xz";
-    sha256 = "1kzvgmy845kclvr93y6rdpss2q0p8yfqg14r0i1pi5r4zc68yvj4";
+    url = "http://libguestfs.org/download/binaries/appliance/appliance-1.36.1.tar.xz";
+    sha256 = "1klvr13gpg615hgjvviwpxlj839lbwwsrq7x100qg5zmmjfhl125";
   };
 
   src = fetchurl {
-    url = "http://libguestfs.org/download/1.29-development/libguestfs-${version}.tar.gz";
-    sha256 = "1il0p3irwcyfdm83935hj4bvxsx0kdfn8dvqmg2lbzap17jvzj8h";
+    url = "http://libguestfs.org/download/1.36-stable/libguestfs-${version}.tar.gz";
+    sha256 = "0dhb69b7svjgnrmbyvizdz5vsgsrr95ypz0qvp3kz83jyj6sa76m";
   };
 
   buildInputs = [
     makeWrapper pkgconfig autoreconfHook ncurses cpio gperf perl
     cdrkit flex bison qemu pcre augeas libxml2 acl libcap libcap_ng libconfig
     systemd fuse yajl libvirt gmp readline file hivex libintlperl GetoptLong
-    SysVirt numactl xen libapparmor
-  ];
+    SysVirt numactl xen libapparmor getopt perlPackages.ModuleBuild
+  ] ++ (with ocamlPackages; [ ocaml findlib ocamlbuild ocaml_libvirt ocaml_gettext ounit ]);
 
+  prePatch = ''
+    # build-time scripts
+    substituteInPlace run.in        --replace '#!/bin/bash' '#!/bin/sh'
+    substituteInPlace ocaml-link.sh --replace '#!/bin/bash' '#!/bin/sh'
+
+    # $(OCAMLLIB) is read-only "${ocamlPackages.ocaml}/lib/ocaml"
+    substituteInPlace ocaml/Makefile.am            --replace '$(DESTDIR)$(OCAMLLIB)' '$(out)/lib/ocaml'
+    substituteInPlace ocaml/Makefile.in            --replace '$(DESTDIR)$(OCAMLLIB)' '$(out)/lib/ocaml'
+    substituteInPlace v2v/test-harness/Makefile.am --replace '$(DESTDIR)$(OCAMLLIB)' '$(out)/lib/ocaml'
+    substituteInPlace v2v/test-harness/Makefile.in --replace '$(DESTDIR)$(OCAMLLIB)' '$(out)/lib/ocaml'
+  '';
   configureFlags = "--disable-appliance --disable-daemon";
   patches = [ ./libguestfs-syms.patch ];
   NIX_CFLAGS_COMPILE="-I${libxml2.dev}/include/libxml2/";
+  installFlags = "REALLY_INSTALL=yes";
 
   postInstall = ''
     for bin in $out/bin/*; do
diff --git a/pkgs/development/libraries/libguestfs/libguestfs-syms.patch b/pkgs/development/libraries/libguestfs/libguestfs-syms.patch
index 44cdc4e69b2..09c4b1393ce 100644
--- a/pkgs/development/libraries/libguestfs/libguestfs-syms.patch
+++ b/pkgs/development/libraries/libguestfs/libguestfs-syms.patch
@@ -1,7 +1,7 @@
-diff -rupN libguestfs-1.29.5/src/Makefile.am libguestfs-1.29.5-new/src/Makefile.am
---- libguestfs-1.29.5/src/Makefile.am	2014-11-05 16:43:08.000000000 +0100
-+++ libguestfs-1.29.5-new/src/Makefile.am	2014-11-05 20:07:45.760730596 +0100
-@@ -167,8 +167,7 @@ libguestfs_la_LIBADD = \
+diff --git a/lib/Makefile.am b/lib/Makefile.am
+--- a/lib/Makefile.am
++++ b/lib/Makefile.am
+@@ -168,8 +168,7 @@ libguestfs_la_LIBADD = \
  # Force libtool to name the library 'libguestfs.so.0.$(MAX_PROC_NR).0'.
  # Include the version script to limit which symbols are exported.
  libguestfs_la_LDFLAGS = \
diff --git a/pkgs/development/libraries/libiconv/default.nix b/pkgs/development/libraries/libiconv/default.nix
index 5f1f6afcec1..4c634de9246 100644
--- a/pkgs/development/libraries/libiconv/default.nix
+++ b/pkgs/development/libraries/libiconv/default.nix
@@ -3,11 +3,12 @@
 assert !stdenv.isLinux || stdenv ? cross; # TODO: improve on cross
 
 stdenv.mkDerivation rec {
-  name = "libiconv-1.14";
+  name = "libiconv-${version}";
+  version = "1.15";
 
   src = fetchurl {
     url = "mirror://gnu/libiconv/${name}.tar.gz";
-    sha256 = "04q6lgl3kglmmhw59igq1n7v3rp1rpkypl366cy1k1yn2znlvckj";
+    sha256 = "0y1ij745r4p48mxq84rax40p10ln7fc7m243p8k8sia519i3dxfc";
   };
 
   patches = lib.optionals stdenv.isCygwin [
diff --git a/pkgs/development/libraries/liblastfm/default.nix b/pkgs/development/libraries/liblastfm/default.nix
index 0beb689090a..aa76505c3a0 100644
--- a/pkgs/development/libraries/liblastfm/default.nix
+++ b/pkgs/development/libraries/liblastfm/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, qt4, pkgconfig, libsamplerate, fftwSinglePrec, which, cmake }:
+{ stdenv, fetchurl, qt4, pkgconfig, libsamplerate, fftwSinglePrec, which, cmake
+, darwin }:
 
 let version = "1.0.9"; in
 
@@ -15,6 +16,7 @@ stdenv.mkDerivation rec {
   prefixKey = "--prefix ";
   propagatedBuildInputs = [ qt4 libsamplerate fftwSinglePrec ];
   nativeBuildInputs = [ pkgconfig which cmake ];
+  buildInputs = stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.SystemConfiguration;
 
   meta = {
     homepage = http://github.com/lastfm/liblastfm;
diff --git a/pkgs/development/libraries/libpng/default.nix b/pkgs/development/libraries/libpng/default.nix
index 545c58f976e..92e0fa339b2 100644
--- a/pkgs/development/libraries/libpng/default.nix
+++ b/pkgs/development/libraries/libpng/default.nix
@@ -3,10 +3,10 @@
 assert zlib != null;
 
 let
-  version = "1.6.28";
+  version = "1.6.29";
   patchVersion = "1.6.26";
   # patchVersion = version;
-  sha256 = "0ylgyx93hnk38haqrh8prd3ax5ngzwvjqw5cxw7p9nxmwsfyrlyq";
+  sha256 = "0fgjqp7x6jynacmqh6dj72cn6nnf6yxjfqqqfsxrx0pyx22bcia2";
   patch_src = fetchurl {
     url = "mirror://sourceforge/libpng-apng/libpng-${patchVersion}-apng.patch.gz";
     sha256 = "0b6p2k4afvhk1svargpllcvhxb4g3p857wkqk85cks0yv42ckph1";
diff --git a/pkgs/development/libraries/libproxy/default.nix b/pkgs/development/libraries/libproxy/default.nix
index 97929d29b37..163357a0c0f 100644
--- a/pkgs/development/libraries/libproxy/default.nix
+++ b/pkgs/development/libraries/libproxy/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchFromGitHub, pkgconfig, cmake
-, dbus, networkmanager, spidermonkey_1_8_5 }:
+, dbus, networkmanager, webkitgtk214x, pcre, python2 }:
 
 stdenv.mkDerivation rec {
   name = "libproxy-${version}";
@@ -16,7 +16,13 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig cmake ];
 
-  buildInputs = [ dbus networkmanager spidermonkey_1_8_5 ];
+  buildInputs = [ dbus networkmanager webkitgtk214x pcre ];
+
+  cmakeFlags = [
+    "-DWITH_WEBKIT3=ON"
+    "-DWITH_MOZJS=OFF"
+    "-DPYTHON_SITEPKG_DIR=$(out)/${python2.sitePackages}"
+  ];
 
   meta = with stdenv.lib; {
     platforms = platforms.linux;
diff --git a/pkgs/development/libraries/libpst/default.nix b/pkgs/development/libraries/libpst/default.nix
index 0a7eb618b18..9eb3d345ecb 100644
--- a/pkgs/development/libraries/libpst/default.nix
+++ b/pkgs/development/libraries/libpst/default.nix
@@ -2,11 +2,11 @@
   pkgconfig, bzip2, xmlto, gettext, imagemagick, doxygen }:
 
 stdenv.mkDerivation rec {
-  name = "libpst-0.6.68";
+  name = "libpst-0.6.70";
 
   src = fetchurl {
       url = "http://www.five-ten-sg.com/libpst/packages/${name}.tar.gz";
-      sha256 = "06mcaga36i65n1ifr5pw6ghcb1cjfqwrmm1xmaw1sckqf2iqx2by";
+      sha256 = "1m378vxh1sf9ry8k11x773xpy5f6cab5gkzqglz0jp9hc431r60r";
     };
 
   buildInputs = [ autoreconfHook boost python2 libgsf pkgconfig bzip2
diff --git a/pkgs/development/libraries/libqtav/default.nix b/pkgs/development/libraries/libqtav/default.nix
new file mode 100644
index 00000000000..7b421f4ca36
--- /dev/null
+++ b/pkgs/development/libraries/libqtav/default.nix
@@ -0,0 +1,63 @@
+{ stdenv, lib, fetchFromGitHub, extra-cmake-modules, makeQtWrapper
+, qtbase, qtmultimedia, qtquick1, qttools
+, mesa, libX11
+, libass, openal, ffmpeg, libuchardet
+, alsaLib, libpulseaudio, libva
+}:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+  name = "libqtav-${version}";
+
+  # Awaiting upcoming `v1.12.0` release. `v1.11.0` is not supporting cmake which is the
+  # the reason behind taking an unstable git rev. 
+  version = "unstable-2017-03-30";
+
+  nativeBuildInputs = [ extra-cmake-modules makeQtWrapper qttools ];
+  buildInputs = [ 
+    qtbase qtmultimedia qtquick1
+    mesa libX11
+    libass openal ffmpeg libuchardet
+    alsaLib libpulseaudio libva
+  ];
+
+  src = fetchFromGitHub {
+    sha256 = "1xw0ynm9w501651rna3ppf8p336ag1p60i9dxhghzm543l7as93v";
+    rev = "4b4ae3b470b2fcbbcf1b541c2537fb270ee0bcfa";
+    repo = "QtAV";
+    owner = "wang-bin";
+    fetchSubmodules = true;
+  };
+
+  patchPhase = ''
+    sed -i -e 's#CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT#TRUE#g' ./CMakeLists.txt
+    sed -i -e 's#DESTINATION ''${QT_INSTALL_LIBS}/cmake#DESTINATION ''${QTAV_INSTALL_LIBS}/cmake#g' ./CMakeLists.txt
+  '';
+
+  # Make sure libqtav finds its libGL dependancy at both link and run time
+  # by adding mesa to rpath. Not sure why it wasn't done automatically like
+  # the other libraries as `mesa` is part of our `buildInputs`.
+  NIX_CFLAGS_LINK = [ "-Wl,-rpath,${mesa}/lib"];
+
+  preFixup = ''
+    mkdir -p "$out/bin"
+    cp -a "./bin/"* "$out/bin"
+  '';
+
+  postFixup = ''
+    for i in `find $out/bin -maxdepth 1 -xtype f -executable`; do
+      wrapQtProgram "$i"
+    done
+  '';
+
+  meta = {
+    description = "A multimedia playback framework based on Qt + FFmpeg.";
+    #license = licenses.lgpl21; # For the libraries / headers only.
+    license = licenses.gpl3; # With the examples (under bin) and most likely some of the optional dependencies used.
+    homepage = http://www.qtav.org/;
+    maintainers = [ maintainers.jraygauthier ];
+    platforms = platforms.linux;
+  };
+}
+
diff --git a/pkgs/development/libraries/libressl/2.5.nix b/pkgs/development/libraries/libressl/2.5.nix
index 0a3e0d97f84..b2444b18902 100644
--- a/pkgs/development/libraries/libressl/2.5.nix
+++ b/pkgs/development/libraries/libressl/2.5.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "libressl-${version}";
-  version = "2.5.1";
+  version = "2.5.3";
 
   src = fetchurl {
     url    = "mirror://openbsd/LibreSSL/${name}.tar.gz";
-    sha256 = "1kc709scgd76vk7fld4jnb4wb5lxdv1cj8zsgyjb33xp4jlf06pp";
+    sha256 = "0c4awq45cl757fv7f7f75i5i0ibc6v7ns13n7xvfak7chv2lrqql";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/libsigsegv/aarch64.patch b/pkgs/development/libraries/libsigsegv/aarch64.patch
deleted file mode 100644
index 7bb48a230ce..00000000000
--- a/pkgs/development/libraries/libsigsegv/aarch64.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/configure b/configure
-index 6c4e868..0298e19 100755
---- a/configure
-+++ b/configure
-@@ -14501,6 +14501,7 @@ else
- 
-     case "$host_cpu" in
-             a29k | \
-+      aarch64* | \
-       alpha* | \
-       arc | \
-       arm* | strongarm* | xscale* | \
diff --git a/pkgs/development/libraries/libsigsegv/default.nix b/pkgs/development/libraries/libsigsegv/default.nix
index 3353fbf9e8d..0e644686af0 100644
--- a/pkgs/development/libraries/libsigsegv/default.nix
+++ b/pkgs/development/libraries/libsigsegv/default.nix
@@ -1,21 +1,14 @@
 { fetchurl, stdenv }:
 
 stdenv.mkDerivation rec {
-  name = "libsigsegv-2.10";
+  name = "libsigsegv-2.11";
 
   src = fetchurl {
     url = "mirror://gnu/libsigsegv/${name}.tar.gz";
-    sha256 = "16hrs8k3nmc7a8jam5j1fpspd6sdpkamskvsdpcw6m29vnis8q44";
+    sha256 = "063swdvq7mbmc1clv0rnh20grwln1zfc2qnm0sa1hivcxyr2wz6x";
   };
 
-  # Based on https://github.com/davidgfnet/buildroot-Os/blob/69fe6065b9dd1cb4dcc0a4b554e42cc2e5bd0d60/package/libsigsegv/libsigsegv-0002-fix-aarch64-build.patch
-  # but applied directly to configure since we can't use autoreconf while bootstrapping.
-  patches = if stdenv.isAarch64 || stdenv.cross.arch or "" == "aarch64"
-    then [ ./aarch64.patch ]
-    else null; # TODO: change to lib.optional on next mass rebuild
-
-  # https://github.com/NixOS/nixpkgs/issues/6028
-  doCheck = false;
+  doCheck = true;
 
   meta = {
     homepage = http://www.gnu.org/software/libsigsegv/;
diff --git a/pkgs/development/libraries/libsndfile/default.nix b/pkgs/development/libraries/libsndfile/default.nix
index 30b378d77a4..bd5d0fd733c 100644
--- a/pkgs/development/libraries/libsndfile/default.nix
+++ b/pkgs/development/libraries/libsndfile/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "libsndfile-1.0.27";
+  name = "libsndfile-1.0.28";
 
   src = fetchurl {
     url = "http://www.mega-nerd.com/libsndfile/files/${name}.tar.gz";
-    sha256 = "1h7s61nhf7vklh9sdsbbqzb6x287q4x4j1jc5gmjragl4wprb4d3";
+    sha256 = "1afzm7jx34jhqn32clc5xghyjglccam2728yxlx37yj2y0lkkwqz";
   };
 
   buildInputs = [ pkgconfig flac libogg libvorbis ]
diff --git a/pkgs/development/libraries/libvirt/default.nix b/pkgs/development/libraries/libvirt/default.nix
index 96649a0927e..9449a8f538f 100644
--- a/pkgs/development/libraries/libvirt/default.nix
+++ b/pkgs/development/libraries/libvirt/default.nix
@@ -4,7 +4,7 @@
 , iproute, iptables, readline, lvm2, utillinux, systemd, libpciaccess, gettext
 , libtasn1, ebtables, libgcrypt, yajl, pmutils, libcap_ng, libapparmor
 , dnsmasq, libnl, libpcap, libxslt, xhtml1, numad, numactl, perlPackages
-, curl, libiconv, gmp, xen, zfs
+, curl, libiconv, gmp, xen, zfs, parted
 }:
 
 with stdenv.lib;
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ makeWrapper pkgconfig ];
   buildInputs = [
     libxml2 gnutls perl python2 readline gettext libtasn1 libgcrypt yajl
-    attr libxslt xhtml1 perlPackages.XMLXPath curl libpcap
+    attr libxslt xhtml1 perlPackages.XMLXPath curl libpcap parted
   ] ++ optionals stdenv.isLinux [
     libpciaccess devicemapper lvm2 utillinux systemd libnl numad zfs
     libapparmor libcap_ng numactl xen
@@ -50,6 +50,7 @@ stdenv.mkDerivation rec {
     "--with-test"
     "--with-esx"
     "--with-remote"
+    "--with-storage-disk"
   ] ++ optionals stdenv.isLinux [
     "--with-attr"
     "--with-apparmor"
diff --git a/pkgs/development/libraries/libx86emu/default.nix b/pkgs/development/libraries/libx86emu/default.nix
index a1471766516..ee32d9418dd 100644
--- a/pkgs/development/libraries/libx86emu/default.nix
+++ b/pkgs/development/libraries/libx86emu/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     sed -i 's|/usr/|/|g' Makefile
   '';
 
-  makeFlags = "shared";
+  makeFlags = [ "shared" ];
 
   installPhase = ''
     make install DESTDIR=$out/ LIBDIR=lib
@@ -28,6 +28,6 @@ stdenv.mkDerivation rec {
     license = licenses.bsd2;
     homepage = https://github.com/wfeldt/libx86emu;
     maintainers = with maintainers; [ bobvanderlinden ];
-    platforms = platforms.unix;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/lzo/default.nix b/pkgs/development/libraries/lzo/default.nix
index 23168de43ed..8739c9d25d5 100644
--- a/pkgs/development/libraries/lzo/default.nix
+++ b/pkgs/development/libraries/lzo/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "lzo-2.09";
+  name = "lzo-2.10";
 
   src = fetchurl {
     url = "${meta.homepage}/download/${name}.tar.gz";
-    sha256 = "0k5kpj3jnsjfxqqkblpfpx0mqcy86zs5fhjhgh2kq1hksg7ag57j";
+    sha256 = "0wm04519pd3g8hqpjqhfr72q8qmbiwqaxcs3cndny9h86aa95y60";
   };
 
   configureFlags = [ "--enable-shared" ];
diff --git a/pkgs/development/libraries/mapnik/default.nix b/pkgs/development/libraries/mapnik/default.nix
index 661e1270e7f..4bd89df1581 100644
--- a/pkgs/development/libraries/mapnik/default.nix
+++ b/pkgs/development/libraries/mapnik/default.nix
@@ -1,6 +1,9 @@
 { stdenv, fetchzip
 , boost, cairo, freetype, gdal, harfbuzz, icu, libjpeg, libpng, libtiff
 , libwebp, libxml2, proj, python2, scons, sqlite, zlib
+
+# supply a postgresql package to enable the PostGIS input plugin
+, postgresql ? null
 }:
 
 stdenv.mkDerivation rec {
@@ -21,6 +24,9 @@ stdenv.mkDerivation rec {
   buildInputs =
     [ boost cairo freetype gdal harfbuzz icu libjpeg libpng libtiff
       libwebp libxml2 proj python2 sqlite zlib
+
+      # optional inputs
+      postgresql
     ];
 
   configurePhase = ''
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index ea8bd57766b..b7a5f1a5c90 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -67,7 +67,7 @@ let
 in
 
 let
-  version = "17.0.2";
+  version = "17.0.3";
   branch  = head (splitString "." version);
   driverLink = "/run/opengl-driver" + optionalString stdenv.isi686 "-32";
 in
@@ -82,7 +82,7 @@ stdenv.mkDerivation {
       "ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz"
       "https://launchpad.net/mesa/trunk/${version}/+download/mesa-${version}.tar.xz"
     ];
-    sha256 = "f8f191f909e01e65de38d5bdea5fb057f21649a3aed20948be02348e77a689d4";
+    sha256 = "ca646f5075a002d60ef9123c8a4331cede155c01712ef945a65c59a5e69fe7ed";
   };
 
   prePatch = "patchShebangs .";
@@ -187,7 +187,7 @@ stdenv.mkDerivation {
 
     # set the default search path for DRI drivers; used e.g. by X server
     substituteInPlace "$dev/lib/pkgconfig/dri.pc" --replace '$(drivers)' "${driverLink}"
-  '' + optionalString (builtins.elem "intel" vulkanDrivers) ''
+  '' + optionalString (vulkanDrivers != []) ''
     # move share/vulkan/icd.d/
     mv $out/share/ $drivers/
     # Update search path used by Vulkan (it's pointing to $out but
diff --git a/pkgs/development/libraries/mlt/default.nix b/pkgs/development/libraries/mlt/default.nix
index a28936fee49..15a62f26414 100644
--- a/pkgs/development/libraries/mlt/default.nix
+++ b/pkgs/development/libraries/mlt/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   name = "mlt-${version}";
-  version = "6.2.0";
+  version = "6.4.1";
 
   src = fetchFromGitHub {
     owner = "mltframework";
     repo = "mlt";
     rev = "v${version}";
-    sha256 = "17jwz1lf9ilaxvgvhg7z86dhcsk95m4wlszy4gn7wab2ns5zhdm7";
+    sha256 = "0k9vj21n6qxdjd0vvj22cwi35igajjzh5fbjza766izdbijv2i2w";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/neardal/default.nix b/pkgs/development/libraries/neardal/default.nix
index 23bc7f883d4..9f46305c1b5 100644
--- a/pkgs/development/libraries/neardal/default.nix
+++ b/pkgs/development/libraries/neardal/default.nix
@@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
     license = licenses.lgpl2;
     homepage = https://01.org/linux-nfc;
     maintainers = with maintainers; [ tstrobel ];
-    platforms = platforms.unix;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/nix-plugins/default.nix b/pkgs/development/libraries/nix-plugins/default.nix
index 8a5d5495260..2dcc7e9a53d 100644
--- a/pkgs/development/libraries/nix-plugins/default.nix
+++ b/pkgs/development/libraries/nix-plugins/default.nix
@@ -1,17 +1,16 @@
-{ stdenv, fetchgit, nix }:
-
+{ stdenv, fetchFromGitHub, nix, boehmgc }:
+let version = "2.0.7"; in
 stdenv.mkDerivation {
-  name = "nix-plugins-1.0.0";
+  name = "nix-plugins-${version}";
 
-  src = fetchgit {
-    url = git://github.com/shlevy/nix-plugins.git;
-    rev = "refs/tags/1.0.0";
-    sha256 = "1w7l4mdwgf5w1g48mbng4lcg2nihixvp835mg2j7gghnya309fxl";
+  src = fetchFromGitHub {
+    owner = "shlevy";
+    repo = "nix-plugins";
+    rev = version;
+    sha256 = "1q4ydp2w114wbfm41m4qgrabha7ifa17xyz5dr137vvnj6njp4vs";
   };
 
-  buildInputs = [ nix ];
-
-  buildFlags = [ "NIX_INCLUDE=${nix}/include" ];
+  buildFlags = [ "NIX_INCLUDE=${nix.dev}/include" "GC_INCLUDE=${boehmgc.dev}/include" ];
 
   installFlags = [ "PREFIX=$(out)" ];
 
@@ -20,6 +19,5 @@ stdenv.mkDerivation {
     homepage = https://github.com/shlevy/nix-plugins;
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.all;
-    broken = true;
   };
 }
diff --git a/pkgs/development/libraries/nss/default.nix b/pkgs/development/libraries/nss/default.nix
index e378c5b8a8a..396d795c5a4 100644
--- a/pkgs/development/libraries/nss/default.nix
+++ b/pkgs/development/libraries/nss/default.nix
@@ -9,11 +9,11 @@ let
 
 in stdenv.mkDerivation rec {
   name = "nss-${version}";
-  version = "3.28.3";
+  version = "3.30";
 
   src = fetchurl {
-    url = "mirror://mozilla/security/nss/releases/NSS_3_28_3_RTM/src/${name}.tar.gz";
-    sha256 = "1wrx2ig6yvgywjs25hzy4szgml21hwhd7ds0ghyfybhkiq7lyg6x";
+    url = "mirror://mozilla/security/nss/releases/NSS_3_30_RTM/src/${name}.tar.gz";
+    sha256 = "a8c0000dae5e992f6563972e26dbfefc50d006dd845c43b8ca24ea50169ff3a9";
   };
 
   buildInputs = [ perl zlib sqlite ];
diff --git a/pkgs/development/libraries/opal/default.nix b/pkgs/development/libraries/opal/default.nix
index c79c3cbe4d6..5090aa874ec 100644
--- a/pkgs/development/libraries/opal/default.nix
+++ b/pkgs/development/libraries/opal/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  NIX_CFLAGS = "-D__STDC_CONSTANT_MACROS=1";
+  NIX_CFLAGS_COMPILE = "-D__STDC_CONSTANT_MACROS=1";
 
   patches = [ ./disable-samples-ftbfs.diff ./libav9.patch ./libav10.patch ];
       
diff --git a/pkgs/development/libraries/oracle-instantclient/default.nix b/pkgs/development/libraries/oracle-instantclient/default.nix
index c29a5da9f21..d0085752623 100644
--- a/pkgs/development/libraries/oracle-instantclient/default.nix
+++ b/pkgs/development/libraries/oracle-instantclient/default.nix
@@ -1,29 +1,39 @@
-{ stdenv, requireFile, libelf, gcc, glibc, patchelf, unzip, rpmextract, libaio }:
+{ stdenv, requireFile, libelf, gcc, glibc, patchelf, unzip, rpmextract, libaio
+, odbcSupport ? false, unixODBC
+}:
 
-let requireSource = version: part: hash: (requireFile rec {
-  name = "oracle-instantclient12.1-${part}-${version}.x86_64.rpm";
-  message = ''
-    This Nix expression requires that ${name} already
-    be part of the store. Download the file
-    manually at
+assert odbcSupport -> unixODBC != null;
 
-    http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
+let optional = stdenv.lib.optional;
+    optionalString  = stdenv.lib.optionalString;
+    requireSource = version: part: hash: (requireFile rec {
+      name = "oracle-instantclient12.1-${part}-${version}.x86_64.rpm";
+      message = ''
+        This Nix expression requires that ${name} already
+        be part of the store. Download the file
+        manually at
 
-    and add it to the Nix store with the following command:
+        http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
 
-    nix-prefetch-url file://${name} ${hash} --type sha256
-'';
-  url = "http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html";
-  sha256 = hash;
-}); in stdenv.mkDerivation rec {
+        and add it to the Nix store using either:
+          nix-store --add-fixed sha256 ${name}
+        or
+          nix-prefetch-url --type sha256 file:///path/to/${name}
+      '';
+      url = "http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html";
+      sha256 = hash;
+    });
+in stdenv.mkDerivation rec {
   version = "12.1.0.2.0-1";
   name = "oracle-instantclient-${version}";
 
   srcBase = (requireSource version "basic" "f0e51e247cc3f210b950fd939ab1f696de9ca678d1eb179ba49ac73acb9a20ed");
   srcDevel = (requireSource version "devel" "13b638882f07d6cfc06c85dc6b9eb5cac37064d3d594194b6b09d33483a08296");
   srcSqlplus = (requireSource version "sqlplus" "16d87w1lii0ag47c8srnr7v4wfm9q4hy6gka8m3v6gp9cc065vam");
+  srcOdbc = optionalString odbcSupport (requireSource version "odbc" "d3aa1a4957a2f15ced05921dab551ba823aa7925d8fcb58d5b3a7f624e4df063");
 
-  buildInputs = [ glibc patchelf rpmextract ];
+  buildInputs = [ glibc patchelf rpmextract ] ++
+    optional odbcSupport unixODBC;
 
   buildCommand = ''
     mkdir -p "${name}"
@@ -31,6 +41,9 @@ let requireSource = version: part: hash: (requireFile rec {
     ${rpmextract}/bin/rpmextract "${srcBase}"
     ${rpmextract}/bin/rpmextract "${srcDevel}"
     ${rpmextract}/bin/rpmextract "${srcSqlplus}"
+    ${optionalString odbcSupport ''
+        ${rpmextract}/bin/rpmextract "${srcOdbc}"
+    ''}
 
     mkdir -p "$out/"{bin,include,lib,"share/${name}/demo/"}
     mv "usr/share/oracle/12.1/client64/demo/"* "$out/share/${name}/demo/"
@@ -46,6 +59,13 @@ let requireSource = version: part: hash: (requireFile rec {
                $lib
     done
 
+    for lib in $out/lib/libsqora*; do
+      test -f $lib || continue
+      chmod +x $lib
+      patchelf --force-rpath --set-rpath "$out/lib:${unixODBC}/lib" \
+               $lib
+    done
+
     for exe in $out/bin/sqlplus; do
       patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
                --force-rpath --set-rpath "$out/lib:${libaio}/lib" \
diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix
index b90ff39dc1f..91f065fa0eb 100644
--- a/pkgs/development/libraries/pango/default.nix
+++ b/pkgs/development/libraries/pango/default.nix
@@ -6,14 +6,14 @@ with stdenv.lib;
 
 let
   ver_maj = "1.40";
-  ver_min = "3";
+  ver_min = "4";
 in
 stdenv.mkDerivation rec {
   name = "pango-${ver_maj}.${ver_min}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/pango/${ver_maj}/${name}.tar.xz";
-    sha256 = "abba8b5ce728520c3a0f1535eab19eac3c14aeef7faa5aded90017ceac2711d3";
+    sha256 = "f8fdc5fc66356dc4edf915048cceeee065a0e0cb70b3b2598f62bda320129a3e";
   };
 
   outputs = [ "bin" "dev" "out" "devdoc" ];
diff --git a/pkgs/development/libraries/podofo/default.nix b/pkgs/development/libraries/podofo/default.nix
index 5f5dcfb71e6..1ba82354033 100644
--- a/pkgs/development/libraries/podofo/default.nix
+++ b/pkgs/development/libraries/podofo/default.nix
@@ -10,8 +10,12 @@ stdenv.mkDerivation rec {
   };
 
   propagatedBuildInputs = [ zlib freetype libjpeg libtiff fontconfig openssl libpng libidn expat ];
-  nativeBuildInputs = [ cmake gcc5 pkgconfig ];
-  buildInputs = [ lua5 stdenv.cc.libc ];
+
+  # Does Linux really need gcc5? Darwin doesn't seem to...
+  nativeBuildInputs = [ cmake pkgconfig ] ++ stdenv.lib.optional stdenv.isLinux gcc5;
+
+  # Does Linux really need libc here? Darwin doesn't seem to...
+  buildInputs = [ lua5 ] ++ stdenv.lib.optional stdenv.isLinux stdenv.cc.libc;
 
   crossAttrs = {
     propagatedBuildInputs = [ zlib.crossDrv freetype.crossDrv libjpeg.crossDrv
diff --git a/pkgs/development/libraries/pugixml/default.nix b/pkgs/development/libraries/pugixml/default.nix
index 8c40ff2be20..d9d0afa2bde 100644
--- a/pkgs/development/libraries/pugixml/default.nix
+++ b/pkgs/development/libraries/pugixml/default.nix
@@ -18,9 +18,6 @@ stdenv.mkDerivation rec {
     sed -ire '/PUGIXML_HAS_LONG_LONG/ s/^\/\///' src/pugiconfig.hpp
   '';
 
-  patches = []
-    ++ stdenv.lib.optionals stdenv.isDarwin [ ./no-long-long.patch ];
-
   meta = with stdenv.lib; {
     description = "Light-weight, simple and fast XML parser for C++ with XPath support";
     homepage = http://pugixml.org/;
diff --git a/pkgs/development/libraries/pugixml/no-long-long.patch b/pkgs/development/libraries/pugixml/no-long-long.patch
deleted file mode 100644
index 46c54e85a1d..00000000000
--- a/pkgs/development/libraries/pugixml/no-long-long.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Get rid of long-long feature. This breaks on AppleClang compilers.
----
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 40a7ab0..c84f0f7 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -26,9 +26,9 @@ else()
- endif()
- 
- # Enable C++11 long long for compilers that are capable of it
--if(NOT ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} STRLESS 3.1)
--	target_compile_features(pugixml PUBLIC cxx_long_long_type)
--endif()
-+# if(NOT ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} STRLESS 3.1)
-+# 	target_compile_features(pugixml PUBLIC cxx_long_long_type)
-+# endif()
- 
- set_target_properties(pugixml PROPERTIES VERSION 1.7 SOVERSION 1)
- 
diff --git a/pkgs/development/libraries/qt-5/5.6/qtbase/default.nix b/pkgs/development/libraries/qt-5/5.6/qtbase/default.nix
index dae1139d961..b26fc7faf9d 100644
--- a/pkgs/development/libraries/qt-5/5.6/qtbase/default.nix
+++ b/pkgs/development/libraries/qt-5/5.6/qtbase/default.nix
@@ -80,7 +80,7 @@ stdenv.mkDerivation {
       sed -i \
           -e 's|! /usr/bin/xcode-select --print-path >/dev/null 2>&1;|false;|' \
           -e 's|! /usr/bin/xcrun -find xcodebuild >/dev/null 2>&1;|false;|' \
-          -e 's|sysroot=$(/usr/bin/xcodebuild -sdk $sdk -version Path 2>/dev/null)|sysroot="${darwin.apple_sdk.sdk}"|' \
+          -e 's|sysroot=$(/usr/bin/xcodebuild -sdk $sdk -version Path 2>/dev/null)|sysroot=/nonsense|' \
           -e 's|QMAKE_CONF_COMPILER=`getXQMakeConf QMAKE_CXX`|QMAKE_CXX="clang++"\nQMAKE_CONF_COMPILER="clang++"|' \
           -e 's|XCRUN=`/usr/bin/xcrun -sdk macosx clang -v 2>&1`|XCRUN="clang -v 2>&1"|' \
           -e 's#sdk_val=$(/usr/bin/xcrun -sdk $sdk -find $(echo $val | cut -d \x27 \x27 -f 1))##' \
@@ -208,7 +208,7 @@ stdenv.mkDerivation {
     xcbutil xcbutilimage xcbutilkeysyms xcbutilwm libxkbcommon
   ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
     ApplicationServices CoreServices AppKit Carbon OpenGL AGL Cocoa
-    DiskArbitration darwin.cf-private libiconv darwin.apple_sdk.sdk
+    DiskArbitration darwin.cf-private libiconv
   ]);
 
   buildInputs =
diff --git a/pkgs/development/libraries/qt-5/5.6/qtwebengine/default.nix b/pkgs/development/libraries/qt-5/5.6/qtwebengine/default.nix
index 13b8296dc0e..1234c825b14 100644
--- a/pkgs/development/libraries/qt-5/5.6/qtwebengine/default.nix
+++ b/pkgs/development/libraries/qt-5/5.6/qtwebengine/default.nix
@@ -2,7 +2,8 @@
 
 , xlibs, libXcursor, libXScrnSaver, libXrandr, libXtst
 , fontconfig, freetype, harfbuzz, icu, dbus
-, zlib, libjpeg, libpng, libtiff
+, zlib, minizip, libjpeg, libpng, libtiff, libwebp, libopus
+, jsoncpp, protobuf, libvpx, srtp, snappy, nss, libevent
 , alsaLib
 , libcap
 , pciutils
@@ -11,7 +12,7 @@
 , coreutils
 , pkgconfig, python2
 
-, stdenv # lib.optional, needsPax
+, lib, stdenv # lib.optional, needsPax
 }:
 
 qtSubmodule {
@@ -47,20 +48,33 @@ qtSubmodule {
         -docdir $out/share/doc/qt5"
   '';
   propagatedBuildInputs = [
-    dbus zlib alsaLib
-
     # Image formats
-    libjpeg libpng libtiff
+    libjpeg libpng libtiff libwebp
+
+    # Video formats
+    srtp libvpx
+
+    # Audio formats
+    libopus
 
     # Text rendering
-    fontconfig freetype harfbuzz icu
+    harfbuzz icu
+  ]
+  ++ lib.optionals (!stdenv.isDarwin) [
+    dbus zlib minizip snappy nss protobuf jsoncpp libevent
 
-    # X11 libs
-    xlibs.xrandr libXScrnSaver libXcursor libXrandr xlibs.libpciaccess libXtst
-    xlibs.libXcomposite
+    # Audio formats
+    alsaLib
+
+    # Text rendering
+    fontconfig freetype
 
     libcap
     pciutils
+
+    # X11 libs
+    xlibs.xrandr libXScrnSaver libXcursor libXrandr xlibs.libpciaccess libXtst
+    xlibs.libXcomposite
   ];
   patches = [
     ./chromium-clang-update-py.patch
diff --git a/pkgs/development/libraries/qt-5/5.8/default.nix b/pkgs/development/libraries/qt-5/5.8/default.nix
index eb26f88f725..2865a879f47 100644
--- a/pkgs/development/libraries/qt-5/5.8/default.nix
+++ b/pkgs/development/libraries/qt-5/5.8/default.nix
@@ -76,6 +76,7 @@ let
       qtgraphicaleffects = callPackage ./qtgraphicaleffects.nix {};
       qtimageformats = callPackage ./qtimageformats.nix {};
       qtlocation = callPackage ./qtlocation.nix {};
+      qtmacextras = callPackage ./qtmacextras.nix {};
       qtmultimedia = callPackage ./qtmultimedia.nix {
         inherit gstreamer gst-plugins-base;
       };
@@ -97,12 +98,13 @@ let
       qtxmlpatterns = callPackage ./qtxmlpatterns.nix {};
 
       env = callPackage ../qt-env.nix {};
-      full = env "qt-${qtbase.version}" [
+      full = env "qt-${qtbase.version}" ([
         qtconnectivity qtdeclarative qtdoc qtgraphicaleffects
         qtimageformats qtlocation qtmultimedia qtquickcontrols qtscript
-        qtsensors qtserialport qtsvg qttools qttranslations qtwayland
+        qtsensors qtserialport qtsvg qttools qttranslations
         qtwebsockets qtx11extras qtxmlpatterns
-      ];
+      ] ++ optional (!stdenv.isDarwin) qtwayland
+        ++ optional (stdenv.isDarwin) qtmacextras);
 
       makeQtWrapper =
         makeSetupHook
diff --git a/pkgs/development/libraries/qt-5/5.8/qtbase/default.nix b/pkgs/development/libraries/qt-5/5.8/qtbase/default.nix
index f881c76c3ad..0af6ed8b594 100644
--- a/pkgs/development/libraries/qt-5/5.8/qtbase/default.nix
+++ b/pkgs/development/libraries/qt-5/5.8/qtbase/default.nix
@@ -82,7 +82,7 @@ stdenv.mkDerivation {
       sed -i \
           -e 's|! /usr/bin/xcode-select --print-path >/dev/null 2>&1;|false;|' \
           -e 's|! /usr/bin/xcrun -find xcodebuild >/dev/null 2>&1;|false;|' \
-          -e 's|sysroot=$(/usr/bin/xcodebuild -sdk $sdk -version Path 2>/dev/null)|sysroot="${darwin.apple_sdk.sdk}"|' \
+          -e 's|sysroot=$(/usr/bin/xcodebuild -sdk $sdk -version Path 2>/dev/null)|sysroot=/nonsense|' \
           -e 's|QMAKE_CONF_COMPILER=`getXQMakeConf QMAKE_CXX`|QMAKE_CXX="clang++"\nQMAKE_CONF_COMPILER="clang++"|' \
           -e 's|XCRUN=`/usr/bin/xcrun -sdk macosx clang -v 2>&1`|XCRUN="clang -v 2>&1"|' \
           -e 's#sdk_val=$(/usr/bin/xcrun -sdk $sdk -find $(echo $val | cut -d \x27 \x27 -f 1))##' \
@@ -211,8 +211,10 @@ stdenv.mkDerivation {
     libX11 libXcomposite libXext libXi libXrender libxcb libxkbcommon xcbutil
     xcbutilimage xcbutilkeysyms xcbutilrenderutil xcbutilwm
   ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
-    ApplicationServices Foundation CoreServices AppKit Carbon OpenGL AGL Cocoa
-    DiskArbitration darwin.cf-private libiconv darwin.apple_sdk.sdk
+    AGL AppKit ApplicationServices Carbon Cocoa
+    CoreAudio CoreBluetooth CoreLocation CoreServices
+    DiskArbitration Foundation OpenGL
+    darwin.cf-private darwin.apple_sdk.sdk darwin.libobjc libiconv
   ]);
 
   buildInputs = [ ]
diff --git a/pkgs/development/libraries/qt-5/5.8/qtdeclarative/default.nix b/pkgs/development/libraries/qt-5/5.8/qtdeclarative/default.nix
index 9b6a6c46176..acddbd9e365 100644
--- a/pkgs/development/libraries/qt-5/5.8/qtdeclarative/default.nix
+++ b/pkgs/development/libraries/qt-5/5.8/qtdeclarative/default.nix
@@ -1,8 +1,18 @@
-{ qtSubmodule, lib, copyPathsToStore, python2, qtbase, qtsvg, qtxmlpatterns }:
+{ stdenv, qtSubmodule, makeQtWrapper, copyPathsToStore, python2, qtbase, qtsvg, qtxmlpatterns }:
+
+with stdenv.lib;
 
 qtSubmodule {
   name = "qtdeclarative";
-  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
+  patches = copyPathsToStore (readPathsFromFile ./. ./series);
   qtInputs = [ qtbase qtsvg qtxmlpatterns ];
-  nativeBuildInputs = [ python2 ];
+  nativeBuildInputs = [ python2 makeQtWrapper ];
+
+  postInstall = ''
+    wrapQtProgram $out/bin/qmleasing
+    wrapQtProgram $out/bin/qmlscene
+    wrapQtProgram $out/bin/qmltestrunner
+  '' + optionalString (stdenv.isDarwin) ''
+    wrapQtProgram $out/bin/qml.app/Contents/MacOS/qml
+  '';
 }
diff --git a/pkgs/development/libraries/qt-5/5.8/qtmacextras.nix b/pkgs/development/libraries/qt-5/5.8/qtmacextras.nix
new file mode 100644
index 00000000000..582294cc7f7
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.8/qtmacextras.nix
@@ -0,0 +1,10 @@
+{ qtSubmodule, qtbase, lib }:
+
+qtSubmodule {
+  name = "qtmacextras";
+  qtInputs = [ qtbase ];
+  meta = with lib; {
+    maintainers = with maintainers; [ periklis ];
+    platforms = platforms.darwin;
+  };
+}
diff --git a/pkgs/development/libraries/qt-5/5.8/qtmultimedia.nix b/pkgs/development/libraries/qt-5/5.8/qtmultimedia.nix
index 7c1cc5da07e..1c2dcc90d41 100644
--- a/pkgs/development/libraries/qt-5/5.8/qtmultimedia.nix
+++ b/pkgs/development/libraries/qt-5/5.8/qtmultimedia.nix
@@ -1,12 +1,15 @@
-{ qtSubmodule, qtbase, qtdeclarative, pkgconfig
+{ stdenv, qtSubmodule, qtbase, qtdeclarative, pkgconfig
 , alsaLib, gstreamer, gst-plugins-base, libpulseaudio
+, darwin
 }:
 
+with stdenv.lib;
+
 qtSubmodule {
   name = "qtmultimedia";
   qtInputs = [ qtbase qtdeclarative ];
-  buildInputs = [
-    pkgconfig alsaLib gstreamer gst-plugins-base libpulseaudio
-  ];
+  buildInputs = [ pkgconfig gstreamer gst-plugins-base libpulseaudio]
+    ++ optional (stdenv.isLinux) alsaLib;
   qmakeFlags = [ "GST_VERSION=1.0" ];
+  NIX_LDFLAGS = optionalString (stdenv.isDarwin) "-lobjc";
 }
diff --git a/pkgs/development/libraries/qt-5/5.8/qtsensors.nix b/pkgs/development/libraries/qt-5/5.8/qtsensors.nix
index 61e64dc47e4..7bb18f56fe2 100644
--- a/pkgs/development/libraries/qt-5/5.8/qtsensors.nix
+++ b/pkgs/development/libraries/qt-5/5.8/qtsensors.nix
@@ -1,4 +1,6 @@
-{ qtSubmodule, qtbase, qtdeclarative }:
+{ stdenv, qtSubmodule, qtbase, qtdeclarative }:
+
+with stdenv.lib;
 
 qtSubmodule {
   name = "qtsensors";
diff --git a/pkgs/development/libraries/qt-5/5.8/qtserialport/default.nix b/pkgs/development/libraries/qt-5/5.8/qtserialport/default.nix
index 2bffd0a2bd6..1fde2c2bd18 100644
--- a/pkgs/development/libraries/qt-5/5.8/qtserialport/default.nix
+++ b/pkgs/development/libraries/qt-5/5.8/qtserialport/default.nix
@@ -1,9 +1,11 @@
-{ qtSubmodule, qtbase, substituteAll, systemd }:
+{ stdenv, qtSubmodule, qtbase, substituteAll, systemd }:
+
+with stdenv.lib;
 
 qtSubmodule {
   name = "qtserialport";
   qtInputs = [ qtbase ];
-  patches = [
+  patches = optionals (stdenv.isLinux) [
     (substituteAll {
       src = ./0001-dlopen-serialport-udev.patch;
       libudev = systemd.lib;
diff --git a/pkgs/development/libraries/qt-5/5.8/qttools/cmake-paths.patch b/pkgs/development/libraries/qt-5/5.8/qttools/cmake-paths.patch
index 3d557c4c023..dfcba9045a7 100644
--- a/pkgs/development/libraries/qt-5/5.8/qttools/cmake-paths.patch
+++ b/pkgs/development/libraries/qt-5/5.8/qttools/cmake-paths.patch
@@ -18,7 +18,7 @@ Index: qttools-opensource-src-5.8.0/src/assistant/help/Qt5HelpConfigExtras.cmake
      _qt5_Help_check_file_exists(${imported_location})
  
      set_target_properties(Qt5::qcollectiongenerator PROPERTIES
-@@ -17,11 +16,7 @@ endif()
+@@ -17,11 +16,10 @@ endif()
  if (NOT TARGET Qt5::qhelpgenerator)
      add_executable(Qt5::qhelpgenerator IMPORTED)
  
@@ -28,6 +28,9 @@ Index: qttools-opensource-src-5.8.0/src/assistant/help/Qt5HelpConfigExtras.cmake
 -    set(imported_location \"$${CMAKE_BIN_DIR}qhelpgenerator$$CMAKE_BIN_SUFFIX\")
 -!!ENDIF
 +    set(imported_location \"@NIX_OUT@/$${CMAKE_BIN_DIR}qhelpgenerator$$CMAKE_BIN_SUFFIX\")
++    if(NOT EXISTS \"${imported_location}\")
++        set(imported_location \"@NIX_DEV@/$${CMAKE_BIN_DIR}qhelpgenerator$$CMAKE_BIN_SUFFIX\")
++    endif()
      _qt5_Help_check_file_exists(${imported_location})
  
      set_target_properties(Qt5::qhelpgenerator PROPERTIES
diff --git a/pkgs/development/libraries/qt-5/5.8/qttools/default.nix b/pkgs/development/libraries/qt-5/5.8/qttools/default.nix
index d72d7b6c64c..6b97c2d85cd 100644
--- a/pkgs/development/libraries/qt-5/5.8/qttools/default.nix
+++ b/pkgs/development/libraries/qt-5/5.8/qttools/default.nix
@@ -1,11 +1,28 @@
-{ qtSubmodule, lib, copyPathsToStore, qtbase }:
+{ stdenv, qtSubmodule, makeQtWrapper, copyPathsToStore, qtbase }:
+
+with stdenv.lib;
 
 qtSubmodule {
   name = "qttools";
   qtInputs = [ qtbase ];
-  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
+  nativeBuildInputs = [ makeQtWrapper ];
+
+  patches = copyPathsToStore (readPathsFromFile ./. ./series);
   postFixup = ''
     moveToOutput "bin/qdbus" "$out"
     moveToOutput "bin/qtpaths" "$out"
   '';
+
+  postInstall =   ''
+    wrapQtProgram $out/bin/qcollectiongenerator
+    wrapQtProgram $out/bin/qhelpconverter
+    wrapQtProgram $out/bin/qhelpgenerator
+    wrapQtProgram $out/bin/qtdiag
+  '' + optionalString (stdenv.isDarwin) ''
+    wrapQtProgram $out/bin/Assistant.app/Contents/MacOS/Assistant
+    wrapQtProgram $out/bin/Designer.app/Contents/MacOS/Designer
+    wrapQtProgram $out/bin/Linguist.app/Contents/MacOS/Linguist
+    wrapQtProgram $out/bin/pixeltool.app/Contents/MacOS/pixeltool
+    wrapQtProgram $out/bin/qdbusviewer.app/Contents/MacOS/qdbusviewer
+  '';
 }
diff --git a/pkgs/development/libraries/qt-5/5.8/qtwebengine/default.nix b/pkgs/development/libraries/qt-5/5.8/qtwebengine/default.nix
index 1edb0846029..37f12eed758 100644
--- a/pkgs/development/libraries/qt-5/5.8/qtwebengine/default.nix
+++ b/pkgs/development/libraries/qt-5/5.8/qtwebengine/default.nix
@@ -17,6 +17,8 @@
 , lib, stdenv # lib.optional, needsPax
 }:
 
+with stdenv.lib;
+
 qtSubmodule {
   name = "qtwebengine";
   qtInputs = [ qtquickcontrols qtlocation qtwebchannel ];
@@ -41,7 +43,7 @@ qtSubmodule {
       -e "s,QLibraryInfo::location(QLibraryInfo::TranslationsPath),QLatin1String(\"$out/translations\"),g" \
       -e "s,QLibraryInfo::location(QLibraryInfo::LibraryExecutablesPath),QLatin1String(\"$out/libexec\"),g" \
       src/core/web_engine_library_info.cpp
-
+ '' + optionalString (!stdenv.isDarwin) ''
     sed -i -e '/lib_loader.*Load/s!"\(libudev\.so\)!"${systemd.lib}/lib/\1!' \
       src/3rdparty/chromium/device/udev_linux/udev?_loader.cc
 
@@ -49,11 +51,9 @@ qtSubmodule {
       src/3rdparty/chromium/gpu/config/gpu_info_collector_linux.cc
   '';
 
-  qmakeFlags = lib.optional enableProprietaryCodecs "WEBENGINE_CONFIG+=use_proprietary_codecs";
+  qmakeFlags = optional enableProprietaryCodecs "WEBENGINE_CONFIG+=use_proprietary_codecs";
 
   propagatedBuildInputs = [
-    dbus zlib minizip alsaLib snappy nss protobuf jsoncpp libevent
-
     # Image formats
     libjpeg libpng libtiff libwebp
 
@@ -61,19 +61,28 @@ qtSubmodule {
     srtp libvpx
 
     # Audio formats
-    alsaLib libopus
+    libopus
 
     # Text rendering
-    fontconfig freetype harfbuzz icu
+    harfbuzz icu
+  ]
+  ++ optionals (!stdenv.isDarwin) [
+    dbus zlib minizip snappy nss protobuf jsoncpp libevent
 
-    # X11 libs
-    xlibs.xrandr libXScrnSaver libXcursor libXrandr xlibs.libpciaccess libXtst
-    xlibs.libXcomposite
+    # Audio formats
+    alsaLib
+
+    # Text rendering
+    fontconfig freetype
 
     libcap
     pciutils
+
+    # X11 libs
+    xlibs.xrandr libXScrnSaver libXcursor libXrandr xlibs.libpciaccess libXtst
+    xlibs.libXcomposite
   ];
-  patches = lib.optional stdenv.needsPax ./qtwebengine-paxmark-mksnapshot.patch;
+  patches = optional stdenv.needsPax ./qtwebengine-paxmark-mksnapshot.patch;
   postInstall = ''
     cat > $out/libexec/qt.conf <<EOF
     [Paths]
diff --git a/pkgs/development/libraries/qt-5/5.8/qtwebkit/0004-icucore-darwin.patch b/pkgs/development/libraries/qt-5/5.8/qtwebkit/0004-icucore-darwin.patch
new file mode 100644
index 00000000000..a1cc1892288
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.8/qtwebkit/0004-icucore-darwin.patch
@@ -0,0 +1,11 @@
+--- qtwebkit-opensource-src-5.8.0.orig/Source/WTF/WTF.pri
++++ qtwebkit-opensource-src-5.8.0/Source/WTF/WTF.pri
+@@ -12,7 +12,7 @@
+     # Mac OS does ship libicu but not the associated header files.
+     # Therefore WebKit provides adequate header files.
+     INCLUDEPATH = $${ROOT_WEBKIT_DIR}/Source/WTF/icu $$INCLUDEPATH
+-    LIBS += -licucore
++    LIBS += /usr/lib/libicucore.dylib
+ } else:!use?(wchar_unicode): {
+     win32 {
+         CONFIG(static, static|shared) {
diff --git a/pkgs/development/libraries/qt-5/5.8/qtwebkit/default.nix b/pkgs/development/libraries/qt-5/5.8/qtwebkit/default.nix
index 915a6bcae8a..881acb442e8 100644
--- a/pkgs/development/libraries/qt-5/5.8/qtwebkit/default.nix
+++ b/pkgs/development/libraries/qt-5/5.8/qtwebkit/default.nix
@@ -2,6 +2,7 @@
 , fontconfig, gdk_pixbuf, gtk2, libwebp, libxml2, libxslt
 , sqlite, systemd, glib, gst_all_1
 , bison2, flex, gdb, gperf, perl, pkgconfig, python2, ruby
+, darwin
 , substituteAll
 , flashplayerFix ? false
 }:
@@ -11,10 +12,16 @@ with stdenv.lib;
 qtSubmodule {
   name = "qtwebkit";
   qtInputs = [ qtdeclarative qtlocation qtsensors ];
-  buildInputs = [ fontconfig libwebp libxml2 libxslt sqlite glib gst_all_1.gstreamer gst_all_1.gst-plugins-base ];
+  buildInputs = [ fontconfig libwebp libxml2 libxslt sqlite glib gst_all_1.gstreamer gst_all_1.gst-plugins-base ]
+    ++ optionals (stdenv.isDarwin) (with darwin.apple_sdk.frameworks; [ OpenGL ]);
   nativeBuildInputs = [
     bison2 flex gdb gperf perl pkgconfig python2 ruby
   ];
+
+  __impureHostDeps = optionals (stdenv.isDarwin) [
+    "/usr/lib/libicucore.dylib"
+  ];
+
   patches =
     let dlopen-webkit-nsplugin = substituteAll {
           src = ./0001-dlopen-webkit-nsplugin.patch;
@@ -30,6 +37,7 @@ qtSubmodule {
           libudev = systemd.lib;
         };
     in optionals flashplayerFix [ dlopen-webkit-nsplugin dlopen-webkit-gtk ]
-    ++ [ dlopen-webkit-udev ];
-  meta.maintainers = with stdenv.lib.maintainers; [ abbradar ];
+    ++ optionals (!stdenv.isDarwin) [ dlopen-webkit-udev ]
+    ++ optionals (stdenv.isDarwin) [ ./0004-icucore-darwin.patch ];
+  meta.maintainers = with stdenv.lib.maintainers; [ abbradar periklis ];
 }
diff --git a/pkgs/development/libraries/safefile/default.nix b/pkgs/development/libraries/safefile/default.nix
new file mode 100644
index 00000000000..50f4d74d15c
--- /dev/null
+++ b/pkgs/development/libraries/safefile/default.nix
@@ -0,0 +1,30 @@
+{stdenv, fetchurl}:
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "safefile";
+  version = "1.0.5";
+
+  src = fetchurl {
+    url = "http://research.cs.wisc.edu/mist/${pname}/releases/${name}.tar.gz";
+    sha256 = "1y0gikds2nr8jk8smhrl617njk23ymmpxyjb2j1xbj0k82xspv78";
+  };
+
+  buildInputs = [];
+
+  passthru = {
+    updateScript = ''
+      cd ${toString ./.}
+      ${toString <nixpkgs/pkgs/build-support/upstream-updater/update-walker.sh>} default.nix
+    '';
+  };
+
+  meta = {
+    inherit version;
+    description = "File open routines to safely open a file when in the presence of an attack";
+    license = stdenv.lib.licenses.asl20 ;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+    homepage = "http://research.cs.wisc.edu/mist/safefile/";
+    updateWalker = true;
+  };
+}
diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix
index fbe11db165f..6f3f78e5501 100644
--- a/pkgs/development/libraries/science/math/openblas/default.nix
+++ b/pkgs/development/libraries/science/math/openblas/default.nix
@@ -98,6 +98,7 @@ stdenv.mkDerivation {
       ''PREFIX="''$(out)"''
       "NUM_THREADS=64"
       "INTERFACE64=${if blas64 then "1" else "0"}"
+      "NO_STATIC=1"
     ]
     ++ mapAttrsToList (var: val: var + "=" + val) config;
 
diff --git a/pkgs/development/libraries/science/math/suitesparse/4.2.nix b/pkgs/development/libraries/science/math/suitesparse/4.2.nix
index 070e2b1be1f..7e71eafef69 100644
--- a/pkgs/development/libraries/science/math/suitesparse/4.2.nix
+++ b/pkgs/development/libraries/science/math/suitesparse/4.2.nix
@@ -33,8 +33,6 @@ stdenv.mkDerivation rec {
     "LAPACK="
   ];
 
-  NIX_CFLAGS = "-fPIC";
-
   meta = with stdenv.lib; {
     homepage = http://faculty.cse.tamu.edu/davis/suitesparse.html;
     description = "A suite of sparse matrix algorithms";
diff --git a/pkgs/development/libraries/science/math/suitesparse/default.nix b/pkgs/development/libraries/science/math/suitesparse/default.nix
index 10fc7bf10ac..f38de088424 100644
--- a/pkgs/development/libraries/science/math/suitesparse/default.nix
+++ b/pkgs/development/libraries/science/math/suitesparse/default.nix
@@ -40,9 +40,9 @@ stdenv.mkDerivation {
         -e 's|^[[:space:]]*\(CUDART_LIB    =\)|CUDART_LIB = $(CUDA_ROOT)/lib64/libcudart.so|' \
         -e 's|^[[:space:]]*\(CUBLAS_LIB    =\)|CUBLAS_LIB = $(CUDA_ROOT)/lib64/libcublas.so|' \
         -e 's|^[[:space:]]*\(CUDA_INC_PATH =\)|CUDA_INC_PATH = $(CUDA_ROOT)/include/|' \
-        -e 's|^[[:space:]]*\(NV_20         =\)|NV_20 = -arch=sm_20 -Xcompiler -fPIC|' \
-        -e 's|^[[:space:]]*\(NV_30         =\)|NV_30 = -arch=sm_30 -Xcompiler -fPIC|' \
-        -e 's|^[[:space:]]*\(NV_35         =\)|NV_35 = -arch=sm_35 -Xcompiler -fPIC|' \
+        -e 's|^[[:space:]]*\(NV20          =\)|NV20 = -arch=sm_20 -Xcompiler -fPIC|' \
+        -e 's|^[[:space:]]*\(NV30          =\)|NV30 = -arch=sm_30 -Xcompiler -fPIC|' \
+        -e 's|^[[:space:]]*\(NV35          =\)|NV35 = -arch=sm_35 -Xcompiler -fPIC|' \
         -e 's|^[[:space:]]*\(NVCC          =\) echo|NVCC = $(CUDA_ROOT)/bin/nvcc|' \
         -e 's|^[[:space:]]*\(NVCCFLAGS     =\)|NVCCFLAGS = $(NV20) -O3 -gencode=arch=compute_20,code=sm_20 -gencode=arch=compute_30,code=sm_30 -gencode=arch=compute_35,code=sm_35 -gencode=arch=compute_60,code=sm_60|'
   '';
@@ -55,7 +55,7 @@ stdenv.mkDerivation {
     "LAPACK="
   ];
 
-  NIX_CFLAGS = stdenv.lib.optionalString stdenv.isDarwin " -DNTIMER";
+  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin " -DNTIMER";
 
   postInstall = ''
     # Build and install shared library
@@ -64,7 +64,7 @@ stdenv.mkDerivation {
         for i in "$out"/lib/lib*.a; do
           ar -x $i
         done
-        ''${CC} *.o ${if stdenv.isDarwin then "-dynamiclib" else "--shared"} -o "$out/lib/libsuitesparse.${SHLIB_EXT}" -lopenblas
+        ${if enableCuda then cudatoolkit else stdenv.cc.outPath}/bin/${if enableCuda then "nvcc" else "cc"} *.o ${if stdenv.isDarwin then "-dynamiclib" else "--shared"} -o "$out/lib/libsuitesparse.${SHLIB_EXT}" -lopenblas ${stdenv.lib.optionalString enableCuda "-lcublas"}
     )
     for i in umfpack cholmod amd camd colamd spqr; do
       ln -s libsuitesparse.${SHLIB_EXT} "$out"/lib/lib$i.${SHLIB_EXT}
diff --git a/pkgs/development/libraries/usbredir/default.nix b/pkgs/development/libraries/usbredir/default.nix
index 76912f19ab5..f4ec0242224 100644
--- a/pkgs/development/libraries/usbredir/default.nix
+++ b/pkgs/development/libraries/usbredir/default.nix
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
   buildInputs = [ pkgconfig libusb ];
   propagatedBuildInputs = [ libusb ];
 
+  outputs = [ "out" "dev" ];
+
   meta = with stdenv.lib; {
     description = "USB traffic redirection protocol";
     homepage = http://spice-space.org/page/UsbRedir;
diff --git a/pkgs/development/libraries/vulkan-loader/default.nix b/pkgs/development/libraries/vulkan-loader/default.nix
index a1b9ee03f23..4432c22bcd8 100644
--- a/pkgs/development/libraries/vulkan-loader/default.nix
+++ b/pkgs/development/libraries/vulkan-loader/default.nix
@@ -3,12 +3,12 @@
   libXext, wayland, mesa_noglu }:
 
 let
-  version = "1.0.39.1";
+  version = "1.0.42.2";
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "Vulkan-LoaderAndValidationLayers";
     rev = "sdk-${version}";
-    sha256 = "0y9zzrnjjjza2kkf5jfsdqhn98md6rsq0hb7jg62z2dipzky7zdp";
+    sha256 = "0na1ax2cgv6w29213mby56mndfsj3iizj3n5pbpy4s4p7ij9kdgn";
   };
 in
 
@@ -26,8 +26,6 @@ stdenv.mkDerivation rec {
     "-DFALLBACK_DATA_DIRS=${mesa_noglu.driverLink}/share:/usr/local/share:/usr/share"
   ];
 
-  patches = [ ./use-xdg-paths.patch ./fallback-paths.patch ];
-
   outputs = [ "out" "dev" "demos" ];
 
   preConfigure = ''
@@ -59,5 +57,6 @@ stdenv.mkDerivation rec {
     homepage    = "http://www.lunarg.com";
     platforms   = platforms.linux;
     license     = licenses.asl20;
+    maintainers = [ maintainers.ralith ];
   };
 }
diff --git a/pkgs/development/libraries/vulkan-loader/fallback-paths.patch b/pkgs/development/libraries/vulkan-loader/fallback-paths.patch
deleted file mode 100644
index d8d9fdd3f5f..00000000000
--- a/pkgs/development/libraries/vulkan-loader/fallback-paths.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-commit a59b141559a8c1813da438b97e5f79eeb6cc7642
-Author: Benjamin Saunders <ben.e.saunders@gmail.com>
-Date:   Sun Feb 19 11:14:24 2017 -0800
-
-    loader: Configurable fallback search paths
-    
-    This makes it easier for non-FHS distributions to behave well when the loader
-    is used by a SUID process or in an otherwise unusual environment.
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index a43d264..d28b3f5 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -16,6 +16,11 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
- find_package(PythonInterp 3 REQUIRED)
- 
- if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
-+    set(FALLBACK_CONFIG_DIRS "/etc/xdg" CACHE STRING
-+        "Search path to use when XDG_CONFIG_DIRS is unset or empty or the current process is SUID/SGID. Default is freedesktop compliant.")
-+    set(FALLBACK_DATA_DIRS "/usr/local/share:/usr/share" CACHE STRING
-+        "Search path to use when XDG_DATA_DIRS is unset or empty or the current process is SUID/SGID. Default is freedesktop compliant.")
-+
-     include(FindPkgConfig)
-     option(BUILD_WSI_XCB_SUPPORT "Build XCB WSI support" ON)
-     option(BUILD_WSI_XLIB_SUPPORT "Build Xlib WSI support" ON)
-@@ -285,7 +290,10 @@ run_vk_xml_generate(dispatch_table_generator.py vk_dispatch_table_helper.h)
- if(NOT WIN32)
-     include(GNUInstallDirs)
- 
-+    add_definitions(-DFALLBACK_CONFIG_DIRS="${FALLBACK_CONFIG_DIRS}")
-+    add_definitions(-DFALLBACK_DATA_DIRS="${FALLBACK_DATA_DIRS}")
-     add_definitions(-DSYSCONFDIR="${CMAKE_INSTALL_FULL_SYSCONFDIR}")
-+
-     # Make sure /etc is searched by the loader
-     if(NOT (CMAKE_INSTALL_FULL_SYSCONFDIR STREQUAL "/etc"))
-         add_definitions(-DEXTRASYSCONFDIR="/etc")
-diff --git a/loader/loader.c b/loader/loader.c
-index 81c37c4..83378eb 100644
---- a/loader/loader.c
-+++ b/loader/loader.c
-@@ -2644,9 +2644,9 @@ static VkResult loader_get_manifest_files(const struct loader_instance *inst, co
-         const char *xdgconfdirs = secure_getenv("XDG_CONFIG_DIRS");
-         const char *xdgdatadirs = secure_getenv("XDG_DATA_DIRS");
-         if (xdgconfdirs == NULL || xdgconfdirs[0] == '\0')
--            xdgconfdirs = "/etc/xdg";
-+            xdgconfdirs = FALLBACK_CONFIG_DIRS;
-         if (xdgdatadirs == NULL || xdgdatadirs[0] == '\0')
--            xdgdatadirs = "/usr/local/share:/usr/share";
-+            xdgdatadirs = FALLBACK_DATA_DIRS;
-         const size_t rel_size = strlen(relative_location);
-         // Leave space for trailing separators
-         loc_size += strlen(xdgconfdirs) + strlen(xdgdatadirs) + 2*rel_size + 2;
diff --git a/pkgs/development/libraries/vulkan-loader/use-xdg-paths.patch b/pkgs/development/libraries/vulkan-loader/use-xdg-paths.patch
deleted file mode 100644
index eb7869cd73c..00000000000
--- a/pkgs/development/libraries/vulkan-loader/use-xdg-paths.patch
+++ /dev/null
@@ -1,322 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 27ab6e5..e59256e 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -256,17 +256,10 @@ if(NOT WIN32)
-     include(GNUInstallDirs)
- 
-     add_definitions(-DSYSCONFDIR="${CMAKE_INSTALL_FULL_SYSCONFDIR}")
--    add_definitions(-DDATADIR="${CMAKE_INSTALL_FULL_DATADIR}")
--
-     # Make sure /etc is searched by the loader
--    if (NOT (CMAKE_INSTALL_FULL_SYSCONFDIR STREQUAL "/etc"))
-+    if(NOT (CMAKE_INSTALL_FULL_SYSCONFDIR STREQUAL "/etc"))
-         add_definitions(-DEXTRASYSCONFDIR="/etc")
-     endif()
--
--    # Make sure /usr/share is searched by the loader
--    if (NOT (CMAKE_INSTALL_FULL_DATADIR STREQUAL "/usr/share"))
--        add_definitions(-DEXTRADATADIR="/usr/share")
--    endif()
- endif()
- 
- if(UNIX)
-diff --git a/loader/loader.c b/loader/loader.c
-index 24758f4..af7cc85 100644
---- a/loader/loader.c
-+++ b/loader/loader.c
-@@ -2909,7 +2909,7 @@ static VkResult
- loader_get_manifest_files(const struct loader_instance *inst,
-                           const char *env_override, const char *source_override,
-                           bool is_layer, bool warn_if_not_present,
--                          const char *location, const char *home_location,
-+                          const char *location, const char *relative_location,
-                           struct loader_manifest_files *out_files) {
-     const char * override = NULL;
-     char *override_getenv = NULL;
-@@ -2941,9 +2941,9 @@ loader_get_manifest_files(const struct loader_instance *inst,
-     }
- 
- #if !defined(_WIN32)
--    if (location == NULL && home_location == NULL) {
-+    if (location == NULL && relative_location == NULL) {
- #else
--    home_location = NULL;
-+    relative_location = NULL;
-     if (location == NULL) {
- #endif
-         loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
-@@ -2962,16 +2962,89 @@ loader_get_manifest_files(const struct loader_instance *inst,
-     // Make a copy of the input we are using so it is not modified
-     // Also handle getting the location(s) from registry on Windows
-     if (override == NULL) {
--        loc = loader_stack_alloc(strlen(location) + 1);
-+        size_t loc_size = strlen(location) + 1;
-+#if !defined(_WIN32)
-+        const char *xdgconfdirs = secure_getenv("XDG_CONFIG_DIRS");
-+        const char *xdgdatadirs = secure_getenv("XDG_DATA_DIRS");
-+        if (xdgconfdirs == NULL || xdgconfdirs[0] == '\0')
-+            xdgconfdirs = "/etc/xdg";
-+        if (xdgdatadirs == NULL || xdgdatadirs[0] == '\0')
-+            xdgdatadirs = "/usr/local/share:/usr/share";
-+        const size_t rel_size = strlen(relative_location);
-+        // Leave space for trailing separators
-+        loc_size += strlen(xdgconfdirs) + strlen(xdgdatadirs) + 2*rel_size + 2;
-+        for (const char *x = xdgconfdirs; *x; ++x)
-+            if (*x == PATH_SEPARATOR) loc_size += rel_size;
-+        for (const char *x = xdgdatadirs; *x; ++x)
-+            if (*x == PATH_SEPARATOR) loc_size += rel_size;
-+        loc_size += strlen(SYSCONFDIR) + rel_size + 1;
-+#ifdef EXTRASYSCONFDIR
-+        loc_size += strlen(EXTRASYSCONFDIR) + rel_size + 1;
-+#endif
-+#endif
-+        loc = loader_stack_alloc(loc_size);
-         if (loc == NULL) {
-             loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
-                        "loader_get_manifest_files: Failed to allocate "
-                        "%d bytes for manifest file location.",
--                       strlen(location));
-+                       loc_size);
-             res = VK_ERROR_OUT_OF_HOST_MEMORY;
-             goto out;
-         }
--        strcpy(loc, location);
-+        char *loc_write = loc;
-+#if !defined(_WIN32)
-+        const char *loc_read;
-+
-+        loc_read = &xdgconfdirs[0];
-+        for (const char *x = loc_read;; ++x) {
-+            if (*x == PATH_SEPARATOR || *x == '\0') {
-+                const size_t s = x - loc_read;
-+                memcpy(loc_write, loc_read, s);
-+                loc_write += s;
-+                memcpy(loc_write, relative_location, rel_size);
-+                loc_write += rel_size;
-+                *loc_write++ = PATH_SEPARATOR;
-+                if (*x == 0)
-+                    break;
-+                loc_read = ++x;
-+            }
-+        }
-+
-+        memcpy(loc_write, SYSCONFDIR, strlen(SYSCONFDIR));
-+        loc_write += strlen(SYSCONFDIR);
-+        memcpy(loc_write, relative_location, rel_size);
-+        loc_write += rel_size;
-+        *loc_write++ = PATH_SEPARATOR;
-+
-+#ifdef EXTRASYSCONFDIR
-+        memcpy(loc_write, EXTRASYSCONFDIR, strlen(EXTRASYSCONFDIR));
-+        loc_write += strlen(EXTRASYSCONFDIR);
-+        memcpy(loc_write, relative_location, rel_size);
-+        loc_write += rel_size;
-+        *loc_write++ = PATH_SEPARATOR;
-+#endif
-+
-+        loc_read = &xdgdatadirs[0];
-+        for (const char *x = loc_read;; ++x) {
-+            if (*x == PATH_SEPARATOR || *x == '\0') {
-+                const size_t s = x - loc_read;
-+                memcpy(loc_write, loc_read, s);
-+                loc_write += s;
-+                memcpy(loc_write, relative_location, rel_size);
-+                loc_write += rel_size;
-+                *loc_write++ = PATH_SEPARATOR;
-+                if (*x == 0)
-+                    break;
-+                loc_read = ++x;
-+            }
-+        }
-+        --loc_write;
-+        *loc_write = '\0';
-+#else
-+        memcpy(loc_write, location, loc_size);
-+        loc[loc_size-1] = '\0';
-+#endif
-+
- #if defined(_WIN32)
-         VkResult reg_result = loaderGetRegistryFiles(inst, loc, &reg);
-         if (VK_SUCCESS != reg_result || NULL == reg) {
-@@ -3122,14 +3195,14 @@ loader_get_manifest_files(const struct loader_instance *inst,
-         }
-         file = next_file;
- #if !defined(_WIN32)
--        if (home_location != NULL &&
-+        if (relative_location != NULL &&
-             (next_file == NULL || *next_file == '\0') && override == NULL) {
-             char *xdgdatahome = secure_getenv("XDG_DATA_HOME");
-             size_t len;
-             if (xdgdatahome != NULL) {
- 
-                 char *home_loc = loader_stack_alloc(strlen(xdgdatahome) + 2 +
--                                                    strlen(home_location));
-+                                                    strlen(relative_location));
-                 if (home_loc == NULL) {
-                     loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
-                                "loader_get_manifest_files: Failed to allocate "
-@@ -3139,15 +3212,15 @@ loader_get_manifest_files(const struct loader_instance *inst,
-                 }
-                 strcpy(home_loc, xdgdatahome);
-                 // Add directory separator if needed
--                if (home_location[0] != DIRECTORY_SYMBOL) {
-+                if (relative_location[0] != DIRECTORY_SYMBOL) {
-                     len = strlen(home_loc);
-                     home_loc[len] = DIRECTORY_SYMBOL;
-                     home_loc[len + 1] = '\0';
-                 }
--                strcat(home_loc, home_location);
-+                strcat(home_loc, relative_location);
-                 file = home_loc;
-                 next_file = loader_get_next_path(file);
--                home_location = NULL;
-+                relative_location = NULL;
- 
-                 loader_log(
-                     inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0,
-@@ -3160,7 +3233,7 @@ loader_get_manifest_files(const struct loader_instance *inst,
-                 char *home = secure_getenv("HOME");
-                 if (home != NULL) {
-                     char *home_loc = loader_stack_alloc(strlen(home) + 16 +
--                                                        strlen(home_location));
-+                                                        strlen(relative_location));
-                     if (home_loc == NULL) {
-                         loader_log(
-                             inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
-@@ -3178,15 +3251,15 @@ loader_get_manifest_files(const struct loader_instance *inst,
-                     }
-                     strcat(home_loc, ".local/share");
- 
--                    if (home_location[0] != DIRECTORY_SYMBOL) {
-+                    if (relative_location[0] != DIRECTORY_SYMBOL) {
-                         len = strlen(home_loc);
-                         home_loc[len] = DIRECTORY_SYMBOL;
-                         home_loc[len + 1] = '\0';
-                     }
--                    strcat(home_loc, home_location);
-+                    strcat(home_loc, relative_location);
-                     file = home_loc;
-                     next_file = loader_get_next_path(file);
--                    home_location = NULL;
-+                    relative_location = NULL;
- 
-                     loader_log(
-                         inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0,
-@@ -3263,7 +3336,7 @@ VkResult loader_icd_scan(const struct loader_instance *inst,
-     // Get a list of manifest files for ICDs
-     res = loader_get_manifest_files(inst, "VK_ICD_FILENAMES", NULL, false, true,
-                                     DEFAULT_VK_DRIVERS_INFO,
--                                    HOME_VK_DRIVERS_INFO, &manifest_files);
-+                                    RELATIVE_VK_DRIVERS_INFO, &manifest_files);
-     if (VK_SUCCESS != res || manifest_files.count == 0) {
-         goto out;
-     }
-@@ -3490,7 +3563,7 @@ void loader_layer_scan(const struct loader_instance *inst,
-     if (VK_SUCCESS !=
-         loader_get_manifest_files(inst, LAYERS_PATH_ENV, LAYERS_SOURCE_PATH,
-                                   true, true, DEFAULT_VK_ELAYERS_INFO,
--                                  HOME_VK_ELAYERS_INFO, &manifest_files[0])) {
-+                                  RELATIVE_VK_ELAYERS_INFO, &manifest_files[0])) {
-         goto out;
-     }
- 
-@@ -3499,7 +3572,7 @@ void loader_layer_scan(const struct loader_instance *inst,
-     // overridden by LAYERS_PATH_ENV
-     if (VK_SUCCESS != loader_get_manifest_files(inst, NULL, NULL, true, false,
-                                                 DEFAULT_VK_ILAYERS_INFO,
--                                                HOME_VK_ILAYERS_INFO,
-+                                                RELATIVE_VK_ILAYERS_INFO,
-                                                 &manifest_files[1])) {
-         goto out;
-     }
-@@ -3569,7 +3642,7 @@ void loader_implicit_layer_scan(const struct loader_instance *inst,
-     // overridden by LAYERS_PATH_ENV
-     VkResult res = loader_get_manifest_files(
-         inst, NULL, NULL, true, false, DEFAULT_VK_ILAYERS_INFO,
--        HOME_VK_ILAYERS_INFO, &manifest_files);
-+        RELATIVE_VK_ILAYERS_INFO, &manifest_files);
-     if (VK_SUCCESS != res || manifest_files.count == 0) {
-         return;
-     }
-diff --git a/loader/vk_loader_platform.h b/loader/vk_loader_platform.h
-index dc4ac10..50a7966 100644
---- a/loader/vk_loader_platform.h
-+++ b/loader/vk_loader_platform.h
-@@ -57,47 +57,9 @@
- #define VULKAN_ILAYERCONF_DIR "implicit_layer.d"
- #define VULKAN_LAYER_DIR      "layer"
- 
--#if defined(EXTRASYSCONFDIR)
--#define EXTRA_DRIVERS_SYSCONFDIR_INFO ":"                                      \
--    EXTRASYSCONFDIR VULKAN_DIR VULKAN_ICDCONF_DIR
--#define EXTRA_ELAYERS_SYSCONFDIR_INFO ":"                                      \
--    EXTRASYSCONFDIR VULKAN_DIR VULKAN_ELAYERCONF_DIR
--#define EXTRA_ILAYERS_SYSCONFDIR_INFO ":"                                      \
--    EXTRASYSCONFDIR VULKAN_DIR VULKAN_ILAYERCONF_DIR
--#else
--#define EXTRA_DRIVERS_SYSCONFDIR_INFO
--#define EXTRA_ELAYERS_SYSCONFDIR_INFO
--#define EXTRA_ILAYERS_SYSCONFDIR_INFO
--#endif
--
--#if defined(EXTRADATADIR)
--#define EXTRA_DRIVERS_DATADIR_INFO ":"                                         \
--    EXTRADATADIR VULKAN_DIR VULKAN_ICDCONF_DIR
--#define EXTRA_ELAYERS_DATADIR_INFO ":"                                         \
--    EXTRADATADIR VULKAN_DIR VULKAN_ELAYERCONF_DIR
--#define EXTRA_ILAYERS_DATADIR_INFO ":"                                         \
--    EXTRADATADIR VULKAN_DIR VULKAN_ILAYERCONF_DIR
--#else
--#define EXTRA_DRIVERS_DATADIR_INFO
--#define EXTRA_ELAYERS_DATADIR_INFO
--#define EXTRA_ILAYERS_DATADIR_INFO
--#endif
--
--#define DEFAULT_VK_DRIVERS_INFO                                                \
--    SYSCONFDIR   VULKAN_DIR VULKAN_ICDCONF_DIR ":"                             \
--    DATADIR      VULKAN_DIR VULKAN_ICDCONF_DIR                                 \
--    EXTRA_DRIVERS_SYSCONFDIR_INFO                                              \
--    EXTRA_DRIVERS_DATADIR_INFO
--#define DEFAULT_VK_ELAYERS_INFO                                                \
--    SYSCONFDIR   VULKAN_DIR VULKAN_ELAYERCONF_DIR ":"                          \
--    DATADIR      VULKAN_DIR VULKAN_ELAYERCONF_DIR                              \
--    EXTRA_ELAYERS_SYSCONFDIR_INFO                                              \
--    EXTRA_ELAYERS_DATADIR_INFO
--#define DEFAULT_VK_ILAYERS_INFO                                                \
--    SYSCONFDIR   VULKAN_DIR VULKAN_ILAYERCONF_DIR ":"                          \
--    DATADIR      VULKAN_DIR VULKAN_ILAYERCONF_DIR                              \
--    EXTRA_ILAYERS_SYSCONFDIR_INFO                                              \
--    EXTRA_ILAYERS_DATADIR_INFO
-+#define DEFAULT_VK_DRIVERS_INFO ""
-+#define DEFAULT_VK_ELAYERS_INFO ""
-+#define DEFAULT_VK_ILAYERS_INFO ""
- 
- #define DEFAULT_VK_DRIVERS_PATH ""
- #if !defined(DEFAULT_VK_LAYERS_PATH)
-@@ -109,9 +71,9 @@
- #endif
- #define LAYERS_PATH_ENV "VK_LAYER_PATH"
- 
--#define HOME_VK_DRIVERS_INFO VULKAN_DIR VULKAN_ICDCONF_DIR
--#define HOME_VK_ELAYERS_INFO VULKAN_DIR VULKAN_ELAYERCONF_DIR
--#define HOME_VK_ILAYERS_INFO VULKAN_DIR VULKAN_ILAYERCONF_DIR
-+#define RELATIVE_VK_DRIVERS_INFO VULKAN_DIR VULKAN_ICDCONF_DIR
-+#define RELATIVE_VK_ELAYERS_INFO VULKAN_DIR VULKAN_ELAYERCONF_DIR
-+#define RELATIVE_VK_ILAYERS_INFO VULKAN_DIR VULKAN_ILAYERCONF_DIR
- 
- // C99:
- #define PRINTF_SIZE_T_SPECIFIER "%zu"
-@@ -251,9 +213,9 @@ loader_platform_thread_cond_broadcast(loader_platform_thread_cond *pCond) {
- #define LAYERS_SOURCE_PATH NULL
- #endif
- #define LAYERS_PATH_ENV "VK_LAYER_PATH"
--#define HOME_VK_DRIVERS_INFO ""
--#define HOME_VK_ELAYERS_INFO ""
--#define HOME_VK_ILAYERS_INFO ""
-+#define RELATIVE_VK_DRIVERS_INFO ""
-+#define RELATIVE_VK_ELAYERS_INFO ""
-+#define RELATIVE_VK_ILAYERS_INFO ""
- #define PRINTF_SIZE_T_SPECIFIER "%Iu"
- 
- // File IO
diff --git a/pkgs/development/libraries/webkitgtk/2.14.nix b/pkgs/development/libraries/webkitgtk/2.14.nix
index 99a41ec0c18..a1b22094855 100644
--- a/pkgs/development/libraries/webkitgtk/2.14.nix
+++ b/pkgs/development/libraries/webkitgtk/2.14.nix
@@ -2,7 +2,7 @@
 , pkgconfig, gettext, gobjectIntrospection, libnotify, gnutls
 , gtk2, gtk3, wayland, libwebp, enchant, xlibs, libxkbcommon, epoxy, at_spi2_core
 , libxml2, libsoup, libsecret, libxslt, harfbuzz, libpthreadstubs, pcre, nettle, libtasn1, p11_kit
-, libidn
+, libidn, libedit, readline, mesa, libintlOrEmpty
 , enableGeoLocation ? true, geoclue2, sqlite
 , gst-plugins-base
 }:
@@ -18,12 +18,27 @@ stdenv.mkDerivation rec {
     description = "Web content rendering engine, GTK+ port";
     homepage = "http://webkitgtk.org/";
     license = licenses.bsd2;
-    platforms = platforms.linux;
+    platforms = with platforms; linux ++ darwin;
     hydraPlatforms = [];
     maintainers = with maintainers; [ ];
   };
 
-  preConfigure = "patchShebangs Tools";
+  postConfigure = optionalString stdenv.isDarwin ''
+    substituteInPlace Source/WebKit2/CMakeFiles/WebKit2.dir/link.txt \
+    	  --replace "../../lib/libWTFGTK.a" ""
+    substituteInPlace Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/link.txt \
+    	  --replace "../../lib/libbmalloc.a" ""
+    sed -i "s|[\./]*\.\./lib/lib[^\.]*\.a||g" \
+        Source/JavaScriptCore/CMakeFiles/LLIntOffsetsExtractor.dir/link.txt \
+        Source/JavaScriptCore/shell/CMakeFiles/jsc.dir/link.txt \
+        Source/JavaScriptCore/shell/CMakeFiles/testb3.dir/link.txt \
+        Source/WebKit2/CMakeFiles/DatabaseProcess.dir/link.txt \
+        Source/WebKit2/CMakeFiles/NetworkProcess.dir/link.txt \
+        Source/WebKit2/CMakeFiles/webkit2gtkinjectedbundle.dir/link.txt \
+        Source/WebKit2/CMakeFiles/WebProcess.dir/link.txt
+    substituteInPlace Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/link.txt \
+    	  --replace "../../lib/libWTFGTK.a" "-Wl,-all_load ../../lib/libWTFGTK.a"
+  '';
 
   src = fetchurl {
     url = "http://webkitgtk.org/releases/${name}.tar.xz";
@@ -32,29 +47,54 @@ stdenv.mkDerivation rec {
 
   # see if we can clean this up....
 
-  patches = [ ./finding-harfbuzz-icu.patch ];
+  patches = [ ./finding-harfbuzz-icu.patch ]
+  	++ optionals stdenv.isDarwin [
+    ./PR-152650-2.patch
+    ./PR-153138.patch
+    ./PR-157554.patch
+    ./PR-157574.patch
+  ];
 
   cmakeFlags = [
   "-DPORT=GTK"
   "-DUSE_LIBHYPHEN=0"
-  "-DENABLE_GLES2=ON"
+  ]
+  ++ optional stdenv.isLinux "-DENABLE_GLES2=ON"
+  ++ optionals stdenv.isDarwin [
+  "-DUSE_SYSTEM_MALLOC=ON"
+  "-DUSE_ACCELERATE=0"
+  "-DENABLE_INTROSPECTION=ON"
+  "-DENABLE_MINIBROWSER=OFF"
+  "-DENABLE_PLUGIN_PROCESS_GTK2=OFF"
+  "-DENABLE_MINIBROWSER=OFF"
+  "-DENABLE_VIDEO=ON"
+  "-DENABLE_QUARTZ_TARGET=ON"
+  "-DENABLE_X11_TARGET=OFF"
+  "-DENABLE_OPENGL=OFF"
+  "-DENABLE_WEB_AUDIO=OFF"
+  "-DENABLE_WEBGL=OFF"
+  "-DENABLE_GRAPHICS_CONTEXT_3D=OFF"
+  "-DENABLE_GTKDOC=OFF"
   ];
 
   # XXX: WebKit2 missing include path for gst-plugins-base.
   # Filled: https://bugs.webkit.org/show_bug.cgi?id=148894
-  NIX_CFLAGS_COMPILE = "-I${gst-plugins-base.dev}/include/gstreamer-1.0";
+  NIX_CFLAGS_COMPILE = "-I${gst-plugins-base.dev}/include/gstreamer-1.0"
+                     + (optionalString stdenv.isDarwin " -lintl");
 
   nativeBuildInputs = [
     cmake perl python2 ruby bison gperf sqlite
     pkgconfig gettext gobjectIntrospection
   ];
 
-  buildInputs = [
-    gtk2 wayland libwebp enchant libnotify gnutls pcre nettle libidn
+  buildInputs = libintlOrEmpty ++ [
+    gtk2 libwebp enchant libnotify gnutls pcre nettle libidn
     libxml2 libsecret libxslt harfbuzz libpthreadstubs libtasn1 p11_kit
     gst-plugins-base libxkbcommon epoxy at_spi2_core
   ] ++ optional enableGeoLocation geoclue2
-    ++ (with xlibs; [ libXdmcp libXt libXtst ]);
+    ++ (with xlibs; [ libXdmcp libXt libXtst ])
+    ++ optionals stdenv.isDarwin [ libedit readline mesa ]
+    ++ optional stdenv.isLinux wayland;
 
   propagatedBuildInputs = [
     libsoup gtk3
diff --git a/pkgs/development/libraries/webkitgtk/PR-152650-2.patch b/pkgs/development/libraries/webkitgtk/PR-152650-2.patch
new file mode 100644
index 00000000000..db84a4a6b26
--- /dev/null
+++ b/pkgs/development/libraries/webkitgtk/PR-152650-2.patch
@@ -0,0 +1,62 @@
+From 4607ea0a569b3c527ae8dce341ab55eb0d69d8f7 Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
+Date: Tue, 8 Mar 2016 17:26:23 -0800
+Subject: [PATCH 2/2] [GTK][Mac] Enable support for gtk-doc on Mac
+
+https://bugs.webkit.org/show_bug.cgi?id=152650
+
+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
+---
+ ChangeLog                     | 10 ++++++++++
+ Source/PlatformGTK.cmake      |  2 +-
+ Source/cmake/OptionsGTK.cmake |  5 -----
+ 3 files changed, 11 insertions(+), 6 deletions(-)
+
+diff --git a/Source/PlatformGTK.cmake b/Source/PlatformGTK.cmake
+index af4d2e3..0b11b56 100644
+--- a/Source/PlatformGTK.cmake
++++ b/Source/PlatformGTK.cmake
+@@ -34,7 +34,7 @@ endmacro()
+ add_gtkdoc_generator("docs-build.stamp" "")
+ if (ENABLE_GTKDOC)
+     add_custom_target(gtkdoc ALL DEPENDS "${CMAKE_BINARY_DIR}/docs-build.stamp")
+-elseif (NOT ENABLED_COMPILER_SANITIZERS AND NOT CMAKE_CROSSCOMPILING AND NOT APPLE)
++elseif (NOT ENABLED_COMPILER_SANITIZERS AND NOT CMAKE_CROSSCOMPILING)
+     add_custom_target(gtkdoc DEPENDS "${CMAKE_BINARY_DIR}/docs-build.stamp")
+ 
+     # Add a default build step which check that documentation does not have any warnings
+diff --git a/Source/cmake/OptionsGTK.cmake b/Source/cmake/OptionsGTK.cmake
+index 6b01f1a..b443d10 100644
+--- a/Source/cmake/OptionsGTK.cmake
++++ b/Source/cmake/OptionsGTK.cmake
+@@ -424,11 +424,6 @@ if (CMAKE_CROSSCOMPILING)
+     set(ENABLE_INTROSPECTION OFF)
+ endif ()
+ 
+-# Override the cached variable, gtk-doc does not really work when building on Mac.
+-if (APPLE)
+-    set(ENABLE_GTKDOC OFF)
+-endif ()
+-
+ set(DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR ${DERIVED_SOURCES_DIR}/webkitdom)
+ set(DERIVED_SOURCES_WEBKITGTK_DIR ${DERIVED_SOURCES_DIR}/webkitgtk)
+ set(DERIVED_SOURCES_WEBKITGTK_API_DIR ${DERIVED_SOURCES_WEBKITGTK_DIR}/webkit)
+diff --git a/Tools/gtk/gtkdoc.py b/Tools/gtk/gtkdoc.py
+index 4c8237b..a628ae0 100644
+--- a/Tools/gtk/gtkdoc.py
++++ b/Tools/gtk/gtkdoc.py
+@@ -322,6 +322,11 @@ class GTKDoc(object):
+                 env['RUN'] = 'LD_LIBRARY_PATH="%s:%s" ' % (self.library_path, current_ld_library_path)
+             else:
+                 env['RUN'] = 'LD_LIBRARY_PATH="%s" ' % self.library_path
++            current_dyld_library_path = env.get('DYLD_LIBRARY_PATH')
++            if current_ld_library_path:
++                env['RUN'] = 'DYLD_LIBRARY_PATH="%s:%s" ' % (self.library_path, current_dyld_library_path)
++            else:
++                env['RUN'] = 'DYLD_LIBRARY_PATH="%s" ' % self.library_path
+ 
+         if ldflags:
+             env['LDFLAGS'] = '%s %s' % (ldflags, env.get('LDFLAGS', ''))
+-- 
+2.7.2
+
diff --git a/pkgs/development/libraries/webkitgtk/PR-153138.patch b/pkgs/development/libraries/webkitgtk/PR-153138.patch
new file mode 100644
index 00000000000..833921f6806
--- /dev/null
+++ b/pkgs/development/libraries/webkitgtk/PR-153138.patch
@@ -0,0 +1,26 @@
+From 07886d9eacb7587dd52a9bcae10c1fc8ab56a910 Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
+Date: Fri, 15 Jan 2016 11:53:07 -0800
+Subject: [PATCH] https://bugs.webkit.org/show_bug.cgi?id=153138
+
+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
+---
+ Source/JavaScriptCore/bytecode/StructureStubInfo.cpp | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/Source/JavaScriptCore/bytecode/StructureStubInfo.cpp b/Source/JavaScriptCore/bytecode/StructureStubInfo.cpp
+index 1e4b4f5..9b27aed 100644
+--- a/Source/JavaScriptCore/bytecode/StructureStubInfo.cpp
++++ b/Source/JavaScriptCore/bytecode/StructureStubInfo.cpp
+@@ -26,6 +26,8 @@
+ #include "config.h"
+ #include "StructureStubInfo.h"
+ 
++#include "JSCellInlines.h"
++
+ #include "JSObject.h"
+ #include "PolymorphicAccess.h"
+ #include "Repatch.h"
+-- 
+2.7.0
+
diff --git a/pkgs/development/libraries/webkitgtk/PR-157554.patch b/pkgs/development/libraries/webkitgtk/PR-157554.patch
new file mode 100644
index 00000000000..615e805c92c
--- /dev/null
+++ b/pkgs/development/libraries/webkitgtk/PR-157554.patch
@@ -0,0 +1,33 @@
+https://bugs.webkit.org/show_bug.cgi?id=157554
+
+--- a/Source/WTF/wtf/OSRandomSource.cpp
++++ b/Source/WTF/wtf/OSRandomSource.cpp
+@@ -29,7 +29,7 @@
+ #include <stdint.h>
+ #include <stdlib.h>
+ 
+-#if !OS(DARWIN) && OS(UNIX)
++#if OS(UNIX) && !(OS(DARWIN) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070)
+ #include <errno.h>
+ #include <fcntl.h>
+ #include <unistd.h>
+@@ -46,7 +46,7 @@
+ 
+ namespace WTF {
+ 
+-#if !OS(DARWIN) && OS(UNIX)
++#if OS(UNIX) && !(OS(DARWIN) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070)
+ NEVER_INLINE NO_RETURN_DUE_TO_CRASH static void crashUnableToOpenURandom()
+ {
+     CRASH();
+@@ -60,8 +56,8 @@ NEVER_INLINE NO_RETURN_DUE_TO_CRASH static void crashUnableToReadFromURandom()
+     
+ void cryptographicallyRandomValuesFromOS(unsigned char* buffer, size_t length)
+ {
+-#if OS(DARWIN)
+-    RELEASE_ASSERT(!CCRandomCopyBytes(kCCRandomDefault, buffer, length));
++#if OS(DARWIN) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070
++    return arc4random_buf(buffer, length);
+ #elif OS(UNIX)
+     int fd = open("/dev/urandom", O_RDONLY, 0);
+     if (fd < 0)
diff --git a/pkgs/development/libraries/webkitgtk/PR-157574.patch b/pkgs/development/libraries/webkitgtk/PR-157574.patch
new file mode 100644
index 00000000000..d9b0795afa5
--- /dev/null
+++ b/pkgs/development/libraries/webkitgtk/PR-157574.patch
@@ -0,0 +1,62 @@
+diff --git a/Source/JavaScriptCore/API/WebKitAvailability.h b/Source/JavaScriptCore/API/WebKitAvailability.h
+index ab53183..1310dec 100644
+--- a/Source/JavaScriptCore/API/WebKitAvailability.h
++++ b/Source/JavaScriptCore/API/WebKitAvailability.h
+@@ -27,57 +27,12 @@
+ #define __WebKitAvailability__
+ 
+ #if defined(__APPLE__)
+-
+-#include <AvailabilityMacros.h>
+ #include <CoreFoundation/CoreFoundation.h>
+-
+-#if !TARGET_OS_IPHONE && __MAC_OS_X_VERSION_MIN_REQUIRED < 101100
+-/* To support availability macros that mention newer OS X versions when building on older OS X versions,
+-   we provide our own definitions of the underlying macros that the availability macros expand to. We're
+-   free to expand the macros as no-ops since frameworks built on older OS X versions only ship bundled with
+-   an application rather than as part of the system.
+-*/
+-
+-#ifndef __NSi_10_10 // Building from trunk rather than SDK.
+-#define __NSi_10_10 introduced=10.0 // Use 10.0 to indicate that everything is available.
+-#endif
+-
+-#ifndef __NSi_10_11 // Building from trunk rather than SDK.
+-#define __NSi_10_11 introduced=10.0 // Use 10.0 to indicate that everything is available.
+-#endif
+-
+-#ifndef __NSi_10_12 // Building from trunk rather than SDK.
+-#define __NSi_10_12 introduced=10.0 // Use 10.0 to indicate that everything is available.
+-#endif
+-
+-#ifndef __AVAILABILITY_INTERNAL__MAC_10_9
+-#define __AVAILABILITY_INTERNAL__MAC_10_9
+-#endif
+-
+-#ifndef __AVAILABILITY_INTERNAL__MAC_10_10
+-#define __AVAILABILITY_INTERNAL__MAC_10_10
+ #endif
+ 
+-#ifndef AVAILABLE_MAC_OS_X_VERSION_10_9_AND_LATER
+-#define AVAILABLE_MAC_OS_X_VERSION_10_9_AND_LATER
+-#endif
+-
+-#ifndef AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER
+-#define AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER
+-#endif
+-
+-#endif /* __MAC_OS_X_VERSION_MIN_REQUIRED <= 101100 */
+-
+-#if defined(BUILDING_GTK__)
+ #undef CF_AVAILABLE
+ #define CF_AVAILABLE(_mac, _ios)
+ #undef CF_ENUM_AVAILABLE
+ #define CF_ENUM_AVAILABLE(_mac, _ios)
+-#endif
+-
+-#else
+-#define CF_AVAILABLE(_mac, _ios)
+-#define CF_ENUM_AVAILABLE(_mac, _ios)
+-#endif
+ 
+ #endif /* __WebKitAvailability__ */
diff --git a/pkgs/development/libraries/wiredtiger/default.nix b/pkgs/development/libraries/wiredtiger/default.nix
index 347686014d1..e4b95fc1cb9 100644
--- a/pkgs/development/libraries/wiredtiger/default.nix
+++ b/pkgs/development/libraries/wiredtiger/default.nix
@@ -7,9 +7,10 @@
 
 with stdenv.lib;
 let
-  mkFlag = trueStr: falseStr: cond: name: val:
-    if cond == null then null else
-      "--${if cond != false then trueStr else falseStr}${name}${if val != null && cond != false then "=${val}" else ""}";
+  mkFlag = trueStr: falseStr: cond: name: val: "--"
+    + (if cond then trueStr else falseStr)
+    + name
+    + optionalString (val != null && cond != false) "=${val}";
   mkEnable = mkFlag "enable-" "disable-";
   mkWith = mkFlag "with-" "without-";
   mkOther = mkFlag "" "" true;
diff --git a/pkgs/development/libraries/wxGTK-2.8/default.nix b/pkgs/development/libraries/wxGTK-2.8/default.nix
index cbfdf876dba..9538f1dd1f8 100644
--- a/pkgs/development/libraries/wxGTK-2.8/default.nix
+++ b/pkgs/development/libraries/wxGTK-2.8/default.nix
@@ -1,9 +1,10 @@
 { stdenv, fetchurl, pkgconfig, gtk2, libXinerama, libSM, libXxf86vm, xf86vidmodeproto
 , gstreamer, gst-plugins-base, GConf, libX11, cairo
-, withMesa ? true, mesa ? null, compat24 ? false, compat26 ? true, unicode ? true,
+, withMesa ? true, mesa_glu ? null, mesa_noglu ? null
+, compat24 ? false, compat26 ? true, unicode ? true,
 }:
 
-assert withMesa -> mesa != null;
+assert withMesa -> mesa_glu != null && mesa_noglu != null;
 
 with stdenv.lib;
 
@@ -17,7 +18,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ gtk2 libXinerama libSM libXxf86vm xf86vidmodeproto gstreamer gst-plugins-base GConf libX11 cairo ]
-    ++ optional withMesa mesa;
+    ++ optional withMesa mesa_glu;
 
   nativeBuildInputs = [ pkgconfig ];
 
@@ -38,7 +39,7 @@ stdenv.mkDerivation rec {
     "${libXinerama.dev}/include ${libSM.dev}/include ${libXxf86vm.dev}/include";
   SEARCH_LIB =
     "${libXinerama.out}/lib ${libSM.out}/lib ${libXxf86vm.out}/lib "
-    + optionalString withMesa "${mesa.out}/lib ";
+    + optionalString withMesa "${mesa_glu.out}/lib ${mesa_noglu.out}/lib ";
 
   # Work around a bug in configure.
   NIX_CFLAGS_COMPILE = [ "-DHAVE_X11_XLIB_H=1" "-lX11" "-lcairo" "-Wno-narrowing" ];
@@ -62,8 +63,8 @@ stdenv.mkDerivation rec {
   };
 
   enableParallelBuilding = true;
-  
+
   meta = {
-    platforms = stdenv.lib.platforms.all;
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/wxGTK-2.9/default.nix b/pkgs/development/libraries/wxGTK-2.9/default.nix
index e19f0bc3a76..28cd79b5549 100644
--- a/pkgs/development/libraries/wxGTK-2.9/default.nix
+++ b/pkgs/development/libraries/wxGTK-2.9/default.nix
@@ -1,10 +1,11 @@
 { stdenv, fetchurl, pkgconfig, gtk2, libXinerama, libSM, libXxf86vm, xf86vidmodeproto
 , gstreamer, gst-plugins-base, GConf, setfile
-, withMesa ? true, mesa ? null, compat24 ? false, compat26 ? true, unicode ? true
+, withMesa ? true, mesa_glu ? null, mesa_noglu ? null
+, compat24 ? false, compat26 ? true, unicode ? true
 , Carbon ? null, Cocoa ? null, Kernel ? null, QuickTime ? null, AGL ? null
 }:
 
-assert withMesa -> mesa != null;
+assert withMesa -> mesa_glu != null && mesa_noglu != null;
 
 with stdenv.lib;
 
@@ -22,7 +23,7 @@ stdenv.mkDerivation {
   buildInputs =
     [ gtk2 libXinerama libSM libXxf86vm xf86vidmodeproto gstreamer
       gst-plugins-base GConf ]
-    ++ optional withMesa mesa
+    ++ optional withMesa mesa_glu
     ++ optionals stdenv.isDarwin [ setfile Carbon Cocoa Kernel QuickTime ];
 
   nativeBuildInputs = [ pkgconfig ];
@@ -39,7 +40,7 @@ stdenv.mkDerivation {
       # allow building on 64-bit
       [ "--with-cocoa" "--enable-universal-binaries" "--with-macosx-version-min=10.7" ];
 
-  SEARCH_LIB = optionalString withMesa "${mesa}/lib";
+  SEARCH_LIB = "${mesa_glu.out}/lib ${mesa_noglu.out}/lib ";
 
   preConfigure = "
     substituteInPlace configure --replace 'SEARCH_INCLUDE=' 'DUMMY_SEARCH_INCLUDE='
diff --git a/pkgs/development/libraries/wxGTK-3.0/default.nix b/pkgs/development/libraries/wxGTK-3.0/default.nix
index f40595d4eac..4fea863827f 100644
--- a/pkgs/development/libraries/wxGTK-3.0/default.nix
+++ b/pkgs/development/libraries/wxGTK-3.0/default.nix
@@ -1,12 +1,13 @@
 { stdenv, fetchurl, fetchpatch, pkgconfig, gtk2, libXinerama, libSM, libXxf86vm
 , xf86vidmodeproto , gstreamer, gst-plugins-base, GConf, setfile
-, withMesa ? true, mesa ? null, compat24 ? false, compat26 ? true, unicode ? true
+, withMesa ? true, mesa_glu ? null, mesa_noglu ? null
+, compat24 ? false, compat26 ? true, unicode ? true
 , withWebKit ? false, webkitgtk2 ? null
 , AGL ? null, Carbon ? null, Cocoa ? null, Kernel ? null, QTKit ? null
 }:
 
 
-assert withMesa -> mesa != null;
+assert withMesa -> mesa_glu != null && mesa_noglu != null;
 assert withWebKit -> webkitgtk2 != null;
 
 with stdenv.lib;
@@ -25,7 +26,7 @@ stdenv.mkDerivation {
   buildInputs =
     [ gtk2 libXinerama libSM libXxf86vm xf86vidmodeproto gstreamer
       gst-plugins-base GConf ]
-    ++ optional withMesa mesa
+    ++ optional withMesa mesa_glu
     ++ optional withWebKit webkitgtk2
     ++ optionals stdenv.isDarwin [ setfile Carbon Cocoa Kernel QTKit ];
 
@@ -50,7 +51,7 @@ stdenv.mkDerivation {
     ++ optionals withWebKit
       ["--enable-webview" "--enable-webview-webkit"];
 
-  SEARCH_LIB = optionalString withMesa "${mesa}/lib";
+  SEARCH_LIB = "${mesa_glu.out}/lib ${mesa_noglu.out}/lib ";
 
   preConfigure = "
     substituteInPlace configure --replace 'SEARCH_INCLUDE=' 'DUMMY_SEARCH_INCLUDE='
diff --git a/pkgs/development/libraries/wxsqlite3/default.nix b/pkgs/development/libraries/wxsqlite3/default.nix
index 88cf92b34ef..a0600399784 100644
--- a/pkgs/development/libraries/wxsqlite3/default.nix
+++ b/pkgs/development/libraries/wxsqlite3/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchFromGitHub, wxGTK, sqlite }:
+{ stdenv, fetchFromGitHub, wxGTK, sqlite
+, darwin }:
 
 stdenv.mkDerivation rec {
   name = "wxsqlite3-${version}";
@@ -11,7 +12,12 @@ stdenv.mkDerivation rec {
     sha1 = "bb8p58g88nkdcsj3h4acx7h925n2cy9g";
   };
 
-  buildInputs = [ wxGTK sqlite ];
+  preBuild = stdenv.lib.optionalString stdenv.isDarwin ''
+    cp build28/Info.plist.in build28/wxmac.icns build/
+  '';
+
+  buildInputs = [ wxGTK sqlite ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Cocoa darwin.stubs.setfile darwin.stubs.rez darwin.stubs.derez ];
 
   meta = with stdenv.lib; {
     homepage = http://utelle.github.io/wxsqlite3/ ;
diff --git a/pkgs/development/libraries/xbase/default.nix b/pkgs/development/libraries/xbase/default.nix
index 931d4064400..45d7d6f8301 100644
--- a/pkgs/development/libraries/xbase/default.nix
+++ b/pkgs/development/libraries/xbase/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
   meta = {
     homepage = http://linux.techass.com/projects/xdb/;
     description = "C++ class library formerly known as XDB";
-    platforms = stdenv.lib.platforms.all;
+    platforms = stdenv.lib.platforms.linux;
     maintainers = [ ];
   };
 }
diff --git a/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh b/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh
index 2e136530cd1..41d40064294 100755
--- a/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh
+++ b/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh
@@ -1,6 +1,6 @@
 #!@stdenv_shell@
 # Part of NixPkgs package collection
-# This script can be used at your option under the same license as NixPkgs or 
+# This script can be used at your option under the same license as NixPkgs or
 # under MIT/X11 license
 
 eval "$NIX_LISP_PREHOOK"
@@ -24,6 +24,7 @@ case "$NIX_LISP" in
                 NIX_LISP_QUIT="(quit)"
                 NIX_LISP_NODEBUG='--non-interactive'
 		NIX_LISP_FINAL_PARAMETERS=
+                NIX_LISP_FASL_TYPE="fasl"
 		;;
 	ecl)
 		NIX_LISP_LOAD_FILE="-load"
@@ -31,6 +32,7 @@ case "$NIX_LISP" in
                 NIX_LISP_QUIT="(quit)"
                 NIX_LISP_NODEBUG='--nodebug'
 		NIX_LISP_FINAL_PARAMETERS=
+                NIX_LISP_FASL_TYPE="fas"
 		;;
 	clisp)
 		NIX_LISP_LOAD_FILE="-c -l"
@@ -38,6 +40,31 @@ case "$NIX_LISP" in
                 NIX_LISP_QUIT="(quit)"
                 NIX_LISP_NODEBUG='-on-error exit'
 		NIX_LISP_FINAL_PARAMETERS="-repl"
+                NIX_LISP_FASL_TYPE="fas"
+		;;
+	lx86cl64)
+		NIX_LISP_LOAD_FILE="-l"
+		NIX_LISP_EXEC_CODE="-e"
+                NIX_LISP_QUIT="(quit)"
+                NIX_LISP_NODEBUG='-b'
+		NIX_LISP_FINAL_PARAMETERS=
+                NIX_LISP_FASL_TYPE="lx64fsl"
+		;;
+	lx86cl)
+		NIX_LISP_LOAD_FILE="-l"
+		NIX_LISP_EXEC_CODE="-e"
+                NIX_LISP_QUIT="(quit)"
+                NIX_LISP_NODEBUG='-b'
+		NIX_LISP_FINAL_PARAMETERS=
+                NIX_LISP_FASL_TYPE="lx32fsl"
+		;;
+	abcl)
+		NIX_LISP_LOAD_FILE="--load"
+		NIX_LISP_EXEC_CODE="--eval"
+                NIX_LISP_QUIT="(quit)"
+                NIX_LISP_NODEBUG=''
+		NIX_LISP_FINAL_PARAMETERS=
+                NIX_LISP_FASL_TYPE="abcl"
 		;;
 esac
 
@@ -49,7 +76,7 @@ NIX_LISP_ASDF_REGISTRY_CODE="
     )
 "
 
-NIX_LISP_ASDF="${NIX_LISP_ASDF:-@asdf@}"
+NIX_LISP_ASDF="${NIX_LISP_ASDF:-@out@}"
 
 nix_lisp_run_single_form(){
   NIX_LISP_FINAL_PARAMETERS=("$NIX_LISP_EXEC_CODE" "$1"
@@ -59,7 +86,7 @@ nix_lisp_run_single_form(){
 eval "$NIX_LISP_PRELAUNCH_HOOK"
 
 [ -z "$NIX_LISP_SKIP_CODE" ] && "$NIX_LISP_COMMAND" $NIX_LISP_EARLY_OPTIONS \
-	$NIX_LISP_EXEC_CODE "${NIX_LISP_ASDF_LOAD:-"(load \"$NIX_LISP_ASDF/lib/common-lisp/asdf/build/asdf.lisp\")"}" \
+	$NIX_LISP_EXEC_CODE "${NIX_LISP_ASDF_LOAD:-"(load \"$NIX_LISP_ASDF/lib/common-lisp/asdf/build/asdf.$NIX_LISP_FASL_TYPE\")"}" \
 	$NIX_LISP_EXEC_CODE "$NIX_LISP_ASDF_REGISTRY_CODE" \
 	${NIX_LISP_FINAL_PARAMETERS[*]:+"${NIX_LISP_FINAL_PARAMETERS[@]}"} \
 	"$@"
diff --git a/pkgs/development/lisp-modules/clwrapper/common-lisp.sh b/pkgs/development/lisp-modules/clwrapper/common-lisp.sh
index 43349cc7f8a..9f5a2b80689 100755
--- a/pkgs/development/lisp-modules/clwrapper/common-lisp.sh
+++ b/pkgs/development/lisp-modules/clwrapper/common-lisp.sh
@@ -1,3 +1,3 @@
 #! /bin/sh
 
-source "@out@"/bin/cl-wrapper.sh "${NIX_LISP_COMMAND:-$(ls "@lisp@/bin"/* | head -n 1)}" "$@"
+source "@out@"/bin/cl-wrapper.sh "${NIX_LISP_COMMAND:-$(@ls@ "@lisp@/bin"/* | @head@ -n 1)}" "$@"
diff --git a/pkgs/development/lisp-modules/clwrapper/default.nix b/pkgs/development/lisp-modules/clwrapper/default.nix
index 799fb0b5d69..2088439c61d 100644
--- a/pkgs/development/lisp-modules/clwrapper/default.nix
+++ b/pkgs/development/lisp-modules/clwrapper/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, asdf, lisp ? null}:
+{stdenv, fetchurl, asdf, which, lisp ? null}:
 stdenv.mkDerivation {
   name = "cl-wrapper-script";
 
@@ -6,27 +6,35 @@ stdenv.mkDerivation {
 
   installPhase=''
     mkdir -p "$out"/bin
+    export head="$(which head)"
+    export ls="$(which ls)"
     substituteAll ${./common-lisp.sh} "$out"/bin/common-lisp.sh
     substituteAll "${./build-with-lisp.sh}" "$out/bin/build-with-lisp.sh"
     substituteAll "${./cl-wrapper.sh}" "$out/bin/cl-wrapper.sh"
     chmod a+x "$out"/bin/*
-    
+
     substituteAll "${./setup-hook.sh}" "setup-hook-parsed"
     source setup-hook-parsed
     setLisp "${lisp}"
     echo "$NIX_LISP"
 
-    ASDF_OUTPUT_TRANSLATIONS="${asdf}/lib/common-lisp/:$out/lib/common-lisp-compiled/" \
-    NIX_LISP_PRELAUNCH_HOOK='nix_lisp_run_single_form "(progn 
-        (uiop/lisp-build:compile-file* \"${asdf}/lib/common-lisp/asdf/build/asdf.lisp\")
+    mkdir -p "$out/lib/common-lisp/"
+    cp -r "${asdf}/lib/common-lisp"/* "$out/lib/common-lisp/"
+    chmod u+rw -R "$out/lib/common-lisp/"
+
+    NIX_LISP_PRELAUNCH_HOOK='
+      NIX_LISP_FASL_TYPE=lisp
+      nix_lisp_run_single_form "(progn
+        (uiop/lisp-build:compile-file* \"'"$out"'/lib/common-lisp/asdf/build/asdf.lisp\")
         (asdf:load-system :uiop :force :all)
         (asdf:load-system :asdf :force :all)
+        (ignore-errors (asdf:load-system :uiop/version :force :all))
       )"' \
-      "$out/bin/common-lisp.sh" "$NIX_LISP"
-
-    ln -s "$out/lib/common-lisp-compiled"/{asdf/uiop,uiop}
+      "$out/bin/common-lisp.sh"
   '';
 
+  buildInputs = [which];
+
   inherit asdf lisp;
   stdenv_shell = stdenv.shell;
 
@@ -34,10 +42,10 @@ stdenv.mkDerivation {
 
   phases="installPhase fixupPhase";
 
-  preferLocalBuild = true;
+  ASDF_OUTPUT_TRANSLATIONS="${builtins.storeDir}/:${builtins.storeDir}";
 
   passthru = {
-    inherit lisp asdf;
+    inherit lisp;
   };
 
   meta = {
diff --git a/pkgs/development/lisp-modules/clwrapper/setup-hook.sh b/pkgs/development/lisp-modules/clwrapper/setup-hook.sh
index 4e582e0d5b0..7ac8c70d59f 100644
--- a/pkgs/development/lisp-modules/clwrapper/setup-hook.sh
+++ b/pkgs/development/lisp-modules/clwrapper/setup-hook.sh
@@ -1,16 +1,10 @@
-NIX_LISP_ASDF="@asdf@"
+NIX_LISP_ASDF="@out@"
 
-CL_SOURCE_REGISTRY="${CL_SOURCE_REGISTRY:+$CL_SOURCE_REGISTRY:}@asdf@/lib/common-lisp/asdf/:@asdf@/lib/common-lisp/asdf/uiop/"
-ASDF_OUTPUT_TRANSLATIONS="@asdf@/lib/common-lisp/:@out@/lib/common-lisp-compiled/"
+CL_SOURCE_REGISTRY="${CL_SOURCE_REGISTRY:+$CL_SOURCE_REGISTRY:}@out@/lib/common-lisp/asdf/"
 
 addASDFPaths () {
-    for j in "$1"/lib/common-lisp/*; do
-	if [ -d "$j" ]; then
-            CL_SOURCE_REGISTRY="$j/:$CL_SOURCE_REGISTRY"
-            if [ -d "$(dirname "$(dirname "$j")")/common-lisp-compiled/$(basename "$j")" ]; then
-              ASDF_OUTPUT_TRANSLATIONS="$j:$(dirname "$(dirname "$j")")/common-lisp-compiled/$(basename "$j")${ASDF_OUTPUT_TRANSLATIONS:+:}$ASDF_OUTPUT_TRANSLATIONS"
-            fi
-	fi
+    for j in "$1"/lib/common-lisp-settings/*-path-config.sh; do
+      source "$j"
     done
 }
 
@@ -35,7 +29,7 @@ collectNixLispLDLP () {
      fi
 }
 
-export NIX_LISP_COMMAND NIX_LISP CL_SOURCE_REGISTRY NIX_LISP_ASDF ASDF_OUTPUT_TRANSLATIONS
+export NIX_LISP_COMMAND NIX_LISP CL_SOURCE_REGISTRY NIX_LISP_ASDF
 
 envHooks+=(addASDFPaths setLisp collectNixLispLDLP)
 
diff --git a/pkgs/development/lisp-modules/define-package.nix b/pkgs/development/lisp-modules/define-package.nix
index 26851181531..1acedf4b704 100644
--- a/pkgs/development/lisp-modules/define-package.nix
+++ b/pkgs/development/lisp-modules/define-package.nix
@@ -1,21 +1,35 @@
 args @ {stdenv, clwrapper, baseName, testSystems ? [baseName], version ? "latest"
   , src, description, deps, buildInputs ? [], meta ? {}, overrides?(x: {})
   , propagatedBuildInputs ? []}:
-let 
+let
   deployConfigScript = ''
+    outhash="$out"
+    outhash="''${outhash##*/}"
+    outhash="''${outhash%%-*}"
     config_script="$out"/lib/common-lisp-settings/${args.baseName}-shell-config.sh
+    path_config_script="$out"/lib/common-lisp-settings/${args.baseName}-path-config.sh
+    store_translation="$(dirname "$out"):$(dirname "$out")"
     mkdir -p "$(dirname "$config_script")"
     touch "$config_script"
+    touch "$path_config_script"
     chmod a+x "$config_script"
+    chmod a+x "$path_config_script"
+    echo "if test -z \"\''${_''${outhash}_NIX_LISP_CONFIG}\"; then export _''${outhash}_NIX_LISP_CONFIG=1; " >> "$config_script"
     echo "export NIX_CFLAGS_COMPILE='$NIX_CFLAGS_COMPILE'\"\''${NIX_CFLAGS_COMPILE:+ \$NIX_CFLAGS_COMPILE}\"" >> "$config_script"
+    echo "export NIX_LDFLAGS='$NIX_LDFLAGS'\"\''${NIX_LDFLAGS:+ \$NIX_LDFLAGS}\"" >> "$config_script"
     echo "export NIX_LISP_COMMAND='$NIX_LISP_COMMAND'" >> "$config_script"
     echo "export NIX_LISP_ASDF='$NIX_LISP_ASDF'" >> "$config_script"
-    echo "export CL_SOURCE_REGISTRY="\$CL_SOURCE_REGISTRY\''${CL_SOURCE_REGISTRY:+:}"'$out/lib/common-lisp/${args.baseName}/:$CL_SOURCE_REGISTRY'" >> "$config_script"
-    echo "export ASDF_OUTPUT_TRANSLATIONS="\$ASDF_OUTPUT_TRANSLATIONS\''${ASDF_OUTPUT_TRANSLATIONS:+:}"'$out/lib/common-lisp/${args.baseName}/:$out/lib/common-lisp-compiled/${args.baseName}:$ASDF_OUTPUT_TRANSLATIONS'" >> "$config_script"
+    echo "export PATH=\"\''${PATH:+\$PATH:}$PATH\"" >> "$config_script"
+    echo "echo \"\$ASDF_OUTPUT_TRANSLATIONS\" | grep -E '(^|:)$store_translation(:|\$)' >/dev/null || export ASDF_OUTPUT_TRANSLATIONS=\"\''${ASDF_OUTPUT_TRANSLATIONS:+\$ASDF_OUTPUT_TRANSLATIONS:}\"'$store_translation'" >> "$config_script"
+    echo "source '$path_config_script'" >> "$config_script"
+    echo "fi" >> "$config_script"
+    echo "if test -z \"\''${_''${outhash}_NIX_LISP_PATH_CONFIG}\"; then export _''${outhash}_NIX_LISP_PATH_CONFIG=1; " >> "$path_config_script"
+    echo "for i in \"''${CL_SOURCE_REGISTRY//:/\" \"}\" \"$out/lib/common-lisp/${args.baseName}/\" ; do echo \"\$CL_SOURCE_REGISTRY\" | grep -E \"(^|:)\$i(:|\\\$)\" >/dev/null || export CL_SOURCE_REGISTRY=\"\$CL_SOURCE_REGISTRY\''${CL_SOURCE_REGISTRY:+:}\$i\"; done;" >> "$path_config_script"
     test -n "$LD_LIBRARY_PATH" &&
-        echo "export LD_LIBRARY_PATH=\"\$LD_LIBRARY_PATH\''${LD_LIBRARY_PATH:+:}\"'$LD_LIBRARY_PATH'" >> "$config_script"
+        echo "export LD_LIBRARY_PATH=\"\$LD_LIBRARY_PATH\''${LD_LIBRARY_PATH:+:}\"'$LD_LIBRARY_PATH'" >> "$path_config_script"
     test -n "$NIX_LISP_LD_LIBRARY_PATH" &&
-        echo "export NIX_LISP_LD_LIBRARY_PATH=\"\$NIX_LISP_LD_LIBRARY_PATH\''${NIX_LISP_LD_LIBRARY_PATH:+:}\"'$NIX_LISP_LD_LIBRARY_PATH'" >> "$config_script"
+        echo "export NIX_LISP_LD_LIBRARY_PATH=\"\$NIX_LISP_LD_LIBRARY_PATH\''${NIX_LISP_LD_LIBRARY_PATH:+:}\"'$NIX_LISP_LD_LIBRARY_PATH'" >> "$path_config_script"
+    echo "fi" >> "$path_config_script"
   '';
   deployLaunchScript = ''
     launch_script="$out"/bin/${args.baseName}-lisp-launcher.sh
@@ -25,7 +39,7 @@ let
     echo "#! /bin/sh" >> "$launch_script"
     echo "source '$config_script'" >> "$launch_script"
     echo "export LD_LIBRARY_PATH=\"\$NIX_LISP_LD_LIBRARY_PATH\''${NIX_LISP_LD_LIBRARY_PATH:+:}\$LD_LIBRARY_PATH\"" >> "$launch_script"
-    echo '"${clwrapper}/bin/common-lisp.sh" "$@"' >> "$launch_script" 
+    echo '"${clwrapper}/bin/common-lisp.sh" "$@"' >> "$launch_script"
   '';
 basePackage = {
   name = "lisp-${baseName}-${version}";
@@ -44,19 +58,26 @@ basePackage = {
     ${deployLaunchScript}
 
     ${stdenv.lib.concatMapStrings (testSystem: ''
-       CL_SOURCE_REGISTRY= \
+       env -i \
+       NIX_LISP="$NIX_LISP" \
        NIX_LISP_PRELAUNCH_HOOK='nix_lisp_run_single_form "(progn
-             (asdf:compile-system :${testSystem}) (asdf:load-system :${testSystem}))"' \
-          "$out/bin/${args.baseName}-lisp-launcher.sh" ""
+             (asdf:compile-system :${testSystem})
+             (asdf:load-system :${testSystem})
+             (asdf:operate (quote asdf::compile-bundle-op) :${testSystem})
+             (ignore-errors (asdf:operate (quote asdf::deploy-asd-op) :${testSystem}))
+             )"' \
+          "$out/bin/${args.baseName}-lisp-launcher.sh"
     '') testSystems}
 
     eval "$postInstall"
   '';
-  propagatedBuildInputs = (args.deps or []) ++ [clwrapper clwrapper.lisp clwrapper.asdf] 
+  propagatedBuildInputs = (args.deps or []) ++ [clwrapper clwrapper.lisp clwrapper.asdf]
     ++ (args.propagatedBuildInputs or []);
   buildInputs = buildInputs;
   dontStrip=true;
 
+  ASDF_OUTPUT_TRANSLATIONS="${builtins.storeDir}/:${builtins.storeDir}";
+
   meta = {
     inherit description version;
   } // meta;
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-aliases.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-aliases.nix
new file mode 100644
index 00000000000..cdcfde8eb33
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-aliases.nix
@@ -0,0 +1,13 @@
+{quicklisp-to-nix-packages}:
+with quicklisp-to-nix-packages;
+rec {
+  cffi-grovel = cffi;
+
+  cxml-test = null;
+  cxml-dom = null;
+  cxml-klacks = null;
+  cxml-xml = null;
+
+  cl-async-util = cl-async-base;
+  cl-async = cl-async-base;
+}
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd-ext-tables.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd-ext-tables.nix
deleted file mode 100644
index 7135766cf95..00000000000
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd-ext-tables.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-args @ { fetchurl, ... }:
-rec {
-  baseName = ''3bmd-ext-tables'';
-  version = ''3bmd-20161204-git'';
-
-  description = ''Extension to 3bmd implementing PHP Markdown Extra style tables'';
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/3bmd/2016-12-04/3bmd-20161204-git.tgz'';
-    sha256 = ''158rymq6ra9ipmkqrqmgr4ay5m46cdxxha03622svllhyf7xzypx'';
-  };
-
-  overrides = x: {
-    postInstall = ''
-      find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/3bmd-ext-tables[.]asd${"$"}' |
-        while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
-            "$out"/bin/*-lisp-launcher.sh ||
-          mv "$f"{,.sibling}; done || true
-    '';
-  };
-}
-/* (SYSTEM 3bmd-ext-tables DESCRIPTION Extension to 3bmd implementing PHP Markdown Extra style tables SHA256
-    158rymq6ra9ipmkqrqmgr4ay5m46cdxxha03622svllhyf7xzypx URL http://beta.quicklisp.org/archive/3bmd/2016-12-04/3bmd-20161204-git.tgz MD5
-    b80864c74437e0cfb66663e9bbf08fed NAME 3bmd-ext-tables TESTNAME NIL FILENAME 3bmd-ext-tables DEPS NIL DEPENDENCIES NIL VERSION 3bmd-20161204-git SIBLINGS
-    (3bmd-ext-code-blocks 3bmd-ext-definition-lists 3bmd-ext-wiki-links 3bmd-youtube-tests 3bmd-youtube 3bmd)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd-ext-wiki-links.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd-ext-wiki-links.nix
deleted file mode 100644
index 251f7b33b65..00000000000
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd-ext-wiki-links.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-args @ { fetchurl, ... }:
-rec {
-  baseName = ''3bmd-ext-wiki-links'';
-  version = ''3bmd-20161204-git'';
-
-  description = ''example extension to 3bmd implementing simple wiki-style [[links]]'';
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/3bmd/2016-12-04/3bmd-20161204-git.tgz'';
-    sha256 = ''158rymq6ra9ipmkqrqmgr4ay5m46cdxxha03622svllhyf7xzypx'';
-  };
-
-  overrides = x: {
-    postInstall = ''
-      find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/3bmd-ext-wiki-links[.]asd${"$"}' |
-        while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
-            "$out"/bin/*-lisp-launcher.sh ||
-          mv "$f"{,.sibling}; done || true
-    '';
-  };
-}
-/* (SYSTEM 3bmd-ext-wiki-links DESCRIPTION example extension to 3bmd implementing simple wiki-style [[links]] SHA256
-    158rymq6ra9ipmkqrqmgr4ay5m46cdxxha03622svllhyf7xzypx URL http://beta.quicklisp.org/archive/3bmd/2016-12-04/3bmd-20161204-git.tgz MD5
-    b80864c74437e0cfb66663e9bbf08fed NAME 3bmd-ext-wiki-links TESTNAME NIL FILENAME 3bmd-ext-wiki-links DEPS NIL DEPENDENCIES NIL VERSION 3bmd-20161204-git
-    SIBLINGS (3bmd-ext-code-blocks 3bmd-ext-definition-lists 3bmd-ext-tables 3bmd-youtube-tests 3bmd-youtube 3bmd)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd-youtube.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd-youtube.nix
deleted file mode 100644
index 802212e3d2f..00000000000
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd-youtube.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-args @ { fetchurl, ... }:
-rec {
-  baseName = ''3bmd-youtube'';
-  version = ''3bmd-20161204-git'';
-
-  description = ''An extension for 3bmd for embedding YouTube videos'';
-
-  deps = [ args."esrap" ];
-
-  src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/3bmd/2016-12-04/3bmd-20161204-git.tgz'';
-    sha256 = ''158rymq6ra9ipmkqrqmgr4ay5m46cdxxha03622svllhyf7xzypx'';
-  };
-
-  overrides = x: {
-    postInstall = ''
-      find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/3bmd-youtube[.]asd${"$"}' |
-        while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
-            "$out"/bin/*-lisp-launcher.sh ||
-          mv "$f"{,.sibling}; done || true
-    '';
-  };
-}
-/* (SYSTEM 3bmd-youtube DESCRIPTION An extension for 3bmd for embedding YouTube videos SHA256 158rymq6ra9ipmkqrqmgr4ay5m46cdxxha03622svllhyf7xzypx URL
-    http://beta.quicklisp.org/archive/3bmd/2016-12-04/3bmd-20161204-git.tgz MD5 b80864c74437e0cfb66663e9bbf08fed NAME 3bmd-youtube TESTNAME NIL FILENAME
-    3bmd-youtube DEPS ((NAME esrap)) DEPENDENCIES (esrap) VERSION 3bmd-20161204-git SIBLINGS
-    (3bmd-ext-code-blocks 3bmd-ext-definition-lists 3bmd-ext-tables 3bmd-ext-wiki-links 3bmd-youtube-tests 3bmd)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd.nix
index 67ec24a5668..e04b3032091 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/3bmd.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/3bmd[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 e3a6c52bc00..d72835e88c6 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/alexandria.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/alexandria[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/anaphora.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/anaphora.nix
index 102fd0d4ce5..fde774a9b24 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/anaphora.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/anaphora.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/anaphora[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 9cd1f486af2..0f51b69e200 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/array-utils[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/babel-streams.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/babel-streams.nix
index ad0931dec0b..4ad9f00b150 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/babel-streams.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/babel-streams.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/babel-streams[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/babel.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/babel.nix
index 2ae08f2ca60..a88e60824d1 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/babel.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/babel.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/babel[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/blackbird.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/blackbird.nix
index e10ee3cfc35..352538cd353 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/blackbird.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/blackbird.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/blackbird[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 165f2e955ac..adcf9fa5a72 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/bordeaux-threads[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 bbd50ab7026..e5d895adb63 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/caveman.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/caveman.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/caveman[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-examples.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-examples.nix
deleted file mode 100644
index 7947f1f02cc..00000000000
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-examples.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-args @ { fetchurl, ... }:
-rec {
-  baseName = ''cffi-examples'';
-  version = ''cffi_0.18.0'';
-
-  description = ''CFFI Examples'';
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cffi/2016-10-31/cffi_0.18.0.tgz'';
-    sha256 = ''0g4clx9l9c7iw9hiv94ihzp4zb80yq3i5j6lr3vkz9z2dndzcpzz'';
-  };
-
-  overrides = x: {
-    postInstall = ''
-      find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cffi-examples[.]asd${"$"}' |
-        while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
-            "$out"/bin/*-lisp-launcher.sh ||
-          mv "$f"{,.sibling}; done || true
-    '';
-  };
-}
-/* (SYSTEM cffi-examples DESCRIPTION CFFI Examples SHA256 0g4clx9l9c7iw9hiv94ihzp4zb80yq3i5j6lr3vkz9z2dndzcpzz URL
-    http://beta.quicklisp.org/archive/cffi/2016-10-31/cffi_0.18.0.tgz MD5 5be207fca26205c7550d7b6307871f4e NAME cffi-examples TESTNAME NIL FILENAME
-    cffi-examples DEPS NIL DEPENDENCIES NIL VERSION cffi_0.18.0 SIBLINGS (cffi-grovel cffi-libffi cffi-tests cffi-toolchain cffi-uffi-compat cffi)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-grovel.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-grovel.nix
index 51c9046c764..fdb2ab5b869 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-grovel.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-grovel.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cffi-grovel[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-libffi.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-libffi.nix
deleted file mode 100644
index be3a8d2087e..00000000000
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-libffi.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-args @ { fetchurl, ... }:
-rec {
-  baseName = ''cffi-libffi'';
-  version = ''cffi_0.18.0'';
-
-  description = ''Foreign structures by value'';
-
-  deps = [ args."trivial-features" ];
-
-  src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cffi/2016-10-31/cffi_0.18.0.tgz'';
-    sha256 = ''0g4clx9l9c7iw9hiv94ihzp4zb80yq3i5j6lr3vkz9z2dndzcpzz'';
-  };
-
-  overrides = x: {
-    postInstall = ''
-      find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cffi-libffi[.]asd${"$"}' |
-        while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
-            "$out"/bin/*-lisp-launcher.sh ||
-          mv "$f"{,.sibling}; done || true
-    '';
-  };
-}
-/* (SYSTEM cffi-libffi DESCRIPTION Foreign structures by value SHA256 0g4clx9l9c7iw9hiv94ihzp4zb80yq3i5j6lr3vkz9z2dndzcpzz URL
-    http://beta.quicklisp.org/archive/cffi/2016-10-31/cffi_0.18.0.tgz MD5 5be207fca26205c7550d7b6307871f4e NAME cffi-libffi TESTNAME NIL FILENAME cffi-libffi
-    DEPS ((NAME trivial-features)) DEPENDENCIES (trivial-features) VERSION cffi_0.18.0 SIBLINGS
-    (cffi-examples cffi-grovel cffi-tests cffi-toolchain cffi-uffi-compat cffi)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-toolchain.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-toolchain.nix
deleted file mode 100644
index bca3b17578f..00000000000
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-toolchain.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-args @ { fetchurl, ... }:
-rec {
-  baseName = ''cffi-toolchain'';
-  version = ''cffi_0.18.0'';
-
-  description = ''The CFFI toolchain'';
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cffi/2016-10-31/cffi_0.18.0.tgz'';
-    sha256 = ''0g4clx9l9c7iw9hiv94ihzp4zb80yq3i5j6lr3vkz9z2dndzcpzz'';
-  };
-
-  overrides = x: {
-    postInstall = ''
-      find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cffi-toolchain[.]asd${"$"}' |
-        while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
-            "$out"/bin/*-lisp-launcher.sh ||
-          mv "$f"{,.sibling}; done || true
-    '';
-  };
-}
-/* (SYSTEM cffi-toolchain DESCRIPTION The CFFI toolchain SHA256 0g4clx9l9c7iw9hiv94ihzp4zb80yq3i5j6lr3vkz9z2dndzcpzz URL
-    http://beta.quicklisp.org/archive/cffi/2016-10-31/cffi_0.18.0.tgz MD5 5be207fca26205c7550d7b6307871f4e NAME cffi-toolchain TESTNAME NIL FILENAME
-    cffi-toolchain DEPS NIL DEPENDENCIES NIL VERSION cffi_0.18.0 SIBLINGS (cffi-examples cffi-grovel cffi-libffi cffi-tests cffi-uffi-compat cffi)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-uffi-compat.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-uffi-compat.nix
deleted file mode 100644
index 3c68d026272..00000000000
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi-uffi-compat.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-args @ { fetchurl, ... }:
-rec {
-  baseName = ''cffi-uffi-compat'';
-  version = ''cffi_0.18.0'';
-
-  description = ''UFFI Compatibility Layer for CFFI'';
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cffi/2016-10-31/cffi_0.18.0.tgz'';
-    sha256 = ''0g4clx9l9c7iw9hiv94ihzp4zb80yq3i5j6lr3vkz9z2dndzcpzz'';
-  };
-
-  overrides = x: {
-    postInstall = ''
-      find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cffi-uffi-compat[.]asd${"$"}' |
-        while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
-            "$out"/bin/*-lisp-launcher.sh ||
-          mv "$f"{,.sibling}; done || true
-    '';
-  };
-}
-/* (SYSTEM cffi-uffi-compat DESCRIPTION UFFI Compatibility Layer for CFFI SHA256 0g4clx9l9c7iw9hiv94ihzp4zb80yq3i5j6lr3vkz9z2dndzcpzz URL
-    http://beta.quicklisp.org/archive/cffi/2016-10-31/cffi_0.18.0.tgz MD5 5be207fca26205c7550d7b6307871f4e NAME cffi-uffi-compat TESTNAME NIL FILENAME
-    cffi-uffi-compat DEPS NIL DEPENDENCIES NIL VERSION cffi_0.18.0 SIBLINGS (cffi-examples cffi-grovel cffi-libffi cffi-tests cffi-toolchain cffi)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi.nix
index 923f6804327..81f3dfad8aa 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cffi.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cffi[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 1e2588394ed..0a1d054b05e 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/chipz.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/chipz.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/chipz[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/chunga.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/chunga.nix
index f5be78349d5..6f38719781e 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/chunga.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/chunga.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/chunga[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/circular-streams.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/circular-streams.nix
index 73b10972a6a..ff69c56e8a6 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/circular-streams.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/circular-streams.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/circular-streams[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl+ssl.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl+ssl.nix
index 76f5c61314c..9b19aa51678 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl+ssl.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl+ssl.nix
@@ -1,29 +1,34 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl+ssl'';
-  version = ''cl+ssl-20161208-git'';
+  version = ''cl+ssl-20170403-git'';
 
   description = ''Common Lisp interface to OpenSSL.'';
 
   deps = [ args."uiop" args."trivial-gray-streams" args."trivial-garbage" args."flexi-streams" args."cffi" args."bordeaux-threads" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/cl+ssl/2016-12-08/cl+ssl-20161208-git.tgz'';
-    sha256 = ''0x9xa2rdfh9gxp5m27cj0wvzjqccz4w5cvm7nbk5shwsz5xgr7hs'';
+    url = ''http://beta.quicklisp.org/archive/cl+ssl/2017-04-03/cl+ssl-20170403-git.tgz'';
+    sha256 = ''1f1nr1wy6nk0l2n249djcvygl0379ch3x4ndc243jcahcp44x18s'';
   };
 
   overrides = x: {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl+ssl[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
   };
 }
-/* (SYSTEM cl+ssl DESCRIPTION Common Lisp interface to OpenSSL. SHA256 0x9xa2rdfh9gxp5m27cj0wvzjqccz4w5cvm7nbk5shwsz5xgr7hs URL
-    http://beta.quicklisp.org/archive/cl+ssl/2016-12-08/cl+ssl-20161208-git.tgz MD5 8050639e66800045cb0a43863059e630 NAME cl+ssl TESTNAME NIL FILENAME cl+ssl
+/* (SYSTEM cl+ssl DESCRIPTION Common Lisp interface to OpenSSL. SHA256 1f1nr1wy6nk0l2n249djcvygl0379ch3x4ndc243jcahcp44x18s URL
+    http://beta.quicklisp.org/archive/cl+ssl/2017-04-03/cl+ssl-20170403-git.tgz MD5 e6d22f98947384d0e0bb2eb18230f72d NAME cl+ssl TESTNAME NIL FILENAME cl+ssl
     DEPS ((NAME uiop) (NAME trivial-gray-streams) (NAME trivial-garbage) (NAME flexi-streams) (NAME cffi) (NAME bordeaux-threads)) DEPENDENCIES
-    (uiop trivial-gray-streams trivial-garbage flexi-streams cffi bordeaux-threads) VERSION cl+ssl-20161208-git SIBLINGS (cl+ssl.test)) */
+    (uiop trivial-gray-streams trivial-garbage flexi-streams cffi bordeaux-threads) VERSION cl+ssl-20170403-git SIBLINGS (cl+ssl.test)) */
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 db5cecf3c19..2988906735a 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-aa[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-annot.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-annot.nix
index b00646e96e0..bdf0dbdf48a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-annot.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-annot.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-annot[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 cd4b5e3cace..dae0666a727 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-anonfun[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ansi-text.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ansi-text.nix
index c5d76714dd4..2530203e3b7 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ansi-text.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ansi-text.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-ansi-text[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-base.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-base.nix
index eb13e385ee8..ea9c89dffb7 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-base.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-base.nix
@@ -18,8 +18,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-async-base[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 2d211eb8d18..ccc138a9b5e 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-async-repl[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 140b0157d37..dbd056059f7 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-async-ssl[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-util.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-util.nix
index 979cb5ee9b7..b72be6f88bf 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-util.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-async-util.nix
@@ -3,8 +3,6 @@ rec {
   baseName = ''cl-async-util'';
   version = ''cl-async-20160825-git'';
 
-  testSystems = ["cl-async"];
-
   description = ''Internal utilities for cl-async.'';
 
   deps = [ args."vom" args."fast-io" args."cl-ppcre" args."cl-libuv" args."cl-async-base" args."cffi" ];
@@ -18,14 +16,19 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-async-util[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
   };
 }
 /* (SYSTEM cl-async-util DESCRIPTION Internal utilities for cl-async. SHA256 104x6vw9zrmzz3sipmzn0ygil6ccyy8gpvvjxak2bfxbmxcl09pa URL
-    http://beta.quicklisp.org/archive/cl-async/2016-08-25/cl-async-20160825-git.tgz MD5 18e1d6c54a27c8ba721ebaa3d8c6e112 NAME cl-async-util TESTNAME cl-async
+    http://beta.quicklisp.org/archive/cl-async/2016-08-25/cl-async-20160825-git.tgz MD5 18e1d6c54a27c8ba721ebaa3d8c6e112 NAME cl-async-util TESTNAME NIL
     FILENAME cl-async-util DEPS ((NAME vom) (NAME fast-io) (NAME cl-ppcre) (NAME cl-libuv) (NAME cl-async-base) (NAME cffi)) DEPENDENCIES
     (vom fast-io cl-ppcre cl-libuv cl-async-base cffi) VERSION cl-async-20160825-git SIBLINGS (cl-async-repl cl-async-ssl cl-async-test cl-async)) */
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 a2ea0c38bf5..e484e1d991a 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-async[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-base64.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-base64.nix
index c2799e37e2e..0ca5f7149f2 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-base64.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-base64.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-base64[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-colors.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-colors.nix
index 710799e095c..237fbfaea38 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-colors.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-colors.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-colors[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-cookie.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-cookie.nix
index cbfb425eee1..4d2b56ac775 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-cookie.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-cookie.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-cookie[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 d7798a6eb1f..781ae6c1d33 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-dbi[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-emb.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-emb.nix
index f2aab01ef5e..7b4c40632a5 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-emb.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-emb.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-emb[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fad.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fad.nix
index f731a13e782..2063f2f4be3 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fad.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fad.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-fad[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fuse-meta-fs.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fuse-meta-fs.nix
index 35fb1fbc073..9d3d779ab48 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fuse-meta-fs.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fuse-meta-fs.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-fuse-meta-fs[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fuse.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fuse.nix
index 01c01c57bb8..576edbfdbf2 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fuse.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-fuse.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-fuse[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-json.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-json.nix
index a89a341715c..7babd1a459f 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-json.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-json.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-json[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 463232d1419..f782c99a68a 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-l10n-cldr[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-l10n.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-l10n.nix
index 9c8c1cc05b2..6c465f14858 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-l10n.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-l10n.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-l10n[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 bc45a29b4b4..cca51585e5d 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-libuv[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 93de92d71f6..282b05fefd8 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-markup[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-mysql.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-mysql.nix
index 7aed84cec64..f54fc00950a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-mysql.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-mysql.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-mysql[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-paths-ttf.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-paths-ttf.nix
index e2fd4222b51..38f57fc61b1 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-paths-ttf.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-paths-ttf.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-paths-ttf[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 76fe21bfb76..66b42fec175 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,28 +1,33 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-postgres'';
-  version = ''postmodern-20170124-git'';
+  version = ''postmodern-20170403-git'';
 
   description = ''Low-level client library for PostgreSQL'';
 
   deps = [ args."md5" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/postmodern/2017-01-24/postmodern-20170124-git.tgz'';
-    sha256 = ''1hdgdpkba225xqvpsr7r1j78cx0ha23x6f69ab2666plpyw321k8'';
+    url = ''http://beta.quicklisp.org/archive/postmodern/2017-04-03/postmodern-20170403-git.tgz'';
+    sha256 = ''1pklmp0y0falrmbxll79drrcrlgslasavdym5r45m8kkzi1zpv9p'';
   };
 
   overrides = x: {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-postgres[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
   };
 }
-/* (SYSTEM cl-postgres DESCRIPTION Low-level client library for PostgreSQL SHA256 1hdgdpkba225xqvpsr7r1j78cx0ha23x6f69ab2666plpyw321k8 URL
-    http://beta.quicklisp.org/archive/postmodern/2017-01-24/postmodern-20170124-git.tgz MD5 d19b368a8883093f20a47be83709b0c5 NAME cl-postgres TESTNAME NIL
-    FILENAME cl-postgres DEPS ((NAME md5)) DEPENDENCIES (md5) VERSION postmodern-20170124-git SIBLINGS (postmodern s-sql simple-date)) */
+/* (SYSTEM cl-postgres DESCRIPTION Low-level client library for PostgreSQL SHA256 1pklmp0y0falrmbxll79drrcrlgslasavdym5r45m8kkzi1zpv9p URL
+    http://beta.quicklisp.org/archive/postmodern/2017-04-03/postmodern-20170403-git.tgz MD5 7a4145a0a5ff5bcb7a4bf29b5c2915d2 NAME cl-postgres TESTNAME NIL
+    FILENAME cl-postgres DEPS ((NAME md5)) DEPENDENCIES (md5) VERSION postmodern-20170403-git SIBLINGS (postmodern s-sql simple-date)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre-template.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre-template.nix
index ef75212c0f9..8e687ce64a8 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre-template.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre-template.nix
@@ -20,8 +20,13 @@ REGULAR-EXPRESSION-TEMPLATE.'';
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-ppcre-template[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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
new file mode 100644
index 00000000000..3872bfd5f93
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-ppcre-unicode.nix
@@ -0,0 +1,33 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''cl-ppcre-unicode'';
+  version = ''cl-ppcre-2.0.11'';
+
+  description = ''Perl-compatible regular expression library (Unicode)'';
+
+  deps = [ args."cl-unicode" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/cl-ppcre/2015-09-23/cl-ppcre-2.0.11.tgz'';
+    sha256 = ''1djciws9n0jg3qdrck3j4wj607zvkbir8p379mp0p7b5g0glwvb2'';
+  };
+
+  overrides = x: {
+    postInstall = ''
+      find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-ppcre-unicode[.]asd${"$"}' |
+        while read f; do
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
+            "$out"/bin/*-lisp-launcher.sh ||
+          mv "$f"{,.sibling}; done || true
+    '';
+  };
+}
+/* (SYSTEM cl-ppcre-unicode DESCRIPTION Perl-compatible regular expression library (Unicode) SHA256 1djciws9n0jg3qdrck3j4wj607zvkbir8p379mp0p7b5g0glwvb2 URL
+    http://beta.quicklisp.org/archive/cl-ppcre/2015-09-23/cl-ppcre-2.0.11.tgz MD5 6d5250467c05eb661a76d395186a1da0 NAME cl-ppcre-unicode TESTNAME NIL FILENAME
+    cl-ppcre-unicode DEPS ((NAME cl-unicode)) DEPENDENCIES (cl-unicode) VERSION cl-ppcre-2.0.11 SIBLINGS (cl-ppcre)) */
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 6bcd357bfc4..ecf4a5de399 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-ppcre[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 eeb4d4023e2..3a933d2b11d 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-project[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-reexport.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-reexport.nix
index 303ed95f662..cad670acab1 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-reexport.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-reexport.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-reexport[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-smtp.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-smtp.nix
index 6ef4a185475..0098abf59d3 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-smtp.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-smtp.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-smtp[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-store.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-store.nix
index 667f644b33c..ba16a64a9f6 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-store.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-store.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-store[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-annot.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-annot.nix
index 533e48b189f..abdfc65ec1f 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-annot.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-annot.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-syntax-annot[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-anonfun.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-anonfun.nix
index d6ee6e602e7..32c1a0c0ccc 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-anonfun.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-anonfun.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-syntax-anonfun[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-markup.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-markup.nix
index 4af6c8a19f8..34c5a2e6628 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-markup.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax-markup.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-syntax-markup[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax.nix
index 4ad90aeb5ff..bccba7ca8ea 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-syntax.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-syntax[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-test-more.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-test-more.nix
index 65681df3e2d..c0d004c4009 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-test-more.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-test-more.nix
@@ -1,28 +1,33 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''cl-test-more'';
-  version = ''prove-20170124-git'';
+  version = ''prove-20170403-git'';
 
   description = '''';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/prove/2017-01-24/prove-20170124-git.tgz'';
-    sha256 = ''1kyhh4yvf47psb5v0zqivcwn71n6my5fwggdifymlpigk2q3zn03'';
+    url = ''http://beta.quicklisp.org/archive/prove/2017-04-03/prove-20170403-git.tgz'';
+    sha256 = ''091xxkn9zj22c4gmm8x714k29bs4j0j7akppwh55zjsmrxdhqcpl'';
   };
 
   overrides = x: {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-test-more[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
   };
 }
-/* (SYSTEM cl-test-more DESCRIPTION NIL SHA256 1kyhh4yvf47psb5v0zqivcwn71n6my5fwggdifymlpigk2q3zn03 URL
-    http://beta.quicklisp.org/archive/prove/2017-01-24/prove-20170124-git.tgz MD5 c5601ee1aebedc7272e2c25e6a5ca8be NAME cl-test-more TESTNAME NIL FILENAME
-    cl-test-more DEPS NIL DEPENDENCIES NIL VERSION prove-20170124-git SIBLINGS (prove-asdf prove-test prove)) */
+/* (SYSTEM cl-test-more DESCRIPTION NIL SHA256 091xxkn9zj22c4gmm8x714k29bs4j0j7akppwh55zjsmrxdhqcpl URL
+    http://beta.quicklisp.org/archive/prove/2017-04-03/prove-20170403-git.tgz MD5 063b615692c8711d2392204ecf1b37b7 NAME cl-test-more TESTNAME NIL FILENAME
+    cl-test-more DEPS NIL DEPENDENCIES NIL VERSION prove-20170403-git SIBLINGS (prove-asdf prove-test prove)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-unicode.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-unicode.nix
index e67a8e36994..d514c1f26a4 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-unicode.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-unicode.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-unicode[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 059d9f1abee..4c0b0c5c762 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
@@ -18,8 +18,13 @@ The system contains the definitions for the 'unification' machinery.'';
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-unification[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 5e6ee119874..099c63daf28 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-utilities[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-vectors.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-vectors.nix
index 9ac50b75557..e2e2c956e7d 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-vectors.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-vectors.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-vectors[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-who.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-who.nix
index 2f8923206c7..ca1303e9d1d 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-who.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cl-who.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cl-who[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 af1f2c8b8fa..b9d894e3f47 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,31 +1,43 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''clack-v1-compat'';
-  version = ''clack-20170227-git'';
+  version = ''clack-20170403-git'';
 
   description = '''';
 
-  deps = [ ];
+  deps = [ args."uiop" args."trivial-types" args."trivial-mimes" args."trivial-backtrace" args."split-sequence" args."quri" args."marshal" args."local-time" args."lack-util" args."lack" args."ironclad" args."http-body" args."flexi-streams" args."cl-syntax-annot" args."cl-ppcre" args."cl-base64" args."circular-streams" args."alexandria" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/clack/2017-02-27/clack-20170227-git.tgz'';
-    sha256 = ''1sm6iamghpzmrv0h375y2famdngx62ml5dw424896kixxfyr923x'';
+    url = ''http://beta.quicklisp.org/archive/clack/2017-04-03/clack-20170403-git.tgz'';
+    sha256 = ''1n6rbiz5ybwr1fbzynlmqmx2di5kqxrsniqx9mzy7034hqpk54ss'';
   };
 
   overrides = x: {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/clack-v1-compat[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
   };
 }
-/* (SYSTEM clack-v1-compat DESCRIPTION NIL SHA256 1sm6iamghpzmrv0h375y2famdngx62ml5dw424896kixxfyr923x URL
-    http://beta.quicklisp.org/archive/clack/2017-02-27/clack-20170227-git.tgz MD5 2264b62c2de992d12829053e8e5f9101 NAME clack-v1-compat TESTNAME NIL FILENAME
-    clack-v1-compat DEPS NIL DEPENDENCIES NIL VERSION clack-20170227-git SIBLINGS
+/* (SYSTEM clack-v1-compat DESCRIPTION NIL SHA256 1n6rbiz5ybwr1fbzynlmqmx2di5kqxrsniqx9mzy7034hqpk54ss URL
+    http://beta.quicklisp.org/archive/clack/2017-04-03/clack-20170403-git.tgz MD5 98643f671285c11e91d2c81d4c8fc52a NAME clack-v1-compat TESTNAME NIL FILENAME
+    clack-v1-compat DEPS
+    ((NAME uiop) (NAME trivial-types) (NAME trivial-mimes) (NAME trivial-backtrace) (NAME split-sequence) (NAME quri) (NAME marshal) (NAME local-time)
+     (NAME lack-util) (NAME lack) (NAME ironclad) (NAME http-body) (NAME flexi-streams) (NAME cl-syntax-annot) (NAME cl-ppcre) (NAME cl-base64)
+     (NAME circular-streams) (NAME alexandria))
+    DEPENDENCIES
+    (uiop trivial-types trivial-mimes trivial-backtrace split-sequence quri marshal local-time lack-util lack ironclad http-body flexi-streams cl-syntax-annot
+     cl-ppcre cl-base64 circular-streams alexandria)
+    VERSION clack-20170403-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 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
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 5fd364a5879..2d0d3b3d0bc 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clack.nix
@@ -1,31 +1,37 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''clack'';
-  version = ''20170227-git'';
+  version = ''20170403-git'';
 
   description = ''Web application environment for Common Lisp'';
 
-  deps = [ ];
+  deps = [ args."uiop" args."lack-util" args."lack-middleware-backtrace" args."lack" args."bordeaux-threads" args."alexandria" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/clack/2017-02-27/clack-20170227-git.tgz'';
-    sha256 = ''1sm6iamghpzmrv0h375y2famdngx62ml5dw424896kixxfyr923x'';
+    url = ''http://beta.quicklisp.org/archive/clack/2017-04-03/clack-20170403-git.tgz'';
+    sha256 = ''1n6rbiz5ybwr1fbzynlmqmx2di5kqxrsniqx9mzy7034hqpk54ss'';
   };
 
   overrides = x: {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/clack[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
   };
 }
-/* (SYSTEM clack DESCRIPTION Web application environment for Common Lisp SHA256 1sm6iamghpzmrv0h375y2famdngx62ml5dw424896kixxfyr923x URL
-    http://beta.quicklisp.org/archive/clack/2017-02-27/clack-20170227-git.tgz MD5 2264b62c2de992d12829053e8e5f9101 NAME clack TESTNAME NIL FILENAME clack DEPS
-    NIL DEPENDENCIES NIL VERSION 20170227-git SIBLINGS
+/* (SYSTEM clack DESCRIPTION Web application environment for Common Lisp SHA256 1n6rbiz5ybwr1fbzynlmqmx2di5kqxrsniqx9mzy7034hqpk54ss URL
+    http://beta.quicklisp.org/archive/clack/2017-04-03/clack-20170403-git.tgz MD5 98643f671285c11e91d2c81d4c8fc52a NAME clack TESTNAME NIL FILENAME clack DEPS
+    ((NAME uiop) (NAME lack-util) (NAME lack-middleware-backtrace) (NAME lack) (NAME bordeaux-threads) (NAME alexandria)) DEPENDENCIES
+    (uiop lack-util lack-middleware-backtrace lack bordeaux-threads alexandria) VERSION 20170403-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 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
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 725d2544e6b..432da3069d2 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,23 +1,28 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''closer-mop'';
-  version = ''20170227-git'';
+  version = ''20170403-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/2017-02-27/closer-mop-20170227-git.tgz'';
-    sha256 = ''1hdnbryh6gd8kn20yr5ldgkcs8i71c6awwf6a32nmp9l42gwv9k3'';
+    url = ''http://beta.quicklisp.org/archive/closer-mop/2017-04-03/closer-mop-20170403-git.tgz'';
+    sha256 = ''166k9r55zf0lyvdacvih5y63xv2kp0kqmx9z6jmkyb3snrdghijf'';
   };
 
   overrides = x: {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/closer-mop[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
@@ -25,5 +30,5 @@ 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 1hdnbryh6gd8kn20yr5ldgkcs8i71c6awwf6a32nmp9l42gwv9k3 URL http://beta.quicklisp.org/archive/closer-mop/2017-02-27/closer-mop-20170227-git.tgz MD5
-    fb511369eb416a4cc8335db79d0ec4b2 NAME closer-mop TESTNAME NIL FILENAME closer-mop DEPS NIL DEPENDENCIES NIL VERSION 20170227-git SIBLINGS NIL) */
+    SHA256 166k9r55zf0lyvdacvih5y63xv2kp0kqmx9z6jmkyb3snrdghijf URL http://beta.quicklisp.org/archive/closer-mop/2017-04-03/closer-mop-20170403-git.tgz MD5
+    806918d9975d0c82fc471f95f40972a1 NAME closer-mop TESTNAME NIL FILENAME closer-mop DEPS NIL DEPENDENCIES NIL VERSION 20170403-git SIBLINGS NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/closure-common.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/closure-common.nix
index 9dccf964a26..4e7579dba88 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/closure-common.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/closure-common.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/closure-common[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clsql.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clsql.nix
index a0f0ad2a035..f5dba03d08e 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clsql.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clsql.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/clsql[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 701f98eec15..e8af9d041e0 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clss.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clss.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/clss[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clx-truetype.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clx-truetype.nix
index c5930fe0b15..bf1b1a5e00c 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clx-truetype.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clx-truetype.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/clx-truetype[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 5e24696e8c7..e9e1acfcefc 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clx.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clx.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/clx[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 9c13409fe7d..62010efd047 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/command-line-arguments[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 fc1b09601de..3f8886915a0 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/css-lite[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-dom.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-dom.nix
index 9b7bced0d90..041cc5b8481 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-dom.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-dom.nix
@@ -18,8 +18,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cxml-dom[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-klacks.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-klacks.nix
index e54cffb0ec4..15dd75fbfa6 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-klacks.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-klacks.nix
@@ -18,8 +18,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cxml-klacks[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-test.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-test.nix
index ddf0dfab841..4a872802ecb 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-test.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-test.nix
@@ -18,8 +18,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cxml-test[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-xml.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-xml.nix
index 1ac10de31d0..9674eca3d1a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-xml.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml-xml.nix
@@ -18,8 +18,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cxml-xml[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml.nix
index 89513dd9a38..3c17f72b42a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/cxml.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/cxml[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 3f05586200d..4ba68b6c545 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/dbd-mysql[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 cc30e7aafce..0d0c3f153ef 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/dbd-postgres[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 deb018bbc8a..f4c38e485f9 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/dbd-sqlite3[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 c5c823422fd..95672b7296f 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/dexador.nix
@@ -1,28 +1,39 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''dexador'';
-  version = ''20170227-git'';
+  version = ''20170403-git'';
 
   description = ''Yet another HTTP client for Common Lisp'';
 
-  deps = [ ];
+  deps = [ args."usocket" args."trivial-mimes" args."trivial-gray-streams" args."quri" args."fast-io" args."fast-http" args."cl-reexport" args."cl-ppcre" args."cl-cookie" args."cl-base64" args."cl+ssl" args."chunga" args."chipz" args."bordeaux-threads" args."babel" args."alexandria" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/dexador/2017-02-27/dexador-20170227-git.tgz'';
-    sha256 = ''0fc3hlckxfwz1ymindb9p44c6idfz8z6w5zk8cbd4nvvd0f2a8kz'';
+    url = ''http://beta.quicklisp.org/archive/dexador/2017-04-03/dexador-20170403-git.tgz'';
+    sha256 = ''0lnz36215wccpjgvrv9r7fa1i94jcdyw6q3hlgx9h8b7pwdlcfbn'';
   };
 
   overrides = x: {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/dexador[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
   };
 }
-/* (SYSTEM dexador DESCRIPTION Yet another HTTP client for Common Lisp SHA256 0fc3hlckxfwz1ymindb9p44c6idfz8z6w5zk8cbd4nvvd0f2a8kz URL
-    http://beta.quicklisp.org/archive/dexador/2017-02-27/dexador-20170227-git.tgz MD5 87895012728d97cf37366c3e4b96fcee NAME dexador TESTNAME NIL FILENAME
-    dexador DEPS NIL DEPENDENCIES NIL VERSION 20170227-git SIBLINGS (dexador-test)) */
+/* (SYSTEM dexador DESCRIPTION Yet another HTTP client for Common Lisp SHA256 0lnz36215wccpjgvrv9r7fa1i94jcdyw6q3hlgx9h8b7pwdlcfbn URL
+    http://beta.quicklisp.org/archive/dexador/2017-04-03/dexador-20170403-git.tgz MD5 0330a50a117313dbe0ba3f136b0fa416 NAME dexador TESTNAME NIL FILENAME
+    dexador DEPS
+    ((NAME usocket) (NAME trivial-mimes) (NAME trivial-gray-streams) (NAME quri) (NAME fast-io) (NAME fast-http) (NAME cl-reexport) (NAME cl-ppcre)
+     (NAME cl-cookie) (NAME cl-base64) (NAME cl+ssl) (NAME chunga) (NAME chipz) (NAME bordeaux-threads) (NAME babel) (NAME alexandria))
+    DEPENDENCIES
+    (usocket trivial-mimes trivial-gray-streams quri fast-io fast-http cl-reexport cl-ppcre cl-cookie cl-base64 cl+ssl chunga chipz bordeaux-threads babel
+     alexandria)
+    VERSION 20170403-git SIBLINGS (dexador-test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/do-urlencode.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/do-urlencode.nix
index 5da87698061..608cd6b3896 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/do-urlencode.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/do-urlencode.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/do-urlencode[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 0fca95c1e9f..43f6343b7eb 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/documentation-utils[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/drakma.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/drakma.nix
index 0cc14057d51..82695e74bfe 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/drakma.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/drakma.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/drakma[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/esrap.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/esrap.nix
index 6ca810098d8..60db24e57d0 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/esrap.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/esrap.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/esrap[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/external-program.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/external-program.nix
index c716e9a35ea..aa7963f3243 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/external-program.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/external-program.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/external-program[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 17255e56a26..1f83d562967 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/fast-http[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/fast-io.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/fast-io.nix
index 8dddfd65f01..52cbc8ddcdb 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/fast-io.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/fast-io.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/fast-io[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 4f7f8927919..2348167ba65 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/flexi-streams[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 354055aa112..e12f3efb59a 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/form-fiddle[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/http-body.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/http-body.nix
index dd7a876a28d..ed38c44b0c1 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/http-body.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/http-body.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/http-body[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/hu.dwim.asdf.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/hu.dwim.asdf.nix
index 2ea3132e6fe..c37de8f6f8d 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/hu.dwim.asdf.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/hu.dwim.asdf.nix
@@ -1,29 +1,34 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''hu.dwim.asdf'';
-  version = ''20151218-darcs'';
+  version = ''20170403-darcs'';
 
   description = ''Various ASDF extensions such as attached test and documentation system, explicit development support, etc.'';
 
   deps = [ args."uiop" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/hu.dwim.asdf/2015-12-18/hu.dwim.asdf-20151218-darcs.tgz'';
-    sha256 = ''18qdysv7zd2avdl8lc3gbnif8crjn0qs45fmnw8hia4dmd71k0k4'';
+    url = ''http://beta.quicklisp.org/archive/hu.dwim.asdf/2017-04-03/hu.dwim.asdf-20170403-darcs.tgz'';
+    sha256 = ''0avhfdg2ypv0cnwzihq64zwd562c4ls4bx6014mwgdfggp4b00ll'';
   };
 
   overrides = x: {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/hu.dwim.asdf[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
   };
 }
 /* (SYSTEM hu.dwim.asdf DESCRIPTION Various ASDF extensions such as attached test and documentation system, explicit development support, etc. SHA256
-    18qdysv7zd2avdl8lc3gbnif8crjn0qs45fmnw8hia4dmd71k0k4 URL http://beta.quicklisp.org/archive/hu.dwim.asdf/2015-12-18/hu.dwim.asdf-20151218-darcs.tgz MD5
-    68ada32eb844abd8e2e6bc029126fa5f NAME hu.dwim.asdf TESTNAME NIL FILENAME hu.dwim.asdf DEPS ((NAME uiop)) DEPENDENCIES (uiop) VERSION 20151218-darcs
+    0avhfdg2ypv0cnwzihq64zwd562c4ls4bx6014mwgdfggp4b00ll URL http://beta.quicklisp.org/archive/hu.dwim.asdf/2017-04-03/hu.dwim.asdf-20170403-darcs.tgz MD5
+    53cbeb56a8ee066116069d80c7fc3f65 NAME hu.dwim.asdf TESTNAME NIL FILENAME hu.dwim.asdf DEPS ((NAME uiop)) DEPENDENCIES (uiop) VERSION 20170403-darcs
     SIBLINGS (hu.dwim.asdf.documentation)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/hu.dwim.def.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/hu.dwim.def.nix
index d7d6bf5611e..0649edb6fd3 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/hu.dwim.def.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/hu.dwim.def.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/hu.dwim.def[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/hunchentoot.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/hunchentoot.nix
index b38796148a7..e77e977ea3f 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/hunchentoot.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/hunchentoot.nix
@@ -19,8 +19,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/hunchentoot[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/idna.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/idna.nix
index 7e2f33ddfa9..ea7dd30df0b 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/idna.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/idna.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/idna[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/iolib.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/iolib.nix
index 5a5f1c8c34c..55dd6b2a373 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/iolib.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/iolib.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/iolib[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 af1cbc8f1b6..de5528bca5e 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/ironclad.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/ironclad[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 b3ec955fead..446b54a455a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/iterate.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/iterate.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/iterate[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/jonathan.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/jonathan.nix
index e3cfd9047b6..905a14b785c 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/jonathan.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/jonathan.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/jonathan[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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
new file mode 100644
index 00000000000..ba24d7dd78c
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-middleware-backtrace.nix
@@ -0,0 +1,37 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''lack-middleware-backtrace'';
+  version = ''lack-20161204-git'';
+
+  description = '''';
+
+  deps = [ args."uiop" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/lack/2016-12-04/lack-20161204-git.tgz'';
+    sha256 = ''10bnpgbh5nk9lw1xywmvh5661rq91v8sp43ds53x98865ni7flnv'';
+  };
+
+  overrides = x: {
+    postInstall = ''
+      find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/lack-middleware-backtrace[.]asd${"$"}' |
+        while read f; do
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
+            "$out"/bin/*-lisp-launcher.sh ||
+          mv "$f"{,.sibling}; done || true
+    '';
+  };
+}
+/* (SYSTEM lack-middleware-backtrace DESCRIPTION NIL SHA256 10bnpgbh5nk9lw1xywmvh5661rq91v8sp43ds53x98865ni7flnv URL
+    http://beta.quicklisp.org/archive/lack/2016-12-04/lack-20161204-git.tgz MD5 bef444eeadf759226539318bee9f0ab5 NAME lack-middleware-backtrace TESTNAME NIL
+    FILENAME lack-middleware-backtrace DEPS ((NAME uiop)) DEPENDENCIES (uiop) VERSION lack-20161204-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 lack-session-store-redis lack-test lack-util-writer-stream lack-util lack
+     t-lack-component t-lack-middleware-accesslog t-lack-middleware-auth-basic t-lack-middleware-backtrace t-lack-middleware-csrf t-lack-middleware-mount
+     t-lack-middleware-session t-lack-middleware-static t-lack-request t-lack-session-store-dbi t-lack-session-store-redis t-lack-util t-lack)) */
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
new file mode 100644
index 00000000000..9b60f52c87f
--- /dev/null
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack-util.nix
@@ -0,0 +1,38 @@
+args @ { fetchurl, ... }:
+rec {
+  baseName = ''lack-util'';
+  version = ''lack-20161204-git'';
+
+  description = '''';
+
+  deps = [ args."ironclad" ];
+
+  src = fetchurl {
+    url = ''http://beta.quicklisp.org/archive/lack/2016-12-04/lack-20161204-git.tgz'';
+    sha256 = ''10bnpgbh5nk9lw1xywmvh5661rq91v8sp43ds53x98865ni7flnv'';
+  };
+
+  overrides = x: {
+    postInstall = ''
+      find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/lack-util[.]asd${"$"}' |
+        while read f; do
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
+            "$out"/bin/*-lisp-launcher.sh ||
+          mv "$f"{,.sibling}; done || true
+    '';
+  };
+}
+/* (SYSTEM lack-util DESCRIPTION NIL SHA256 10bnpgbh5nk9lw1xywmvh5661rq91v8sp43ds53x98865ni7flnv URL
+    http://beta.quicklisp.org/archive/lack/2016-12-04/lack-20161204-git.tgz MD5 bef444eeadf759226539318bee9f0ab5 NAME lack-util TESTNAME NIL FILENAME lack-util
+    DEPS ((NAME ironclad)) DEPENDENCIES (ironclad) VERSION lack-20161204-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 lack-session-store-dbi lack-session-store-redis lack-test
+     lack-util-writer-stream lack t-lack-component t-lack-middleware-accesslog t-lack-middleware-auth-basic t-lack-middleware-backtrace t-lack-middleware-csrf
+     t-lack-middleware-mount t-lack-middleware-session t-lack-middleware-static t-lack-request t-lack-session-store-dbi t-lack-session-store-redis t-lack-util
+     t-lack)) */
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 7f1f4899f04..ceed4365966 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lack.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/lack[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/let-plus.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/let-plus.nix
index 07b106dde99..c01500f0c3d 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/let-plus.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/let-plus.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/let-plus[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lev.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lev.nix
index 8ccb243d1af..9d4aa874d4c 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lev.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lev.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/lev[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/local-time.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/local-time.nix
index 65ffbf88233..e2e7e71aadd 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/local-time.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/local-time.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/local-time[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 068d0b9b1e7..473581c3184 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/lquery.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/lquery.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/lquery[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 d2545b9a269..ad159edc5c9 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/map-set[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 ed49719ecf6..cb5041b6029 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/marshal.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/marshal[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 e568fd1cce8..a24e9d99a2c 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/md5.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/md5.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/md5[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 e585c2bd298..708fa41ca51 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/metabang-bind[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/myway.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/myway.nix
index 477d54f1c81..186550a15df 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/myway.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/myway.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/myway[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 a5a8e79c2ad..c952ab5a1f7 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
@@ -17,8 +17,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/named-readtables[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 607a8e54d67..c5300698e54 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/nibbles.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/nibbles.nix
@@ -1,28 +1,33 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''nibbles'';
-  version = ''20161204-git'';
+  version = ''20170403-git'';
 
   description = ''A library for accessing octet-addressed blocks of data in big- and little-endian orders'';
 
   deps = [ ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/nibbles/2016-12-04/nibbles-20161204-git.tgz'';
-    sha256 = ''06cdnivq2966crpj8pidqmwagaif848yvq4fjqq213f3wynwknh4'';
+    url = ''http://beta.quicklisp.org/archive/nibbles/2017-04-03/nibbles-20170403-git.tgz'';
+    sha256 = ''0bg7jwhqhm3qmpzk21gjv50sl0grdn68d770cqfs7in62ny35lk4'';
   };
 
   overrides = x: {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/nibbles[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
   };
 }
 /* (SYSTEM nibbles DESCRIPTION A library for accessing octet-addressed blocks of data in big- and little-endian orders SHA256
-    06cdnivq2966crpj8pidqmwagaif848yvq4fjqq213f3wynwknh4 URL http://beta.quicklisp.org/archive/nibbles/2016-12-04/nibbles-20161204-git.tgz MD5
-    a342eb0426be2570c18151ef8742dad3 NAME nibbles TESTNAME NIL FILENAME nibbles DEPS NIL DEPENDENCIES NIL VERSION 20161204-git SIBLINGS NIL) */
+    0bg7jwhqhm3qmpzk21gjv50sl0grdn68d770cqfs7in62ny35lk4 URL http://beta.quicklisp.org/archive/nibbles/2017-04-03/nibbles-20170403-git.tgz MD5
+    5683a0a5510860a036b2a272036cda87 NAME nibbles TESTNAME NIL FILENAME nibbles DEPS NIL DEPENDENCIES NIL VERSION 20170403-git SIBLINGS NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/optima.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/optima.nix
index 5b04344c635..48bd3b7e542 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/optima.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/optima.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/optima[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/parenscript.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/parenscript.nix
index 01d1b384b26..56ae3473e2c 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/parenscript.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/parenscript.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/parenscript[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/pcall.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/pcall.nix
index 4d42a9a49b6..dae0d011e75 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/pcall.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/pcall.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/pcall[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 5d6e7a34a35..17795e3a92a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/plump.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/plump[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/proc-parse.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/proc-parse.nix
index 4d79313d983..9e4e2effbd3 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/proc-parse.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/proc-parse.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/proc-parse[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/prove.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/prove.nix
index 32c10118f3c..cf6fd03ba12 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/prove.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/prove.nix
@@ -1,29 +1,34 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''prove'';
-  version = ''20170124-git'';
+  version = ''20170403-git'';
 
   description = '''';
 
   deps = [ args."uiop" args."cl-ppcre" args."cl-colors" args."cl-ansi-text" args."alexandria" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/prove/2017-01-24/prove-20170124-git.tgz'';
-    sha256 = ''1kyhh4yvf47psb5v0zqivcwn71n6my5fwggdifymlpigk2q3zn03'';
+    url = ''http://beta.quicklisp.org/archive/prove/2017-04-03/prove-20170403-git.tgz'';
+    sha256 = ''091xxkn9zj22c4gmm8x714k29bs4j0j7akppwh55zjsmrxdhqcpl'';
   };
 
   overrides = x: {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/prove[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
   };
 }
-/* (SYSTEM prove DESCRIPTION NIL SHA256 1kyhh4yvf47psb5v0zqivcwn71n6my5fwggdifymlpigk2q3zn03 URL
-    http://beta.quicklisp.org/archive/prove/2017-01-24/prove-20170124-git.tgz MD5 c5601ee1aebedc7272e2c25e6a5ca8be NAME prove TESTNAME NIL FILENAME prove DEPS
+/* (SYSTEM prove DESCRIPTION NIL SHA256 091xxkn9zj22c4gmm8x714k29bs4j0j7akppwh55zjsmrxdhqcpl URL
+    http://beta.quicklisp.org/archive/prove/2017-04-03/prove-20170403-git.tgz MD5 063b615692c8711d2392204ecf1b37b7 NAME prove TESTNAME NIL FILENAME prove DEPS
     ((NAME uiop) (NAME cl-ppcre) (NAME cl-colors) (NAME cl-ansi-text) (NAME alexandria)) DEPENDENCIES (uiop cl-ppcre cl-colors cl-ansi-text alexandria) VERSION
-    20170124-git SIBLINGS (cl-test-more prove-asdf prove-test)) */
+    20170403-git SIBLINGS (cl-test-more prove-asdf prove-test)) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/puri.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/puri.nix
index b6ef82f9520..fe48a580ee9 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/puri.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/puri.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/puri[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/query-fs.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/query-fs.nix
index 51ff8bdb022..2a1219e48e7 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/query-fs.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/query-fs.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/query-fs[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/quri.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/quri.nix
index 1eb40822b9c..1c351669c9a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/quri.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/quri.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/quri[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 290850ced7d..572cd29c75b 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/rfc2388.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/rfc2388.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/rfc2388[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 963133feb8d..38e9e4ecabd 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/salza2.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/salza2.nix
@@ -17,8 +17,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/salza2[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/smart-buffer.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/smart-buffer.nix
index 1a610eaacbe..597f8fcfe3a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/smart-buffer.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/smart-buffer.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/smart-buffer[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/split-sequence.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/split-sequence.nix
index b6f1d8ec966..2712a1b8e1d 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/split-sequence.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/split-sequence.nix
@@ -17,8 +17,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/split-sequence[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/sqlite.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/sqlite.nix
index c514fd81576..1d2f8fd0122 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/sqlite.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/sqlite.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/sqlite[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/static-vectors.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/static-vectors.nix
index 879d2c3e815..1a7056e3fa2 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/static-vectors.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/static-vectors.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/static-vectors[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 529f989c5b0..aaef5095dbb 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/stumpwm.nix
@@ -1,28 +1,33 @@
 args @ { fetchurl, ... }:
 rec {
   baseName = ''stumpwm'';
-  version = ''20170227-git'';
+  version = ''20170403-git'';
 
   description = ''A tiling, keyboard driven window manager'';
 
-  deps = [ ];
+  deps = [ args."alexandria" args."cl-ppcre" args."clx" ];
 
   src = fetchurl {
-    url = ''http://beta.quicklisp.org/archive/stumpwm/2017-02-27/stumpwm-20170227-git.tgz'';
-    sha256 = ''0w1arw1x5hsw0w6rc1ls4bf7gf8cjcm6ar68kp74zczp0y35fign'';
+    url = ''http://beta.quicklisp.org/archive/stumpwm/2017-04-03/stumpwm-20170403-git.tgz'';
+    sha256 = ''1aca1nvdzp957mvwxz6x0plkg915l24mjf89h8rgkgclkn6xk4rf'';
   };
 
   overrides = x: {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/stumpwm[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
   };
 }
-/* (SYSTEM stumpwm DESCRIPTION A tiling, keyboard driven window manager SHA256 0w1arw1x5hsw0w6rc1ls4bf7gf8cjcm6ar68kp74zczp0y35fign URL
-    http://beta.quicklisp.org/archive/stumpwm/2017-02-27/stumpwm-20170227-git.tgz MD5 076f2ec967024fcabc13eb921e6ce7c2 NAME stumpwm TESTNAME NIL FILENAME
-    stumpwm DEPS NIL DEPENDENCIES NIL VERSION 20170227-git SIBLINGS NIL) */
+/* (SYSTEM stumpwm DESCRIPTION A tiling, keyboard driven window manager SHA256 1aca1nvdzp957mvwxz6x0plkg915l24mjf89h8rgkgclkn6xk4rf URL
+    http://beta.quicklisp.org/archive/stumpwm/2017-04-03/stumpwm-20170403-git.tgz MD5 1081021518c5b6c36d39f12c47305ea1 NAME stumpwm TESTNAME NIL FILENAME
+    stumpwm DEPS ((NAME alexandria) (NAME cl-ppcre) (NAME clx)) DEPENDENCIES (alexandria cl-ppcre clx) VERSION 20170403-git SIBLINGS NIL) */
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/swap-bytes.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/swap-bytes.nix
index 6f8cf8c2a2a..8ae38c45686 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/swap-bytes.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/swap-bytes.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/swap-bytes[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 e9c8ba354e7..e28637849af 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/trivial-backtrace[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 d1ccd2ea2c7..7b44cb90337 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/trivial-features[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-garbage.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-garbage.nix
index 3aeb11fdf9d..3c439aae2e4 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-garbage.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/trivial-garbage.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/trivial-garbage[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 80ca1d6ea9b..120f384a7a5 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/trivial-gray-streams[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 18cfe65db37..d091ad3250f 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/trivial-indent[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 96474552828..e9d090a84aa 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/trivial-mimes[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 4f9851247eb..064e67fef50 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/trivial-types[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 814f4c1a6dc..d7a8721f298 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/trivial-utf-8[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 382df53eeb0..f3528d60524 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/uffi.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/uffi.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/uffi[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 a1ad7daf179..3b340be7c1d 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/uiop.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/uiop.nix
@@ -3,7 +3,7 @@ rec {
   baseName = ''uiop'';
   version = ''3.2.0'';
 
-  description = ''Portability library for Common Lisp programs'';
+  description = '''';
 
   deps = [ ];
 
@@ -16,13 +16,18 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/uiop[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
   };
 }
-/* (SYSTEM uiop DESCRIPTION Portability library for Common Lisp programs SHA256 1rrn1mdcb4dmb517vrp3nzwpp1w8hfvpzarj36c7kkpjq23czdig URL
+/* (SYSTEM uiop DESCRIPTION NIL SHA256 1rrn1mdcb4dmb517vrp3nzwpp1w8hfvpzarj36c7kkpjq23czdig URL
     http://beta.quicklisp.org/archive/uiop/2017-01-24/uiop-3.2.0.tgz MD5 3c304efce790959b14a241db2e669fce NAME uiop TESTNAME NIL FILENAME uiop DEPS NIL
     DEPENDENCIES NIL VERSION 3.2.0 SIBLINGS (asdf-driver)) */
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 d88c0a84749..5b6a7fafd01 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/usocket.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/usocket.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/usocket[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 5563786b07e..ca9680ebd00 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/vom.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/vom.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/vom[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 dce3e50c192..a225b323f36 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/woo.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/woo.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/woo[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 9efaa93d2bf..3744526b25a 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/wookie.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/wookie.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/wookie[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/xmls.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/xmls.nix
index 564477d84d6..11fa1931f0b 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/xmls.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/xmls.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/xmls[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 59a92bb04a2..da2611d1f39 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/xsubseq.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/xsubseq.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/xsubseq[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/yason.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/yason.nix
index 5d346aef40b..32c7198b99f 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-output/yason.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/yason.nix
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/yason[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
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 1bbf51cbda5..06fc8502d6c 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
@@ -16,8 +16,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/zpb-ttf[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.lisp b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.lisp
index 7b11b6b0b9d..a710d25ab5c 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.lisp
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.lisp
@@ -4,5 +4,4 @@
   (gethash "cxml-test" testnames) "cxml"
   (gethash "cxml-klacks" testnames) "cxml"
   (gethash "cl-async-base" testnames) "cl-async"
-  (gethash "cl-async-util" testnames) "cl-async"
   )
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
index 01f734538b5..2725c354d35 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix
@@ -2,7 +2,7 @@
 let
   addDeps = newdeps: x: {deps = x.deps ++ newdeps;};
   addNativeLibs = libs: x: { propagatedBuildInputs = libs; };
-  skipBuildPhase = x: { 
+  skipBuildPhase = x: {
     overrides = y: ((x.overrides y) // { buildPhase = "true"; });
   };
   qlnp = quicklisp-to-nix-packages;
@@ -10,19 +10,37 @@ let
     ((builtins.head l) x) // (multiOverride (builtins.tail l) x);
 in
 {
-  stumpwm = addDeps (with qlnp; [alexandria cl-ppcre clx]);
+  stumpwm = x:{
+    overrides = y: (x.overrides y) // {
+      preConfigure = ''
+        export configureFlags="$configureFlags --with-$NIX_LISP=common-lisp.sh";
+      '';
+    };
+  };
   iterate = skipBuildPhase;
   cl-fuse = x: {
     propagatedBuildInputs = [pkgs.fuse];
     overrides = y : (x.overrides y) // {
       configurePhase = ''
+        export SAVED_CL_SOURCE_REGISTRY="$CL_SOURCE_REGISTRY"
         export CL_SOURCE_REGISTRY="$CL_SOURCE_REGISTRY:$PWD"
         export makeFlags="$makeFlags LISP=common-lisp.sh"
       '';
+      preInstall = ''
+        export CL_SOURCE_REGISTRY="$SAVED_CL_SOURCE_REGISTRY"
+      '';
     };
   };
   hunchentoot = addNativeLibs [pkgs.openssl];
-  iolib = addNativeLibs [pkgs.libfixposix pkgs.gcc];
+  iolib = x: {
+    propagatedBuildInputs = (x.propagatedBuildInputs or []) ++
+     [pkgs.libfixposix pkgs.gcc];
+    testSystems = (x.testSystems or ["iolib"]) ++ [
+      "iolib/os" "iolib/zstreams" "iolib/common-lisp" "iolib/base" "iolib/asdf"
+      "iolib/conf" "iolib/grovel" "iolib/syscalls" "iolib/sockets"
+      "iolib/multiplex" "iolib/streams" "iolib/pathnames"
+    ];
+  };
   cl-unicode = addDeps (with qlnp; [cl-ppcre flexi-streams]);
   clack =  addDeps (with qlnp;[lack bordeaux-threads prove]);
   clack-v1-compat =  addDeps (with qlnp;[
@@ -31,17 +49,14 @@ in
     flexi-streams circular-streams ironclad cl-syntax-annot alexandria
     split-sequence
   ]);
-  clack-handler-fcgi = addDeps (with qlnp; []);
   lack = addDeps (with qlnp; [ironclad]);
-  cxml = skipBuildPhase;
-  cxml-xml = skipBuildPhase;
-  cxml-dom = skipBuildPhase;
-  cxml-klacks = skipBuildPhase;
-  cxml-test = skipBuildPhase;
+  cxml = multiOverride [ skipBuildPhase (addDeps (with qlnp; [
+    closure-common puri trivial-gray-streams
+  ]))];
   wookie = multiOverride [(addDeps (with qlnp; [
       alexandria blackbird cl-async chunga fast-http quri babel cl-ppcre
       cl-fad fast-io vom do-urlencode cl-async-ssl
-    ])) 
+    ]))
     (addNativeLibs (with pkgs; [libuv openssl]))];
   woo = addDeps (with qlnp; [
     cffi lev clack swap-bytes static-vectors fast-http proc-parse quri fast-io
@@ -92,18 +107,10 @@ in
       '';
     };
   };
-  cffi-grovel = addDeps (with qlnp; [ cffi-toolchain ]);
-  cffi-toolchain = addDeps (with qlnp; [ cffi uiop ]);
-  cffi-examples = addDeps (with qlnp; [ cffi ]);
-  cffi-libffi = addDeps (with qlnp; [ cffi ]);
-  cffi-uffi-compat = addDeps (with qlnp; [ cffi ]);
   cffi = multiOverride [(addNativeLibs [pkgs.libffi])
-    (addDeps (with qlnp; [uffi]))];
+    (addDeps (with qlnp; [uffi uiop trivial-features]))];
   cl-vectors = addDeps (with qlnp; [zpb-ttf]);
   "3bmd" = addDeps (with qlnp; [esrap split-sequence]);
-  "3bmd-ext-tables" = addDeps (with qlnp; [qlnp."3bmd"]);
-  "3bmd-ext-wiki-links" = addDeps (with qlnp; [qlnp."3bmd"]);
-  "3bmd-youtube" = addDeps (with qlnp; [qlnp."3bmd"]);
   cl-dbi = addDeps (with qlnp; [
     cl-syntax cl-syntax-annot split-sequence closer-mop bordeaux-threads
   ]);
@@ -126,4 +133,14 @@ in
   babel-streams = addDeps (with qlnp; [babel]);
   plump = addDeps (with qlnp; [array-utils trivial-indent]);
   sqlite = addNativeLibs [pkgs.sqlite];
+  uiop = x: {
+    testSystems = (x.testSystems or ["uiop"]) ++ [
+      "uiop/version"
+    ];
+    overrides = y: (x.overrides y) // {
+      postInstall = ((x.overrides y).postInstall or "") + ''
+        cp -r "${pkgs.asdf}/lib/common-lisp/asdf/uiop/contrib" "$out/lib/common-lisp/uiop"
+      '';
+    };
+  };
 }
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt b/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt
index 8522ed79c56..3d15319ad06 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt
@@ -1,18 +1,10 @@
 3bmd
-3bmd-ext-tables
-3bmd-ext-wiki-links
-3bmd-youtube
 alexandria
 babel
 blackbird
 bordeaux-threads
 caveman
 cffi
-cffi-examples
-cffi-grovel
-cffi-libffi
-cffi-toolchain
-cffi-uffi-compat
 chipz
 circular-streams
 clack
@@ -35,6 +27,7 @@ cl-mysql
 closer-mop
 cl-ppcre
 cl-ppcre-template
+cl-ppcre-unicode
 cl-reexport
 cl-smtp
 clsql
@@ -53,9 +46,6 @@ clx-truetype
 command-line-arguments
 css-lite
 cxml
-cxml-dom
-cxml-klacks
-cxml-xml
 dbd-mysql
 dbd-postgres
 dbd-sqlite3
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix.nix b/pkgs/development/lisp-modules/quicklisp-to-nix.nix
index a4b6c90aa08..118045015e2 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix.nix
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix.nix
@@ -14,6 +14,16 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "closure-common" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."closure-common" or (x: {}))
+       (import ./quicklisp-to-nix-output/closure-common.nix {
+         inherit fetchurl;
+           "babel" = quicklisp-to-nix-packages."babel";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+       }));
+
+
   "documentation-utils" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."documentation-utils" or (x: {}))
@@ -23,6 +33,17 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cxml-xml" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cxml-xml" or (x: {}))
+       (import ./quicklisp-to-nix-output/cxml-xml.nix {
+         inherit fetchurl;
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "puri" = quicklisp-to-nix-packages."puri";
+           "closure-common" = quicklisp-to-nix-packages."closure-common";
+       }));
+
+
   "babel-streams" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."babel-streams" or (x: {}))
@@ -153,6 +174,14 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "puri" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."puri" or (x: {}))
+       (import ./quicklisp-to-nix-output/puri.nix {
+         inherit fetchurl;
+       }));
+
+
   "chunga" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."chunga" or (x: {}))
@@ -181,32 +210,32 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "closure-common" = buildLispPackage
+  "cxml-test" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."closure-common" or (x: {}))
-       (import ./quicklisp-to-nix-output/closure-common.nix {
+       (qlOverrides."cxml-test" or (x: {}))
+       (import ./quicklisp-to-nix-output/cxml-test.nix {
          inherit fetchurl;
-           "babel" = quicklisp-to-nix-packages."babel";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "cxml-xml" = quicklisp-to-nix-packages."cxml-xml";
+           "cxml-klacks" = quicklisp-to-nix-packages."cxml-klacks";
+           "cxml-dom" = quicklisp-to-nix-packages."cxml-dom";
        }));
 
 
-  "puri" = buildLispPackage
+  "cxml-klacks" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."puri" or (x: {}))
-       (import ./quicklisp-to-nix-output/puri.nix {
+       (qlOverrides."cxml-klacks" or (x: {}))
+       (import ./quicklisp-to-nix-output/cxml-klacks.nix {
          inherit fetchurl;
+           "cxml-xml" = quicklisp-to-nix-packages."cxml-xml";
        }));
 
 
-  "cxml-test" = buildLispPackage
+  "cxml-dom" = buildLispPackage
     ((f: x: (x // (f x)))
-       (qlOverrides."cxml-test" or (x: {}))
-       (import ./quicklisp-to-nix-output/cxml-test.nix {
+       (qlOverrides."cxml-dom" or (x: {}))
+       (import ./quicklisp-to-nix-output/cxml-dom.nix {
          inherit fetchurl;
            "cxml-xml" = quicklisp-to-nix-packages."cxml-xml";
-           "cxml-klacks" = quicklisp-to-nix-packages."cxml-klacks";
-           "cxml-dom" = quicklisp-to-nix-packages."cxml-dom";
        }));
 
 
@@ -310,6 +339,15 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cffi-grovel" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cffi-grovel" or (x: {}))
+       (import ./quicklisp-to-nix-output/cffi-grovel.nix {
+         inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+       }));
+
+
   "let-plus" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."let-plus" or (x: {}))
@@ -334,6 +372,24 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "lack-middleware-backtrace" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."lack-middleware-backtrace" or (x: {}))
+       (import ./quicklisp-to-nix-output/lack-middleware-backtrace.nix {
+         inherit fetchurl;
+           "uiop" = quicklisp-to-nix-packages."uiop";
+       }));
+
+
+  "lack-util" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."lack-util" or (x: {}))
+       (import ./quicklisp-to-nix-output/lack-util.nix {
+         inherit fetchurl;
+           "ironclad" = quicklisp-to-nix-packages."ironclad";
+       }));
+
+
   "trivial-gray-streams" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."trivial-gray-streams" or (x: {}))
@@ -508,6 +564,9 @@ let quicklisp-to-nix-packages = rec {
        (qlOverrides."stumpwm" or (x: {}))
        (import ./quicklisp-to-nix-output/stumpwm.nix {
          inherit fetchurl;
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "clx" = quicklisp-to-nix-packages."clx";
        }));
 
 
@@ -832,6 +891,22 @@ let quicklisp-to-nix-packages = rec {
        (qlOverrides."dexador" or (x: {}))
        (import ./quicklisp-to-nix-output/dexador.nix {
          inherit fetchurl;
+           "usocket" = quicklisp-to-nix-packages."usocket";
+           "trivial-mimes" = quicklisp-to-nix-packages."trivial-mimes";
+           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
+           "quri" = quicklisp-to-nix-packages."quri";
+           "fast-io" = quicklisp-to-nix-packages."fast-io";
+           "fast-http" = quicklisp-to-nix-packages."fast-http";
+           "cl-reexport" = quicklisp-to-nix-packages."cl-reexport";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "cl-cookie" = quicklisp-to-nix-packages."cl-cookie";
+           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
+           "cl+ssl" = quicklisp-to-nix-packages."cl+ssl";
+           "chunga" = quicklisp-to-nix-packages."chunga";
+           "chipz" = quicklisp-to-nix-packages."chipz";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "babel" = quicklisp-to-nix-packages."babel";
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
        }));
 
 
@@ -870,35 +945,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "cxml-xml" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cxml-xml" or (x: {}))
-       (import ./quicklisp-to-nix-output/cxml-xml.nix {
-         inherit fetchurl;
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-       }));
-
-
-  "cxml-klacks" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cxml-klacks" or (x: {}))
-       (import ./quicklisp-to-nix-output/cxml-klacks.nix {
-         inherit fetchurl;
-           "cxml-xml" = quicklisp-to-nix-packages."cxml-xml";
-       }));
-
-
-  "cxml-dom" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cxml-dom" or (x: {}))
-       (import ./quicklisp-to-nix-output/cxml-dom.nix {
-         inherit fetchurl;
-           "cxml-xml" = quicklisp-to-nix-packages."cxml-xml";
-       }));
-
-
   "cxml" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cxml" or (x: {}))
@@ -1070,6 +1116,15 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
+  "cl-ppcre-unicode" = buildLispPackage
+    ((f: x: (x // (f x)))
+       (qlOverrides."cl-ppcre-unicode" or (x: {}))
+       (import ./quicklisp-to-nix-output/cl-ppcre-unicode.nix {
+         inherit fetchurl;
+           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
+       }));
+
+
   "cl-ppcre-template" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cl-ppcre-template" or (x: {}))
@@ -1268,6 +1323,24 @@ let quicklisp-to-nix-packages = rec {
        (qlOverrides."clack-v1-compat" or (x: {}))
        (import ./quicklisp-to-nix-output/clack-v1-compat.nix {
          inherit fetchurl;
+           "uiop" = quicklisp-to-nix-packages."uiop";
+           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
+           "trivial-mimes" = quicklisp-to-nix-packages."trivial-mimes";
+           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
+           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
+           "quri" = quicklisp-to-nix-packages."quri";
+           "marshal" = quicklisp-to-nix-packages."marshal";
+           "local-time" = quicklisp-to-nix-packages."local-time";
+           "lack-util" = quicklisp-to-nix-packages."lack-util";
+           "lack" = quicklisp-to-nix-packages."lack";
+           "ironclad" = quicklisp-to-nix-packages."ironclad";
+           "http-body" = quicklisp-to-nix-packages."http-body";
+           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
+           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
+           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
+           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
+           "circular-streams" = quicklisp-to-nix-packages."circular-streams";
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
        }));
 
 
@@ -1276,6 +1349,12 @@ let quicklisp-to-nix-packages = rec {
        (qlOverrides."clack" or (x: {}))
        (import ./quicklisp-to-nix-output/clack.nix {
          inherit fetchurl;
+           "uiop" = quicklisp-to-nix-packages."uiop";
+           "lack-util" = quicklisp-to-nix-packages."lack-util";
+           "lack-middleware-backtrace" = quicklisp-to-nix-packages."lack-middleware-backtrace";
+           "lack" = quicklisp-to-nix-packages."lack";
+           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
+           "alexandria" = quicklisp-to-nix-packages."alexandria";
        }));
 
 
@@ -1297,48 +1376,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "cffi-uffi-compat" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cffi-uffi-compat" or (x: {}))
-       (import ./quicklisp-to-nix-output/cffi-uffi-compat.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cffi-toolchain" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cffi-toolchain" or (x: {}))
-       (import ./quicklisp-to-nix-output/cffi-toolchain.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cffi-libffi" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cffi-libffi" or (x: {}))
-       (import ./quicklisp-to-nix-output/cffi-libffi.nix {
-         inherit fetchurl;
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "cffi-grovel" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cffi-grovel" or (x: {}))
-       (import ./quicklisp-to-nix-output/cffi-grovel.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-       }));
-
-
-  "cffi-examples" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cffi-examples" or (x: {}))
-       (import ./quicklisp-to-nix-output/cffi-examples.nix {
-         inherit fetchurl;
-       }));
-
-
   "cffi" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."cffi" or (x: {}))
@@ -1405,31 +1442,6 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-  "3bmd-youtube" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."3bmd-youtube" or (x: {}))
-       (import ./quicklisp-to-nix-output/3bmd-youtube.nix {
-         inherit fetchurl;
-           "esrap" = quicklisp-to-nix-packages."esrap";
-       }));
-
-
-  "3bmd-ext-wiki-links" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."3bmd-ext-wiki-links" or (x: {}))
-       (import ./quicklisp-to-nix-output/3bmd-ext-wiki-links.nix {
-         inherit fetchurl;
-       }));
-
-
-  "3bmd-ext-tables" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."3bmd-ext-tables" or (x: {}))
-       (import ./quicklisp-to-nix-output/3bmd-ext-tables.nix {
-         inherit fetchurl;
-       }));
-
-
   "3bmd" = buildLispPackage
     ((f: x: (x // (f x)))
        (qlOverrides."3bmd" or (x: {}))
@@ -1441,4 +1453,7 @@ let quicklisp-to-nix-packages = rec {
        }));
 
 
-}; in quicklisp-to-nix-packages
+} // qlAliases {inherit quicklisp-to-nix-packages;};
+qlAliases = import ./quicklisp-to-nix-aliases.nix;
+in
+   quicklisp-to-nix-packages
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix/nix-package.emb b/pkgs/development/lisp-modules/quicklisp-to-nix/nix-package.emb
index a798a452365..3b71ade03f7 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix/nix-package.emb
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix/nix-package.emb
@@ -18,8 +18,13 @@ rec {
     postInstall = ''
       find "$out/lib/common-lisp/" -name '*.asd' | grep -iv '/<% @var name %>[.]asd${"$"}' |
         while read f; do
-          CL_SOURCE_REGISTRY= \
-          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(asdf:load-system :$(basename "$f" .asd))'" \
+          env -i \
+          NIX_LISP="$NIX_LISP" \
+          NIX_LISP_PRELAUNCH_HOOK="nix_lisp_run_single_form '(progn
+            (asdf:load-system :$(basename "$f" .asd))
+            (asdf:perform (quote asdf:compile-bundle-op) :$(basename "$f" .asd))
+            (ignore-errors (asdf:perform (quote asdf:deliver-asd-op) :$(basename "$f" .asd)))
+            )'" \
             "$out"/bin/*-lisp-launcher.sh ||
           mv "$f"{,.sibling}; done || true
     '';
diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix/top-package.emb b/pkgs/development/lisp-modules/quicklisp-to-nix/top-package.emb
index 2cbe73c89ca..95b60df0d01 100644
--- a/pkgs/development/lisp-modules/quicklisp-to-nix/top-package.emb
+++ b/pkgs/development/lisp-modules/quicklisp-to-nix/top-package.emb
@@ -8,4 +8,7 @@ let quicklisp-to-nix-packages = rec {
 <% @loop invocations %>
 <% @var code %>
 <% @endloop %>
-}; in quicklisp-to-nix-packages
+} // qlAliases {inherit quicklisp-to-nix-packages;};
+qlAliases = import ./quicklisp-to-nix-aliases.nix;
+in
+   quicklisp-to-nix-packages
diff --git a/pkgs/development/node-packages/node-packages-v4.nix b/pkgs/development/node-packages/node-packages-v4.nix
index a9bdefd03a4..22cd44ddad6 100644
--- a/pkgs/development/node-packages/node-packages-v4.nix
+++ b/pkgs/development/node-packages/node-packages-v4.nix
@@ -625,13 +625,13 @@ let
         sha1 = "f0050ed833e2b3b12daba83d6f9e3d96852ee970";
       };
     };
-    "azure-arm-trafficmanager-0.10.5" = {
+    "azure-arm-trafficmanager-0.12.0" = {
       name = "azure-arm-trafficmanager";
       packageName = "azure-arm-trafficmanager";
-      version = "0.10.5";
+      version = "0.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-arm-trafficmanager/-/azure-arm-trafficmanager-0.10.5.tgz";
-        sha1 = "b42683cb6dfdfed0f93875d72a0b8a53b3204d01";
+        url = "https://registry.npmjs.org/azure-arm-trafficmanager/-/azure-arm-trafficmanager-0.12.0.tgz";
+        sha1 = "609e585c0253960a91deaf773dae1ce184ce414b";
       };
     };
     "azure-arm-dns-0.11.1" = {
@@ -697,13 +697,13 @@ let
         sha1 = "379e6c2ed4155de86caff63243923c7330d34802";
       };
     };
-    "azure-asm-compute-0.17.0" = {
+    "azure-asm-compute-0.18.0" = {
       name = "azure-asm-compute";
       packageName = "azure-asm-compute";
-      version = "0.17.0";
+      version = "0.18.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-asm-compute/-/azure-asm-compute-0.17.0.tgz";
-        sha1 = "15967b535c06a5d06330b3d5adbf5b4b85e9df90";
+        url = "https://registry.npmjs.org/azure-asm-compute/-/azure-asm-compute-0.18.0.tgz";
+        sha1 = "109c31e17c697f4a00a01533fb230bf3ae448685";
       };
     };
     "azure-asm-hdinsight-0.10.2" = {
@@ -814,13 +814,13 @@ let
         sha1 = "bfd0c01a8ae6afd90eaa13360976242e28459650";
       };
     };
-    "azure-storage-2.0.0" = {
+    "azure-storage-2.1.0" = {
       name = "azure-storage";
       packageName = "azure-storage";
-      version = "2.0.0";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-storage/-/azure-storage-2.0.0.tgz";
-        sha1 = "581ed1245ee105e818806efd5cc5cc4c14eab7c0";
+        url = "https://registry.npmjs.org/azure-storage/-/azure-storage-2.1.0.tgz";
+        sha1 = "7fc81246cd64b54cabced70b5138d7cc4571ea01";
       };
     };
     "azure-arm-batch-0.3.0" = {
@@ -1750,13 +1750,13 @@ let
         sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
       };
     };
-    "brace-expansion-1.1.6" = {
+    "brace-expansion-1.1.7" = {
       name = "brace-expansion";
       packageName = "brace-expansion";
-      version = "1.1.6";
+      version = "1.1.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz";
-        sha1 = "7197d7eaa9b87e648390ea61fc66c84427420df9";
+        url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.7.tgz";
+        sha1 = "3effc3c50e000531fb720eaff80f0ae8ef23cf59";
       };
     };
     "balanced-match-0.4.2" = {
@@ -2002,13 +2002,13 @@ let
         sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
       };
     };
-    "async-2.2.0" = {
+    "async-2.3.0" = {
       name = "async";
       packageName = "async";
-      version = "2.2.0";
+      version = "2.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/async/-/async-2.2.0.tgz";
-        sha1 = "c324eba010a237e4fbd55a12dee86367d5c0ef32";
+        url = "https://registry.npmjs.org/async/-/async-2.3.0.tgz";
+        sha1 = "1013d1051047dd320fe24e494d5c66ecaf6147d9";
       };
     };
     "lodash-4.17.4" = {
@@ -2227,13 +2227,13 @@ let
         sha1 = "a3b87e40298d8c380552d8cc7628a0bb95a22918";
       };
     };
-    "sshpk-1.11.0" = {
+    "sshpk-1.13.0" = {
       name = "sshpk";
       packageName = "sshpk";
-      version = "1.11.0";
+      version = "1.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.11.0.tgz";
-        sha1 = "2d8d5ebb4a6fab28ffba37fa62a90f4a3ea59d77";
+        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.13.0.tgz";
+        sha1 = "ff2a3e4fd04497555fed97b39a0fd82fafb3a33c";
       };
     };
     "assert-plus-1.0.0" = {
@@ -2443,13 +2443,13 @@ let
         sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777";
       };
     };
-    "readable-stream-2.2.6" = {
+    "readable-stream-2.2.9" = {
       name = "readable-stream";
       packageName = "readable-stream";
-      version = "2.2.6";
+      version = "2.2.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.6.tgz";
-        sha1 = "8b43aed76e71483938d12a8d46c6cf1a00b1f816";
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.9.tgz";
+        sha1 = "cf78ec6f4a6d1eb43d26488cac97f042e74b7fc8";
       };
     };
     "buffer-shims-1.0.0" = {
@@ -2461,6 +2461,15 @@ let
         sha1 = "9978ce317388c649ad8793028c3477ef044a8b51";
       };
     };
+    "string_decoder-1.0.0" = {
+      name = "string_decoder";
+      packageName = "string_decoder";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.0.tgz";
+        sha1 = "f06f41157b664d86069f84bdbdc9b0d8ab281667";
+      };
+    };
     "http-basic-2.5.1" = {
       name = "http-basic";
       packageName = "http-basic";
@@ -2965,13 +2974,13 @@ let
         sha1 = "df010aa1287e164bbda6f9723b0a96a1ec4187a1";
       };
     };
-    "hosted-git-info-2.4.1" = {
+    "hosted-git-info-2.4.2" = {
       name = "hosted-git-info";
       packageName = "hosted-git-info";
-      version = "2.4.1";
+      version = "2.4.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.4.1.tgz";
-        sha1 = "4b0445e41c004a8bd1337773a4ff790ca40318c8";
+        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.4.2.tgz";
+        sha1 = "0076b9f46a270506ddbaaea56496897460612a67";
       };
     };
     "is-builtin-module-1.0.0" = {
@@ -3325,13 +3334,13 @@ let
         sha1 = "bb35f8a519f600e0fa6b8485241c979d0141fb2d";
       };
     };
-    "buffer-5.0.5" = {
+    "buffer-5.0.6" = {
       name = "buffer";
       packageName = "buffer";
-      version = "5.0.5";
+      version = "5.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/buffer/-/buffer-5.0.5.tgz";
-        sha1 = "35c9393244a90aff83581063d16f0882cecc9418";
+        url = "https://registry.npmjs.org/buffer/-/buffer-5.0.6.tgz";
+        sha1 = "2ea669f7eec0b6eda05b08f8b5ff661b28573588";
       };
     };
     "cached-path-relative-1.0.1" = {
@@ -3442,13 +3451,13 @@ let
         sha1 = "3a03edc2214bca3b66424a3e7959349509cb0351";
       };
     };
-    "https-browserify-0.0.1" = {
+    "https-browserify-1.0.0" = {
       name = "https-browserify";
       packageName = "https-browserify";
-      version = "0.0.1";
+      version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz";
-        sha1 = "3f91365cabe60b77ed0ebba24b454e3e09d95a82";
+        url = "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz";
+        sha1 = "ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73";
       };
     };
     "insert-module-globals-7.0.1" = {
@@ -3559,13 +3568,13 @@ let
         sha1 = "66266ee5f9bdb9940a4e4514cafb43bb71e5c9db";
       };
     };
-    "stream-http-2.6.3" = {
+    "stream-http-2.7.0" = {
       name = "stream-http";
       packageName = "stream-http";
-      version = "2.6.3";
+      version = "2.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/stream-http/-/stream-http-2.6.3.tgz";
-        sha1 = "4c3ddbf9635968ea2cfd4e48d43de5def2625ac3";
+        url = "https://registry.npmjs.org/stream-http/-/stream-http-2.7.0.tgz";
+        sha1 = "cec1f4e3b494bc4a81b451808970f8b20b4ed5f6";
       };
     };
     "subarg-1.0.0" = {
@@ -3946,13 +3955,13 @@ let
         sha1 = "1332ff00156c0a0ffdd8236013d07b77a0451573";
       };
     };
-    "hmac-drbg-1.0.0" = {
+    "hmac-drbg-1.0.1" = {
       name = "hmac-drbg";
       packageName = "hmac-drbg";
-      version = "1.0.0";
+      version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.0.tgz";
-        sha1 = "3db471f45aae4a994a0688322171f51b8b91bee5";
+        url = "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz";
+        sha1 = "d2745701025a6c775a6c545793ed502fc0c649a1";
       };
     };
     "minimalistic-crypto-utils-1.0.1" = {
@@ -4639,13 +4648,13 @@ let
         sha1 = "da3ea74686fa21a19a111c326e90eb15a0196686";
       };
     };
-    "parse-torrent-5.8.2" = {
+    "parse-torrent-5.8.3" = {
       name = "parse-torrent";
       packageName = "parse-torrent";
-      version = "5.8.2";
+      version = "5.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/parse-torrent/-/parse-torrent-5.8.2.tgz";
-        sha1 = "09f02ca43ec2d885d1460aacb0fb50c79b3c49f9";
+        url = "https://registry.npmjs.org/parse-torrent/-/parse-torrent-5.8.3.tgz";
+        sha1 = "f95ef23301239609de406794ad9f958a1bca1b6c";
       };
     };
     "pump-0.3.5" = {
@@ -4837,31 +4846,31 @@ let
         sha1 = "122e161591e21ff4c52530305693f20e6393a398";
       };
     };
-    "magnet-uri-5.1.5" = {
+    "magnet-uri-5.1.6" = {
       name = "magnet-uri";
       packageName = "magnet-uri";
-      version = "5.1.5";
+      version = "5.1.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/magnet-uri/-/magnet-uri-5.1.5.tgz";
-        sha1 = "be6abbf2648796c6d6e36e66416f7e0feecf2df8";
+        url = "https://registry.npmjs.org/magnet-uri/-/magnet-uri-5.1.6.tgz";
+        sha1 = "60e8fb5ea90488c8491701eb306970f3126480b3";
       };
     };
-    "parse-torrent-file-4.0.1" = {
+    "parse-torrent-file-4.0.2" = {
       name = "parse-torrent-file";
       packageName = "parse-torrent-file";
-      version = "4.0.1";
+      version = "4.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/parse-torrent-file/-/parse-torrent-file-4.0.1.tgz";
-        sha1 = "4580c5ebb3f6e607baa02ef0ace51f627859e699";
+        url = "https://registry.npmjs.org/parse-torrent-file/-/parse-torrent-file-4.0.2.tgz";
+        sha1 = "981a22143832abbcd99052d889d31a39ae3f9bfe";
       };
     };
-    "simple-get-2.4.0" = {
+    "simple-get-2.5.1" = {
       name = "simple-get";
       packageName = "simple-get";
-      version = "2.4.0";
+      version = "2.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/simple-get/-/simple-get-2.4.0.tgz";
-        sha1 = "31ae7478ea0042b107c743a5af657333d778f7c2";
+        url = "https://registry.npmjs.org/simple-get/-/simple-get-2.5.1.tgz";
+        sha1 = "eb418fb2c9e431631b4cd6c478af548da613ccd2";
       };
     };
     "thirty-two-1.0.2" = {
@@ -4990,13 +4999,13 @@ let
         sha1 = "8e177206c3c80837d85632e8b9359dfe8b2f6eaf";
       };
     };
-    "fs-chunk-store-1.6.4" = {
+    "fs-chunk-store-1.6.5" = {
       name = "fs-chunk-store";
       packageName = "fs-chunk-store";
-      version = "1.6.4";
+      version = "1.6.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fs-chunk-store/-/fs-chunk-store-1.6.4.tgz";
-        sha1 = "5aa0025d58533118552e815f5986f39f93b06e69";
+        url = "https://registry.npmjs.org/fs-chunk-store/-/fs-chunk-store-1.6.5.tgz";
+        sha1 = "fc42c2ff4c7f1688ab5fd41cf17c0f9ece4c6156";
       };
     };
     "hat-0.0.3" = {
@@ -5062,22 +5071,22 @@ let
         sha1 = "2d17d82cf669ada7f9dfe75db4b31f7034b71e29";
       };
     };
-    "torrent-piece-1.1.0" = {
+    "torrent-piece-1.1.1" = {
       name = "torrent-piece";
       packageName = "torrent-piece";
-      version = "1.1.0";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/torrent-piece/-/torrent-piece-1.1.0.tgz";
-        sha1 = "dd3ae8dba3e58df5c9ed3457c055177849d82854";
+        url = "https://registry.npmjs.org/torrent-piece/-/torrent-piece-1.1.1.tgz";
+        sha1 = "50346e42a43b35daf2a86f414afb153629a854be";
       };
     };
-    "random-access-file-1.5.0" = {
+    "random-access-file-1.6.1" = {
       name = "random-access-file";
       packageName = "random-access-file";
-      version = "1.5.0";
+      version = "1.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/random-access-file/-/random-access-file-1.5.0.tgz";
-        sha1 = "dc1b137e5922c203cc6bc8b58564be68d5269a17";
+        url = "https://registry.npmjs.org/random-access-file/-/random-access-file-1.6.1.tgz";
+        sha1 = "33358436f43076d34a058db47177a691319f0e99";
       };
     };
     "run-parallel-1.1.6" = {
@@ -5098,6 +5107,15 @@ let
         sha1 = "a862e018e3fb1ea2ec3fce5d55605cf57f247371";
       };
     };
+    "buffer-alloc-unsafe-1.0.0" = {
+      name = "buffer-alloc-unsafe";
+      packageName = "buffer-alloc-unsafe";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.0.0.tgz";
+        sha1 = "474aa88f34e7bc75fa311d2e6457409c5846c3fe";
+      };
+    };
     "ip-1.1.5" = {
       name = "ip";
       packageName = "ip";
@@ -5395,13 +5413,13 @@ let
         sha1 = "bbcd40c8451a7ed4ef5c373b8169a409dd1d11d9";
       };
     };
-    "ws-2.2.2" = {
+    "ws-2.2.3" = {
       name = "ws";
       packageName = "ws";
-      version = "2.2.2";
+      version = "2.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ws/-/ws-2.2.2.tgz";
-        sha1 = "aa26daf39c52b20ed716e3447f8641494a726b01";
+        url = "https://registry.npmjs.org/ws/-/ws-2.2.3.tgz";
+        sha1 = "f36c9719a56dff813f455af912a2078145bbd940";
       };
     };
     "ultron-1.1.0" = {
@@ -5872,13 +5890,13 @@ let
         sha1 = "364200d5f13646ca8bcd44490271335614792300";
       };
     };
-    "big-integer-1.6.17" = {
+    "big-integer-1.6.19" = {
       name = "big-integer";
       packageName = "big-integer";
-      version = "1.6.17";
+      version = "1.6.19";
       src = fetchurl {
-        url = "https://registry.npmjs.org/big-integer/-/big-integer-1.6.17.tgz";
-        sha1 = "f0dcf5109a949e42a993ee3e8fb2070452817b51";
+        url = "https://registry.npmjs.org/big-integer/-/big-integer-1.6.19.tgz";
+        sha1 = "4a5e915e3188c8708f254b356196f28542acc1e0";
       };
     };
     "sax-1.1.4" = {
@@ -5971,13 +5989,13 @@ let
         sha1 = "2ac4c46ea30516c8c4cbdb5e3ac7418e592de20c";
       };
     };
-    "init-package-json-1.9.5" = {
+    "init-package-json-1.9.6" = {
       name = "init-package-json";
       packageName = "init-package-json";
-      version = "1.9.5";
+      version = "1.9.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/init-package-json/-/init-package-json-1.9.5.tgz";
-        sha1 = "7d4d64a264dc76c1f1f557cbbe824978bf10cd09";
+        url = "https://registry.npmjs.org/init-package-json/-/init-package-json-1.9.6.tgz";
+        sha1 = "789fc2b74466a4952b9ea77c0575bc78ebd60a61";
       };
     };
     "nopt-3.0.6" = {
@@ -6070,13 +6088,13 @@ let
         sha1 = "ef1d7093a9d3287e3fce92df916f8616b23f90b4";
       };
     };
-    "xcode-0.9.1" = {
+    "xcode-0.9.3" = {
       name = "xcode";
       packageName = "xcode";
-      version = "0.9.1";
+      version = "0.9.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/xcode/-/xcode-0.9.1.tgz";
-        sha1 = "5b4e71b71b03573ff0cdb48439103e8107da0f95";
+        url = "https://registry.npmjs.org/xcode/-/xcode-0.9.3.tgz";
+        sha1 = "910a89c16aee6cc0b42ca805a6d0b4cf87211cf3";
       };
     };
     "browserify-transform-tools-1.5.3" = {
@@ -6205,6 +6223,15 @@ let
         sha1 = "6d1bb601b07a4efced97094132093027c95bc298";
       };
     };
+    "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";
+      };
+    };
     "compression-1.6.2" = {
       name = "compression";
       packageName = "compression";
@@ -6484,13 +6511,13 @@ let
         sha1 = "66567e37043eeb4f04d91bd658c0cbefb55b8e04";
       };
     };
-    "type-is-1.6.14" = {
+    "type-is-1.6.15" = {
       name = "type-is";
       packageName = "type-is";
-      version = "1.6.14";
+      version = "1.6.15";
       src = fetchurl {
-        url = "https://registry.npmjs.org/type-is/-/type-is-1.6.14.tgz";
-        sha1 = "e219639c17ded1ca0789092dd54a03826b817cb2";
+        url = "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz";
+        sha1 = "cab10fb4909e441c82842eafe1ad646c81804410";
       };
     };
     "utils-merge-1.0.0" = {
@@ -6574,13 +6601,13 @@ let
         sha1 = "88fcfc1f73c0c8bbd5b7c776b6d3f3501eed073d";
       };
     };
-    "npm-package-arg-4.2.1" = {
+    "npm-package-arg-5.0.1" = {
       name = "npm-package-arg";
       packageName = "npm-package-arg";
-      version = "4.2.1";
+      version = "5.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-4.2.1.tgz";
-        sha1 = "593303fdea85f7c422775f17f9eb7670f680e3ec";
+        url = "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-5.0.1.tgz";
+        sha1 = "09a816e3f45a549e3ddaf33e9bae5e7b31077872";
       };
     };
     "promzard-0.3.0" = {
@@ -7402,49 +7429,40 @@ let
         sha1 = "fb885f18b0f3aad189f824862536bceeec750900";
       };
     };
-    "pegjs-0.9.0" = {
+    "pegjs-0.10.0" = {
       name = "pegjs";
       packageName = "pegjs";
-      version = "0.9.0";
+      version = "0.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pegjs/-/pegjs-0.9.0.tgz";
-        sha1 = "f6aefa2e3ce56169208e52179dfe41f89141a369";
+        url = "https://registry.npmjs.org/pegjs/-/pegjs-0.10.0.tgz";
+        sha1 = "cf8bafae6eddff4b5a7efb185269eaaf4610ddbd";
       };
     };
-    "simple-plist-0.1.4" = {
+    "simple-plist-0.2.1" = {
       name = "simple-plist";
       packageName = "simple-plist";
-      version = "0.1.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/simple-plist/-/simple-plist-0.1.4.tgz";
-        sha1 = "10eb51b47e33c556eb8ec46d5ee64d64e717db5d";
-      };
-    };
-    "bplist-parser-0.0.6" = {
-      name = "bplist-parser";
-      packageName = "bplist-parser";
-      version = "0.0.6";
+      version = "0.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.0.6.tgz";
-        sha1 = "38da3471817df9d44ab3892e27707bbbd75a11b9";
+        url = "https://registry.npmjs.org/simple-plist/-/simple-plist-0.2.1.tgz";
+        sha1 = "71766db352326928cf3a807242ba762322636723";
       };
     };
-    "bplist-creator-0.0.4" = {
+    "bplist-creator-0.0.7" = {
       name = "bplist-creator";
       packageName = "bplist-creator";
-      version = "0.0.4";
+      version = "0.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.0.4.tgz";
-        sha1 = "4ac0496782e127a85c1d2026a4f5eb22a7aff991";
+        url = "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.0.7.tgz";
+        sha1 = "37df1536092824b87c42f957b01344117372ae45";
       };
     };
-    "stream-buffers-0.2.6" = {
+    "stream-buffers-2.2.0" = {
       name = "stream-buffers";
       packageName = "stream-buffers";
-      version = "0.2.6";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/stream-buffers/-/stream-buffers-0.2.6.tgz";
-        sha1 = "181c08d5bb3690045f69401b9ae6a7a0cf3313fc";
+        url = "https://registry.npmjs.org/stream-buffers/-/stream-buffers-2.2.0.tgz";
+        sha1 = "91d5f5130d1cef96dcfa7f726945188741d09ee4";
       };
     };
     "async-1.5.2" = {
@@ -7663,13 +7681,13 @@ let
         sha1 = "1b681c21ff84033c826543090689420d187151dc";
       };
     };
-    "form-data-2.1.2" = {
+    "form-data-2.1.4" = {
       name = "form-data";
       packageName = "form-data";
-      version = "2.1.2";
+      version = "2.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-2.1.2.tgz";
-        sha1 = "89c3534008b97eada4cbb157d58f6f5df025eae4";
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz";
+        sha1 = "33c183acf193276ecaa98143a69e94bfee1750d1";
       };
     };
     "har-validator-4.2.1" = {
@@ -7708,13 +7726,13 @@ let
         sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
       };
     };
-    "ajv-4.11.5" = {
+    "ajv-4.11.6" = {
       name = "ajv";
       packageName = "ajv";
-      version = "4.11.5";
+      version = "4.11.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ajv/-/ajv-4.11.5.tgz";
-        sha1 = "b6ee74657b993a01dce44b7944d56f485828d5bd";
+        url = "https://registry.npmjs.org/ajv/-/ajv-4.11.6.tgz";
+        sha1 = "947e93049790942b2a2d60a8289b28924d39f987";
       };
     };
     "har-schema-1.0.5" = {
@@ -7843,13 +7861,13 @@ let
         sha1 = "35c3e177f2078ef789ee4bfafa4373074eaef4fa";
       };
     };
-    "rc-1.2.0" = {
+    "rc-1.2.1" = {
       name = "rc";
       packageName = "rc";
-      version = "1.2.0";
+      version = "1.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rc/-/rc-1.2.0.tgz";
-        sha1 = "c7de973b7b46297c041366b2fd3d2363b1697c66";
+        url = "https://registry.npmjs.org/rc/-/rc-1.2.1.tgz";
+        sha1 = "2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95";
       };
     };
     "strip-json-comments-2.0.1" = {
@@ -8276,13 +8294,13 @@ let
         sha1 = "14ad6113812d2d37d72e67b4cacb4bb726505f11";
       };
     };
-    "nan-2.5.1" = {
+    "nan-2.6.2" = {
       name = "nan";
       packageName = "nan";
-      version = "2.5.1";
+      version = "2.6.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nan/-/nan-2.5.1.tgz";
-        sha1 = "d5b01691253326a97a2bbee9e61c55d8d60351e2";
+        url = "https://registry.npmjs.org/nan/-/nan-2.6.2.tgz";
+        sha1 = "e4ff34e6c95fdfb5aecc08de6596f43605a7db45";
       };
     };
     "jsonparse-0.0.6" = {
@@ -9242,13 +9260,13 @@ let
         sha1 = "e01975e812781a163a6dadfdd80398dc64c889c3";
       };
     };
-    "espree-3.4.0" = {
+    "espree-3.4.1" = {
       name = "espree";
       packageName = "espree";
-      version = "3.4.0";
+      version = "3.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/espree/-/espree-3.4.0.tgz";
-        sha1 = "41656fa5628e042878025ef467e78f125cb86e1d";
+        url = "https://registry.npmjs.org/espree/-/espree-3.4.1.tgz";
+        sha1 = "28a83ab4aaed71ed8fe0f5efe61b76a05c13c4d2";
       };
     };
     "esquery-1.0.0" = {
@@ -9296,13 +9314,13 @@ let
         sha1 = "0c0ca696d9b9bb694d2e5470bd37777caad50286";
       };
     };
-    "ignore-3.2.6" = {
+    "ignore-3.2.7" = {
       name = "ignore";
       packageName = "ignore";
-      version = "3.2.6";
+      version = "3.2.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ignore/-/ignore-3.2.6.tgz";
-        sha1 = "26e8da0644be0bb4cb39516f6c79f0e0f4ffe48c";
+        url = "https://registry.npmjs.org/ignore/-/ignore-3.2.7.tgz";
+        sha1 = "4810ca5f1d8eca5595213a34b94f2eb4ed926bbd";
       };
     };
     "inquirer-0.12.0" = {
@@ -9323,13 +9341,13 @@ let
         sha1 = "8df57c61ea2e3c501408d100fb013cf8d6e0cc62";
       };
     };
-    "js-yaml-3.8.2" = {
+    "js-yaml-3.8.3" = {
       name = "js-yaml";
       packageName = "js-yaml";
-      version = "3.8.2";
+      version = "3.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.8.2.tgz";
-        sha1 = "02d3e2c0f6beab20248d412c352203827d786721";
+        url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.8.3.tgz";
+        sha1 = "33a05ec481c850c8875929166fe1beb61c728766";
       };
     };
     "levn-0.3.0" = {
@@ -9494,13 +9512,13 @@ let
         sha1 = "f6caca728933a850ef90661d0e17982ba47111a2";
       };
     };
-    "acorn-4.0.4" = {
+    "acorn-5.0.3" = {
       name = "acorn";
       packageName = "acorn";
-      version = "4.0.4";
+      version = "5.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/acorn/-/acorn-4.0.4.tgz";
-        sha1 = "17a8d6a7a6c4ef538b814ec9abac2779293bf30a";
+        url = "https://registry.npmjs.org/acorn/-/acorn-5.0.3.tgz";
+        sha1 = "c460df08491463f028ccb82eab3730bf01087b3d";
       };
     };
     "acorn-jsx-3.0.1" = {
@@ -10097,13 +10115,13 @@ let
         sha1 = "9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145";
       };
     };
-    "arr-flatten-1.0.1" = {
+    "arr-flatten-1.0.2" = {
       name = "arr-flatten";
       packageName = "arr-flatten";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.0.1.tgz";
-        sha1 = "e5ffe54d45e19f32f216e91eb99c8ce892bb604b";
+        url = "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.0.2.tgz";
+        sha1 = "1ec1e63439c54f67d6f72bb4299c3d4f73b2d996";
       };
     };
     "expand-range-1.8.2" = {
@@ -10448,13 +10466,13 @@ let
         sha1 = "21ffdc429be2b50cb361df990a40a7731288e935";
       };
     };
-    "simple-git-1.69.0" = {
+    "simple-git-1.70.0" = {
       name = "simple-git";
       packageName = "simple-git";
-      version = "1.69.0";
+      version = "1.70.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/simple-git/-/simple-git-1.69.0.tgz";
-        sha1 = "e86ead16abfc273dca9ae2bd51e5eb3c0122c177";
+        url = "https://registry.npmjs.org/simple-git/-/simple-git-1.70.0.tgz";
+        sha1 = "62cfd90bb2628a13ff4fe704c840fcef56244a71";
       };
     };
     "tabtab-git+https://github.com/mixu/node-tabtab.git" = {
@@ -10494,13 +10512,13 @@ let
         sha1 = "a4274eeb32fa765da5a7a3b1712617ce3b144149";
       };
     };
-    "coffee-script-1.12.4" = {
+    "coffee-script-1.12.5" = {
       name = "coffee-script";
       packageName = "coffee-script";
-      version = "1.12.4";
+      version = "1.12.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.4.tgz";
-        sha1 = "fe1bced97fe1fb3927b998f2b45616e0658be1ff";
+        url = "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.5.tgz";
+        sha1 = "809f4585419112bbfe46a073ad7543af18c27346";
       };
     };
     "jade-1.11.0" = {
@@ -10584,13 +10602,13 @@ let
         sha1 = "5d23cb35561dd85dc67fb8482309b47d53cce9a7";
       };
     };
-    "uglify-js-2.8.20" = {
+    "uglify-js-2.8.22" = {
       name = "uglify-js";
       packageName = "uglify-js";
-      version = "2.8.20";
+      version = "2.8.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.20.tgz";
-        sha1 = "be87100fbc18de3876ed606e9d24b4568311cecf";
+        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.22.tgz";
+        sha1 = "d54934778a8da14903fa29a326fb24c0ab51a1a0";
       };
     };
     "void-elements-2.0.1" = {
@@ -13221,6 +13239,15 @@ let
         sha1 = "dbf8f4a0acafbe3b8d9b71c24cbd1d851de6c31a";
       };
     };
+    "npm-package-arg-4.2.1" = {
+      name = "npm-package-arg";
+      packageName = "npm-package-arg";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-4.2.1.tgz";
+        sha1 = "593303fdea85f7c422775f17f9eb7670f680e3ec";
+      };
+    };
     "retry-0.8.0" = {
       name = "retry";
       packageName = "retry";
@@ -13824,13 +13851,13 @@ let
         sha1 = "b0bf8a079d67732bcce019eaf8da1d7936658a7f";
       };
     };
-    "node-red-node-email-0.1.21" = {
+    "node-red-node-email-0.1.22" = {
       name = "node-red-node-email";
       packageName = "node-red-node-email";
-      version = "0.1.21";
+      version = "0.1.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-red-node-email/-/node-red-node-email-0.1.21.tgz";
-        sha1 = "63baed16d538e786ddadc169b23552d9eb9abc30";
+        url = "https://registry.npmjs.org/node-red-node-email/-/node-red-node-email-0.1.22.tgz";
+        sha1 = "99c610fdba3f498ddab71da9273d6003e4e0280e";
       };
     };
     "node-red-node-twitter-0.1.10" = {
@@ -13842,13 +13869,13 @@ let
         sha1 = "5883f6a8acebc99829c52400420d5ed52f44d221";
       };
     };
-    "node-red-node-rbe-0.1.6" = {
+    "node-red-node-rbe-0.1.8" = {
       name = "node-red-node-rbe";
       packageName = "node-red-node-rbe";
-      version = "0.1.6";
+      version = "0.1.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-red-node-rbe/-/node-red-node-rbe-0.1.6.tgz";
-        sha1 = "36c22f39c44dd13b5ca9b4e14f05dca001ac5539";
+        url = "https://registry.npmjs.org/node-red-node-rbe/-/node-red-node-rbe-0.1.8.tgz";
+        sha1 = "96108a5720842387ea5ddd046d7e483c7ab2a5dc";
       };
     };
     "bcrypt-1.0.2" = {
@@ -14031,13 +14058,13 @@ let
         sha1 = "9929acdf628fc2c41098deab82ac580cf149aae4";
       };
     };
-    "moment-timezone-0.5.11" = {
+    "moment-timezone-0.5.13" = {
       name = "moment-timezone";
       packageName = "moment-timezone";
-      version = "0.5.11";
+      version = "0.5.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.11.tgz";
-        sha1 = "9b76c03d8ef514c7e4249a7bbce649eed39ef29f";
+        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.13.tgz";
+        sha1 = "99ce5c7d827262eb0f1f702044177f60745d7b90";
       };
     };
     "content-disposition-0.5.1" = {
@@ -14139,22 +14166,22 @@ let
         sha1 = "c0c352501cf6f52e9124e3ef89c9806e2022ebef";
       };
     };
-    "help-me-1.0.1" = {
+    "help-me-1.1.0" = {
       name = "help-me";
       packageName = "help-me";
-      version = "1.0.1";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/help-me/-/help-me-1.0.1.tgz";
-        sha1 = "b6893c8b0ed9d3c60db83560fa75b4d0097a8d5a";
+        url = "https://registry.npmjs.org/help-me/-/help-me-1.1.0.tgz";
+        sha1 = "8f2d508d0600b4a456da2f086556e7e5c056a3c6";
       };
     };
-    "mqtt-packet-5.2.2" = {
+    "mqtt-packet-5.3.0" = {
       name = "mqtt-packet";
       packageName = "mqtt-packet";
-      version = "5.2.2";
+      version = "5.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-5.2.2.tgz";
-        sha1 = "190d4358f415c6f964211030c20ca0bf45d5698a";
+        url = "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-5.3.0.tgz";
+        sha1 = "078ed59ae4c06febf3b3eaca90b50e97e269f206";
       };
     };
     "reinterval-1.1.0" = {
@@ -14193,6 +14220,42 @@ let
         sha1 = "4701a51266f06e06eaa71fc17233822d875f4908";
       };
     };
+    "glob-stream-6.1.0" = {
+      name = "glob-stream";
+      packageName = "glob-stream";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz";
+        sha1 = "7045c99413b3eb94888d83ab46d0b404cc7bdde4";
+      };
+    };
+    "is-negated-glob-1.0.0" = {
+      name = "is-negated-glob";
+      packageName = "is-negated-glob";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz";
+        sha1 = "6910bca5da8c95e784b5751b976cf5a10fee36d2";
+      };
+    };
+    "ordered-read-streams-1.0.0" = {
+      name = "ordered-read-streams";
+      packageName = "ordered-read-streams";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.0.tgz";
+        sha1 = "d674a86ffcedf83d0ae06afa2918855e96d4033a";
+      };
+    };
+    "to-absolute-glob-2.0.1" = {
+      name = "to-absolute-glob";
+      packageName = "to-absolute-glob";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.1.tgz";
+        sha1 = "70c375805b9e3105e899ee8dbdd6a9aa108f407b";
+      };
+    };
     "feedparser-1.1.3" = {
       name = "feedparser";
       packageName = "feedparser";
@@ -14940,13 +15003,13 @@ let
         sha1 = "03726561bc268f2e5444f54c665b7fd4a8c029e2";
       };
     };
-    "mailcomposer-4.0.1" = {
+    "mailcomposer-4.0.2" = {
       name = "mailcomposer";
       packageName = "mailcomposer";
-      version = "4.0.1";
+      version = "4.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mailcomposer/-/mailcomposer-4.0.1.tgz";
-        sha1 = "0e1c44b2a07cf740ee17dc149ba009f19cadfeb4";
+        url = "https://registry.npmjs.org/mailcomposer/-/mailcomposer-4.0.2.tgz";
+        sha1 = "b635402cc7f2eedb10130d3d09ad88b1c2d7e101";
       };
     };
     "simplesmtp-0.3.35" = {
@@ -15075,15 +15138,6 @@ let
         sha1 = "d2c3c89101346982d64e57091c38487bda916fce";
       };
     };
-    "hosted-git-info-2.2.0" = {
-      name = "hosted-git-info";
-      packageName = "hosted-git-info";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.2.0.tgz";
-        sha1 = "7a0d097863d886c0fabbdcd37bf1758d8becf8a5";
-      };
-    };
     "lazy-property-1.0.0" = {
       name = "lazy-property";
       packageName = "lazy-property";
@@ -15156,15 +15210,6 @@ let
         sha1 = "be2c005fda32e0b29af1f05d7c4b33214c701f92";
       };
     };
-    "node-gyp-3.5.0" = {
-      name = "node-gyp";
-      packageName = "node-gyp";
-      version = "3.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-gyp/-/node-gyp-3.5.0.tgz";
-        sha1 = "a8fe5e611d079ec16348a3eb960e78e11c85274a";
-      };
-    };
     "npm-install-checks-3.0.0" = {
       name = "npm-install-checks";
       packageName = "npm-install-checks";
@@ -15174,13 +15219,13 @@ let
         sha1 = "d4aecdfd51a53e3723b7b2f93b2ee28e307bc0d7";
       };
     };
-    "npm-registry-client-7.4.6" = {
+    "npm-registry-client-8.1.1" = {
       name = "npm-registry-client";
       packageName = "npm-registry-client";
-      version = "7.4.6";
+      version = "8.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm-registry-client/-/npm-registry-client-7.4.6.tgz";
-        sha1 = "0aa7c55f18631b941b7b80a7aa501bfcb8b19717";
+        url = "https://registry.npmjs.org/npm-registry-client/-/npm-registry-client-8.1.1.tgz";
+        sha1 = "831476455423ca0a265c6ffdb6100fcc042b36cf";
       };
     };
     "opener-1.4.3" = {
@@ -15525,13 +15570,13 @@ let
         sha1 = "f3c9dc8738f5b59304d54d2cfb3f91d08fdd7998";
       };
     };
-    "registry-auth-token-3.1.0" = {
+    "registry-auth-token-3.1.2" = {
       name = "registry-auth-token";
       packageName = "registry-auth-token";
-      version = "3.1.0";
+      version = "3.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.1.0.tgz";
-        sha1 = "997c08256e0c7999837b90e944db39d8a790276b";
+        url = "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.1.2.tgz";
+        sha1 = "1b9e51a185c930da34a9894b12a52ea998f1adaf";
       };
     };
     "argparse-0.1.15" = {
@@ -15786,13 +15831,13 @@ let
         sha1 = "27d92fec34d27cfa42707d3b40d025ae9855f2df";
       };
     };
-    "snyk-1.26.1" = {
+    "snyk-1.28.1" = {
       name = "snyk";
       packageName = "snyk";
-      version = "1.26.1";
+      version = "1.28.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk/-/snyk-1.26.1.tgz";
-        sha1 = "12b28e9b43c6453ecb6d4be7670b0c0df7db38a5";
+        url = "https://registry.npmjs.org/snyk/-/snyk-1.28.1.tgz";
+        sha1 = "ae0faed0fcee7d5dbc0fa8a7a8c9ebacb03b6151";
       };
     };
     "spawn-please-0.2.0" = {
@@ -15903,22 +15948,22 @@ let
         sha1 = "f27aec2498b24027ac719214026521591111508f";
       };
     };
-    "snyk-module-1.7.0" = {
+    "snyk-module-1.8.1" = {
       name = "snyk-module";
       packageName = "snyk-module";
-      version = "1.7.0";
+      version = "1.8.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-module/-/snyk-module-1.7.0.tgz";
-        sha1 = "07c6ca8556d281de6f9e2368c04ecb6dd1f2631a";
+        url = "https://registry.npmjs.org/snyk-module/-/snyk-module-1.8.1.tgz";
+        sha1 = "31d5080fb1c0dfd6fa8567dd34a523fd02bf1fca";
       };
     };
-    "snyk-policy-1.7.0" = {
+    "snyk-policy-1.7.1" = {
       name = "snyk-policy";
       packageName = "snyk-policy";
-      version = "1.7.0";
+      version = "1.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.7.0.tgz";
-        sha1 = "2151c751ab1edc040fc6b94a872aa989db492324";
+        url = "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.7.1.tgz";
+        sha1 = "e413b6bd4af6050c5e5f445287909e4e98a09b22";
       };
     };
     "snyk-recursive-readdir-2.0.0" = {
@@ -16318,15 +16363,6 @@ let
         sha1 = "2c400d8d4530935bc232549c5fa385ec07de6fcd";
       };
     };
-    "gelf-stream-0.2.4" = {
-      name = "gelf-stream";
-      packageName = "gelf-stream";
-      version = "0.2.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/gelf-stream/-/gelf-stream-0.2.4.tgz";
-        sha1 = "a418c8c2e39b85b7932a3e8523f6022d6852e013";
-      };
-    };
     "mediawiki-title-0.5.6" = {
       name = "mediawiki-title";
       packageName = "mediawiki-title";
@@ -16383,6 +16419,15 @@ let
         sha1 = "b0caeeb093223370033c6c3aa1130dc86c6a087c";
       };
     };
+    "yargs-5.0.0" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs/-/yargs-5.0.0.tgz";
+        sha1 = "3355144977d05757dbb86d6e38ec056123b3a66e";
+      };
+    };
     "is-arguments-1.0.2" = {
       name = "is-arguments";
       packageName = "is-arguments";
@@ -16437,22 +16482,13 @@ let
         sha1 = "83a73f2fea569898fb737193c8f873caf6d45c94";
       };
     };
-    "gelfling-0.2.0" = {
-      name = "gelfling";
-      packageName = "gelfling";
-      version = "0.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/gelfling/-/gelfling-0.2.0.tgz";
-        sha1 = "23a13c366883adae32ecfd252a566be302b88dc3";
-      };
-    };
-    "bunyan-1.8.9" = {
+    "bunyan-1.8.10" = {
       name = "bunyan";
       packageName = "bunyan";
-      version = "1.8.9";
+      version = "1.8.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bunyan/-/bunyan-1.8.9.tgz";
-        sha1 = "2c7c9d422ea64ee2465d52b4decd72de0657401a";
+        url = "https://registry.npmjs.org/bunyan/-/bunyan-1.8.10.tgz";
+        sha1 = "201fedd26c7080b632f416072f53a90b9a52981c";
       };
     };
     "bunyan-syslog-udp-0.1.0" = {
@@ -16672,6 +16708,15 @@ let
         sha1 = "ce42ade08384ef5d62fa77c30f61a46e686f8434";
       };
     };
+    "yargs-parser-3.2.0" = {
+      name = "yargs-parser";
+      packageName = "yargs-parser";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-3.2.0.tgz";
+        sha1 = "5081355d19d9d0c8c5d81ada908cb4e6d186664f";
+      };
+    };
     "airplayer-2.0.0" = {
       name = "airplayer";
       packageName = "airplayer";
@@ -16762,15 +16807,6 @@ let
         sha1 = "d5bd826506425a3b3eacadf1e0e2c1ac3e289728";
       };
     };
-    "stream-buffers-2.2.0" = {
-      name = "stream-buffers";
-      packageName = "stream-buffers";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/stream-buffers/-/stream-buffers-2.2.0.tgz";
-        sha1 = "91d5f5130d1cef96dcfa7f726945188741d09ee4";
-      };
-    };
     "consume-http-header-1.0.0" = {
       name = "consume-http-header";
       packageName = "consume-http-header";
@@ -17554,6 +17590,96 @@ let
         sha1 = "9e785836daf46743145a5984b6268d828528ac6c";
       };
     };
+    "ast-types-0.9.8" = {
+      name = "ast-types";
+      packageName = "ast-types";
+      version = "0.9.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ast-types/-/ast-types-0.9.8.tgz";
+        sha1 = "6cb6a40beba31f49f20928e28439fc14a3dab078";
+      };
+    };
+    "babylon-7.0.0-beta.8" = {
+      name = "babylon";
+      packageName = "babylon";
+      version = "7.0.0-beta.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.8.tgz";
+        sha1 = "2bdc5ae366041442c27e068cce6f0d7c06ea9949";
+      };
+    };
+    "flow-parser-0.43.0" = {
+      name = "flow-parser";
+      packageName = "flow-parser";
+      version = "0.43.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flow-parser/-/flow-parser-0.43.0.tgz";
+        sha1 = "e2b8eb1ac83dd53f7b6b04a7c35b6a52c33479b7";
+      };
+    };
+    "jest-validate-19.0.0" = {
+      name = "jest-validate";
+      packageName = "jest-validate";
+      version = "19.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-validate/-/jest-validate-19.0.0.tgz";
+        sha1 = "8c6318a20ecfeaba0ba5378bfbb8277abded4173";
+      };
+    };
+    "jest-matcher-utils-19.0.0" = {
+      name = "jest-matcher-utils";
+      packageName = "jest-matcher-utils";
+      version = "19.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-19.0.0.tgz";
+        sha1 = "5ecd9b63565d2b001f61fbf7ec4c7f537964564d";
+      };
+    };
+    "leven-2.1.0" = {
+      name = "leven";
+      packageName = "leven";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz";
+        sha1 = "c2e7a9f772094dee9d34202ae8acce4687875580";
+      };
+    };
+    "pretty-format-19.0.0" = {
+      name = "pretty-format";
+      packageName = "pretty-format";
+      version = "19.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pretty-format/-/pretty-format-19.0.0.tgz";
+        sha1 = "56530d32acb98a3fa4851c4e2b9d37b420684c84";
+      };
+    };
+    "ansi-styles-3.0.0" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.0.0.tgz";
+        sha1 = "5404e93a544c4fec7f048262977bebfe3155e0c1";
+      };
+    };
+    "color-convert-1.9.0" = {
+      name = "color-convert";
+      packageName = "color-convert";
+      version = "1.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz";
+        sha1 = "1accf97dd739b983bf994d56fec8f95853641b7a";
+      };
+    };
+    "color-name-1.1.2" = {
+      name = "color-name";
+      packageName = "color-name";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-name/-/color-name-1.1.2.tgz";
+        sha1 = "5c8ab72b64bd2215d617ae9559ebb148475cf98d";
+      };
+    };
     "commoner-0.10.8" = {
       name = "commoner";
       packageName = "commoner";
@@ -18698,22 +18824,13 @@ let
         sha1 = "375fb0783ca8fa90307749399bc9c75eb7cf6580";
       };
     };
-    "express-4.14.1" = {
-      name = "express";
-      packageName = "express";
-      version = "4.14.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/express/-/express-4.14.1.tgz";
-        sha1 = "646c237f766f148c2120aff073817b9e4d7e0d33";
-      };
-    };
-    "express-session-1.14.2" = {
+    "express-session-1.15.2" = {
       name = "express-session";
       packageName = "express-session";
-      version = "1.14.2";
+      version = "1.15.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/express-session/-/express-session-1.14.2.tgz";
-        sha1 = "6bcf586ed6d1dc37b02570087756c9de7b80b275";
+        url = "https://registry.npmjs.org/express-session/-/express-session-1.15.2.tgz";
+        sha1 = "d98516443a4ccb8688e1725ae584c02daa4093d4";
       };
     };
     "forever-monitor-1.1.0" = {
@@ -18770,13 +18887,13 @@ let
         sha1 = "08524645ee4039dedc3dcc1dd7c6b979e0619e44";
       };
     };
-    "npm-4.1.2" = {
+    "npm-4.5.0" = {
       name = "npm";
       packageName = "npm";
-      version = "4.1.2";
+      version = "4.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm/-/npm-4.1.2.tgz";
-        sha1 = "daaa77d631947135b36528c304573243f5cd2e07";
+        url = "https://registry.npmjs.org/npm/-/npm-4.5.0.tgz";
+        sha1 = "dc6a31f28807e6db980ed5083315667dcc8d0475";
       };
     };
     "octicons-3.5.0" = {
@@ -18797,13 +18914,13 @@ let
         sha1 = "1fe63268c92e75606626437e3b906662c15ba6ee";
       };
     };
-    "raven-1.1.5" = {
+    "raven-1.2.1" = {
       name = "raven";
       packageName = "raven";
-      version = "1.1.5";
+      version = "1.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/raven/-/raven-1.1.5.tgz";
-        sha1 = "6af541406c37da1d678781d0af411c27c6f05fbf";
+        url = "https://registry.npmjs.org/raven/-/raven-1.2.1.tgz";
+        sha1 = "949c134db028a190b7bbf8f790aae541b7c020bd";
       };
     };
     "signals-1.0.0" = {
@@ -18815,13 +18932,13 @@ let
         sha1 = "65f0c1599352b35372ecaae5a250e6107376ed69";
       };
     };
-    "snapsvg-0.4.0" = {
+    "snapsvg-0.5.1" = {
       name = "snapsvg";
       packageName = "snapsvg";
-      version = "0.4.0";
+      version = "0.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snapsvg/-/snapsvg-0.4.0.tgz";
-        sha1 = "e0767014167825957de7e125c29b0fa89796ea03";
+        url = "https://registry.npmjs.org/snapsvg/-/snapsvg-0.5.1.tgz";
+        sha1 = "0caf52c79189a290746fc446cc5e863f6bdddfe3";
       };
     };
     "winston-2.3.1" = {
@@ -18833,13 +18950,13 @@ let
         sha1 = "0b48420d978c01804cf0230b648861598225a119";
       };
     };
-    "color-convert-1.9.0" = {
-      name = "color-convert";
-      packageName = "color-convert";
-      version = "1.9.0";
+    "yargs-7.1.0" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "7.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz";
-        sha1 = "1accf97dd739b983bf994d56fec8f95853641b7a";
+        url = "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz";
+        sha1 = "6ba318eb16961727f5d284f8ea003e8d6154d0c8";
       };
     };
     "color-string-1.5.2" = {
@@ -18851,15 +18968,6 @@ let
         sha1 = "26e45814bc3c9a7cbd6751648a41434514a773a9";
       };
     };
-    "color-name-1.1.2" = {
-      name = "color-name";
-      packageName = "color-name";
-      version = "1.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/color-name/-/color-name-1.1.2.tgz";
-        sha1 = "5c8ab72b64bd2215d617ae9559ebb148475cf98d";
-      };
-    };
     "simple-swizzle-0.2.2" = {
       name = "simple-swizzle";
       packageName = "simple-swizzle";
@@ -18896,13 +19004,13 @@ let
         sha1 = "9c84ec2dcf68187ff00bc64e1274b442176e1c84";
       };
     };
-    "crc-3.4.1" = {
+    "crc-3.4.4" = {
       name = "crc";
       packageName = "crc";
-      version = "3.4.1";
+      version = "3.4.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/crc/-/crc-3.4.1.tgz";
-        sha1 = "65d5830b1a2569557cfb324c0e679998521473ee";
+        url = "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz";
+        sha1 = "9da1e980e3bd44fc5c93bf5ab3da3378d85e466b";
       };
     };
     "broadway-0.2.10" = {
@@ -19031,15 +19139,6 @@ let
         sha1 = "1335c5e4f5e6d33bbb4b006ba8c86a00f556de08";
       };
     };
-    "mississippi-1.2.0" = {
-      name = "mississippi";
-      packageName = "mississippi";
-      version = "1.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mississippi/-/mississippi-1.2.0.tgz";
-        sha1 = "cd51bb9bbad3ddb13dee3cf60f1d0929c7a7fa4c";
-      };
-    };
     "lsmod-1.0.0" = {
       name = "lsmod";
       packageName = "lsmod";
@@ -19058,13 +19157,22 @@ let
         sha1 = "6728fc0459c450d796a99c31837569bdf672d728";
       };
     };
-    "eve-0.4.2" = {
+    "eve-0.5.3" = {
       name = "eve";
       packageName = "eve";
-      version = "0.4.2";
+      version = "0.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eve/-/eve-0.5.3.tgz";
+        sha1 = "6c2f6588f7d0b392044d245ba5af9d7cfe237f42";
+      };
+    };
+    "yargs-parser-5.0.0" = {
+      name = "yargs-parser";
+      packageName = "yargs-parser";
+      version = "5.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eve/-/eve-0.4.2.tgz";
-        sha1 = "7eea0afc0e4efb7c9365615315a3576833ead2ae";
+        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz";
+        sha1 = "275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a";
       };
     };
     "kew-0.1.7" = {
@@ -19130,6 +19238,15 @@ let
         sha1 = "8baa1365a632f58a3c46d20175fc6002c96e37de";
       };
     };
+    "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";
+      };
+    };
     "loader-runner-2.3.0" = {
       name = "loader-runner";
       packageName = "loader-runner";
@@ -19202,15 +19319,6 @@ let
         sha1 = "4daa4d9db00f9819880c79fa457ae5b09a1fd389";
       };
     };
-    "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";
-      };
-    };
     "os-browserify-0.2.1" = {
       name = "os-browserify";
       packageName = "os-browserify";
@@ -19310,15 +19418,6 @@ let
         sha1 = "f739336b2632365061a9d48270cd56ae3369318e";
       };
     };
-    "leven-2.1.0" = {
-      name = "leven";
-      packageName = "leven";
-      version = "2.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz";
-        sha1 = "c2e7a9f772094dee9d34202ae8acce4687875580";
-      };
-    };
     "node-emoji-1.5.1" = {
       name = "node-emoji";
       packageName = "node-emoji";
@@ -19364,6 +19463,15 @@ let
         sha1 = "1180a30d64e1970d8f55dd8cb0da8ffccecad71e";
       };
     };
+    "v8-compile-cache-1.1.0" = {
+      name = "v8-compile-cache";
+      packageName = "v8-compile-cache";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-1.1.0.tgz";
+        sha1 = "1dc2a340fb8e5f800a32bcdbfb8c23cd747021b9";
+      };
+    };
     "regenerator-runtime-0.10.3" = {
       name = "regenerator-runtime";
       packageName = "regenerator-runtime";
@@ -19865,10 +19973,10 @@ in
   alloy = nodeEnv.buildNodePackage {
     name = "alloy";
     packageName = "alloy";
-    version = "1.9.8";
+    version = "1.9.11";
     src = fetchurl {
-      url = "https://registry.npmjs.org/alloy/-/alloy-1.9.8.tgz";
-      sha1 = "17294e9828a1f11ef241d59f5eb040e6a5b4ed13";
+      url = "https://registry.npmjs.org/alloy/-/alloy-1.9.11.tgz";
+      sha1 = "6e185c5c3211b5a86d272caec63b8daf80e5b186";
     };
     dependencies = [
       sources."colors-0.6.0-1"
@@ -20007,10 +20115,10 @@ in
   azure-cli = nodeEnv.buildNodePackage {
     name = "azure-cli";
     packageName = "azure-cli";
-    version = "0.10.11";
+    version = "0.10.12";
     src = fetchurl {
-      url = "https://registry.npmjs.org/azure-cli/-/azure-cli-0.10.11.tgz";
-      sha1 = "aa1a379386b5c60f90f86134b4047acb1302d482";
+      url = "https://registry.npmjs.org/azure-cli/-/azure-cli-0.10.12.tgz";
+      sha1 = "4446af5df8dda6c755a0bf7dfec2468a9f63f26d";
     };
     dependencies = [
       (sources."adal-node-0.1.21" // {
@@ -20059,7 +20167,7 @@ in
       sources."azure-arm-servermanagement-0.1.2"
       sources."azure-arm-network-0.18.0"
       sources."azure-arm-powerbiembedded-0.1.0"
-      sources."azure-arm-trafficmanager-0.10.5"
+      sources."azure-arm-trafficmanager-0.12.0"
       sources."azure-arm-dns-0.11.1"
       sources."azure-arm-website-0.11.4"
       sources."azure-arm-rediscache-0.2.3"
@@ -20067,7 +20175,7 @@ in
       sources."azure-graph-1.1.1"
       sources."azure-gallery-2.0.0-pre.18"
       sources."azure-keyvault-0.11.0"
-      sources."azure-asm-compute-0.17.0"
+      sources."azure-asm-compute-0.18.0"
       sources."azure-asm-hdinsight-0.10.2"
       sources."azure-asm-trafficmanager-0.10.3"
       sources."azure-asm-mgmt-0.10.1"
@@ -20088,7 +20196,7 @@ in
           sources."moment-2.14.1"
         ];
       })
-      (sources."azure-storage-2.0.0" // {
+      (sources."azure-storage-2.1.0" // {
         dependencies = [
           sources."browserify-mime-1.2.9"
           sources."extend-1.2.1"
@@ -20231,7 +20339,7 @@ in
                       sources."inherits-2.0.3"
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -20299,7 +20407,7 @@ in
           sources."forever-agent-0.6.1"
           (sources."form-data-1.0.1" // {
             dependencies = [
-              (sources."async-2.2.0" // {
+              (sources."async-2.3.0" // {
                 dependencies = [
                   sources."lodash-4.17.4"
                 ];
@@ -20368,7 +20476,7 @@ in
                   sources."verror-1.3.6"
                 ];
               })
-              (sources."sshpk-1.11.0" // {
+              (sources."sshpk-1.13.0" // {
                 dependencies = [
                   sources."asn1-0.2.3"
                   sources."assert-plus-1.0.0"
@@ -20427,13 +20535,13 @@ in
             dependencies = [
               sources."inherits-2.0.3"
               sources."typedarray-0.0.6"
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -20549,13 +20657,13 @@ in
                             ];
                           })
                           sources."inherits-2.0.3"
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -20574,14 +20682,14 @@ in
                       sources."prepend-http-1.0.4"
                       (sources."read-all-stream-2.2.0" // {
                         dependencies = [
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."inherits-2.0.3"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -20615,7 +20723,7 @@ in
                   sources."minimist-1.2.0"
                   (sources."normalize-package-data-2.3.6" // {
                     dependencies = [
-                      sources."hosted-git-info-2.4.1"
+                      sources."hosted-git-info-2.4.2"
                       (sources."is-builtin-module-1.0.0" // {
                         dependencies = [
                           sources."builtin-modules-1.1.1"
@@ -20752,7 +20860,7 @@ in
                   sources."inherits-2.0.3"
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -20804,7 +20912,7 @@ in
           sources."inherits-2.0.3"
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -20832,10 +20940,10 @@ in
   browserify = nodeEnv.buildNodePackage {
     name = "browserify";
     packageName = "browserify";
-    version = "14.1.0";
+    version = "14.3.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/browserify/-/browserify-14.1.0.tgz";
-      sha1 = "0508cc1e7bf4c152312c2fa523e676c0b0b92311";
+      url = "https://registry.npmjs.org/browserify/-/browserify-14.3.0.tgz";
+      sha1 = "fd003a2386ac1aec127f097885a3cc6373b745c4";
     };
     dependencies = [
       (sources."JSONStream-1.3.1" // {
@@ -20868,7 +20976,7 @@ in
           sources."pako-0.2.9"
         ];
       })
-      (sources."buffer-5.0.5" // {
+      (sources."buffer-5.0.6" // {
         dependencies = [
           sources."base64-js-1.2.0"
           sources."ieee754-1.1.8"
@@ -20925,7 +21033,7 @@ in
                 dependencies = [
                   sources."brorand-1.1.0"
                   sources."hash.js-1.0.3"
-                  sources."hmac-drbg-1.0.0"
+                  sources."hmac-drbg-1.0.1"
                   sources."minimalistic-assert-1.0.0"
                   sources."minimalistic-crypto-utils-1.0.1"
                 ];
@@ -20955,7 +21063,7 @@ in
                 dependencies = [
                   sources."brorand-1.1.0"
                   sources."hash.js-1.0.3"
-                  sources."hmac-drbg-1.0.0"
+                  sources."hmac-drbg-1.0.1"
                   sources."minimalistic-assert-1.0.0"
                   sources."minimalistic-crypto-utils-1.0.1"
                 ];
@@ -21021,7 +21129,7 @@ in
           })
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -21043,7 +21151,7 @@ in
         ];
       })
       sources."htmlescape-1.1.1"
-      sources."https-browserify-0.0.1"
+      sources."https-browserify-1.0.0"
       sources."inherits-2.0.3"
       (sources."insert-module-globals-7.0.1" // {
         dependencies = [
@@ -21094,12 +21202,13 @@ in
       sources."punycode-1.4.1"
       sources."querystring-es3-0.2.1"
       sources."read-only-stream-2.0.0"
-      (sources."readable-stream-2.2.6" // {
+      (sources."readable-stream-2.2.9" // {
         dependencies = [
           sources."buffer-shims-1.0.0"
           sources."core-util-is-1.0.2"
           sources."isarray-1.0.0"
           sources."process-nextick-args-1.0.7"
+          sources."string_decoder-1.0.0"
           sources."util-deprecate-1.0.2"
         ];
       })
@@ -21127,7 +21236,7 @@ in
         ];
       })
       sources."stream-browserify-2.0.1"
-      (sources."stream-http-2.6.3" // {
+      (sources."stream-http-2.7.0" // {
         dependencies = [
           sources."builtin-status-codes-3.0.0"
           sources."to-arraybuffer-1.0.1"
@@ -21291,7 +21400,7 @@ in
               sources."map-obj-1.0.1"
               (sources."normalize-package-data-2.3.6" // {
                 dependencies = [
-                  sources."hosted-git-info-2.4.1"
+                  sources."hosted-git-info-2.4.2"
                   (sources."is-builtin-module-1.0.0" // {
                     dependencies = [
                       sources."builtin-modules-1.1.1"
@@ -21449,17 +21558,17 @@ in
               sources."minimist-0.0.10"
             ];
           })
-          (sources."parse-torrent-5.8.2" // {
+          (sources."parse-torrent-5.8.3" // {
             dependencies = [
               sources."blob-to-buffer-1.2.6"
               sources."get-stdin-5.0.1"
-              (sources."magnet-uri-5.1.5" // {
+              (sources."magnet-uri-5.1.6" // {
                 dependencies = [
                   sources."thirty-two-1.0.2"
                   sources."uniq-1.0.1"
                 ];
               })
-              (sources."parse-torrent-file-4.0.1" // {
+              (sources."parse-torrent-file-4.0.2" // {
                 dependencies = [
                   sources."bencode-0.11.0"
                   (sources."simple-sha1-2.1.0" // {
@@ -21470,7 +21579,7 @@ in
                   sources."uniq-1.0.1"
                 ];
               })
-              (sources."simple-get-2.4.0" // {
+              (sources."simple-get-2.5.1" // {
                 dependencies = [
                   (sources."once-1.4.0" // {
                     dependencies = [
@@ -21518,15 +21627,16 @@ in
                   })
                 ];
               })
-              (sources."fs-chunk-store-1.6.4" // {
+              (sources."fs-chunk-store-1.6.5" // {
                 dependencies = [
                   (sources."mkdirp-0.5.1" // {
                     dependencies = [
                       sources."minimist-0.0.8"
                     ];
                   })
-                  (sources."random-access-file-1.5.0" // {
+                  (sources."random-access-file-1.6.1" // {
                     dependencies = [
+                      sources."buffer-alloc-unsafe-1.0.0"
                       sources."inherits-2.0.3"
                     ];
                   })
@@ -21605,7 +21715,7 @@ in
                       sources."inherits-2.0.3"
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -21669,7 +21779,7 @@ in
                       })
                       sources."random-iterate-1.0.1"
                       sources."run-series-1.1.4"
-                      (sources."simple-get-2.4.0" // {
+                      (sources."simple-get-2.5.1" // {
                         dependencies = [
                           sources."simple-concat-1.0.0"
                           sources."unzip-response-2.0.1"
@@ -21679,13 +21789,13 @@ in
                         dependencies = [
                           sources."get-browser-rtc-1.0.2"
                           sources."randombytes-2.0.3"
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -21694,18 +21804,19 @@ in
                       (sources."simple-websocket-4.3.1" // {
                         dependencies = [
                           sources."randombytes-2.0.3"
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
-                          (sources."ws-2.2.2" // {
+                          (sources."ws-2.2.3" // {
                             dependencies = [
+                              sources."safe-buffer-5.0.1"
                               sources."ultron-1.1.0"
                             ];
                           })
@@ -21731,7 +21842,7 @@ in
                   sources."run-parallel-1.1.6"
                 ];
               })
-              sources."torrent-piece-1.1.0"
+              sources."torrent-piece-1.1.1"
             ];
           })
           sources."windows-no-runnable-0.0.6"
@@ -21832,13 +21943,13 @@ in
                 dependencies = [
                   sources."inherits-2.0.3"
                   sources."typedarray-0.0.6"
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -21884,10 +21995,10 @@ in
   coffee-script = nodeEnv.buildNodePackage {
     name = "coffee-script";
     packageName = "coffee-script";
-    version = "1.12.4";
+    version = "1.12.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.4.tgz";
-      sha1 = "fe1bced97fe1fb3927b998f2b45616e0658be1ff";
+      url = "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.5.tgz";
+      sha1 = "809f4585419112bbfe46a073ad7543af18c27346";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -21911,7 +22022,7 @@ in
           sources."ansi-0.3.1"
           (sources."bplist-parser-0.1.1" // {
             dependencies = [
-              sources."big-integer-1.6.17"
+              sources."big-integer-1.6.19"
             ];
           })
           sources."cordova-registry-mapper-1.1.15"
@@ -21938,7 +22049,7 @@ in
           })
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -22017,7 +22128,7 @@ in
                       sources."inherits-2.0.3"
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -22139,7 +22250,7 @@ in
                             dependencies = [
                               sources."brorand-1.1.0"
                               sources."hash.js-1.0.3"
-                              sources."hmac-drbg-1.0.0"
+                              sources."hmac-drbg-1.0.1"
                               sources."minimalistic-assert-1.0.0"
                               sources."minimalistic-crypto-utils-1.0.1"
                             ];
@@ -22169,7 +22280,7 @@ in
                             dependencies = [
                               sources."brorand-1.1.0"
                               sources."hash.js-1.0.3"
-                              sources."hmac-drbg-1.0.0"
+                              sources."hmac-drbg-1.0.1"
                               sources."minimalistic-assert-1.0.0"
                               sources."minimalistic-crypto-utils-1.0.1"
                             ];
@@ -22235,7 +22346,7 @@ in
                       })
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -22308,12 +22419,13 @@ in
                   sources."punycode-1.4.1"
                   sources."querystring-es3-0.2.1"
                   sources."read-only-stream-2.0.0"
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."process-nextick-args-1.0.7"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -22341,7 +22453,7 @@ in
                     ];
                   })
                   sources."stream-browserify-2.0.1"
-                  (sources."stream-http-2.6.3" // {
+                  (sources."stream-http-2.7.0" // {
                     dependencies = [
                       sources."builtin-status-codes-3.0.0"
                       sources."to-arraybuffer-1.0.1"
@@ -22498,7 +22610,7 @@ in
                   sources."serve-static-1.12.1"
                   sources."setprototypeof-1.0.3"
                   sources."statuses-1.3.1"
-                  (sources."type-is-1.6.14" // {
+                  (sources."type-is-1.6.15" // {
                     dependencies = [
                       sources."media-typer-0.3.0"
                       (sources."mime-types-2.1.15" // {
@@ -22535,7 +22647,7 @@ in
               sources."inherits-2.0.3"
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -22551,7 +22663,7 @@ in
               sources."path-is-absolute-1.0.1"
             ];
           })
-          (sources."init-package-json-1.9.5" // {
+          (sources."init-package-json-1.9.6" // {
             dependencies = [
               (sources."glob-7.1.1" // {
                 dependencies = [
@@ -22564,7 +22676,7 @@ in
                   sources."inherits-2.0.3"
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -22580,9 +22692,15 @@ in
                   sources."path-is-absolute-1.0.1"
                 ];
               })
-              (sources."npm-package-arg-4.2.1" // {
+              (sources."npm-package-arg-5.0.1" // {
                 dependencies = [
-                  sources."hosted-git-info-2.4.1"
+                  sources."hosted-git-info-2.4.2"
+                  (sources."osenv-0.1.4" // {
+                    dependencies = [
+                      sources."os-homedir-1.0.2"
+                      sources."os-tmpdir-1.0.2"
+                    ];
+                  })
                   sources."semver-5.3.0"
                 ];
               })
@@ -22601,7 +22719,7 @@ in
                   })
                   (sources."normalize-package-data-2.3.6" // {
                     dependencies = [
-                      sources."hosted-git-info-2.4.1"
+                      sources."hosted-git-info-2.4.2"
                       (sources."is-builtin-module-1.0.0" // {
                         dependencies = [
                           sources."builtin-modules-1.1.1"
@@ -22705,7 +22823,7 @@ in
               })
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -22741,13 +22859,13 @@ in
                   (sources."concat-stream-1.6.0" // {
                     dependencies = [
                       sources."typedarray-0.0.6"
-                      (sources."readable-stream-2.2.6" // {
+                      (sources."readable-stream-2.2.9" // {
                         dependencies = [
                           sources."buffer-shims-1.0.0"
                           sources."core-util-is-1.0.2"
                           sources."isarray-1.0.0"
                           sources."process-nextick-args-1.0.7"
-                          sources."string_decoder-0.10.31"
+                          sources."string_decoder-1.0.0"
                           sources."util-deprecate-1.0.2"
                         ];
                       })
@@ -22846,7 +22964,7 @@ in
                   sources."forever-agent-0.6.1"
                   (sources."form-data-1.0.1" // {
                     dependencies = [
-                      (sources."async-2.2.0" // {
+                      (sources."async-2.3.0" // {
                         dependencies = [
                           sources."lodash-4.17.4"
                         ];
@@ -22906,7 +23024,7 @@ in
                           sources."verror-1.3.6"
                         ];
                       })
-                      (sources."sshpk-1.11.0" // {
+                      (sources."sshpk-1.13.0" // {
                         dependencies = [
                           sources."asn1-0.2.3"
                           sources."assert-plus-1.0.0"
@@ -23071,7 +23189,7 @@ in
                           })
                           (sources."minimatch-3.0.3" // {
                             dependencies = [
-                              (sources."brace-expansion-1.1.6" // {
+                              (sources."brace-expansion-1.1.7" // {
                                 dependencies = [
                                   sources."balanced-match-0.4.2"
                                   sources."concat-map-0.0.1"
@@ -23096,20 +23214,31 @@ in
           })
           sources."unorm-1.3.3"
           sources."valid-identifier-0.0.1"
-          (sources."xcode-0.9.1" // {
+          (sources."xcode-0.9.3" // {
             dependencies = [
-              sources."node-uuid-1.4.7"
-              sources."pegjs-0.9.0"
-              (sources."simple-plist-0.1.4" // {
+              sources."pegjs-0.10.0"
+              (sources."simple-plist-0.2.1" // {
                 dependencies = [
-                  sources."bplist-parser-0.0.6"
-                  (sources."bplist-creator-0.0.4" // {
+                  (sources."bplist-creator-0.0.7" // {
+                    dependencies = [
+                      sources."stream-buffers-2.2.0"
+                    ];
+                  })
+                  (sources."bplist-parser-0.1.1" // {
+                    dependencies = [
+                      sources."big-integer-1.6.19"
+                    ];
+                  })
+                  (sources."plist-2.0.1" // {
                     dependencies = [
-                      sources."stream-buffers-0.2.6"
+                      sources."base64-js-1.1.2"
+                      sources."xmlbuilder-8.2.2"
+                      sources."xmldom-0.1.27"
                     ];
                   })
                 ];
               })
+              sources."uuid-3.0.1"
             ];
           })
         ];
@@ -23240,14 +23369,14 @@ in
               })
               sources."extend-3.0.0"
               sources."forever-agent-0.6.1"
-              (sources."form-data-2.1.2" // {
+              (sources."form-data-2.1.4" // {
                 dependencies = [
                   sources."asynckit-0.4.0"
                 ];
               })
               (sources."har-validator-4.2.1" // {
                 dependencies = [
-                  (sources."ajv-4.11.5" // {
+                  (sources."ajv-4.11.6" // {
                     dependencies = [
                       sources."co-4.6.0"
                       (sources."json-stable-stringify-1.0.1" // {
@@ -23279,7 +23408,7 @@ in
                       sources."verror-1.3.6"
                     ];
                   })
-                  (sources."sshpk-1.11.0" // {
+                  (sources."sshpk-1.13.0" // {
                     dependencies = [
                       sources."asn1-0.2.3"
                       sources."assert-plus-1.0.0"
@@ -23392,13 +23521,13 @@ in
                             ];
                           })
                           sources."inherits-2.0.3"
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -23423,14 +23552,14 @@ in
                               sources."pinkie-2.0.4"
                             ];
                           })
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."inherits-2.0.3"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -23441,7 +23570,7 @@ in
                   })
                   (sources."registry-url-3.1.0" // {
                     dependencies = [
-                      (sources."rc-1.2.0" // {
+                      (sources."rc-1.2.1" // {
                         dependencies = [
                           sources."deep-extend-0.4.1"
                           sources."ini-1.3.4"
@@ -23601,7 +23730,7 @@ in
       (sources."hiredis-0.4.1" // {
         dependencies = [
           sources."bindings-1.2.1"
-          sources."nan-2.5.1"
+          sources."nan-2.6.2"
         ];
       })
       (sources."json-rpc2-0.8.1" // {
@@ -23815,13 +23944,13 @@ in
                 ];
               })
               sources."inherits-2.0.3"
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -23950,14 +24079,14 @@ in
           sources."split2-2.1.1"
           (sources."through2-2.0.3" // {
             dependencies = [
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."inherits-2.0.3"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -23987,13 +24116,13 @@ in
                   })
                 ];
               })
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -24036,14 +24165,14 @@ in
       (sources."tar-stream-1.5.2" // {
         dependencies = [
           sources."bl-1.2.0"
-          (sources."readable-stream-2.2.6" // {
+          (sources."readable-stream-2.2.9" // {
             dependencies = [
               sources."buffer-shims-1.0.0"
               sources."core-util-is-1.0.2"
               sources."isarray-1.0.0"
               sources."inherits-2.0.3"
               sources."process-nextick-args-1.0.7"
-              sources."string_decoder-0.10.31"
+              sources."string_decoder-1.0.0"
               sources."util-deprecate-1.0.2"
             ];
           })
@@ -24087,7 +24216,7 @@ in
           sources."through-2.3.8"
         ];
       })
-      (sources."async-2.2.0" // {
+      (sources."async-2.3.0" // {
         dependencies = [
           sources."lodash-4.17.4"
         ];
@@ -24112,14 +24241,14 @@ in
           })
           sources."extend-3.0.0"
           sources."forever-agent-0.6.1"
-          (sources."form-data-2.1.2" // {
+          (sources."form-data-2.1.4" // {
             dependencies = [
               sources."asynckit-0.4.0"
             ];
           })
           (sources."har-validator-4.2.1" // {
             dependencies = [
-              (sources."ajv-4.11.5" // {
+              (sources."ajv-4.11.6" // {
                 dependencies = [
                   sources."co-4.6.0"
                   (sources."json-stable-stringify-1.0.1" // {
@@ -24151,7 +24280,7 @@ in
                   sources."verror-1.3.6"
                 ];
               })
-              (sources."sshpk-1.11.0" // {
+              (sources."sshpk-1.13.0" // {
                 dependencies = [
                   sources."asn1-0.2.3"
                   sources."assert-plus-1.0.0"
@@ -24331,7 +24460,7 @@ in
           sources."minimist-1.2.0"
           (sources."normalize-package-data-2.3.6" // {
             dependencies = [
-              sources."hosted-git-info-2.4.1"
+              sources."hosted-git-info-2.4.2"
               (sources."is-builtin-module-1.0.0" // {
                 dependencies = [
                   sources."builtin-modules-1.1.1"
@@ -24442,10 +24571,10 @@ in
   eslint = nodeEnv.buildNodePackage {
     name = "eslint";
     packageName = "eslint";
-    version = "3.18.0";
+    version = "3.19.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/eslint/-/eslint-3.18.0.tgz";
-      sha1 = "647e985c4ae71502d20ac62c109f66d5104c8a4b";
+      url = "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz";
+      sha1 = "c8fc6201c7f40dd08941b87c085767386a679acc";
     };
     dependencies = [
       (sources."babel-code-frame-6.22.0" // {
@@ -24474,13 +24603,13 @@ in
         dependencies = [
           sources."inherits-2.0.3"
           sources."typedarray-0.0.6"
-          (sources."readable-stream-2.2.6" // {
+          (sources."readable-stream-2.2.9" // {
             dependencies = [
               sources."buffer-shims-1.0.0"
               sources."core-util-is-1.0.2"
               sources."isarray-1.0.0"
               sources."process-nextick-args-1.0.7"
-              sources."string_decoder-0.10.31"
+              sources."string_decoder-1.0.0"
               sources."util-deprecate-1.0.2"
             ];
           })
@@ -24524,9 +24653,9 @@ in
           })
         ];
       })
-      (sources."espree-3.4.0" // {
+      (sources."espree-3.4.1" // {
         dependencies = [
-          sources."acorn-4.0.4"
+          sources."acorn-5.0.3"
           (sources."acorn-jsx-3.0.1" // {
             dependencies = [
               sources."acorn-3.3.0"
@@ -24587,7 +24716,7 @@ in
           sources."inherits-2.0.3"
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -24604,7 +24733,7 @@ in
         ];
       })
       sources."globals-9.17.0"
-      sources."ignore-3.2.6"
+      sources."ignore-3.2.7"
       sources."imurmurhash-0.1.4"
       (sources."inquirer-0.12.0" // {
         dependencies = [
@@ -24679,7 +24808,7 @@ in
           sources."tryit-1.0.3"
         ];
       })
-      (sources."js-yaml-3.8.2" // {
+      (sources."js-yaml-3.8.3" // {
         dependencies = [
           (sources."argparse-1.0.9" // {
             dependencies = [
@@ -24747,7 +24876,7 @@ in
       sources."strip-json-comments-2.0.1"
       (sources."table-3.8.3" // {
         dependencies = [
-          (sources."ajv-4.11.5" // {
+          (sources."ajv-4.11.6" // {
             dependencies = [
               sources."co-4.6.0"
             ];
@@ -24915,7 +25044,7 @@ in
                     dependencies = [
                       (sources."arr-diff-2.0.0" // {
                         dependencies = [
-                          sources."arr-flatten-1.0.1"
+                          sources."arr-flatten-1.0.2"
                         ];
                       })
                       sources."array-unique-0.2.1"
@@ -25001,13 +25130,13 @@ in
               (sources."readdirp-2.1.0" // {
                 dependencies = [
                   sources."graceful-fs-4.1.11"
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -25016,7 +25145,7 @@ in
               })
               (sources."fsevents-1.1.1" // {
                 dependencies = [
-                  sources."nan-2.5.1"
+                  sources."nan-2.6.2"
                   (sources."node-pre-gyp-0.6.34" // {
                     dependencies = [
                       (sources."mkdirp-0.5.1" // {
@@ -25040,13 +25169,13 @@ in
                           (sources."are-we-there-yet-1.1.2" // {
                             dependencies = [
                               sources."delegates-1.0.0"
-                              (sources."readable-stream-2.2.6" // {
+                              (sources."readable-stream-2.2.9" // {
                                 dependencies = [
                                   sources."buffer-shims-1.0.0"
                                   sources."core-util-is-1.0.2"
                                   sources."isarray-1.0.0"
                                   sources."process-nextick-args-1.0.7"
-                                  sources."string_decoder-0.10.31"
+                                  sources."string_decoder-1.0.0"
                                   sources."util-deprecate-1.0.2"
                                 ];
                               })
@@ -25080,7 +25209,7 @@ in
                           sources."set-blocking-2.0.0"
                         ];
                       })
-                      (sources."rc-1.2.0" // {
+                      (sources."rc-1.2.1" // {
                         dependencies = [
                           sources."deep-extend-0.4.1"
                           sources."ini-1.3.4"
@@ -25100,14 +25229,14 @@ in
                           })
                           sources."extend-3.0.0"
                           sources."forever-agent-0.6.1"
-                          (sources."form-data-2.1.2" // {
+                          (sources."form-data-2.1.4" // {
                             dependencies = [
                               sources."asynckit-0.4.0"
                             ];
                           })
                           (sources."har-validator-4.2.1" // {
                             dependencies = [
-                              (sources."ajv-4.11.5" // {
+                              (sources."ajv-4.11.6" // {
                                 dependencies = [
                                   sources."co-4.6.0"
                                   (sources."json-stable-stringify-1.0.1" // {
@@ -25139,7 +25268,7 @@ in
                                   sources."verror-1.3.6"
                                 ];
                               })
-                              (sources."sshpk-1.11.0" // {
+                              (sources."sshpk-1.13.0" // {
                                 dependencies = [
                                   sources."asn1-0.2.3"
                                   sources."assert-plus-1.0.0"
@@ -25224,13 +25353,13 @@ in
                               sources."wrappy-1.0.2"
                             ];
                           })
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -25245,7 +25374,7 @@ in
           })
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -25344,7 +25473,7 @@ in
                   sources."inherits-2.0.3"
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -25391,7 +25520,7 @@ in
       sha1 = "466a7253a54f526ca2f57ca78780895b95efaee4";
     };
     dependencies = [
-      (sources."async-2.2.0" // {
+      (sources."async-2.3.0" // {
         dependencies = [
           sources."lodash-4.17.4"
         ];
@@ -25402,7 +25531,7 @@ in
           sources."microee-0.0.2"
         ];
       })
-      sources."simple-git-1.69.0"
+      sources."simple-git-1.70.0"
       sources."tabtab-git+https://github.com/mixu/node-tabtab.git"
     ];
     buildInputs = globalBuildInputs;
@@ -25434,7 +25563,7 @@ in
               sources."inherits-2.0.3"
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -25478,7 +25607,7 @@ in
       sha256 = "a51a5beef55c14c68630275d51cf66c44a4462d1b20c0f08aef6d88a62ca077c";
     };
     dependencies = [
-      sources."coffee-script-1.12.4"
+      sources."coffee-script-1.12.5"
       (sources."jade-1.11.0" // {
         dependencies = [
           sources."character-parser-1.2.1"
@@ -25546,7 +25675,7 @@ in
               })
             ];
           })
-          (sources."uglify-js-2.8.20" // {
+          (sources."uglify-js-2.8.22" // {
             dependencies = [
               sources."source-map-0.5.6"
               (sources."yargs-3.10.0" // {
@@ -25627,7 +25756,7 @@ in
       })
       (sources."msgpack-1.0.2" // {
         dependencies = [
-          sources."nan-2.5.1"
+          sources."nan-2.6.2"
         ];
       })
     ];
@@ -25736,14 +25865,14 @@ in
           sources."replace-ext-0.0.1"
           (sources."through2-2.0.3" // {
             dependencies = [
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."inherits-2.0.3"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -25778,7 +25907,7 @@ in
                 dependencies = [
                   (sources."arr-diff-2.0.0" // {
                     dependencies = [
-                      sources."arr-flatten-1.0.1"
+                      sources."arr-flatten-1.0.2"
                     ];
                   })
                   sources."array-unique-0.2.1"
@@ -25983,7 +26112,7 @@ in
               })
               (sources."minimatch-2.0.10" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -26124,7 +26253,7 @@ in
           sources."inherits-2.0.3"
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -26190,7 +26319,7 @@ in
           })
           (sources."minimatch-2.0.10" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -26283,7 +26412,7 @@ in
           sources."inherits-2.0.3"
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -26307,7 +26436,7 @@ in
               sources."amdefine-1.0.1"
             ];
           })
-          (sources."uglify-js-2.8.20" // {
+          (sources."uglify-js-2.8.22" // {
             dependencies = [
               sources."source-map-0.5.6"
               (sources."yargs-3.10.0" // {
@@ -26358,7 +26487,7 @@ in
           })
         ];
       })
-      (sources."js-yaml-3.8.2" // {
+      (sources."js-yaml-3.8.3" // {
         dependencies = [
           (sources."argparse-1.0.9" // {
             dependencies = [
@@ -26482,7 +26611,7 @@ in
       })
       (sources."minimatch-3.0.3" // {
         dependencies = [
-          (sources."brace-expansion-1.1.6" // {
+          (sources."brace-expansion-1.1.7" // {
             dependencies = [
               sources."balanced-match-0.4.2"
               sources."concat-map-0.0.1"
@@ -26535,10 +26664,10 @@ in
   js-yaml = nodeEnv.buildNodePackage {
     name = "js-yaml";
     packageName = "js-yaml";
-    version = "3.8.2";
+    version = "3.8.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.8.2.tgz";
-      sha1 = "02d3e2c0f6beab20248d412c352203827d786721";
+      url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.8.3.tgz";
+      sha1 = "33a05ec481c850c8875929166fe1beb61c728766";
     };
     dependencies = [
       (sources."argparse-1.0.9" // {
@@ -26559,10 +26688,10 @@ in
   karma = nodeEnv.buildNodePackage {
     name = "karma";
     packageName = "karma";
-    version = "1.5.0";
+    version = "1.6.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/karma/-/karma-1.5.0.tgz";
-      sha1 = "9c4c14f0400bef2c04c8e8e6bff59371025cc009";
+      url = "https://registry.npmjs.org/karma/-/karma-1.6.0.tgz";
+      sha1 = "0e871d4527d5eac56c41d181f03c5c0a7e6dbf3e";
     };
     dependencies = [
       sources."bluebird-3.5.0"
@@ -26595,7 +26724,7 @@ in
               sources."unpipe-1.0.0"
             ];
           })
-          (sources."type-is-1.6.14" // {
+          (sources."type-is-1.6.15" // {
             dependencies = [
               sources."media-typer-0.3.0"
               (sources."mime-types-2.1.15" // {
@@ -26616,7 +26745,7 @@ in
                 dependencies = [
                   (sources."arr-diff-2.0.0" // {
                     dependencies = [
-                      sources."arr-flatten-1.0.1"
+                      sources."arr-flatten-1.0.2"
                     ];
                   })
                   sources."array-unique-0.2.1"
@@ -26702,13 +26831,13 @@ in
           sources."path-is-absolute-1.0.1"
           (sources."readdirp-2.1.0" // {
             dependencies = [
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -26717,7 +26846,7 @@ in
           })
           (sources."fsevents-1.1.1" // {
             dependencies = [
-              sources."nan-2.5.1"
+              sources."nan-2.6.2"
               (sources."node-pre-gyp-0.6.34" // {
                 dependencies = [
                   (sources."mkdirp-0.5.1" // {
@@ -26741,13 +26870,13 @@ in
                       (sources."are-we-there-yet-1.1.2" // {
                         dependencies = [
                           sources."delegates-1.0.0"
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -26781,7 +26910,7 @@ in
                       sources."set-blocking-2.0.0"
                     ];
                   })
-                  (sources."rc-1.2.0" // {
+                  (sources."rc-1.2.1" // {
                     dependencies = [
                       sources."deep-extend-0.4.1"
                       sources."ini-1.3.4"
@@ -26801,14 +26930,14 @@ in
                       })
                       sources."extend-3.0.0"
                       sources."forever-agent-0.6.1"
-                      (sources."form-data-2.1.2" // {
+                      (sources."form-data-2.1.4" // {
                         dependencies = [
                           sources."asynckit-0.4.0"
                         ];
                       })
                       (sources."har-validator-4.2.1" // {
                         dependencies = [
-                          (sources."ajv-4.11.5" // {
+                          (sources."ajv-4.11.6" // {
                             dependencies = [
                               sources."co-4.6.0"
                               (sources."json-stable-stringify-1.0.1" // {
@@ -26840,7 +26969,7 @@ in
                               sources."verror-1.3.6"
                             ];
                           })
-                          (sources."sshpk-1.11.0" // {
+                          (sources."sshpk-1.13.0" // {
                             dependencies = [
                               sources."asn1-0.2.3"
                               sources."assert-plus-1.0.0"
@@ -26897,13 +27026,13 @@ in
                           sources."wrappy-1.0.2"
                         ];
                       })
-                      (sources."readable-stream-2.2.6" // {
+                      (sources."readable-stream-2.2.9" // {
                         dependencies = [
                           sources."buffer-shims-1.0.0"
                           sources."core-util-is-1.0.2"
                           sources."isarray-1.0.0"
                           sources."process-nextick-args-1.0.7"
-                          sources."string_decoder-0.10.31"
+                          sources."string_decoder-1.0.0"
                           sources."util-deprecate-1.0.2"
                         ];
                       })
@@ -27014,7 +27143,7 @@ in
       sources."mime-1.3.4"
       (sources."minimatch-3.0.3" // {
         dependencies = [
-          (sources."brace-expansion-1.1.6" // {
+          (sources."brace-expansion-1.1.7" // {
             dependencies = [
               sources."balanced-match-0.4.2"
               sources."concat-map-0.0.1"
@@ -27366,7 +27495,7 @@ in
                   })
                 ];
               })
-              (sources."type-is-1.6.14" // {
+              (sources."type-is-1.6.15" // {
                 dependencies = [
                   sources."media-typer-0.3.0"
                   (sources."mime-types-2.1.15" // {
@@ -27493,14 +27622,14 @@ in
     dependencies = [
       (sources."through2-2.0.3" // {
         dependencies = [
-          (sources."readable-stream-2.2.6" // {
+          (sources."readable-stream-2.2.9" // {
             dependencies = [
               sources."buffer-shims-1.0.0"
               sources."core-util-is-1.0.2"
               sources."isarray-1.0.0"
               sources."inherits-2.0.3"
               sources."process-nextick-args-1.0.7"
-              sources."string_decoder-0.10.31"
+              sources."string_decoder-1.0.0"
               sources."util-deprecate-1.0.2"
             ];
           })
@@ -27544,7 +27673,7 @@ in
                   sources."inherits-2.0.3"
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -27574,7 +27703,7 @@ in
                 dependencies = [
                   (sources."arr-diff-2.0.0" // {
                     dependencies = [
-                      sources."arr-flatten-1.0.1"
+                      sources."arr-flatten-1.0.2"
                     ];
                   })
                   sources."array-unique-0.2.1"
@@ -27701,14 +27830,14 @@ in
             ];
           })
           sources."object-assign-4.1.1"
-          (sources."readable-stream-2.2.6" // {
+          (sources."readable-stream-2.2.9" // {
             dependencies = [
               sources."buffer-shims-1.0.0"
               sources."core-util-is-1.0.2"
               sources."isarray-1.0.0"
               sources."inherits-2.0.3"
               sources."process-nextick-args-1.0.7"
-              sources."string_decoder-0.10.31"
+              sources."string_decoder-1.0.0"
               sources."util-deprecate-1.0.2"
             ];
           })
@@ -27819,7 +27948,7 @@ in
           sources."inherits-2.0.3"
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -27912,13 +28041,13 @@ in
             dependencies = [
               sources."inherits-2.0.3"
               sources."typedarray-0.0.6"
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -27932,7 +28061,7 @@ in
           })
           (sources."normalize-package-data-2.3.6" // {
             dependencies = [
-              sources."hosted-git-info-2.4.1"
+              sources."hosted-git-info-2.4.2"
               (sources."is-builtin-module-1.0.0" // {
                 dependencies = [
                   sources."builtin-modules-1.1.1"
@@ -27952,7 +28081,7 @@ in
           })
           (sources."npm-package-arg-4.2.1" // {
             dependencies = [
-              sources."hosted-git-info-2.4.1"
+              sources."hosted-git-info-2.4.2"
             ];
           })
           (sources."once-1.4.0" // {
@@ -27972,14 +28101,14 @@ in
               })
               sources."extend-3.0.0"
               sources."forever-agent-0.6.1"
-              (sources."form-data-2.1.2" // {
+              (sources."form-data-2.1.4" // {
                 dependencies = [
                   sources."asynckit-0.4.0"
                 ];
               })
               (sources."har-validator-4.2.1" // {
                 dependencies = [
-                  (sources."ajv-4.11.5" // {
+                  (sources."ajv-4.11.6" // {
                     dependencies = [
                       sources."co-4.6.0"
                       (sources."json-stable-stringify-1.0.1" // {
@@ -28011,7 +28140,7 @@ in
                       sources."verror-1.3.6"
                     ];
                   })
-                  (sources."sshpk-1.11.0" // {
+                  (sources."sshpk-1.13.0" // {
                     dependencies = [
                       sources."asn1-0.2.3"
                       sources."assert-plus-1.0.0"
@@ -28062,7 +28191,7 @@ in
                   sources."inherits-2.0.3"
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -28081,14 +28210,14 @@ in
               (sources."are-we-there-yet-1.1.2" // {
                 dependencies = [
                   sources."delegates-1.0.0"
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."inherits-2.0.3"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -28182,7 +28311,7 @@ in
                       })
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -28278,7 +28407,7 @@ in
       sources."graceful-fs-4.1.11"
       (sources."minimatch-3.0.3" // {
         dependencies = [
-          (sources."brace-expansion-1.1.6" // {
+          (sources."brace-expansion-1.1.7" // {
             dependencies = [
               sources."balanced-match-0.4.2"
               sources."concat-map-0.0.1"
@@ -28301,14 +28430,14 @@ in
           (sources."are-we-there-yet-1.1.2" // {
             dependencies = [
               sources."delegates-1.0.0"
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."inherits-2.0.3"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -28360,14 +28489,14 @@ in
           })
           sources."extend-3.0.0"
           sources."forever-agent-0.6.1"
-          (sources."form-data-2.1.2" // {
+          (sources."form-data-2.1.4" // {
             dependencies = [
               sources."asynckit-0.4.0"
             ];
           })
           (sources."har-validator-4.2.1" // {
             dependencies = [
-              (sources."ajv-4.11.5" // {
+              (sources."ajv-4.11.6" // {
                 dependencies = [
                   sources."co-4.6.0"
                   (sources."json-stable-stringify-1.0.1" // {
@@ -28399,7 +28528,7 @@ in
                   sources."verror-1.3.6"
                 ];
               })
-              (sources."sshpk-1.11.0" // {
+              (sources."sshpk-1.13.0" // {
                 dependencies = [
                   sources."asn1-0.2.3"
                   sources."assert-plus-1.0.0"
@@ -28461,10 +28590,10 @@ in
   node-inspector = nodeEnv.buildNodePackage {
     name = "node-inspector";
     packageName = "node-inspector";
-    version = "1.0.0";
+    version = "1.1.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/node-inspector/-/node-inspector-1.0.0.tgz";
-      sha1 = "c6221619e3f0bd8f1f24e0e882a65eb793f69d37";
+      url = "https://registry.npmjs.org/node-inspector/-/node-inspector-1.1.0.tgz";
+      sha1 = "0f8ffffbf9a9b86540eb33c1d64e7ba546457622";
     };
     dependencies = [
       sources."async-0.9.2"
@@ -28515,7 +28644,7 @@ in
                 dependencies = [
                   (sources."bplist-parser-0.1.1" // {
                     dependencies = [
-                      sources."big-integer-1.6.17"
+                      sources."big-integer-1.6.19"
                     ];
                   })
                   (sources."meow-3.7.0" // {
@@ -28539,7 +28668,7 @@ in
                       sources."map-obj-1.0.1"
                       (sources."normalize-package-data-2.3.6" // {
                         dependencies = [
-                          sources."hosted-git-info-2.4.1"
+                          sources."hosted-git-info-2.4.2"
                           (sources."is-builtin-module-1.0.0" // {
                             dependencies = [
                               sources."builtin-modules-1.1.1"
@@ -28722,7 +28851,7 @@ in
           sources."serve-static-1.12.1"
           sources."setprototypeof-1.0.3"
           sources."statuses-1.3.1"
-          (sources."type-is-1.6.14" // {
+          (sources."type-is-1.6.15" // {
             dependencies = [
               sources."media-typer-0.3.0"
               (sources."mime-types-2.1.15" // {
@@ -28746,7 +28875,7 @@ in
           sources."inherits-2.0.3"
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -28762,7 +28891,7 @@ in
         ];
       })
       sources."path-is-absolute-1.0.1"
-      (sources."rc-1.2.0" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."deep-extend-0.4.1"
           sources."ini-1.3.4"
@@ -28786,7 +28915,7 @@ in
       })
       (sources."v8-debug-1.0.1" // {
         dependencies = [
-          sources."nan-2.5.1"
+          sources."nan-2.6.2"
           (sources."node-pre-gyp-0.6.34" // {
             dependencies = [
               (sources."mkdirp-0.5.1" // {
@@ -28810,14 +28939,14 @@ in
                   (sources."are-we-there-yet-1.1.2" // {
                     dependencies = [
                       sources."delegates-1.0.0"
-                      (sources."readable-stream-2.2.6" // {
+                      (sources."readable-stream-2.2.9" // {
                         dependencies = [
                           sources."buffer-shims-1.0.0"
                           sources."core-util-is-1.0.2"
                           sources."isarray-1.0.0"
                           sources."inherits-2.0.3"
                           sources."process-nextick-args-1.0.7"
-                          sources."string_decoder-0.10.31"
+                          sources."string_decoder-1.0.0"
                           sources."util-deprecate-1.0.2"
                         ];
                       })
@@ -28863,14 +28992,14 @@ in
                   })
                   sources."extend-3.0.0"
                   sources."forever-agent-0.6.1"
-                  (sources."form-data-2.1.2" // {
+                  (sources."form-data-2.1.4" // {
                     dependencies = [
                       sources."asynckit-0.4.0"
                     ];
                   })
                   (sources."har-validator-4.2.1" // {
                     dependencies = [
-                      (sources."ajv-4.11.5" // {
+                      (sources."ajv-4.11.6" // {
                         dependencies = [
                           sources."co-4.6.0"
                           (sources."json-stable-stringify-1.0.1" // {
@@ -28902,7 +29031,7 @@ in
                           sources."verror-1.3.6"
                         ];
                       })
-                      (sources."sshpk-1.11.0" // {
+                      (sources."sshpk-1.13.0" // {
                         dependencies = [
                           sources."asn1-0.2.3"
                           sources."assert-plus-1.0.0"
@@ -28952,7 +29081,7 @@ in
                       sources."inherits-2.0.3"
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -28994,7 +29123,7 @@ in
                       sources."inherits-2.0.3"
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -29009,14 +29138,14 @@ in
                       sources."wrappy-1.0.2"
                     ];
                   })
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."inherits-2.0.3"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -29029,7 +29158,7 @@ in
       })
       (sources."v8-profiler-5.7.0" // {
         dependencies = [
-          sources."nan-2.5.1"
+          sources."nan-2.6.2"
           (sources."node-pre-gyp-0.6.34" // {
             dependencies = [
               (sources."mkdirp-0.5.1" // {
@@ -29053,14 +29182,14 @@ in
                   (sources."are-we-there-yet-1.1.2" // {
                     dependencies = [
                       sources."delegates-1.0.0"
-                      (sources."readable-stream-2.2.6" // {
+                      (sources."readable-stream-2.2.9" // {
                         dependencies = [
                           sources."buffer-shims-1.0.0"
                           sources."core-util-is-1.0.2"
                           sources."isarray-1.0.0"
                           sources."inherits-2.0.3"
                           sources."process-nextick-args-1.0.7"
-                          sources."string_decoder-0.10.31"
+                          sources."string_decoder-1.0.0"
                           sources."util-deprecate-1.0.2"
                         ];
                       })
@@ -29106,14 +29235,14 @@ in
                   })
                   sources."extend-3.0.0"
                   sources."forever-agent-0.6.1"
-                  (sources."form-data-2.1.2" // {
+                  (sources."form-data-2.1.4" // {
                     dependencies = [
                       sources."asynckit-0.4.0"
                     ];
                   })
                   (sources."har-validator-4.2.1" // {
                     dependencies = [
-                      (sources."ajv-4.11.5" // {
+                      (sources."ajv-4.11.6" // {
                         dependencies = [
                           sources."co-4.6.0"
                           (sources."json-stable-stringify-1.0.1" // {
@@ -29145,7 +29274,7 @@ in
                           sources."verror-1.3.6"
                         ];
                       })
-                      (sources."sshpk-1.11.0" // {
+                      (sources."sshpk-1.13.0" // {
                         dependencies = [
                           sources."asn1-0.2.3"
                           sources."assert-plus-1.0.0"
@@ -29195,7 +29324,7 @@ in
                       sources."inherits-2.0.3"
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -29237,7 +29366,7 @@ in
                       sources."inherits-2.0.3"
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -29252,14 +29381,14 @@ in
                       sources."wrappy-1.0.2"
                     ];
                   })
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."inherits-2.0.3"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -29361,14 +29490,14 @@ in
           (sources."are-we-there-yet-1.1.2" // {
             dependencies = [
               sources."delegates-1.0.0"
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."inherits-2.0.3"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -29402,7 +29531,7 @@ in
           sources."set-blocking-2.0.0"
         ];
       })
-      (sources."rc-1.2.0" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."deep-extend-0.4.1"
           sources."ini-1.3.4"
@@ -29422,14 +29551,14 @@ in
           })
           sources."extend-3.0.0"
           sources."forever-agent-0.6.1"
-          (sources."form-data-2.1.2" // {
+          (sources."form-data-2.1.4" // {
             dependencies = [
               sources."asynckit-0.4.0"
             ];
           })
           (sources."har-validator-4.2.1" // {
             dependencies = [
-              (sources."ajv-4.11.5" // {
+              (sources."ajv-4.11.6" // {
                 dependencies = [
                   sources."co-4.6.0"
                   (sources."json-stable-stringify-1.0.1" // {
@@ -29461,7 +29590,7 @@ in
                   sources."verror-1.3.6"
                 ];
               })
-              (sources."sshpk-1.11.0" // {
+              (sources."sshpk-1.13.0" // {
                 dependencies = [
                   sources."asn1-0.2.3"
                   sources."assert-plus-1.0.0"
@@ -29511,7 +29640,7 @@ in
               sources."inherits-2.0.3"
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -29559,7 +29688,7 @@ in
               sources."inherits-2.0.3"
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -29574,14 +29703,14 @@ in
               sources."wrappy-1.0.2"
             ];
           })
-          (sources."readable-stream-2.2.6" // {
+          (sources."readable-stream-2.2.9" // {
             dependencies = [
               sources."buffer-shims-1.0.0"
               sources."core-util-is-1.0.2"
               sources."isarray-1.0.0"
               sources."inherits-2.0.3"
               sources."process-nextick-args-1.0.7"
-              sources."string_decoder-0.10.31"
+              sources."string_decoder-1.0.0"
               sources."util-deprecate-1.0.2"
             ];
           })
@@ -29615,7 +29744,7 @@ in
                 dependencies = [
                   (sources."arr-diff-2.0.0" // {
                     dependencies = [
-                      sources."arr-flatten-1.0.1"
+                      sources."arr-flatten-1.0.2"
                     ];
                   })
                   sources."array-unique-0.2.1"
@@ -29702,13 +29831,13 @@ in
           (sources."readdirp-2.1.0" // {
             dependencies = [
               sources."graceful-fs-4.1.11"
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -29717,7 +29846,7 @@ in
           })
           (sources."fsevents-1.1.1" // {
             dependencies = [
-              sources."nan-2.5.1"
+              sources."nan-2.6.2"
               (sources."node-pre-gyp-0.6.34" // {
                 dependencies = [
                   (sources."mkdirp-0.5.1" // {
@@ -29741,13 +29870,13 @@ in
                       (sources."are-we-there-yet-1.1.2" // {
                         dependencies = [
                           sources."delegates-1.0.0"
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -29781,7 +29910,7 @@ in
                       sources."set-blocking-2.0.0"
                     ];
                   })
-                  (sources."rc-1.2.0" // {
+                  (sources."rc-1.2.1" // {
                     dependencies = [
                       sources."deep-extend-0.4.1"
                       sources."ini-1.3.4"
@@ -29801,14 +29930,14 @@ in
                       })
                       sources."extend-3.0.0"
                       sources."forever-agent-0.6.1"
-                      (sources."form-data-2.1.2" // {
+                      (sources."form-data-2.1.4" // {
                         dependencies = [
                           sources."asynckit-0.4.0"
                         ];
                       })
                       (sources."har-validator-4.2.1" // {
                         dependencies = [
-                          (sources."ajv-4.11.5" // {
+                          (sources."ajv-4.11.6" // {
                             dependencies = [
                               sources."co-4.6.0"
                               (sources."json-stable-stringify-1.0.1" // {
@@ -29840,7 +29969,7 @@ in
                               sources."verror-1.3.6"
                             ];
                           })
-                          (sources."sshpk-1.11.0" // {
+                          (sources."sshpk-1.13.0" // {
                             dependencies = [
                               sources."asn1-0.2.3"
                               sources."assert-plus-1.0.0"
@@ -29920,13 +30049,13 @@ in
                           sources."wrappy-1.0.2"
                         ];
                       })
-                      (sources."readable-stream-2.2.6" // {
+                      (sources."readable-stream-2.2.9" // {
                         dependencies = [
                           sources."buffer-shims-1.0.0"
                           sources."core-util-is-1.0.2"
                           sources."isarray-1.0.0"
                           sources."process-nextick-args-1.0.7"
-                          sources."string_decoder-0.10.31"
+                          sources."string_decoder-1.0.0"
                           sources."util-deprecate-1.0.2"
                         ];
                       })
@@ -29975,7 +30104,7 @@ in
       })
       (sources."minimatch-3.0.3" // {
         dependencies = [
-          (sources."brace-expansion-1.1.6" // {
+          (sources."brace-expansion-1.1.7" // {
             dependencies = [
               sources."balanced-match-0.4.2"
               sources."concat-map-0.0.1"
@@ -30075,13 +30204,13 @@ in
                             ];
                           })
                           sources."inherits-2.0.3"
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -30106,14 +30235,14 @@ in
                               sources."pinkie-2.0.4"
                             ];
                           })
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."inherits-2.0.3"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -30124,7 +30253,7 @@ in
                   })
                   (sources."registry-url-3.1.0" // {
                     dependencies = [
-                      (sources."rc-1.2.0" // {
+                      (sources."rc-1.2.1" // {
                         dependencies = [
                           sources."deep-extend-0.4.1"
                           sources."ini-1.3.4"
@@ -30212,7 +30341,7 @@ in
               sources."unpipe-1.0.0"
             ];
           })
-          (sources."type-is-1.6.14" // {
+          (sources."type-is-1.6.15" // {
             dependencies = [
               (sources."mime-types-2.1.15" // {
                 dependencies = [
@@ -30249,13 +30378,13 @@ in
               sources."domhandler-2.3.0"
               sources."domutils-1.5.1"
               sources."inherits-2.0.3"
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -30289,7 +30418,7 @@ in
       })
       (sources."cron-1.2.1" // {
         dependencies = [
-          (sources."moment-timezone-0.5.11" // {
+          (sources."moment-timezone-0.5.13" // {
             dependencies = [
               sources."moment-2.18.1"
             ];
@@ -30378,7 +30507,7 @@ in
               })
             ];
           })
-          (sources."type-is-1.6.14" // {
+          (sources."type-is-1.6.15" // {
             dependencies = [
               (sources."mime-types-2.1.15" // {
                 dependencies = [
@@ -30460,14 +30589,15 @@ in
               })
             ];
           })
-          (sources."help-me-1.0.1" // {
+          (sources."help-me-1.1.0" // {
             dependencies = [
               sources."callback-stream-1.1.0"
-              (sources."glob-stream-5.3.5" // {
+              (sources."glob-stream-6.1.0" // {
                 dependencies = [
                   sources."extend-3.0.0"
-                  (sources."glob-5.0.15" // {
+                  (sources."glob-7.1.1" // {
                     dependencies = [
+                      sources."fs.realpath-1.0.0"
                       (sources."inflight-1.0.6" // {
                         dependencies = [
                           sources."wrappy-1.0.2"
@@ -30475,7 +30605,7 @@ in
                       })
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -30501,104 +30631,50 @@ in
                       sources."path-dirname-1.0.2"
                     ];
                   })
-                  (sources."micromatch-2.3.11" // {
+                  sources."is-negated-glob-1.0.0"
+                  (sources."ordered-read-streams-1.0.0" // {
                     dependencies = [
-                      (sources."arr-diff-2.0.0" // {
-                        dependencies = [
-                          sources."arr-flatten-1.0.1"
-                        ];
-                      })
-                      sources."array-unique-0.2.1"
-                      (sources."braces-1.8.5" // {
+                      sources."is-stream-1.1.0"
+                    ];
+                  })
+                  (sources."pumpify-1.3.5" // {
+                    dependencies = [
+                      (sources."duplexify-3.5.0" // {
                         dependencies = [
-                          (sources."expand-range-1.8.2" // {
+                          (sources."end-of-stream-1.0.0" // {
                             dependencies = [
-                              (sources."fill-range-2.2.3" // {
+                              (sources."once-1.3.3" // {
                                 dependencies = [
-                                  sources."is-number-2.1.0"
-                                  (sources."isobject-2.1.0" // {
-                                    dependencies = [
-                                      sources."isarray-1.0.0"
-                                    ];
-                                  })
-                                  sources."randomatic-1.1.6"
-                                  sources."repeat-string-1.6.1"
+                                  sources."wrappy-1.0.2"
                                 ];
                               })
                             ];
                           })
-                          sources."preserve-0.2.0"
-                          sources."repeat-element-1.1.2"
-                        ];
-                      })
-                      (sources."expand-brackets-0.1.5" // {
-                        dependencies = [
-                          sources."is-posix-bracket-0.1.1"
-                        ];
-                      })
-                      sources."extglob-0.3.2"
-                      sources."filename-regex-2.0.0"
-                      sources."is-extglob-1.0.0"
-                      sources."is-glob-2.0.1"
-                      (sources."kind-of-3.1.0" // {
-                        dependencies = [
-                          sources."is-buffer-1.1.5"
-                        ];
-                      })
-                      (sources."normalize-path-2.1.1" // {
-                        dependencies = [
-                          sources."remove-trailing-separator-1.0.1"
+                          sources."stream-shift-1.0.0"
                         ];
                       })
-                      (sources."object.omit-2.0.1" // {
+                    ];
+                  })
+                  sources."remove-trailing-separator-1.0.1"
+                  (sources."to-absolute-glob-2.0.1" // {
+                    dependencies = [
+                      (sources."extend-shallow-2.0.1" // {
                         dependencies = [
-                          (sources."for-own-0.1.5" // {
-                            dependencies = [
-                              sources."for-in-1.0.2"
-                            ];
-                          })
                           sources."is-extendable-0.1.1"
                         ];
                       })
-                      (sources."parse-glob-3.0.4" // {
+                      (sources."is-absolute-0.2.6" // {
                         dependencies = [
-                          (sources."glob-base-0.3.0" // {
+                          (sources."is-relative-0.2.1" // {
                             dependencies = [
-                              sources."glob-parent-2.0.0"
+                              (sources."is-unc-path-0.1.2" // {
+                                dependencies = [
+                                  sources."unc-path-regex-0.1.2"
+                                ];
+                              })
                             ];
                           })
-                          sources."is-dotfile-1.0.2"
-                        ];
-                      })
-                      (sources."regex-cache-0.4.3" // {
-                        dependencies = [
-                          sources."is-equal-shallow-0.1.3"
-                          sources."is-primitive-2.0.0"
-                        ];
-                      })
-                    ];
-                  })
-                  (sources."ordered-read-streams-0.3.0" // {
-                    dependencies = [
-                      sources."is-stream-1.1.0"
-                    ];
-                  })
-                  (sources."through2-0.6.5" // {
-                    dependencies = [
-                      (sources."readable-stream-1.0.34" // {
-                        dependencies = [
-                          sources."core-util-is-1.0.2"
-                          sources."isarray-0.0.1"
-                          sources."string_decoder-0.10.31"
-                        ];
-                      })
-                    ];
-                  })
-                  (sources."to-absolute-glob-0.1.1" // {
-                    dependencies = [
-                      (sources."extend-shallow-2.0.1" // {
-                        dependencies = [
-                          sources."is-extendable-0.1.1"
+                          sources."is-windows-0.2.0"
                         ];
                       })
                     ];
@@ -30610,11 +30686,7 @@ in
                           sources."jsonify-0.0.0"
                         ];
                       })
-                      (sources."through2-filter-2.0.0" // {
-                        dependencies = [
-                          sources."through2-2.0.3"
-                        ];
-                      })
+                      sources."through2-filter-2.0.0"
                     ];
                   })
                 ];
@@ -30624,19 +30696,20 @@ in
           })
           sources."inherits-2.0.3"
           sources."minimist-1.2.0"
-          (sources."mqtt-packet-5.2.2" // {
+          (sources."mqtt-packet-5.3.0" // {
             dependencies = [
               sources."bl-1.2.0"
               sources."process-nextick-args-1.0.7"
+              sources."safe-buffer-5.0.1"
             ];
           })
-          (sources."readable-stream-2.2.6" // {
+          (sources."readable-stream-2.2.9" // {
             dependencies = [
               sources."buffer-shims-1.0.0"
               sources."core-util-is-1.0.2"
               sources."isarray-1.0.0"
               sources."process-nextick-args-1.0.7"
-              sources."string_decoder-0.10.31"
+              sources."string_decoder-1.0.0"
               sources."util-deprecate-1.0.2"
             ];
           })
@@ -30832,7 +30905,7 @@ in
               sources."forever-agent-0.6.1"
               (sources."form-data-1.0.1" // {
                 dependencies = [
-                  (sources."async-2.2.0" // {
+                  (sources."async-2.3.0" // {
                     dependencies = [
                       sources."lodash-4.17.4"
                     ];
@@ -30901,7 +30974,7 @@ in
                       sources."verror-1.3.6"
                     ];
                   })
-                  (sources."sshpk-1.11.0" // {
+                  (sources."sshpk-1.13.0" // {
                     dependencies = [
                       sources."asn1-0.2.3"
                       sources."assert-plus-1.0.0"
@@ -30937,7 +31010,7 @@ in
           })
         ];
       })
-      (sources."node-red-node-email-0.1.21" // {
+      (sources."node-red-node-email-0.1.22" // {
         dependencies = [
           (sources."nodemailer-1.11.0" // {
             dependencies = [
@@ -31054,14 +31127,14 @@ in
               })
               sources."extend-3.0.0"
               sources."forever-agent-0.6.1"
-              (sources."form-data-2.1.2" // {
+              (sources."form-data-2.1.4" // {
                 dependencies = [
                   sources."asynckit-0.4.0"
                 ];
               })
               (sources."har-validator-4.2.1" // {
                 dependencies = [
-                  (sources."ajv-4.11.5" // {
+                  (sources."ajv-4.11.6" // {
                     dependencies = [
                       sources."co-4.6.0"
                       (sources."json-stable-stringify-1.0.1" // {
@@ -31093,7 +31166,7 @@ in
                       sources."verror-1.3.6"
                     ];
                   })
-                  (sources."sshpk-1.11.0" // {
+                  (sources."sshpk-1.13.0" // {
                     dependencies = [
                       sources."asn1-0.2.3"
                       sources."assert-plus-1.0.0"
@@ -31131,7 +31204,7 @@ in
           })
         ];
       })
-      sources."node-red-node-rbe-0.1.6"
+      sources."node-red-node-rbe-0.1.8"
       (sources."bcrypt-1.0.2" // {
         dependencies = [
           sources."bindings-1.2.1"
@@ -31148,14 +31221,14 @@ in
                   (sources."are-we-there-yet-1.1.2" // {
                     dependencies = [
                       sources."delegates-1.0.0"
-                      (sources."readable-stream-2.2.6" // {
+                      (sources."readable-stream-2.2.9" // {
                         dependencies = [
                           sources."buffer-shims-1.0.0"
                           sources."core-util-is-1.0.2"
                           sources."isarray-1.0.0"
                           sources."inherits-2.0.3"
                           sources."process-nextick-args-1.0.7"
-                          sources."string_decoder-0.10.31"
+                          sources."string_decoder-1.0.0"
                           sources."util-deprecate-1.0.2"
                         ];
                       })
@@ -31209,14 +31282,14 @@ in
                   })
                   sources."extend-3.0.0"
                   sources."forever-agent-0.6.1"
-                  (sources."form-data-2.1.2" // {
+                  (sources."form-data-2.1.4" // {
                     dependencies = [
                       sources."asynckit-0.4.0"
                     ];
                   })
                   (sources."har-validator-4.2.1" // {
                     dependencies = [
-                      (sources."ajv-4.11.5" // {
+                      (sources."ajv-4.11.6" // {
                         dependencies = [
                           sources."co-4.6.0"
                           (sources."json-stable-stringify-1.0.1" // {
@@ -31248,7 +31321,7 @@ in
                           sources."verror-1.3.6"
                         ];
                       })
-                      (sources."sshpk-1.11.0" // {
+                      (sources."sshpk-1.13.0" // {
                         dependencies = [
                           sources."asn1-0.2.3"
                           sources."assert-plus-1.0.0"
@@ -31297,7 +31370,7 @@ in
                       sources."inherits-2.0.3"
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -31344,7 +31417,7 @@ in
                       sources."inherits-2.0.3"
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -31453,7 +31526,7 @@ in
       (sources."config-0.4.15" // {
         dependencies = [
           sources."js-yaml-0.3.7"
-          sources."coffee-script-1.12.4"
+          sources."coffee-script-1.12.5"
           (sources."vows-0.8.1" // {
             dependencies = [
               sources."eyes-0.1.8"
@@ -31514,7 +31587,7 @@ in
       sources."moment-2.1.0"
       (sources."nodemailer-0.3.35" // {
         dependencies = [
-          (sources."mailcomposer-4.0.1" // {
+          (sources."mailcomposer-4.0.2" // {
             dependencies = [
               (sources."buildmail-4.0.1" // {
                 dependencies = [
@@ -31580,10 +31653,10 @@ in
   npm = nodeEnv.buildNodePackage {
     name = "npm";
     packageName = "npm";
-    version = "4.4.4";
+    version = "4.5.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm/-/npm-4.4.4.tgz";
-      sha1 = "d5ec661923a06bcd6a6eec3d0433a9da3fd67e37";
+      url = "https://registry.npmjs.org/npm/-/npm-4.5.0.tgz";
+      sha1 = "dc6a31f28807e6db980ed5083315667dcc8d0475";
     };
     dependencies = [
       (sources."JSONStream-1.3.1" // {
@@ -31632,7 +31705,7 @@ in
             dependencies = [
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -31649,7 +31722,7 @@ in
           sources."fs.realpath-1.0.0"
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -31662,12 +31735,12 @@ in
       })
       sources."graceful-fs-4.1.11"
       sources."has-unicode-2.0.1"
-      sources."hosted-git-info-2.2.0"
+      sources."hosted-git-info-2.4.2"
       sources."iferr-0.1.5"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
       sources."ini-1.3.4"
-      (sources."init-package-json-1.9.5" // {
+      (sources."init-package-json-1.9.6" // {
         dependencies = [
           sources."promzard-0.3.0"
         ];
@@ -31734,11 +31807,11 @@ in
           sources."run-queue-1.0.3"
         ];
       })
-      (sources."node-gyp-3.5.0" // {
+      (sources."node-gyp-3.6.0" // {
         dependencies = [
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -31763,7 +31836,7 @@ in
       sources."npm-cache-filename-1.0.2"
       sources."npm-install-checks-3.0.0"
       sources."npm-package-arg-4.2.1"
-      (sources."npm-registry-client-7.4.6" // {
+      (sources."npm-registry-client-8.1.1" // {
         dependencies = [
           (sources."concat-stream-1.6.0" // {
             dependencies = [
@@ -31831,13 +31904,13 @@ in
         ];
       })
       sources."read-package-tree-5.1.5"
-      (sources."readable-stream-2.2.6" // {
+      (sources."readable-stream-2.2.9" // {
         dependencies = [
           sources."buffer-shims-1.0.0"
           sources."core-util-is-1.0.2"
           sources."isarray-1.0.0"
           sources."process-nextick-args-1.0.7"
-          sources."string_decoder-0.10.31"
+          sources."string_decoder-1.0.0"
           sources."util-deprecate-1.0.2"
         ];
       })
@@ -31854,14 +31927,14 @@ in
           })
           sources."extend-3.0.0"
           sources."forever-agent-0.6.1"
-          (sources."form-data-2.1.2" // {
+          (sources."form-data-2.1.4" // {
             dependencies = [
               sources."asynckit-0.4.0"
             ];
           })
           (sources."har-validator-4.2.1" // {
             dependencies = [
-              (sources."ajv-4.11.5" // {
+              (sources."ajv-4.11.6" // {
                 dependencies = [
                   sources."co-4.6.0"
                   (sources."json-stable-stringify-1.0.1" // {
@@ -31893,7 +31966,7 @@ in
                   sources."verror-1.3.6"
                 ];
               })
-              (sources."sshpk-1.11.0" // {
+              (sources."sshpk-1.13.0" // {
                 dependencies = [
                   sources."asn1-0.2.3"
                   sources."assert-plus-1.0.0"
@@ -32084,9 +32157,9 @@ in
                       })
                     ];
                   })
-                  (sources."registry-auth-token-3.1.0" // {
+                  (sources."registry-auth-token-3.1.2" // {
                     dependencies = [
-                      (sources."rc-1.2.0" // {
+                      (sources."rc-1.2.1" // {
                         dependencies = [
                           sources."deep-extend-0.4.1"
                           sources."minimist-1.2.0"
@@ -32097,7 +32170,7 @@ in
                   })
                   (sources."registry-url-3.1.0" // {
                     dependencies = [
-                      (sources."rc-1.2.0" // {
+                      (sources."rc-1.2.1" // {
                         dependencies = [
                           sources."deep-extend-0.4.1"
                           sources."minimist-1.2.0"
@@ -32187,14 +32260,14 @@ in
               })
               sources."extend-3.0.0"
               sources."forever-agent-0.6.1"
-              (sources."form-data-2.1.2" // {
+              (sources."form-data-2.1.4" // {
                 dependencies = [
                   sources."asynckit-0.4.0"
                 ];
               })
               (sources."har-validator-4.2.1" // {
                 dependencies = [
-                  (sources."ajv-4.11.5" // {
+                  (sources."ajv-4.11.6" // {
                     dependencies = [
                       sources."co-4.6.0"
                       (sources."json-stable-stringify-1.0.1" // {
@@ -32226,7 +32299,7 @@ in
                       sources."verror-1.3.6"
                     ];
                   })
-                  (sources."sshpk-1.11.0" // {
+                  (sources."sshpk-1.13.0" // {
                     dependencies = [
                       sources."asn1-0.2.3"
                       sources."assert-plus-1.0.0"
@@ -32281,7 +32354,7 @@ in
                   sources."inherits-2.0.3"
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -32306,14 +32379,14 @@ in
               (sources."are-we-there-yet-1.1.2" // {
                 dependencies = [
                   sources."delegates-1.0.0"
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."inherits-2.0.3"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -32403,7 +32476,7 @@ in
                       })
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -32453,7 +32526,7 @@ in
         ];
       })
       sources."findit-1.2.0"
-      sources."coffee-script-1.12.4"
+      sources."coffee-script-1.12.5"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -32465,10 +32538,10 @@ in
   npm-check-updates = nodeEnv.buildNodePackage {
     name = "npm-check-updates";
     packageName = "npm-check-updates";
-    version = "2.10.4";
+    version = "2.10.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-2.10.4.tgz";
-      sha1 = "0833dd707f983a04fdcd615afb860ce82b1e54a2";
+      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-2.10.5.tgz";
+      sha1 = "2d047e3a24d676e0c99cf7221361088dcc247a6a";
     };
     dependencies = [
       sources."bluebird-3.5.0"
@@ -32558,7 +32631,7 @@ in
                 dependencies = [
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -32575,7 +32648,7 @@ in
               sources."fs.realpath-1.0.0"
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -32593,7 +32666,7 @@ in
           sources."inflight-1.0.6"
           sources."inherits-2.0.3"
           sources."ini-1.3.4"
-          (sources."init-package-json-1.9.5" // {
+          (sources."init-package-json-1.9.6" // {
             dependencies = [
               sources."promzard-0.3.0"
               (sources."validate-npm-package-name-3.0.0" // {
@@ -32623,7 +32696,7 @@ in
             dependencies = [
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -32704,13 +32777,13 @@ in
               (sources."concat-stream-1.6.0" // {
                 dependencies = [
                   sources."typedarray-0.0.6"
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -32879,7 +32952,7 @@ in
                       sources."verror-1.3.6"
                     ];
                   })
-                  (sources."sshpk-1.11.0" // {
+                  (sources."sshpk-1.13.0" // {
                     dependencies = [
                       sources."asn1-0.2.3"
                       sources."assert-plus-1.0.0"
@@ -32976,7 +33049,7 @@ in
       sources."require-dir-0.3.1"
       sources."semver-5.3.0"
       sources."semver-utils-1.1.1"
-      (sources."snyk-1.26.1" // {
+      (sources."snyk-1.28.1" // {
         dependencies = [
           sources."abbrev-1.1.0"
           sources."ansi-escapes-1.4.0"
@@ -33092,14 +33165,14 @@ in
               })
               sources."extend-3.0.0"
               sources."forever-agent-0.6.1"
-              (sources."form-data-2.1.2" // {
+              (sources."form-data-2.1.4" // {
                 dependencies = [
                   sources."asynckit-0.4.0"
                 ];
               })
               (sources."har-validator-4.2.1" // {
                 dependencies = [
-                  (sources."ajv-4.11.5" // {
+                  (sources."ajv-4.11.6" // {
                     dependencies = [
                       sources."co-4.6.0"
                       (sources."json-stable-stringify-1.0.1" // {
@@ -33131,7 +33204,7 @@ in
                       sources."verror-1.3.6"
                     ];
                   })
-                  (sources."sshpk-1.11.0" // {
+                  (sources."sshpk-1.13.0" // {
                     dependencies = [
                       sources."asn1-0.2.3"
                       sources."assert-plus-1.0.0"
@@ -33221,19 +33294,14 @@ in
               sources."path-is-absolute-1.0.1"
             ];
           })
-          (sources."snyk-module-1.7.0" // {
+          (sources."snyk-module-1.8.1" // {
             dependencies = [
-              sources."hosted-git-info-2.4.1"
-              (sources."validate-npm-package-name-2.2.2" // {
-                dependencies = [
-                  sources."builtins-0.0.7"
-                ];
-              })
+              sources."hosted-git-info-2.4.2"
             ];
           })
-          (sources."snyk-policy-1.7.0" // {
+          (sources."snyk-policy-1.7.1" // {
             dependencies = [
-              (sources."js-yaml-3.8.2" // {
+              (sources."js-yaml-3.8.3" // {
                 dependencies = [
                   (sources."argparse-1.0.9" // {
                     dependencies = [
@@ -33250,7 +33318,7 @@ in
             dependencies = [
               (sources."minimatch-3.0.2" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -33370,14 +33438,14 @@ in
                                     ];
                                   })
                                   sources."read-all-stream-3.1.0"
-                                  (sources."readable-stream-2.2.6" // {
+                                  (sources."readable-stream-2.2.9" // {
                                     dependencies = [
                                       sources."buffer-shims-1.0.0"
                                       sources."core-util-is-1.0.2"
                                       sources."isarray-1.0.0"
                                       sources."inherits-2.0.3"
                                       sources."process-nextick-args-1.0.7"
-                                      sources."string_decoder-0.10.31"
+                                      sources."string_decoder-1.0.0"
                                       sources."util-deprecate-1.0.2"
                                     ];
                                   })
@@ -33390,9 +33458,9 @@ in
                                   })
                                 ];
                               })
-                              (sources."registry-auth-token-3.1.0" // {
+                              (sources."registry-auth-token-3.1.2" // {
                                 dependencies = [
-                                  (sources."rc-1.2.0" // {
+                                  (sources."rc-1.2.1" // {
                                     dependencies = [
                                       sources."deep-extend-0.4.1"
                                       sources."ini-1.3.4"
@@ -33403,7 +33471,7 @@ in
                               })
                               (sources."registry-url-3.1.0" // {
                                 dependencies = [
-                                  (sources."rc-1.2.0" // {
+                                  (sources."rc-1.2.1" // {
                                     dependencies = [
                                       sources."deep-extend-0.4.1"
                                       sources."ini-1.3.4"
@@ -33474,7 +33542,7 @@ in
                               })
                               (sources."normalize-package-data-2.3.6" // {
                                 dependencies = [
-                                  sources."hosted-git-info-2.4.1"
+                                  sources."hosted-git-info-2.4.2"
                                   (sources."is-builtin-module-1.0.0" // {
                                     dependencies = [
                                       sources."builtin-modules-1.1.1"
@@ -33599,13 +33667,13 @@ in
                                 ];
                               })
                               sources."inherits-2.0.3"
-                              (sources."readable-stream-2.2.6" // {
+                              (sources."readable-stream-2.2.9" // {
                                 dependencies = [
                                   sources."buffer-shims-1.0.0"
                                   sources."core-util-is-1.0.2"
                                   sources."isarray-1.0.0"
                                   sources."process-nextick-args-1.0.7"
-                                  sources."string_decoder-0.10.31"
+                                  sources."string_decoder-1.0.0"
                                   sources."util-deprecate-1.0.2"
                                 ];
                               })
@@ -33630,14 +33698,14 @@ in
                                   sources."pinkie-2.0.4"
                                 ];
                               })
-                              (sources."readable-stream-2.2.6" // {
+                              (sources."readable-stream-2.2.9" // {
                                 dependencies = [
                                   sources."buffer-shims-1.0.0"
                                   sources."core-util-is-1.0.2"
                                   sources."isarray-1.0.0"
                                   sources."inherits-2.0.3"
                                   sources."process-nextick-args-1.0.7"
-                                  sources."string_decoder-0.10.31"
+                                  sources."string_decoder-1.0.0"
                                   sources."util-deprecate-1.0.2"
                                 ];
                               })
@@ -33648,7 +33716,7 @@ in
                       })
                       (sources."registry-url-3.1.0" // {
                         dependencies = [
-                          (sources."rc-1.2.0" // {
+                          (sources."rc-1.2.1" // {
                             dependencies = [
                               sources."deep-extend-0.4.1"
                               sources."ini-1.3.4"
@@ -33792,14 +33860,14 @@ in
                         ];
                       })
                       sources."read-all-stream-3.1.0"
-                      (sources."readable-stream-2.2.6" // {
+                      (sources."readable-stream-2.2.9" // {
                         dependencies = [
                           sources."buffer-shims-1.0.0"
                           sources."core-util-is-1.0.2"
                           sources."isarray-1.0.0"
                           sources."inherits-2.0.3"
                           sources."process-nextick-args-1.0.7"
-                          sources."string_decoder-0.10.31"
+                          sources."string_decoder-1.0.0"
                           sources."util-deprecate-1.0.2"
                         ];
                       })
@@ -33812,9 +33880,9 @@ in
                       })
                     ];
                   })
-                  (sources."registry-auth-token-3.1.0" // {
+                  (sources."registry-auth-token-3.1.2" // {
                     dependencies = [
-                      (sources."rc-1.2.0" // {
+                      (sources."rc-1.2.1" // {
                         dependencies = [
                           sources."deep-extend-0.4.1"
                           sources."ini-1.3.4"
@@ -33826,7 +33894,7 @@ in
                   })
                   (sources."registry-url-3.1.0" // {
                     dependencies = [
-                      (sources."rc-1.2.0" // {
+                      (sources."rc-1.2.1" // {
                         dependencies = [
                           sources."deep-extend-0.4.1"
                           sources."ini-1.3.4"
@@ -33861,10 +33929,10 @@ in
   parsoid = nodeEnv.buildNodePackage {
     name = "parsoid";
     packageName = "parsoid";
-    version = "0.6.1";
+    version = "0.7.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/parsoid/-/parsoid-0.6.1.tgz";
-      sha1 = "b6393a25fde2489290dc9d110b037ce89eec2723";
+      url = "https://registry.npmjs.org/parsoid/-/parsoid-0.7.1.tgz";
+      sha1 = "121dcf59d0bacd9247405988525888f9a6ba2328";
     };
     dependencies = [
       sources."async-0.9.2"
@@ -33903,7 +33971,7 @@ in
               sources."unpipe-1.0.0"
             ];
           })
-          (sources."type-is-1.6.14" // {
+          (sources."type-is-1.6.15" // {
             dependencies = [
               sources."media-typer-0.3.0"
               (sources."mime-types-2.1.15" // {
@@ -34035,7 +34103,7 @@ in
           sources."serve-static-1.12.1"
           sources."setprototypeof-1.0.3"
           sources."statuses-1.3.1"
-          (sources."type-is-1.6.14" // {
+          (sources."type-is-1.6.15" // {
             dependencies = [
               sources."media-typer-0.3.0"
               (sources."mime-types-2.1.15" // {
@@ -34061,7 +34129,7 @@ in
               sources."inherits-2.0.3"
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -34092,7 +34160,7 @@ in
                   sources."amdefine-1.0.1"
                 ];
               })
-              (sources."uglify-js-2.8.20" // {
+              (sources."uglify-js-2.8.22" // {
                 dependencies = [
                   sources."source-map-0.5.6"
                   (sources."yargs-3.10.0" // {
@@ -34178,12 +34246,7 @@ in
           sources."unpipe-1.0.0"
         ];
       })
-      (sources."gelf-stream-0.2.4" // {
-        dependencies = [
-          sources."gelfling-0.2.0"
-        ];
-      })
-      (sources."js-yaml-3.8.2" // {
+      (sources."js-yaml-3.8.3" // {
         dependencies = [
           (sources."argparse-1.0.9" // {
             dependencies = [
@@ -34210,14 +34273,14 @@ in
           })
           sources."extend-3.0.0"
           sources."forever-agent-0.6.1"
-          (sources."form-data-2.1.2" // {
+          (sources."form-data-2.1.4" // {
             dependencies = [
               sources."asynckit-0.4.0"
             ];
           })
           (sources."har-validator-4.2.1" // {
             dependencies = [
-              (sources."ajv-4.11.5" // {
+              (sources."ajv-4.11.6" // {
                 dependencies = [
                   sources."co-4.6.0"
                   (sources."json-stable-stringify-1.0.1" // {
@@ -34249,7 +34312,7 @@ in
                   sources."verror-1.3.6"
                 ];
               })
-              (sources."sshpk-1.11.0" // {
+              (sources."sshpk-1.13.0" // {
                 dependencies = [
                   sources."asn1-0.2.3"
                   sources."assert-plus-1.0.0"
@@ -34298,11 +34361,11 @@ in
       (sources."service-runner-2.2.5" // {
         dependencies = [
           sources."bluebird-3.5.0"
-          (sources."bunyan-1.8.9" // {
+          (sources."bunyan-1.8.10" // {
             dependencies = [
               (sources."dtrace-provider-0.8.1" // {
                 dependencies = [
-                  sources."nan-2.5.1"
+                  sources."nan-2.6.2"
                 ];
               })
               (sources."mv-2.1.1" // {
@@ -34325,7 +34388,7 @@ in
                           sources."inherits-2.0.3"
                           (sources."minimatch-3.0.3" // {
                             dependencies = [
-                              (sources."brace-expansion-1.1.6" // {
+                              (sources."brace-expansion-1.1.7" // {
                                 dependencies = [
                                   sources."balanced-match-0.4.2"
                                   sources."concat-map-0.0.1"
@@ -34382,14 +34445,14 @@ in
                   })
                 ];
               })
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."inherits-2.0.3"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -34460,7 +34523,7 @@ in
                       })
                       (sources."normalize-package-data-2.3.6" // {
                         dependencies = [
-                          sources."hosted-git-info-2.4.1"
+                          sources."hosted-git-info-2.4.2"
                           (sources."is-builtin-module-1.0.0" // {
                             dependencies = [
                               sources."builtin-modules-1.1.1"
@@ -34529,7 +34592,7 @@ in
         ];
       })
       sources."simplediff-0.1.1"
-      (sources."yargs-4.8.1" // {
+      (sources."yargs-5.0.0" // {
         dependencies = [
           (sources."cliui-3.2.0" // {
             dependencies = [
@@ -34594,7 +34657,7 @@ in
                   })
                   (sources."normalize-package-data-2.3.6" // {
                     dependencies = [
-                      sources."hosted-git-info-2.4.1"
+                      sources."hosted-git-info-2.4.2"
                       (sources."is-builtin-module-1.0.0" // {
                         dependencies = [
                           sources."builtin-modules-1.1.1"
@@ -34648,7 +34711,7 @@ in
           sources."which-module-1.0.0"
           sources."window-size-0.2.0"
           sources."y18n-3.2.1"
-          (sources."yargs-parser-2.4.1" // {
+          (sources."yargs-parser-3.2.0" // {
             dependencies = [
               sources."camelcase-3.0.0"
             ];
@@ -34684,20 +34747,20 @@ in
               })
               (sources."bplist-parser-0.1.1" // {
                 dependencies = [
-                  sources."big-integer-1.6.17"
+                  sources."big-integer-1.6.19"
                 ];
               })
               (sources."concat-stream-1.6.0" // {
                 dependencies = [
                   sources."inherits-2.0.3"
                   sources."typedarray-0.0.6"
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -34827,7 +34890,7 @@ in
                   sources."map-obj-1.0.1"
                   (sources."normalize-package-data-2.3.6" // {
                     dependencies = [
-                      sources."hosted-git-info-2.4.1"
+                      sources."hosted-git-info-2.4.2"
                       (sources."is-builtin-module-1.0.0" // {
                         dependencies = [
                           sources."builtin-modules-1.1.1"
@@ -34968,13 +35031,13 @@ in
                     dependencies = [
                       sources."inherits-2.0.3"
                       sources."typedarray-0.0.6"
-                      (sources."readable-stream-2.2.6" // {
+                      (sources."readable-stream-2.2.9" // {
                         dependencies = [
                           sources."buffer-shims-1.0.0"
                           sources."core-util-is-1.0.2"
                           sources."isarray-1.0.0"
                           sources."process-nextick-args-1.0.7"
-                          sources."string_decoder-0.10.31"
+                          sources."string_decoder-1.0.0"
                           sources."util-deprecate-1.0.2"
                         ];
                       })
@@ -35038,17 +35101,17 @@ in
           sources."minimist-0.0.10"
         ];
       })
-      (sources."parse-torrent-5.8.2" // {
+      (sources."parse-torrent-5.8.3" // {
         dependencies = [
           sources."blob-to-buffer-1.2.6"
           sources."get-stdin-5.0.1"
-          (sources."magnet-uri-5.1.5" // {
+          (sources."magnet-uri-5.1.6" // {
             dependencies = [
               sources."thirty-two-1.0.2"
               sources."uniq-1.0.1"
             ];
           })
-          (sources."parse-torrent-file-4.0.1" // {
+          (sources."parse-torrent-file-4.0.2" // {
             dependencies = [
               sources."bencode-0.11.0"
               (sources."simple-sha1-2.1.0" // {
@@ -35059,7 +35122,7 @@ in
               sources."uniq-1.0.1"
             ];
           })
-          (sources."simple-get-2.4.0" // {
+          (sources."simple-get-2.5.1" // {
             dependencies = [
               (sources."once-1.4.0" // {
                 dependencies = [
@@ -35083,7 +35146,7 @@ in
         ];
       })
       sources."range-parser-1.2.0"
-      (sources."rc-1.2.0" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."deep-extend-0.4.1"
           sources."ini-1.3.4"
@@ -35104,15 +35167,16 @@ in
               })
             ];
           })
-          (sources."fs-chunk-store-1.6.4" // {
+          (sources."fs-chunk-store-1.6.5" // {
             dependencies = [
               (sources."mkdirp-0.5.1" // {
                 dependencies = [
                   sources."minimist-0.0.8"
                 ];
               })
-              (sources."random-access-file-1.5.0" // {
+              (sources."random-access-file-1.6.1" // {
                 dependencies = [
+                  sources."buffer-alloc-unsafe-1.0.0"
                   (sources."debug-2.6.3" // {
                     dependencies = [
                       sources."ms-0.7.2"
@@ -35196,7 +35260,7 @@ in
                   sources."inherits-2.0.3"
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -35261,7 +35325,7 @@ in
                   })
                   sources."random-iterate-1.0.1"
                   sources."run-series-1.1.4"
-                  (sources."simple-get-2.4.0" // {
+                  (sources."simple-get-2.5.1" // {
                     dependencies = [
                       sources."simple-concat-1.0.0"
                       sources."unzip-response-2.0.1"
@@ -35271,13 +35335,13 @@ in
                     dependencies = [
                       sources."get-browser-rtc-1.0.2"
                       sources."randombytes-2.0.3"
-                      (sources."readable-stream-2.2.6" // {
+                      (sources."readable-stream-2.2.9" // {
                         dependencies = [
                           sources."buffer-shims-1.0.0"
                           sources."core-util-is-1.0.2"
                           sources."isarray-1.0.0"
                           sources."process-nextick-args-1.0.7"
-                          sources."string_decoder-0.10.31"
+                          sources."string_decoder-1.0.0"
                           sources."util-deprecate-1.0.2"
                         ];
                       })
@@ -35286,18 +35350,19 @@ in
                   (sources."simple-websocket-4.3.1" // {
                     dependencies = [
                       sources."randombytes-2.0.3"
-                      (sources."readable-stream-2.2.6" // {
+                      (sources."readable-stream-2.2.9" // {
                         dependencies = [
                           sources."buffer-shims-1.0.0"
                           sources."core-util-is-1.0.2"
                           sources."isarray-1.0.0"
                           sources."process-nextick-args-1.0.7"
-                          sources."string_decoder-0.10.31"
+                          sources."string_decoder-1.0.0"
                           sources."util-deprecate-1.0.2"
                         ];
                       })
-                      (sources."ws-2.2.2" // {
+                      (sources."ws-2.2.3" // {
                         dependencies = [
+                          sources."safe-buffer-5.0.1"
                           sources."ultron-1.1.0"
                         ];
                       })
@@ -35328,7 +35393,7 @@ in
               sources."run-parallel-1.1.6"
             ];
           })
-          sources."torrent-piece-1.1.0"
+          sources."torrent-piece-1.1.1"
         ];
       })
       sources."windows-no-runnable-0.0.6"
@@ -35840,7 +35905,7 @@ in
                   sources."inherits-2.0.3"
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -35863,7 +35928,7 @@ in
       })
       (sources."fluent-ffmpeg-2.1.0" // {
         dependencies = [
-          (sources."async-2.2.0" // {
+          (sources."async-2.3.0" // {
             dependencies = [
               sources."lodash-4.17.4"
             ];
@@ -35946,7 +36011,7 @@ in
                   sources."inherits-2.0.3"
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -35998,7 +36063,7 @@ in
           sources."forever-agent-0.6.1"
           (sources."form-data-1.0.1" // {
             dependencies = [
-              (sources."async-2.2.0" // {
+              (sources."async-2.3.0" // {
                 dependencies = [
                   sources."lodash-4.17.4"
                 ];
@@ -36026,7 +36091,7 @@ in
                   sources."verror-1.3.6"
                 ];
               })
-              (sources."sshpk-1.11.0" // {
+              (sources."sshpk-1.13.0" // {
                 dependencies = [
                   sources."asn1-0.2.3"
                   sources."assert-plus-1.0.0"
@@ -36123,6 +36188,98 @@ in
     };
     production = true;
   };
+  prettier = nodeEnv.buildNodePackage {
+    name = "prettier";
+    packageName = "prettier";
+    version = "1.1.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/prettier/-/prettier-1.1.0.tgz";
+      sha1 = "9d6ad005703efefa66b6999b8916bfc6afeaf9f8";
+    };
+    dependencies = [
+      sources."ast-types-0.9.8"
+      (sources."babel-code-frame-6.22.0" // {
+        dependencies = [
+          sources."js-tokens-3.0.1"
+        ];
+      })
+      sources."babylon-7.0.0-beta.8"
+      (sources."chalk-1.1.3" // {
+        dependencies = [
+          sources."ansi-styles-2.2.1"
+          sources."escape-string-regexp-1.0.5"
+          (sources."has-ansi-2.0.0" // {
+            dependencies = [
+              sources."ansi-regex-2.1.1"
+            ];
+          })
+          (sources."strip-ansi-3.0.1" // {
+            dependencies = [
+              sources."ansi-regex-2.1.1"
+            ];
+          })
+          sources."supports-color-2.0.0"
+        ];
+      })
+      sources."esutils-2.0.2"
+      sources."flow-parser-0.43.0"
+      sources."get-stdin-5.0.1"
+      (sources."glob-7.1.1" // {
+        dependencies = [
+          sources."fs.realpath-1.0.0"
+          (sources."inflight-1.0.6" // {
+            dependencies = [
+              sources."wrappy-1.0.2"
+            ];
+          })
+          sources."inherits-2.0.3"
+          (sources."minimatch-3.0.3" // {
+            dependencies = [
+              (sources."brace-expansion-1.1.7" // {
+                dependencies = [
+                  sources."balanced-match-0.4.2"
+                  sources."concat-map-0.0.1"
+                ];
+              })
+            ];
+          })
+          (sources."once-1.4.0" // {
+            dependencies = [
+              sources."wrappy-1.0.2"
+            ];
+          })
+          sources."path-is-absolute-1.0.1"
+        ];
+      })
+      (sources."jest-validate-19.0.0" // {
+        dependencies = [
+          sources."jest-matcher-utils-19.0.0"
+          sources."leven-2.1.0"
+          (sources."pretty-format-19.0.0" // {
+            dependencies = [
+              (sources."ansi-styles-3.0.0" // {
+                dependencies = [
+                  (sources."color-convert-1.9.0" // {
+                    dependencies = [
+                      sources."color-name-1.1.2"
+                    ];
+                  })
+                ];
+              })
+            ];
+          })
+        ];
+      })
+      sources."minimist-1.2.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Prettier is an opinionated JavaScript formatter";
+      homepage = "https://github.com/prettier/prettier#readme";
+      license = "MIT";
+    };
+    production = true;
+  };
   react-tools = nodeEnv.buildNodePackage {
     name = "react-tools";
     packageName = "react-tools";
@@ -36155,7 +36312,7 @@ in
               sources."inherits-2.0.3"
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -36319,14 +36476,14 @@ in
                   })
                   sources."extend-3.0.0"
                   sources."forever-agent-0.6.1"
-                  (sources."form-data-2.1.2" // {
+                  (sources."form-data-2.1.4" // {
                     dependencies = [
                       sources."asynckit-0.4.0"
                     ];
                   })
                   (sources."har-validator-4.2.1" // {
                     dependencies = [
-                      (sources."ajv-4.11.5" // {
+                      (sources."ajv-4.11.6" // {
                         dependencies = [
                           sources."co-4.6.0"
                           (sources."json-stable-stringify-1.0.1" // {
@@ -36358,7 +36515,7 @@ in
                           sources."verror-1.3.6"
                         ];
                       })
-                      (sources."sshpk-1.11.0" // {
+                      (sources."sshpk-1.13.0" // {
                         dependencies = [
                           sources."asn1-0.2.3"
                           sources."assert-plus-1.0.0"
@@ -36516,7 +36673,7 @@ in
           sources."serve-static-1.12.1"
           sources."setprototypeof-1.0.3"
           sources."statuses-1.3.1"
-          (sources."type-is-1.6.14" // {
+          (sources."type-is-1.6.15" // {
             dependencies = [
               sources."media-typer-0.3.0"
               (sources."mime-types-2.1.15" // {
@@ -36562,7 +36719,7 @@ in
               sources."unpipe-1.0.0"
             ];
           })
-          (sources."type-is-1.6.14" // {
+          (sources."type-is-1.6.15" // {
             dependencies = [
               sources."media-typer-0.3.0"
               (sources."mime-types-2.1.15" // {
@@ -36606,7 +36763,7 @@ in
           sources."graceful-readlink-1.0.1"
         ];
       })
-      (sources."js-yaml-3.8.2" // {
+      (sources."js-yaml-3.8.3" // {
         dependencies = [
           (sources."argparse-1.0.9" // {
             dependencies = [
@@ -36634,14 +36791,14 @@ in
           })
           sources."extend-3.0.0"
           sources."forever-agent-0.6.1"
-          (sources."form-data-2.1.2" // {
+          (sources."form-data-2.1.4" // {
             dependencies = [
               sources."asynckit-0.4.0"
             ];
           })
           (sources."har-validator-4.2.1" // {
             dependencies = [
-              (sources."ajv-4.11.5" // {
+              (sources."ajv-4.11.6" // {
                 dependencies = [
                   sources."co-4.6.0"
                   (sources."json-stable-stringify-1.0.1" // {
@@ -36673,7 +36830,7 @@ in
                   sources."verror-1.3.6"
                 ];
               })
-              (sources."sshpk-1.11.0" // {
+              (sources."sshpk-1.13.0" // {
                 dependencies = [
                   sources."asn1-0.2.3"
                   sources."assert-plus-1.0.0"
@@ -36719,11 +36876,11 @@ in
           sources."sigmund-1.0.1"
         ];
       })
-      (sources."bunyan-1.8.9" // {
+      (sources."bunyan-1.8.10" // {
         dependencies = [
           (sources."dtrace-provider-0.8.1" // {
             dependencies = [
-              sources."nan-2.5.1"
+              sources."nan-2.6.2"
             ];
           })
           (sources."mv-2.1.1" // {
@@ -36741,7 +36898,7 @@ in
                       sources."inherits-2.0.3"
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -36818,13 +36975,13 @@ in
                   })
                   sources."entities-1.1.1"
                   sources."inherits-2.0.3"
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -36867,12 +37024,12 @@ in
       })
       (sources."fs-ext-0.6.0" // {
         dependencies = [
-          sources."nan-2.5.1"
+          sources."nan-2.6.2"
         ];
       })
       (sources."crypt3-0.2.0" // {
         dependencies = [
-          sources."nan-2.5.1"
+          sources."nan-2.6.2"
         ];
       })
     ];
@@ -36916,7 +37073,7 @@ in
           sources."graceful-fs-4.1.11"
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -36924,14 +37081,14 @@ in
               })
             ];
           })
-          (sources."readable-stream-2.2.6" // {
+          (sources."readable-stream-2.2.9" // {
             dependencies = [
               sources."buffer-shims-1.0.0"
               sources."core-util-is-1.0.2"
               sources."isarray-1.0.0"
               sources."inherits-2.0.3"
               sources."process-nextick-args-1.0.7"
-              sources."string_decoder-0.10.31"
+              sources."string_decoder-1.0.0"
               sources."util-deprecate-1.0.2"
             ];
           })
@@ -37018,7 +37175,7 @@ in
           })
           (sources."dtrace-provider-0.6.0" // {
             dependencies = [
-              sources."nan-2.5.1"
+              sources."nan-2.6.2"
             ];
           })
         ];
@@ -37027,7 +37184,7 @@ in
         dependencies = [
           (sources."dtrace-provider-0.6.0" // {
             dependencies = [
-              sources."nan-2.5.1"
+              sources."nan-2.6.2"
             ];
           })
           (sources."mv-2.1.1" // {
@@ -37050,7 +37207,7 @@ in
                       sources."inherits-2.0.3"
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -37096,14 +37253,14 @@ in
           (sources."sshpk-agent-1.2.1" // {
             dependencies = [
               sources."assert-plus-0.1.5"
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."inherits-2.0.3"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -37198,7 +37355,7 @@ in
           sources."inherits-2.0.3"
           (sources."minimatch-3.0.3" // {
             dependencies = [
-              (sources."brace-expansion-1.1.6" // {
+              (sources."brace-expansion-1.1.7" // {
                 dependencies = [
                   sources."balanced-match-0.4.2"
                   sources."concat-map-0.0.1"
@@ -37315,14 +37472,14 @@ in
                   sources."prr-0.0.0"
                 ];
               })
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."inherits-2.0.3"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -37351,7 +37508,7 @@ in
       })
       (sources."minimatch-3.0.3" // {
         dependencies = [
-          (sources."brace-expansion-1.1.6" // {
+          (sources."brace-expansion-1.1.7" // {
             dependencies = [
               sources."balanced-match-0.4.2"
               sources."concat-map-0.0.1"
@@ -37487,7 +37644,7 @@ in
           })
           sources."extend-3.0.0"
           sources."forever-agent-0.6.1"
-          (sources."form-data-2.1.2" // {
+          (sources."form-data-2.1.4" // {
             dependencies = [
               sources."asynckit-0.4.0"
             ];
@@ -37554,7 +37711,7 @@ in
                   sources."verror-1.3.6"
                 ];
               })
-              (sources."sshpk-1.11.0" // {
+              (sources."sshpk-1.13.0" // {
                 dependencies = [
                   sources."asn1-0.2.3"
                   sources."assert-plus-1.0.0"
@@ -37642,10 +37799,10 @@ in
   uglify-js = nodeEnv.buildNodePackage {
     name = "uglify-js";
     packageName = "uglify-js";
-    version = "2.8.20";
+    version = "2.8.22";
     src = fetchurl {
-      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.20.tgz";
-      sha1 = "be87100fbc18de3876ed606e9d24b4568311cecf";
+      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.22.tgz";
+      sha1 = "d54934778a8da14903fa29a326fb24c0ab51a1a0";
     };
     dependencies = [
       sources."source-map-0.5.6"
@@ -37705,10 +37862,10 @@ in
   ungit = nodeEnv.buildNodePackage {
     name = "ungit";
     packageName = "ungit";
-    version = "1.1.11";
+    version = "1.1.14";
     src = fetchurl {
-      url = "https://registry.npmjs.org/ungit/-/ungit-1.1.11.tgz";
-      sha1 = "a6391af1d6d132c2f995dbf9740b17b315b2f90f";
+      url = "https://registry.npmjs.org/ungit/-/ungit-1.1.14.tgz";
+      sha1 = "e65f05f541bc8b829f9720f28e74c4a12c7b6dd2";
     };
     dependencies = [
       sources."async-2.1.5"
@@ -37743,7 +37900,7 @@ in
               sources."unpipe-1.0.0"
             ];
           })
-          (sources."type-is-1.6.14" // {
+          (sources."type-is-1.6.15" // {
             dependencies = [
               sources."media-typer-0.3.0"
               (sources."mime-types-2.1.15" // {
@@ -37797,7 +37954,7 @@ in
           sources."whatwg-fetch-2.0.3"
         ];
       })
-      (sources."express-4.14.1" // {
+      (sources."express-4.15.2" // {
         dependencies = [
           (sources."accepts-1.3.3" // {
             dependencies = [
@@ -37814,22 +37971,26 @@ in
           sources."content-type-1.0.2"
           sources."cookie-0.3.1"
           sources."cookie-signature-1.0.6"
-          (sources."debug-2.2.0" // {
+          (sources."debug-2.6.1" // {
             dependencies = [
-              sources."ms-0.7.1"
+              sources."ms-0.7.2"
             ];
           })
           sources."depd-1.1.0"
           sources."encodeurl-1.0.1"
           sources."escape-html-1.0.3"
-          sources."etag-1.7.0"
-          (sources."finalhandler-0.5.1" // {
+          sources."etag-1.8.0"
+          (sources."finalhandler-1.0.1" // {
             dependencies = [
-              sources."statuses-1.3.1"
+              (sources."debug-2.6.3" // {
+                dependencies = [
+                  sources."ms-0.7.2"
+                ];
+              })
               sources."unpipe-1.0.0"
             ];
           })
-          sources."fresh-0.3.0"
+          sources."fresh-0.5.0"
           sources."merge-descriptors-1.0.1"
           sources."methods-1.1.2"
           (sources."on-finished-2.3.0" // {
@@ -37845,23 +38006,23 @@ in
               sources."ipaddr.js-1.3.0"
             ];
           })
-          sources."qs-6.2.0"
+          sources."qs-6.4.0"
           sources."range-parser-1.2.0"
-          (sources."send-0.14.2" // {
+          (sources."send-0.15.1" // {
             dependencies = [
               sources."destroy-1.0.4"
-              (sources."http-errors-1.5.1" // {
+              (sources."http-errors-1.6.1" // {
                 dependencies = [
                   sources."inherits-2.0.3"
-                  sources."setprototypeof-1.0.2"
                 ];
               })
               sources."mime-1.3.4"
               sources."ms-0.7.2"
-              sources."statuses-1.3.1"
             ];
           })
-          (sources."type-is-1.6.14" // {
+          sources."setprototypeof-1.0.3"
+          sources."statuses-1.3.1"
+          (sources."type-is-1.6.15" // {
             dependencies = [
               sources."media-typer-0.3.0"
               (sources."mime-types-2.1.15" // {
@@ -37875,14 +38036,14 @@ in
           sources."vary-1.1.1"
         ];
       })
-      (sources."express-session-1.14.2" // {
+      (sources."express-session-1.15.2" // {
         dependencies = [
           sources."cookie-0.3.1"
           sources."cookie-signature-1.0.6"
-          sources."crc-3.4.1"
-          (sources."debug-2.2.0" // {
+          sources."crc-3.4.4"
+          (sources."debug-2.6.3" // {
             dependencies = [
-              sources."ms-0.7.1"
+              sources."ms-0.7.2"
             ];
           })
           sources."depd-1.1.0"
@@ -38021,7 +38182,7 @@ in
         ];
       })
       sources."hasher-1.2.0"
-      sources."ignore-3.2.6"
+      sources."ignore-3.2.7"
       (sources."keen.io-0.1.3" // {
         dependencies = [
           sources."underscore-1.5.2"
@@ -38034,13 +38195,13 @@ in
           sources."minimist-0.0.8"
         ];
       })
-      sources."moment-2.17.1"
+      sources."moment-2.18.1"
       (sources."node-cache-4.1.1" // {
         dependencies = [
           sources."clone-2.1.1"
         ];
       })
-      (sources."npm-4.1.2" // {
+      (sources."npm-4.5.0" // {
         dependencies = [
           (sources."JSONStream-1.3.1" // {
             dependencies = [
@@ -38048,12 +38209,15 @@ in
               sources."through-2.3.8"
             ];
           })
-          sources."abbrev-1.0.9"
+          sources."abbrev-1.1.0"
+          sources."ansi-regex-2.1.1"
           sources."ansicolors-0.3.2"
           sources."ansistyles-0.1.3"
-          sources."aproba-1.0.4"
+          sources."aproba-1.1.1"
           sources."archy-1.0.0"
           sources."asap-2.0.5"
+          sources."bluebird-3.5.0"
+          sources."call-limit-1.1.0"
           sources."chownr-1.0.1"
           sources."cmd-shim-2.0.2"
           (sources."columnify-1.5.4" // {
@@ -38085,7 +38249,7 @@ in
                 dependencies = [
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -38102,7 +38266,7 @@ in
               sources."fs.realpath-1.0.0"
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -38115,21 +38279,17 @@ in
           })
           sources."graceful-fs-4.1.11"
           sources."has-unicode-2.0.1"
-          sources."hosted-git-info-2.1.5"
+          sources."hosted-git-info-2.4.2"
           sources."iferr-0.1.5"
           sources."inflight-1.0.6"
           sources."inherits-2.0.3"
           sources."ini-1.3.4"
-          (sources."init-package-json-1.9.5" // {
+          (sources."init-package-json-1.9.6" // {
             dependencies = [
               sources."promzard-0.3.0"
-              (sources."validate-npm-package-name-3.0.0" // {
-                dependencies = [
-                  sources."builtins-1.0.3"
-                ];
-              })
             ];
           })
+          sources."lazy-property-1.0.0"
           sources."lockfile-1.0.3"
           (sources."lodash._baseuniq-4.6.0" // {
             dependencies = [
@@ -38141,7 +38301,7 @@ in
           sources."lodash.union-4.6.0"
           sources."lodash.uniq-4.5.0"
           sources."lodash.without-4.4.0"
-          (sources."mississippi-1.2.0" // {
+          (sources."mississippi-1.3.0" // {
             dependencies = [
               (sources."concat-stream-1.6.0" // {
                 dependencies = [
@@ -38161,6 +38321,11 @@ in
               sources."end-of-stream-1.4.0"
               sources."flush-write-stream-1.0.2"
               sources."from2-2.3.0"
+              (sources."parallel-transform-1.1.0" // {
+                dependencies = [
+                  sources."cyclist-0.2.2"
+                ];
+              })
               sources."pump-1.0.2"
               sources."pumpify-1.3.5"
               (sources."stream-each-1.2.0" // {
@@ -38175,11 +38340,17 @@ in
               })
             ];
           })
-          (sources."node-gyp-3.5.0" // {
+          (sources."move-concurrently-1.0.1" // {
+            dependencies = [
+              sources."copy-concurrently-1.0.3"
+              sources."run-queue-1.0.3"
+            ];
+          })
+          (sources."node-gyp-3.6.0" // {
             dependencies = [
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -38262,22 +38433,22 @@ in
             ];
           })
           sources."read-package-tree-5.1.5"
-          (sources."readable-stream-2.2.6" // {
+          (sources."readable-stream-2.2.9" // {
             dependencies = [
               sources."buffer-shims-1.0.0"
               sources."core-util-is-1.0.2"
               sources."isarray-1.0.0"
               sources."process-nextick-args-1.0.7"
-              sources."string_decoder-0.10.31"
+              sources."string_decoder-1.0.0"
               sources."util-deprecate-1.0.2"
             ];
           })
           sources."realize-package-specifier-3.0.3"
-          (sources."request-2.79.0" // {
+          (sources."request-2.81.0" // {
             dependencies = [
               sources."aws-sign2-0.6.0"
               sources."aws4-1.6.0"
-              sources."caseless-0.11.0"
+              sources."caseless-0.12.0"
               (sources."combined-stream-1.0.5" // {
                 dependencies = [
                   sources."delayed-stream-1.0.0"
@@ -38285,43 +38456,24 @@ in
               })
               sources."extend-3.0.0"
               sources."forever-agent-0.6.1"
-              (sources."form-data-2.1.2" // {
+              (sources."form-data-2.1.4" // {
                 dependencies = [
                   sources."asynckit-0.4.0"
                 ];
               })
-              (sources."har-validator-2.0.6" // {
+              (sources."har-validator-4.2.1" // {
                 dependencies = [
-                  (sources."chalk-1.1.3" // {
-                    dependencies = [
-                      sources."ansi-styles-2.2.1"
-                      sources."escape-string-regexp-1.0.5"
-                      sources."has-ansi-2.0.0"
-                      sources."supports-color-2.0.0"
-                    ];
-                  })
-                  (sources."commander-2.9.0" // {
-                    dependencies = [
-                      sources."graceful-readlink-1.0.1"
-                    ];
-                  })
-                  (sources."is-my-json-valid-2.16.0" // {
+                  (sources."ajv-4.11.6" // {
                     dependencies = [
-                      sources."generate-function-2.0.0"
-                      (sources."generate-object-property-1.2.0" // {
+                      sources."co-4.6.0"
+                      (sources."json-stable-stringify-1.0.1" // {
                         dependencies = [
-                          sources."is-property-1.0.2"
+                          sources."jsonify-0.0.0"
                         ];
                       })
-                      sources."jsonpointer-4.0.1"
-                      sources."xtend-4.0.1"
-                    ];
-                  })
-                  (sources."pinkie-promise-2.0.1" // {
-                    dependencies = [
-                      sources."pinkie-2.0.4"
                     ];
                   })
+                  sources."har-schema-1.0.5"
                 ];
               })
               (sources."hawk-3.1.3" // {
@@ -38343,7 +38495,7 @@ in
                       sources."verror-1.3.6"
                     ];
                   })
-                  (sources."sshpk-1.11.0" // {
+                  (sources."sshpk-1.13.0" // {
                     dependencies = [
                       sources."asn1-0.2.3"
                       sources."assert-plus-1.0.0"
@@ -38367,14 +38519,16 @@ in
                 ];
               })
               sources."oauth-sign-0.8.2"
-              sources."qs-6.3.2"
+              sources."performance-now-0.2.0"
+              sources."qs-6.4.0"
+              sources."safe-buffer-5.0.1"
               sources."stringstream-0.0.5"
               (sources."tough-cookie-2.3.2" // {
                 dependencies = [
                   sources."punycode-1.4.1"
                 ];
               })
-              sources."tunnel-agent-0.4.3"
+              sources."tunnel-agent-0.6.0"
             ];
           })
           sources."retry-0.10.1"
@@ -38416,10 +38570,135 @@ in
             ];
           })
           sources."unpipe-1.0.0"
+          (sources."update-notifier-2.1.0" // {
+            dependencies = [
+              (sources."boxen-1.0.0" // {
+                dependencies = [
+                  (sources."ansi-align-1.1.0" // {
+                    dependencies = [
+                      (sources."string-width-1.0.2" // {
+                        dependencies = [
+                          sources."code-point-at-1.1.0"
+                          (sources."is-fullwidth-code-point-1.0.0" // {
+                            dependencies = [
+                              sources."number-is-nan-1.0.1"
+                            ];
+                          })
+                        ];
+                      })
+                    ];
+                  })
+                  sources."camelcase-4.1.0"
+                  sources."cli-boxes-1.0.0"
+                  (sources."string-width-2.0.0" // {
+                    dependencies = [
+                      sources."is-fullwidth-code-point-2.0.0"
+                    ];
+                  })
+                  (sources."term-size-0.1.1" // {
+                    dependencies = [
+                      (sources."execa-0.4.0" // {
+                        dependencies = [
+                          (sources."cross-spawn-async-2.2.5" // {
+                            dependencies = [
+                              (sources."lru-cache-4.0.2" // {
+                                dependencies = [
+                                  sources."pseudomap-1.0.2"
+                                  sources."yallist-2.1.2"
+                                ];
+                              })
+                            ];
+                          })
+                          sources."is-stream-1.1.0"
+                          sources."npm-run-path-1.0.0"
+                          sources."object-assign-4.1.1"
+                          sources."path-key-1.0.0"
+                          sources."strip-eof-1.0.0"
+                        ];
+                      })
+                    ];
+                  })
+                  (sources."widest-line-1.0.0" // {
+                    dependencies = [
+                      (sources."string-width-1.0.2" // {
+                        dependencies = [
+                          sources."code-point-at-1.1.0"
+                          (sources."is-fullwidth-code-point-1.0.0" // {
+                            dependencies = [
+                              sources."number-is-nan-1.0.1"
+                            ];
+                          })
+                        ];
+                      })
+                    ];
+                  })
+                ];
+              })
+              (sources."chalk-1.1.3" // {
+                dependencies = [
+                  sources."ansi-styles-2.2.1"
+                  sources."escape-string-regexp-1.0.5"
+                  sources."has-ansi-2.0.0"
+                  sources."supports-color-2.0.0"
+                ];
+              })
+              (sources."configstore-3.0.0" // {
+                dependencies = [
+                  (sources."dot-prop-4.1.1" // {
+                    dependencies = [
+                      sources."is-obj-1.0.1"
+                    ];
+                  })
+                  (sources."unique-string-1.0.0" // {
+                    dependencies = [
+                      sources."crypto-random-string-1.0.0"
+                    ];
+                  })
+                ];
+              })
+              sources."is-npm-1.0.0"
+              (sources."latest-version-3.1.0" // {
+                dependencies = [
+                  (sources."package-json-4.0.0" // {
+                    dependencies = [
+                      (sources."got-6.7.1" // {
+                        dependencies = [
+                          (sources."create-error-class-3.0.2" // {
+                            dependencies = [
+                              sources."capture-stack-trace-1.0.0"
+                            ];
+                          })
+                          sources."duplexer3-0.1.4"
+                          sources."get-stream-3.0.0"
+                          sources."is-redirect-1.0.0"
+                          sources."is-retry-allowed-1.1.0"
+                          sources."is-stream-1.1.0"
+                          sources."lowercase-keys-1.0.0"
+                          sources."safe-buffer-5.0.1"
+                          sources."timed-out-4.0.1"
+                          sources."unzip-response-2.0.1"
+                          (sources."url-parse-lax-1.0.0" // {
+                            dependencies = [
+                              sources."prepend-http-1.0.4"
+                            ];
+                          })
+                        ];
+                      })
+                      sources."registry-auth-token-3.1.2"
+                      sources."registry-url-3.1.0"
+                    ];
+                  })
+                ];
+              })
+              sources."lazy-req-2.0.0"
+              sources."semver-diff-2.1.0"
+              sources."xdg-basedir-3.0.0"
+            ];
+          })
           sources."uuid-3.0.1"
-          (sources."validate-npm-package-name-2.2.2" // {
+          (sources."validate-npm-package-name-3.0.0" // {
             dependencies = [
-              sources."builtins-0.0.7"
+              sources."builtins-1.0.3"
             ];
           })
           (sources."which-1.2.14" // {
@@ -38429,7 +38708,6 @@ in
           })
           sources."wrappy-1.0.2"
           sources."write-file-atomic-1.3.1"
-          sources."ansi-regex-2.1.1"
           sources."debuglog-1.0.1"
           sources."imurmurhash-0.1.4"
           sources."lodash._baseindexof-3.1.0"
@@ -38451,19 +38729,19 @@ in
           })
         ];
       })
-      (sources."npm-registry-client-7.4.6" // {
+      (sources."npm-registry-client-8.1.1" // {
         dependencies = [
           (sources."concat-stream-1.6.0" // {
             dependencies = [
               sources."inherits-2.0.3"
               sources."typedarray-0.0.6"
-              (sources."readable-stream-2.2.6" // {
+              (sources."readable-stream-2.2.9" // {
                 dependencies = [
                   sources."buffer-shims-1.0.0"
                   sources."core-util-is-1.0.2"
                   sources."isarray-1.0.0"
                   sources."process-nextick-args-1.0.7"
-                  sources."string_decoder-0.10.31"
+                  sources."string_decoder-1.0.0"
                   sources."util-deprecate-1.0.2"
                 ];
               })
@@ -38472,7 +38750,7 @@ in
           sources."graceful-fs-4.1.11"
           (sources."normalize-package-data-2.3.6" // {
             dependencies = [
-              sources."hosted-git-info-2.4.1"
+              sources."hosted-git-info-2.4.2"
               (sources."is-builtin-module-1.0.0" // {
                 dependencies = [
                   sources."builtin-modules-1.1.1"
@@ -38490,9 +38768,19 @@ in
               })
             ];
           })
-          (sources."npm-package-arg-4.2.1" // {
+          (sources."npm-package-arg-5.0.1" // {
             dependencies = [
-              sources."hosted-git-info-2.4.1"
+              sources."hosted-git-info-2.4.2"
+              (sources."osenv-0.1.4" // {
+                dependencies = [
+                  sources."os-tmpdir-1.0.2"
+                ];
+              })
+              (sources."validate-npm-package-name-3.0.0" // {
+                dependencies = [
+                  sources."builtins-1.0.3"
+                ];
+              })
             ];
           })
           (sources."once-1.4.0" // {
@@ -38512,14 +38800,14 @@ in
               })
               sources."extend-3.0.0"
               sources."forever-agent-0.6.1"
-              (sources."form-data-2.1.2" // {
+              (sources."form-data-2.1.4" // {
                 dependencies = [
                   sources."asynckit-0.4.0"
                 ];
               })
               (sources."har-validator-4.2.1" // {
                 dependencies = [
-                  (sources."ajv-4.11.5" // {
+                  (sources."ajv-4.11.6" // {
                     dependencies = [
                       sources."co-4.6.0"
                       (sources."json-stable-stringify-1.0.1" // {
@@ -38551,7 +38839,7 @@ in
                       sources."verror-1.3.6"
                     ];
                   })
-                  (sources."sshpk-1.11.0" // {
+                  (sources."sshpk-1.13.0" // {
                     dependencies = [
                       sources."asn1-0.2.3"
                       sources."assert-plus-1.0.0"
@@ -38595,14 +38883,14 @@ in
               (sources."are-we-there-yet-1.1.2" // {
                 dependencies = [
                   sources."delegates-1.0.0"
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."inherits-2.0.3"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -38652,7 +38940,7 @@ in
           sources."passport-strategy-1.0.0"
         ];
       })
-      (sources."raven-1.1.5" // {
+      (sources."raven-1.2.1" // {
         dependencies = [
           sources."cookie-0.3.1"
           sources."json-stringify-safe-5.0.1"
@@ -38661,7 +38949,7 @@ in
           sources."stack-trace-0.0.9"
         ];
       })
-      (sources."rc-1.1.7" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."deep-extend-0.4.1"
           sources."ini-1.3.4"
@@ -38669,7 +38957,7 @@ in
           sources."strip-json-comments-2.0.1"
         ];
       })
-      (sources."rimraf-2.5.4" // {
+      (sources."rimraf-2.6.1" // {
         dependencies = [
           (sources."glob-7.1.1" // {
             dependencies = [
@@ -38682,7 +38970,7 @@ in
               sources."inherits-2.0.3"
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -38701,26 +38989,22 @@ in
         ];
       })
       sources."semver-5.3.0"
-      (sources."serve-static-1.11.2" // {
+      (sources."serve-static-1.12.1" // {
         dependencies = [
           sources."encodeurl-1.0.1"
           sources."escape-html-1.0.3"
           sources."parseurl-1.3.1"
-          (sources."send-0.14.2" // {
+          (sources."send-0.15.1" // {
             dependencies = [
-              (sources."debug-2.2.0" // {
-                dependencies = [
-                  sources."ms-0.7.1"
-                ];
-              })
+              sources."debug-2.6.1"
               sources."depd-1.1.0"
               sources."destroy-1.0.4"
-              sources."etag-1.7.0"
-              sources."fresh-0.3.0"
-              (sources."http-errors-1.5.1" // {
+              sources."etag-1.8.0"
+              sources."fresh-0.5.0"
+              (sources."http-errors-1.6.1" // {
                 dependencies = [
                   sources."inherits-2.0.3"
-                  sources."setprototypeof-1.0.2"
+                  sources."setprototypeof-1.0.3"
                 ];
               })
               sources."mime-1.3.4"
@@ -38737,9 +39021,9 @@ in
         ];
       })
       sources."signals-1.0.0"
-      (sources."snapsvg-0.4.0" // {
+      (sources."snapsvg-0.5.1" // {
         dependencies = [
-          sources."eve-0.4.2"
+          sources."eve-0.5.3"
         ];
       })
       (sources."socket.io-1.7.3" // {
@@ -38912,7 +39196,7 @@ in
           sources."stack-trace-0.0.9"
         ];
       })
-      (sources."yargs-6.6.0" // {
+      (sources."yargs-7.1.0" // {
         dependencies = [
           sources."camelcase-3.0.0"
           (sources."cliui-3.2.0" // {
@@ -38977,7 +39261,7 @@ in
                   })
                   (sources."normalize-package-data-2.3.6" // {
                     dependencies = [
-                      sources."hosted-git-info-2.4.1"
+                      sources."hosted-git-info-2.4.2"
                       (sources."is-builtin-module-1.0.0" // {
                         dependencies = [
                           sources."builtin-modules-1.1.1"
@@ -39030,7 +39314,7 @@ in
           })
           sources."which-module-1.0.0"
           sources."y18n-3.2.1"
-          sources."yargs-parser-4.2.1"
+          sources."yargs-parser-5.0.0"
         ];
       })
     ];
@@ -39133,7 +39417,7 @@ in
                       sources."inherits-2.0.3"
                       (sources."minimatch-3.0.3" // {
                         dependencies = [
-                          (sources."brace-expansion-1.1.6" // {
+                          (sources."brace-expansion-1.1.7" // {
                             dependencies = [
                               sources."balanced-match-0.4.2"
                               sources."concat-map-0.0.1"
@@ -39185,7 +39469,7 @@ in
               sources."forever-agent-0.6.1"
               (sources."form-data-1.0.1" // {
                 dependencies = [
-                  (sources."async-2.2.0" // {
+                  (sources."async-2.3.0" // {
                     dependencies = [
                       sources."lodash-4.17.4"
                     ];
@@ -39213,7 +39497,7 @@ in
                       sources."verror-1.3.6"
                     ];
                   })
-                  (sources."sshpk-1.11.0" // {
+                  (sources."sshpk-1.13.0" // {
                     dependencies = [
                       sources."asn1-0.2.3"
                       sources."assert-plus-1.0.0"
@@ -39325,15 +39609,19 @@ in
   webpack = nodeEnv.buildNodePackage {
     name = "webpack";
     packageName = "webpack";
-    version = "2.3.2";
+    version = "2.4.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/webpack/-/webpack-2.3.2.tgz";
-      sha1 = "7d521e6f0777a3a58985c69425263fdfe977b458";
+      url = "https://registry.npmjs.org/webpack/-/webpack-2.4.1.tgz";
+      sha1 = "15a91dbe34966d8a4b99c7d656efd92a2e5a6f6a";
     };
     dependencies = [
-      sources."acorn-4.0.11"
-      sources."acorn-dynamic-import-2.0.2"
-      (sources."ajv-4.11.5" // {
+      sources."acorn-5.0.3"
+      (sources."acorn-dynamic-import-2.0.2" // {
+        dependencies = [
+          sources."acorn-4.0.11"
+        ];
+      })
+      (sources."ajv-4.11.6" // {
         dependencies = [
           sources."co-4.6.0"
           (sources."json-stable-stringify-1.0.1" // {
@@ -39344,7 +39632,7 @@ in
         ];
       })
       sources."ajv-keywords-1.5.1"
-      (sources."async-2.2.0" // {
+      (sources."async-2.3.0" // {
         dependencies = [
           sources."lodash-4.17.4"
         ];
@@ -39357,12 +39645,12 @@ in
       })
       sources."interpret-1.0.2"
       sources."json-loader-0.5.4"
+      sources."json5-0.5.1"
       sources."loader-runner-2.3.0"
       (sources."loader-utils-0.2.17" // {
         dependencies = [
           sources."big.js-3.1.3"
           sources."emojis-list-2.1.0"
-          sources."json5-0.5.1"
           sources."object-assign-4.1.1"
         ];
       })
@@ -39373,14 +39661,14 @@ in
               sources."prr-0.0.0"
             ];
           })
-          (sources."readable-stream-2.2.6" // {
+          (sources."readable-stream-2.2.9" // {
             dependencies = [
               sources."buffer-shims-1.0.0"
               sources."core-util-is-1.0.2"
               sources."isarray-1.0.0"
               sources."inherits-2.0.3"
               sources."process-nextick-args-1.0.7"
-              sources."string_decoder-0.10.31"
+              sources."string_decoder-1.0.0"
               sources."util-deprecate-1.0.2"
             ];
           })
@@ -39443,7 +39731,7 @@ in
                     dependencies = [
                       sources."brorand-1.1.0"
                       sources."hash.js-1.0.3"
-                      sources."hmac-drbg-1.0.0"
+                      sources."hmac-drbg-1.0.1"
                       sources."minimalistic-assert-1.0.0"
                       sources."minimalistic-crypto-utils-1.0.1"
                     ];
@@ -39473,7 +39761,7 @@ in
                     dependencies = [
                       sources."brorand-1.1.0"
                       sources."hash.js-1.0.3"
-                      sources."hmac-drbg-1.0.0"
+                      sources."hmac-drbg-1.0.1"
                       sources."minimalistic-assert-1.0.0"
                       sources."minimalistic-crypto-utils-1.0.1"
                     ];
@@ -39533,13 +39821,14 @@ in
           sources."process-0.11.9"
           sources."punycode-1.4.1"
           sources."querystring-es3-0.2.1"
-          (sources."readable-stream-2.2.6" // {
+          (sources."readable-stream-2.2.9" // {
             dependencies = [
               sources."buffer-shims-1.0.0"
               sources."core-util-is-1.0.2"
               sources."isarray-1.0.0"
               sources."inherits-2.0.3"
               sources."process-nextick-args-1.0.7"
+              sources."string_decoder-1.0.0"
               sources."util-deprecate-1.0.2"
             ];
           })
@@ -39548,7 +39837,7 @@ in
               sources."inherits-2.0.3"
             ];
           })
-          (sources."stream-http-2.6.3" // {
+          (sources."stream-http-2.7.0" // {
             dependencies = [
               sources."builtin-status-codes-3.0.0"
               sources."inherits-2.0.3"
@@ -39588,7 +39877,7 @@ in
         ];
       })
       sources."tapable-0.2.6"
-      (sources."uglify-js-2.8.20" // {
+      (sources."uglify-js-2.8.22" // {
         dependencies = [
           (sources."yargs-3.10.0" // {
             dependencies = [
@@ -39647,7 +39936,7 @@ in
                     dependencies = [
                       (sources."arr-diff-2.0.0" // {
                         dependencies = [
-                          sources."arr-flatten-1.0.1"
+                          sources."arr-flatten-1.0.2"
                         ];
                       })
                       sources."array-unique-0.2.1"
@@ -39735,7 +40024,7 @@ in
                 dependencies = [
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -39743,13 +40032,13 @@ in
                       })
                     ];
                   })
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -39758,7 +40047,7 @@ in
               })
               (sources."fsevents-1.1.1" // {
                 dependencies = [
-                  sources."nan-2.5.1"
+                  sources."nan-2.6.2"
                   (sources."node-pre-gyp-0.6.34" // {
                     dependencies = [
                       (sources."nopt-4.0.1" // {
@@ -39777,13 +40066,13 @@ in
                           (sources."are-we-there-yet-1.1.2" // {
                             dependencies = [
                               sources."delegates-1.0.0"
-                              (sources."readable-stream-2.2.6" // {
+                              (sources."readable-stream-2.2.9" // {
                                 dependencies = [
                                   sources."buffer-shims-1.0.0"
                                   sources."core-util-is-1.0.2"
                                   sources."isarray-1.0.0"
                                   sources."process-nextick-args-1.0.7"
-                                  sources."string_decoder-0.10.31"
+                                  sources."string_decoder-1.0.0"
                                   sources."util-deprecate-1.0.2"
                                 ];
                               })
@@ -39817,7 +40106,7 @@ in
                           sources."set-blocking-2.0.0"
                         ];
                       })
-                      (sources."rc-1.2.0" // {
+                      (sources."rc-1.2.1" // {
                         dependencies = [
                           sources."deep-extend-0.4.1"
                           sources."ini-1.3.4"
@@ -39837,7 +40126,7 @@ in
                           })
                           sources."extend-3.0.0"
                           sources."forever-agent-0.6.1"
-                          (sources."form-data-2.1.2" // {
+                          (sources."form-data-2.1.4" // {
                             dependencies = [
                               sources."asynckit-0.4.0"
                             ];
@@ -39866,7 +40155,7 @@ in
                                   sources."verror-1.3.6"
                                 ];
                               })
-                              (sources."sshpk-1.11.0" // {
+                              (sources."sshpk-1.13.0" // {
                                 dependencies = [
                                   sources."asn1-0.2.3"
                                   sources."assert-plus-1.0.0"
@@ -39915,7 +40204,7 @@ in
                               })
                               (sources."minimatch-3.0.3" // {
                                 dependencies = [
-                                  (sources."brace-expansion-1.1.6" // {
+                                  (sources."brace-expansion-1.1.7" // {
                                     dependencies = [
                                       sources."balanced-match-0.4.2"
                                       sources."concat-map-0.0.1"
@@ -39951,7 +40240,7 @@ in
                             dependencies = [
                               (sources."minimatch-3.0.3" // {
                                 dependencies = [
-                                  (sources."brace-expansion-1.1.6" // {
+                                  (sources."brace-expansion-1.1.7" // {
                                     dependencies = [
                                       sources."balanced-match-0.4.2"
                                       sources."concat-map-0.0.1"
@@ -39966,13 +40255,13 @@ in
                               sources."wrappy-1.0.2"
                             ];
                           })
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -40058,7 +40347,7 @@ in
                   })
                   (sources."normalize-package-data-2.3.6" // {
                     dependencies = [
-                      sources."hosted-git-info-2.4.1"
+                      sources."hosted-git-info-2.4.2"
                       (sources."is-builtin-module-1.0.0" // {
                         dependencies = [
                           sources."builtin-modules-1.1.1"
@@ -40143,10 +40432,10 @@ in
   yarn = nodeEnv.buildNodePackage {
     name = "yarn";
     packageName = "yarn";
-    version = "0.21.3";
+    version = "0.22.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/yarn/-/yarn-0.21.3.tgz";
-      sha1 = "8dda3a63c798b383cfa577452c2b3cb3e4aa87e0";
+      url = "https://registry.npmjs.org/yarn/-/yarn-0.22.0.tgz";
+      sha1 = "fd8511dc29225b925be967dc185772cc59de5888";
     };
     dependencies = [
       (sources."babel-runtime-6.23.0" // {
@@ -40156,7 +40445,7 @@ in
         ];
       })
       sources."bytes-2.5.0"
-      sources."camelcase-3.0.0"
+      sources."camelcase-4.1.0"
       (sources."chalk-1.1.3" // {
         dependencies = [
           sources."ansi-styles-2.2.1"
@@ -40190,11 +40479,6 @@ in
           sources."ms-0.7.2"
         ];
       })
-      (sources."defaults-1.0.3" // {
-        dependencies = [
-          sources."clone-1.0.2"
-        ];
-      })
       sources."detect-indent-5.0.0"
       sources."ini-1.3.4"
       (sources."inquirer-3.0.6" // {
@@ -40282,7 +40566,7 @@ in
       })
       (sources."minimatch-3.0.3" // {
         dependencies = [
-          (sources."brace-expansion-1.1.6" // {
+          (sources."brace-expansion-1.1.7" // {
             dependencies = [
               sources."balanced-match-0.4.2"
               sources."concat-map-0.0.1"
@@ -40335,14 +40619,14 @@ in
               (sources."are-we-there-yet-1.1.2" // {
                 dependencies = [
                   sources."delegates-1.0.0"
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."inherits-2.0.3"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -40413,14 +40697,14 @@ in
           })
           sources."extend-3.0.0"
           sources."forever-agent-0.6.1"
-          (sources."form-data-2.1.2" // {
+          (sources."form-data-2.1.4" // {
             dependencies = [
               sources."asynckit-0.4.0"
             ];
           })
           (sources."har-validator-4.2.1" // {
             dependencies = [
-              (sources."ajv-4.11.5" // {
+              (sources."ajv-4.11.6" // {
                 dependencies = [
                   sources."co-4.6.0"
                   (sources."json-stable-stringify-1.0.1" // {
@@ -40452,7 +40736,7 @@ in
                   sources."verror-1.3.6"
                 ];
               })
-              (sources."sshpk-1.11.0" // {
+              (sources."sshpk-1.13.0" // {
                 dependencies = [
                   sources."asn1-0.2.3"
                   sources."assert-plus-1.0.0"
@@ -40537,20 +40821,21 @@ in
               })
             ];
           })
-          (sources."readable-stream-2.2.6" // {
+          (sources."readable-stream-2.2.9" // {
             dependencies = [
               sources."buffer-shims-1.0.0"
               sources."core-util-is-1.0.2"
               sources."isarray-1.0.0"
               sources."inherits-2.0.3"
               sources."process-nextick-args-1.0.7"
-              sources."string_decoder-0.10.31"
+              sources."string_decoder-1.0.0"
               sources."util-deprecate-1.0.2"
             ];
           })
           sources."xtend-4.0.1"
         ];
       })
+      sources."v8-compile-cache-1.1.0"
       (sources."validate-npm-package-license-3.0.1" // {
         dependencies = [
           (sources."spdx-correct-1.0.2" // {
@@ -40721,14 +41006,14 @@ in
             ];
           })
           sources."read-all-stream-3.1.0"
-          (sources."readable-stream-2.2.6" // {
+          (sources."readable-stream-2.2.9" // {
             dependencies = [
               sources."buffer-shims-1.0.0"
               sources."core-util-is-1.0.2"
               sources."isarray-1.0.0"
               sources."inherits-2.0.3"
               sources."process-nextick-args-1.0.7"
-              sources."string_decoder-0.10.31"
+              sources."string_decoder-1.0.0"
               sources."util-deprecate-1.0.2"
             ];
           })
@@ -40870,14 +41155,14 @@ in
               })
               sources."extend-3.0.0"
               sources."forever-agent-0.6.1"
-              (sources."form-data-2.1.2" // {
+              (sources."form-data-2.1.4" // {
                 dependencies = [
                   sources."asynckit-0.4.0"
                 ];
               })
               (sources."har-validator-4.2.1" // {
                 dependencies = [
-                  (sources."ajv-4.11.5" // {
+                  (sources."ajv-4.11.6" // {
                     dependencies = [
                       sources."co-4.6.0"
                       (sources."json-stable-stringify-1.0.1" // {
@@ -40909,7 +41194,7 @@ in
                       sources."verror-1.3.6"
                     ];
                   })
-                  (sources."sshpk-1.11.0" // {
+                  (sources."sshpk-1.13.0" // {
                     dependencies = [
                       sources."asn1-0.2.3"
                       sources."assert-plus-1.0.0"
@@ -40971,7 +41256,7 @@ in
           sources."minimist-1.2.0"
           (sources."normalize-package-data-2.3.6" // {
             dependencies = [
-              sources."hosted-git-info-2.4.1"
+              sources."hosted-git-info-2.4.2"
               (sources."is-builtin-module-1.0.0" // {
                 dependencies = [
                   sources."builtin-modules-1.1.1"
@@ -41014,7 +41299,7 @@ in
           })
           (sources."registry-url-3.1.0" // {
             dependencies = [
-              (sources."rc-1.2.0" // {
+              (sources."rc-1.2.1" // {
                 dependencies = [
                   sources."deep-extend-0.4.1"
                   sources."ini-1.3.4"
@@ -41033,9 +41318,9 @@ in
       })
       (sources."package-json-2.4.0" // {
         dependencies = [
-          (sources."registry-auth-token-3.1.0" // {
+          (sources."registry-auth-token-3.1.2" // {
             dependencies = [
-              (sources."rc-1.2.0" // {
+              (sources."rc-1.2.1" // {
                 dependencies = [
                   sources."deep-extend-0.4.1"
                   sources."ini-1.3.4"
@@ -41047,7 +41332,7 @@ in
           })
           (sources."registry-url-3.1.0" // {
             dependencies = [
-              (sources."rc-1.2.0" // {
+              (sources."rc-1.2.1" // {
                 dependencies = [
                   sources."deep-extend-0.4.1"
                   sources."ini-1.3.4"
@@ -41115,7 +41400,7 @@ in
               })
               (sources."normalize-package-data-2.3.6" // {
                 dependencies = [
-                  sources."hosted-git-info-2.4.1"
+                  sources."hosted-git-info-2.4.2"
                   (sources."is-builtin-module-1.0.0" // {
                     dependencies = [
                       sources."builtin-modules-1.1.1"
@@ -41223,13 +41508,13 @@ in
                         dependencies = [
                           sources."inherits-2.0.3"
                           sources."typedarray-0.0.6"
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -41288,14 +41573,14 @@ in
               (sources."are-we-there-yet-1.1.2" // {
                 dependencies = [
                   sources."delegates-1.0.0"
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."inherits-2.0.3"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -41438,7 +41723,7 @@ in
               })
               (sources."minimatch-3.0.3" // {
                 dependencies = [
-                  (sources."brace-expansion-1.1.6" // {
+                  (sources."brace-expansion-1.1.7" // {
                     dependencies = [
                       sources."balanced-match-0.4.2"
                       sources."concat-map-0.0.1"
@@ -41477,7 +41762,7 @@ in
                   sources."inherits-2.0.3"
                   (sources."minimatch-3.0.3" // {
                     dependencies = [
-                      (sources."brace-expansion-1.1.6" // {
+                      (sources."brace-expansion-1.1.7" // {
                         dependencies = [
                           sources."balanced-match-0.4.2"
                           sources."concat-map-0.0.1"
@@ -41526,13 +41811,13 @@ in
                         dependencies = [
                           sources."inherits-2.0.3"
                           sources."typedarray-0.0.6"
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
@@ -41584,14 +41869,14 @@ in
             dependencies = [
               (sources."through2-2.0.3" // {
                 dependencies = [
-                  (sources."readable-stream-2.2.6" // {
+                  (sources."readable-stream-2.2.9" // {
                     dependencies = [
                       sources."buffer-shims-1.0.0"
                       sources."core-util-is-1.0.2"
                       sources."isarray-1.0.0"
                       sources."inherits-2.0.3"
                       sources."process-nextick-args-1.0.7"
-                      sources."string_decoder-0.10.31"
+                      sources."string_decoder-1.0.0"
                       sources."util-deprecate-1.0.2"
                     ];
                   })
@@ -41623,14 +41908,14 @@ in
                     dependencies = [
                       (sources."first-chunk-stream-2.0.0" // {
                         dependencies = [
-                          (sources."readable-stream-2.2.6" // {
+                          (sources."readable-stream-2.2.9" // {
                             dependencies = [
                               sources."buffer-shims-1.0.0"
                               sources."core-util-is-1.0.2"
                               sources."isarray-1.0.0"
                               sources."inherits-2.0.3"
                               sources."process-nextick-args-1.0.7"
-                              sources."string_decoder-0.10.31"
+                              sources."string_decoder-1.0.0"
                               sources."util-deprecate-1.0.2"
                             ];
                           })
diff --git a/pkgs/development/node-packages/node-packages-v6.nix b/pkgs/development/node-packages/node-packages-v6.nix
index 08070fe0e5f..d61af12b713 100644
--- a/pkgs/development/node-packages/node-packages-v6.nix
+++ b/pkgs/development/node-packages/node-packages-v6.nix
@@ -625,13 +625,13 @@ let
         sha1 = "f0050ed833e2b3b12daba83d6f9e3d96852ee970";
       };
     };
-    "azure-arm-trafficmanager-0.10.5" = {
+    "azure-arm-trafficmanager-0.12.0" = {
       name = "azure-arm-trafficmanager";
       packageName = "azure-arm-trafficmanager";
-      version = "0.10.5";
+      version = "0.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-arm-trafficmanager/-/azure-arm-trafficmanager-0.10.5.tgz";
-        sha1 = "b42683cb6dfdfed0f93875d72a0b8a53b3204d01";
+        url = "https://registry.npmjs.org/azure-arm-trafficmanager/-/azure-arm-trafficmanager-0.12.0.tgz";
+        sha1 = "609e585c0253960a91deaf773dae1ce184ce414b";
       };
     };
     "azure-arm-dns-0.11.1" = {
@@ -697,13 +697,13 @@ let
         sha1 = "379e6c2ed4155de86caff63243923c7330d34802";
       };
     };
-    "azure-asm-compute-0.17.0" = {
+    "azure-asm-compute-0.18.0" = {
       name = "azure-asm-compute";
       packageName = "azure-asm-compute";
-      version = "0.17.0";
+      version = "0.18.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-asm-compute/-/azure-asm-compute-0.17.0.tgz";
-        sha1 = "15967b535c06a5d06330b3d5adbf5b4b85e9df90";
+        url = "https://registry.npmjs.org/azure-asm-compute/-/azure-asm-compute-0.18.0.tgz";
+        sha1 = "109c31e17c697f4a00a01533fb230bf3ae448685";
       };
     };
     "azure-asm-hdinsight-0.10.2" = {
@@ -814,13 +814,13 @@ let
         sha1 = "bfd0c01a8ae6afd90eaa13360976242e28459650";
       };
     };
-    "azure-storage-2.0.0" = {
+    "azure-storage-2.1.0" = {
       name = "azure-storage";
       packageName = "azure-storage";
-      version = "2.0.0";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/azure-storage/-/azure-storage-2.0.0.tgz";
-        sha1 = "581ed1245ee105e818806efd5cc5cc4c14eab7c0";
+        url = "https://registry.npmjs.org/azure-storage/-/azure-storage-2.1.0.tgz";
+        sha1 = "7fc81246cd64b54cabced70b5138d7cc4571ea01";
       };
     };
     "azure-arm-batch-0.3.0" = {
@@ -1741,13 +1741,13 @@ let
         sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
       };
     };
-    "brace-expansion-1.1.6" = {
+    "brace-expansion-1.1.7" = {
       name = "brace-expansion";
       packageName = "brace-expansion";
-      version = "1.1.6";
+      version = "1.1.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz";
-        sha1 = "7197d7eaa9b87e648390ea61fc66c84427420df9";
+        url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.7.tgz";
+        sha1 = "3effc3c50e000531fb720eaff80f0ae8ef23cf59";
       };
     };
     "balanced-match-0.4.2" = {
@@ -1993,13 +1993,13 @@ let
         sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
       };
     };
-    "async-2.2.0" = {
+    "async-2.3.0" = {
       name = "async";
       packageName = "async";
-      version = "2.2.0";
+      version = "2.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/async/-/async-2.2.0.tgz";
-        sha1 = "c324eba010a237e4fbd55a12dee86367d5c0ef32";
+        url = "https://registry.npmjs.org/async/-/async-2.3.0.tgz";
+        sha1 = "1013d1051047dd320fe24e494d5c66ecaf6147d9";
       };
     };
     "lodash-4.17.4" = {
@@ -2218,13 +2218,13 @@ let
         sha1 = "a3b87e40298d8c380552d8cc7628a0bb95a22918";
       };
     };
-    "sshpk-1.11.0" = {
+    "sshpk-1.13.0" = {
       name = "sshpk";
       packageName = "sshpk";
-      version = "1.11.0";
+      version = "1.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.11.0.tgz";
-        sha1 = "2d8d5ebb4a6fab28ffba37fa62a90f4a3ea59d77";
+        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.13.0.tgz";
+        sha1 = "ff2a3e4fd04497555fed97b39a0fd82fafb3a33c";
       };
     };
     "assert-plus-1.0.0" = {
@@ -2434,13 +2434,13 @@ let
         sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777";
       };
     };
-    "readable-stream-2.2.6" = {
+    "readable-stream-2.2.9" = {
       name = "readable-stream";
       packageName = "readable-stream";
-      version = "2.2.6";
+      version = "2.2.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.6.tgz";
-        sha1 = "8b43aed76e71483938d12a8d46c6cf1a00b1f816";
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.9.tgz";
+        sha1 = "cf78ec6f4a6d1eb43d26488cac97f042e74b7fc8";
       };
     };
     "buffer-shims-1.0.0" = {
@@ -2452,6 +2452,15 @@ let
         sha1 = "9978ce317388c649ad8793028c3477ef044a8b51";
       };
     };
+    "string_decoder-1.0.0" = {
+      name = "string_decoder";
+      packageName = "string_decoder";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.0.tgz";
+        sha1 = "f06f41157b664d86069f84bdbdc9b0d8ab281667";
+      };
+    };
     "http-basic-2.5.1" = {
       name = "http-basic";
       packageName = "http-basic";
@@ -2938,13 +2947,13 @@ let
         sha1 = "df010aa1287e164bbda6f9723b0a96a1ec4187a1";
       };
     };
-    "hosted-git-info-2.4.1" = {
+    "hosted-git-info-2.4.2" = {
       name = "hosted-git-info";
       packageName = "hosted-git-info";
-      version = "2.4.1";
+      version = "2.4.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.4.1.tgz";
-        sha1 = "4b0445e41c004a8bd1337773a4ff790ca40318c8";
+        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.4.2.tgz";
+        sha1 = "0076b9f46a270506ddbaaea56496897460612a67";
       };
     };
     "is-builtin-module-1.0.0" = {
@@ -3298,13 +3307,13 @@ let
         sha1 = "bb35f8a519f600e0fa6b8485241c979d0141fb2d";
       };
     };
-    "buffer-5.0.5" = {
+    "buffer-5.0.6" = {
       name = "buffer";
       packageName = "buffer";
-      version = "5.0.5";
+      version = "5.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/buffer/-/buffer-5.0.5.tgz";
-        sha1 = "35c9393244a90aff83581063d16f0882cecc9418";
+        url = "https://registry.npmjs.org/buffer/-/buffer-5.0.6.tgz";
+        sha1 = "2ea669f7eec0b6eda05b08f8b5ff661b28573588";
       };
     };
     "cached-path-relative-1.0.1" = {
@@ -3415,13 +3424,13 @@ let
         sha1 = "3a03edc2214bca3b66424a3e7959349509cb0351";
       };
     };
-    "https-browserify-0.0.1" = {
+    "https-browserify-1.0.0" = {
       name = "https-browserify";
       packageName = "https-browserify";
-      version = "0.0.1";
+      version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz";
-        sha1 = "3f91365cabe60b77ed0ebba24b454e3e09d95a82";
+        url = "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz";
+        sha1 = "ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73";
       };
     };
     "insert-module-globals-7.0.1" = {
@@ -3532,13 +3541,13 @@ let
         sha1 = "66266ee5f9bdb9940a4e4514cafb43bb71e5c9db";
       };
     };
-    "stream-http-2.6.3" = {
+    "stream-http-2.7.0" = {
       name = "stream-http";
       packageName = "stream-http";
-      version = "2.6.3";
+      version = "2.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/stream-http/-/stream-http-2.6.3.tgz";
-        sha1 = "4c3ddbf9635968ea2cfd4e48d43de5def2625ac3";
+        url = "https://registry.npmjs.org/stream-http/-/stream-http-2.7.0.tgz";
+        sha1 = "cec1f4e3b494bc4a81b451808970f8b20b4ed5f6";
       };
     };
     "subarg-1.0.0" = {
@@ -3919,13 +3928,13 @@ let
         sha1 = "1332ff00156c0a0ffdd8236013d07b77a0451573";
       };
     };
-    "hmac-drbg-1.0.0" = {
+    "hmac-drbg-1.0.1" = {
       name = "hmac-drbg";
       packageName = "hmac-drbg";
-      version = "1.0.0";
+      version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.0.tgz";
-        sha1 = "3db471f45aae4a994a0688322171f51b8b91bee5";
+        url = "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz";
+        sha1 = "d2745701025a6c775a6c545793ed502fc0c649a1";
       };
     };
     "minimalistic-crypto-utils-1.0.1" = {
@@ -4612,13 +4621,13 @@ let
         sha1 = "da3ea74686fa21a19a111c326e90eb15a0196686";
       };
     };
-    "parse-torrent-5.8.2" = {
+    "parse-torrent-5.8.3" = {
       name = "parse-torrent";
       packageName = "parse-torrent";
-      version = "5.8.2";
+      version = "5.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/parse-torrent/-/parse-torrent-5.8.2.tgz";
-        sha1 = "09f02ca43ec2d885d1460aacb0fb50c79b3c49f9";
+        url = "https://registry.npmjs.org/parse-torrent/-/parse-torrent-5.8.3.tgz";
+        sha1 = "f95ef23301239609de406794ad9f958a1bca1b6c";
       };
     };
     "pump-0.3.5" = {
@@ -4810,31 +4819,31 @@ let
         sha1 = "122e161591e21ff4c52530305693f20e6393a398";
       };
     };
-    "magnet-uri-5.1.5" = {
+    "magnet-uri-5.1.6" = {
       name = "magnet-uri";
       packageName = "magnet-uri";
-      version = "5.1.5";
+      version = "5.1.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/magnet-uri/-/magnet-uri-5.1.5.tgz";
-        sha1 = "be6abbf2648796c6d6e36e66416f7e0feecf2df8";
+        url = "https://registry.npmjs.org/magnet-uri/-/magnet-uri-5.1.6.tgz";
+        sha1 = "60e8fb5ea90488c8491701eb306970f3126480b3";
       };
     };
-    "parse-torrent-file-4.0.1" = {
+    "parse-torrent-file-4.0.2" = {
       name = "parse-torrent-file";
       packageName = "parse-torrent-file";
-      version = "4.0.1";
+      version = "4.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/parse-torrent-file/-/parse-torrent-file-4.0.1.tgz";
-        sha1 = "4580c5ebb3f6e607baa02ef0ace51f627859e699";
+        url = "https://registry.npmjs.org/parse-torrent-file/-/parse-torrent-file-4.0.2.tgz";
+        sha1 = "981a22143832abbcd99052d889d31a39ae3f9bfe";
       };
     };
-    "simple-get-2.4.0" = {
+    "simple-get-2.5.1" = {
       name = "simple-get";
       packageName = "simple-get";
-      version = "2.4.0";
+      version = "2.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/simple-get/-/simple-get-2.4.0.tgz";
-        sha1 = "31ae7478ea0042b107c743a5af657333d778f7c2";
+        url = "https://registry.npmjs.org/simple-get/-/simple-get-2.5.1.tgz";
+        sha1 = "eb418fb2c9e431631b4cd6c478af548da613ccd2";
       };
     };
     "thirty-two-1.0.2" = {
@@ -4963,13 +4972,13 @@ let
         sha1 = "8e177206c3c80837d85632e8b9359dfe8b2f6eaf";
       };
     };
-    "fs-chunk-store-1.6.4" = {
+    "fs-chunk-store-1.6.5" = {
       name = "fs-chunk-store";
       packageName = "fs-chunk-store";
-      version = "1.6.4";
+      version = "1.6.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fs-chunk-store/-/fs-chunk-store-1.6.4.tgz";
-        sha1 = "5aa0025d58533118552e815f5986f39f93b06e69";
+        url = "https://registry.npmjs.org/fs-chunk-store/-/fs-chunk-store-1.6.5.tgz";
+        sha1 = "fc42c2ff4c7f1688ab5fd41cf17c0f9ece4c6156";
       };
     };
     "hat-0.0.3" = {
@@ -5035,22 +5044,22 @@ let
         sha1 = "2d17d82cf669ada7f9dfe75db4b31f7034b71e29";
       };
     };
-    "torrent-piece-1.1.0" = {
+    "torrent-piece-1.1.1" = {
       name = "torrent-piece";
       packageName = "torrent-piece";
-      version = "1.1.0";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/torrent-piece/-/torrent-piece-1.1.0.tgz";
-        sha1 = "dd3ae8dba3e58df5c9ed3457c055177849d82854";
+        url = "https://registry.npmjs.org/torrent-piece/-/torrent-piece-1.1.1.tgz";
+        sha1 = "50346e42a43b35daf2a86f414afb153629a854be";
       };
     };
-    "random-access-file-1.5.0" = {
+    "random-access-file-1.6.1" = {
       name = "random-access-file";
       packageName = "random-access-file";
-      version = "1.5.0";
+      version = "1.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/random-access-file/-/random-access-file-1.5.0.tgz";
-        sha1 = "dc1b137e5922c203cc6bc8b58564be68d5269a17";
+        url = "https://registry.npmjs.org/random-access-file/-/random-access-file-1.6.1.tgz";
+        sha1 = "33358436f43076d34a058db47177a691319f0e99";
       };
     };
     "run-parallel-1.1.6" = {
@@ -5071,6 +5080,15 @@ let
         sha1 = "a862e018e3fb1ea2ec3fce5d55605cf57f247371";
       };
     };
+    "buffer-alloc-unsafe-1.0.0" = {
+      name = "buffer-alloc-unsafe";
+      packageName = "buffer-alloc-unsafe";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.0.0.tgz";
+        sha1 = "474aa88f34e7bc75fa311d2e6457409c5846c3fe";
+      };
+    };
     "ip-1.1.5" = {
       name = "ip";
       packageName = "ip";
@@ -5368,13 +5386,13 @@ let
         sha1 = "bbcd40c8451a7ed4ef5c373b8169a409dd1d11d9";
       };
     };
-    "ws-2.2.2" = {
+    "ws-2.2.3" = {
       name = "ws";
       packageName = "ws";
-      version = "2.2.2";
+      version = "2.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ws/-/ws-2.2.2.tgz";
-        sha1 = "aa26daf39c52b20ed716e3447f8641494a726b01";
+        url = "https://registry.npmjs.org/ws/-/ws-2.2.3.tgz";
+        sha1 = "f36c9719a56dff813f455af912a2078145bbd940";
       };
     };
     "ultron-1.1.0" = {
@@ -5863,13 +5881,13 @@ let
         sha1 = "364200d5f13646ca8bcd44490271335614792300";
       };
     };
-    "big-integer-1.6.17" = {
+    "big-integer-1.6.19" = {
       name = "big-integer";
       packageName = "big-integer";
-      version = "1.6.17";
+      version = "1.6.19";
       src = fetchurl {
-        url = "https://registry.npmjs.org/big-integer/-/big-integer-1.6.17.tgz";
-        sha1 = "f0dcf5109a949e42a993ee3e8fb2070452817b51";
+        url = "https://registry.npmjs.org/big-integer/-/big-integer-1.6.19.tgz";
+        sha1 = "4a5e915e3188c8708f254b356196f28542acc1e0";
       };
     };
     "sax-1.1.4" = {
@@ -5962,13 +5980,13 @@ let
         sha1 = "2ac4c46ea30516c8c4cbdb5e3ac7418e592de20c";
       };
     };
-    "init-package-json-1.9.5" = {
+    "init-package-json-1.9.6" = {
       name = "init-package-json";
       packageName = "init-package-json";
-      version = "1.9.5";
+      version = "1.9.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/init-package-json/-/init-package-json-1.9.5.tgz";
-        sha1 = "7d4d64a264dc76c1f1f557cbbe824978bf10cd09";
+        url = "https://registry.npmjs.org/init-package-json/-/init-package-json-1.9.6.tgz";
+        sha1 = "789fc2b74466a4952b9ea77c0575bc78ebd60a61";
       };
     };
     "nopt-3.0.6" = {
@@ -6061,13 +6079,13 @@ let
         sha1 = "ef1d7093a9d3287e3fce92df916f8616b23f90b4";
       };
     };
-    "xcode-0.9.1" = {
+    "xcode-0.9.3" = {
       name = "xcode";
       packageName = "xcode";
-      version = "0.9.1";
+      version = "0.9.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/xcode/-/xcode-0.9.1.tgz";
-        sha1 = "5b4e71b71b03573ff0cdb48439103e8107da0f95";
+        url = "https://registry.npmjs.org/xcode/-/xcode-0.9.3.tgz";
+        sha1 = "910a89c16aee6cc0b42ca805a6d0b4cf87211cf3";
       };
     };
     "browserify-transform-tools-1.5.3" = {
@@ -6196,6 +6214,15 @@ let
         sha1 = "6d1bb601b07a4efced97094132093027c95bc298";
       };
     };
+    "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";
+      };
+    };
     "compression-1.6.2" = {
       name = "compression";
       packageName = "compression";
@@ -6484,13 +6511,13 @@ let
         sha1 = "66567e37043eeb4f04d91bd658c0cbefb55b8e04";
       };
     };
-    "type-is-1.6.14" = {
+    "type-is-1.6.15" = {
       name = "type-is";
       packageName = "type-is";
-      version = "1.6.14";
+      version = "1.6.15";
       src = fetchurl {
-        url = "https://registry.npmjs.org/type-is/-/type-is-1.6.14.tgz";
-        sha1 = "e219639c17ded1ca0789092dd54a03826b817cb2";
+        url = "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz";
+        sha1 = "cab10fb4909e441c82842eafe1ad646c81804410";
       };
     };
     "utils-merge-1.0.0" = {
@@ -6574,13 +6601,13 @@ let
         sha1 = "88fcfc1f73c0c8bbd5b7c776b6d3f3501eed073d";
       };
     };
-    "npm-package-arg-4.2.1" = {
+    "npm-package-arg-5.0.1" = {
       name = "npm-package-arg";
       packageName = "npm-package-arg";
-      version = "4.2.1";
+      version = "5.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-4.2.1.tgz";
-        sha1 = "593303fdea85f7c422775f17f9eb7670f680e3ec";
+        url = "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-5.0.1.tgz";
+        sha1 = "09a816e3f45a549e3ddaf33e9bae5e7b31077872";
       };
     };
     "promzard-0.3.0" = {
@@ -7150,6 +7177,15 @@ let
         sha1 = "1c11f9218f076089a47dd512f93c6699a6a81d52";
       };
     };
+    "npm-package-arg-4.2.1" = {
+      name = "npm-package-arg";
+      packageName = "npm-package-arg";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-4.2.1.tgz";
+        sha1 = "593303fdea85f7c422775f17f9eb7670f680e3ec";
+      };
+    };
     "request-2.81.0" = {
       name = "request";
       packageName = "request";
@@ -7168,13 +7204,13 @@ let
         sha1 = "1b681c21ff84033c826543090689420d187151dc";
       };
     };
-    "form-data-2.1.2" = {
+    "form-data-2.1.4" = {
       name = "form-data";
       packageName = "form-data";
-      version = "2.1.2";
+      version = "2.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-2.1.2.tgz";
-        sha1 = "89c3534008b97eada4cbb157d58f6f5df025eae4";
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz";
+        sha1 = "33c183acf193276ecaa98143a69e94bfee1750d1";
       };
     };
     "har-validator-4.2.1" = {
@@ -7213,13 +7249,13 @@ let
         sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
       };
     };
-    "ajv-4.11.5" = {
+    "ajv-4.11.6" = {
       name = "ajv";
       packageName = "ajv";
-      version = "4.11.5";
+      version = "4.11.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ajv/-/ajv-4.11.5.tgz";
-        sha1 = "b6ee74657b993a01dce44b7944d56f485828d5bd";
+        url = "https://registry.npmjs.org/ajv/-/ajv-4.11.6.tgz";
+        sha1 = "947e93049790942b2a2d60a8289b28924d39f987";
       };
     };
     "har-schema-1.0.5" = {
@@ -7501,49 +7537,40 @@ let
         sha1 = "fb885f18b0f3aad189f824862536bceeec750900";
       };
     };
-    "pegjs-0.9.0" = {
+    "pegjs-0.10.0" = {
       name = "pegjs";
       packageName = "pegjs";
-      version = "0.9.0";
+      version = "0.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pegjs/-/pegjs-0.9.0.tgz";
-        sha1 = "f6aefa2e3ce56169208e52179dfe41f89141a369";
+        url = "https://registry.npmjs.org/pegjs/-/pegjs-0.10.0.tgz";
+        sha1 = "cf8bafae6eddff4b5a7efb185269eaaf4610ddbd";
       };
     };
-    "simple-plist-0.1.4" = {
+    "simple-plist-0.2.1" = {
       name = "simple-plist";
       packageName = "simple-plist";
-      version = "0.1.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/simple-plist/-/simple-plist-0.1.4.tgz";
-        sha1 = "10eb51b47e33c556eb8ec46d5ee64d64e717db5d";
-      };
-    };
-    "bplist-parser-0.0.6" = {
-      name = "bplist-parser";
-      packageName = "bplist-parser";
-      version = "0.0.6";
+      version = "0.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.0.6.tgz";
-        sha1 = "38da3471817df9d44ab3892e27707bbbd75a11b9";
+        url = "https://registry.npmjs.org/simple-plist/-/simple-plist-0.2.1.tgz";
+        sha1 = "71766db352326928cf3a807242ba762322636723";
       };
     };
-    "bplist-creator-0.0.4" = {
+    "bplist-creator-0.0.7" = {
       name = "bplist-creator";
       packageName = "bplist-creator";
-      version = "0.0.4";
+      version = "0.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.0.4.tgz";
-        sha1 = "4ac0496782e127a85c1d2026a4f5eb22a7aff991";
+        url = "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.0.7.tgz";
+        sha1 = "37df1536092824b87c42f957b01344117372ae45";
       };
     };
-    "stream-buffers-0.2.6" = {
+    "stream-buffers-2.2.0" = {
       name = "stream-buffers";
       packageName = "stream-buffers";
-      version = "0.2.6";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/stream-buffers/-/stream-buffers-0.2.6.tgz";
-        sha1 = "181c08d5bb3690045f69401b9ae6a7a0cf3313fc";
+        url = "https://registry.npmjs.org/stream-buffers/-/stream-buffers-2.2.0.tgz";
+        sha1 = "91d5f5130d1cef96dcfa7f726945188741d09ee4";
       };
     };
     "async-1.5.2" = {
@@ -7834,13 +7861,13 @@ let
         sha1 = "35c3e177f2078ef789ee4bfafa4373074eaef4fa";
       };
     };
-    "rc-1.2.0" = {
+    "rc-1.2.1" = {
       name = "rc";
       packageName = "rc";
-      version = "1.2.0";
+      version = "1.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rc/-/rc-1.2.0.tgz";
-        sha1 = "c7de973b7b46297c041366b2fd3d2363b1697c66";
+        url = "https://registry.npmjs.org/rc/-/rc-1.2.1.tgz";
+        sha1 = "2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95";
       };
     };
     "strip-json-comments-2.0.1" = {
@@ -8267,13 +8294,13 @@ let
         sha1 = "14ad6113812d2d37d72e67b4cacb4bb726505f11";
       };
     };
-    "nan-2.5.1" = {
+    "nan-2.6.2" = {
       name = "nan";
       packageName = "nan";
-      version = "2.5.1";
+      version = "2.6.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nan/-/nan-2.5.1.tgz";
-        sha1 = "d5b01691253326a97a2bbee9e61c55d8d60351e2";
+        url = "https://registry.npmjs.org/nan/-/nan-2.6.2.tgz";
+        sha1 = "e4ff34e6c95fdfb5aecc08de6596f43605a7db45";
       };
     };
     "jsonparse-0.0.6" = {
@@ -9233,13 +9260,13 @@ let
         sha1 = "e01975e812781a163a6dadfdd80398dc64c889c3";
       };
     };
-    "espree-3.4.0" = {
+    "espree-3.4.1" = {
       name = "espree";
       packageName = "espree";
-      version = "3.4.0";
+      version = "3.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/espree/-/espree-3.4.0.tgz";
-        sha1 = "41656fa5628e042878025ef467e78f125cb86e1d";
+        url = "https://registry.npmjs.org/espree/-/espree-3.4.1.tgz";
+        sha1 = "28a83ab4aaed71ed8fe0f5efe61b76a05c13c4d2";
       };
     };
     "esquery-1.0.0" = {
@@ -9287,13 +9314,13 @@ let
         sha1 = "0c0ca696d9b9bb694d2e5470bd37777caad50286";
       };
     };
-    "ignore-3.2.6" = {
+    "ignore-3.2.7" = {
       name = "ignore";
       packageName = "ignore";
-      version = "3.2.6";
+      version = "3.2.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ignore/-/ignore-3.2.6.tgz";
-        sha1 = "26e8da0644be0bb4cb39516f6c79f0e0f4ffe48c";
+        url = "https://registry.npmjs.org/ignore/-/ignore-3.2.7.tgz";
+        sha1 = "4810ca5f1d8eca5595213a34b94f2eb4ed926bbd";
       };
     };
     "inquirer-0.12.0" = {
@@ -9314,13 +9341,13 @@ let
         sha1 = "8df57c61ea2e3c501408d100fb013cf8d6e0cc62";
       };
     };
-    "js-yaml-3.8.2" = {
+    "js-yaml-3.8.3" = {
       name = "js-yaml";
       packageName = "js-yaml";
-      version = "3.8.2";
+      version = "3.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.8.2.tgz";
-        sha1 = "02d3e2c0f6beab20248d412c352203827d786721";
+        url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.8.3.tgz";
+        sha1 = "33a05ec481c850c8875929166fe1beb61c728766";
       };
     };
     "levn-0.3.0" = {
@@ -9485,13 +9512,13 @@ let
         sha1 = "f6caca728933a850ef90661d0e17982ba47111a2";
       };
     };
-    "acorn-4.0.4" = {
+    "acorn-5.0.3" = {
       name = "acorn";
       packageName = "acorn";
-      version = "4.0.4";
+      version = "5.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/acorn/-/acorn-4.0.4.tgz";
-        sha1 = "17a8d6a7a6c4ef538b814ec9abac2779293bf30a";
+        url = "https://registry.npmjs.org/acorn/-/acorn-5.0.3.tgz";
+        sha1 = "c460df08491463f028ccb82eab3730bf01087b3d";
       };
     };
     "acorn-jsx-3.0.1" = {
@@ -10088,13 +10115,13 @@ let
         sha1 = "9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145";
       };
     };
-    "arr-flatten-1.0.1" = {
+    "arr-flatten-1.0.2" = {
       name = "arr-flatten";
       packageName = "arr-flatten";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.0.1.tgz";
-        sha1 = "e5ffe54d45e19f32f216e91eb99c8ce892bb604b";
+        url = "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.0.2.tgz";
+        sha1 = "1ec1e63439c54f67d6f72bb4299c3d4f73b2d996";
       };
     };
     "expand-range-1.8.2" = {
@@ -10439,13 +10466,13 @@ let
         sha1 = "21ffdc429be2b50cb361df990a40a7731288e935";
       };
     };
-    "simple-git-1.69.0" = {
+    "simple-git-1.70.0" = {
       name = "simple-git";
       packageName = "simple-git";
-      version = "1.69.0";
+      version = "1.70.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/simple-git/-/simple-git-1.69.0.tgz";
-        sha1 = "e86ead16abfc273dca9ae2bd51e5eb3c0122c177";
+        url = "https://registry.npmjs.org/simple-git/-/simple-git-1.70.0.tgz";
+        sha1 = "62cfd90bb2628a13ff4fe704c840fcef56244a71";
       };
     };
     "tabtab-git+https://github.com/mixu/node-tabtab.git" = {
@@ -10485,13 +10512,13 @@ let
         sha1 = "a4274eeb32fa765da5a7a3b1712617ce3b144149";
       };
     };
-    "coffee-script-1.12.4" = {
+    "coffee-script-1.12.5" = {
       name = "coffee-script";
       packageName = "coffee-script";
-      version = "1.12.4";
+      version = "1.12.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.4.tgz";
-        sha1 = "fe1bced97fe1fb3927b998f2b45616e0658be1ff";
+        url = "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.5.tgz";
+        sha1 = "809f4585419112bbfe46a073ad7543af18c27346";
       };
     };
     "jade-1.11.0" = {
@@ -10575,13 +10602,13 @@ let
         sha1 = "5d23cb35561dd85dc67fb8482309b47d53cce9a7";
       };
     };
-    "uglify-js-2.8.20" = {
+    "uglify-js-2.8.22" = {
       name = "uglify-js";
       packageName = "uglify-js";
-      version = "2.8.20";
+      version = "2.8.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.20.tgz";
-        sha1 = "be87100fbc18de3876ed606e9d24b4568311cecf";
+        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.22.tgz";
+        sha1 = "d54934778a8da14903fa29a326fb24c0ab51a1a0";
       };
     };
     "void-elements-2.0.1" = {
@@ -13824,13 +13851,13 @@ let
         sha1 = "b0bf8a079d67732bcce019eaf8da1d7936658a7f";
       };
     };
-    "node-red-node-email-0.1.21" = {
+    "node-red-node-email-0.1.22" = {
       name = "node-red-node-email";
       packageName = "node-red-node-email";
-      version = "0.1.21";
+      version = "0.1.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-red-node-email/-/node-red-node-email-0.1.21.tgz";
-        sha1 = "63baed16d538e786ddadc169b23552d9eb9abc30";
+        url = "https://registry.npmjs.org/node-red-node-email/-/node-red-node-email-0.1.22.tgz";
+        sha1 = "99c610fdba3f498ddab71da9273d6003e4e0280e";
       };
     };
     "node-red-node-twitter-0.1.10" = {
@@ -13842,13 +13869,13 @@ let
         sha1 = "5883f6a8acebc99829c52400420d5ed52f44d221";
       };
     };
-    "node-red-node-rbe-0.1.6" = {
+    "node-red-node-rbe-0.1.8" = {
       name = "node-red-node-rbe";
       packageName = "node-red-node-rbe";
-      version = "0.1.6";
+      version = "0.1.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-red-node-rbe/-/node-red-node-rbe-0.1.6.tgz";
-        sha1 = "36c22f39c44dd13b5ca9b4e14f05dca001ac5539";
+        url = "https://registry.npmjs.org/node-red-node-rbe/-/node-red-node-rbe-0.1.8.tgz";
+        sha1 = "96108a5720842387ea5ddd046d7e483c7ab2a5dc";
       };
     };
     "bcrypt-1.0.2" = {
@@ -14031,13 +14058,13 @@ let
         sha1 = "9929acdf628fc2c41098deab82ac580cf149aae4";
       };
     };
-    "moment-timezone-0.5.11" = {
+    "moment-timezone-0.5.13" = {
       name = "moment-timezone";
       packageName = "moment-timezone";
-      version = "0.5.11";
+      version = "0.5.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.11.tgz";
-        sha1 = "9b76c03d8ef514c7e4249a7bbce649eed39ef29f";
+        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.13.tgz";
+        sha1 = "99ce5c7d827262eb0f1f702044177f60745d7b90";
       };
     };
     "content-disposition-0.5.1" = {
@@ -14139,22 +14166,22 @@ let
         sha1 = "c0c352501cf6f52e9124e3ef89c9806e2022ebef";
       };
     };
-    "help-me-1.0.1" = {
+    "help-me-1.1.0" = {
       name = "help-me";
       packageName = "help-me";
-      version = "1.0.1";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/help-me/-/help-me-1.0.1.tgz";
-        sha1 = "b6893c8b0ed9d3c60db83560fa75b4d0097a8d5a";
+        url = "https://registry.npmjs.org/help-me/-/help-me-1.1.0.tgz";
+        sha1 = "8f2d508d0600b4a456da2f086556e7e5c056a3c6";
       };
     };
-    "mqtt-packet-5.2.2" = {
+    "mqtt-packet-5.3.0" = {
       name = "mqtt-packet";
       packageName = "mqtt-packet";
-      version = "5.2.2";
+      version = "5.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-5.2.2.tgz";
-        sha1 = "190d4358f415c6f964211030c20ca0bf45d5698a";
+        url = "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-5.3.0.tgz";
+        sha1 = "078ed59ae4c06febf3b3eaca90b50e97e269f206";
       };
     };
     "reinterval-1.1.0" = {
@@ -14193,6 +14220,42 @@ let
         sha1 = "4701a51266f06e06eaa71fc17233822d875f4908";
       };
     };
+    "glob-stream-6.1.0" = {
+      name = "glob-stream";
+      packageName = "glob-stream";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz";
+        sha1 = "7045c99413b3eb94888d83ab46d0b404cc7bdde4";
+      };
+    };
+    "is-negated-glob-1.0.0" = {
+      name = "is-negated-glob";
+      packageName = "is-negated-glob";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz";
+        sha1 = "6910bca5da8c95e784b5751b976cf5a10fee36d2";
+      };
+    };
+    "ordered-read-streams-1.0.0" = {
+      name = "ordered-read-streams";
+      packageName = "ordered-read-streams";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.0.tgz";
+        sha1 = "d674a86ffcedf83d0ae06afa2918855e96d4033a";
+      };
+    };
+    "to-absolute-glob-2.0.1" = {
+      name = "to-absolute-glob";
+      packageName = "to-absolute-glob";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.1.tgz";
+        sha1 = "70c375805b9e3105e899ee8dbdd6a9aa108f407b";
+      };
+    };
     "feedparser-1.1.3" = {
       name = "feedparser";
       packageName = "feedparser";
@@ -14940,13 +15003,13 @@ let
         sha1 = "03726561bc268f2e5444f54c665b7fd4a8c029e2";
       };
     };
-    "mailcomposer-4.0.1" = {
+    "mailcomposer-4.0.2" = {
       name = "mailcomposer";
       packageName = "mailcomposer";
-      version = "4.0.1";
+      version = "4.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mailcomposer/-/mailcomposer-4.0.1.tgz";
-        sha1 = "0e1c44b2a07cf740ee17dc149ba009f19cadfeb4";
+        url = "https://registry.npmjs.org/mailcomposer/-/mailcomposer-4.0.2.tgz";
+        sha1 = "b635402cc7f2eedb10130d3d09ad88b1c2d7e101";
       };
     };
     "simplesmtp-0.3.35" = {
@@ -15075,15 +15138,6 @@ let
         sha1 = "d2c3c89101346982d64e57091c38487bda916fce";
       };
     };
-    "hosted-git-info-2.2.0" = {
-      name = "hosted-git-info";
-      packageName = "hosted-git-info";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.2.0.tgz";
-        sha1 = "7a0d097863d886c0fabbdcd37bf1758d8becf8a5";
-      };
-    };
     "lazy-property-1.0.0" = {
       name = "lazy-property";
       packageName = "lazy-property";
@@ -15156,15 +15210,6 @@ let
         sha1 = "be2c005fda32e0b29af1f05d7c4b33214c701f92";
       };
     };
-    "node-gyp-3.5.0" = {
-      name = "node-gyp";
-      packageName = "node-gyp";
-      version = "3.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-gyp/-/node-gyp-3.5.0.tgz";
-        sha1 = "a8fe5e611d079ec16348a3eb960e78e11c85274a";
-      };
-    };
     "npm-install-checks-3.0.0" = {
       name = "npm-install-checks";
       packageName = "npm-install-checks";
@@ -15174,13 +15219,13 @@ let
         sha1 = "d4aecdfd51a53e3723b7b2f93b2ee28e307bc0d7";
       };
     };
-    "npm-registry-client-7.4.6" = {
+    "npm-registry-client-8.1.1" = {
       name = "npm-registry-client";
       packageName = "npm-registry-client";
-      version = "7.4.6";
+      version = "8.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm-registry-client/-/npm-registry-client-7.4.6.tgz";
-        sha1 = "0aa7c55f18631b941b7b80a7aa501bfcb8b19717";
+        url = "https://registry.npmjs.org/npm-registry-client/-/npm-registry-client-8.1.1.tgz";
+        sha1 = "831476455423ca0a265c6ffdb6100fcc042b36cf";
       };
     };
     "opener-1.4.3" = {
@@ -15525,13 +15570,13 @@ let
         sha1 = "f3c9dc8738f5b59304d54d2cfb3f91d08fdd7998";
       };
     };
-    "registry-auth-token-3.1.0" = {
+    "registry-auth-token-3.1.2" = {
       name = "registry-auth-token";
       packageName = "registry-auth-token";
-      version = "3.1.0";
+      version = "3.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.1.0.tgz";
-        sha1 = "997c08256e0c7999837b90e944db39d8a790276b";
+        url = "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.1.2.tgz";
+        sha1 = "1b9e51a185c930da34a9894b12a52ea998f1adaf";
       };
     };
     "argparse-0.1.15" = {
@@ -15786,13 +15831,13 @@ let
         sha1 = "27d92fec34d27cfa42707d3b40d025ae9855f2df";
       };
     };
-    "snyk-1.26.1" = {
+    "snyk-1.28.1" = {
       name = "snyk";
       packageName = "snyk";
-      version = "1.26.1";
+      version = "1.28.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk/-/snyk-1.26.1.tgz";
-        sha1 = "12b28e9b43c6453ecb6d4be7670b0c0df7db38a5";
+        url = "https://registry.npmjs.org/snyk/-/snyk-1.28.1.tgz";
+        sha1 = "ae0faed0fcee7d5dbc0fa8a7a8c9ebacb03b6151";
       };
     };
     "spawn-please-0.2.0" = {
@@ -15903,22 +15948,22 @@ let
         sha1 = "f27aec2498b24027ac719214026521591111508f";
       };
     };
-    "snyk-module-1.7.0" = {
+    "snyk-module-1.8.1" = {
       name = "snyk-module";
       packageName = "snyk-module";
-      version = "1.7.0";
+      version = "1.8.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-module/-/snyk-module-1.7.0.tgz";
-        sha1 = "07c6ca8556d281de6f9e2368c04ecb6dd1f2631a";
+        url = "https://registry.npmjs.org/snyk-module/-/snyk-module-1.8.1.tgz";
+        sha1 = "31d5080fb1c0dfd6fa8567dd34a523fd02bf1fca";
       };
     };
-    "snyk-policy-1.7.0" = {
+    "snyk-policy-1.7.1" = {
       name = "snyk-policy";
       packageName = "snyk-policy";
-      version = "1.7.0";
+      version = "1.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.7.0.tgz";
-        sha1 = "2151c751ab1edc040fc6b94a872aa989db492324";
+        url = "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.7.1.tgz";
+        sha1 = "e413b6bd4af6050c5e5f445287909e4e98a09b22";
       };
     };
     "snyk-recursive-readdir-2.0.0" = {
@@ -16318,15 +16363,6 @@ let
         sha1 = "2c400d8d4530935bc232549c5fa385ec07de6fcd";
       };
     };
-    "gelf-stream-0.2.4" = {
-      name = "gelf-stream";
-      packageName = "gelf-stream";
-      version = "0.2.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/gelf-stream/-/gelf-stream-0.2.4.tgz";
-        sha1 = "a418c8c2e39b85b7932a3e8523f6022d6852e013";
-      };
-    };
     "mediawiki-title-0.5.6" = {
       name = "mediawiki-title";
       packageName = "mediawiki-title";
@@ -16383,6 +16419,15 @@ let
         sha1 = "b0caeeb093223370033c6c3aa1130dc86c6a087c";
       };
     };
+    "yargs-5.0.0" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs/-/yargs-5.0.0.tgz";
+        sha1 = "3355144977d05757dbb86d6e38ec056123b3a66e";
+      };
+    };
     "is-arguments-1.0.2" = {
       name = "is-arguments";
       packageName = "is-arguments";
@@ -16437,22 +16482,13 @@ let
         sha1 = "83a73f2fea569898fb737193c8f873caf6d45c94";
       };
     };
-    "gelfling-0.2.0" = {
-      name = "gelfling";
-      packageName = "gelfling";
-      version = "0.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/gelfling/-/gelfling-0.2.0.tgz";
-        sha1 = "23a13c366883adae32ecfd252a566be302b88dc3";
-      };
-    };
-    "bunyan-1.8.9" = {
+    "bunyan-1.8.10" = {
       name = "bunyan";
       packageName = "bunyan";
-      version = "1.8.9";
+      version = "1.8.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bunyan/-/bunyan-1.8.9.tgz";
-        sha1 = "2c7c9d422ea64ee2465d52b4decd72de0657401a";
+        url = "https://registry.npmjs.org/bunyan/-/bunyan-1.8.10.tgz";
+        sha1 = "201fedd26c7080b632f416072f53a90b9a52981c";
       };
     };
     "bunyan-syslog-udp-0.1.0" = {
@@ -16663,6 +16699,15 @@ let
         sha1 = "ce42ade08384ef5d62fa77c30f61a46e686f8434";
       };
     };
+    "yargs-parser-3.2.0" = {
+      name = "yargs-parser";
+      packageName = "yargs-parser";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-3.2.0.tgz";
+        sha1 = "5081355d19d9d0c8c5d81ada908cb4e6d186664f";
+      };
+    };
     "airplayer-2.0.0" = {
       name = "airplayer";
       packageName = "airplayer";
@@ -16753,15 +16798,6 @@ let
         sha1 = "d5bd826506425a3b3eacadf1e0e2c1ac3e289728";
       };
     };
-    "stream-buffers-2.2.0" = {
-      name = "stream-buffers";
-      packageName = "stream-buffers";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/stream-buffers/-/stream-buffers-2.2.0.tgz";
-        sha1 = "91d5f5130d1cef96dcfa7f726945188741d09ee4";
-      };
-    };
     "consume-http-header-1.0.0" = {
       name = "consume-http-header";
       packageName = "consume-http-header";
@@ -17545,6 +17581,96 @@ let
         sha1 = "9e785836daf46743145a5984b6268d828528ac6c";
       };
     };
+    "ast-types-0.9.8" = {
+      name = "ast-types";
+      packageName = "ast-types";
+      version = "0.9.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ast-types/-/ast-types-0.9.8.tgz";
+        sha1 = "6cb6a40beba31f49f20928e28439fc14a3dab078";
+      };
+    };
+    "babylon-7.0.0-beta.8" = {
+      name = "babylon";
+      packageName = "babylon";
+      version = "7.0.0-beta.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.8.tgz";
+        sha1 = "2bdc5ae366041442c27e068cce6f0d7c06ea9949";
+      };
+    };
+    "flow-parser-0.43.0" = {
+      name = "flow-parser";
+      packageName = "flow-parser";
+      version = "0.43.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flow-parser/-/flow-parser-0.43.0.tgz";
+        sha1 = "e2b8eb1ac83dd53f7b6b04a7c35b6a52c33479b7";
+      };
+    };
+    "jest-validate-19.0.0" = {
+      name = "jest-validate";
+      packageName = "jest-validate";
+      version = "19.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-validate/-/jest-validate-19.0.0.tgz";
+        sha1 = "8c6318a20ecfeaba0ba5378bfbb8277abded4173";
+      };
+    };
+    "jest-matcher-utils-19.0.0" = {
+      name = "jest-matcher-utils";
+      packageName = "jest-matcher-utils";
+      version = "19.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-19.0.0.tgz";
+        sha1 = "5ecd9b63565d2b001f61fbf7ec4c7f537964564d";
+      };
+    };
+    "leven-2.1.0" = {
+      name = "leven";
+      packageName = "leven";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz";
+        sha1 = "c2e7a9f772094dee9d34202ae8acce4687875580";
+      };
+    };
+    "pretty-format-19.0.0" = {
+      name = "pretty-format";
+      packageName = "pretty-format";
+      version = "19.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pretty-format/-/pretty-format-19.0.0.tgz";
+        sha1 = "56530d32acb98a3fa4851c4e2b9d37b420684c84";
+      };
+    };
+    "ansi-styles-3.0.0" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.0.0.tgz";
+        sha1 = "5404e93a544c4fec7f048262977bebfe3155e0c1";
+      };
+    };
+    "color-convert-1.9.0" = {
+      name = "color-convert";
+      packageName = "color-convert";
+      version = "1.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz";
+        sha1 = "1accf97dd739b983bf994d56fec8f95853641b7a";
+      };
+    };
+    "color-name-1.1.2" = {
+      name = "color-name";
+      packageName = "color-name";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-name/-/color-name-1.1.2.tgz";
+        sha1 = "5c8ab72b64bd2215d617ae9559ebb148475cf98d";
+      };
+    };
     "commoner-0.10.8" = {
       name = "commoner";
       packageName = "commoner";
@@ -18689,22 +18815,13 @@ let
         sha1 = "375fb0783ca8fa90307749399bc9c75eb7cf6580";
       };
     };
-    "express-4.14.1" = {
-      name = "express";
-      packageName = "express";
-      version = "4.14.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/express/-/express-4.14.1.tgz";
-        sha1 = "646c237f766f148c2120aff073817b9e4d7e0d33";
-      };
-    };
-    "express-session-1.14.2" = {
+    "express-session-1.15.2" = {
       name = "express-session";
       packageName = "express-session";
-      version = "1.14.2";
+      version = "1.15.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/express-session/-/express-session-1.14.2.tgz";
-        sha1 = "6bcf586ed6d1dc37b02570087756c9de7b80b275";
+        url = "https://registry.npmjs.org/express-session/-/express-session-1.15.2.tgz";
+        sha1 = "d98516443a4ccb8688e1725ae584c02daa4093d4";
       };
     };
     "forever-monitor-1.1.0" = {
@@ -18761,13 +18878,13 @@ let
         sha1 = "08524645ee4039dedc3dcc1dd7c6b979e0619e44";
       };
     };
-    "npm-4.1.2" = {
+    "npm-4.5.0" = {
       name = "npm";
       packageName = "npm";
-      version = "4.1.2";
+      version = "4.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm/-/npm-4.1.2.tgz";
-        sha1 = "daaa77d631947135b36528c304573243f5cd2e07";
+        url = "https://registry.npmjs.org/npm/-/npm-4.5.0.tgz";
+        sha1 = "dc6a31f28807e6db980ed5083315667dcc8d0475";
       };
     };
     "octicons-3.5.0" = {
@@ -18788,13 +18905,13 @@ let
         sha1 = "1fe63268c92e75606626437e3b906662c15ba6ee";
       };
     };
-    "raven-1.1.5" = {
+    "raven-1.2.1" = {
       name = "raven";
       packageName = "raven";
-      version = "1.1.5";
+      version = "1.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/raven/-/raven-1.1.5.tgz";
-        sha1 = "6af541406c37da1d678781d0af411c27c6f05fbf";
+        url = "https://registry.npmjs.org/raven/-/raven-1.2.1.tgz";
+        sha1 = "949c134db028a190b7bbf8f790aae541b7c020bd";
       };
     };
     "signals-1.0.0" = {
@@ -18806,13 +18923,13 @@ let
         sha1 = "65f0c1599352b35372ecaae5a250e6107376ed69";
       };
     };
-    "snapsvg-0.4.0" = {
+    "snapsvg-0.5.1" = {
       name = "snapsvg";
       packageName = "snapsvg";
-      version = "0.4.0";
+      version = "0.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snapsvg/-/snapsvg-0.4.0.tgz";
-        sha1 = "e0767014167825957de7e125c29b0fa89796ea03";
+        url = "https://registry.npmjs.org/snapsvg/-/snapsvg-0.5.1.tgz";
+        sha1 = "0caf52c79189a290746fc446cc5e863f6bdddfe3";
       };
     };
     "winston-2.3.1" = {
@@ -18824,13 +18941,13 @@ let
         sha1 = "0b48420d978c01804cf0230b648861598225a119";
       };
     };
-    "color-convert-1.9.0" = {
-      name = "color-convert";
-      packageName = "color-convert";
-      version = "1.9.0";
+    "yargs-7.1.0" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "7.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz";
-        sha1 = "1accf97dd739b983bf994d56fec8f95853641b7a";
+        url = "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz";
+        sha1 = "6ba318eb16961727f5d284f8ea003e8d6154d0c8";
       };
     };
     "color-string-1.5.2" = {
@@ -18842,15 +18959,6 @@ let
         sha1 = "26e45814bc3c9a7cbd6751648a41434514a773a9";
       };
     };
-    "color-name-1.1.2" = {
-      name = "color-name";
-      packageName = "color-name";
-      version = "1.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/color-name/-/color-name-1.1.2.tgz";
-        sha1 = "5c8ab72b64bd2215d617ae9559ebb148475cf98d";
-      };
-    };
     "simple-swizzle-0.2.2" = {
       name = "simple-swizzle";
       packageName = "simple-swizzle";
@@ -18887,13 +18995,13 @@ let
         sha1 = "9c84ec2dcf68187ff00bc64e1274b442176e1c84";
       };
     };
-    "crc-3.4.1" = {
+    "crc-3.4.4" = {
       name = "crc";
       packageName = "crc";
-      version = "3.4.1";
+      version = "3.4.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/crc/-/crc-3.4.1.tgz";
-        sha1 = "65d5830b1a2569557cfb324c0e679998521473ee";
+        url = "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz";
+        sha1 = "9da1e980e3bd44fc5c93bf5ab3da3378d85e466b";
       };
     };
     "broadway-0.2.10" = {
@@ -19022,15 +19130,6 @@ let
         sha1 = "1335c5e4f5e6d33bbb4b006ba8c86a00f556de08";
       };
     };
-    "mississippi-1.2.0" = {
-      name = "mississippi";
-      packageName = "mississippi";
-      version = "1.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mississippi/-/mississippi-1.2.0.tgz";
-        sha1 = "cd51bb9bbad3ddb13dee3cf60f1d0929c7a7fa4c";
-      };
-    };
     "lsmod-1.0.0" = {
       name = "lsmod";
       packageName = "lsmod";
@@ -19049,13 +19148,22 @@ let
         sha1 = "6728fc0459c450d796a99c31837569bdf672d728";
       };
     };
-    "eve-0.4.2" = {
+    "eve-0.5.3" = {
       name = "eve";
       packageName = "eve";
-      version = "0.4.2";
+      version = "0.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eve/-/eve-0.5.3.tgz";
+        sha1 = "6c2f6588f7d0b392044d245ba5af9d7cfe237f42";
+      };
+    };
+    "yargs-parser-5.0.0" = {
+      name = "yargs-parser";
+      packageName = "yargs-parser";
+      version = "5.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eve/-/eve-0.4.2.tgz";
-        sha1 = "7eea0afc0e4efb7c9365615315a3576833ead2ae";
+        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz";
+        sha1 = "275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a";
       };
     };
     "kew-0.1.7" = {
@@ -19121,6 +19229,15 @@ let
         sha1 = "8baa1365a632f58a3c46d20175fc6002c96e37de";
       };
     };
+    "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";
+      };
+    };
     "loader-runner-2.3.0" = {
       name = "loader-runner";
       packageName = "loader-runner";
@@ -19193,15 +19310,6 @@ let
         sha1 = "4daa4d9db00f9819880c79fa457ae5b09a1fd389";
       };
     };
-    "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";
-      };
-    };
     "os-browserify-0.2.1" = {
       name = "os-browserify";
       packageName = "os-browserify";
@@ -19301,15 +19409,6 @@ let
         sha1 = "f739336b2632365061a9d48270cd56ae3369318e";
       };
     };
-    "leven-2.1.0" = {
-      name = "leven";
-      packageName = "leven";
-      version = "2.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz";
-        sha1 = "c2e7a9f772094dee9d34202ae8acce4687875580";
-      };
-    };
     "node-emoji-1.5.1" = {
       name = "node-emoji";
       packageName = "node-emoji";
@@ -19355,6 +19454,15 @@ let
         sha1 = "1180a30d64e1970d8f55dd8cb0da8ffccecad71e";
       };
     };
+    "v8-compile-cache-1.1.0" = {
+      name = "v8-compile-cache";
+      packageName = "v8-compile-cache";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-1.1.0.tgz";
+        sha1 = "1dc2a340fb8e5f800a32bcdbfb8c23cd747021b9";
+      };
+    };
     "regenerator-runtime-0.10.3" = {
       name = "regenerator-runtime";
       packageName = "regenerator-runtime";
@@ -19856,10 +19964,10 @@ in
   alloy = nodeEnv.buildNodePackage {
     name = "alloy";
     packageName = "alloy";
-    version = "1.9.8";
+    version = "1.9.11";
     src = fetchurl {
-      url = "https://registry.npmjs.org/alloy/-/alloy-1.9.8.tgz";
-      sha1 = "17294e9828a1f11ef241d59f5eb040e6a5b4ed13";
+      url = "https://registry.npmjs.org/alloy/-/alloy-1.9.11.tgz";
+      sha1 = "6e185c5c3211b5a86d272caec63b8daf80e5b186";
     };
     dependencies = [
       sources."colors-0.6.0-1"
@@ -19937,10 +20045,10 @@ in
   azure-cli = nodeEnv.buildNodePackage {
     name = "azure-cli";
     packageName = "azure-cli";
-    version = "0.10.11";
+    version = "0.10.12";
     src = fetchurl {
-      url = "https://registry.npmjs.org/azure-cli/-/azure-cli-0.10.11.tgz";
-      sha1 = "aa1a379386b5c60f90f86134b4047acb1302d482";
+      url = "https://registry.npmjs.org/azure-cli/-/azure-cli-0.10.12.tgz";
+      sha1 = "4446af5df8dda6c755a0bf7dfec2468a9f63f26d";
     };
     dependencies = [
       sources."adal-node-0.1.21"
@@ -19964,7 +20072,7 @@ in
       sources."azure-arm-servermanagement-0.1.2"
       sources."azure-arm-network-0.18.0"
       sources."azure-arm-powerbiembedded-0.1.0"
-      sources."azure-arm-trafficmanager-0.10.5"
+      sources."azure-arm-trafficmanager-0.12.0"
       sources."azure-arm-dns-0.11.1"
       sources."azure-arm-website-0.11.4"
       sources."azure-arm-rediscache-0.2.3"
@@ -19972,7 +20080,7 @@ in
       sources."azure-graph-1.1.1"
       sources."azure-gallery-2.0.0-pre.18"
       sources."azure-keyvault-0.11.0"
-      sources."azure-asm-compute-0.17.0"
+      sources."azure-asm-compute-0.18.0"
       sources."azure-asm-hdinsight-0.10.2"
       sources."azure-asm-trafficmanager-0.10.3"
       sources."azure-asm-mgmt-0.10.1"
@@ -19993,7 +20101,7 @@ in
           sources."moment-2.14.1"
         ];
       })
-      (sources."azure-storage-2.0.0" // {
+      (sources."azure-storage-2.1.0" // {
         dependencies = [
           sources."readable-stream-2.0.6"
           sources."validator-3.22.2"
@@ -20145,7 +20253,7 @@ in
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."cycle-1.0.3"
@@ -20162,7 +20270,7 @@ in
       sources."forever-agent-0.6.1"
       (sources."form-data-1.0.1" // {
         dependencies = [
-          sources."async-2.2.0"
+          sources."async-2.3.0"
         ];
       })
       (sources."har-validator-2.0.6" // {
@@ -20208,7 +20316,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -20241,7 +20349,8 @@ in
       sources."amdefine-1.0.1"
       (sources."concat-stream-1.6.0" // {
         dependencies = [
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
+          sources."string_decoder-1.0.0"
         ];
       })
       sources."http-response-object-1.1.0"
@@ -20332,7 +20441,7 @@ in
       sources."timed-out-2.0.0"
       sources."end-of-stream-1.0.0"
       sources."inherits-2.0.3"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."stream-shift-1.0.0"
       sources."once-1.3.3"
       sources."wrappy-1.0.2"
@@ -20340,7 +20449,7 @@ in
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."camelcase-keys-2.1.0"
       sources."decamelize-1.2.0"
@@ -20355,7 +20464,7 @@ in
       sources."currently-unhandled-0.4.1"
       sources."signal-exit-3.0.2"
       sources."array-find-index-1.0.2"
-      sources."hosted-git-info-2.4.1"
+      sources."hosted-git-info-2.4.2"
       sources."is-builtin-module-1.0.0"
       sources."validate-npm-package-license-3.0.1"
       sources."builtin-modules-1.1.1"
@@ -20411,7 +20520,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."inflight-1.0.6"
       sources."minimatch-3.0.3"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."q-1.5.0"
@@ -20435,10 +20544,10 @@ in
   browserify = nodeEnv.buildNodePackage {
     name = "browserify";
     packageName = "browserify";
-    version = "14.1.0";
+    version = "14.3.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/browserify/-/browserify-14.1.0.tgz";
-      sha1 = "0508cc1e7bf4c152312c2fa523e676c0b0b92311";
+      url = "https://registry.npmjs.org/browserify/-/browserify-14.3.0.tgz";
+      sha1 = "fd003a2386ac1aec127f097885a3cc6373b745c4";
     };
     dependencies = [
       sources."JSONStream-1.3.1"
@@ -20450,7 +20559,7 @@ in
         ];
       })
       sources."browserify-zlib-0.1.4"
-      sources."buffer-5.0.5"
+      sources."buffer-5.0.6"
       sources."cached-path-relative-1.0.1"
       (sources."concat-stream-1.5.2" // {
         dependencies = [
@@ -20468,7 +20577,7 @@ in
       sources."glob-7.1.1"
       sources."has-1.0.1"
       sources."htmlescape-1.1.1"
-      sources."https-browserify-0.0.1"
+      sources."https-browserify-1.0.0"
       sources."inherits-2.0.3"
       sources."insert-module-globals-7.0.1"
       (sources."labeled-stream-splicer-2.0.0" // {
@@ -20484,12 +20593,16 @@ in
       sources."punycode-1.4.1"
       sources."querystring-es3-0.2.1"
       sources."read-only-stream-2.0.0"
-      sources."readable-stream-2.2.6"
+      (sources."readable-stream-2.2.9" // {
+        dependencies = [
+          sources."string_decoder-1.0.0"
+        ];
+      })
       sources."resolve-1.3.2"
       sources."shasum-1.0.2"
       sources."shell-quote-1.6.1"
       sources."stream-browserify-2.0.1"
-      sources."stream-http-2.6.3"
+      sources."stream-http-2.7.0"
       sources."string_decoder-0.10.31"
       sources."subarg-1.0.0"
       sources."syntax-error-1.3.0"
@@ -20547,7 +20660,7 @@ in
       sources."parse-asn1-5.1.0"
       sources."brorand-1.1.0"
       sources."hash.js-1.0.3"
-      sources."hmac-drbg-1.0.0"
+      sources."hmac-drbg-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."asn1.js-4.9.1"
       sources."ripemd160-1.0.1"
@@ -20559,7 +20672,7 @@ in
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."function-bind-1.1.0"
@@ -20696,7 +20809,7 @@ in
       sources."currently-unhandled-0.4.1"
       sources."signal-exit-3.0.2"
       sources."array-find-index-1.0.2"
-      sources."hosted-git-info-2.4.1"
+      sources."hosted-git-info-2.4.2"
       sources."is-builtin-module-1.0.0"
       sources."semver-5.3.0"
       sources."validate-npm-package-license-3.0.1"
@@ -20734,7 +20847,7 @@ in
           sources."minimist-0.0.10"
         ];
       })
-      (sources."parse-torrent-5.8.2" // {
+      (sources."parse-torrent-5.8.3" // {
         dependencies = [
           sources."get-stdin-5.0.1"
         ];
@@ -20785,9 +20898,9 @@ in
       sources."mute-stream-0.0.4"
       sources."wordwrap-0.0.3"
       sources."blob-to-buffer-1.2.6"
-      sources."magnet-uri-5.1.5"
-      sources."parse-torrent-file-4.0.1"
-      sources."simple-get-2.4.0"
+      sources."magnet-uri-5.1.6"
+      sources."parse-torrent-file-4.0.2"
+      sources."simple-get-2.5.1"
       sources."thirty-two-1.0.2"
       sources."uniq-1.0.1"
       sources."bencode-0.11.0"
@@ -20807,7 +20920,7 @@ in
       sources."ini-1.1.0"
       sources."bitfield-0.1.0"
       sources."bncode-0.5.3"
-      (sources."fs-chunk-store-1.6.4" // {
+      (sources."fs-chunk-store-1.6.5" // {
         dependencies = [
           sources."mkdirp-0.5.1"
           sources."thunky-1.0.2"
@@ -20821,8 +20934,8 @@ in
       sources."peer-wire-swarm-0.12.1"
       sources."rimraf-2.6.1"
       sources."torrent-discovery-5.4.0"
-      sources."torrent-piece-1.1.0"
-      (sources."random-access-file-1.5.0" // {
+      sources."torrent-piece-1.1.1"
+      (sources."random-access-file-1.6.1" // {
         dependencies = [
           sources."mkdirp-0.5.1"
           sources."thunky-1.0.2"
@@ -20831,6 +20944,7 @@ in
       })
       sources."randombytes-2.0.3"
       sources."run-parallel-1.1.6"
+      sources."buffer-alloc-unsafe-1.0.0"
       sources."inherits-2.0.3"
       sources."ip-1.1.5"
       sources."flatten-0.0.1"
@@ -20852,7 +20966,7 @@ in
       sources."inflight-1.0.6"
       sources."minimatch-3.0.3"
       sources."path-is-absolute-1.0.1"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       (sources."bittorrent-dht-6.4.2" // {
@@ -20882,15 +20996,17 @@ in
       sources."run-series-1.1.4"
       (sources."simple-peer-6.4.4" // {
         dependencies = [
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       (sources."simple-websocket-4.3.1" // {
         dependencies = [
-          sources."readable-stream-2.2.6"
-          sources."ws-2.2.2"
+          sources."readable-stream-2.2.9"
+          sources."ws-2.2.3"
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       sources."string2compact-1.2.2"
@@ -20904,6 +21020,7 @@ in
       sources."buffer-shims-1.0.0"
       sources."process-nextick-args-1.0.7"
       sources."util-deprecate-1.0.2"
+      sources."safe-buffer-5.0.1"
       sources."ultron-1.1.0"
       sources."addr-to-ip-port-1.4.2"
       sources."options-0.0.6"
@@ -20940,8 +21057,9 @@ in
       sources."voc-0.5.0"
       (sources."concat-stream-1.6.0" // {
         dependencies = [
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       sources."exit-on-epipe-1.0.0"
@@ -20962,10 +21080,10 @@ in
   coffee-script = nodeEnv.buildNodePackage {
     name = "coffee-script";
     packageName = "coffee-script";
-    version = "1.12.4";
+    version = "1.12.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.4.tgz";
-      sha1 = "fe1bced97fe1fb3927b998f2b45616e0658be1ff";
+      url = "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.5.tgz";
+      sha1 = "809f4585419112bbfe46a073ad7543af18c27346";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -21021,14 +21139,14 @@ in
       sources."semver-5.3.0"
       sources."shelljs-0.5.3"
       sources."unorm-1.4.1"
-      sources."big-integer-1.6.17"
+      sources."big-integer-1.6.19"
       sources."sax-1.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."os-homedir-1.0.2"
@@ -21062,7 +21180,7 @@ in
           sources."underscore-1.2.1"
         ];
       })
-      (sources."init-package-json-1.9.5" // {
+      (sources."init-package-json-1.9.6" // {
         dependencies = [
           sources."glob-7.1.1"
         ];
@@ -21118,11 +21236,7 @@ in
       })
       sources."tar-1.0.2"
       sources."valid-identifier-0.0.1"
-      (sources."xcode-0.9.1" // {
-        dependencies = [
-          sources."node-uuid-1.4.7"
-        ];
-      })
+      sources."xcode-0.9.3"
       sources."browserify-transform-tools-1.5.3"
       sources."falafel-1.2.0"
       sources."through-2.3.8"
@@ -21190,15 +21304,16 @@ in
       sources."punycode-1.4.1"
       sources."querystring-es3-0.2.1"
       sources."read-only-stream-2.0.0"
-      (sources."readable-stream-2.2.6" // {
+      (sources."readable-stream-2.2.9" // {
         dependencies = [
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       sources."shasum-1.0.2"
       sources."shell-quote-1.6.1"
       sources."stream-browserify-2.0.1"
-      sources."stream-http-2.6.3"
+      sources."stream-http-2.7.0"
       sources."string_decoder-0.10.31"
       sources."subarg-1.0.0"
       (sources."syntax-error-1.3.0" // {
@@ -21256,7 +21371,7 @@ in
       sources."parse-asn1-5.1.0"
       sources."brorand-1.1.0"
       sources."hash.js-1.0.3"
-      sources."hmac-drbg-1.0.0"
+      sources."hmac-drbg-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."asn1.js-4.9.1"
       sources."ripemd160-1.0.1"
@@ -21346,7 +21461,7 @@ in
       sources."serve-static-1.12.1"
       sources."setprototypeof-1.0.3"
       sources."statuses-1.3.1"
-      sources."type-is-1.6.14"
+      sources."type-is-1.6.15"
       sources."utils-merge-1.0.0"
       sources."unpipe-1.0.0"
       sources."ee-first-1.1.1"
@@ -21356,7 +21471,7 @@ in
       sources."http-errors-1.6.1"
       sources."mime-1.3.4"
       sources."media-typer-0.3.0"
-      sources."npm-package-arg-4.2.1"
+      sources."npm-package-arg-5.0.1"
       sources."promzard-0.3.0"
       sources."read-1.0.7"
       (sources."read-package-json-2.0.5" // {
@@ -21366,7 +21481,7 @@ in
       })
       sources."validate-npm-package-license-3.0.1"
       sources."validate-npm-package-name-3.0.0"
-      sources."hosted-git-info-2.4.1"
+      sources."hosted-git-info-2.4.2"
       sources."mute-stream-0.0.7"
       sources."json-parse-helpfulerror-1.0.3"
       sources."normalize-package-data-2.3.6"
@@ -21417,6 +21532,7 @@ in
       sources."npm-install-checks-1.0.7"
       (sources."npm-registry-client-7.2.1" // {
         dependencies = [
+          sources."npm-package-arg-4.2.1"
           sources."request-2.81.0"
         ];
       })
@@ -21424,7 +21540,11 @@ in
       sources."npmlog-2.0.4"
       sources."path-is-inside-1.0.2"
       sources."read-installed-4.0.3"
-      sources."realize-package-specifier-3.0.3"
+      (sources."realize-package-specifier-3.0.3" // {
+        dependencies = [
+          sources."npm-package-arg-4.2.1"
+        ];
+      })
       sources."retry-0.10.1"
       (sources."rimraf-2.5.4" // {
         dependencies = [
@@ -21455,7 +21575,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -21471,7 +21591,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      (sources."ajv-4.11.5" // {
+      (sources."ajv-4.11.6" // {
         dependencies = [
           sources."json-stable-stringify-1.0.1"
         ];
@@ -21488,7 +21608,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -21529,7 +21649,7 @@ in
         ];
       })
       sources."node-uuid-1.4.8"
-      (sources."async-2.2.0" // {
+      (sources."async-2.3.0" // {
         dependencies = [
           sources."lodash-4.17.4"
         ];
@@ -21545,14 +21665,16 @@ in
       sources."pinkie-2.0.4"
       sources."isexe-2.0.0"
       sources."ctype-0.5.3"
-      sources."pegjs-0.9.0"
-      (sources."simple-plist-0.1.4" // {
+      sources."pegjs-0.10.0"
+      (sources."simple-plist-0.2.1" // {
         dependencies = [
-          sources."bplist-parser-0.0.6"
+          sources."plist-2.0.1"
+          sources."base64-js-1.1.2"
+          sources."xmlbuilder-8.2.2"
         ];
       })
-      sources."bplist-creator-0.0.4"
-      sources."stream-buffers-0.2.6"
+      sources."bplist-creator-0.0.7"
+      sources."stream-buffers-2.2.0"
       (sources."configstore-1.4.0" // {
         dependencies = [
           sources."uuid-2.0.3"
@@ -21610,7 +21732,7 @@ in
         ];
       })
       sources."stream-shift-1.0.0"
-      sources."rc-1.2.0"
+      sources."rc-1.2.1"
       sources."deep-extend-0.4.1"
       sources."strip-json-comments-2.0.1"
       sources."is-finite-1.0.2"
@@ -21732,7 +21854,7 @@ in
       sources."destroy-1.0.3"
       sources."mime-1.2.11"
       sources."bindings-1.2.1"
-      sources."nan-2.5.1"
+      sources."nan-2.6.2"
       sources."jsonparse-0.0.6"
       sources."es5class-2.3.1"
       sources."faye-websocket-0.11.1"
@@ -21835,8 +21957,9 @@ in
           sources."minimist-1.2.0"
           sources."split2-2.1.1"
           sources."through2-2.0.3"
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       sources."pump-1.0.2"
@@ -21849,8 +21972,9 @@ in
       (sources."tar-stream-1.5.2" // {
         dependencies = [
           sources."bl-1.2.0"
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       (sources."through2-0.6.5" // {
@@ -21874,9 +21998,10 @@ in
       (sources."duplexify-3.5.0" // {
         dependencies = [
           sources."end-of-stream-1.0.0"
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
           sources."once-1.3.3"
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       sources."lru-cache-2.7.3"
@@ -21943,7 +22068,7 @@ in
     };
     dependencies = [
       sources."JSONStream-1.3.1"
-      sources."async-2.2.0"
+      sources."async-2.3.0"
       sources."aws4-1.6.0"
       sources."awscred-1.2.0"
       sources."ini-1.3.4"
@@ -21959,7 +22084,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -21977,7 +22102,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -21992,7 +22117,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -22099,7 +22224,7 @@ in
       sources."camelcase-2.1.1"
       sources."currently-unhandled-0.4.1"
       sources."array-find-index-1.0.2"
-      sources."hosted-git-info-2.4.1"
+      sources."hosted-git-info-2.4.2"
       sources."is-builtin-module-1.0.0"
       sources."semver-5.3.0"
       sources."validate-npm-package-license-3.0.1"
@@ -22137,10 +22262,10 @@ in
   eslint = nodeEnv.buildNodePackage {
     name = "eslint";
     packageName = "eslint";
-    version = "3.18.0";
+    version = "3.19.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/eslint/-/eslint-3.18.0.tgz";
-      sha1 = "647e985c4ae71502d20ac62c109f66d5104c8a4b";
+      url = "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz";
+      sha1 = "c8fc6201c7f40dd08941b87c085767386a679acc";
     };
     dependencies = [
       sources."babel-code-frame-6.22.0"
@@ -22149,19 +22274,19 @@ in
       sources."debug-2.6.3"
       sources."doctrine-2.0.0"
       sources."escope-3.6.0"
-      sources."espree-3.4.0"
+      sources."espree-3.4.1"
       sources."esquery-1.0.0"
       sources."estraverse-4.2.0"
       sources."esutils-2.0.2"
       sources."file-entry-cache-2.0.0"
       sources."glob-7.1.1"
       sources."globals-9.17.0"
-      sources."ignore-3.2.6"
+      sources."ignore-3.2.7"
       sources."imurmurhash-0.1.4"
       sources."inquirer-0.12.0"
       sources."is-my-json-valid-2.16.0"
       sources."is-resolvable-1.0.0"
-      sources."js-yaml-3.8.2"
+      sources."js-yaml-3.8.3"
       sources."json-stable-stringify-1.0.1"
       sources."levn-0.3.0"
       sources."lodash-4.17.4"
@@ -22192,12 +22317,12 @@ in
       sources."ansi-regex-2.1.1"
       sources."inherits-2.0.3"
       sources."typedarray-0.0.6"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."ms-0.7.2"
       sources."es6-map-0.1.5"
@@ -22214,7 +22339,7 @@ in
       sources."es6-symbol-3.1.1"
       sources."event-emitter-0.3.5"
       sources."object-assign-4.1.1"
-      sources."acorn-4.0.4"
+      sources."acorn-5.0.3"
       (sources."acorn-jsx-3.0.1" // {
         dependencies = [
           sources."acorn-3.3.0"
@@ -22242,7 +22367,7 @@ in
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."ansi-escapes-1.4.0"
@@ -22284,7 +22409,7 @@ in
       sources."rechoir-0.6.2"
       sources."resolve-1.3.2"
       sources."path-parse-1.0.5"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."ajv-keywords-1.5.1"
       sources."slice-ansi-0.0.4"
       sources."co-4.6.0"
@@ -22428,7 +22553,7 @@ in
       sources."object.omit-2.0.1"
       sources."parse-glob-3.0.4"
       sources."regex-cache-0.4.3"
-      sources."arr-flatten-1.0.1"
+      sources."arr-flatten-1.0.2"
       sources."expand-range-1.8.2"
       sources."preserve-0.2.0"
       sources."repeat-element-1.1.2"
@@ -22450,14 +22575,14 @@ in
       sources."is-primitive-2.0.0"
       sources."binary-extensions-1.8.0"
       sources."graceful-fs-4.1.11"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."set-immediate-shim-1.0.1"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
-      sources."nan-2.5.1"
+      sources."nan-2.6.2"
       sources."node-pre-gyp-0.6.34"
       (sources."mkdirp-0.5.1" // {
         dependencies = [
@@ -22466,7 +22591,7 @@ in
       })
       sources."nopt-4.0.1"
       sources."npmlog-4.0.2"
-      (sources."rc-1.2.0" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."minimist-1.2.0"
         ];
@@ -22508,7 +22633,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -22526,7 +22651,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -22541,7 +22666,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -22578,7 +22703,7 @@ in
       sources."fstream-ignore-1.0.5"
       sources."uid-number-0.0.6"
       sources."ms-0.7.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       (sources."event-stream-0.5.3" // {
@@ -22613,10 +22738,10 @@ in
       sha1 = "466a7253a54f526ca2f57ca78780895b95efaee4";
     };
     dependencies = [
-      sources."async-2.2.0"
+      sources."async-2.3.0"
       sources."lodash.groupby-4.6.0"
       sources."minilog-2.0.8"
-      sources."simple-git-1.69.0"
+      sources."simple-git-1.70.0"
       sources."tabtab-git+https://github.com/mixu/node-tabtab.git"
       sources."lodash-4.17.4"
       sources."microee-0.0.2"
@@ -22649,7 +22774,7 @@ in
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."abbrev-1.1.0"
@@ -22672,7 +22797,7 @@ in
       sha256 = "a51a5beef55c14c68630275d51cf66c44a4462d1b20c0f08aef6d88a62ca077c";
     };
     dependencies = [
-      sources."coffee-script-1.12.4"
+      sources."coffee-script-1.12.5"
       sources."jade-1.11.0"
       (sources."q-2.0.3" // {
         dependencies = [
@@ -22699,7 +22824,7 @@ in
           sources."source-map-0.1.43"
         ];
       })
-      (sources."uglify-js-2.8.20" // {
+      (sources."uglify-js-2.8.22" // {
         dependencies = [
           sources."source-map-0.5.6"
         ];
@@ -22747,7 +22872,7 @@ in
       sources."sax-1.2.2"
       sources."xmlbuilder-4.2.1"
       sources."lodash-4.17.4"
-      sources."nan-2.5.1"
+      sources."nan-2.6.2"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -22807,8 +22932,9 @@ in
       sources."replace-ext-0.0.1"
       (sources."through2-2.0.3" // {
         dependencies = [
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       sources."vinyl-0.5.3"
@@ -22865,7 +22991,7 @@ in
       sources."object.omit-2.0.1"
       sources."parse-glob-3.0.4"
       sources."regex-cache-0.4.3"
-      sources."arr-flatten-1.0.1"
+      sources."arr-flatten-1.0.2"
       sources."expand-range-1.8.2"
       sources."preserve-0.2.0"
       sources."repeat-element-1.1.2"
@@ -22938,7 +23064,7 @@ in
       sources."glob2base-0.0.12"
       sources."unique-stream-1.0.0"
       sources."inflight-1.0.6"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."find-index-0.1.1"
@@ -23018,7 +23144,7 @@ in
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       (sources."cli-0.6.6" // {
@@ -23098,7 +23224,7 @@ in
           sources."source-map-0.4.4"
         ];
       })
-      (sources."js-yaml-3.8.2" // {
+      (sources."js-yaml-3.8.3" // {
         dependencies = [
           sources."esprima-3.1.3"
         ];
@@ -23129,7 +23255,7 @@ in
       sources."minimatch-3.0.3"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       (sources."optimist-0.6.1" // {
@@ -23137,7 +23263,7 @@ in
           sources."wordwrap-0.0.3"
         ];
       })
-      (sources."uglify-js-2.8.20" // {
+      (sources."uglify-js-2.8.22" // {
         dependencies = [
           sources."source-map-0.5.6"
         ];
@@ -23232,7 +23358,7 @@ in
       sources."core-util-is-1.0.2"
       sources."isarray-0.0.1"
       sources."string_decoder-0.10.31"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
     ];
@@ -23277,10 +23403,10 @@ in
   js-yaml = nodeEnv.buildNodePackage {
     name = "js-yaml";
     packageName = "js-yaml";
-    version = "3.8.2";
+    version = "3.8.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.8.2.tgz";
-      sha1 = "02d3e2c0f6beab20248d412c352203827d786721";
+      url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.8.3.tgz";
+      sha1 = "33a05ec481c850c8875929166fe1beb61c728766";
     };
     dependencies = [
       sources."argparse-1.0.9"
@@ -23298,10 +23424,10 @@ in
   karma = nodeEnv.buildNodePackage {
     name = "karma";
     packageName = "karma";
-    version = "1.5.0";
+    version = "1.6.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/karma/-/karma-1.5.0.tgz";
-      sha1 = "9c4c14f0400bef2c04c8e8e6bff59371025cc009";
+      url = "https://registry.npmjs.org/karma/-/karma-1.6.0.tgz";
+      sha1 = "0e871d4527d5eac56c41d181f03c5c0a7e6dbf3e";
     };
     dependencies = [
       sources."bluebird-3.5.0"
@@ -23335,6 +23461,7 @@ in
           sources."readable-stream-1.0.34"
           sources."semver-4.3.6"
           sources."isarray-0.0.1"
+          sources."string_decoder-0.10.31"
         ];
       })
       sources."mime-1.3.4"
@@ -23362,7 +23489,7 @@ in
       sources."on-finished-2.3.0"
       sources."qs-6.4.0"
       sources."raw-body-2.2.0"
-      sources."type-is-1.6.14"
+      sources."type-is-1.6.15"
       sources."ms-0.7.2"
       sources."inherits-2.0.3"
       sources."setprototypeof-1.0.3"
@@ -23394,7 +23521,7 @@ in
       sources."object.omit-2.0.1"
       sources."parse-glob-3.0.4"
       sources."regex-cache-0.4.3"
-      sources."arr-flatten-1.0.1"
+      sources."arr-flatten-1.0.2"
       sources."expand-range-1.8.2"
       sources."preserve-0.2.0"
       sources."repeat-element-1.1.2"
@@ -23415,19 +23542,19 @@ in
       sources."is-equal-shallow-0.1.3"
       sources."is-primitive-2.0.0"
       sources."binary-extensions-1.8.0"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."set-immediate-shim-1.0.1"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
-      sources."nan-2.5.1"
+      sources."nan-2.6.2"
       sources."node-pre-gyp-0.6.34"
       sources."mkdirp-0.5.1"
       sources."nopt-4.0.1"
       sources."npmlog-4.0.2"
-      (sources."rc-1.2.0" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."minimist-1.2.0"
         ];
@@ -23466,7 +23593,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -23481,7 +23608,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -23496,7 +23623,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -23540,7 +23667,7 @@ in
       sources."inflight-1.0.6"
       sources."eventemitter3-1.2.0"
       sources."requires-port-1.0.0"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."wordwrap-0.0.3"
@@ -23717,7 +23844,7 @@ in
           sources."statuses-1.2.1"
         ];
       })
-      sources."type-is-1.6.14"
+      sources."type-is-1.6.15"
       sources."vhost-3.0.2"
       sources."iconv-lite-0.4.11"
       sources."on-finished-2.3.0"
@@ -23786,14 +23913,14 @@ in
       sources."through2-2.0.3"
       sources."vinyl-1.2.0"
       sources."vinyl-fs-2.4.4"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."xtend-4.0.1"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."inherits-2.0.3"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."clone-1.0.2"
       sources."clone-stats-0.0.1"
@@ -23804,6 +23931,7 @@ in
           sources."through2-0.6.5"
           sources."readable-stream-1.0.34"
           sources."isarray-0.0.1"
+          sources."string_decoder-0.10.31"
         ];
       })
       sources."graceful-fs-4.1.11"
@@ -23837,7 +23965,7 @@ in
       sources."inflight-1.0.6"
       sources."minimatch-3.0.3"
       sources."path-is-absolute-1.0.1"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."is-glob-3.1.0"
@@ -23863,7 +23991,7 @@ in
         ];
       })
       sources."regex-cache-0.4.3"
-      sources."arr-flatten-1.0.1"
+      sources."arr-flatten-1.0.2"
       sources."expand-range-1.8.2"
       sources."preserve-0.2.0"
       sources."repeat-element-1.1.2"
@@ -23969,7 +24097,7 @@ in
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."lodash._baseassign-3.2.0"
@@ -24057,15 +24185,15 @@ in
       sources."npmlog-3.1.2"
       sources."inherits-2.0.3"
       sources."typedarray-0.0.6"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."minimist-0.0.8"
-      sources."hosted-git-info-2.4.1"
+      sources."hosted-git-info-2.4.2"
       sources."is-builtin-module-1.0.0"
       sources."validate-npm-package-license-3.0.1"
       sources."builtin-modules-1.1.1"
@@ -24079,7 +24207,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -24097,7 +24225,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -24112,7 +24240,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -24143,7 +24271,7 @@ in
       sources."inflight-1.0.6"
       sources."minimatch-3.0.3"
       sources."path-is-absolute-1.0.1"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."are-we-there-yet-1.1.2"
@@ -24222,7 +24350,7 @@ in
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."minimist-0.0.8"
@@ -24232,12 +24360,12 @@ in
       sources."gauge-2.7.3"
       sources."set-blocking-2.0.0"
       sources."delegates-1.0.0"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."aproba-1.1.1"
       sources."has-unicode-2.0.1"
@@ -24258,7 +24386,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -24276,7 +24404,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -24291,7 +24419,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -24331,10 +24459,10 @@ in
   node-inspector = nodeEnv.buildNodePackage {
     name = "node-inspector";
     packageName = "node-inspector";
-    version = "1.0.0";
+    version = "1.1.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/node-inspector/-/node-inspector-1.0.0.tgz";
-      sha1 = "c6221619e3f0bd8f1f24e0e882a65eb793f69d37";
+      url = "https://registry.npmjs.org/node-inspector/-/node-inspector-1.1.0.tgz";
+      sha1 = "0f8ffffbf9a9b86540eb33c1d64e7ba546457622";
     };
     dependencies = [
       sources."async-0.9.2"
@@ -24347,7 +24475,7 @@ in
       })
       sources."glob-5.0.15"
       sources."path-is-absolute-1.0.1"
-      sources."rc-1.2.0"
+      sources."rc-1.2.1"
       sources."semver-4.3.6"
       (sources."serve-favicon-2.4.2" // {
         dependencies = [
@@ -24395,7 +24523,7 @@ in
       sources."bplist-parser-0.1.1"
       sources."meow-3.7.0"
       sources."untildify-2.1.0"
-      sources."big-integer-1.6.17"
+      sources."big-integer-1.6.19"
       sources."camelcase-keys-2.1.0"
       sources."decamelize-1.2.0"
       sources."loud-rejection-1.6.0"
@@ -24409,7 +24537,7 @@ in
       sources."currently-unhandled-0.4.1"
       sources."signal-exit-3.0.2"
       sources."array-find-index-1.0.2"
-      sources."hosted-git-info-2.4.1"
+      sources."hosted-git-info-2.4.2"
       sources."is-builtin-module-1.0.0"
       sources."validate-npm-package-license-3.0.1"
       sources."builtin-modules-1.1.1"
@@ -24465,7 +24593,7 @@ in
       sources."serve-static-1.12.1"
       sources."setprototypeof-1.0.3"
       sources."statuses-1.3.1"
-      sources."type-is-1.6.14"
+      sources."type-is-1.6.15"
       sources."utils-merge-1.0.0"
       sources."vary-1.1.1"
       sources."mime-types-2.1.15"
@@ -24484,14 +24612,14 @@ in
       sources."minimatch-3.0.3"
       sources."once-1.4.0"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."deep-extend-0.4.1"
       sources."ini-1.3.4"
       sources."strip-json-comments-2.0.1"
       sources."truncate-1.0.5"
-      sources."nan-2.5.1"
+      sources."nan-2.6.2"
       (sources."node-pre-gyp-0.6.34" // {
         dependencies = [
           sources."rimraf-2.6.1"
@@ -24515,12 +24643,12 @@ in
       sources."gauge-2.7.3"
       sources."set-blocking-2.0.0"
       sources."delegates-1.0.0"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."aproba-1.1.1"
       sources."has-unicode-2.0.1"
       sources."string-width-1.0.2"
@@ -24535,7 +24663,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -24551,7 +24679,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -24566,7 +24694,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -24626,7 +24754,7 @@ in
       sources."mkdirp-0.5.1"
       sources."nopt-4.0.1"
       sources."npmlog-4.0.2"
-      (sources."rc-1.2.0" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."minimist-1.2.0"
         ];
@@ -24646,13 +24774,13 @@ in
       sources."gauge-2.7.3"
       sources."set-blocking-2.0.0"
       sources."delegates-1.0.0"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."inherits-2.0.3"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."aproba-1.1.1"
       sources."has-unicode-2.0.1"
@@ -24674,7 +24802,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -24692,7 +24820,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -24707,7 +24835,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -24740,7 +24868,7 @@ in
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."block-stream-0.0.9"
@@ -24805,7 +24933,7 @@ in
       sources."object.omit-2.0.1"
       sources."parse-glob-3.0.4"
       sources."regex-cache-0.4.3"
-      sources."arr-flatten-1.0.1"
+      sources."arr-flatten-1.0.2"
       sources."expand-range-1.8.2"
       sources."preserve-0.2.0"
       sources."repeat-element-1.1.2"
@@ -24827,19 +24955,19 @@ in
       sources."is-primitive-2.0.0"
       sources."binary-extensions-1.8.0"
       sources."graceful-fs-4.1.11"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."set-immediate-shim-1.0.1"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
-      sources."nan-2.5.1"
+      sources."nan-2.6.2"
       sources."node-pre-gyp-0.6.34"
       sources."mkdirp-0.5.1"
       sources."nopt-4.0.1"
       sources."npmlog-4.0.2"
-      (sources."rc-1.2.0" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."minimist-1.2.0"
         ];
@@ -24879,7 +25007,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -24897,7 +25025,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -24912,7 +25040,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -24959,7 +25087,7 @@ in
       sources."lodash._getnative-3.9.1"
       sources."lodash.isarguments-3.1.0"
       sources."lodash.isarray-3.0.4"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."event-stream-3.3.4"
@@ -25083,18 +25211,18 @@ in
       sources."ws-1.1.1"
       sources."xml2js-0.4.17"
       sources."node-red-node-feedparser-0.1.7"
-      sources."node-red-node-email-0.1.21"
+      sources."node-red-node-email-0.1.22"
       (sources."node-red-node-twitter-0.1.10" // {
         dependencies = [
           sources."request-2.81.0"
           sources."caseless-0.12.0"
-          sources."form-data-2.1.2"
+          sources."form-data-2.1.4"
           sources."har-validator-4.2.1"
           sources."qs-6.4.0"
           sources."tunnel-agent-0.6.0"
         ];
       })
-      sources."node-red-node-rbe-0.1.6"
+      sources."node-red-node-rbe-0.1.8"
       sources."bcrypt-1.0.2"
       sources."bytes-2.4.0"
       sources."content-type-1.0.2"
@@ -25104,7 +25232,7 @@ in
       sources."iconv-lite-0.4.13"
       sources."on-finished-2.3.0"
       sources."qs-6.2.0"
-      sources."type-is-1.6.14"
+      sources."type-is-1.6.15"
       sources."ms-0.7.1"
       sources."inherits-2.0.3"
       sources."setprototypeof-1.0.2"
@@ -25139,17 +25267,17 @@ in
       sources."nth-check-1.0.1"
       sources."domelementtype-1.3.0"
       sources."domhandler-2.3.0"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."cookie-0.3.1"
       sources."cookie-signature-1.0.6"
       sources."vary-1.1.1"
-      sources."moment-timezone-0.5.11"
+      sources."moment-timezone-0.5.13"
       sources."moment-2.18.1"
       sources."accepts-1.3.3"
       sources."array-flatten-1.1.1"
@@ -25193,9 +25321,9 @@ in
       sources."commist-1.0.0"
       sources."concat-stream-1.6.0"
       sources."end-of-stream-1.4.0"
-      sources."help-me-1.0.1"
+      sources."help-me-1.1.0"
       sources."minimist-1.2.0"
-      sources."mqtt-packet-5.2.2"
+      sources."mqtt-packet-5.3.0"
       sources."pump-1.0.2"
       sources."reinterval-1.1.0"
       sources."split2-2.1.1"
@@ -25206,86 +25334,28 @@ in
       sources."once-1.4.0"
       sources."wrappy-1.0.2"
       sources."callback-stream-1.1.0"
-      (sources."glob-stream-5.3.5" // {
-        dependencies = [
-          sources."through2-0.6.5"
-          sources."readable-stream-1.0.34"
-          sources."isarray-0.0.1"
-        ];
-      })
+      sources."glob-stream-6.1.0"
       sources."through2-2.0.3"
       sources."extend-3.0.0"
-      sources."glob-5.0.15"
+      sources."glob-7.1.1"
       sources."glob-parent-3.1.0"
-      (sources."micromatch-2.3.11" // {
-        dependencies = [
-          sources."is-extglob-1.0.0"
-          sources."is-glob-2.0.1"
-        ];
-      })
-      sources."ordered-read-streams-0.3.0"
-      sources."to-absolute-glob-0.1.1"
+      sources."is-negated-glob-1.0.0"
+      sources."ordered-read-streams-1.0.0"
+      sources."pumpify-1.3.5"
+      sources."remove-trailing-separator-1.0.1"
+      sources."to-absolute-glob-2.0.1"
       sources."unique-stream-2.2.1"
+      sources."fs.realpath-1.0.0"
       sources."inflight-1.0.6"
       sources."minimatch-3.0.3"
       sources."path-is-absolute-1.0.1"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."is-glob-3.1.0"
       sources."path-dirname-1.0.2"
       sources."is-extglob-2.1.1"
-      sources."arr-diff-2.0.0"
-      sources."array-unique-0.2.1"
-      sources."braces-1.8.5"
-      sources."expand-brackets-0.1.5"
-      (sources."extglob-0.3.2" // {
-        dependencies = [
-          sources."is-extglob-1.0.0"
-        ];
-      })
-      sources."filename-regex-2.0.0"
-      sources."kind-of-3.1.0"
-      sources."normalize-path-2.1.1"
-      sources."object.omit-2.0.1"
-      (sources."parse-glob-3.0.4" // {
-        dependencies = [
-          sources."is-extglob-1.0.0"
-          sources."is-glob-2.0.1"
-        ];
-      })
-      sources."regex-cache-0.4.3"
-      sources."arr-flatten-1.0.1"
-      sources."expand-range-1.8.2"
-      sources."preserve-0.2.0"
-      sources."repeat-element-1.1.2"
-      sources."fill-range-2.2.3"
-      sources."is-number-2.1.0"
-      sources."isobject-2.1.0"
-      sources."randomatic-1.1.6"
-      sources."repeat-string-1.6.1"
-      sources."is-posix-bracket-0.1.1"
-      sources."is-buffer-1.1.5"
-      sources."remove-trailing-separator-1.0.1"
-      sources."for-own-0.1.5"
-      sources."is-extendable-0.1.1"
-      sources."for-in-1.0.2"
-      (sources."glob-base-0.3.0" // {
-        dependencies = [
-          sources."glob-parent-2.0.0"
-          sources."is-glob-2.0.1"
-          sources."is-extglob-1.0.0"
-        ];
-      })
-      sources."is-dotfile-1.0.2"
-      sources."is-equal-shallow-0.1.3"
-      sources."is-primitive-2.0.0"
       sources."is-stream-1.1.0"
-      sources."extend-shallow-2.0.1"
-      sources."json-stable-stringify-1.0.1"
-      sources."through2-filter-2.0.0"
-      sources."jsonify-0.0.0"
-      sources."bl-1.2.0"
       (sources."duplexify-3.5.0" // {
         dependencies = [
           sources."end-of-stream-1.0.0"
@@ -25293,6 +25363,18 @@ in
         ];
       })
       sources."stream-shift-1.0.0"
+      sources."extend-shallow-2.0.1"
+      sources."is-absolute-0.2.6"
+      sources."is-extendable-0.1.1"
+      sources."is-relative-0.2.1"
+      sources."is-windows-0.2.0"
+      sources."is-unc-path-0.1.2"
+      sources."unc-path-regex-0.1.2"
+      sources."json-stable-stringify-1.0.1"
+      sources."through2-filter-2.0.0"
+      sources."jsonify-0.0.0"
+      sources."bl-1.2.0"
+      sources."safe-buffer-5.0.1"
       sources."abbrev-1.1.0"
       sources."uid2-0.0.3"
       sources."passport-strategy-1.0.0"
@@ -25309,7 +25391,10 @@ in
       sources."wordwrap-0.0.2"
       sources."align-text-0.1.4"
       sources."lazy-cache-1.0.4"
+      sources."kind-of-3.1.0"
       sources."longest-1.0.1"
+      sources."repeat-string-1.6.1"
+      sources."is-buffer-1.1.5"
       sources."options-0.0.6"
       sources."ultron-1.0.2"
       sources."sax-1.2.2"
@@ -25320,12 +25405,14 @@ in
           sources."sax-0.6.1"
           sources."readable-stream-1.0.34"
           sources."isarray-0.0.1"
+          sources."string_decoder-0.10.31"
         ];
       })
       (sources."request-2.74.0" // {
         dependencies = [
           sources."bl-1.1.2"
           sources."readable-stream-2.0.6"
+          sources."string_decoder-0.10.31"
         ];
       })
       sources."addressparser-0.1.3"
@@ -25337,7 +25424,7 @@ in
       sources."forever-agent-0.6.1"
       (sources."form-data-1.0.1" // {
         dependencies = [
-          sources."async-2.2.0"
+          sources."async-2.3.0"
         ];
       })
       sources."har-validator-2.0.6"
@@ -25377,7 +25464,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -25409,6 +25496,7 @@ in
         dependencies = [
           sources."readable-stream-1.1.14"
           sources."isarray-0.0.1"
+          sources."string_decoder-0.10.31"
         ];
       })
       sources."libmime-1.2.0"
@@ -25446,10 +25534,9 @@ in
       sources."twitter-ng-0.6.2"
       sources."oauth-0.9.14"
       sources."performance-now-0.2.0"
-      sources."safe-buffer-5.0.1"
       sources."uuid-3.0.1"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."bindings-1.2.1"
@@ -25458,7 +25545,7 @@ in
         dependencies = [
           sources."request-2.81.0"
           sources."caseless-0.12.0"
-          sources."form-data-2.1.2"
+          sources."form-data-2.1.4"
           sources."har-validator-4.2.1"
           sources."qs-6.4.0"
           sources."tunnel-agent-0.6.0"
@@ -25471,16 +25558,13 @@ in
       })
       sources."npmlog-4.0.2"
       sources."rc-1.1.7"
-      (sources."rimraf-2.5.4" // {
-        dependencies = [
-          sources."glob-7.1.1"
-        ];
-      })
+      sources."rimraf-2.5.4"
       sources."tar-2.2.1"
       (sources."tar-pack-3.3.0" // {
         dependencies = [
           sources."once-1.3.3"
           sources."readable-stream-2.1.5"
+          sources."string_decoder-0.10.31"
         ];
       })
       sources."are-we-there-yet-1.1.2"
@@ -25500,7 +25584,6 @@ in
       sources."deep-extend-0.4.1"
       sources."ini-1.3.4"
       sources."strip-json-comments-2.0.1"
-      sources."fs.realpath-1.0.0"
       sources."block-stream-0.0.9"
       sources."fstream-1.0.11"
       sources."fstream-ignore-1.0.5"
@@ -25578,7 +25661,7 @@ in
       sources."bytes-0.2.0"
       sources."pause-0.0.1"
       sources."mime-1.2.6"
-      sources."coffee-script-1.12.4"
+      sources."coffee-script-1.12.5"
       sources."vows-0.8.1"
       sources."eyes-0.1.8"
       sources."diff-1.0.8"
@@ -25607,7 +25690,7 @@ in
       sources."tinycolor-0.0.1"
       sources."options-0.0.6"
       sources."zeparser-0.0.5"
-      sources."mailcomposer-4.0.1"
+      sources."mailcomposer-4.0.2"
       sources."simplesmtp-0.3.35"
       sources."optimist-0.6.1"
       sources."buildmail-4.0.1"
@@ -25643,10 +25726,10 @@ in
   npm = nodeEnv.buildNodePackage {
     name = "npm";
     packageName = "npm";
-    version = "4.4.4";
+    version = "4.5.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm/-/npm-4.4.4.tgz";
-      sha1 = "d5ec661923a06bcd6a6eec3d0433a9da3fd67e37";
+      url = "https://registry.npmjs.org/npm/-/npm-4.5.0.tgz";
+      sha1 = "dc6a31f28807e6db980ed5083315667dcc8d0475";
     };
     dependencies = [
       sources."JSONStream-1.3.1"
@@ -25672,12 +25755,12 @@ in
       sources."glob-7.1.1"
       sources."graceful-fs-4.1.11"
       sources."has-unicode-2.0.1"
-      sources."hosted-git-info-2.2.0"
+      sources."hosted-git-info-2.4.2"
       sources."iferr-0.1.5"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
       sources."ini-1.3.4"
-      sources."init-package-json-1.9.5"
+      sources."init-package-json-1.9.6"
       sources."lazy-property-1.0.0"
       sources."lockfile-1.0.3"
       sources."lodash._baseuniq-4.6.0"
@@ -25688,7 +25771,7 @@ in
       sources."mississippi-1.3.0"
       sources."mkdirp-0.5.1"
       sources."move-concurrently-1.0.1"
-      (sources."node-gyp-3.5.0" // {
+      (sources."node-gyp-3.6.0" // {
         dependencies = [
           sources."nopt-3.0.6"
         ];
@@ -25699,7 +25782,7 @@ in
       sources."npm-cache-filename-1.0.2"
       sources."npm-install-checks-3.0.0"
       sources."npm-package-arg-4.2.1"
-      sources."npm-registry-client-7.4.6"
+      sources."npm-registry-client-8.1.1"
       sources."npm-user-validate-0.1.5"
       sources."npmlog-4.0.2"
       sources."once-1.4.0"
@@ -25711,7 +25794,7 @@ in
       sources."read-installed-4.0.3"
       sources."read-package-json-2.0.5"
       sources."read-package-tree-5.1.5"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."realize-package-specifier-3.0.3"
       sources."request-2.81.0"
       sources."retry-0.10.1"
@@ -25725,6 +25808,7 @@ in
           sources."from2-1.3.0"
           sources."readable-stream-1.1.14"
           sources."isarray-0.0.1"
+          sources."string_decoder-0.10.31"
         ];
       })
       sources."strip-ansi-3.0.1"
@@ -25758,7 +25842,7 @@ in
       sources."proto-list-1.2.4"
       sources."fstream-ignore-1.0.5"
       sources."minimatch-3.0.3"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."fs.realpath-1.0.0"
@@ -25812,7 +25896,7 @@ in
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."aws-sign2-0.6.0"
       sources."aws4-1.6.0"
@@ -25820,7 +25904,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -25837,7 +25921,7 @@ in
       sources."tunnel-agent-0.6.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -25852,7 +25936,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -25918,7 +26002,7 @@ in
       sources."crypto-random-string-1.0.0"
       sources."package-json-4.0.0"
       sources."got-6.7.1"
-      sources."registry-auth-token-3.1.0"
+      sources."registry-auth-token-3.1.2"
       sources."registry-url-3.1.0"
       sources."create-error-class-3.0.2"
       sources."duplexer3-0.1.4"
@@ -25931,7 +26015,7 @@ in
       sources."url-parse-lax-1.0.0"
       sources."capture-stack-trace-1.0.0"
       sources."prepend-http-1.0.4"
-      (sources."rc-1.2.0" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."minimist-1.2.0"
         ];
@@ -25989,7 +26073,7 @@ in
       })
       sources."fs.extra-1.3.2"
       sources."findit-1.2.0"
-      sources."coffee-script-1.12.4"
+      sources."coffee-script-1.12.5"
       sources."underscore-1.4.4"
       sources."underscore.string-2.3.3"
       sources."request-2.81.0"
@@ -26007,7 +26091,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -26025,7 +26109,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -26040,7 +26124,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -26074,7 +26158,7 @@ in
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."are-we-there-yet-1.1.2"
@@ -26082,12 +26166,12 @@ in
       sources."gauge-2.7.3"
       sources."set-blocking-2.0.0"
       sources."delegates-1.0.0"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."aproba-1.1.1"
       sources."has-unicode-2.0.1"
@@ -26139,10 +26223,10 @@ in
   npm-check-updates = nodeEnv.buildNodePackage {
     name = "npm-check-updates";
     packageName = "npm-check-updates";
-    version = "2.10.4";
+    version = "2.10.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-2.10.4.tgz";
-      sha1 = "0833dd707f983a04fdcd615afb860ce82b1e54a2";
+      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-2.10.5.tgz";
+      sha1 = "2d047e3a24d676e0c99cf7221361088dcc247a6a";
     };
     dependencies = [
       sources."bluebird-3.5.0"
@@ -26165,7 +26249,7 @@ in
       sources."require-dir-0.3.1"
       sources."semver-5.3.0"
       sources."semver-utils-1.1.1"
-      (sources."snyk-1.26.1" // {
+      (sources."snyk-1.28.1" // {
         dependencies = [
           sources."update-notifier-0.5.0"
           sources."latest-version-1.0.1"
@@ -26221,7 +26305,7 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
       sources."ini-1.3.4"
-      (sources."init-package-json-1.9.5" // {
+      (sources."init-package-json-1.9.6" // {
         dependencies = [
           sources."validate-npm-package-name-3.0.0"
         ];
@@ -26264,7 +26348,11 @@ in
       sources."read-installed-4.0.3"
       sources."read-package-json-2.0.5"
       sources."read-package-tree-5.1.5"
-      sources."readable-stream-2.1.5"
+      (sources."readable-stream-2.1.5" // {
+        dependencies = [
+          sources."string_decoder-0.10.31"
+        ];
+      })
       sources."realize-package-specifier-3.0.3"
       sources."request-2.75.0"
       sources."retry-0.10.1"
@@ -26302,7 +26390,7 @@ in
       sources."proto-list-1.2.4"
       sources."fstream-ignore-1.0.5"
       sources."minimatch-3.0.3"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."fs.realpath-1.0.0"
@@ -26337,7 +26425,7 @@ in
       sources."builtin-modules-1.1.1"
       (sources."concat-stream-1.6.0" // {
         dependencies = [
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
         ];
       })
       sources."typedarray-0.0.6"
@@ -26345,7 +26433,7 @@ in
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."os-homedir-1.0.2"
       sources."os-tmpdir-1.0.2"
@@ -26356,6 +26444,7 @@ in
       (sources."bl-1.1.2" // {
         dependencies = [
           sources."readable-stream-2.0.6"
+          sources."string_decoder-0.10.31"
         ];
       })
       sources."caseless-0.11.0"
@@ -26394,7 +26483,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -26442,8 +26531,8 @@ in
       sources."open-0.0.5"
       sources."os-name-1.0.3"
       sources."snyk-config-1.0.1"
-      sources."snyk-module-1.7.0"
-      sources."snyk-policy-1.7.0"
+      sources."snyk-module-1.8.1"
+      sources."snyk-policy-1.7.1"
       (sources."snyk-recursive-readdir-2.0.0" // {
         dependencies = [
           sources."minimatch-3.0.2"
@@ -26507,7 +26596,7 @@ in
       sources."longest-1.0.1"
       sources."repeat-string-1.6.1"
       sources."is-buffer-1.1.5"
-      sources."js-yaml-3.8.2"
+      sources."js-yaml-3.8.3"
       sources."argparse-1.0.9"
       sources."esprima-3.1.3"
       sources."sprintf-js-1.0.3"
@@ -26537,7 +26626,7 @@ in
       sources."is-obj-1.0.1"
       sources."package-json-2.4.0"
       sources."got-5.7.1"
-      sources."registry-auth-token-3.1.0"
+      sources."registry-auth-token-3.1.2"
       sources."registry-url-3.1.0"
       sources."create-error-class-3.0.2"
       sources."duplexer2-0.1.4"
@@ -26555,7 +26644,7 @@ in
       sources."error-ex-1.3.1"
       sources."is-arrayish-0.2.1"
       sources."prepend-http-1.0.4"
-      (sources."rc-1.2.0" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."minimist-1.2.0"
         ];
@@ -26613,10 +26702,10 @@ in
   parsoid = nodeEnv.buildNodePackage {
     name = "parsoid";
     packageName = "parsoid";
-    version = "0.6.1";
+    version = "0.7.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/parsoid/-/parsoid-0.6.1.tgz";
-      sha1 = "b6393a25fde2489290dc9d110b037ce89eec2723";
+      url = "https://registry.npmjs.org/parsoid/-/parsoid-0.7.1.tgz";
+      sha1 = "121dcf59d0bacd9247405988525888f9a6ba2328";
     };
     dependencies = [
       sources."async-0.9.2"
@@ -26656,8 +26745,7 @@ in
           sources."ms-0.7.1"
         ];
       })
-      sources."gelf-stream-0.2.4"
-      sources."js-yaml-3.8.2"
+      sources."js-yaml-3.8.3"
       sources."mediawiki-title-0.5.6"
       sources."negotiator-git+https://github.com/arlolra/negotiator.git#full-parse-access"
       sources."node-uuid-1.4.8"
@@ -26672,19 +26760,17 @@ in
       })
       (sources."service-runner-2.2.5" // {
         dependencies = [
-          sources."gelf-stream-1.1.1"
           sources."yargs-6.6.0"
-          sources."gelfling-0.3.1"
           sources."camelcase-3.0.0"
           sources."cliui-3.2.0"
         ];
       })
       sources."simplediff-0.1.1"
-      (sources."yargs-4.8.1" // {
+      (sources."yargs-5.0.0" // {
         dependencies = [
           sources."cliui-3.2.0"
           sources."window-size-0.2.0"
-          sources."yargs-parser-2.4.1"
+          sources."yargs-parser-3.2.0"
           sources."camelcase-3.0.0"
         ];
       })
@@ -26698,7 +26784,7 @@ in
       sources."on-finished-2.3.0"
       sources."qs-6.4.0"
       sources."raw-body-2.2.0"
-      sources."type-is-1.6.14"
+      sources."type-is-1.6.15"
       sources."ms-0.7.2"
       sources."inherits-2.0.3"
       sources."setprototypeof-1.0.3"
@@ -26754,12 +26840,12 @@ in
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."optimist-0.6.1"
       sources."source-map-0.4.4"
-      (sources."uglify-js-2.8.20" // {
+      (sources."uglify-js-2.8.22" // {
         dependencies = [
           sources."source-map-0.5.6"
           sources."yargs-3.10.0"
@@ -26789,7 +26875,6 @@ in
       sources."object-keys-1.0.11"
       sources."define-properties-1.1.2"
       sources."foreach-2.0.5"
-      sources."gelfling-0.2.0"
       sources."argparse-1.0.9"
       sources."esprima-3.1.3"
       sources."sprintf-js-1.0.3"
@@ -26799,7 +26884,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -26815,7 +26900,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -26830,7 +26915,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -26856,13 +26941,15 @@ in
       sources."bcrypt-pbkdf-1.0.1"
       sources."punycode-1.4.1"
       sources."bluebird-3.5.0"
-      sources."bunyan-1.8.9"
+      sources."bunyan-1.8.10"
       sources."bunyan-syslog-udp-0.1.0"
+      sources."gelf-stream-1.1.1"
       sources."hot-shots-4.4.0"
       (sources."limitation-0.2.0" // {
         dependencies = [
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       sources."dnscache-1.0.1"
@@ -26870,7 +26957,7 @@ in
       sources."mv-2.1.1"
       sources."safe-json-stringify-1.0.4"
       sources."moment-2.18.1"
-      sources."nan-2.5.1"
+      sources."nan-2.6.2"
       (sources."mkdirp-0.5.1" // {
         dependencies = [
           sources."minimist-0.0.8"
@@ -26878,29 +26965,33 @@ in
       })
       sources."ncp-2.0.0"
       sources."rimraf-2.4.5"
+      sources."gelfling-0.3.1"
       sources."kad-git+https://github.com/gwicke/kad.git#master"
       sources."clarinet-0.11.0"
       sources."colors-1.1.2"
       sources."hat-0.0.3"
       (sources."kad-fs-0.0.4" // {
         dependencies = [
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       sources."kad-localstorage-0.0.7"
       (sources."kad-memstore-0.0.1" // {
         dependencies = [
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       sources."lodash-3.10.1"
       sources."merge-1.2.0"
       (sources."msgpack5-3.4.1" // {
         dependencies = [
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       sources."buffer-shims-1.0.0"
@@ -26909,8 +27000,9 @@ in
       sources."dom-storage-2.0.2"
       (sources."bl-1.2.0" // {
         dependencies = [
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
           sources."isarray-1.0.0"
+          sources."string_decoder-1.0.0"
         ];
       })
       sources."get-caller-file-1.0.2"
@@ -26946,7 +27038,7 @@ in
       sources."error-ex-1.3.1"
       sources."is-arrayish-0.2.1"
       sources."is-utf8-0.2.1"
-      sources."hosted-git-info-2.4.1"
+      sources."hosted-git-info-2.4.2"
       sources."is-builtin-module-1.0.0"
       sources."validate-npm-package-license-3.0.1"
       sources."builtin-modules-1.1.1"
@@ -26994,14 +27086,14 @@ in
           sources."minimist-0.0.10"
         ];
       })
-      (sources."parse-torrent-5.8.2" // {
+      (sources."parse-torrent-5.8.3" // {
         dependencies = [
           sources."get-stdin-5.0.1"
         ];
       })
       sources."pump-1.0.2"
       sources."range-parser-1.2.0"
-      sources."rc-1.2.0"
+      sources."rc-1.2.1"
       (sources."torrent-stream-1.0.3" // {
         dependencies = [
           sources."end-of-stream-0.1.5"
@@ -27027,15 +27119,15 @@ in
       sources."plist-1.2.0"
       sources."reverse-http-1.2.0"
       sources."stream-buffers-2.2.0"
-      sources."big-integer-1.6.17"
+      sources."big-integer-1.6.19"
       sources."inherits-2.0.3"
       sources."typedarray-0.0.6"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."base64-js-0.0.8"
       sources."xmlbuilder-4.0.0"
@@ -27084,7 +27176,7 @@ in
       sources."currently-unhandled-0.4.1"
       sources."signal-exit-3.0.2"
       sources."array-find-index-1.0.2"
-      sources."hosted-git-info-2.4.1"
+      sources."hosted-git-info-2.4.2"
       sources."is-builtin-module-1.0.0"
       sources."semver-5.3.0"
       sources."validate-npm-package-license-3.0.1"
@@ -27131,9 +27223,9 @@ in
       sources."is-promise-2.1.0"
       sources."wordwrap-0.0.3"
       sources."blob-to-buffer-1.2.6"
-      sources."magnet-uri-5.1.5"
-      sources."parse-torrent-file-4.0.1"
-      sources."simple-get-2.4.0"
+      sources."magnet-uri-5.1.6"
+      sources."parse-torrent-file-4.0.2"
+      sources."simple-get-2.5.1"
       sources."thirty-two-1.0.2"
       sources."uniq-1.0.1"
       sources."bencode-0.11.0"
@@ -27147,7 +27239,7 @@ in
       sources."strip-json-comments-2.0.1"
       sources."bitfield-0.1.0"
       sources."bncode-0.5.3"
-      (sources."fs-chunk-store-1.6.4" // {
+      (sources."fs-chunk-store-1.6.5" // {
         dependencies = [
           sources."mkdirp-0.5.1"
           sources."thunky-1.0.2"
@@ -27161,8 +27253,8 @@ in
       sources."peer-wire-swarm-0.12.1"
       sources."rimraf-2.6.1"
       sources."torrent-discovery-5.4.0"
-      sources."torrent-piece-1.1.0"
-      (sources."random-access-file-1.5.0" // {
+      sources."torrent-piece-1.1.1"
+      (sources."random-access-file-1.6.1" // {
         dependencies = [
           sources."mkdirp-0.5.1"
           sources."thunky-1.0.2"
@@ -27171,6 +27263,7 @@ in
       })
       sources."randombytes-2.0.3"
       sources."run-parallel-1.1.6"
+      sources."buffer-alloc-unsafe-1.0.0"
       sources."debug-2.6.3"
       sources."ms-0.7.2"
       sources."flatten-0.0.1"
@@ -27180,6 +27273,7 @@ in
           sources."readable-stream-1.1.14"
           sources."bncode-0.2.3"
           sources."isarray-0.0.1"
+          sources."string_decoder-0.10.31"
         ];
       })
       sources."speedometer-0.1.4"
@@ -27190,7 +27284,7 @@ in
       sources."inflight-1.0.6"
       sources."minimatch-3.0.3"
       sources."path-is-absolute-1.0.1"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       (sources."bittorrent-dht-6.4.2" // {
@@ -27221,7 +27315,7 @@ in
       sources."simple-peer-6.4.4"
       (sources."simple-websocket-4.3.1" // {
         dependencies = [
-          sources."ws-2.2.2"
+          sources."ws-2.2.3"
         ];
       })
       sources."string2compact-1.2.2"
@@ -27518,7 +27612,7 @@ in
       sources."inflight-1.0.6"
       sources."minimatch-3.0.3"
       sources."path-is-absolute-1.0.1"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."which-1.2.14"
@@ -27575,7 +27669,7 @@ in
       sources."minimatch-3.0.3"
       sources."once-1.4.0"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."is-stream-1.1.0"
@@ -27601,7 +27695,7 @@ in
       sources."isstream-0.1.2"
       sources."is-typedarray-1.0.0"
       sources."har-validator-2.0.6"
-      sources."async-2.2.0"
+      sources."async-2.3.0"
       sources."lodash-4.17.4"
       sources."mime-db-1.27.0"
       sources."assert-plus-0.2.0"
@@ -27610,7 +27704,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -27665,6 +27759,60 @@ in
     };
     production = true;
   };
+  prettier = nodeEnv.buildNodePackage {
+    name = "prettier";
+    packageName = "prettier";
+    version = "1.1.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/prettier/-/prettier-1.1.0.tgz";
+      sha1 = "9d6ad005703efefa66b6999b8916bfc6afeaf9f8";
+    };
+    dependencies = [
+      sources."ast-types-0.9.8"
+      sources."babel-code-frame-6.22.0"
+      sources."babylon-7.0.0-beta.8"
+      sources."chalk-1.1.3"
+      sources."esutils-2.0.2"
+      sources."flow-parser-0.43.0"
+      sources."get-stdin-5.0.1"
+      sources."glob-7.1.1"
+      sources."jest-validate-19.0.0"
+      sources."minimist-1.2.0"
+      sources."js-tokens-3.0.1"
+      sources."ansi-styles-2.2.1"
+      sources."escape-string-regexp-1.0.5"
+      sources."has-ansi-2.0.0"
+      sources."strip-ansi-3.0.1"
+      sources."supports-color-2.0.0"
+      sources."ansi-regex-2.1.1"
+      sources."fs.realpath-1.0.0"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.3"
+      sources."minimatch-3.0.3"
+      sources."once-1.4.0"
+      sources."path-is-absolute-1.0.1"
+      sources."wrappy-1.0.2"
+      sources."brace-expansion-1.1.7"
+      sources."balanced-match-0.4.2"
+      sources."concat-map-0.0.1"
+      sources."jest-matcher-utils-19.0.0"
+      sources."leven-2.1.0"
+      (sources."pretty-format-19.0.0" // {
+        dependencies = [
+          sources."ansi-styles-3.0.0"
+        ];
+      })
+      sources."color-convert-1.9.0"
+      sources."color-name-1.1.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Prettier is an opinionated JavaScript formatter";
+      homepage = "https://github.com/prettier/prettier#readme";
+      license = "MIT";
+    };
+    production = true;
+  };
   react-tools = nodeEnv.buildNodePackage {
     name = "react-tools";
     packageName = "react-tools";
@@ -27698,7 +27846,7 @@ in
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."minimist-0.0.8"
@@ -27802,7 +27950,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -27819,7 +27967,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -27834,7 +27982,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -27909,14 +28057,14 @@ in
         ];
       })
       sources."commander-2.9.0"
-      sources."js-yaml-3.8.2"
+      sources."js-yaml-3.8.3"
       sources."cookies-0.7.0"
       sources."request-2.81.0"
       sources."async-0.9.2"
       sources."es6-shim-0.21.1"
       sources."semver-4.3.6"
       sources."minimatch-1.0.0"
-      sources."bunyan-1.8.9"
+      sources."bunyan-1.8.10"
       sources."handlebars-2.0.0"
       sources."highlight.js-8.9.1"
       sources."lunr-0.7.2"
@@ -27929,6 +28077,7 @@ in
       (sources."readable-stream-1.1.14" // {
         dependencies = [
           sources."isarray-0.0.1"
+          sources."string_decoder-0.10.31"
         ];
       })
       sources."fs-ext-0.6.0"
@@ -27964,7 +28113,7 @@ in
       sources."serve-static-1.12.1"
       sources."setprototypeof-1.0.3"
       sources."statuses-1.3.1"
-      sources."type-is-1.6.14"
+      sources."type-is-1.6.15"
       sources."utils-merge-1.0.0"
       sources."vary-1.1.1"
       sources."mime-types-2.1.15"
@@ -27994,7 +28143,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -28010,7 +28159,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -28025,7 +28174,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -28056,7 +28205,7 @@ in
       sources."mv-2.1.1"
       sources."safe-json-stringify-1.0.4"
       sources."moment-2.18.1"
-      sources."nan-2.5.1"
+      sources."nan-2.6.2"
       sources."ncp-2.0.0"
       sources."rimraf-2.4.5"
       (sources."glob-6.0.4" // {
@@ -28068,7 +28217,7 @@ in
       sources."inherits-2.0.3"
       sources."once-1.4.0"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."optimist-0.3.7"
@@ -28088,7 +28237,7 @@ in
       sources."uc.micro-1.0.3"
       (sources."htmlparser2-3.9.2" // {
         dependencies = [
-          sources."readable-stream-2.2.6"
+          sources."readable-stream-2.2.9"
         ];
       })
       sources."regexp-quote-0.0.0"
@@ -28105,7 +28254,7 @@ in
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."jsonparse-1.3.0"
       sources."through-2.3.8"
@@ -28140,9 +28289,9 @@ in
       sources."graceful-readlink-1.0.1"
       sources."graceful-fs-4.1.11"
       sources."minimatch-3.0.3"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."set-immediate-shim-1.0.1"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."buffer-shims-1.0.0"
@@ -28150,7 +28299,7 @@ in
       sources."isarray-1.0.0"
       sources."inherits-2.0.3"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
     ];
     buildInputs = globalBuildInputs;
@@ -28249,7 +28398,7 @@ in
       sources."wrappy-1.0.2"
       sources."extsprintf-1.2.0"
       sources."core-util-is-1.0.2"
-      sources."nan-2.5.1"
+      sources."nan-2.6.2"
       sources."mv-2.1.1"
       sources."safe-json-stringify-1.0.4"
       sources."mkdirp-0.5.1"
@@ -28261,7 +28410,7 @@ in
       sources."inherits-2.0.3"
       sources."minimatch-3.0.3"
       sources."path-is-absolute-1.0.1"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."sshpk-agent-1.2.1"
@@ -28284,11 +28433,11 @@ in
         ];
       })
       sources."json-schema-0.2.3"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."buffer-shims-1.0.0"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."jsbn-0.1.1"
       sources."tweetnacl-0.14.5"
@@ -28326,7 +28475,7 @@ in
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."amdefine-1.0.1"
@@ -28397,21 +28546,21 @@ in
       sources."graceful-fs-4.1.11"
       sources."object-assign-4.1.1"
       sources."errno-0.1.4"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."prr-0.0.0"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."inherits-2.0.3"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."fs.realpath-1.0.0"
       sources."inflight-1.0.6"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."wrappy-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
     ];
@@ -28501,7 +28650,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-2.0.6"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -28544,7 +28693,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -28606,10 +28755,10 @@ in
   uglify-js = nodeEnv.buildNodePackage {
     name = "uglify-js";
     packageName = "uglify-js";
-    version = "2.8.20";
+    version = "2.8.22";
     src = fetchurl {
-      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.20.tgz";
-      sha1 = "be87100fbc18de3876ed606e9d24b4568311cecf";
+      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.22.tgz";
+      sha1 = "d54934778a8da14903fa29a326fb24c0ab51a1a0";
     };
     dependencies = [
       sources."source-map-0.5.6"
@@ -28640,10 +28789,10 @@ in
   ungit = nodeEnv.buildNodePackage {
     name = "ungit";
     packageName = "ungit";
-    version = "1.1.11";
+    version = "1.1.14";
     src = fetchurl {
-      url = "https://registry.npmjs.org/ungit/-/ungit-1.1.11.tgz";
-      sha1 = "a6391af1d6d132c2f995dbf9740b17b315b2f90f";
+      url = "https://registry.npmjs.org/ungit/-/ungit-1.1.14.tgz";
+      sha1 = "e65f05f541bc8b829f9720f28e74c4a12c7b6dd2";
     };
     dependencies = [
       sources."async-2.1.5"
@@ -28654,12 +28803,24 @@ in
       sources."cookie-parser-1.4.3"
       sources."crossroads-0.12.2"
       sources."diff2html-2.3.0"
-      sources."express-4.14.1"
-      sources."express-session-1.14.2"
+      (sources."express-4.15.2" // {
+        dependencies = [
+          sources."debug-2.6.1"
+          sources."qs-6.4.0"
+          sources."setprototypeof-1.0.3"
+          sources."ms-0.7.2"
+        ];
+      })
+      (sources."express-session-1.15.2" // {
+        dependencies = [
+          sources."debug-2.6.3"
+          sources."ms-0.7.2"
+        ];
+      })
       sources."forever-monitor-1.1.0"
       sources."getmac-1.2.1"
       sources."hasher-1.2.0"
-      sources."ignore-3.2.6"
+      sources."ignore-3.2.7"
       sources."keen.io-0.1.3"
       sources."knockout-3.4.2"
       sources."lodash-4.17.4"
@@ -28668,21 +28829,21 @@ in
           sources."minimist-0.0.8"
         ];
       })
-      sources."moment-2.17.1"
+      sources."moment-2.18.1"
       sources."node-cache-4.1.1"
-      (sources."npm-4.1.2" // {
+      (sources."npm-4.5.0" // {
         dependencies = [
-          sources."abbrev-1.0.9"
+          sources."bluebird-3.5.0"
           sources."nopt-4.0.1"
-          sources."request-2.79.0"
+          sources."request-2.81.0"
           sources."combined-stream-1.0.5"
           sources."forever-agent-0.6.1"
-          sources."form-data-2.1.2"
+          sources."form-data-2.1.4"
           sources."hawk-3.1.3"
           sources."json-stringify-safe-5.0.1"
           sources."oauth-sign-0.8.2"
-          sources."qs-6.3.2"
-          sources."tunnel-agent-0.4.3"
+          sources."qs-6.4.0"
+          sources."tunnel-agent-0.6.0"
           sources."delayed-stream-1.0.0"
           sources."hoek-2.16.3"
           sources."boom-2.10.1"
@@ -28690,14 +28851,12 @@ in
           sources."sntp-1.0.9"
         ];
       })
-      (sources."npm-registry-client-7.4.6" // {
+      (sources."npm-registry-client-8.1.1" // {
         dependencies = [
           sources."request-2.81.0"
-          sources."caseless-0.12.0"
           sources."combined-stream-1.0.5"
           sources."forever-agent-0.6.1"
-          sources."form-data-2.1.2"
-          sources."har-validator-4.2.1"
+          sources."form-data-2.1.4"
           sources."hawk-3.1.3"
           sources."json-stringify-safe-5.0.1"
           sources."oauth-sign-0.8.2"
@@ -28715,22 +28874,22 @@ in
       sources."os-homedir-1.0.2"
       sources."passport-0.3.2"
       sources."passport-local-1.0.0"
-      (sources."raven-1.1.5" // {
+      (sources."raven-1.2.1" // {
         dependencies = [
           sources."json-stringify-safe-5.0.1"
           sources."uuid-3.0.0"
         ];
       })
-      (sources."rc-1.1.7" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."minimist-1.2.0"
         ];
       })
-      sources."rimraf-2.5.4"
+      sources."rimraf-2.6.1"
       sources."semver-5.3.0"
-      sources."serve-static-1.11.2"
+      sources."serve-static-1.12.1"
       sources."signals-1.0.0"
-      sources."snapsvg-0.4.0"
+      sources."snapsvg-0.5.1"
       (sources."socket.io-1.7.3" // {
         dependencies = [
           sources."debug-2.3.3"
@@ -28749,6 +28908,7 @@ in
           sources."readable-stream-1.0.27-1"
           sources."async-0.9.2"
           sources."isarray-0.0.1"
+          sources."string_decoder-0.10.31"
         ];
       })
       (sources."temp-0.8.3" // {
@@ -28762,7 +28922,11 @@ in
           sources."colors-1.0.3"
         ];
       })
-      sources."yargs-6.6.0"
+      (sources."yargs-7.1.0" // {
+        dependencies = [
+          sources."camelcase-3.0.0"
+        ];
+      })
       sources."bytes-2.4.0"
       sources."content-type-1.0.2"
       sources."debug-2.2.0"
@@ -28772,7 +28936,7 @@ in
       sources."on-finished-2.3.0"
       sources."qs-6.2.0"
       sources."raw-body-2.1.7"
-      sources."type-is-1.6.14"
+      sources."type-is-1.6.15"
       sources."ms-0.7.1"
       sources."inherits-2.0.3"
       sources."setprototypeof-1.0.2"
@@ -28803,18 +28967,26 @@ in
       sources."content-disposition-0.5.2"
       sources."encodeurl-1.0.1"
       sources."escape-html-1.0.3"
-      sources."etag-1.7.0"
-      sources."finalhandler-0.5.1"
-      sources."fresh-0.3.0"
+      sources."etag-1.8.0"
+      (sources."finalhandler-1.0.1" // {
+        dependencies = [
+          sources."debug-2.6.3"
+          sources."ms-0.7.2"
+        ];
+      })
+      sources."fresh-0.5.0"
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."parseurl-1.3.1"
       sources."path-to-regexp-0.1.7"
       sources."proxy-addr-1.1.4"
       sources."range-parser-1.2.0"
-      (sources."send-0.14.2" // {
+      (sources."send-0.15.1" // {
         dependencies = [
+          sources."debug-2.6.1"
+          sources."http-errors-1.6.1"
           sources."ms-0.7.2"
+          sources."setprototypeof-1.0.3"
         ];
       })
       sources."utils-merge-1.0.0"
@@ -28824,7 +28996,7 @@ in
       sources."ipaddr.js-1.3.0"
       sources."destroy-1.0.4"
       sources."mime-1.3.4"
-      sources."crc-3.4.1"
+      sources."crc-3.4.4"
       sources."on-headers-1.0.1"
       sources."uid-safe-2.1.4"
       sources."random-bytes-1.0.0"
@@ -28908,11 +29080,13 @@ in
       sources."underscore-1.5.2"
       sources."clone-2.1.1"
       sources."JSONStream-1.3.1"
+      sources."ansi-regex-2.1.1"
       sources."ansicolors-0.3.2"
       sources."ansistyles-0.1.3"
-      sources."aproba-1.0.4"
+      sources."aproba-1.1.1"
       sources."archy-1.0.0"
       sources."asap-2.0.5"
+      sources."call-limit-1.1.0"
       sources."chownr-1.0.1"
       sources."cmd-shim-2.0.2"
       sources."columnify-1.5.4"
@@ -28930,22 +29104,20 @@ in
       })
       sources."graceful-fs-4.1.11"
       sources."has-unicode-2.0.1"
-      sources."hosted-git-info-2.1.5"
+      sources."hosted-git-info-2.4.2"
       sources."iferr-0.1.5"
       sources."inflight-1.0.6"
-      (sources."init-package-json-1.9.5" // {
-        dependencies = [
-          sources."validate-npm-package-name-3.0.0"
-        ];
-      })
+      sources."init-package-json-1.9.6"
+      sources."lazy-property-1.0.0"
       sources."lockfile-1.0.3"
       sources."lodash._baseuniq-4.6.0"
       sources."lodash.clonedeep-4.5.0"
       sources."lodash.union-4.6.0"
       sources."lodash.uniq-4.5.0"
       sources."lodash.without-4.4.0"
-      sources."mississippi-1.2.0"
-      (sources."node-gyp-3.5.0" // {
+      sources."mississippi-1.3.0"
+      sources."move-concurrently-1.0.1"
+      (sources."node-gyp-3.6.0" // {
         dependencies = [
           sources."minimatch-3.0.3"
           sources."nopt-3.0.6"
@@ -28967,7 +29139,7 @@ in
       sources."read-installed-4.0.3"
       sources."read-package-json-2.0.5"
       sources."read-package-tree-5.1.5"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."realize-package-specifier-3.0.3"
       sources."retry-0.10.1"
       sources."sha-2.0.1"
@@ -28978,6 +29150,7 @@ in
           sources."from2-1.3.0"
           sources."readable-stream-1.1.14"
           sources."isarray-0.0.1"
+          sources."string_decoder-0.10.31"
         ];
       })
       sources."strip-ansi-3.0.1"
@@ -28986,16 +29159,12 @@ in
       sources."uid-number-0.0.6"
       sources."umask-1.1.0"
       sources."unique-filename-1.1.0"
+      sources."update-notifier-2.1.0"
       sources."uuid-3.0.1"
-      (sources."validate-npm-package-name-2.2.2" // {
-        dependencies = [
-          sources."builtins-0.0.7"
-        ];
-      })
+      sources."validate-npm-package-name-3.0.0"
       sources."which-1.2.14"
       sources."wrappy-1.0.2"
       sources."write-file-atomic-1.3.1"
-      sources."ansi-regex-2.1.1"
       sources."debuglog-1.0.1"
       sources."imurmurhash-0.1.4"
       sources."lodash._baseindexof-3.1.0"
@@ -29020,13 +29189,12 @@ in
           sources."minimatch-3.0.3"
         ];
       })
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."fs.realpath-1.0.0"
       sources."path-is-absolute-1.0.1"
       sources."promzard-0.3.0"
-      sources."builtins-1.0.3"
       sources."lodash._createset-4.0.3"
       sources."lodash._root-3.0.1"
       sources."concat-stream-1.6.0"
@@ -29039,13 +29207,17 @@ in
       sources."end-of-stream-1.4.0"
       sources."flush-write-stream-1.0.2"
       sources."from2-2.3.0"
+      sources."parallel-transform-1.1.0"
       sources."pump-1.0.2"
       sources."pumpify-1.3.5"
       sources."stream-each-1.2.0"
       sources."through2-2.0.3"
       sources."typedarray-0.0.6"
       sources."stream-shift-1.0.0"
+      sources."cyclist-0.2.2"
       sources."xtend-4.0.1"
+      sources."copy-concurrently-1.0.3"
+      sources."run-queue-1.0.3"
       sources."is-builtin-module-1.0.0"
       sources."builtin-modules-1.1.1"
       sources."are-we-there-yet-1.1.2"
@@ -29069,40 +29241,33 @@ in
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."aws-sign2-0.6.0"
       sources."aws4-1.6.0"
-      sources."caseless-0.11.0"
+      sources."caseless-0.12.0"
       sources."extend-3.0.0"
-      sources."har-validator-2.0.6"
+      sources."har-validator-4.2.1"
       sources."http-signature-1.1.1"
       sources."is-typedarray-1.0.0"
       sources."isstream-0.1.2"
+      sources."performance-now-0.2.0"
+      sources."safe-buffer-5.0.1"
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."asynckit-0.4.0"
-      sources."chalk-1.1.3"
-      sources."commander-2.9.0"
-      sources."is-my-json-valid-2.16.0"
-      sources."pinkie-promise-2.0.1"
-      sources."ansi-styles-2.2.1"
-      sources."escape-string-regexp-1.0.5"
-      sources."has-ansi-2.0.0"
-      sources."supports-color-2.0.0"
-      sources."graceful-readlink-1.0.1"
-      sources."generate-function-2.0.0"
-      sources."generate-object-property-1.2.0"
-      sources."jsonpointer-4.0.1"
-      sources."is-property-1.0.2"
-      sources."pinkie-2.0.4"
+      sources."ajv-4.11.6"
+      sources."har-schema-1.0.5"
+      sources."co-4.6.0"
+      sources."json-stable-stringify-1.0.1"
+      sources."jsonify-0.0.0"
       sources."assert-plus-0.2.0"
       (sources."jsprim-1.4.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -29130,23 +29295,70 @@ in
       sources."stream-iterate-1.2.0"
       sources."block-stream-0.0.9"
       sources."unique-slug-2.0.0"
+      (sources."boxen-1.0.0" // {
+        dependencies = [
+          sources."string-width-2.0.0"
+          sources."is-fullwidth-code-point-2.0.0"
+        ];
+      })
+      sources."chalk-1.1.3"
+      sources."configstore-3.0.0"
+      sources."is-npm-1.0.0"
+      sources."latest-version-3.1.0"
+      sources."lazy-req-2.0.0"
+      sources."semver-diff-2.1.0"
+      sources."xdg-basedir-3.0.0"
+      sources."ansi-align-1.1.0"
+      sources."camelcase-4.1.0"
+      sources."cli-boxes-1.0.0"
+      sources."term-size-0.1.1"
+      sources."widest-line-1.0.0"
+      sources."execa-0.4.0"
+      (sources."cross-spawn-async-2.2.5" // {
+        dependencies = [
+          sources."lru-cache-4.0.2"
+        ];
+      })
+      sources."is-stream-1.1.0"
+      sources."npm-run-path-1.0.0"
+      sources."path-key-1.0.0"
+      sources."strip-eof-1.0.0"
+      sources."pseudomap-1.0.2"
+      sources."yallist-2.1.2"
+      sources."ansi-styles-2.2.1"
+      sources."escape-string-regexp-1.0.5"
+      sources."has-ansi-2.0.0"
+      sources."supports-color-2.0.0"
+      sources."dot-prop-4.1.1"
+      sources."unique-string-1.0.0"
+      sources."is-obj-1.0.1"
+      sources."crypto-random-string-1.0.0"
+      sources."package-json-4.0.0"
+      sources."got-6.7.1"
+      sources."registry-auth-token-3.1.2"
+      sources."registry-url-3.1.0"
+      sources."create-error-class-3.0.2"
+      sources."duplexer3-0.1.4"
+      sources."get-stream-3.0.0"
+      sources."is-redirect-1.0.0"
+      sources."is-retry-allowed-1.1.0"
+      sources."lowercase-keys-1.0.0"
+      sources."timed-out-4.0.1"
+      sources."unzip-response-2.0.1"
+      sources."url-parse-lax-1.0.0"
+      sources."capture-stack-trace-1.0.0"
+      sources."prepend-http-1.0.4"
+      sources."builtins-1.0.3"
       sources."isexe-2.0.0"
       sources."spdx-correct-1.0.2"
       sources."spdx-expression-parse-1.0.4"
       sources."spdx-license-ids-1.2.2"
-      sources."performance-now-0.2.0"
-      sources."safe-buffer-5.0.1"
-      sources."ajv-4.11.5"
-      sources."har-schema-1.0.5"
-      sources."co-4.6.0"
-      sources."json-stable-stringify-1.0.1"
-      sources."jsonify-0.0.0"
       sources."passport-strategy-1.0.0"
       sources."pause-0.0.1"
       sources."lsmod-1.0.0"
       sources."deep-extend-0.4.1"
       sources."strip-json-comments-2.0.1"
-      sources."eve-0.4.2"
+      sources."eve-0.5.3"
       (sources."engine.io-1.8.3" // {
         dependencies = [
           sources."debug-2.3.3"
@@ -29211,7 +29423,6 @@ in
       sources."formidable-1.0.14"
       sources."cookiejar-2.0.1"
       sources."reduce-component-1.0.1"
-      sources."camelcase-3.0.0"
       sources."cliui-3.2.0"
       sources."decamelize-1.2.0"
       sources."get-caller-file-1.0.2"
@@ -29221,13 +29432,19 @@ in
       sources."require-main-filename-1.0.1"
       sources."which-module-1.0.0"
       sources."y18n-3.2.1"
-      sources."yargs-parser-4.2.1"
+      (sources."yargs-parser-5.0.0" // {
+        dependencies = [
+          sources."camelcase-3.0.0"
+        ];
+      })
       sources."wrap-ansi-2.1.0"
       sources."lcid-1.0.0"
       sources."invert-kv-1.0.0"
       sources."find-up-1.1.2"
       sources."read-pkg-1.1.0"
       sources."path-exists-2.1.0"
+      sources."pinkie-promise-2.0.1"
+      sources."pinkie-2.0.4"
       sources."load-json-file-1.1.0"
       sources."path-type-1.1.0"
       sources."parse-json-2.2.0"
@@ -29315,7 +29532,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."inflight-1.0.6"
       sources."minimatch-3.0.3"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."is-stream-1.1.0"
@@ -29341,7 +29558,7 @@ in
       sources."isstream-0.1.2"
       sources."is-typedarray-1.0.0"
       sources."har-validator-2.0.6"
-      sources."async-2.2.0"
+      sources."async-2.3.0"
       sources."lodash-4.17.4"
       sources."mime-db-1.27.0"
       sources."assert-plus-0.2.0"
@@ -29350,7 +29567,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -29410,29 +29627,38 @@ in
   webpack = nodeEnv.buildNodePackage {
     name = "webpack";
     packageName = "webpack";
-    version = "2.3.2";
+    version = "2.4.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/webpack/-/webpack-2.3.2.tgz";
-      sha1 = "7d521e6f0777a3a58985c69425263fdfe977b458";
+      url = "https://registry.npmjs.org/webpack/-/webpack-2.4.1.tgz";
+      sha1 = "15a91dbe34966d8a4b99c7d656efd92a2e5a6f6a";
     };
     dependencies = [
-      sources."acorn-4.0.11"
-      sources."acorn-dynamic-import-2.0.2"
-      sources."ajv-4.11.5"
+      sources."acorn-5.0.3"
+      (sources."acorn-dynamic-import-2.0.2" // {
+        dependencies = [
+          sources."acorn-4.0.11"
+        ];
+      })
+      sources."ajv-4.11.6"
       sources."ajv-keywords-1.5.1"
-      sources."async-2.2.0"
+      sources."async-2.3.0"
       sources."enhanced-resolve-3.1.0"
       sources."interpret-1.0.2"
       sources."json-loader-0.5.4"
+      sources."json5-0.5.1"
       sources."loader-runner-2.3.0"
       sources."loader-utils-0.2.17"
       sources."memory-fs-0.4.1"
       sources."mkdirp-0.5.1"
-      sources."node-libs-browser-2.0.0"
+      (sources."node-libs-browser-2.0.0" // {
+        dependencies = [
+          sources."string_decoder-0.10.31"
+        ];
+      })
       sources."source-map-0.5.6"
       sources."supports-color-3.2.3"
       sources."tapable-0.2.6"
-      (sources."uglify-js-2.8.20" // {
+      (sources."uglify-js-2.8.22" // {
         dependencies = [
           sources."yargs-3.10.0"
         ];
@@ -29453,16 +29679,15 @@ in
       sources."object-assign-4.1.1"
       sources."big.js-3.1.3"
       sources."emojis-list-2.1.0"
-      sources."json5-0.5.1"
       sources."errno-0.1.4"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."prr-0.0.0"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."inherits-2.0.3"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."minimist-0.0.8"
       sources."assert-1.4.1"
@@ -29480,7 +29705,7 @@ in
       sources."punycode-1.4.1"
       sources."querystring-es3-0.2.1"
       sources."stream-browserify-2.0.1"
-      sources."stream-http-2.6.3"
+      sources."stream-http-2.7.0"
       sources."timers-browserify-2.0.2"
       sources."tty-browserify-0.0.0"
       (sources."url-0.11.0" // {
@@ -29520,7 +29745,7 @@ in
       sources."parse-asn1-5.1.0"
       sources."brorand-1.1.0"
       sources."hash.js-1.0.3"
-      sources."hmac-drbg-1.0.0"
+      sources."hmac-drbg-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."asn1.js-4.9.1"
       sources."ripemd160-1.0.1"
@@ -29569,7 +29794,7 @@ in
       sources."object.omit-2.0.1"
       sources."parse-glob-3.0.4"
       sources."regex-cache-0.4.3"
-      sources."arr-flatten-1.0.1"
+      sources."arr-flatten-1.0.2"
       sources."expand-range-1.8.2"
       sources."preserve-0.2.0"
       sources."repeat-element-1.1.2"
@@ -29589,14 +29814,14 @@ in
       sources."binary-extensions-1.8.0"
       sources."minimatch-3.0.3"
       sources."set-immediate-shim-1.0.1"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
-      sources."nan-2.5.1"
+      sources."nan-2.6.2"
       sources."node-pre-gyp-0.6.34"
       sources."nopt-4.0.1"
       sources."npmlog-4.0.2"
-      (sources."rc-1.2.0" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."minimist-1.2.0"
         ];
@@ -29634,7 +29859,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -29663,7 +29888,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -29729,7 +29954,7 @@ in
       sources."error-ex-1.3.1"
       sources."is-arrayish-0.2.1"
       sources."is-utf8-0.2.1"
-      sources."hosted-git-info-2.4.1"
+      sources."hosted-git-info-2.4.2"
       sources."is-builtin-module-1.0.0"
       sources."validate-npm-package-license-3.0.1"
       sources."builtin-modules-1.1.1"
@@ -29764,21 +29989,20 @@ in
   yarn = nodeEnv.buildNodePackage {
     name = "yarn";
     packageName = "yarn";
-    version = "0.21.3";
+    version = "0.22.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/yarn/-/yarn-0.21.3.tgz";
-      sha1 = "8dda3a63c798b383cfa577452c2b3cb3e4aa87e0";
+      url = "https://registry.npmjs.org/yarn/-/yarn-0.22.0.tgz";
+      sha1 = "fd8511dc29225b925be967dc185772cc59de5888";
     };
     dependencies = [
       sources."babel-runtime-6.23.0"
       sources."bytes-2.5.0"
-      sources."camelcase-3.0.0"
+      sources."camelcase-4.1.0"
       sources."chalk-1.1.3"
       sources."cmd-shim-2.0.2"
       sources."commander-2.9.0"
       sources."death-1.1.0"
       sources."debug-2.6.3"
-      sources."defaults-1.0.3"
       sources."detect-indent-5.0.0"
       sources."ini-1.3.4"
       sources."inquirer-3.0.6"
@@ -29802,6 +30026,7 @@ in
       sources."strip-bom-3.0.0"
       sources."tar-2.2.1"
       sources."tar-stream-1.5.2"
+      sources."v8-compile-cache-1.1.0"
       sources."validate-npm-package-license-3.0.1"
       sources."core-js-2.4.1"
       sources."regenerator-runtime-0.10.3"
@@ -29814,7 +30039,6 @@ in
       sources."graceful-fs-4.1.11"
       sources."graceful-readlink-1.0.1"
       sources."ms-0.7.2"
-      sources."clone-1.0.2"
       sources."ansi-escapes-1.4.0"
       sources."cli-cursor-2.1.0"
       sources."cli-width-2.1.0"
@@ -29840,7 +30064,7 @@ in
       sources."ci-info-1.0.0"
       sources."currently-unhandled-0.4.1"
       sources."array-find-index-1.0.2"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."minimist-0.0.8"
@@ -29868,12 +30092,12 @@ in
       })
       sources."set-blocking-2.0.0"
       sources."delegates-1.0.0"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."buffer-shims-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."aproba-1.1.1"
       sources."has-unicode-2.0.1"
@@ -29895,7 +30119,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -29913,7 +30137,7 @@ in
       sources."uuid-3.0.1"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -29928,7 +30152,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -30097,7 +30321,7 @@ in
       sources."node-status-codes-1.0.0"
       sources."parse-json-2.2.0"
       sources."read-all-stream-3.1.0"
-      sources."readable-stream-2.2.6"
+      sources."readable-stream-2.2.9"
       sources."timed-out-3.1.3"
       sources."unzip-response-1.0.2"
       sources."url-parse-lax-1.0.0"
@@ -30108,7 +30332,7 @@ in
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."prepend-http-1.0.4"
       sources."decamelize-1.2.0"
@@ -30152,7 +30376,7 @@ in
       sources."combined-stream-1.0.5"
       sources."extend-3.0.0"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.1.2"
+      sources."form-data-2.1.4"
       sources."har-validator-4.2.1"
       sources."hawk-3.1.3"
       sources."http-signature-1.1.1"
@@ -30168,7 +30392,7 @@ in
       sources."tunnel-agent-0.6.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."ajv-4.11.5"
+      sources."ajv-4.11.6"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
       sources."json-stable-stringify-1.0.1"
@@ -30183,7 +30407,7 @@ in
           sources."assert-plus-1.0.0"
         ];
       })
-      (sources."sshpk-1.11.0" // {
+      (sources."sshpk-1.13.0" // {
         dependencies = [
           sources."assert-plus-1.0.0"
         ];
@@ -30219,7 +30443,7 @@ in
       sources."currently-unhandled-0.4.1"
       sources."signal-exit-3.0.2"
       sources."array-find-index-1.0.2"
-      sources."hosted-git-info-2.4.1"
+      sources."hosted-git-info-2.4.2"
       sources."is-builtin-module-1.0.0"
       sources."validate-npm-package-license-3.0.1"
       sources."builtin-modules-1.1.1"
@@ -30230,14 +30454,14 @@ in
       sources."strip-indent-1.0.1"
       sources."get-stdin-4.0.1"
       sources."registry-url-3.1.0"
-      (sources."rc-1.2.0" // {
+      (sources."rc-1.2.1" // {
         dependencies = [
           sources."minimist-1.2.0"
         ];
       })
       sources."deep-extend-0.4.1"
       sources."strip-json-comments-2.0.1"
-      sources."registry-auth-token-3.1.0"
+      sources."registry-auth-token-3.1.2"
       sources."execall-1.0.0"
       sources."clone-regexp-1.0.0"
       sources."is-regexp-1.0.0"
@@ -30310,7 +30534,7 @@ in
       sources."walk-2.3.9"
       sources."minimatch-3.0.3"
       sources."foreachasync-3.0.0"
-      sources."brace-expansion-1.1.6"
+      sources."brace-expansion-1.1.7"
       sources."balanced-match-0.4.2"
       sources."concat-map-0.0.1"
       sources."diff-2.2.3"
diff --git a/pkgs/development/node-packages/node-packages.json b/pkgs/development/node-packages/node-packages.json
index 80e6383a6f4..11c4368270c 100644
--- a/pkgs/development/node-packages/node-packages.json
+++ b/pkgs/development/node-packages/node-packages.json
@@ -49,6 +49,7 @@
 , "peerflix"
 , "peerflix-server"
 , "phantomjs"
+, "prettier"
 , "react-tools"
 , "s3http"
 , "semver"
diff --git a/pkgs/development/ocaml-modules/bap/default.nix b/pkgs/development/ocaml-modules/bap/default.nix
new file mode 100644
index 00000000000..25564a0a300
--- /dev/null
+++ b/pkgs/development/ocaml-modules/bap/default.nix
@@ -0,0 +1,62 @@
+{stdenv, buildOcaml, fetchFromGitHub, fetchurl, camlp4, ocaml_oasis, bitstring, camlzip, cmdliner, core_kernel, ezjsonm, faillib, fileutils, ocaml_lwt, ocamlgraph, ocurl, re, uri, zarith, piqi, piqi-ocaml, uuidm, llvm_38, ulex, easy-format, xmlm, frontc, ounit, utop, which, makeWrapper, writeText, ocaml}:
+
+buildOcaml rec {
+  name = "bap";
+  version = "1.2.0";
+  src = fetchFromGitHub {
+    owner = "BinaryAnalysisPlatform";
+    repo = "bap";
+    rev = "v${version}";
+    sha256 = "0dn1gvj73pma0rsw8r50cmjddibnf42w1kbskb2vpzq0kb79jlkw";
+  };
+
+  sigs = fetchurl {
+     url = "https://github.com/BinaryAnalysisPlatform/bap/releases/download/v${version}/sigs.zip";
+     sha256 = "0mpsq2pinbrynlisnh8j3nrlamlsls7lza0bkqnm9szqjjdmcgfn";
+  };
+
+  createFindlibDestdir = true;
+
+  setupHook = writeText "setupHook.sh" ''
+    export CAML_LD_LIBRARY_PATH="''${CAML_LD_LIBRARY_PATH}''${CAML_LD_LIBRARY_PATH:+:}''$1/lib/ocaml/${ocaml.version}/site-lib/${name}/"
+    export CAML_LD_LIBRARY_PATH="''${CAML_LD_LIBRARY_PATH}''${CAML_LD_LIBRARY_PATH:+:}''$1/lib/ocaml/${ocaml.version}/site-lib/${name}-llvm-plugins/"
+  '';
+
+  nativeBuildInputs = [ which makeWrapper ];
+
+  buildInputs = [ ocaml_oasis
+                  llvm_38
+                  utop ];
+
+  propagatedBuildInputs = [ bitstring camlzip cmdliner core_kernel ezjsonm faillib fileutils ocaml_lwt ocamlgraph ocurl re uri zarith piqi
+                            piqi-ocaml uuidm frontc ounit ];
+
+  installPhase = ''
+    export OCAMLPATH=$OCAMLPATH:$OCAMLFIND_DESTDIR;
+    export PATH=$PATH:$out/bin
+    export CAML_LD_LIBRARY_PATH=$CAML_LD_LIBRARY_PATH:$OCAMLFIND_DESTDIR/bap-plugin-llvm/:$OCAMLFIND_DESTDIR/bap/
+    mkdir -p $out/lib/bap
+    make install
+    rm $out/bin/baptop
+    makeWrapper ${utop}/bin/utop $out/bin/baptop --prefix OCAMLPATH : $OCAMLPATH --prefix PATH : $PATH --add-flags "-ppx ppx-bap -short-paths -require \"bap.top\""
+    wrapProgram $out/bin/bapbuild --prefix OCAMLPATH : $OCAMLPATH --prefix PATH : $PATH
+    ln -s $sigs $out/share/bap/sigs.zip
+  '';
+
+  disableIda = "--disable-ida --disable-fsi-benchmark";
+
+  doCheck = true;
+
+  checkTarget = "check test";
+
+  configureFlags = "--enable-everything --enable-tests ${disableIda} --with-llvm-config=${llvm_38}/bin/llvm-config";
+
+  BAPBUILDFLAGS = "-j $(NIX_BUILD_CORES)";
+
+  meta = with stdenv.lib; {
+    description = "Platform for binary analysis. It is written in OCaml, but can be used from other languages.";
+    homepage = https://github.com/BinaryAnalysisPlatform/bap/;
+    maintainers = [ maintainers.maurer ];
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/ocaml-modules/batteries/default.nix b/pkgs/development/ocaml-modules/batteries/default.nix
index d24c6174510..b3e657842f8 100644
--- a/pkgs/development/ocaml-modules/batteries/default.nix
+++ b/pkgs/development/ocaml-modules/batteries/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchzip, ocaml, findlib, ocamlbuild, qtest }:
 
-let version = "2.5.3"; in
+let version = "2.6.0"; in
 
 stdenv.mkDerivation {
   name = "ocaml-batteries-${version}";
 
   src = fetchzip {
     url = "https://github.com/ocaml-batteries-team/batteries-included/archive/v${version}.tar.gz";
-    sha256 = "047v05qy0526ad52hzhfa0giczhyzbmw9fwsn6l319icq77ms6jh";
+    sha256 = "1nnypfxm3zkahjkzll5qn4ngpqvbxlwg9qdp8qdqvq2vl76w0672";
   };
 
   buildInputs = [ ocaml findlib ocamlbuild qtest ];
diff --git a/pkgs/development/ocaml-modules/llvm/default.nix b/pkgs/development/ocaml-modules/llvm/default.nix
index 3bced92cc3e..b06760a6e00 100644
--- a/pkgs/development/ocaml-modules/llvm/default.nix
+++ b/pkgs/development/ocaml-modules/llvm/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
 
   patches = [ (fetchpatch {
     url = https://raw.githubusercontent.com/ocaml/opam-repository/master/packages/llvm/llvm.3.9/files/cmake.patch;
-    sha256 = "1fcc6ylfiw1npdhx7mrsj7h0dx7cym7i9664kpr76zqazb52ikm9";
+    sha256 = "0vjap0xifgm59rwhjc48wi7jpbbif4dllsy4xs45sg95qq5qanp6";
   })];
 
   cmakeFlags = [ "-DLLVM_OCAML_OUT_OF_TREE=TRUE" ];
diff --git a/pkgs/development/ocaml-modules/lwt/default.nix b/pkgs/development/ocaml-modules/lwt/default.nix
index d3a373ab4db..53d5a25a39e 100644
--- a/pkgs/development/ocaml-modules/lwt/default.nix
+++ b/pkgs/development/ocaml-modules/lwt/default.nix
@@ -1,19 +1,30 @@
 { stdenv, fetchzip, which, cryptopp, ocaml, findlib, ocamlbuild, camlp4
 , ocaml_react, ocaml_ssl, libev, pkgconfig, ncurses, ocaml_oasis, glib
-, ppx_tools, result
+, ppx_tools, result, cppo
 , ppxSupport ? stdenv.lib.versionAtLeast ocaml.version "4.02"
 }:
 
+let param =
+  if stdenv.lib.versionAtLeast ocaml.version "4.02"
+  then {
+    version = "2.7.1";
+    sha256 = "0w7f59havrl2fsnvs84lm7wlqpsrldg80gy5afpnpr21zkw22g8w";
+  } else {
+    version = "2.6.0";
+    sha256 = "0f1h83zh60rspm4fxd96z9h5bkhq1n1q968hgq92sq4a6bfi1c2w";
+  };
+in
+
 stdenv.mkDerivation rec {
   name = "ocaml-lwt-${version}";
-  version = "2.6.0";
+  inherit (param) version;
 
   src = fetchzip {
     url = "https://github.com/ocsigen/lwt/archive/${version}.tar.gz";
-    sha256 = "0f1h83zh60rspm4fxd96z9h5bkhq1n1q968hgq92sq4a6bfi1c2w";
+    inherit (param) sha256;
   };
 
-  buildInputs = [ ocaml_oasis pkgconfig which cryptopp ocaml findlib ocamlbuild glib ncurses camlp4 ]
+  buildInputs = [ ocaml_oasis pkgconfig which cryptopp ocaml findlib ocamlbuild glib ncurses camlp4 cppo ]
   ++ stdenv.lib.optional ppxSupport ppx_tools;
 
   propagatedBuildInputs = [ result ocaml_react ocaml_ssl libev ];
diff --git a/pkgs/development/ocaml-modules/menhir/default.nix b/pkgs/development/ocaml-modules/menhir/default.nix
index e7e29c73a6b..b02015e6d56 100644
--- a/pkgs/development/ocaml-modules/menhir/default.nix
+++ b/pkgs/development/ocaml-modules/menhir/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, ocaml, findlib, ocamlbuild
-, version ? if stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.02" then "20170101" else "20140422"
+, version ? if stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.02" then "20170418" else "20140422"
 }@args:
 
 let
   sha256 =
   if version == "20140422" then "1ki1f2id6a14h9xpv2k8yb6px7dyw8cvwh39csyzj4qpzx7wia0d"
-  else if version == "20170101" then "0ika46i9gn3sjvspa62fb5dnr20k783vg5fj30649q0ialv6yscr"
+  else if version == "20170418" then "0avxkighxfr9x3vh2dkc5r1k2w7q2dz005w7syyzr7qjybpavpii"
   else throw ("menhir: unknown version " ++ version);
 in
 
diff --git a/pkgs/development/ocaml-modules/menhir/generic.nix b/pkgs/development/ocaml-modules/menhir/generic.nix
index 9d4615a006b..d52da82d6d7 100644
--- a/pkgs/development/ocaml-modules/menhir/generic.nix
+++ b/pkgs/development/ocaml-modules/menhir/generic.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation {
       and Yann Régis-Gianas.
     '';
     license = with licenses; [
-      qpl /* generator */
+      (if versionAtLeast version "20170418" then gpl2 else qpl) /* generator */
       lgpl2 /* library */
     ];
     platforms = ocaml.meta.platforms or [];
diff --git a/pkgs/development/ocaml-modules/mtime/default.nix b/pkgs/development/ocaml-modules/mtime/default.nix
index a26109bd4f9..5e18d1fd6e4 100644
--- a/pkgs/development/ocaml-modules/mtime/default.nix
+++ b/pkgs/development/ocaml-modules/mtime/default.nix
@@ -1,7 +1,9 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, js_of_ocaml
+{ stdenv, lib, fetchurl, ocaml, findlib, ocamlbuild, opam, js_of_ocaml
 , jsooSupport ? !(stdenv.lib.versionAtLeast ocaml.version "4.04")
 }:
 
+with lib;
+
 stdenv.mkDerivation {
   name = "ocaml${ocaml.version}-mtime-0.8.3";
 
@@ -15,7 +17,7 @@ stdenv.mkDerivation {
   buildInputs = [ ocaml findlib ocamlbuild opam ]
   ++ stdenv.lib.optional jsooSupport js_of_ocaml;
 
-  buildPhase = "ocaml pkg/build.ml native=true native-dynlink=true jsoo=${if jsooSupport then "true" else "false"}";
+  buildPhase = "ocaml pkg/build.ml native=true native-dynlink=true jsoo=${boolToString jsooSupport}";
 
   installPhase = "opam-installer -i --prefix=$out --libdir=$OCAMLFIND_DESTDIR";
 
@@ -23,7 +25,7 @@ stdenv.mkDerivation {
     description = "Monotonic wall-clock time for OCaml";
     homepage = http://erratique.ch/software/mtime;
     inherit (ocaml.meta) platforms;
-    maintainers = [ stdenv.lib.maintainers.vbgl ];
-    license = stdenv.lib.licenses.bsd3;
+    maintainers = [ maintainers.vbgl ];
+    license = licenses.bsd3;
   };
 }
diff --git a/pkgs/development/ocaml-modules/nocrypto/default.nix b/pkgs/development/ocaml-modules/nocrypto/default.nix
index f9240f7507c..91ab694eb6f 100644
--- a/pkgs/development/ocaml-modules/nocrypto/default.nix
+++ b/pkgs/development/ocaml-modules/nocrypto/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   buildPhase = ''
     LD_LIBRARY_PATH=${cpuid}/lib/ocaml/${ocaml.version}/site-lib/stubslibs/ \
-    ${topkg.buildPhase} --with-lwt ${if withLwt then "true" else "false"}
+    ${topkg.buildPhase} --with-lwt ${boolToString withLwt}
   '';
   inherit (topkg) installPhase;
 
diff --git a/pkgs/development/ocaml-modules/notty/default.nix b/pkgs/development/ocaml-modules/notty/default.nix
index b967728d048..950395bd7ea 100644
--- a/pkgs/development/ocaml-modules/notty/default.nix
+++ b/pkgs/development/ocaml-modules/notty/default.nix
@@ -29,7 +29,7 @@ buildOcaml rec {
                           optional withLwt lwt;
 
   buildPhase = topkg.buildPhase
-  + " --with-lwt ${if withLwt then "true" else "false"}";
+  + " --with-lwt ${boolToString withLwt}";
 
   inherit (topkg) installPhase;
 
diff --git a/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix b/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix
index 439beaa24ff..0ad5d09d687 100644
--- a/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix
+++ b/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix
@@ -1,20 +1,28 @@
-{ stdenv, fetchurl, libvirt, ocaml, findlib }:
+{ stdenv, fetchgit, libvirt, autoconf, ocaml, findlib }:
 
 stdenv.mkDerivation rec {
   name = "ocaml-libvirt-${version}";
-  version = "0.6.1.4";
+  rev = "3169af3";
+  version = "0.6.1.4-rev.${rev}"; # libguestfs-1.34 needs ocaml-libvirt newer than the latest release 0.6.1.4
 
-  src = fetchurl {
-    url = "http://libvirt.org/sources/ocaml/ocaml-libvirt-${version}.tar.gz";
-    sha256 = "06q2y36ckb34n179bwczxkl82y3wrba65xb2acg8i04jpiyxadjd";
+  src = fetchgit {
+    url = "git://git.annexia.org/git/ocaml-libvirt.git";
+    rev = rev;
+    sha256 = "0z8p6q6k42rdrvy248siq922m1yszny1hfklf6djynvk2viyqdbg";
   };
 
   propagatedBuildInputs = [ libvirt ];
 
-  buildInputs = [ ocaml findlib ];
+  nativeBuildInputs = [ autoconf findlib ];
+
+  buildInputs = [ ocaml ];
 
   createFindlibDestdir = true;
 
+  preConfigure = ''
+    autoconf
+  '';
+
   buildPhase = if stdenv.cc.isClang then "make all opt CPPFLAGS=-Wno-error" else "make all opt";
 
   installPhase = "make install-opt";
diff --git a/pkgs/development/ocaml-modules/vg/default.nix b/pkgs/development/ocaml-modules/vg/default.nix
index cb7878ac731..ba33081486d 100644
--- a/pkgs/development/ocaml-modules/vg/default.nix
+++ b/pkgs/development/ocaml-modules/vg/default.nix
@@ -1,16 +1,17 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg
+{ stdenv, lib, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg
 , uchar, result, gg, uutf, otfm, js_of_ocaml,
   pdfBackend ? true, # depends on uutf and otfm
   htmlcBackend ? true # depends on js_of_ocaml
 }:
 
+with lib;
+
 let
   inherit (stdenv.lib) optionals versionAtLeast;
 
   pname = "vg";
   version = "0.9.0";
   webpage = "http://erratique.ch/software/${pname}";
-  sob = b: if b then "true" else "false";
 in
 
 assert versionAtLeast ocaml.version "4.02.0";
@@ -35,13 +36,14 @@ stdenv.mkDerivation rec {
   unpackCmd = "tar xjf $src";
 
   buildPhase = topkg.buildPhase
-  + " --with-uutf ${sob pdfBackend} --with-otfm ${sob pdfBackend}"
-  + " --with-js_of_ocaml ${sob htmlcBackend}"
-  + " --with-cairo2 false";
+    + " --with-uutf ${boolToString pdfBackend}"
+    + " --with-otfm ${boolToString pdfBackend}"
+    + " --with-js_of_ocaml ${boolToString htmlcBackend}"
+    + " --with-cairo2 false";
 
   inherit (topkg) installPhase;
 
-  meta = with stdenv.lib; {
+  meta = {
     description = "Declarative 2D vector graphics for OCaml";
     longDescription = ''
     Vg is an OCaml module for declarative 2D vector graphics. In Vg, images
diff --git a/pkgs/development/pharo/vm/build-vm.nix b/pkgs/development/pharo/vm/build-vm.nix
index 1eeb5dc3151..1f9e82f866e 100644
--- a/pkgs/development/pharo/vm/build-vm.nix
+++ b/pkgs/development/pharo/vm/build-vm.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     mimeType = "application/x-pharo-image";
   };
 
-  hardeningDisable = [ "format" ];
+  hardeningDisable = [ "format" "pic" ];
 
   # Building
   preConfigure = ''
diff --git a/pkgs/development/pure-modules/octave/default.nix b/pkgs/development/pure-modules/octave/default.nix
index 61bc7a4d5c1..f1a54eb50ae 100644
--- a/pkgs/development/pure-modules/octave/default.nix
+++ b/pkgs/development/pure-modules/octave/default.nix
@@ -19,7 +19,9 @@ stdenv.mkDerivation rec {
     description = "An Octave module for the Pure programming language";
     homepage = http://puredocs.bitbucket.org/pure-octave.html;
     license = stdenv.lib.licenses.gpl3Plus;
-    platforms = stdenv.lib.platforms.linux;
+    # This is set to none for now because it does not work with the
+    # current stable version of Octave.
+    platforms = stdenv.lib.platforms.none;
     maintainers = with stdenv.lib.maintainers; [ asppsa ];
   };
 }
diff --git a/pkgs/development/python-modules/bap/default.nix b/pkgs/development/python-modules/bap/default.nix
new file mode 100644
index 00000000000..9362729af44
--- /dev/null
+++ b/pkgs/development/python-modules/bap/default.nix
@@ -0,0 +1,23 @@
+{stdenv, buildPythonPackage, fetchFromGitHub, bap, requests}:
+
+buildPythonPackage rec {
+  name = "bap";
+  version = "1.1.0";
+  src = fetchFromGitHub {
+    owner = "BinaryAnalysisPlatform";
+    repo = "bap-python";
+    rev = "v${version}";
+    sha256 = "0wd46ksxscgb2dci69sbndzxs6drq5cahraqq42cdk114hkrsxs3";
+  };
+
+  propagatedBuildInputs = [bap requests];
+
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "Platform for binary analysis. It is written in OCaml, but can be used from other languages.";
+    homepage = https://github.com/BinaryAnalysisPlatform/bap/;
+    maintainers = [ maintainers.maurer ];
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/csscompressor.nix b/pkgs/development/python-modules/csscompressor.nix
new file mode 100644
index 00000000000..a9aad8d40e5
--- /dev/null
+++ b/pkgs/development/python-modules/csscompressor.nix
@@ -0,0 +1,20 @@
+{ stdenv, buildPythonPackage, fetchPypi }:
+buildPythonPackage rec {
+  pname = "csscompressor";
+  version = "0.9.4";
+  name = "${pname}-${version}";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0e12f125b88379d7b680636d94a3c8fa14bed1de2358f7f9a9e6749e222cff3b";
+  };
+
+  doCheck = false; # No tests
+
+  meta = {
+    description = "A python port of YUI CSS Compressor";
+    homepage = https://pypi.python.org/pypi/csscompressor;
+    license = stdenv.lib.licenses.bsd3;
+    maintainers = [stdenv.lib.maintainers.ahmedtd];
+  };
+}
diff --git a/pkgs/development/python-modules/distro/default.nix b/pkgs/development/python-modules/distro/default.nix
new file mode 100644
index 00000000000..9b79d82328f
--- /dev/null
+++ b/pkgs/development/python-modules/distro/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchPypi, buildPythonPackage, pytest, pytestcov, tox }:
+
+buildPythonPackage rec {
+  name = "${pname}-${version}";
+  pname = "distro";
+  version = "1.0.3";
+
+  buildInputs = [ pytest pytestcov tox];
+
+  checkPhase = ''
+    touch tox.ini
+    tox
+  '';
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1kmjdz1kxspsmps73m2kzhxz86jj43ikx825hmgmwbx793ywv69d";
+  };
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/nir0s/distro;
+    description = "Linux Distribution - a Linux OS platform information API.";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ nand0p ];
+  };
+}
diff --git a/pkgs/development/python-modules/django/1_10.nix b/pkgs/development/python-modules/django/1_10.nix
index 271f8a5467b..6cc3af8c270 100644
--- a/pkgs/development/python-modules/django/1_10.nix
+++ b/pkgs/development/python-modules/django/1_10.nix
@@ -4,12 +4,12 @@
 }:
 buildPythonPackage rec {
   name = "Django-${version}";
-  version = "1.10.6";
+  version = "1.10.7";
   disabled = pythonOlder "2.7";
 
   src = fetchurl {
     url = "http://www.djangoproject.com/m/releases/1.10/${name}.tar.gz";
-    sha256 = "0q9c7hx720vc0jzq4xlxwhnxmmm8kh0qsqj3l46m29mi98jvwvks";
+    sha256 = "1f5hnn2dzfr5szk4yc47bs4kk2nmrayjcvgpqi2s4l13pjfpfgar";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/htmlmin.nix b/pkgs/development/python-modules/htmlmin.nix
new file mode 100644
index 00000000000..35f86479a4e
--- /dev/null
+++ b/pkgs/development/python-modules/htmlmin.nix
@@ -0,0 +1,20 @@
+{ stdenv, buildPythonPackage, fetchPypi }:
+buildPythonPackage rec {
+  pname = "htmlmin";
+  version = "0.1.10";
+  name = "${pname}-${version}";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "ca5c5dfbb0fa58562e5cbc8dc026047f6cb431d4333504b11853853be448aa63";
+  };
+
+  # Tests run fine in a normal source checkout, but not when being built by nix.
+  doCheck = false;
+
+  meta = {
+    description = "A configurable HTML Minifier with safety features";
+    homepage = https://pypi.python.org/pypi/htmlmin;
+    license = stdenv.lib.licenses.bsd3;
+    maintainers = [stdenv.lib.maintainers.ahmedtd];
+  };
+}
diff --git a/pkgs/development/python-modules/iso-639/default.nix b/pkgs/development/python-modules/iso-639/default.nix
new file mode 100644
index 00000000000..f44bb7caf3d
--- /dev/null
+++ b/pkgs/development/python-modules/iso-639/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl, buildPythonPackage }:
+
+buildPythonPackage rec {
+  name = "${pname}-${version}";
+  pname = "iso-639";
+  version = "0.4.5";
+
+  src = fetchurl {
+    url = "mirror://pypi/i/${pname}/${name}.tar.gz";
+    sha256 = "dc9cd4b880b898d774c47fe9775167404af8a85dd889d58f9008035109acce49";
+  };
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/noumar/iso639;
+    description = "ISO 639 library for Python";
+    license = licenses.agpl3;
+    maintainers = with maintainers; [ zraexy ];
+  };
+}
diff --git a/pkgs/development/python-modules/iso3166/default.nix b/pkgs/development/python-modules/iso3166/default.nix
new file mode 100644
index 00000000000..4d9792ebbb8
--- /dev/null
+++ b/pkgs/development/python-modules/iso3166/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, buildPythonPackage, pytest }:
+
+buildPythonPackage rec {
+  name = "${pname}-${version}";
+  pname = "iso3166";
+  version = "0.8";
+
+  src = fetchFromGitHub {
+    owner = "deactivated";
+    repo = "python-iso3166";
+    # repo has no version tags
+    rev = "f04e499447bbff10af701cf3dd81f6bcdf02f7d7";
+    sha256 = "0zs9za9dr2nl5srxir08yibmp6nffcapmzala0fgh8ny7y6rafrx";
+  };
+
+  buildInputs = [ pytest ];
+
+  checkPhase = ''
+    py.test
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/deactivated/python-iso3166;
+    description = "Self-contained ISO 3166-1 country definitions";
+    license = licenses.mit;
+    maintainers = with maintainers; [ zraexy ];
+  };
+}
diff --git a/pkgs/development/python-modules/node-semver/default.nix b/pkgs/development/python-modules/node-semver/default.nix
new file mode 100644
index 00000000000..0bd569fd4ad
--- /dev/null
+++ b/pkgs/development/python-modules/node-semver/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchPypi, buildPythonPackage, pytest, tox }:
+
+buildPythonPackage rec {
+  name = "${pname}-${version}";
+  version = "0.1.1";
+  pname = "node-semver";
+
+  buildInputs = [ pytest tox ];
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1b3xiqgl436q33grbkh4chpfchl8i2dmcpggbb2q4vgv3vjy97p2";
+  };
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/podhmo/python-semver;
+    description = "A port of node-semver";
+    license = licenses.mit;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/python-modules/phonenumbers/default.nix b/pkgs/development/python-modules/phonenumbers/default.nix
new file mode 100644
index 00000000000..ead0e3d858d
--- /dev/null
+++ b/pkgs/development/python-modules/phonenumbers/default.nix
@@ -0,0 +1,17 @@
+{ stdenv, fetchurl, buildPythonPackage }:
+
+buildPythonPackage rec {
+  name = "phonenumbers-8.4.0";
+
+  meta = {
+    description = "Python version of Google's common library for parsing, formatting, storing and validating international phone numbers";
+    homepage    = "https://github.com/daviddrysdale/python-phonenumbers";
+    license     = stdenv.lib.licenses.asl20;
+    maintainers = with stdenv.lib.maintainers; [ fadenb ];
+  };
+
+  src = fetchurl {
+    url = "mirror://pypi/p/phonenumbers/${name}.tar.gz";
+    sha256 = "1c052gd7ra3v183jq2x5nwa428wxh1g3psfh0ay5jwwmcxy78vab";
+  };
+}
diff --git a/pkgs/development/python-modules/pluginbase/default.nix b/pkgs/development/python-modules/pluginbase/default.nix
new file mode 100644
index 00000000000..9d90c617fc1
--- /dev/null
+++ b/pkgs/development/python-modules/pluginbase/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchPypi, buildPythonPackage, pytest, tox }:
+
+buildPythonPackage rec {
+  name = "${pname}-${version}";
+  version = "0.5";
+  pname = "pluginbase";
+
+  buildInputs = [ pytest tox ];
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1palagrlszs4f4f5j6npzl4d195vclrlza3qr524z2h758j31y5l";
+  };
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/mitsuhiko/pluginbase;
+    description = "A support library for building plugins sytems in Python";
+    license = licenses.bsd3;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/python-modules/pyocr-tesseract.patch b/pkgs/development/python-modules/pyocr-tesseract.patch
new file mode 100644
index 00000000000..d09a7c57352
--- /dev/null
+++ b/pkgs/development/python-modules/pyocr-tesseract.patch
@@ -0,0 +1,316 @@
+This patch is required for pyocr to work with Tesseract version 3.05.00
+and has been submitted upstream at the following URL:
+
+https://github.com/jflesch/pyocr/pull/62
+
+diff --git a/src/pyocr/builders.py b/src/pyocr/builders.py
+index 73c964d..20f390c 100644
+--- a/src/pyocr/builders.py
++++ b/src/pyocr/builders.py
+@@ -240,8 +240,10 @@ class BaseBuilder(object):
+         cuneiform_args : Arguments passed to the Cuneiform command line.
+     """
+ 
+-    def __init__(self, file_extensions, tesseract_configs, cuneiform_args):
++    def __init__(self, file_extensions, tesseract_flags, tesseract_configs,
++                 cuneiform_args):
+         self.file_extensions = file_extensions
++        self.tesseract_flags = tesseract_flags
+         self.tesseract_configs = tesseract_configs
+         self.cuneiform_args = cuneiform_args
+ 
+@@ -298,7 +300,7 @@ class TextBuilder(BaseBuilder):
+     def __init__(self, tesseract_layout=3, cuneiform_dotmatrix=False,
+                  cuneiform_fax=False, cuneiform_singlecolumn=False):
+         file_ext = ["txt"]
+-        tess_conf = ["-psm", str(tesseract_layout)]
++        tess_flags = ["-psm", str(tesseract_layout)]
+         cun_args = ["-f", "text"]
+         # Add custom cuneiform parameters if needed
+         for par, arg in [(cuneiform_dotmatrix, "--dotmatrix"),
+@@ -306,7 +308,7 @@ class TextBuilder(BaseBuilder):
+                          (cuneiform_singlecolumn, "--singlecolumn")]:
+             if par:
+                 cun_args.append(arg)
+-        super(TextBuilder, self).__init__(file_ext, tess_conf, cun_args)
++        super(TextBuilder, self).__init__(file_ext, tess_flags, [], cun_args)
+         self.tesseract_layout = tesseract_layout
+         self.built_text = []
+ 
+@@ -540,9 +542,11 @@ class WordBoxBuilder(BaseBuilder):
+ 
+     def __init__(self, tesseract_layout=1):
+         file_ext = ["html", "hocr"]
+-        tess_conf = ["hocr", "-psm", str(tesseract_layout)]
++        tess_flags = ["-psm", str(tesseract_layout)]
++        tess_conf = ["hocr"]
+         cun_args = ["-f", "hocr"]
+-        super(WordBoxBuilder, self).__init__(file_ext, tess_conf, cun_args)
++        super(WordBoxBuilder, self).__init__(file_ext, tess_flags, tess_conf,
++                                             cun_args)
+         self.word_boxes = []
+         self.tesseract_layout = tesseract_layout
+ 
+@@ -614,9 +618,11 @@ class LineBoxBuilder(BaseBuilder):
+ 
+     def __init__(self, tesseract_layout=1):
+         file_ext = ["html", "hocr"]
+-        tess_conf = ["hocr", "-psm", str(tesseract_layout)]
++        tess_flags = ["-psm", str(tesseract_layout)]
++        tess_conf = ["hocr"]
+         cun_args = ["-f", "hocr"]
+-        super(LineBoxBuilder, self).__init__(file_ext, tess_conf, cun_args)
++        super(LineBoxBuilder, self).__init__(file_ext, tess_flags, tess_conf,
++                                             cun_args)
+         self.lines = []
+         self.tesseract_layout = tesseract_layout
+ 
+diff --git a/src/pyocr/libtesseract/tesseract_raw.py b/src/pyocr/libtesseract/tesseract_raw.py
+index 0c2259a..f7ab309 100644
+--- a/src/pyocr/libtesseract/tesseract_raw.py
++++ b/src/pyocr/libtesseract/tesseract_raw.py
+@@ -263,11 +263,22 @@ if g_libtesseract:
+     ]
+     g_libtesseract.TessDeleteText.restype = None
+ 
+-    g_libtesseract.TessBaseAPIDetectOS.argtypes = [
+-        ctypes.c_void_p,  # TessBaseAPI*
+-        ctypes.POINTER(OSResults),
+-    ]
+-    g_libtesseract.TessBaseAPIDetectOS.restype = ctypes.c_bool
++    if hasattr(g_libtesseract, 'TessBaseAPIDetectOrientationScript'):
++        g_libtesseract.TessBaseAPIDetectOrientationScript.argtypes = [
++            ctypes.c_void_p,  # TessBaseAPI*
++            ctypes.POINTER(ctypes.c_int),  # orient_deg
++            ctypes.POINTER(ctypes.c_float),  # orient_conf
++            ctypes.POINTER(ctypes.c_char_p),  # script_name
++            ctypes.POINTER(ctypes.c_float),  # script_conf
++        ]
++        g_libtesseract.TessBaseAPIDetectOrientationScript.restype = \
++            ctypes.c_bool
++    else:
++        g_libtesseract.TessBaseAPIDetectOS.argtypes = [
++            ctypes.c_void_p,  # TessBaseAPI*
++            ctypes.POINTER(OSResults),
++        ]
++        g_libtesseract.TessBaseAPIDetectOS.restype = ctypes.c_bool
+ 
+ 
+ def init(lang=None):
+@@ -526,15 +537,37 @@ def detect_os(handle):
+     global g_libtesseract
+     assert(g_libtesseract)
+ 
+-    results = OSResults()
+-    r = g_libtesseract.TessBaseAPIDetectOS(
+-        ctypes.c_void_p(handle),
+-        ctypes.pointer(results)
+-    )
+-    if not r:
+-        raise TesseractError("detect_orientation failed",
+-                             "TessBaseAPIDetectOS() failed")
+-    return {
+-        "orientation": results.best_orientation_id,
+-        "confidence": results.best_oconfidence,
+-    }
++    # Use the new API function if it is available, because since Tesseract
++    # 3.05.00 the old API function _always_ returns False.
++    if hasattr(g_libtesseract, 'TessBaseAPIDetectOrientationScript'):
++        orientation_deg = ctypes.c_int(0)
++        orientation_confidence = ctypes.c_float(0.0)
++
++        r = g_libtesseract.TessBaseAPIDetectOrientationScript(
++            ctypes.c_void_p(handle),
++            ctypes.byref(orientation_deg),
++            ctypes.byref(orientation_confidence),
++            None,  # script_name
++            None  # script_confidence
++        )
++
++        if not r:
++            raise TesseractError("detect_orientation failed",
++                                 "TessBaseAPIDetectOrientationScript() failed")
++        return {
++            "orientation": round(orientation_deg.value / 90),
++            "confidence": orientation_confidence.value,
++        }
++    else:  # old API (before Tesseract 3.05.00)
++        results = OSResults()
++        r = g_libtesseract.TessBaseAPIDetectOS(
++            ctypes.c_void_p(handle),
++            ctypes.pointer(results)
++        )
++        if not r:
++            raise TesseractError("detect_orientation failed",
++                                 "TessBaseAPIDetectOS() failed")
++        return {
++            "orientation": results.best_orientation_id,
++            "confidence": results.best_oconfidence,
++        }
+diff --git a/src/pyocr/tesseract.py b/src/pyocr/tesseract.py
+index 99b0121..658c96b 100755
+--- a/src/pyocr/tesseract.py
++++ b/src/pyocr/tesseract.py
+@@ -22,6 +22,8 @@ import os
+ import subprocess
+ import sys
+ import tempfile
++import contextlib
++import shutil
+ 
+ from . import builders
+ from . import error
+@@ -62,9 +64,11 @@ class CharBoxBuilder(builders.BaseBuilder):
+ 
+     def __init__(self):
+         file_ext = ["box"]
++        tess_flags = []
+         tess_conf = ["batch.nochop", "makebox"]
+         cun_args = []
+-        super(CharBoxBuilder, self).__init__(file_ext, tess_conf, cun_args)
++        super(CharBoxBuilder, self).__init__(file_ext, tess_flags, tess_conf,
++                                             cun_args)
+         self.tesseract_layout = 1
+ 
+     @staticmethod
+@@ -173,18 +177,19 @@ def detect_orientation(image, lang=None):
+         TesseractError --- if no script detected on the image
+     """
+     _set_environment()
+-    with temp_file(".bmp") as input_file:
+-        command = [TESSERACT_CMD, input_file.name, 'stdout', "-psm", "0"]
++    with temp_dir() as tmpdir:
++        command = [TESSERACT_CMD, "input.bmp", 'stdout', "-psm", "0"]
+         if lang is not None:
+             command += ['-l', lang]
+ 
+         if image.mode != "RGB":
+             image = image.convert("RGB")
+-        image.save(input_file.name)
++        image.save(os.path.join(tmpdir, "input.bmp"))
+ 
+         proc = subprocess.Popen(command, stdin=subprocess.PIPE, shell=False,
+                                 startupinfo=g_subprocess_startup_info,
+                                 creationflags=g_creation_flags,
++                                cwd=tmpdir,
+                                 stdout=subprocess.PIPE,
+                                 stderr=subprocess.STDOUT)
+         proc.stdin.close()
+@@ -224,8 +229,8 @@ def get_available_builders():
+     ]
+ 
+ 
+-def run_tesseract(input_filename, output_filename_base, lang=None,
+-                  configs=None):
++def run_tesseract(input_filename, output_filename_base, cwd=None, lang=None,
++                  flags=None, configs=None):
+     '''
+     Runs Tesseract:
+         `TESSERACT_CMD` \
+@@ -238,6 +243,8 @@ def run_tesseract(input_filename, output_filename_base, lang=None,
+         input_filename --- image to read
+         output_filename_base --- file name in which must be stored the result
+             (without the extension)
++        cwd --- Run Tesseract in the specified working directory or use current
++            one if None
+         lang --- Tesseract language to use (if None, none will be specified)
+         config --- List of Tesseract configs to use (if None, none will be
+             specified)
+@@ -252,10 +259,13 @@ def run_tesseract(input_filename, output_filename_base, lang=None,
+     if lang is not None:
+         command += ['-l', lang]
+ 
++    if flags is not None:
++        command += flags
++
+     if configs is not None:
+         command += configs
+ 
+-    proc = subprocess.Popen(command,
++    proc = subprocess.Popen(command, cwd=cwd,
+                             startupinfo=g_subprocess_startup_info,
+                             creationflags=g_creation_flags,
+                             stdout=subprocess.PIPE,
+@@ -301,11 +311,18 @@ class ReOpenableTempfile(object):
+             self.name = None
+ 
+ 
+-def temp_file(suffix):
+-    ''' Returns a temporary file '''
+-    if os.name == 'nt':  # Windows
+-        return ReOpenableTempfile(suffix)
+-    return tempfile.NamedTemporaryFile(prefix='tess_', suffix=suffix)
++@contextlib.contextmanager
++def temp_dir():
++    """
++    A context manager for maintaining a temporary directory
++    """
++    # NOTE: Drop this as soon as we don't support Python 2.7 anymore, because
++    # since Python 3.2 there is a context manager called TemporaryDirectory().
++    path = tempfile.mkdtemp(prefix='tess_')
++    try:
++        yield path
++    finally:
++        shutil.rmtree(path)
+ 
+ 
+ def image_to_string(image, lang=None, builder=None):
+@@ -329,23 +346,20 @@ def image_to_string(image, lang=None, builder=None):
+ 
+     if builder is None:
+         builder = builders.TextBuilder()
+-    with temp_file(".bmp") as input_file:
+-        with temp_file('') as output_file:
+-            output_file_name_base = output_file.name
+-
++    with temp_dir() as tmpdir:
+         if image.mode != "RGB":
+             image = image.convert("RGB")
+-        image.save(input_file.name)
+-        (status, errors) = run_tesseract(input_file.name,
+-                                         output_file_name_base,
++        image.save(os.path.join(tmpdir, "input.bmp"))
++        (status, errors) = run_tesseract("input.bmp", "output", cwd=tmpdir,
+                                          lang=lang,
++                                         flags=builder.tesseract_flags,
+                                          configs=builder.tesseract_configs)
+         if status:
+             raise TesseractError(status, errors)
+ 
+         output_file_name = "ERROR"
+         for file_extension in builder.file_extensions:
+-            output_file_name = ('%s.%s' % (output_file_name_base,
++            output_file_name = ('%s.%s' % (os.path.join(tmpdir, "output"),
+                                            file_extension))
+             if not os.access(output_file_name, os.F_OK):
+                 continue
+diff --git a/tests/tests_libtesseract.py b/tests/tests_libtesseract.py
+index ccddd07..1ac2a4b 100644
+--- a/tests/tests_libtesseract.py
++++ b/tests/tests_libtesseract.py
+@@ -33,8 +33,9 @@ class TestContext(unittest.TestCase):
+             (3, 3, 0),
+             (3, 4, 0),
+             (3, 4, 1),
++            (3, 5, 0),
+         ), ("Tesseract does not have the expected version"
+-            " (3.4.0) ! Some tests will be skipped !"))
++            " (3.5.0) ! Some tests will be skipped !"))
+ 
+     def test_langs(self):
+         langs = libtesseract.get_available_languages()
+diff --git a/tests/tests_tesseract.py b/tests/tests_tesseract.py
+index e29c512..fa4d483 100644
+--- a/tests/tests_tesseract.py
++++ b/tests/tests_tesseract.py
+@@ -27,8 +27,9 @@ class TestContext(unittest.TestCase):
+             (3, 3, 0),
+             (3, 4, 0),
+             (3, 4, 1),
++            (3, 5, 0),
+         ), ("Tesseract does not have the expected version"
+-            " (3.4.0) ! Some tests will be skipped !"))
++            " (3.5.0) ! Some tests will be skipped !"))
+ 
+     def test_langs(self):
+         langs = tesseract.get_available_languages()
diff --git a/pkgs/development/python-modules/typeguard/default.nix b/pkgs/development/python-modules/typeguard/default.nix
new file mode 100644
index 00000000000..c099aba5b7a
--- /dev/null
+++ b/pkgs/development/python-modules/typeguard/default.nix
@@ -0,0 +1,38 @@
+{ buildPythonPackage
+, fetchPypi
+, pythonOlder
+, stdenv
+, setuptools_scm
+, pytest
+}:
+
+buildPythonPackage rec {
+  name = "${pname}-${version}";
+  pname = "typeguard";
+  version = "2.1.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0l3pih5ca469v7if255h5rqymirsw46bi6s7p885jxhq1gv6cfpk";
+  };
+
+  buildInputs = [ setuptools_scm ];
+
+  postPatch = ''
+    substituteInPlace setup.cfg --replace " --cov" ""
+  '';
+
+  checkInputs = [ pytest ];
+
+  checkPhase = ''
+    py.test .
+  '';
+
+  disabled = pythonOlder "3.3";
+
+  meta = with stdenv.lib; {
+    description = "This library provides run-time type checking for functions defined with argument type annotations";
+    homepage = "https://github.com/agronholm/typeguard";
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/r-modules/default.nix b/pkgs/development/r-modules/default.nix
index 40d8e2b1b43..b3611d14e4b 100644
--- a/pkgs/development/r-modules/default.nix
+++ b/pkgs/development/r-modules/default.nix
@@ -262,6 +262,7 @@ let
     h5 = [ pkgs.hdf5-cpp pkgs.which ];
     h5vc = [ pkgs.zlib.dev ];
     HiCseg = [ pkgs.gsl_1 ];
+    imager = [ pkgs.x11 ];
     iBMQ = [ pkgs.gsl_1 ];
     igraph = [ pkgs.gmp ];
     JavaGD = [ pkgs.jdk ];
@@ -832,7 +833,6 @@ let
     "flowVS"                          # depends on broken package r-flowCore-1.38.2
     "flowWorkspace"                   # depends on broken package r-flowCore-1.38.2
     "fmcsR"                           # depends on broken package ChemmineR-2.24.2
-    "ForestTools"                     # depends on broken package imager-0.31
     "fPortfolio"                      # depends on broken package Rsymphony-0.1-26
     "fracprolif"                      # build is broken
     "funModeling"                     # build is broken
@@ -888,7 +888,6 @@ let
     "IHW"                             # depends on broken package r-lpsymphony-1.0.2
     "IHWpaper"                        # depends on broken package r-lpsymphony-1.0.2
     "IlluminaHumanMethylation450k_db" # build is broken
-    "imager"                          # build is broken
     "immunoClust"                     # depends on broken package r-flowCore-1.38.2
     "inSilicoMerging"                 # build is broken
     "intansv"                         # build is broken
diff --git a/pkgs/development/ruby-modules/gem-config/default.nix b/pkgs/development/ruby-modules/gem-config/default.nix
index 02fe9f50558..e115b2c679d 100644
--- a/pkgs/development/ruby-modules/gem-config/default.nix
+++ b/pkgs/development/ruby-modules/gem-config/default.nix
@@ -211,7 +211,7 @@ in
     buildInputs = [ curl ];
   };
 
-  tzinfo = attrs: {
+  tzinfo = attrs: lib.optionalAttrs (lib.versionAtLeast attrs.version "1.0") {
     dontBuild = false;
     postPatch = ''
       substituteInPlace lib/tzinfo/zoneinfo_data_source.rb \
diff --git a/pkgs/development/tools/analysis/cppcheck/default.nix b/pkgs/development/tools/analysis/cppcheck/default.nix
index e25cb696a65..a394105faf4 100644
--- a/pkgs/development/tools/analysis/cppcheck/default.nix
+++ b/pkgs/development/tools/analysis/cppcheck/default.nix
@@ -1,18 +1,19 @@
-{ stdenv, fetchurl, libxslt, docbook_xsl, docbook_xml_dtd_45 }:
+{ stdenv, fetchurl, libxslt, docbook_xsl, docbook_xml_dtd_45, pcre }:
 
 stdenv.mkDerivation rec {
   pname = "cppcheck";
-  version = "1.76.1";
+  version = "1.78";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${name}.tar.bz2";
-    sha256 = "1l46bmzm5syfr9m5l0bqkj8lcyrynhw8gjf95s4fwhp2b7f0zisv";
+    sha256 = "1cc60y2vjq4g88183jkan91ybzqy0n6p5ncs8z5rh6rjsvvrc9p4";
   };
 
+  buildInputs = [ pcre ];
   nativeBuildInputs = [ libxslt docbook_xsl docbook_xml_dtd_45 ];
 
-  makeFlags = ''PREFIX=$(out) CFGDIR=$(out)/cfg'';
+  makeFlags = ''PREFIX=$(out) CFGDIR=$(out)/cfg HAVE_RULES=yes'';
 
   outputs = [ "out" "man" ];
 
diff --git a/pkgs/development/tools/analysis/lcov/default.nix b/pkgs/development/tools/analysis/lcov/default.nix
index daefafa9e6a..ad887baf23e 100644
--- a/pkgs/development/tools/analysis/lcov/default.nix
+++ b/pkgs/development/tools/analysis/lcov/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, perl}:
 
 stdenv.mkDerivation rec {
-  name = "lcov-1.12";
+  name = "lcov-1.13";
 
   src = fetchurl {
     url = "mirror://sourceforge/ltp/${name}.tar.gz";
-    sha256 = "19wfifdpxxivhq9adbphanjfga9bg9spms9v7c3589wndjff8x5l";
+    sha256 = "08wabnb0gcjqk0qc65a6cgbbmz6b8lvam3p7byh0dk42hj3jr5s4";
   };
 
   buildInputs = [ perl ];
diff --git a/pkgs/development/tools/analysis/radare2/default.nix b/pkgs/development/tools/analysis/radare2/default.nix
index a3267d8d9ea..0d4b55bb472 100644
--- a/pkgs/development/tools/analysis/radare2/default.nix
+++ b/pkgs/development/tools/analysis/radare2/default.nix
@@ -13,12 +13,12 @@ let
   optional = stdenv.lib.optional;
 in
 stdenv.mkDerivation rec {
-  version = "1.3.0";
+  version = "1.4.0";
   name = "radare2-${version}";
 
   src = fetchurl {
     url = "http://cloud.radare.org/get/${version}/${name}.tar.gz";
-    sha256 = "1kwp0i5sqk5almnx4g8claimqz8rwvv1fn8x66k4az1s8k7g9kiv";
+    sha256 = "bf6e9ad94fd5828d3936563b8b13218433fbf44231cacfdf37a7312ae2b3e93e";
   };
 
 
diff --git a/pkgs/development/tools/build-managers/apache-maven/default.nix b/pkgs/development/tools/build-managers/apache-maven/default.nix
index bdd50421c1f..5490790fe38 100644
--- a/pkgs/development/tools/build-managers/apache-maven/default.nix
+++ b/pkgs/development/tools/build-managers/apache-maven/default.nix
@@ -2,7 +2,7 @@
 
 assert jdk != null;
 
-let version = "3.3.9"; in
+let version = "3.5.0"; in
 stdenv.mkDerivation rec {
   name = "apache-maven-${version}";
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://apache/maven/maven-3/${version}/binaries/${name}-bin.tar.gz";
-    sha256 = "6e3e9c949ab4695a204f74038717aa7b2689b1be94875899ac1b3fe42800ff82";
+    sha256 = "0d7hjnj77hc7qqnnfmqlwij8n6pcldfavvd6lilvv5ak4hci9fdy";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/build-managers/conan/default.nix b/pkgs/development/tools/build-managers/conan/default.nix
new file mode 100644
index 00000000000..417e492f7d0
--- /dev/null
+++ b/pkgs/development/tools/build-managers/conan/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, pythonPackages }:
+
+pythonPackages.buildPythonApplication rec {
+  name = "${pname}-${version}";
+  version = "0.21.2";
+  pname = "conan";
+
+  src = pythonPackages.fetchPypi {
+    inherit pname version;
+    sha256 = "0x9s5h81d885xdrjw5x99q18lhmj11kalrs6xnjy2phrr8qzil8c";
+  };
+
+  propagatedBuildInputs = with pythonPackages; [
+    requests2 fasteners pyyaml pyjwt colorama patch
+    bottle pluginbase six distro pylint node-semver
+  ];
+
+  # enable tests once all of these pythonPackages available:
+  # [ nose nose_parameterized mock WebTest codecov ]
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    homepage = https://conan.io;
+    description = "Decentralized and portable C/C++ package manager";
+    license = licenses.mit;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/tools/build-managers/gradle/default.nix b/pkgs/development/tools/build-managers/gradle/default.nix
index 28b6601cab6..51aaf5e6a79 100644
--- a/pkgs/development/tools/build-managers/gradle/default.nix
+++ b/pkgs/development/tools/build-managers/gradle/default.nix
@@ -52,12 +52,12 @@ rec {
   };
 
   gradle_latest = gradleGen rec {
-    name = "gradle-3.4.1";
-    nativeVersion = "0.13";
+    name = "gradle-3.5";
+    nativeVersion = "0.14";
 
     src = fetchurl {
       url = "http://services.gradle.org/distributions/${name}-bin.zip";
-      sha256 = "1cpria3qry4778pxcmqvnaqcyq36abj1fgw4pq115k3rsj9v27fv";
+      sha256 = "046i268zkg89ps7c1sq8yx9lbn9kighh4gcskxmzf3qriiwm0x0b";
     };
   };
 
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index e6006e94881..cf9b42abefd 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "sbt-${version}";
-  version = "0.13.13";
+  version = "0.13.15";
 
   src = fetchurl {
     url = "https://dl.bintray.com/sbt/native-packages/sbt/${version}/${name}.tgz";
-    sha256 = "0ygrz92qkzasj6fps1bjg7wlgl69867jjjc37yjadib0l8hkvl20";
+    sha256 = "1vvsxpg1fwfzv3mcin69gnj44v6p7kfx3z9cm761sx01qbbp7q5n";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/tools/chefdk/Gemfile.lock b/pkgs/development/tools/chefdk/Gemfile.lock
index ddbb1f5f1dd..c397758aaac 100644
--- a/pkgs/development/tools/chefdk/Gemfile.lock
+++ b/pkgs/development/tools/chefdk/Gemfile.lock
@@ -1,244 +1,268 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    addressable (2.4.0)
+    addressable (2.5.1)
+      public_suffix (~> 2.0, >= 2.0.2)
     app_conf (0.4.2)
-    ast (2.2.0)
-    berkshelf (4.3.0)
+    artifactory (2.8.1)
+    ast (2.3.0)
+    backports (3.7.0)
+    berkshelf (5.6.4)
       addressable (~> 2.3, >= 2.3.4)
-      berkshelf-api-client (~> 2.0, >= 2.0.2)
-      buff-config (~> 1.0)
-      buff-extensions (~> 1.0)
-      buff-shell_out (~> 0.1)
-      celluloid (= 0.16.0)
-      celluloid-io (~> 0.16.1)
+      berkshelf-api-client (>= 2.0.2, < 4.0)
+      buff-config (~> 2.0)
+      buff-extensions (~> 2.0)
+      buff-shell_out (~> 1.0)
       cleanroom (~> 1.0)
       faraday (~> 0.9)
       httpclient (~> 2.7)
       minitar (~> 0.5, >= 0.5.4)
+      mixlib-archive (~> 0.4)
       octokit (~> 4.0)
       retryable (~> 2.0)
-      ridley (~> 4.5)
-      solve (~> 2.0)
-      thor (~> 0.19)
-    berkshelf-api-client (2.0.2)
-      faraday (~> 0.9.1)
-      httpclient (~> 2.7.0)
-      ridley (~> 4.5)
-    buff-config (1.0.1)
-      buff-extensions (~> 1.0)
-      varia_model (~> 0.4)
-    buff-extensions (1.0.0)
-    buff-ignore (1.1.1)
-    buff-ruby_engine (0.1.0)
-    buff-shell_out (0.2.0)
-      buff-ruby_engine (~> 0.1.0)
-    builder (3.2.2)
+      ridley (~> 5.0)
+      solve (> 2.0, < 4.0)
+      thor (~> 0.19, < 0.19.2)
+    berkshelf-api-client (3.0.0)
+      faraday (~> 0.9)
+      httpclient (~> 2.7)
+      ridley (>= 4.5, < 6.0)
+    blankslate (2.1.2.4)
+    buff-config (2.0.0)
+      buff-extensions (~> 2.0)
+      varia_model (~> 0.6)
+    buff-extensions (2.0.0)
+    buff-ignore (1.2.0)
+    buff-ruby_engine (1.0.0)
+    buff-shell_out (1.1.0)
+      buff-ruby_engine (~> 1.0)
+    builder (3.2.3)
     celluloid (0.16.0)
       timers (~> 4.0.0)
     celluloid-io (0.16.2)
       celluloid (>= 0.16.0)
       nio4r (>= 1.1.0)
-    chef (12.8.1)
+    chef (12.19.36)
+      addressable
       bundler (>= 1.10)
-      chef-config (= 12.8.1)
-      chef-zero (~> 4.5)
+      chef-config (= 12.19.36)
+      chef-zero (>= 4.8)
       diff-lcs (~> 1.2, >= 1.2.4)
       erubis (~> 2.7)
       ffi-yajl (~> 2.2)
       highline (~> 1.6, >= 1.6.9)
+      iniparse (~> 1.4)
+      mixlib-archive (~> 0.4)
       mixlib-authentication (~> 1.4)
-      mixlib-cli (~> 1.4)
+      mixlib-cli (~> 1.7)
       mixlib-log (~> 1.3)
       mixlib-shellout (~> 2.0)
-      net-ssh (>= 2.9, < 4.0)
-      net-ssh-multi (~> 1.1)
-      ohai (>= 8.6.0.alpha.1, < 9)
-      plist (~> 3.1.0)
+      net-sftp (~> 2.1, >= 2.1.2)
+      net-ssh (>= 2.9, < 5.0)
+      net-ssh-multi (~> 1.2, >= 1.2.1)
+      ohai (>= 8.6.0.alpha.1, < 13)
+      plist (~> 3.2)
       proxifier (~> 1.0)
-      rspec-core (~> 3.4)
-      rspec-expectations (~> 3.4)
-      rspec-mocks (~> 3.4)
+      rspec-core (~> 3.5)
+      rspec-expectations (~> 3.5)
+      rspec-mocks (~> 3.5)
       rspec_junit_formatter (~> 0.2.0)
       serverspec (~> 2.7)
       specinfra (~> 2.10)
       syslog-logger (~> 1.6)
       uuidtools (~> 2.1.5)
-    chef-config (12.8.1)
+    chef-config (12.19.36)
+      addressable
+      fuzzyurl
       mixlib-config (~> 2.0)
       mixlib-shellout (~> 2.0)
-    chef-dk (0.11.2)
+    chef-dk (1.3.40)
+      addressable (>= 2.3.5, < 2.6)
       chef (~> 12.5)
-      chef-provisioning (~> 1.2)
-      cookbook-omnifetch (~> 0.2, >= 0.2.2)
+      chef-provisioning (~> 2.0)
+      cookbook-omnifetch (~> 0.5)
       diff-lcs (~> 1.0)
       ffi-yajl (>= 1.0, < 3.0)
       minitar (~> 0.5.4)
-      mixlib-cli (~> 1.5)
+      mixlib-cli (~> 1.7)
       mixlib-shellout (~> 2.0)
       paint (~> 1.0)
-      solve (~> 2.0, >= 2.0.1)
-    chef-provisioning (1.6.0)
-      cheffish (>= 1.3.1, < 3.0)
-      inifile (~> 2.0)
-      mixlib-install (~> 0.7.0)
+      solve (> 2.0, < 4.0)
+    chef-provisioning (2.2.1)
+      cheffish (>= 4.0, < 6.0)
+      inifile (>= 2.0.2)
+      mixlib-install (>= 1.0, < 3.0)
       net-scp (~> 1.0)
-      net-ssh (>= 2.9, < 4.0)
-      net-ssh-gateway (~> 1.2.0)
-      winrm (~> 1.3)
-    chef-vault (2.8.0)
-    chef-zero (4.5.0)
+      net-ssh (>= 2.9, < 5.0)
+      net-ssh-gateway (~> 1.2)
+      winrm (~> 2.0)
+      winrm-elevated (~> 1.0)
+      winrm-fs (~> 1.0)
+    chef-vault (2.9.1)
+    chef-zero (5.3.2)
       ffi-yajl (~> 2.2)
       hashie (>= 2.0, < 4.0)
       mixlib-log (~> 1.3)
-      rack
+      rack (~> 2.0)
       uuidtools (~> 2.1)
-    cheffish (2.0.2)
-      chef-zero (~> 4.3)
-      compat_resource
-    chefspec (4.6.0)
-      chef (>= 11.14)
-      fauxhai (~> 3.0, >= 3.0.1)
+    cheffish (5.0.1)
+      chef-zero (~> 5.0)
+      net-ssh
+    chefspec (6.2.0)
+      chef (>= 12.0)
+      fauxhai (>= 3.6, < 5)
       rspec (~> 3.0)
     cleanroom (1.0.0)
     coderay (1.1.1)
-    compat_resource (12.8.0)
-    cookbook-omnifetch (0.2.2)
-      minitar (~> 0.5.4)
-    diff-lcs (1.2.5)
-    diffy (3.1.0)
-    docker-api (1.26.2)
+    cookbook-omnifetch (0.5.1)
+      mixlib-archive (~> 0.4)
+    cucumber-core (2.0.0)
+      backports (~> 3.6)
+      gherkin (~> 4.0)
+    diff-lcs (1.3)
+    diffy (3.2.0)
+    docker-api (1.33.3)
       excon (>= 0.38.0)
       json
     erubis (2.7.0)
-    excon (0.48.0)
+    excon (0.55.0)
     faraday (0.9.2)
       multipart-post (>= 1.2, < 3)
-    fauxhai (3.1.0)
+    fauxhai (4.1.0)
       net-ssh
-    ffi (1.9.10)
-    ffi-yajl (2.2.3)
+    ffi (1.9.18)
+    ffi-yajl (2.3.0)
       libyajl2 (~> 1.2)
-    foodcritic (6.0.1)
+    foodcritic (10.2.2)
+      cucumber-core (>= 1.3)
       erubis
-      gherkin (~> 2.11)
       nokogiri (>= 1.5, < 2.0)
       rake
       rufus-lru (~> 1.0)
       treetop (~> 1.4)
       yajl-ruby (~> 1.1)
-    gherkin (2.12.2)
-      multi_json (~> 1.3)
+    fuzzyurl (0.9.0)
+    gherkin (4.1.1)
     git (1.3.0)
     gssapi (1.2.0)
       ffi (>= 1.0.1)
     gyoku (1.3.1)
       builder (>= 2.1.2)
-    hashie (3.4.3)
+    hashie (3.5.5)
     highline (1.7.8)
-    hitimes (1.2.3)
-    httpclient (2.7.1)
-    inifile (2.0.2)
-    inspec (0.14.8)
-      json (~> 1.8)
+    hitimes (1.2.4)
+    httpclient (2.8.3)
+    inifile (3.0.0)
+    iniparse (1.4.2)
+    inspec (1.19.2)
+      addressable (~> 2.4)
+      faraday (>= 0.9.0)
+      hashie (~> 3.4)
+      json (>= 1.8, < 3.0)
       method_source (~> 0.8)
+      mixlib-log
+      parallel (~> 1.9)
       pry (~> 0)
-      r-train (~> 0.10.1)
       rainbow (~> 2)
-      rspec (~> 3.3)
+      rspec (~> 3)
       rspec-its (~> 1.2)
       rubyzip (~> 1.1)
+      sslshake (~> 1)
       thor (~> 0.19)
+      toml (~> 0.1)
+      train (>= 0.22.0, < 1.0)
     ipaddress (0.8.3)
-    json (1.8.3)
-    kitchen-inspec (0.12.3)
-      inspec (~> 0.14.1)
+    json (2.0.3)
+    kitchen-inspec (0.17.0)
+      hashie (~> 3.4)
+      inspec (>= 0.34.0, < 2.0.0)
       test-kitchen (~> 1.6)
-    kitchen-vagrant (0.19.0)
+    kitchen-vagrant (1.1.0)
       test-kitchen (~> 1.4)
-    knife-spork (1.6.1)
+    knife-spork (1.6.3)
       app_conf (>= 0.4.0)
       chef (>= 11.0.0)
       diffy (>= 3.0.1)
       git (>= 1.2.5)
     libyajl2 (1.2.0)
     little-plugger (1.1.4)
-    logging (2.0.0)
+    logging (2.2.0)
       little-plugger (~> 1.1)
       multi_json (~> 1.10)
     method_source (0.8.2)
-    mini_portile2 (2.0.0)
+    mini_portile2 (2.1.0)
     minitar (0.5.4)
-    mixlib-authentication (1.4.0)
+    mixlib-archive (0.4.1)
+      mixlib-log
+    mixlib-authentication (1.4.1)
       mixlib-log
-      rspec-core (~> 3.2)
-      rspec-expectations (~> 3.2)
-      rspec-mocks (~> 3.2)
-    mixlib-cli (1.5.0)
-    mixlib-config (2.2.1)
-    mixlib-install (0.7.1)
-    mixlib-log (1.6.0)
-    mixlib-shellout (2.2.6)
-    molinillo (0.2.3)
-    multi_json (1.11.2)
+    mixlib-cli (1.7.0)
+    mixlib-config (2.2.4)
+    mixlib-install (2.1.12)
+      artifactory
+      mixlib-shellout
+      mixlib-versioning
+      thor
+    mixlib-log (1.7.1)
+    mixlib-shellout (2.2.7)
+    mixlib-versioning (1.1.0)
+    molinillo (0.5.7)
+    multi_json (1.12.1)
     multipart-post (2.0.0)
     net-scp (1.2.1)
       net-ssh (>= 2.6.5)
-    net-ssh (3.0.2)
-    net-ssh-gateway (1.2.0)
+    net-sftp (2.1.2)
+      net-ssh (>= 2.6.5)
+    net-ssh (4.1.0)
+    net-ssh-gateway (1.3.0)
       net-ssh (>= 2.6.5)
     net-ssh-multi (1.2.1)
       net-ssh (>= 2.6.5)
       net-ssh-gateway (>= 1.2.0)
     net-telnet (0.1.1)
-    nio4r (1.2.1)
-    nokogiri (1.6.7.2)
-      mini_portile2 (~> 2.0.0.rc2)
+    nio4r (2.0.0)
+    nokogiri (1.7.1)
+      mini_portile2 (~> 2.1.0)
     nori (2.6.0)
-    octokit (4.3.0)
-      sawyer (~> 0.7.0, >= 0.5.3)
-    ohai (8.12.0)
+    octokit (4.7.0)
+      sawyer (~> 0.8.0, >= 0.5.3)
+    ohai (8.23.0)
       chef-config (>= 12.5.0.alpha.1, < 13)
       ffi (~> 1.9)
       ffi-yajl (~> 2.2)
       ipaddress
       mixlib-cli
       mixlib-config (~> 2.0)
-      mixlib-log
+      mixlib-log (>= 1.7.1, < 2.0)
       mixlib-shellout (~> 2.0)
-      plist
-      rake (~> 10.1)
+      plist (~> 3.1)
       systemu (~> 2.6.4)
       wmi-lite (~> 1.0)
     paint (1.0.1)
-    parser (2.3.0.6)
+    parallel (1.11.1)
+    parser (2.4.0.0)
       ast (~> 2.2)
-    plist (3.1.0)
+    parslet (1.5.0)
+      blankslate (~> 2.0)
+    plist (3.2.0)
     polyglot (0.3.5)
     powerpack (0.1.1)
     proxifier (1.0.3)
-    pry (0.10.3)
+    pry (0.10.4)
       coderay (~> 1.1.0)
       method_source (~> 0.8.1)
       slop (~> 3.4)
-    r-train (0.10.3)
-      docker-api (~> 1.26.2)
-      json (~> 1.8)
-      mixlib-shellout (~> 2.1)
-      net-scp (~> 1.2)
-      net-ssh (>= 2.9, < 4.0)
-      winrm (~> 1.6)
-      winrm-fs (~> 0.3)
-    rack (1.6.4)
-    rainbow (2.1.0)
-    rake (10.5.0)
-    retryable (2.0.3)
-    ridley (4.5.0)
+    public_suffix (2.0.5)
+    rack (2.0.1)
+    rainbow (2.2.1)
+    rake (12.0.0)
+    retryable (2.0.4)
+    ridley (5.1.0)
       addressable
-      buff-config (~> 1.0)
-      buff-extensions (~> 1.0)
-      buff-ignore (~> 1.1)
-      buff-shell_out (~> 0.1)
+      buff-config (~> 2.0)
+      buff-extensions (~> 2.0)
+      buff-ignore (~> 1.2)
+      buff-shell_out (~> 1.0)
       celluloid (~> 0.16.0)
       celluloid-io (~> 0.16.1)
       chef-config (>= 12.5.0)
@@ -249,91 +273,107 @@ GEM
       json (>= 1.7.7)
       mixlib-authentication (>= 1.3.0)
       retryable (~> 2.0)
-      semverse (~> 1.1)
-      varia_model (~> 0.4.0)
-    rspec (3.4.0)
-      rspec-core (~> 3.4.0)
-      rspec-expectations (~> 3.4.0)
-      rspec-mocks (~> 3.4.0)
-    rspec-core (3.4.4)
-      rspec-support (~> 3.4.0)
-    rspec-expectations (3.4.0)
+      semverse (~> 2.0)
+      varia_model (~> 0.6)
+    rspec (3.5.0)
+      rspec-core (~> 3.5.0)
+      rspec-expectations (~> 3.5.0)
+      rspec-mocks (~> 3.5.0)
+    rspec-core (3.5.4)
+      rspec-support (~> 3.5.0)
+    rspec-expectations (3.5.0)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.4.0)
+      rspec-support (~> 3.5.0)
     rspec-its (1.2.0)
       rspec-core (>= 3.0.0)
       rspec-expectations (>= 3.0.0)
-    rspec-mocks (3.4.1)
+    rspec-mocks (3.5.0)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.4.0)
-    rspec-support (3.4.1)
+      rspec-support (~> 3.5.0)
+    rspec-support (3.5.0)
     rspec_junit_formatter (0.2.3)
       builder (< 4)
       rspec-core (>= 2, < 4, != 2.12.0)
-    rubocop (0.38.0)
-      parser (>= 2.3.0.6, < 3.0)
+    rubocop (0.48.1)
+      parser (>= 2.3.3.1, < 3.0)
       powerpack (~> 0.1)
       rainbow (>= 1.99.1, < 3.0)
       ruby-progressbar (~> 1.7)
       unicode-display_width (~> 1.0, >= 1.0.1)
-    ruby-progressbar (1.7.5)
-    rubyntlm (0.6.0)
-    rubyzip (1.2.0)
-    rufus-lru (1.0.5)
+    ruby-progressbar (1.8.1)
+    rubyntlm (0.6.1)
+    rubyzip (1.2.1)
+    rufus-lru (1.1.0)
     safe_yaml (1.0.4)
-    sawyer (0.7.0)
-      addressable (>= 2.3.5, < 2.5)
-      faraday (~> 0.8, < 0.10)
-    semverse (1.2.1)
-    serverspec (2.31.0)
+    sawyer (0.8.1)
+      addressable (>= 2.3.5, < 2.6)
+      faraday (~> 0.8, < 1.0)
+    semverse (2.0.0)
+    serverspec (2.38.0)
       multi_json
       rspec (~> 3.0)
       rspec-its
       specinfra (~> 2.53)
-    sfl (2.2)
+    sfl (2.3)
     slop (3.6.0)
-    solve (2.0.2)
-      molinillo (~> 0.2.3)
-      semverse (~> 1.1)
-    specinfra (2.53.1)
+    solve (3.1.0)
+      molinillo (>= 0.5)
+      semverse (>= 1.1, < 3.0)
+    specinfra (2.67.7)
       net-scp
-      net-ssh (>= 2.7, < 3.1)
+      net-ssh (>= 2.7, < 5.0)
       net-telnet
       sfl
+    sslshake (1.1.0)
     syslog-logger (1.6.8)
     systemu (2.6.5)
-    test-kitchen (1.6.0)
-      mixlib-install (~> 0.7)
+    test-kitchen (1.16.0)
+      mixlib-install (>= 1.2, < 3.0)
       mixlib-shellout (>= 1.2, < 3.0)
       net-scp (~> 1.1)
-      net-ssh (>= 2.9, < 4.0)
+      net-ssh (>= 2.9, < 5.0)
+      net-ssh-gateway (~> 1.2)
       safe_yaml (~> 1.0)
-      thor (~> 0.18)
+      thor (~> 0.19, < 0.19.2)
     thor (0.19.1)
     timers (4.0.4)
       hitimes
-    treetop (1.6.5)
+    toml (0.1.2)
+      parslet (~> 1.5.0)
+    train (0.23.0)
+      docker-api (~> 1.26)
+      json (>= 1.8, < 3.0)
+      mixlib-shellout (~> 2.0)
+      net-scp (~> 1.2)
+      net-ssh (>= 2.9, < 5.0)
+      winrm (~> 2.0)
+      winrm-fs (~> 1.0)
+    treetop (1.6.8)
       polyglot (~> 0.3)
-    unicode-display_width (1.0.2)
+    unicode-display_width (1.1.3)
     uuidtools (2.1.5)
-    varia_model (0.4.1)
-      buff-extensions (~> 1.0)
+    varia_model (0.6.0)
+      buff-extensions (~> 2.0)
       hashie (>= 2.0.2, < 4.0.0)
-    winrm (1.7.2)
+    winrm (2.2.1)
       builder (>= 2.1.2)
+      erubis (~> 2.7)
       gssapi (~> 1.2)
       gyoku (~> 1.0)
       httpclient (~> 2.2, >= 2.2.0.2)
       logging (>= 1.6.1, < 3.0)
       nori (~> 2.0)
-      rubyntlm (~> 0.6.0)
-    winrm-fs (0.3.2)
+      rubyntlm (~> 0.6.0, >= 0.6.1)
+    winrm-elevated (1.1.0)
+      winrm (~> 2.0)
+      winrm-fs (~> 1.0)
+    winrm-fs (1.0.1)
       erubis (~> 2.7)
       logging (>= 1.6.1, < 3.0)
       rubyzip (~> 1.1)
-      winrm (~> 1.5)
+      winrm (~> 2.0)
     wmi-lite (1.0.0)
-    yajl-ruby (1.2.1)
+    yajl-ruby (1.3.0)
 
 PLATFORMS
   ruby
@@ -356,4 +396,4 @@ DEPENDENCIES
   test-kitchen
 
 BUNDLED WITH
-   1.10.5
+   1.14.4
diff --git a/pkgs/development/tools/chefdk/default.nix b/pkgs/development/tools/chefdk/default.nix
index 880d0ddcc74..b453b0ca504 100644
--- a/pkgs/development/tools/chefdk/default.nix
+++ b/pkgs/development/tools/chefdk/default.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, bundlerEnv, ruby, perl, autoconf }:
 
 bundlerEnv {
-  name = "chefdk-0.11.2";
+  name = "chefdk-1.3.40";
 
   inherit ruby;
   gemdir = ./.;
diff --git a/pkgs/development/tools/chefdk/gemset.nix b/pkgs/development/tools/chefdk/gemset.nix
index 87faa3105ad..18e430a3dec 100644
--- a/pkgs/development/tools/chefdk/gemset.nix
+++ b/pkgs/development/tools/chefdk/gemset.nix
@@ -1,1170 +1,1088 @@
 {
-  "addressable" = {
-    version = "2.4.0";
+  addressable = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1i8q32a4gr0zghxylpyy7jfqwxvwrivsxflg9mks6kx92frh75mh";
       type = "gem";
-      sha256 = "0mpn7sbjl477h56gmxsjqb89r5s3w7vx5af994ssgc3iamvgzgvs";
     };
+    version = "2.5.1";
   };
-  "app_conf" = {
+  app_conf = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1yqwhr7d9i0cgavqkkq0b4pfqpn213dbhj5ayygr293wplm0jh57";
+      type = "gem";
+    };
     version = "0.4.2";
+  };
+  artifactory = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zaxa5fxrfal6vi90w725n8cd57fxw1jf99h38vn8d4vimvan2cc";
       type = "gem";
-      sha256 = "1yqwhr7d9i0cgavqkkq0b4pfqpn213dbhj5ayygr293wplm0jh57";
     };
+    version = "2.8.1";
   };
-  "ast" = {
-    version = "2.2.0";
+  ast = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pp82blr5fakdk27d1d21xq9zchzb6vmyb1zcsl520s3ygvprn8m";
       type = "gem";
-      sha256 = "14md08f8f1mmr2v7lczqnf1n1v8bal73gvg6ldhvkds1bmbnkrlb";
     };
+    version = "2.3.0";
   };
-  "berkshelf" = {
-    version = "4.3.0";
+  backports = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qlaq999znlbjw9wb0kwbjvidrbcimnd4v59y682kvm5c09mfn0l";
       type = "gem";
-      sha256 = "1dsbyq3749b9133rmnzjak7rsysyps1ryalc2r4rxyihflmxhix9";
     };
-    dependencies = [
-      "addressable"
-      "berkshelf-api-client"
-      "buff-config"
-      "buff-extensions"
-      "buff-shell_out"
-      "celluloid"
-      "celluloid-io"
-      "cleanroom"
-      "faraday"
-      "httpclient"
-      "minitar"
-      "octokit"
-      "retryable"
-      "ridley"
-      "solve"
-      "thor"
-    ];
+    version = "3.7.0";
   };
-  "berkshelf-api-client" = {
-    version = "2.0.2";
+  berkshelf = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1aajjag7l55gi7k67n27dr6pscbdlzjaj751r2zhaggrczhh6yyq";
       type = "gem";
-      sha256 = "0xbn8q2xi09x5a7ma6wqs13gkpzj4ly21vls7m7ffv3sw8x29cyc";
     };
-    dependencies = [
-      "faraday"
-      "httpclient"
-      "ridley"
-    ];
+    version = "5.6.4";
   };
-  "buff-config" = {
-    version = "1.0.1";
+  berkshelf-api-client = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1n9bmrqmyy8cqm9vakscf5s1k2chks43x7dr201zp4bv2i6g3ih2";
       type = "gem";
-      sha256 = "0r3h3mk1dj7pc4zymz450bdqp23faqprx363ji4zfdg8z6r31jfh";
     };
-    dependencies = [
-      "buff-extensions"
-      "varia_model"
-    ];
+    version = "3.0.0";
   };
-  "buff-extensions" = {
-    version = "1.0.0";
+  blankslate = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jnnq5q5dwy2rbfcl769vd9bk1yn0242f6yjlb9mnqdm9627cdcx";
       type = "gem";
-      sha256 = "1jqb5sn38qgx66lc4km6rljzz05myijjw12hznz1fk0k4qfw6yzk";
     };
+    version = "2.1.2.4";
   };
-  "buff-ignore" = {
-    version = "1.1.1";
+  buff-config = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06zx175sww4grk1rwyn1g3b1j2y324jf1506wl4xx96iss8spa4r";
       type = "gem";
-      sha256 = "1ghzhkgbq7f5fc7xilw0c9gspxpdhqhq3ygi1ybjm6r0dxlmvdb4";
     };
+    version = "2.0.0";
   };
-  "buff-ruby_engine" = {
-    version = "0.1.0";
+  buff-extensions = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qjyx97b9gavrk1r77bif1wv7z2mwlqy0v42q0vb7jd609n7vgcg";
       type = "gem";
-      sha256 = "1llpwpmzkakbgz9fc3vr1298cx1n9zv1g25fwj80xnnr7428aj8p";
     };
+    version = "2.0.0";
   };
-  "buff-shell_out" = {
-    version = "0.2.0";
+  buff-ignore = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vn0jh4l8np1xlyvsrrhlzhapcwvrjfni92jmg1an5qdw1qlgxmh";
       type = "gem";
-      sha256 = "0sphb69vxm346ys2laiz174k5jx628vfwz9ch8g2w9plc4xkxf3p";
     };
-    dependencies = [
-      "buff-ruby_engine"
-    ];
+    version = "1.2.0";
   };
-  "builder" = {
-    version = "3.2.2";
+  buff-ruby_engine = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1njpndvhvq7idfrwfw3p0hs5ch6nygwscjmksh23dz49dsirk7a9";
       type = "gem";
-      sha256 = "14fii7ab8qszrvsvhz6z2z3i4dw0h41a62fjr2h1j8m41vbrmyv2";
     };
+    version = "1.0.0";
   };
-  "celluloid" = {
-    version = "0.16.0";
+  buff-shell_out = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zg1li17759whsi2yhb08wvbbqn5cy6i5v51384yjk2a29vs9lck";
       type = "gem";
-      sha256 = "044xk0y7i1xjafzv7blzj5r56s7zr8nzb619arkrl390mf19jxv3";
     };
-    dependencies = [
-      "timers"
-    ];
+    version = "1.1.0";
   };
-  "celluloid-io" = {
-    version = "0.16.2";
+  builder = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qibi5s67lpdv1wgcj66wcymcr04q6j4mzws6a479n0mlrmh5wr1";
       type = "gem";
-      sha256 = "1l1x0p6daa5vskywrvaxdlanwib3k5pps16axwyy4p8d49pn9rnx";
     };
-    dependencies = [
-      "celluloid"
-      "nio4r"
-    ];
+    version = "3.2.3";
   };
-  "chef" = {
-    version = "12.8.1";
+  celluloid = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "044xk0y7i1xjafzv7blzj5r56s7zr8nzb619arkrl390mf19jxv3";
       type = "gem";
-      sha256 = "16wb3ymnl7rbayy8qp35fp0947cnq2y9bac7xzhc1njp5j2p6lhg";
     };
-    dependencies = [
-      "chef-config"
-      "chef-zero"
-      "diff-lcs"
-      "erubis"
-      "ffi-yajl"
-      "highline"
-      "mixlib-authentication"
-      "mixlib-cli"
-      "mixlib-log"
-      "mixlib-shellout"
-      "net-ssh"
-      "net-ssh-multi"
-      "ohai"
-      "plist"
-      "proxifier"
-      "rspec-core"
-      "rspec-expectations"
-      "rspec-mocks"
-      "rspec_junit_formatter"
-      "serverspec"
-      "specinfra"
-      "syslog-logger"
-      "uuidtools"
-    ];
+    version = "0.16.0";
   };
-  "chef-config" = {
-    version = "12.8.1";
+  celluloid-io = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1l1x0p6daa5vskywrvaxdlanwib3k5pps16axwyy4p8d49pn9rnx";
       type = "gem";
-      sha256 = "0chgbdv9c1xfkhzx3kmpr8lj0wjdbziixgln2y3ryn84x4fg84ic";
     };
-    dependencies = [
-      "mixlib-config"
-      "mixlib-shellout"
-    ];
+    version = "0.16.2";
   };
-  "chef-dk" = {
-    version = "0.11.2";
+  chef = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "057m3c7h3fz3682r7wxmm7dm3n90rv56lc7svrk1hmf4c3g4b99v";
       type = "gem";
-      sha256 = "1qfx5qclvh3kwjgfs18iwdn0knpgka5py7mwi4r0mz2sw14wq5wk";
     };
-    dependencies = [
-      "chef"
-      "chef-provisioning"
-      "cookbook-omnifetch"
-      "diff-lcs"
-      "ffi-yajl"
-      "minitar"
-      "mixlib-cli"
-      "mixlib-shellout"
-      "paint"
-      "solve"
-    ];
+    version = "12.19.36";
   };
-  "chef-provisioning" = {
-    version = "1.6.0";
+  chef-config = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0j4m13zzhd4w7j09a2cnj9sinxd9669i5qanbb1cvj90my0raxa2";
       type = "gem";
-      sha256 = "1nxgia4zyhyqbrz65q7lgjwx8ba5iyzxdxa181y0s4aqqpv0j45g";
     };
-    dependencies = [
-      "cheffish"
-      "inifile"
-      "mixlib-install"
-      "net-scp"
-      "net-ssh"
-      "net-ssh-gateway"
-      "winrm"
-    ];
+    version = "12.19.36";
   };
-  "chef-vault" = {
-    version = "2.8.0";
+  chef-dk = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wvdv3hmxnp7ydcwji1w4x0g48dy4qq1ik8zd6n43mqcfgkjq0cb";
       type = "gem";
-      sha256 = "0dbvawlrfx9mqjyh8q71jjfh987xqqv3f6c0pmcjp6qxs95l1dqq";
     };
+    version = "1.3.40";
   };
-  "chef-zero" = {
-    version = "4.5.0";
+  chef-provisioning = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0z5334zp76fswj7ygs5gzf8vsc13ixvyxywpyd5sif75dqsays48";
       type = "gem";
-      sha256 = "1lqvmgjniviahrhim8k67qddnwh5p7wzw33r1wga4z136pfka1zx";
     };
-    dependencies = [
-      "ffi-yajl"
-      "hashie"
-      "mixlib-log"
-      "rack"
-      "uuidtools"
-    ];
+    version = "2.2.1";
   };
-  "cheffish" = {
-    version = "2.0.2";
+  chef-vault = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pqxmraiai9jrld53fyfsglaqcw14xwmy4f3rjfwbrsmparsxjc2";
       type = "gem";
-      sha256 = "0mvp7kybgp3nm2sdcmlx8bv147hcdjx745a8k97bx1m47isv97ax";
     };
-    dependencies = [
-      "chef-zero"
-      "compat_resource"
-    ];
+    version = "2.9.1";
   };
-  "chefspec" = {
-    version = "4.6.0";
+  chef-zero = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qmpn8wq2wns8m28pcn8ljgwz0v2ksninzc4wn5nq66gvksmpjig";
       type = "gem";
-      sha256 = "1ikn8k6xdqixdjga50jmkqajz2z2z71dg4j3dsmd31hv1mdbp7wz";
     };
-    dependencies = [
-      "chef"
-      "fauxhai"
-      "rspec"
-    ];
+    version = "5.3.2";
   };
-  "cleanroom" = {
-    version = "1.0.0";
+  cheffish = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19hn46s3qm2ncnfzggm0lcdrsagspdxg699k97a4hbl18k1n6lb1";
       type = "gem";
-      sha256 = "1r6qa4b248jasv34vh7rw91pm61gzf8g5dvwx2gxrshjs7vbhfml";
     };
+    version = "5.0.1";
   };
-  "coderay" = {
-    version = "1.1.1";
+  chefspec = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18xkzcxglrr3bfy5k0c1cjk5a3ka49xg3xirldb5yhv395svgg1r";
       type = "gem";
-      sha256 = "1x6z923iwr1hi04k6kz5a6llrixflz8h5sskl9mhaaxy9jx2x93r";
     };
+    version = "6.2.0";
   };
-  "compat_resource" = {
-    version = "12.8.0";
+  cleanroom = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1r6qa4b248jasv34vh7rw91pm61gzf8g5dvwx2gxrshjs7vbhfml";
       type = "gem";
-      sha256 = "0zp1dd1wkbgxbazvs7acqyk1xjls0wq1pd5ilhj6zi63lpychgy5";
     };
+    version = "1.0.0";
   };
-  "cookbook-omnifetch" = {
-    version = "0.2.2";
+  coderay = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x6z923iwr1hi04k6kz5a6llrixflz8h5sskl9mhaaxy9jx2x93r";
       type = "gem";
-      sha256 = "1ml25xc69nsgbvp9a6w9yi376rav7b659cvyr8qhfb4jaj4l1yd6";
     };
-    dependencies = [
-      "minitar"
-    ];
+    version = "1.1.1";
   };
-  "diff-lcs" = {
-    version = "1.2.5";
+  cookbook-omnifetch = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qkzlkszq9f74i71vz72skvmrw24zvdpzfl2029x6vyxrwn83hwf";
       type = "gem";
-      sha256 = "1vf9civd41bnqi6brr5d9jifdw73j9khc6fkhfl1f8r9cpkdvlx1";
     };
+    version = "0.5.1";
   };
-  "diffy" = {
-    version = "3.1.0";
+  cucumber-core = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "136hnvqv444qyxzcgy1k60y4i6cn3sn9lbqr4wan9dzz1yzllqbm";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  diff-lcs = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza";
       type = "gem";
-      sha256 = "1azibizfv91sjbzhjqj1pg2xcv8z9b8a7z6kb3wpl4hpj5hil5kj";
     };
+    version = "1.3";
   };
-  "docker-api" = {
-    version = "1.26.2";
+  diffy = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "015nn9zaciqj43mfpjlw619r5dvnfkrjcka8nsa6j260v6qya941";
       type = "gem";
-      sha256 = "0sg2xazcga21pmlb9yy1z5f3yyzqa2ly5b2h2cxfhyfda6k748wk";
     };
-    dependencies = [
-      "excon"
-      "json"
-    ];
+    version = "3.2.0";
   };
-  "erubis" = {
-    version = "2.7.0";
+  docker-api = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xg2iw6rffyd6zahm6rc80m10dghqmvjg8s83zjm6bqsqdg5h2dk";
       type = "gem";
-      sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
     };
+    version = "1.33.3";
   };
-  "excon" = {
-    version = "0.48.0";
+  erubis = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
       type = "gem";
-      sha256 = "0hjfd2p2mhklavhy8gy1ygm390iz3imx71065dcr9r28s3wk63gf";
     };
+    version = "2.7.0";
   };
-  "faraday" = {
-    version = "0.9.2";
+  excon = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "149grwcry52hi3f1xkbbx74jw5m3qcmiib13wxrk3rw5rz200kmx";
       type = "gem";
+    };
+    version = "0.55.0";
+  };
+  faraday = {
+    source = {
+      remotes = ["https://rubygems.org"];
       sha256 = "1kplqkpn2s2yl3lxdf6h7sfldqvkbkpxwwxhyk7mdhjplb5faqh6";
+      type = "gem";
     };
-    dependencies = [
-      "multipart-post"
-    ];
+    version = "0.9.2";
   };
-  "fauxhai" = {
-    version = "3.1.0";
+  fauxhai = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yk8cspxgs7y29hgzv248albld4d0y5z498xmgh7kqxav6vxpigj";
       type = "gem";
-      sha256 = "0ff8wappc4n4v7v6969zm64c36qiadfw3igl8cyqrpp36fnqm04d";
     };
-    dependencies = [
-      "net-ssh"
-    ];
+    version = "4.1.0";
   };
-  "ffi" = {
-    version = "1.9.10";
+  ffi = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "034f52xf7zcqgbvwbl20jwdyjwznvqnwpbaps9nk18v9lgb1dpx0";
       type = "gem";
-      sha256 = "1m5mprppw0xcrv2mkim5zsk70v089ajzqiq5hpyb0xg96fcyzyxj";
     };
+    version = "1.9.18";
   };
-  "ffi-yajl" = {
-    version = "2.2.3";
+  ffi-yajl = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1dlfzbs1amvqv9lrl87h614xz7319zcwn29qjl1mhnbclny98hqz";
       type = "gem";
-      sha256 = "14wgy2isc5yir4zdkk0l3hzh1s1ycwblqb1hllbv4g9svb9naqbz";
     };
+    version = "2.3.0";
     dependencies = [
       "libyajl2"
     ];
   };
-  "foodcritic" = {
-    version = "6.0.1";
+  foodcritic = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0js522pp3q1xx929mpbzska2i87ydkax1dnyczpll4c46dkc2ivx";
       type = "gem";
-      sha256 = "06pi4984g6vwfzqvsf73zpw4h1p63bl7yn2sjb9mqd896bb3v6cn";
     };
-    dependencies = [
-      "erubis"
-      "gherkin"
-      "nokogiri"
-      "rake"
-      "rufus-lru"
-      "treetop"
-      "yajl-ruby"
-    ];
+    version = "10.2.2";
   };
-  "gherkin" = {
-    version = "2.12.2";
+  fuzzyurl = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03qchs33vfwbsv5awxg3acfmlcrf5xbhnbrc83fdpamwya0glbjl";
       type = "gem";
-      sha256 = "1mxfgw15pii1jmq00xxbyp77v71mh3bp99ndgwzfwkxvbcisha25";
     };
-    dependencies = [
-      "multi_json"
-    ];
+    version = "0.9.0";
   };
-  "git" = {
-    version = "1.3.0";
+  gherkin = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1s2ibsl5vi3961cci677zjb03wg4wh5hcci5g87i416333qq69xx";
       type = "gem";
-      sha256 = "1waikaggw7a1d24nw0sh8fd419gbf7awh000qhsf411valycj6q3";
     };
+    version = "4.1.1";
   };
-  "gssapi" = {
-    version = "1.2.0";
+  git = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1waikaggw7a1d24nw0sh8fd419gbf7awh000qhsf411valycj6q3";
       type = "gem";
-      sha256 = "0j93nsf9j57p7x4aafalvjg8hia2mmqv3aky7fmw2ck5yci343ix";
     };
-    dependencies = [
-      "ffi"
-    ];
+    version = "1.3.0";
   };
-  "gyoku" = {
-    version = "1.3.1";
+  gssapi = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0j93nsf9j57p7x4aafalvjg8hia2mmqv3aky7fmw2ck5yci343ix";
       type = "gem";
-      sha256 = "1wn0sl14396g5lyvp8sjmcb1hw9rbyi89gxng91r7w4df4jwiidh";
     };
-    dependencies = [
-      "builder"
-    ];
+    version = "1.2.0";
   };
-  "hashie" = {
-    version = "3.4.3";
+  gyoku = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1wn0sl14396g5lyvp8sjmcb1hw9rbyi89gxng91r7w4df4jwiidh";
       type = "gem";
-      sha256 = "1iv5hd0zcryprx9lbcm615r3afc0d6rhc27clywmhhgpx68k8899";
     };
+    version = "1.3.1";
   };
-  "highline" = {
-    version = "1.7.8";
+  hashie = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lfmbh98ng141m7yc8s4v56v49ppam416pzvd2d7pg85wmm44ljw";
       type = "gem";
+    };
+    version = "3.5.5";
+  };
+  highline = {
+    source = {
+      remotes = ["https://rubygems.org"];
       sha256 = "1nf5lgdn6ni2lpfdn4gk3gi47fmnca2bdirabbjbz1fk9w4p8lkr";
+      type = "gem";
     };
+    version = "1.7.8";
   };
-  "hitimes" = {
-    version = "1.2.3";
+  hitimes = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1a4yfhj7vp5gx20y99z45skynyn57wzxwwjp9mjm0b6dgiv6l0lz";
       type = "gem";
-      sha256 = "1fr9raz7652bnnx09dllyjdlnwdxsnl0ig5hq9s4s8vackvmckv4";
     };
+    version = "1.2.4";
   };
-  "httpclient" = {
-    version = "2.7.1";
+  httpclient = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19mxmvghp7ki3klsxwrlwr431li7hm1lczhhj8z4qihl2acy8l99";
       type = "gem";
-      sha256 = "1y01wgmvwz8r4ycr87d12niglpk0nlh2hkpgy9bnmm8as7kgs428";
     };
+    version = "2.8.3";
   };
-  "inifile" = {
-    version = "2.0.2";
+  inifile = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c5zmk7ia63yw5l2k14qhfdydxwi1sah1ppjdiicr4zcalvfn0xi";
       type = "gem";
-      sha256 = "03rpacxnrnisjhd2zhc7629ica958bkdbakicl5kipw1wbprck25";
     };
+    version = "3.0.0";
   };
-  "inspec" = {
-    version = "0.14.8";
+  iniparse = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pj4r636swr6j7zisgs6xjws1hkkj8wxdbbknpzydcmaridk880r";
       type = "gem";
-      sha256 = "0whd57f82ml0awn7wgfi8gj3mwl7njww22hn2ciabxafqld9xrri";
     };
-    dependencies = [
-      "json"
-      "method_source"
-      "pry"
-      "r-train"
-      "rainbow"
-      "rspec"
-      "rspec-its"
-      "rubyzip"
-      "thor"
-    ];
+    version = "1.4.2";
   };
-  "ipaddress" = {
-    version = "0.8.3";
+  inspec = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03c1xxp13yv601b5fdbjbqy0sq84ymn5bx4d7k34h553lgc0124f";
       type = "gem";
-      sha256 = "1x86s0s11w202j6ka40jbmywkrx8fhq8xiy8mwvnkhllj57hqr45";
     };
+    version = "1.19.2";
   };
-  "json" = {
-    version = "1.8.3";
+  ipaddress = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x86s0s11w202j6ka40jbmywkrx8fhq8xiy8mwvnkhllj57hqr45";
       type = "gem";
-      sha256 = "1nsby6ry8l9xg3yw4adlhk2pnc7i0h0rznvcss4vk3v74qg0k8lc";
     };
+    version = "0.8.3";
   };
-  "kitchen-inspec" = {
-    version = "0.12.3";
+  json = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0cpw154il64w6q20rrnsbjx1cdfz1yrzz1lgdbpn59lcwc6mprql";
       type = "gem";
-      sha256 = "1vjb9pxb4ga9ppr35k6vsqh053k35b4fxamzg99g17y1rijp6dbj";
     };
-    dependencies = [
-      "inspec"
-      "test-kitchen"
-    ];
+    version = "2.0.3";
   };
-  "kitchen-vagrant" = {
-    version = "0.19.0";
+  kitchen-inspec = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zpkb9hy6hbdk58xs2lf8rcdbm9l02m607bzdramwfm7czzh08rs";
       type = "gem";
-      sha256 = "0sydjihhvnr40vqnj7bg65zxf00crwvwdli1av03ghhggrp5scla";
     };
-    dependencies = [
-      "test-kitchen"
-    ];
+    version = "0.17.0";
   };
-  "knife-spork" = {
-    version = "1.6.1";
+  kitchen-vagrant = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qanaqs769lvp3bw0bp2jivjs7n0y1y71x99j0cnx3qag9nbjca5";
       type = "gem";
-      sha256 = "104f3xq4gfy7rszc8zbfakg9wlnwnf8k9zij9ahdq4id3sdf1ylb";
     };
-    dependencies = [
-      "app_conf"
-      "chef"
-      "diffy"
-      "git"
-    ];
+    version = "1.1.0";
   };
-  "libyajl2" = {
-    version = "1.2.0";
+  knife-spork = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0k2lmcz9ym6n7a5xn3jvlmfls10lbk7h6phqpc7ah1dz6dk4qw8d";
       type = "gem";
-      sha256 = "0n5j0p8dxf9xzb9n4bkdr8w0a8gg3jzrn9indri3n0fv90gcs5qi";
     };
+    version = "1.6.3";
   };
-  "little-plugger" = {
-    version = "1.1.4";
+  libyajl2 = {
     source = {
+  #    remotes = ["https://rubygems.org"];
+      sha256 = "0n5j0p8dxf9xzb9n4bkdr8w0a8gg3jzrn9indri3n0fv90gcs5qi";
       type = "gem";
-      sha256 = "1frilv82dyxnlg8k1jhrvyd73l6k17mxc5vwxx080r4x1p04gwym";
     };
+    version = "1.2.0";
   };
-  "logging" = {
-    version = "2.0.0";
+  little-plugger = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1frilv82dyxnlg8k1jhrvyd73l6k17mxc5vwxx080r4x1p04gwym";
       type = "gem";
-      sha256 = "0ka5q88qvc2w7yr9z338jwxcyj1kifmbr9is5hps2f37asismqvb";
     };
-    dependencies = [
-      "little-plugger"
-      "multi_json"
-    ];
+    version = "1.1.4";
   };
-  "method_source" = {
-    version = "0.8.2";
+  logging = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ddy1dh8sshbfaz3magaww1frlk0p3dpishmakpq0c2skp988wl2";
       type = "gem";
+    };
+    version = "2.2.0";
+  };
+  method_source = {
+    source = {
+      remotes = ["https://rubygems.org"];
       sha256 = "1g5i4w0dmlhzd18dijlqw5gk27bv6dj2kziqzrzb7mpgxgsd1sf2";
+      type = "gem";
     };
+    version = "0.8.2";
   };
-  "mini_portile2" = {
-    version = "2.0.0";
+  mini_portile2 = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1y25adxb1hgg1wb2rn20g3vl07qziq6fz364jc5694611zz863hb";
       type = "gem";
-      sha256 = "056drbn5m4khdxly1asmiik14nyllswr6sh3wallvsywwdiryz8l";
     };
+    version = "2.1.0";
   };
-  "minitar" = {
+  minitar = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vpdjfmdq1yc4i620frfp9af02ia435dnpj8ybsd7dc3rypkvbka";
+      type = "gem";
+    };
     version = "0.5.4";
+  };
+  mixlib-archive = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1b56iprv8cdhxjpzb8ck0mc54cl0kmyzlkn6bzzdqws4gxvdf6gk";
       type = "gem";
-      sha256 = "1vpdjfmdq1yc4i620frfp9af02ia435dnpj8ybsd7dc3rypkvbka";
     };
+    version = "0.4.1";
   };
-  "mixlib-authentication" = {
-    version = "1.4.0";
+  mixlib-authentication = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1v2r5klw6c8b67yw906slp8a7wi4v2gmhhi9b1slmm4sg2v0pgah";
       type = "gem";
-      sha256 = "0qk6mln2bkp6jgkz3sh5r69lzipzjs4dqdixqq12wzvwapmgc0zj";
     };
-    dependencies = [
-      "mixlib-log"
-      "rspec-core"
-      "rspec-expectations"
-      "rspec-mocks"
-    ];
+    version = "1.4.1";
   };
-  "mixlib-cli" = {
-    version = "1.5.0";
+  mixlib-cli = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0647msh7kp7lzyf6m72g6snpirvhimjm22qb8xgv9pdhbcrmcccp";
       type = "gem";
-      sha256 = "0im6jngj76azrz0nv69hgpy1af4smcgpfvmmwh5iwsqwa46zx0k0";
     };
+    version = "1.7.0";
   };
-  "mixlib-config" = {
-    version = "2.2.1";
+  mixlib-config = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s2ag6jz59r1gn8rbhf5c1g2mpbkc5jmz2fxh3n7hzv80dfzk42w";
       type = "gem";
-      sha256 = "0smhnyhw1va94vrd7zapxplbavbs4dc78h9yd1yfv52fzxx16zk3";
     };
+    version = "2.2.4";
   };
-  "mixlib-install" = {
-    version = "0.7.1";
+  mixlib-install = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08fmrc9qaagj3i85n37l50d9qpjsv0lkdppmx3y69r3d0xcgfv3p";
       type = "gem";
-      sha256 = "1ws2syfimnqzlff2fp6yj5v7zgnzmi3pj9kbkg7xlmd9fhnkb0n7";
     };
+    version = "2.1.12";
   };
-  "mixlib-log" = {
-    version = "1.6.0";
+  mixlib-log = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14sknyi9r7rg28m21c8ixzyndhbmi0d6vk02y4hf42dd60hmdbgp";
       type = "gem";
-      sha256 = "1xblfxby3psh4n5cgc6j6xnvmmssyr8qjy0l76f92nr4b9yvv9m2";
     };
+    version = "1.7.1";
   };
-  "mixlib-shellout" = {
-    version = "2.2.6";
+  mixlib-shellout = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0c6zhas6jfr4zd7f6s7sq7qi34ljs7qmdr4zj3ighpcsawm16zg9";
       type = "gem";
-      sha256 = "1xfs7yp533qx3nsd4x2q2r125awyxcizgdc4dwgdlxsa1n1pj0pd";
     };
+    version = "2.2.7";
   };
-  "molinillo" = {
-    version = "0.2.3";
+  mixlib-versioning = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "07an7gxrw6gda98bg9zbfk55b2d58hwpms8wx8sd2x2lv8qs670s";
       type = "gem";
-      sha256 = "1ylvnpdn20nna488mkzpq3iy6gr866gmkiv090c7g5h88x1qws0b";
     };
+    version = "1.1.0";
   };
-  "multi_json" = {
-    version = "1.11.2";
+  molinillo = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19h1nks0x2ljwyijs2rd1f9sh05j8xqvjaqk1rslp5nyy6h4a758";
       type = "gem";
-      sha256 = "1rf3l4j3i11lybqzgq2jhszq7fh7gpmafjzd14ymp9cjfxqg596r";
     };
+    version = "0.5.7";
   };
-  "multipart-post" = {
-    version = "2.0.0";
+  multi_json = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1wpc23ls6v2xbk3l1qncsbz16npvmw8p0b38l8czdzri18mp51xk";
       type = "gem";
-      sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x";
     };
+    version = "1.12.1";
   };
-  "net-scp" = {
-    version = "1.2.1";
+  multipart-post = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x";
       type = "gem";
-      sha256 = "0b0jqrcsp4bbi4n4mzyf70cp2ysyp6x07j8k8cqgxnvb4i3a134j";
     };
-    dependencies = [
-      "net-ssh"
-    ];
+    version = "2.0.0";
   };
-  "net-ssh" = {
-    version = "3.0.2";
+  net-scp = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0b0jqrcsp4bbi4n4mzyf70cp2ysyp6x07j8k8cqgxnvb4i3a134j";
       type = "gem";
-      sha256 = "1k3hrgr899dlhkn53c4hnn5qzbhc7lwks0vaqgw95gg74hn1ivqw";
     };
+    version = "1.2.1";
   };
-  "net-ssh-gateway" = {
-    version = "1.2.0";
+  net-sftp = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04674g4n6mryjajlcd82af8g8k95la4b1bj712dh71hw1c9vhw1y";
       type = "gem";
-      sha256 = "1nqkj4wnj26r81rp3g4jqk7bkd2nqzjil3c9xqwchi0fsbwv2niy";
     };
-    dependencies = [
-      "net-ssh"
-    ];
+    version = "2.1.2";
   };
-  "net-ssh-multi" = {
-    version = "1.2.1";
+  net-ssh = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "013p5jb4wy0cq7x7036piw2a3s1i9p752ki1srx2m289mpz4ml3q";
       type = "gem";
-      sha256 = "13kxz9b6kgr9mcds44zpavbndxyi6pvyzyda6bhk1kfmb5c10m71";
     };
-    dependencies = [
-      "net-ssh"
-      "net-ssh-gateway"
-    ];
+    version = "4.1.0";
   };
-  "net-telnet" = {
-    version = "0.1.1";
+  net-ssh-gateway = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04ws9bvf3ppvcj9vrnwyabcwv4lz1m66ni443z2cf4wvvqssifsa";
       type = "gem";
-      sha256 = "13qxznpwmc3hs51b76wqx2w29r158gzzh8719kv2gpi56844c8fx";
     };
+    version = "1.3.0";
   };
-  "nio4r" = {
+  net-ssh-multi = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13kxz9b6kgr9mcds44zpavbndxyi6pvyzyda6bhk1kfmb5c10m71";
+      type = "gem";
+    };
     version = "1.2.1";
+  };
+  net-telnet = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13qxznpwmc3hs51b76wqx2w29r158gzzh8719kv2gpi56844c8fx";
       type = "gem";
-      sha256 = "1adnm77xfxck0mrvid5d7lwng783gh580rh3y18nq4bwdikr6nha";
     };
+    version = "0.1.1";
   };
-  "nokogiri" = {
-    version = "1.6.7.2";
+  nio4r = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ka4923544ckvc9bxd75van9y901cjxmsiq9h5is9j743bz71k1f";
       type = "gem";
-      sha256 = "11sbmpy60ynak6s3794q32lc99hs448msjy8rkp84ay7mq7zqspv";
     };
-    dependencies = [
-      "mini_portile2"
-    ];
+    version = "2.0.0";
   };
-  "nori" = {
-    version = "2.6.0";
+  nokogiri = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fhmgciw6pfckqgc0aq9kqpbvnakxwh1xf351c9x4xqcj9xjgn0y";
       type = "gem";
+    };
+    version = "1.7.1";
+  };
+  nori = {
+    source = {
+      remotes = ["https://rubygems.org"];
       sha256 = "066wc774a2zp4vrq3k7k8p0fhv30ymqmxma1jj7yg5735zls8agn";
+      type = "gem";
     };
+    version = "2.6.0";
   };
-  "octokit" = {
-    version = "4.3.0";
+  octokit = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0h6cm7bi0y7ysjgwws3paaipqdld6c0m0niazrjahhpz88qqq1g4";
       type = "gem";
-      sha256 = "1hq47ck0z03vr3rzblyszihn7x2m81gv35chwwx0vrhf17nd27np";
     };
-    dependencies = [
-      "sawyer"
-    ];
+    version = "4.7.0";
   };
-  "ohai" = {
-    version = "8.12.0";
+  ohai = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18bxqa2rh6y6v3pvimy9ffjzrqh7q1my4vd0l7bnsczv07d5gxns";
       type = "gem";
-      sha256 = "0l7vdfnfm4plla6q4qkngwpmy0ah53pnymlwfzc7iy6jn2n9ibpm";
     };
-    dependencies = [
-      "chef-config"
-      "ffi"
-      "ffi-yajl"
-      "ipaddress"
-      "mixlib-cli"
-      "mixlib-config"
-      "mixlib-log"
-      "mixlib-shellout"
-      "plist"
-      "rake"
-      "systemu"
-      "wmi-lite"
-    ];
+    version = "8.23.0";
   };
-  "paint" = {
+  paint = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1z1fqyyc2jiv6yabv467h652cxr2lmxl5gqqg7p14y28kdqf0nhj";
+      type = "gem";
+    };
     version = "1.0.1";
+  };
+  parallel = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1iyiyd6s2dy42mhqfnvq2f64h78w0jjwgnyha1kz7dnxavncdb7i";
       type = "gem";
-      sha256 = "1z1fqyyc2jiv6yabv467h652cxr2lmxl5gqqg7p14y28kdqf0nhj";
     };
+    version = "1.11.1";
   };
-  "parser" = {
-    version = "2.3.0.6";
+  parser = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "130rfk8a2ws2fyq52hmi1n0xakylw39wv4x1qhai4z17x2b0k9cq";
       type = "gem";
-      sha256 = "1r14k5jlsc5ivxjm1kljhk9sqp50rnd71n0mzx18hz135nvw1hbz";
     };
-    dependencies = [
-      "ast"
-    ];
+    version = "2.4.0.0";
   };
-  "plist" = {
-    version = "3.1.0";
+  parslet = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qp1m8n3m6k6g22nn1ivcfkvccq5jmbkw53vvcjw5xssq179l9z3";
       type = "gem";
-      sha256 = "0rh8nddwdya888j1f4wix3dfan1rlana3mc7mwrvafxir88a1qcs";
     };
+    version = "1.5.0";
   };
-  "polyglot" = {
-    version = "0.3.5";
+  plist = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1abhg9bcdk2v4liyf10mnww3ngvkmr7flbzzajwsg2z1pmax8g8b";
       type = "gem";
-      sha256 = "1bqnxwyip623d8pr29rg6m8r0hdg08fpr2yb74f46rn1wgsnxmjr";
     };
+    version = "3.2.0";
   };
-  "powerpack" = {
-    version = "0.1.1";
+  polyglot = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1bqnxwyip623d8pr29rg6m8r0hdg08fpr2yb74f46rn1wgsnxmjr";
       type = "gem";
+    };
+    version = "0.3.5";
+  };
+  powerpack = {
+    source = {
+      remotes = ["https://rubygems.org"];
       sha256 = "1fnn3fli5wkzyjl4ryh0k90316shqjfnhydmc7f8lqpi0q21va43";
+      type = "gem";
     };
+    version = "0.1.1";
   };
-  "proxifier" = {
+  proxifier = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1abzlg39cfji1nx3i8kmb5k3anr2rd392yg2icms24wkqz9g9zj0";
+      type = "gem";
+    };
     version = "1.0.3";
+  };
+  pry = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05xbzyin63aj2prrv8fbq2d5df2mid93m81hz5bvf2v4hnzs42ar";
       type = "gem";
-      sha256 = "1abzlg39cfji1nx3i8kmb5k3anr2rd392yg2icms24wkqz9g9zj0";
     };
+    version = "0.10.4";
   };
-  "pry" = {
-    version = "0.10.3";
+  public_suffix = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "040jf98jpp6w140ghkhw2hvc1qx41zvywx5gj7r2ylr1148qnj7q";
       type = "gem";
-      sha256 = "1x78rvp69ws37kwig18a8hr79qn36vh8g1fn75p485y3b3yiqszg";
     };
-    dependencies = [
-      "coderay"
-      "method_source"
-      "slop"
-    ];
+    version = "2.0.5";
   };
-  "r-train" = {
-    version = "0.10.3";
+  rack = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "053bqbrxr5gjw5k3rrmh6i35s83kgdycxv292lid072vpwrq1xv1";
       type = "gem";
-      sha256 = "1hn0aap2lq15p97mb91h32yfsw8rh4imhyjlbs4jx9x52h2q6nam";
     };
+    version = "2.0.1";
+  };
+  rainbow = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0frz90gyi5k26jx3ham1x661hpkxf82rkxb85nakcz70dna7i8ri";
+      type = "gem";
+    };
+    version = "2.2.1";
     dependencies = [
-      "docker-api"
-      "json"
-      "mixlib-shellout"
-      "net-scp"
-      "net-ssh"
-      "winrm"
-      "winrm-fs"
+      "rake"
     ];
   };
-  "rack" = {
-    version = "1.6.4";
+  rake = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01j8fc9bqjnrsxbppncai05h43315vmz9fwg28qdsgcjw9ck1d7n";
       type = "gem";
-      sha256 = "09bs295yq6csjnkzj7ncj50i6chfxrhmzg1pk6p0vd2lb9ac8pj5";
     };
+    version = "12.0.0";
   };
-  "rainbow" = {
-    version = "2.1.0";
+  retryable = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pxv5xgr08s9gv5npj7h3raxibywznrv2wcrb85ibhlhzgzcxggf";
       type = "gem";
-      sha256 = "11licivacvfqbjx2rwppi8z89qff2cgs67d4wyx42pc5fg7g9f00";
     };
+    version = "2.0.4";
   };
-  "rake" = {
-    version = "10.5.0";
+  ridley = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0y6dcbxmn74qg5psdjk9i751zryfwypf56rb458dkq6b7mwfxxwb";
       type = "gem";
-      sha256 = "0jcabbgnjc788chx31sihc5pgbqnlc1c75wakmqlbjdm8jns2m9b";
     };
+    version = "5.1.0";
   };
-  "retryable" = {
-    version = "2.0.3";
+  rspec = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "16g3mmih999f0b6vcz2c3qsc7ks5zy4lj1rzjh8hf6wk531nvc6s";
       type = "gem";
-      sha256 = "0lr3wasxwdyzr0bag179003hs2ycn9w86m450pazc81v19j4x1dq";
     };
+    version = "3.5.0";
   };
-  "ridley" = {
-    version = "4.5.0";
+  rspec-core = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nacs062qbr98fx6czf1vwppn1js956nv2c8vfwj6i65axdfs46i";
       type = "gem";
-      sha256 = "0y0p45y3xp37gg8ab132x4i0iggl3p907wfklhr5gb7r5yj6sj4r";
     };
-    dependencies = [
-      "addressable"
-      "buff-config"
-      "buff-extensions"
-      "buff-ignore"
-      "buff-shell_out"
-      "celluloid"
-      "celluloid-io"
-      "chef-config"
-      "erubis"
-      "faraday"
-      "hashie"
-      "httpclient"
-      "json"
-      "mixlib-authentication"
-      "retryable"
-      "semverse"
-      "varia_model"
-    ];
+    version = "3.5.4";
   };
-  "rspec" = {
-    version = "3.4.0";
+  rspec-expectations = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bbqfrb1x8gmwf8x2xhhwvvlhwbbafq4isbvlibxi6jk602f09gs";
       type = "gem";
-      sha256 = "12axhz2nj2m0dy350lxym76m36m1hq48hc59mf00z9dajbpnj78s";
     };
-    dependencies = [
-      "rspec-core"
-      "rspec-expectations"
-      "rspec-mocks"
-    ];
+    version = "3.5.0";
   };
-  "rspec-core" = {
-    version = "3.4.4";
+  rspec-its = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pwphny5jawcm1hda3vs9pjv1cybaxy17dc1s75qd7drrvx697p3";
       type = "gem";
-      sha256 = "1z2zmy3xaq00v20ykamqvnynzv2qrrnbixc6dn0jw1c5q9mqq9fp";
     };
-    dependencies = [
-      "rspec-support"
-    ];
+    version = "1.2.0";
   };
-  "rspec-expectations" = {
-    version = "3.4.0";
+  rspec-mocks = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nl3ksivh9wwrjjd47z5dggrwx40v6gpb3a0gzbp1gs06a5dmk24";
       type = "gem";
-      sha256 = "07pz570glwg87zpyagxxal0daa1jrnjkiksnn410s6846884fk8h";
     };
-    dependencies = [
-      "diff-lcs"
-      "rspec-support"
-    ];
+    version = "3.5.0";
   };
-  "rspec-its" = {
-    version = "1.2.0";
+  rspec-support = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10vf3k3d472y573mag2kzfsfrf6rv355s13kadnpryk8d36yq5r0";
       type = "gem";
-      sha256 = "1pwphny5jawcm1hda3vs9pjv1cybaxy17dc1s75qd7drrvx697p3";
     };
-    dependencies = [
-      "rspec-core"
-      "rspec-expectations"
-    ];
+    version = "3.5.0";
   };
-  "rspec-mocks" = {
-    version = "3.4.1";
+  rspec_junit_formatter = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hphl8iggqh1mpbbv0avf8735x6jgry5wmkqyzgv1zwnimvja1ai";
       type = "gem";
-      sha256 = "0sk8ijq5d6bwhvjq94gfm02fssxkm99bgpasqazsmmll5m1cn7vr";
     };
-    dependencies = [
-      "diff-lcs"
-      "rspec-support"
-    ];
+    version = "0.2.3";
   };
-  "rspec-support" = {
-    version = "3.4.1";
+  rubocop = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mzv23i11hqwpxh4srvhm8dpzvnk90y46xdfd1fc1g9s054nnbq0";
       type = "gem";
-      sha256 = "0l6zzlf22hn3pcwnxswsjsiwhqjg7a8mhvm680k5vq98307bkikr";
     };
+    version = "0.48.1";
   };
-  "rspec_junit_formatter" = {
-    version = "0.2.3";
+  ruby-progressbar = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qzc7s7r21bd7ah06kskajc2bjzkr9y0v5q48y0xwh2l55axgplm";
       type = "gem";
-      sha256 = "0hphl8iggqh1mpbbv0avf8735x6jgry5wmkqyzgv1zwnimvja1ai";
     };
-    dependencies = [
-      "builder"
-      "rspec-core"
-    ];
+    version = "1.8.1";
   };
-  "rubocop" = {
-    version = "0.38.0";
+  rubyntlm = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nfl35b2lgc4p3bgl6vmhsisap8h7p0rrb4b20gahji7s4m93bbk";
       type = "gem";
-      sha256 = "0qgwq558n41z2id7nwc3bh7z8h9yh7c9zdasqn8p30p0p72f5520";
     };
-    dependencies = [
-      "parser"
-      "powerpack"
-      "rainbow"
-      "ruby-progressbar"
-      "unicode-display_width"
-    ];
+    version = "0.6.1";
   };
-  "ruby-progressbar" = {
-    version = "1.7.5";
+  rubyzip = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06js4gznzgh8ac2ldvmjcmg9v1vg9llm357yckkpylaj6z456zqz";
       type = "gem";
-      sha256 = "0hynaavnqzld17qdx9r7hfw00y16ybldwq730zrqfszjwgi59ivi";
     };
+    version = "1.2.1";
   };
-  "rubyntlm" = {
-    version = "0.6.0";
+  rufus-lru = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sp7ymz054md75fnn2hx5d2axmhrh0abbn8c2p759j4g4lxn11ip";
       type = "gem";
-      sha256 = "00k1cll10mcyg6qpdzyrazm5pjbpj7wq54ki2y8vxz86842vbsgp";
     };
+    version = "1.1.0";
   };
-  "rubyzip" = {
-    version = "1.2.0";
+  safe_yaml = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
       type = "gem";
-      sha256 = "10a9p1m68lpn8pwqp972lv61140flvahm3g9yzbxzjks2z3qlb2s";
     };
+    version = "1.0.4";
   };
-  "rufus-lru" = {
-    version = "1.0.5";
+  sawyer = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sv1463r7bqzvx4drqdmd36m7rrv6sf1v3c6vswpnq3k6vdw2dvd";
       type = "gem";
-      sha256 = "1vrsbvcsl7yspzb761p2gbl7dwz0d1j82msbjsksf8hi4cv970s5";
     };
+    version = "0.8.1";
   };
-  "safe_yaml" = {
-    version = "1.0.4";
+  semverse = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1cf6iv5wgwb7b8jf7il751223k9yahz9aym06s9r0prda5mwddyy";
       type = "gem";
-      sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
     };
+    version = "2.0.0";
   };
-  "sawyer" = {
-    version = "0.7.0";
+  serverspec = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1j8fvjzmkcri83p0hiyfdypgbc616w2r0nr6rsi1696cd4nppknp";
       type = "gem";
-      sha256 = "1cn48ql00mf1ag9icmfpj7g7swh7mdn7992ggynjqbw1gh15bs3j";
     };
-    dependencies = [
-      "addressable"
-      "faraday"
-    ];
+    version = "2.38.0";
   };
-  "semverse" = {
-    version = "1.2.1";
+  sfl = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qm4hvhq9pszi9zs1cl9qgwx1n4wxq0af0hq9sbf6qihqd8rwwwr";
       type = "gem";
-      sha256 = "0s47lprqwmlhnxm3anrhvd3559g51hgrcqn3mq0fy696zkv8vfd8";
     };
+    version = "2.3";
   };
-  "serverspec" = {
-    version = "2.31.0";
+  slop = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00w8g3j7k7kl8ri2cf1m58ckxk8rn350gp4chfscmgv6pq1spk3n";
       type = "gem";
-      sha256 = "169mh6s4drxy9qs7f01gqcaq1qfkvy9hdc1ny3lnk0aiwfcm2s1p";
     };
-    dependencies = [
-      "multi_json"
-      "rspec"
-      "rspec-its"
-      "specinfra"
-    ];
+    version = "3.6.0";
   };
-  "sfl" = {
-    version = "2.2";
+  solve = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bbzny2bl94mv1xwcfrxbi3fjhxxawlz6la7mip2wwz9kkaf376h";
       type = "gem";
-      sha256 = "0aq7ykbyvx8mx4szkcgp09zs094fg60l2pzxscmxqrgqk9yvyg1j";
     };
+    version = "3.1.0";
   };
-  "slop" = {
-    version = "3.6.0";
+  specinfra = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0gdbkqr82p7s0aq0sixsahapijccs8qswssfmsb76hi40xb2s3sg";
       type = "gem";
-      sha256 = "00w8g3j7k7kl8ri2cf1m58ckxk8rn350gp4chfscmgv6pq1spk3n";
     };
+    version = "2.67.7";
   };
-  "solve" = {
-    version = "2.0.2";
+  sslshake = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1sm0vxh9ryywsl9iqj8kkwpykh8xrr2fmlv5ysm9jjgwmdpslfvl";
       type = "gem";
-      sha256 = "0mwdd6z3vbzna9vphnkgdghy40xawn0yiwhamvb6spfk6n2c80kb";
     };
-    dependencies = [
-      "molinillo"
-      "semverse"
-    ];
+    version = "1.1.0";
   };
-  "specinfra" = {
-    version = "2.53.1";
+  syslog-logger = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14y20phq1khdla4z9wvf98k7j3x6n0rjgs4f7vb0xlf7h53g6hbm";
       type = "gem";
-      sha256 = "17jbrn7nm6c72qy1nw064c0yi9cimd295s7j6x9bm878cbyq9i6i";
     };
-    dependencies = [
-      "net-scp"
-      "net-ssh"
-      "net-telnet"
-      "sfl"
-    ];
-  };
-  "syslog-logger" = {
     version = "1.6.8";
+  };
+  systemu = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0gmkbakhfci5wnmbfx5i54f25j9zsvbw858yg3jjhfs5n4ad1xq1";
       type = "gem";
-      sha256 = "14y20phq1khdla4z9wvf98k7j3x6n0rjgs4f7vb0xlf7h53g6hbm";
     };
-  };
-  "systemu" = {
     version = "2.6.5";
+  };
+  test-kitchen = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mg13w1xi36r7vsbdwf7cb06s2j1p2hig144r0hzqwi599w5l9hr";
       type = "gem";
-      sha256 = "0gmkbakhfci5wnmbfx5i54f25j9zsvbw858yg3jjhfs5n4ad1xq1";
     };
+    version = "1.16.0";
   };
-  "test-kitchen" = {
-    version = "1.6.0";
+  thor = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08p5gx18yrbnwc6xc0mxvsfaxzgy2y9i78xq7ds0qmdm67q39y4z";
       type = "gem";
-      sha256 = "1glmvjm24fmlbhm8q4lzi1ynds77ip3s4s5q6fdjlhdanh6jrgwz";
     };
-    dependencies = [
-      "mixlib-install"
-      "mixlib-shellout"
-      "net-scp"
-      "net-ssh"
-      "safe_yaml"
-      "thor"
-    ];
-  };
-  "thor" = {
     version = "0.19.1";
+  };
+  timers = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jx4wb0x182gmbcs90vz0wzfyp8afi1mpl9w5ippfncyk4kffvrz";
       type = "gem";
-      sha256 = "08p5gx18yrbnwc6xc0mxvsfaxzgy2y9i78xq7ds0qmdm67q39y4z";
     };
-  };
-  "timers" = {
     version = "4.0.4";
+  };
+  toml = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1wnvi1g8id1sg6776fvzf98lhfbscchgiy1fp5pvd58a8ds2fq9v";
       type = "gem";
-      sha256 = "1jx4wb0x182gmbcs90vz0wzfyp8afi1mpl9w5ippfncyk4kffvrz";
     };
-    dependencies = [
-      "hitimes"
-    ];
+    version = "0.1.2";
   };
-  "treetop" = {
-    version = "1.6.5";
+  train = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1dglwr6kirqn9k7am4gszvgkpndvyqydlfgmwjwikvpsvf8rxgrl";
       type = "gem";
-      sha256 = "1lg7j8xf8yxmnz1v8zkwhs4l6j30kq2pxvvrvpah2frlaqz077dh";
     };
-    dependencies = [
-      "polyglot"
-    ];
+    version = "0.23.0";
   };
-  "unicode-display_width" = {
-    version = "1.0.2";
+  treetop = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1kx3qqdbdk5sy44cyinfx2jxr4w9z3qb17f7wicqa2kshbrvnp1q";
       type = "gem";
-      sha256 = "1cffs73zrn788dyd1vv91p0mcxgx2g1sis6552ggmfib3f148gbi";
     };
+    version = "1.6.8";
   };
-  "uuidtools" = {
-    version = "2.1.5";
+  unicode-display_width = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1r28mxyi0zwby24wyn1szj5hcnv67066wkv14wyzsc94bf04fqhx";
       type = "gem";
+    };
+    version = "1.1.3";
+  };
+  uuidtools = {
+    source = {
+      remotes = ["https://rubygems.org"];
       sha256 = "0zjvq1jrrnzj69ylmz1xcr30skf9ymmvjmdwbvscncd7zkr8av5g";
+      type = "gem";
     };
+    version = "2.1.5";
   };
-  "varia_model" = {
-    version = "0.4.1";
+  varia_model = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kgj37rc3yia4pr5pma0psgar6xjk064qdfii3nwr6dj1v73cyxz";
       type = "gem";
-      sha256 = "1qm9fhizfry055yras9g1129lfd48fxg4lh0hck8h8cvjdjz1i62";
     };
-    dependencies = [
-      "buff-extensions"
-      "hashie"
-    ];
+    version = "0.6.0";
   };
-  "winrm" = {
-    version = "1.7.2";
+  winrm = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xf36sf2cgangij9maphprzhznv4w50arnwrik5jdnmfxc8lqfmh";
       type = "gem";
-      sha256 = "1as865gd6f0g0hppw8plki1i4afpn6lcx89sgi52v1mlgwxfifff";
     };
-    dependencies = [
-      "builder"
-      "gssapi"
-      "gyoku"
-      "httpclient"
-      "logging"
-      "nori"
-      "rubyntlm"
-    ];
+    version = "2.2.1";
   };
-  "winrm-fs" = {
-    version = "0.3.2";
+  winrm-elevated = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04krbwnj4cw7jy42w3n2y5kp2fbcp3v9mbf59pdhfk1py18bswcr";
       type = "gem";
-      sha256 = "08j2ip9wx1vcx45kd9ws6lb6znfq9gib1n2j7shzs10rxwgs1bj8";
     };
-    dependencies = [
-      "erubis"
-      "logging"
-      "rubyzip"
-      "winrm"
-    ];
+    version = "1.1.0";
   };
-  "wmi-lite" = {
-    version = "1.0.0";
+  winrm-fs = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p9kv5hj57krlrh20ykq8pz4i911r30mbl57n6mc6hfba2zfl7j8";
       type = "gem";
+    };
+    version = "1.0.1";
+  };
+  wmi-lite = {
+    source = {
+      remotes = ["https://rubygems.org"];
       sha256 = "06pm7jr2gcnphhhswha2kqw0vhxy91i68942s7gqriadbc8pq9z3";
+      type = "gem";
     };
+    version = "1.0.0";
   };
-  "yajl-ruby" = {
-    version = "1.2.1";
+  yajl-ruby = {
     source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sah2lpvpsh555dcnhgcqylinjj5544md9dh1a0a13da0qv1p57i";
       type = "gem";
-      sha256 = "0zvvb7i1bl98k3zkdrnx9vasq0rp2cyy5n7p9804dqs4fz9xh9vf";
     };
+    version = "1.3.0";
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/tools/compile-daemon/default.nix b/pkgs/development/tools/compile-daemon/default.nix
new file mode 100644
index 00000000000..bad35e2422b
--- /dev/null
+++ b/pkgs/development/tools/compile-daemon/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "compile-daemon-unstable-${version}";
+  version = "2017-03-08";
+  rev = "d447e567232bcb84cedd3b2be012c7127f31f469";
+
+  goPackagePath = "github.com/githubnemo/CompileDaemon";
+
+  src = fetchFromGitHub {
+    owner = "githubnemo";
+    repo = "CompileDaemon";
+    inherit rev;
+    sha256 = "0jfbipp3gd89n6d7gds1qvfkqvz80qdlqqhijxffh8z8ss0xinqc";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with stdenv.lib; {
+    description = "Very simple compile daemon for Go";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ profpatsch ];
+    inherit (src.meta) homepage;
+  };
+}
diff --git a/pkgs/development/tools/compile-daemon/deps.nix b/pkgs/development/tools/compile-daemon/deps.nix
new file mode 100644
index 00000000000..53771ddad9f
--- /dev/null
+++ b/pkgs/development/tools/compile-daemon/deps.nix
@@ -0,0 +1,48 @@
+# This file was generated by https://github.com/kamilchm/go2nix v1.2.0-devel
+[
+  {
+    goPackagePath = "github.com/fatih/color";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/color";
+      rev = "9131ab34cf20d2f6d83fdc67168a5430d1c7dc23";
+      sha256 = "111x6rhpxfjhwkjrmrirqqh6nc68q5g7air9fl5kgr3bg85hybr5";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "a392f450ea64cee2b268dfaacdc2502b50a22b18";
+      sha256 = "1msiq5nb1sdhwfjv65hjnvr2s4pfsp8mv6f5z8aa8n9bjf0cksyc";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "57fdcb988a5c543893cc61bce354a6e24ab70022";
+      sha256 = "1fkhmi3nhz6vasfvjzjjwxkbpwsb9hzc0g5h1rygqrnzjykl2r39";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "99f16d856c9836c42d24e7ab64ea72916925fa97";
+      sha256 = "0g2x5krfhnraq03v0b48y3xv3ffg92pbgvps0npj9l7wq8q9hkmx";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/fsnotify.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/fsnotify.v1";
+      rev = "629574ca2a5df945712d3079857300b5e4da0236";
+      sha256 = "06wfg1mmzjj04z7d0q1x2fai9k6hm957brngsaf02fa9a3qqanv3";
+    };
+  }
+]
diff --git a/pkgs/development/tools/continuous-integration/jenkins/default.nix b/pkgs/development/tools/continuous-integration/jenkins/default.nix
index 7b42e587752..5a0cb4911e1 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.49";
+  version = "2.53";
 
   src = fetchurl {
     url = "http://mirrors.jenkins-ci.org/war/${version}/jenkins.war";
-    sha256 = "0c7qnrx87wrgxgh4im1i6sqlxq3hsrs119krh5vwjzx5wp6daa93";
+    sha256 = "16lgwgp4n161j4vjwkzzdz4v2d6vv62rrqmcfmb6zalyvp6wpj9r";
   };
 
   buildCommand = ''
diff --git a/pkgs/development/tools/coursier/default.nix b/pkgs/development/tools/coursier/default.nix
index 7a2b3e8e1d9..483905f5f2e 100644
--- a/pkgs/development/tools/coursier/default.nix
+++ b/pkgs/development/tools/coursier/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, makeWrapper, jre }:
 
 stdenv.mkDerivation rec {
-  name    = "coursier-${version}";
-  version = "1.0.0-M15-5";
+  name = "coursier-${version}";
+  version = "1.0.0-RC1";
 
   src = fetchurl {
-    url    = "https://github.com/coursier/coursier/raw/v${version}/coursier";
-    sha256 = "610c5fc08d0137c5270cefd14623120ab10cd81b9f48e43093893ac8d00484c9";
+    url = "https://github.com/coursier/coursier/raw/v${version}/coursier";
+    sha256 = "0dxwhqp7m7nmal8wn4chlmyvhdh6v3ja0nfz9x952kacf2vpnqw3";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -21,9 +21,9 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage    = http://get-coursier.io/;
+    homepage = http://get-coursier.io/;
     description = "A Scala library to fetch dependencies from Maven / Ivy repositories";
-    license     = licenses.asl20;
+    license = licenses.asl20;
     maintainers = with maintainers; [ adelbertc nequissimus ];
   };
 }
diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix
index 3d5c23678db..f2db32c5eec 100644
--- a/pkgs/development/tools/electron/default.nix
+++ b/pkgs/development/tools/electron/default.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, libXScrnSaver, makeWrapper, fetchurl, unzip, atomEnv }:
 
 let
-  version = "1.4.15";
+  version = "1.6.2";
   name = "electron-${version}";
 
   meta = with stdenv.lib; {
@@ -17,7 +17,7 @@ let
 
     src = fetchurl {
       url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-x64.zip";
-      sha256 = "07b9jdbjrf3siv205wd1dphq6ly0hkaapzvj87d2yjfiyzv3cbsl";
+      sha256 = "1dhyr8zkisnhjzk2v2zi8zp0jqg0v3g095xa430af6i1rm0qhs13";
       name = "${name}.zip";
     };
 
@@ -45,7 +45,7 @@ let
 
     src = fetchurl {
       url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-darwin-x64.zip";
-      sha256 = "0p8gkyq4qczzia26wrnbs91vdqzxhgq515cmsrwvhw87mc9fka4k";
+      sha256 = "11jfh4xvdrpda5ni08kl6wcg67ww9viagszk8gi00z0rlczrsbkf";
       name = "${name}.zip";
     };
 
diff --git a/pkgs/development/tools/godot/default.nix b/pkgs/development/tools/godot/default.nix
index 7ebbc1b88e3..a2ff8410889 100644
--- a/pkgs/development/tools/godot/default.nix
+++ b/pkgs/development/tools/godot/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchFromGitHub, gcc, scons, pkgconfig, libX11, libXcursor
 , libXinerama, libXrandr, libXrender, freetype, openssl, alsaLib
-, libpulseaudio, mesa, mesa_glu, zlib }:
+, libpulseaudio, mesa_glu, zlib }:
 
 stdenv.mkDerivation rec {
   name    = "godot-${version}";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     gcc scons pkgconfig libX11 libXcursor libXinerama libXrandr libXrender
-    freetype openssl alsaLib libpulseaudio mesa mesa_glu zlib
+    freetype openssl alsaLib libpulseaudio mesa_glu zlib
   ];
 
   patches = [ ./pkg_config_additions.patch ];
diff --git a/pkgs/development/tools/misc/arm-frc-linux-gnueabi-binutils/default.nix b/pkgs/development/tools/misc/arm-frc-linux-gnueabi-binutils/default.nix
new file mode 100755
index 00000000000..4e3ad7ab8b0
--- /dev/null
+++ b/pkgs/development/tools/misc/arm-frc-linux-gnueabi-binutils/default.nix
@@ -0,0 +1,50 @@
+{stdenv, fetchurl, glibc, bison, arm-frc-linux-gnueabi-eglibc}:
+
+stdenv.mkDerivation rec {
+  _target = "arm-frc-linux-gnueabi";
+
+  version = "2.28";
+  name = "${_target}-binutils-${version}";
+
+  src = fetchurl {
+    url = "ftp://ftp.gnu.org/gnu/binutils/binutils-${version}.tar.bz2";
+    sha256 = "369737ce51587f92466041a97ab7d2358c6d9e1b6490b3940eb09fb0a9a6ac88";
+  };
+
+  nativeBuildInputs = [ bison arm-frc-linux-gnueabi-eglibc ];
+  buildInputs = [ glibc ];
+
+  configureFlags = ''
+    --target=${_target}
+    --with-pkgversion='GNU-Binutils-for-FRC'
+    --with-sysroot=$out/${_target}
+    --with-build-sysroot=/$out/${_target}
+    --disable-multilib
+    --disable-nls
+    --enable-lto
+    --disable-libiberty-install
+    --enable-ld
+    --enable-gold=default
+    --enable-plugins
+  '';
+
+  postConfigure = ''
+    make configure-host
+  '';
+
+  postInstall = ''
+    rm -rf $out/share/info
+  '';
+
+  meta = {
+    description = "FRC binutils";
+    longDescription = ''
+      binutils used to build arm-frc-linux-gnueabi and user programs.
+    '';
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = [ stdenv.lib.maintainers.colescott ];
+    platforms = stdenv.lib.platforms.linux;
+
+    priority = 3;
+  };
+}
diff --git a/pkgs/development/tools/misc/cwebbin/default.nix b/pkgs/development/tools/misc/cwebbin/default.nix
index 75a06291b02..a952475b967 100644
--- a/pkgs/development/tools/misc/cwebbin/default.nix
+++ b/pkgs/development/tools/misc/cwebbin/default.nix
@@ -7,12 +7,12 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "ascherer";
     repo = "cwebbin";
-    rev = name;
+    rev = "2016-05-20-22p";
     sha256 = "0zf93016hm9i74i2v384rwzcw16y3hg5vc2mibzkx1rzvqa50yfr";
   };
 
   cweb = fetchurl {
-    url = https://www.ctan.org/tex-archive/web/c_cpp/cweb/cweb.tar.gz;
+    url = https://www.ctan.org/tex-archive/web/c_cpp/cweb/cweb-3.64ah.tgz;
     sha256 = "1hdzxfzaibnjxjzgp6d2zay8nsarnfy9hfq55hz1bxzzl23n35aj";
   };
 
@@ -27,6 +27,7 @@ stdenv.mkDerivation rec {
     "CP=cp"
     "RM=rm"
     "PDFTEX=echo"
+    "CC=c++"
   ];
 
   buildPhase = ''
diff --git a/pkgs/development/tools/misc/hydra/default.nix b/pkgs/development/tools/misc/hydra/default.nix
index 4b0768af1e2..1e04a10eccd 100644
--- a/pkgs/development/tools/misc/hydra/default.nix
+++ b/pkgs/development/tools/misc/hydra/default.nix
@@ -55,6 +55,7 @@ let
         TextTable
         XMLSimple
         nixUnstable
+        nixUnstable.perl-bindings
         git
         boehmgc
       ];
diff --git a/pkgs/development/tools/misc/icon-naming-utils/default.nix b/pkgs/development/tools/misc/icon-naming-utils/default.nix
index 7f8dafad4af..37bc73172da 100644
--- a/pkgs/development/tools/misc/icon-naming-utils/default.nix
+++ b/pkgs/development/tools/misc/icon-naming-utils/default.nix
@@ -19,6 +19,6 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = http://tango.freedesktop.org/Standard_Icon_Naming_Specification;
-    platforms = platforms.linux;
+    platforms = with platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/development/tools/misc/intel-gpu-tools/default.nix b/pkgs/development/tools/misc/intel-gpu-tools/default.nix
index e7520091d1d..f644160b9a3 100644
--- a/pkgs/development/tools/misc/intel-gpu-tools/default.nix
+++ b/pkgs/development/tools/misc/intel-gpu-tools/default.nix
@@ -1,21 +1,22 @@
 { stdenv, fetchurl, pkgconfig, libdrm, libpciaccess, cairo, dri2proto, udev
 , libX11, libXext, libXv, libXrandr, glib, bison, libunwind, python3, kmod
-, procps }:
+, procps, autoconf, automake }:
 
 stdenv.mkDerivation rec {
-  name = "intel-gpu-tools-1.17";
+  name = "intel-gpu-tools-1.18";
 
   src = fetchurl {
     url = "http://xorg.freedesktop.org/archive/individual/app/${name}.tar.bz2";
-    sha256 = "06pvmbsbff4bsi67n6x3jjngzy2llf8bplc75447ra1fwphc9jx6";
+    sha256 = "1vp4czxp8xa6qk4pg3mrxhc2yadw2rv6p8r8247mkpcbb8dzjxyz";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig autoconf automake ];
   buildInputs = [ libdrm libpciaccess cairo dri2proto udev libX11 kmod
     libXext libXv libXrandr glib bison libunwind python3 procps ];
 
   preBuild = ''
     patchShebangs debugger/system_routine/pre_cpp.py
+    substituteInPlace tools/Makefile.am --replace '$(CAIRO_CFLAGS)' '$(CAIRO_CFLAGS) $(GLIB_CFLAGS)'
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/misc/pkgconfig/default.nix b/pkgs/development/tools/misc/pkgconfig/default.nix
index d0e63469987..10358df69c2 100644
--- a/pkgs/development/tools/misc/pkgconfig/default.nix
+++ b/pkgs/development/tools/misc/pkgconfig/default.nix
@@ -1,10 +1,9 @@
 {stdenv, fetchurl, automake, libiconv, vanilla ? false }:
 
-let
-  inherit (stdenv.lib) optional;
-in
+with stdenv.lib;
+
 stdenv.mkDerivation rec {
-  name = "pkg-config-0.29";
+  name = "pkg-config-0.29.2";
 
   setupHook = ./setup-hook.sh;
 
@@ -13,26 +12,26 @@ stdenv.mkDerivation rec {
       "https://pkgconfig.freedesktop.org/releases/${name}.tar.gz"
       "http://fossies.org/linux/misc/${name}.tar.gz"
     ];
-    sha256 = "0sq09a39wj4cxf8l2jvkq067g08ywfma4v6nhprnf351s82pfl68";
+    sha256 = "14fmwzki1rlz8bs2p810lk6jqdxsk966d8drgsjmi54cd00rrikg";
   };
     # Process Requires.private properly, see
     # http://bugs.freedesktop.org/show_bug.cgi?id=4738.
   patches = optional (!vanilla) ./requires-private.patch
     ++ optional stdenv.isCygwin ./2.36.3-not-win32.patch;
 
-  preConfigure = stdenv.lib.optionalString (stdenv.system == "mips64el-linux")
+  preConfigure = optionalString (stdenv.system == "mips64el-linux")
     ''cp -v ${automake}/share/automake*/config.{sub,guess} .'';
-  buildInputs = stdenv.lib.optional (stdenv.isCygwin || stdenv.isDarwin || stdenv.isSunOS) libiconv;
+  buildInputs = optional (stdenv.isCygwin || stdenv.isDarwin || stdenv.isSunOS) libiconv;
 
   configureFlags = [ "--with-internal-glib" ]
-    ++ stdenv.lib.optional (stdenv.isSunOS) [ "--with-libiconv=gnu" "--with-system-library-path" "--with-system-include-path" "CFLAGS=-DENABLE_NLS" ];
+    ++ optional (stdenv.isSunOS) [ "--with-libiconv=gnu" "--with-system-library-path" "--with-system-include-path" "CFLAGS=-DENABLE_NLS" ];
 
   postInstall = ''rm "$out"/bin/*-pkg-config''; # clean the duplicate file
 
   meta = {
     description = "A tool that allows packages to find out information about other packages";
     homepage = http://pkg-config.freedesktop.org/wiki/;
-    platforms = stdenv.lib.platforms.all;
+    platforms = platforms.all;
   };
 
 }
diff --git a/pkgs/development/tools/misc/pmccabe/default.nix b/pkgs/development/tools/misc/pmccabe/default.nix
index 77066cfc8e1..fbb21a8b7c6 100644
--- a/pkgs/development/tools/misc/pmccabe/default.nix
+++ b/pkgs/development/tools/misc/pmccabe/default.nix
@@ -9,6 +9,10 @@ stdenv.mkDerivation rec {
     sha256 = "0a3h1b9fb87c82d5fbql5lc4gp338pa5s9i66dhw7zk8jdygx474";
   };
 
+  patches = [
+    ./getopt_on_darwin.patch
+  ];
+
   configurePhase = ''
     sed -i -r Makefile \
       -e 's,/usr/,/,g' \
@@ -38,7 +42,7 @@ stdenv.mkDerivation rec {
       trees or files; and vifn, to invoke vi given a function name rather
       than a file name.
     '';
-    platforms = platforms.linux;
     maintainers = with maintainers; [ peterhoeg ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/tools/misc/pmccabe/getopt_on_darwin.patch b/pkgs/development/tools/misc/pmccabe/getopt_on_darwin.patch
new file mode 100644
index 00000000000..534d6c1d6ef
--- /dev/null
+++ b/pkgs/development/tools/misc/pmccabe/getopt_on_darwin.patch
@@ -0,0 +1,15 @@
+diff --git a/decomment.c b/decomment.c
+index 400707a..aea29fd 100644
+--- a/decomment.c
++++ b/decomment.c
+@@ -11,6 +11,10 @@
+ #include "getopt.h"
+ #endif
+ 
++#ifdef __APPLE__
++#include "getopt.h"
++#endif
++
+ #ifdef NEED_OPTIND
+ extern int optind;
+ #endif
diff --git a/pkgs/development/tools/misc/strace/default.nix b/pkgs/development/tools/misc/strace/default.nix
index d0e05dd35f8..ab5934ed58c 100644
--- a/pkgs/development/tools/misc/strace/default.nix
+++ b/pkgs/development/tools/misc/strace/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "strace-${version}";
-  version = "4.15";
+  version = "4.16";
 
   src = fetchurl {
     url = "mirror://sourceforge/strace/${name}.tar.xz";
-    sha256 = "1a9wb2nzfqgwazd0yrlbk48awlfn898n1bdayvdxj7qlssac1kf0";
+    sha256 = "1vzhmpcy989i4k12q4cc438yal2ghhm6x7ychscjbhcf2yspqj4q";
   };
 
   nativeBuildInputs = [ perl ];
diff --git a/pkgs/development/tools/ocaml/jbuilder/default.nix b/pkgs/development/tools/ocaml/jbuilder/default.nix
index 3fa0c2685ee..f1bf5e33a61 100644
--- a/pkgs/development/tools/ocaml/jbuilder/default.nix
+++ b/pkgs/development/tools/ocaml/jbuilder/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchzip, ocaml, opam }:
 
 stdenv.mkDerivation {
-  name = "jbuilder-1.0+beta5";
+  name = "jbuilder-1.0+beta7";
   src = fetchzip {
-    url = http://github.com/janestreet/jbuilder/archive/1.0+beta5.tar.gz;
-    sha256 = "00kh83n3216g1n7rhh14mcmw9bj5vzq7kiixm1abrc09dhwh4m7a";
+    url = http://github.com/janestreet/jbuilder/archive/1.0+beta7.tar.gz;
+    sha256 = "10qjqs6gv9y8s580gvssjm56xw72pcxd5lkpzqpz6cz4390d45i8";
   };
 
   buildInputs = [ ocaml ];
diff --git a/pkgs/development/tools/pypi2nix/default.nix b/pkgs/development/tools/pypi2nix/default.nix
index 1e6b6690e71..e6c2467bc8a 100644
--- a/pkgs/development/tools/pypi2nix/default.nix
+++ b/pkgs/development/tools/pypi2nix/default.nix
@@ -1,23 +1,24 @@
-{ stdenv, fetchurl, python, zip, makeWrapper, nix, nix-prefetch-scripts
+{ stdenv, fetchurl, pythonPackages, zip, makeWrapper, nix, nix-prefetch-git
+, nix-prefetch-hg
 }:
 
 let
 
-  version = "1.6.0";
+  version = "1.8.0";
 
   src = fetchurl {
     url = "https://github.com/garbas/pypi2nix/archive/v${version}.tar.gz";
-    sha256 = "08iad1ad2gnvsnd66ddw3lff19ms2yly4iq63c8800j603d0pdhn";
+    sha256 = "133sjx8r1jdb5gi3caawa9m7v496jv4id2c3zqnx8hria22425za";
   };
 
   click = fetchurl {
-    url = "https://pypi.python.org/packages/7a/00/c14926d8232b36b08218067bcd5853caefb4737cda3f0a47437151344792/click-6.6.tar.gz";
-    sha256 = "1sggipyz52crrybwbr9xvwxd4aqigvplf53k9w3ygxmzivd1jsnc";
+    url = "https://pypi.python.org/packages/95/d9/c3336b6b5711c3ab9d1d3a80f1a3e2afeb9d8c02a7166462f6cc96570897/click-6.7.tar.gz";
+    sha256 = "02qkfpykbq35id8glfgwc38yc430427yd05z1wc5cnld8zgicmgi";
   };
 
   requests = fetchurl {
-    url = "https://pypi.python.org/packages/5b/0b/34be574b1ec997247796e5d516f3a6b6509c4e064f2885a96ed885ce7579/requests-2.12.4.tar.gz";
-    sha256 = "0d5fwxmw4ibynk3imph3n4n84m0n3ib1vj339fxhkqri0qd4767d";
+    url = "https://pypi.python.org/packages/16/09/37b69de7c924d318e51ece1c4ceb679bf93be9d05973bb30c35babd596e2/requests-2.13.0.tar.gz";
+    sha256 = "1s0wg4any4dsv5l3hqjxqk2zgb7pdbqhy9rhc8kh3aigfq4ws8jp";
   };
 
 in stdenv.mkDerivation rec {
@@ -27,7 +28,11 @@ in stdenv.mkDerivation rec {
     click
     requests
   ];
-  buildInputs = [ python zip makeWrapper nix.out nix-prefetch-scripts ];
+  buildInputs = [
+    pythonPackages.python pythonPackages.flake8
+    zip makeWrapper nix.out nix-prefetch-git nix-prefetch-hg
+  ];
+
   sourceRoot = ".";
 
   postUnpack = ''
@@ -47,13 +52,14 @@ in stdenv.mkDerivation rec {
 
   patchPhase = ''
     sed -i -e "s|default='nix-shell',|default='${nix.out}/bin/nix-shell',|" $out/pkgs/pypi2nix/cli.py
-    sed -i -e "s|nix-prefetch-git|${nix-prefetch-scripts}/bin/nix-prefetch-git|" $out/pkgs/pypi2nix/stage2.py
+    sed -i -e "s|nix-prefetch-git|${nix-prefetch-git}/bin/nix-prefetch-git|" $out/pkgs/pypi2nix/stage2.py
+    sed -i -e "s|nix-prefetch-hg|${nix-prefetch-hg}/bin/nix-prefetch-hg|" $out/pkgs/pypi2nix/stage2.py
   '';
 
   commonPhase = ''
     mkdir -p $out/bin
 
-    echo "#!${python.interpreter}" >  $out/bin/pypi2nix
+    echo "#!${pythonPackages.python.interpreter}" >  $out/bin/pypi2nix
     echo "import pypi2nix.cli" >> $out/bin/pypi2nix
     echo "pypi2nix.cli.main()" >> $out/bin/pypi2nix
 
@@ -62,8 +68,16 @@ in stdenv.mkDerivation rec {
     export PYTHONPATH=$out/pkgs:$PYTHONPATH
   '';
 
+  # flake8 doesn't run on python3
+  doCheck = false;
+  checkPhase = ''
+    flake8 ${src}/src
+  '';
+
   installPhase = commonPhase + ''
-    wrapProgram $out/bin/pypi2nix --prefix PYTHONPATH : "$PYTHONPATH"
+    wrapProgram $out/bin/pypi2nix \
+        --prefix PYTHONPATH : "$PYTHONPATH" \
+        --prefix PATH : "${nix-prefetch-git}/bin:${nix-prefetch-hg}/bin"
   '';
 
   shellHook = ''
diff --git a/pkgs/development/tools/rq/default.nix b/pkgs/development/tools/rq/default.nix
index b383812d321..eef8b660c41 100644
--- a/pkgs/development/tools/rq/default.nix
+++ b/pkgs/development/tools/rq/default.nix
@@ -4,59 +4,16 @@ with rustPlatform;
 
 buildRustPackage rec {
   name = "rq-${version}";
-  version = "0.9.2";
+  version = "0.10.4";
 
   src = fetchFromGitHub {
     owner = "dflemstr";
     repo = "rq";
     rev = "v${version}";
-    sha256 = "051k7ls2mbjf584crayd654wm8m7gk3b7s73j97f9l8sbppdhpcq";
+    sha256 = "066f6sdy0vrp113wlg18q9p0clyrg9iqbj17ly0yn8dxr5iar002";
   };
 
-  serde_json = fetchFromGitHub {
-    owner = "serde-rs";
-    repo = "json";
-    rev = "0c05059e4533368020bd356bd708c38286810a7d";
-    sha256 = "0924ngqbsif2vmmpgn8l2gg4bzms0z0i7yng0zx6sdv0x836lw43";
-  };
-
-  v8_rs = fetchFromGitHub {
-    owner = "dflemstr";
-    repo = "v8-rs";
-    rev = "0772be5b2e84842a2d434963702bc2995aeda90b";
-    sha256 = "0h2n431rp6nqpip7dy7xpckkvcr19aq7l1f3x3wlrj02xi4c8mad";
-  };
-
-  cargoDepsHook = ''
-    # use non-git dependencies
-    (cd $sourceRoot && patch -p1 <<EOF)
-    diff -u a/Cargo.toml b/Cargo.toml
-    --- a/Cargo.toml	2016-12-03 21:29:31.615019030 +0100
-    +++ b/Cargo.toml	2016-12-03 21:30:12.188170359 +0100
-    @@ -40,15 +40,16 @@
-     version = "*"
-     
-     [dependencies.serde_json]
-    -branch = "v0.9.0"
-    -git = "https://github.com/serde-rs/json.git"
-    +path = "${serde_json}/json"
-    +version = "*"
-     
-     [dependencies.toml]
-     features = ["serde"]
-     version = "*"
-     
-     [dependencies.v8]
-    -git = "https://github.com/dflemstr/v8-rs.git"
-    +path = "${v8_rs}"
-    +version = "*"
-     
-     [features]
-     shared = ["v8/shared"]
-    EOF
-  '';
-
-  depsSha256 = "1pci9iwf4y574q32b05gbc490iqw5i7shvqgb1gblchrihvlkddq";
+  depsSha256 = "138h0q2a2gghfjpwfi11zw4rkipvmglb7srqz56ibbw2xliid2wl";
 
   buildInputs = [ llvmPackages.clang-unwrapped v8 ];
 
diff --git a/pkgs/development/tools/rtags/default.nix b/pkgs/development/tools/rtags/default.nix
index 44f922906e8..4f396e26bf9 100644
--- a/pkgs/development/tools/rtags/default.nix
+++ b/pkgs/development/tools/rtags/default.nix
@@ -5,15 +5,11 @@ stdenv.mkDerivation rec {
   version = "2.8-p1";
 
   buildInputs = [ cmake llvmPackages.llvm openssl llvmPackages.clang emacs ]
-    ++ lib.optionals stdenv.isDarwin [ apple_sdk.sdk apple_sdk.frameworks.CoreServices ];
+    ++ lib.optionals stdenv.isDarwin [ apple_sdk.libs.xpc apple_sdk.frameworks.CoreServices ];
 
   preConfigure = ''
     export LIBCLANG_CXXFLAGS="-isystem ${llvmPackages.clang.cc}/include $(llvm-config --cxxflags) -fexceptions" \
-           LIBCLANG_LIBDIR="${llvmPackages.clang.cc}/lib" \
-
-  '' + lib.optionalString stdenv.isDarwin ''
-    export CXXFLAGS="-isysroot ${apple_sdk.sdk}/" \
-           MACOSX_DEPLOYMENT_TARGET="10.9"
+           LIBCLANG_LIBDIR="${llvmPackages.clang.cc}/lib"
   '';
 
   src = fetchgit {
@@ -24,11 +20,11 @@ stdenv.mkDerivation rec {
     sha256 = "0g9sgc763c5d695hjffhis19sbaqk8z4884szljf7kbrjxl17y78";
   };
 
+  enableParallelBuilding = true;
+
   meta = {
     description = "C/C++ client-server indexer based on clang";
-
     homepage = https://github.com/andersbakken/rtags;
-
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.allBut [ "i686-linux" ];
   };
diff --git a/pkgs/development/tools/rust/rustup/0001-use-hardcoded-dynamic-linker.patch b/pkgs/development/tools/rust/rustup/0001-use-hardcoded-dynamic-linker.patch
new file mode 100644
index 00000000000..3b429c1745e
--- /dev/null
+++ b/pkgs/development/tools/rust/rustup/0001-use-hardcoded-dynamic-linker.patch
@@ -0,0 +1,75 @@
+From 36c053f37670c6003f9e8dc001741f7c49e9526a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io>
+Date: Sat, 15 Apr 2017 20:42:10 +0200
+Subject: [PATCH] use hardcoded dynamic-linker
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Jörg Thalheim <joerg@thalheim.io>
+---
+ src/rustup-cli/common.rs |  3 ++-
+ src/rustup/toolchain.rs  | 22 ++++++++++++++++++++--
+ 2 files changed, 22 insertions(+), 3 deletions(-)
+
+diff --git a/src/rustup-cli/common.rs b/src/rustup-cli/common.rs
+index 1abf345..21096e7 100644
+--- a/src/rustup-cli/common.rs
++++ b/src/rustup-cli/common.rs
+@@ -220,7 +220,8 @@ pub fn rustc_version(toolchain: &Toolchain) -> String {
+     if toolchain.exists() {
+         let rustc_path = toolchain.binary_file("rustc");
+         if utils::is_file(&rustc_path) {
+-            let mut cmd = Command::new(&rustc_path);
++            let mut cmd = Command::new("@dynamicLinker@");
++            cmd.arg(&rustc_path);
+             cmd.arg("--version");
+             toolchain.set_ldpath(&mut cmd);
+ 
+diff --git a/src/rustup/toolchain.rs b/src/rustup/toolchain.rs
+index dc29c32..212a4ab 100644
+--- a/src/rustup/toolchain.rs
++++ b/src/rustup/toolchain.rs
+@@ -315,7 +315,7 @@ impl<'a> Toolchain<'a> {
+             }
+             Path::new(&binary)
+         };
+-        let mut cmd = Command::new(&path);
++        let mut cmd = wrap_elf_interpreter(&path);
+         self.set_env(&mut cmd);
+         Ok(cmd)
+     }
+@@ -363,7 +363,7 @@ impl<'a> Toolchain<'a> {
+         } else {
+             src_file
+         };
+-        let mut cmd = Command::new(exe_path);
++        let mut cmd = wrap_elf_interpreter(exe_path);
+         self.set_env(&mut cmd);
+         cmd.env("RUSTUP_TOOLCHAIN", &primary_toolchain.name);
+         Ok(cmd)
+@@ -648,3 +648,21 @@ impl<'a> Toolchain<'a> {
+         path
+     }
+ }
++
++fn wrap_elf_interpreter<S: AsRef<OsStr>>(p: S) -> Command {
++    use std::fs::File;
++    use std::io::Read;
++    let path = Path::new(&p);
++    let is_elf = File::open(path).map(|mut f| {
++        let mut buf = [0; 4];
++        let _ = f.read(&mut buf);
++        buf == b"\x7fELF"[..]
++    }).unwrap_or(false);
++    if is_elf {
++        let mut cmd = Command::new("@dynamicLinker@");
++        cmd.arg(&path);
++        cmd
++    } else {
++        Command::new(&path)
++    }
++}
+-- 
+2.12.2
+
diff --git a/pkgs/development/tools/rust/rustup/default.nix b/pkgs/development/tools/rust/rustup/default.nix
new file mode 100644
index 00000000000..b9e6a0e2d81
--- /dev/null
+++ b/pkgs/development/tools/rust/rustup/default.nix
@@ -0,0 +1,55 @@
+{ stdenv, lib, runCommand
+, fetchFromGitHub, rustPlatform
+, pkgconfig, curl, Security }:
+
+rustPlatform.buildRustPackage rec {
+  name = "rustup-${version}";
+  version = "1.2.0";
+
+  depsSha256 = "06bfz5kyj3k0yxv55dq0s1arx34sy1jjfrpgd83rf99026vcm5x2";
+
+  src = fetchFromGitHub {
+    owner = "rust-lang-nursery";
+    repo = "rustup.rs";
+    rev = version;
+    sha256 = "0qwl27wh7j03h511bd8fq5fif5xcmkiyy9rm3hri7czjqr01mw0v";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+
+  buildInputs = [
+    curl
+  ] ++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
+
+  cargoBuildFlags = [ "--features no-self-update" ];
+
+  patches = lib.optionals stdenv.isLinux [
+    (runCommand "0001-use-hardcoded-dynamic-linker.patch" { CC=stdenv.cc; } ''
+       export dynamicLinker=$(cat $CC/nix-support/dynamic-linker)
+       substituteAll ${./0001-use-hardcoded-dynamic-linker.patch} $out
+    '')
+  ];
+
+  postInstall = ''
+    pushd $out/bin
+    mv rustup-init rustup
+    for link in cargo rustc rustdoc rust-gdb rust-lldb; do
+      ln -s rustup $link
+    done
+    popd
+
+    # tries to create .rustup
+    export HOME=$(mktemp -d)
+    mkdir -p "$out/share/"{bash-completion/completions,fish/completions,zsh/site-functions}
+    $out/bin/rustup completions bash > "$out/share/bash-completion/completions/rustup"
+    $out/bin/rustup completions fish > "$out/share/fish/completions/rustup.fish"
+    $out/bin/rustup completions zsh >  "$out/share/zsh/site-functions/_rustup"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "The Rust toolchain installer";
+    homepage = https://www.rustup.rs/;
+    license = licenses.mit;
+    maintainer = [ maintainers.mic92 ];
+  };
+}
diff --git a/pkgs/development/tools/scalafmt/default.nix b/pkgs/development/tools/scalafmt/default.nix
index 2c763072c29..dc7f96ea8a0 100644
--- a/pkgs/development/tools/scalafmt/default.nix
+++ b/pkgs/development/tools/scalafmt/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, unzip, jre }:
 
 stdenv.mkDerivation rec {
-  version = "0.6.6";
+  version = "0.6.8";
   baseName = "scalafmt";
   name = "${baseName}-${version}";
 
   src = fetchurl {
     url = "https://github.com/scalameta/scalafmt/releases/download/v${version}/${baseName}.tar.gz";
-    sha256 = "143g288m6xr93pavbym2y6f8gvihsf53fnzjra6ln1s39n9h205n";
+    sha256 = "1iaanrxk5lhxx1zj9gbxzgqbnyy1azfrab984mga7di5z1hs02s2";
   };
 
   unpackPhase = "tar xvzf $src";
diff --git a/pkgs/development/tools/skopeo/default.nix b/pkgs/development/tools/skopeo/default.nix
index 6a5faa68ced..d1ea6a2e12b 100644
--- a/pkgs/development/tools/skopeo/default.nix
+++ b/pkgs/development/tools/skopeo/default.nix
@@ -19,11 +19,20 @@ buildGoPackage rec {
     sha256 = "13k29i5hx909hvddl2xkyw4qzxq2q20ay9bkal3xi063s6l0sh0z";
   };
 
+  patches = [
+    ./path.patch
+  ];
+
   preBuild = ''
     export CGO_CFLAGS="-I${getDev gpgme}/include -I${getDev libgpgerror}/include -I${getDev devicemapper}/include -I${getDev btrfs-progs}/include"
     export CGO_LDFLAGS="-L${getLib gpgme}/lib -L${getLib libgpgerror}/lib -L${getLib devicemapper}/lib"
   '';
 
+  postInstall = ''
+    mkdir $bin/etc
+    cp -v ./go/src/github.com/projectatomic/skopeo/default-policy.json $bin/etc/default-policy.json
+  '';
+
   meta = {
     description = "A command line utility for various operations on container images and image repositories";
     homepage = "https://github.com/projectatomic/skopeo";
diff --git a/pkgs/development/tools/skopeo/path.patch b/pkgs/development/tools/skopeo/path.patch
new file mode 100644
index 00000000000..deb63b27945
--- /dev/null
+++ b/pkgs/development/tools/skopeo/path.patch
@@ -0,0 +1,25 @@
+diff --git a/cmd/skopeo/main.go b/cmd/skopeo/main.go
+index 51f918d..6681d73 100644
+--- a/cmd/skopeo/main.go
++++ b/cmd/skopeo/main.go
+@@ -3,6 +3,7 @@ package main
+ import (
+ 	"fmt"
+ 	"os"
++  "path/filepath"
+
+ 	"github.com/Sirupsen/logrus"
+ 	"github.com/containers/image/signature"
+@@ -84,6 +85,12 @@ func getPolicyContext(c *cli.Context) (*signature.PolicyContext, error) {
+ 	policyPath := c.GlobalString("policy")
+ 	var policy *signature.Policy // This could be cached across calls, if we had an application context.
+ 	var err error
++  var dir string
++  if policyPath == "" {
++    dir, err = filepath.Abs(filepath.Dir(os.Args[0]))
++    policyPath = dir + "/../etc/default-policy.json"
++  }
++
+ 	if policyPath == "" {
+ 		policy, err = signature.DefaultPolicy(nil)
+ 	} else {
diff --git a/pkgs/development/tools/spirv-tools/default.nix b/pkgs/development/tools/spirv-tools/default.nix
index 9bc9bf9c0e4..bfd4b7370e0 100644
--- a/pkgs/development/tools/spirv-tools/default.nix
+++ b/pkgs/development/tools/spirv-tools/default.nix
@@ -4,18 +4,18 @@ let
 
 spirv_sources = {
   # `vulkan-loader` requires a specific version of `spirv-tools` and `spirv-headers` as specified in
-  # `<vulkan-loader-repo>/spirv-tools_revision`.
+  # `<vulkan-loader-repo>/external_revisions/spirv-tools_revision`.
   tools = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "SPIRV-Tools";
-    rev = "37422e9dba1a3a8cb8028b779dd546d43add6ef8";
-    sha256 = "0sp2p4wg902clq0fr94vj19vyv43cq333jjxr0mjzay8dw2h4yzk";
+    rev = "7fe8a57a5bd72094e91f9f93e51dac2f2461dcb4";
+    sha256 = "0rh25y1k3m3f1nqs032lh3mng5qfw9kqn6xv9yzzm47i1i0b6hmr";
   };
   headers = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "SPIRV-Headers";
-    rev = "c470b68225a04965bf87d35e143ae92f831e8110";
-    sha256 = "18jgcpmm0ixp6314r5w144l3wayxjkmwqgx8dk5jgyw36dammkwd";
+    rev = "6c08995e6e7b94129e6086c78198c77111f2f262";
+    sha256 = "07m12wm9prib7hldj7pbc8vwnj0x6llgx4shzgy8x4xbhbafawws";
   };
 };
 
@@ -23,7 +23,7 @@ in
 
 stdenv.mkDerivation rec {
   name = "spirv-tools-${version}";
-  version = "2016-12-19";
+  version = "2017-03-23";
 
   src = spirv_sources.tools;
   patchPhase = ''ln -sv ${spirv_sources.headers} external/spirv-headers'';
@@ -40,5 +40,6 @@ stdenv.mkDerivation rec {
     description = "The SPIR-V Tools project provides an API and commands for processing SPIR-V modules";
     license = licenses.asl20;
     platforms = platforms.linux;
+    maintainers = [ maintainers.ralith ];
   };
 }
diff --git a/pkgs/development/tools/unity3d/default.nix b/pkgs/development/tools/unity3d/default.nix
index 73cb902ae69..d9459134fea 100644
--- a/pkgs/development/tools/unity3d/default.nix
+++ b/pkgs/development/tools/unity3d/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl, makeWrapper, fakeroot, file, getopt
-, gtk2, gdk_pixbuf, glib, mesa_glu, postgresql, nss, nspr
+, gtk2, gdk_pixbuf, glib, mesa_glu, postgresql, nss, nspr, udev
 , alsaLib, GConf, cups, libcap, fontconfig, freetype, pango
 , cairo, dbus, expat, zlib, libpng12, nodejs, gnutar, gcc, gcc_32bit
 , libX11, libXcursor, libXdamage, libXfixes, libXrender, libXi
@@ -11,7 +11,7 @@ let
   libPath64 = lib.makeLibraryPath [
     gcc.cc gtk2 gdk_pixbuf glib mesa_glu postgresql nss nspr
     alsaLib GConf cups libcap fontconfig freetype pango
-    cairo dbus expat zlib libpng12
+    cairo dbus expat zlib libpng12 udev
     libX11 libXcursor libXdamage libXfixes libXrender libXi
     libXcomposite libXext libXrandr libXtst libSM libICE libxcb
   ];
@@ -25,19 +25,16 @@ let
     gnome-sharp gtk-sharp-2_0
   ];
 
-  ver = "5.3.5";
+  ver = "5.5.3";
   build = "f1";
-  date = "20160525";
-  pkgVer = "${ver}${build}";
-  fullVer = "${pkgVer}+${date}";
 
 in stdenv.mkDerivation rec {
   name = "unity-editor-${version}";
-  version = pkgVer;
+  version = "${ver}x${build}";
 
   src = fetchurl {
-    url = "http://download.unity3d.com/download_unity/linux/unity-editor-installer-${fullVer}.sh";
-    sha256 = "0lmc65175fdvbyn3565pjlg6cc4l5i58fj7bxzi5cqykkbzv5wdm";
+    url = "http://beta.unity3d.com/download/a2454d41e248/unity-editor-installer-${version}Linux.sh";
+    sha256 = "1hvas4n1hm0qp0265gk1nh03kypd9690fnxvzg70f5ni9q97pvm0";
   };
 
   nosuidLib = ./unity-nosuid.c;
@@ -46,9 +43,10 @@ in stdenv.mkDerivation rec {
 
   outputs = [ "out" "monodevelop" ];
 
+  sourceRoot = "unity-editor-${version}Linux";
+
   unpackPhase = ''
     echo -e 'q\ny' | fakeroot sh $src
-    sourceRoot="unity-editor-${pkgVer}"
   '';
 
   buildPhase = ''
@@ -125,6 +123,7 @@ in stdenv.mkDerivation rec {
   '';
 
   dontStrip = true;
+  dontPatchELF = true;
 
   meta = with stdenv.lib; {
     homepage = https://unity3d.com/;
diff --git a/pkgs/development/tools/vogl/default.nix b/pkgs/development/tools/vogl/default.nix
index f3967b0d923..56f15d62154 100644
--- a/pkgs/development/tools/vogl/default.nix
+++ b/pkgs/development/tools/vogl/default.nix
@@ -3,7 +3,7 @@
 , makeQtWrapper, qtbase, qtx11extras
 , libdwarf, libjpeg_turbo, libunwind, lzma, tinyxml, libX11
 , SDL2, SDL2_gfx, SDL2_image, SDL2_ttf
-, freeglut, mesa, mesa_glu
+, freeglut, mesa_glu
 }:
 stdenv.mkDerivation rec {
   name = "vogl-${version}";
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     qtbase qtx11extras
     libdwarf libjpeg_turbo libunwind lzma tinyxml libX11
     SDL2 SDL2_gfx SDL2_image SDL2_ttf
-    freeglut mesa mesa_glu
+    freeglut mesa_glu
   ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/tools/xcbuild/platform.nix b/pkgs/development/tools/xcbuild/platform.nix
index 34fc5b0f620..31692d9bee6 100644
--- a/pkgs/development/tools/xcbuild/platform.nix
+++ b/pkgs/development/tools/xcbuild/platform.nix
@@ -101,6 +101,54 @@ let
         Name = "$(EXECUTABLE_NAME)";
       };
     }
+    {
+      Identifier = "com.apple.package-type.wrapper";
+      Type = "PackageType";
+      Name = "Wrapper";
+      DefaultBuildSettings = {
+        WRAPPER_SUFFIX = ".bundle";
+        WRAPPER_NAME = "$(WRAPPER_PREFIX)$(PRODUCT_NAME)$(WRAPPER_SUFFIX)";
+        CONTENTS_FOLDER_PATH = "$(WRAPPER_NAME)/Contents";
+        EXECUTABLE_NAME = "$(EXECUTABLE_PREFIX)$(PRODUCT_NAME)$(EXECUTABLE_VARIANT_SUFFIX)$(EXECUTABLE_SUFFIX)";
+        EXECUTABLE_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/MacOS";
+        EXECUTABLE_PATH = "$(EXECUTABLE_FOLDER_PATH)/$(EXECUTABLE_NAME)";
+        INFOPLIST_PATH = "$(CONTENTS_FOLDER_PATH)/Info.plist";
+        INFOSTRINGS_PATH = "$(LOCALIZED_RESOURCES_FOLDER_PATH)/InfoPlist.strings";
+        PKGINFO_PATH = "$(CONTENTS_FOLDER_PATH)/PkgInfo";
+        PBDEVELOPMENTPLIST_PATH = "$(CONTENTS_FOLDER_PATH)/pbdevelopment.plist";
+        VERSIONPLIST_PATH = "$(CONTENTS_FOLDER_PATH)/version.plist";
+        PUBLIC_HEADERS_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Headers";
+        PRIVATE_HEADERS_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/PrivateHeaders";
+        EXECUTABLES_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Executables";
+        FRAMEWORKS_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Frameworks";
+        SHARED_FRAMEWORKS_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/SharedFrameworks";
+        SHARED_SUPPORT_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/SharedSupport";
+        UNLOCALIZED_RESOURCES_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Resources";
+        LOCALIZED_RESOURCES_FOLDER_PATH = "$(UNLOCALIZED_RESOURCES_FOLDER_PATH)/$(DEVELOPMENT_LANGUAGE).lproj";
+        DOCUMENTATION_FOLDER_PATH = "$(LOCALIZED_RESOURCES_FOLDER_PATH)/Documentation";
+        PLUGINS_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/PlugIns";
+        SCRIPTS_FOLDER_PATH = "$(UNLOCALIZED_RESOURCES_FOLDER_PATH)/Scripts";
+      };
+      ProductReference = {
+        FileType = "wrapper.cfbundle";
+        Name = "$(WRAPPER_NAME)";
+        IsLaunchable = "NO";
+      };
+    }
+    {
+      Identifier = "com.apple.package-type.wrapper.application";
+      Type = "PackageType";
+      BasedOn = "com.apple.package-type.wrapper";
+      Name = "Application Wrapper";
+      DefaultBuildSettings = {
+        GENERATE_PKGINFO_FILE = "YES";
+      };
+      ProductReference = {
+        FileType = "wrapper.application";
+        Name = "$(WRAPPER_NAME)";
+        IsLaunchable = "YES";
+      };
+    }
   ];
 
   # Based off of the MacOSX Product Types.xcpsec file. All
@@ -125,6 +173,39 @@ let
       Name = "Dynamic Library";
       PackageTypes = [ "com.apple.package-type.mach-o-dylib" ];
     }
+    {
+      Type = "ProductType";
+      Identifier = "com.apple.product-type.bundle";
+      Name = "Bundle";
+      DefaultBuildProperties = {
+        FULL_PRODUCT_NAME = "$(WRAPPER_NAME)";
+        MACH_O_TYPE = "mh_bundle";
+        WRAPPER_PREFIX = "";
+        WRAPPER_SUFFIX = ".$(WRAPPER_EXTENSION)";
+        WRAPPER_EXTENSION = "bundle";
+        WRAPPER_NAME = "$(WRAPPER_PREFIX)$(PRODUCT_NAME)$(WRAPPER_SUFFIX)";
+        FRAMEWORK_FLAG_PREFIX = "-framework";
+        LIBRARY_FLAG_PREFIX = "-l";
+        LIBRARY_FLAG_NOSPACE = "YES";
+        STRIP_STYLE = "non-global";
+      };
+      PackageTypes = [ "com.apple.package-type.wrapper" ];
+      IsWrapper = "YES";
+      HasInfoPlist = "YES";
+      HasInfoPlistStrings = "YES";
+    }
+    {
+      Identifier = "com.apple.product-type.application";
+      Type = "ProductType";
+      BasedOn = "com.apple.product-type.bundle";
+      Name = "Application";
+      DefaultBuildProperties = {
+        MACH_O_TYPE = "mh_execute";
+        WRAPPER_SUFFIX = ".$(WRAPPER_EXTENSION)";
+        WRAPPER_EXTENSION = "app";
+      };
+      PackageTypes = [ "com.apple.package-type.wrapper.application" ];
+    }
   ];
 
 in
diff --git a/pkgs/development/tools/xcbuild/toolchain.nix b/pkgs/development/tools/xcbuild/toolchain.nix
index 4313f005147..9e34360909f 100644
--- a/pkgs/development/tools/xcbuild/toolchain.nix
+++ b/pkgs/development/tools/xcbuild/toolchain.nix
@@ -1,6 +1,7 @@
 {stdenv, writeText, toolchainName, xcbuild, fetchurl
 , llvm, cctools, gcc, bootstrap_cmds, binutils
-, yacc, flex, m4, unifdef, gperf, indent, ctags, makeWrapper}:
+, yacc, flex, m4, unifdef, gperf, indent, ctags, makeWrapper
+, xib2nib}:
 
 let
 
@@ -89,6 +90,8 @@ stdenv.mkDerivation {
     ln -s ${cctools}/bin/pagestuff
     ln -s ${cctools}/bin/ranlib
     ln -s ${cctools}/bin/redo_prebinding
+
+    ln -s ${xib2nib}/bin/ibtool
   '' +
     # No point including the entire gcc closure if we don't already have it
     (if stdenv.cc.isClang then ''
diff --git a/pkgs/development/tools/xib2nib/default.nix b/pkgs/development/tools/xib2nib/default.nix
new file mode 100644
index 00000000000..d585a35b0bc
--- /dev/null
+++ b/pkgs/development/tools/xib2nib/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, callPackage, fetchFromGitHub, pugixml, boost, PlistCpp }:
+
+stdenv.mkDerivation {
+  name = "xib2nib-730e177";
+
+  src = fetchFromGitHub {
+    owner = "matthewbauer";
+    repo = "xib2nib";
+    rev = "97c6a53aab83d919805efcae33cf80690e953d1e";
+    sha256 = "08442f4xg7racknj35nr56a4c62gvdgdw55pssbkn2qq0rfzziqq";
+  };
+
+  buildInputs = [ PlistCpp pugixml boost ];
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  meta = with stdenv.lib; {
+    maintainers = with maintainers; [ matthewbauer ];
+    description = "Compiles CocoaTouch .xib files into .nib";
+    license = licenses.mit;
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/web/nodejs/v7.nix b/pkgs/development/web/nodejs/v7.nix
index b0b0869dce2..2fb61fca0ff 100644
--- a/pkgs/development/web/nodejs/v7.nix
+++ b/pkgs/development/web/nodejs/v7.nix
@@ -10,11 +10,11 @@ let
   baseName = if enableNpm then "nodejs" else "nodejs-slim";
 in
   stdenv.mkDerivation (nodejs // rec {
-    version = "7.7.3";
+    version = "7.9.0";
     name = "${baseName}-${version}";
     src = fetchurl {
       url = "https://nodejs.org/download/release/v${version}/node-v${version}.tar.xz";
-      sha256 = "1pqfrvz06nz88jdp1vsrxfy5z0v8yas1c6pkvl45afvl3zqxlhal";
+      sha256 = "0abaz5z0cv7amd6blm4cm91asj30ydf0lq3j0wdg6aa9i15pcsd5";
     };
 
   })
diff --git a/pkgs/games/exult/default.nix b/pkgs/games/exult/default.nix
index 27ffcf2e742..649d69c6fe6 100644
--- a/pkgs/games/exult/default.nix
+++ b/pkgs/games/exult/default.nix
@@ -30,6 +30,8 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  makeFlags = [ "DESTDIR=$(out)" ];
+
   postInstall =
     ''
       mkdir -p $out/share/exult/music
diff --git a/pkgs/games/instead-launcher/default.nix b/pkgs/games/instead-launcher/default.nix
new file mode 100644
index 00000000000..6515db9dab3
--- /dev/null
+++ b/pkgs/games/instead-launcher/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub, instead, qmake4Hook, zlib }:
+
+stdenv.mkDerivation rec {
+  name = "instead-launcher-${version}";
+
+  version = "0.6.3";
+
+  src = fetchFromGitHub {
+    owner = "instead-hub";
+    repo = "instead-launcher";
+    rev = version;
+    sha256 = "1q0hdgfy9pr48zvxr9x614ka6bd0g8sicdk2a673nwfdyd41p9cw";
+  };
+
+  patches = [ ./path.patch ];
+
+  postPatch = ''
+    substituteInPlace platform.cpp --subst-var-by instead ${instead}
+  '';
+
+  nativeBuildInputs = [ qmake4Hook ];
+
+  buildInputs = [ zlib ];
+
+  meta = with stdenv.lib; {
+    homepage = https://instead.syscall.ru/wiki/en/instead-launcher;
+    description = "Install and play games from INSTEAD repository";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ orivej ];
+  };
+}
diff --git a/pkgs/games/instead-launcher/path.patch b/pkgs/games/instead-launcher/path.patch
new file mode 100644
index 00000000000..f63737bfb16
--- /dev/null
+++ b/pkgs/games/instead-launcher/path.patch
@@ -0,0 +1,39 @@
+From c7460a7fc255ef4e8e0e37798605c4d8bb50633d Mon Sep 17 00:00:00 2001
+From: Orivej Desh <orivej@gmx.fr>
+Date: Sat, 1 Apr 2017 01:30:37 +0000
+Subject: [PATCH] path
+
+---
+ mainwindow.cpp | 2 +-
+ platform.cpp   | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/mainwindow.cpp b/mainwindow.cpp
+index 9687c4e..234b176 100644
+--- a/mainwindow.cpp
++++ b/mainwindow.cpp
+@@ -688,7 +688,7 @@ void MainWindow::loadConfig() {
+     if ( args.contains( "default-gamespath" ) )
+ 	defGamesPath = args["default-gamespath"].toString();
+ 
+-    QString insteadPath = conf.value("InsteadPath", defInsteadPath).toString();
++    QString insteadPath = defInsteadPath;
+     bool autoRefresh = conf.value("AutoRefresh", "false").toString() == "true";
+     bool autoRefreshSW = conf.value("AutoRefreshSW", "false").toString() == "true";
+     QString lang = conf.value( "Language", "*" ).toString();
+diff --git a/platform.cpp b/platform.cpp
+index bda86be..c356f1c 100644
+--- a/platform.cpp
++++ b/platform.cpp
+@@ -22,7 +22,7 @@ QString getConfigPath() {
+ }
+ 
+ QString getDefaultInterpreterPath() {
+-    return "/usr/local/bin/sdl-instead";
++    return "@instead@/bin/sdl-instead";
+ }
+ 
+ #elif defined(Q_OS_WIN)
+-- 
+2.12.2
+
diff --git a/pkgs/games/nethack/default.nix b/pkgs/games/nethack/default.nix
index 735065ca18e..bf9d01800f3 100644
--- a/pkgs/games/nethack/default.nix
+++ b/pkgs/games/nethack/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, writeScript, ncurses, gzip, flex, bison }:
+{ stdenv, lib, fetchurl, writeScript, coreutils, ncurses, gzip, flex, bison, less }:
 
 let
   platform =
@@ -10,6 +10,7 @@ let
     # We probably want something different for Darwin
     else "unix";
   userDir = "~/.config/nethack";
+  binPath = lib.makeBinPath [ coreutils less ];
 
 in stdenv.mkDerivation {
   name = "nethack-3.6.0";
@@ -60,6 +61,7 @@ in stdenv.mkDerivation {
     mkdir -p $out/bin
     cat <<EOF >$out/bin/nethack
     #! ${stdenv.shell} -e
+    PATH=${binPath}:\$PATH
 
     if [ ! -d ${userDir} ]; then
       mkdir -p ${userDir}
diff --git a/pkgs/games/steam/chrootenv.nix b/pkgs/games/steam/chrootenv.nix
index 125566b8428..1fbf5a9dd1a 100644
--- a/pkgs/games/steam/chrootenv.nix
+++ b/pkgs/games/steam/chrootenv.nix
@@ -63,6 +63,7 @@ in buildFHSUserEnv rec {
     libdrm
     mono
     xorg.xkeyboardconfig
+    xlibs.libpciaccess
 
     (steamPackages.steam-runtime-wrapped.override {
       inherit nativeOnly runtimeOnly newStdcpp;
diff --git a/pkgs/games/steam/runtime-wrapped.nix b/pkgs/games/steam/runtime-wrapped.nix
index 5cf55535db1..6274a91625f 100644
--- a/pkgs/games/steam/runtime-wrapped.nix
+++ b/pkgs/games/steam/runtime-wrapped.nix
@@ -50,7 +50,6 @@ let
     # Verified games requirements
     xlibs.libXmu
     xlibs.libxcb
-    xlibs.libpciaccess
     mesa_glu
     libuuid
     libogg
diff --git a/pkgs/games/urbanterror/default.nix b/pkgs/games/urbanterror/default.nix
index 50b127fa9dc..bc293a88107 100644
--- a/pkgs/games/urbanterror/default.nix
+++ b/pkgs/games/urbanterror/default.nix
@@ -2,21 +2,21 @@
 
 stdenv.mkDerivation rec {
   name = "urbanterror-${version}";
-  version = "4.3.1";
+  version = "4.3.2";
 
   srcs =
     [ (fetchurl {
-         url = "http://cdn.fs1.urbanterror.info/urt/43/releases/zips/UrbanTerror431_full.zip";
-         sha256 = "1dfnyb2grf2fxxphwj7p2ff721j2l0gwrj76jzympr32sim5a6cw";
+         url = "http://cdn.fs1.urbanterror.info/urt/43/releases/zips/UrbanTerror432_full.zip";
+         sha256 = "192jwdyfy18cg413ysaklqc8yzmdnshljqc6dnr0xkd6dxbf3pkl";
        })
       (fetchurl {
-         url = "https://github.com/Barbatos/ioq3-for-UrbanTerror-4/archive/release-4.3.1.zip";
-         sha256 = "1rbiqa1ki73649np3af96cilavkgv66a0b6p0a5x26cxvpgg128k";
+         url = "https://github.com/Barbatos/ioq3-for-UrbanTerror-4/archive/release-${version}.zip";
+         sha256 = "0m376hdkk8vjnbdy8zakjazyag6jiw4n8zy4lxhv2ndn9mii8lcx";
        })
     ];
 
   buildInputs = [ unzip SDL mesa openal curl libXxf86vm ];
-  sourceRoot = "ioq3-for-UrbanTerror-4-release-4.3.1";
+  sourceRoot = "ioq3-for-UrbanTerror-4-release-${version}";
 
   configurePhase = ''
     echo "USE_OPENAL = 1" > Makefile.local
diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix
index a8f7d00b6b6..1f8e559b415 100644
--- a/pkgs/misc/cups/default.nix
+++ b/pkgs/misc/cups/default.nix
@@ -53,6 +53,11 @@ stdenv.mkDerivation rec {
     "--disable-launchd"
   ];
 
+  # XXX: Hackery until https://github.com/NixOS/nixpkgs/issues/24693
+  preBuild = if stdenv.isDarwin then ''
+    export DYLD_FRAMEWORK_PATH=/System/Library/Frameworks
+  '' else null;
+
   installFlags =
     [ # Don't try to write in /var at build time.
       "CACHEDIR=$(TMPDIR)/dummy"
@@ -109,6 +114,6 @@ stdenv.mkDerivation rec {
     description = "A standards-based printing system for UNIX";
     license = licenses.gpl2; # actually LGPL for the library and GPL for the rest
     maintainers = with maintainers; [ jgeerds ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/misc/cups/drivers/estudio/default.nix b/pkgs/misc/cups/drivers/estudio/default.nix
new file mode 100644
index 00000000000..6f9e4579a14
--- /dev/null
+++ b/pkgs/misc/cups/drivers/estudio/default.nix
@@ -0,0 +1,54 @@
+{ stdenv, fetchurl, perl }:
+
+stdenv.mkDerivation {
+  name = "cups-toshiba-estudio";
+  version = "7.51";
+
+  src = fetchurl {
+    url = http://business.toshiba.com/downloads/KB/f1Ulds/14079/TOSHIBA_ColorMFP_CUPS.tar;
+    sha256 = "3741bb79723495da5cb5a3971ae8c6042b6c71a6264af8f25aecf721f1f0752f";
+  };
+
+  buildInputs = [ perl ];
+
+  phases = [ "unpackPhase"
+             "patchPhase"
+             "installPhase" ];
+
+  patchPhase = ''
+    patchShebangs lib/
+    gunzip                share/cups/model/Toshiba/TOSHIBA_ColorMFP_CUPS.gz
+    sed -i "s+/usr+$out+" share/cups/model/Toshiba/TOSHIBA_ColorMFP_CUPS
+    gzip                  share/cups/model/Toshiba/TOSHIBA_ColorMFP_CUPS
+  '';
+
+  installPhase = ''
+    mkdir -p $out/lib/cups/filter
+    mkdir -p $out/share/cups/model/Toshiba
+    cp {.,$out}/lib/cups/filter/est6550_Authentication
+    chmod 755 $out/lib/cups/filter/est6550_Authentication
+    cp {.,$out}/share/cups/model/Toshiba/TOSHIBA_ColorMFP_CUPS.gz
+    chmod 755 $out/share/cups/model/Toshiba/TOSHIBA_ColorMFP_CUPS.gz
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Printer only driver for the Toshiba e-STUDIO class of printers";
+    longDescription = ''
+      This driver supports the following printers: TOSHIBA e-STUDIO2000AC,
+      TOSHIBA e-STUDIO2005AC, TOSHIBA e-STUDIO2040C, TOSHIBA e-STUDIO2050C,
+      TOSHIBA e-STUDIO2055C, TOSHIBA e-STUDIO2500AC, TOSHIBA e-STUDIO2505AC,
+      TOSHIBA e-STUDIO2540C, TOSHIBA e-STUDIO2550C, TOSHIBA e-STUDIO2555C,
+      TOSHIBA e-STUDIO287CS, TOSHIBA e-STUDIO3005AC, TOSHIBA e-STUDIO3040C,
+      TOSHIBA e-STUDIO3055C, TOSHIBA e-STUDIO347CS, TOSHIBA e-STUDIO3505AC,
+      TOSHIBA e-STUDIO3540C, TOSHIBA e-STUDIO3555C, TOSHIBA e-STUDIO407CS,
+      TOSHIBA e-STUDIO4505AC, TOSHIBA e-STUDIO4540C, TOSHIBA e-STUDIO4555C,
+      TOSHIBA e-STUDIO5005AC, TOSHIBA e-STUDIO5055C, TOSHIBA e-STUDIO5506AC,
+      TOSHIBA e-STUDIO5540C, TOSHIBA e-STUDIO5560C, TOSHIBA e-STUDIO6506AC,
+      TOSHIBA e-STUDIO6540C, TOSHIBA e-STUDIO6550C, TOSHIBA e-STUDIO6560C,
+      TOSHIBA e-STUDIO6570C and TOSHIBA e-STUDIO7506AC.
+    '';
+    homepage = https://www.toshiba-business.com.au/support/drivers;
+    license = licenses.unfree;
+    maintainers = [ maintainers.jpotier ];
+  };
+}
diff --git a/pkgs/misc/emulators/wine/sources.nix b/pkgs/misc/emulators/wine/sources.nix
index 4419d8025a8..42d99a39eee 100644
--- a/pkgs/misc/emulators/wine/sources.nix
+++ b/pkgs/misc/emulators/wine/sources.nix
@@ -6,9 +6,9 @@ let fetchurl = args@{url, sha256, ...}:
 in rec {
 
   stable = fetchurl rec {
-    version = "2.0";
-    url = "https://dl.winehq.org/wine/source/2.0/wine-${version}.tar.bz2";
-    sha256 = "1ik6q0h3ph3jizmp7bxhf6kcm1pzrdrn2m0yf2x86slv2aigamlp";
+    version = "2.0.1";
+    url = "https://dl.winehq.org/wine/source/2.0/wine-${version}.tar.xz";
+    sha256 = "10qm0xxqzvl4y3mhvaxcaacrcs8d5kdz5wf0gbxpmp36wnm4xyvc";
 
     ## see http://wiki.winehq.org/Gecko
     gecko32 = fetchurl rec {
@@ -31,15 +31,15 @@ in rec {
   };
 
   unstable = fetchurl rec {
-    version = "2.4";
+    version = "2.6";
     url = "https://dl.winehq.org/wine/source/2.x/wine-${version}.tar.xz";
-    sha256 = "13klfadvd44zdfrzh38al99s53i02x3mlhcj5z7fq7vqwh3xzdc7";
+    sha256 = "1h5ajw50fax2pg9p4wch6824zxdd85g2gh9nkbllfxj3ixsn9zz6";
     inherit (stable) mono gecko32 gecko64;
   };
 
   staging = fetchFromGitHub rec {
     inherit (unstable) version;
-    sha256 = "052s4y7d8lw2k0hk17zwz9bgbsl013g8953ad001y2kqjxwcnilh";
+    sha256 = "1l0sjbsajr4m7w3ar2ljwr3ffmwyv57g85a068ard3v8fv4nil22";
     owner = "wine-compholio";
     repo = "wine-staging";
     rev = "v${version}";
diff --git a/pkgs/misc/screensavers/slock/default.nix b/pkgs/misc/screensavers/slock/default.nix
index 2f20943981a..2a2be06fde6 100644
--- a/pkgs/misc/screensavers/slock/default.nix
+++ b/pkgs/misc/screensavers/slock/default.nix
@@ -1,13 +1,27 @@
-{ stdenv, fetchurl, xproto, libX11, libXext, libXrandr }:
+{ stdenv, lib, fetchurl, writeText
+, xproto, libX11, libXext, libXrandr
+# default header can be obtained from
+# http://git.suckless.org/slock/tree/config.def.h
+, conf ? null }:
+
+with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "slock-1.4";
+
   src = fetchurl {
     url = "http://dl.suckless.org/tools/${name}.tar.gz";
     sha256 = "0sif752303dg33f14k6pgwq2jp1hjyhqv6x4sy3sj281qvdljf5m";
   };
+
   buildInputs = [ xproto libX11 libXext libXrandr ];
+
   installFlags = "DESTDIR=\${out} PREFIX=";
-  meta = with stdenv.lib; {
+
+  preBuild = optionalString (conf != null) ''
+    cp ${writeText "config.def.h" conf} config.def.h
+  '';
+
+  meta = {
     homepage = http://tools.suckless.org/slock;
     description = "Simple X display locker";
     longDescription = ''
diff --git a/pkgs/misc/screensavers/xautolock/default.nix b/pkgs/misc/screensavers/xautolock/default.nix
index c65c7ef121c..02cdcf7b4d1 100644
--- a/pkgs/misc/screensavers/xautolock/default.nix
+++ b/pkgs/misc/screensavers/xautolock/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     description = "A program that launches a given program when your X session has been idle for a given time.";
     homepage = http://www.ibiblio.org/pub/linux/X11/screensavers;
     maintainers = with maintainers; [ garbas ];
-    platforms = platforms.unix;
+    platforms = platforms.linux;
     license = licenses.gpl2;
   };
 }
diff --git a/pkgs/misc/themes/flat-plat/default.nix b/pkgs/misc/themes/flat-plat/default.nix
index 1b8f4f2d110..f231481f454 100644
--- a/pkgs/misc/themes/flat-plat/default.nix
+++ b/pkgs/misc/themes/flat-plat/default.nix
@@ -1,23 +1,24 @@
-{ stdenv, fetchFromGitHub, gnome3, libxml2, gtk-engine-murrine }:
+{ stdenv, fetchFromGitHub, gnome3, libxml2, gtk-engine-murrine, gdk_pixbuf, librsvg }:
 
 stdenv.mkDerivation rec {
   name = "flat-plat-gtk-theme-${version}";
-  version = "2016-12-03";
+  version = "20170323";
 
   src = fetchFromGitHub {
     owner = "nana-4";
     repo = "Flat-Plat";
-    rev = "49a5a51ec1a5835ff04ba2c62c9bccbd3f49bbe6";
-    sha256 = "1w4b16cp2yv5rpijcqywlzrs3xjkvg8ppp2rfls1kvxq12rz4jkb";
+    rev = "v${version}";
+    sha256 = "18s05x5qkl9cwywd01498xampyya1lnpjyyknj61qxxw5rsgay9y";
   };
 
   nativeBuildInputs = [ gnome3.glib libxml2 ];
 
-  buildInputs = [ gnome3.gnome_themes_standard gtk-engine-murrine ];
+  buildInputs = [ gnome3.gnome_themes_standard gtk-engine-murrine gdk_pixbuf librsvg ];
 
   dontBuild = true;
 
   installPhase = ''
+    patchShebangs install.sh
     sed -i install.sh \
       -e "s|^gnomever=.*$|gnomever=${gnome3.version}|" \
       -e "s|/usr||"
diff --git a/pkgs/misc/themes/greybird/default.nix b/pkgs/misc/themes/greybird/default.nix
index 2a75ea590ee..515b8fc712a 100644
--- a/pkgs/misc/themes/greybird/default.nix
+++ b/pkgs/misc/themes/greybird/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "greybird";
-  version = "2017-02-26";
+  version = "3.22.3";
 
   src = fetchFromGitHub {
     owner = "shimmerproject";
     repo = "${pname}";
-    rev = "66c222c25c43603e73d3521e0e91ffb268214229";
-    sha256 = "1q0nc02d7kwaxjb8d2rvwc3yf3v46r44zsighwjnmczpw7y3j6h8";
+    rev = "v${version}";
+    sha256 = "0hz8q2sf2kcxixzw088rny6zmhfls5z49zlhm8m9013wph799a8c";
   };
 
   nativeBuildInputs = [ autoreconfHook sass glib libxml2 gdk_pixbuf librsvg ];
diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix
index 90559742057..f818962b8ae 100644
--- a/pkgs/misc/vim-plugins/default.nix
+++ b/pkgs/misc/vim-plugins/default.nix
@@ -647,11 +647,11 @@ rec {
   };
 
   vim-elixir = buildVimPluginFrom2Nix { # created by nix#NixDerivation
-    name = "vim-elixir-2017-03-29";
+    name = "vim-elixir-2017-04-13";
     src = fetchgit {
       url = "https://github.com/elixir-lang/vim-elixir";
-      rev = "9482415ab27fddf8125524f54d9e500bb9541756";
-      sha256 = "1layanqayf2arg8cvpsx768p544znwsvwispnk01d0c73d2p5llq";
+      rev = "8781ff7c675d0cbfb4859f91698365c2eecf3205";
+      sha256 = "0990qbzs2cn3k07xrn4xcczl7kpapygpa0ypkwpgxamyk0lgjlr8";
     };
     dependencies = [];
 
diff --git a/pkgs/os-specific/darwin/apple-sdk/default.nix b/pkgs/os-specific/darwin/apple-sdk/default.nix
index 536e62f777e..73126ce1f5c 100644
--- a/pkgs/os-specific/darwin/apple-sdk/default.nix
+++ b/pkgs/os-specific/darwin/apple-sdk/default.nix
@@ -157,6 +157,7 @@ in rec {
         mkdir -p $out/include
         pushd $out/include >/dev/null
         ln -s "${sdk}/include/xpc"
+        ln -s "${sdk}/include/launch.h"
         popd >/dev/null
       '';
     };
diff --git a/pkgs/os-specific/darwin/apple-source-releases/Libsystem/default.nix b/pkgs/os-specific/darwin/apple-source-releases/Libsystem/default.nix
index 92c54d9b679..ea5aac60ab9 100644
--- a/pkgs/os-specific/darwin/apple-source-releases/Libsystem/default.nix
+++ b/pkgs/os-specific/darwin/apple-source-releases/Libsystem/default.nix
@@ -76,7 +76,11 @@ appleDerivation rec {
        /usr/lib/libSystem.dylib \
        -reexported_symbols_list ${./system_symbols}
 
-    libs=$(otool -arch x86_64 -L /usr/lib/libSystem.dylib | tail -n +3 | awk '{ print $1 }')
+    # We used to determine these impurely based on the host system, but then when we got some 10.12 Hydra boxes,
+    # one of them accidentally built this derivation, referenced libsystem_symptoms.dylib, which doesn't exist on
+    # 10.11, and then broke all subsequent builds on 10.11. By picking a 10.11 compatible subset of the libraries,
+    # we avoid scary impurity issues like that.
+    libs=$(cat ${./reexported_libraries} | grep -v '^#')
 
     for i in $libs; do
       if [ "$i" != "/usr/lib/system/libsystem_kernel.dylib" ] && [ "$i" != "/usr/lib/system/libsystem_c.dylib" ]; then
diff --git a/pkgs/os-specific/darwin/apple-source-releases/Libsystem/reexported_libraries b/pkgs/os-specific/darwin/apple-source-releases/Libsystem/reexported_libraries
new file mode 100644
index 00000000000..00aaba1d498
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/Libsystem/reexported_libraries
@@ -0,0 +1,41 @@
+# These are generated with otool -L /usr/lib/libSystem.dylib on a 10.11 machine
+/usr/lib/system/libcache.dylib
+/usr/lib/system/libcommonCrypto.dylib
+/usr/lib/system/libcompiler_rt.dylib
+/usr/lib/system/libcopyfile.dylib
+/usr/lib/system/libcorecrypto.dylib
+/usr/lib/system/libdispatch.dylib
+/usr/lib/system/libdyld.dylib
+/usr/lib/system/libkeymgr.dylib
+/usr/lib/system/liblaunch.dylib
+/usr/lib/system/libmacho.dylib
+/usr/lib/system/libquarantine.dylib
+/usr/lib/system/libremovefile.dylib
+/usr/lib/system/libsystem_asl.dylib
+/usr/lib/system/libsystem_blocks.dylib
+
+# We handle this specially in the expression
+# /usr/lib/system/libsystem_c.dylib
+
+/usr/lib/system/libsystem_configuration.dylib
+/usr/lib/system/libsystem_coreservices.dylib
+/usr/lib/system/libsystem_coretls.dylib
+/usr/lib/system/libsystem_dnssd.dylib
+/usr/lib/system/libsystem_info.dylib
+
+# We handle this specially in the expression
+# /usr/lib/system/libsystem_kernel.dylib
+
+/usr/lib/system/libsystem_m.dylib
+/usr/lib/system/libsystem_malloc.dylib
+/usr/lib/system/libsystem_network.dylib
+/usr/lib/system/libsystem_networkextension.dylib
+/usr/lib/system/libsystem_notify.dylib
+/usr/lib/system/libsystem_platform.dylib
+/usr/lib/system/libsystem_pthread.dylib
+/usr/lib/system/libsystem_sandbox.dylib
+/usr/lib/system/libsystem_secinit.dylib
+/usr/lib/system/libsystem_trace.dylib
+/usr/lib/system/libunc.dylib
+/usr/lib/system/libunwind.dylib
+/usr/lib/system/libxpc.dylib
diff --git a/pkgs/os-specific/darwin/cctools/ld-tbd-v2.patch b/pkgs/os-specific/darwin/cctools/ld-tbd-v2.patch
deleted file mode 100644
index 9aae2be1d03..00000000000
--- a/pkgs/os-specific/darwin/cctools/ld-tbd-v2.patch
+++ /dev/null
@@ -1,98 +0,0 @@
-diff --git a/cctools/ld64/src/ld/parsers/textstub_dylib_file.cpp b/cctools/ld64/src/ld/parsers/textstub_dylib_file.cpp
-index 09c0e12..ac6b085 100644
---- a/cctools/ld64/src/ld/parsers/textstub_dylib_file.cpp
-+++ b/cctools/ld64/src/ld/parsers/textstub_dylib_file.cpp
-@@ -187,6 +187,7 @@ struct DynamicLibrary {
- 	ld::File::ObjcConstraint _objcConstraint;
- 	Options::Platform _platform;
- 	std::vector<Token> _allowedClients;
-+	std::vector<Token> _allowableClients;
- 	std::vector<Token> _reexportedLibraries;
- 	std::vector<Token> _symbols;
- 	std::vector<Token> _classes;
-@@ -246,6 +247,14 @@ class TBDFile {
- 		});
- 	}
- 
-+	void parseAllowableClients(DynamicLibrary& lib) {
-+		if ( !hasOptionalToken("allowable-clients") )
-+			return;
-+		parseFlowSequence([&](Token name) {
-+			lib._allowableClients.emplace_back(name);
-+		});
-+	}
-+
- 	void parseReexportedDylibs(DynamicLibrary& lib) {
- 		if ( !hasOptionalToken("re-exports") )
- 			return;
-@@ -306,6 +315,21 @@ class TBDFile {
- 		return false;
- 	}
- 
-+	void skipUUIDs(DynamicLibrary& lib) {
-+		expectToken("uuids");
-+		while ( true ) {
-+			auto token = next();
-+			if ( token == "]" )
-+				break;
-+		}
-+	}
-+
-+	void skipParentUmbrella(DynamicLibrary& lib) {
-+		if (!hasOptionalToken("parent-umbrella"))
-+			return;
-+		next();
-+	}
-+
- 	void parsePlatform(DynamicLibrary& lib) {
- 		expectToken("platform");
- 
-@@ -410,6 +434,7 @@ class TBDFile {
- 			}
- 
- 			parseAllowedClients(lib);
-+			parseAllowableClients(lib);
- 			parseReexportedDylibs(lib);
- 			parseSymbols(lib);
- 			if ( !hasOptionalToken("-") )
-@@ -455,17 +480,21 @@ class TBDFile {
- 			return result.front();
- 	}
- 
--	void parseDocument(DynamicLibrary& lib, std::string &requestedArchName) {
-+	void parseDocument(DynamicLibrary& lib, std::string &requestedArchName, bool isTbdV2) {
- 		auto selectedArchName = parseAndSelectArchitecture(requestedArchName);
- 		if (selectedArchName.empty())
- 			throwf("invalid arch");
- 
-+		if(isTbdV2)
-+			skipUUIDs(lib);
- 		parsePlatform(lib);
- 		parseInstallName(lib);
- 		parseCurrentVersion(lib);
- 		parseCompatibilityVersion(lib);
- 		parseSwiftVersion(lib);
- 		parseObjCConstraint(lib);
-+		if(isTbdV2)
-+			skipParentUmbrella(lib);
- 		parseExportsBlock(lib, selectedArchName);
- 	}
- 
-@@ -476,7 +505,8 @@ public:
- 		_tokenizer.reset();
- 		DynamicLibrary lib;
- 		expectToken("---");
--		parseDocument(lib, requestedArchName);
-+		auto isTbdV2 = hasOptionalToken("!tapi-tbd-v2");
-+		parseDocument(lib, requestedArchName, isTbdV2);
- 		expectToken("...");
- 		return lib;
- 	}
-@@ -486,6 +516,7 @@ public:
- 		auto token = next();
- 		if ( token != "---" )
- 			return false;
-+		hasOptionalToken("!tapi-tbd-v2");
- 		return !parseAndSelectArchitecture(requestedArchName).empty();
- 	}
- 
diff --git a/pkgs/os-specific/darwin/cctools/port.nix b/pkgs/os-specific/darwin/cctools/port.nix
index 202426e7872..0154d395216 100644
--- a/pkgs/os-specific/darwin/cctools/port.nix
+++ b/pkgs/os-specific/darwin/cctools/port.nix
@@ -6,13 +6,13 @@
 let
   baseParams = rec {
     name = "cctools-port-${version}";
-    version = "886";
+    version = "895";
 
     src = fetchFromGitHub {
       owner  = "tpoechtrager";
       repo   = "cctools-port";
-      rev    = "02f0b8ecd87a3951653d838a321ae744815e21a5";
-      sha256 = "0bzyabzr5dvbxglr74d0kbrk2ij5x7s5qcamqi1v546q1had1wz1";
+      rev    = "2e569d765440b8cd6414a695637617521aa2375b"; # From branch 895-ld64-274.2
+      sha256 = "0l45mvyags56jfi24rawms8j2ihbc45mq7v13pkrrwppghqrdn52";
     };
 
     buildInputs = [ autoconf automake libtool_2 libuuid ] ++
@@ -22,10 +22,6 @@ let
 
     patches = [
       ./ld-rpath-nonfinal.patch ./ld-ignore-rpath-link.patch
-    ] ++ stdenv.lib.optionals stdenv.isDarwin [
-      # See https://github.com/tpoechtrager/cctools-port/issues/24. Remove when that's fixed.
-      ./undo-unknown-triple.patch
-      ./ld-tbd-v2.patch
     ];
 
     enableParallelBuilding = true;
diff --git a/pkgs/os-specific/darwin/cctools/undo-unknown-triple.patch b/pkgs/os-specific/darwin/cctools/undo-unknown-triple.patch
deleted file mode 100644
index 7df9bdd16da..00000000000
--- a/pkgs/os-specific/darwin/cctools/undo-unknown-triple.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/cctools/as/driver.c b/cctools/as/driver.c
-index b06d085..c03397a 100644
---- a/cctools/as/driver.c
-+++ b/cctools/as/driver.c
-@@ -363,12 +363,6 @@ char **envp)
- 	    /* Add -c or clang will run ld(1). */
- 	    new_argv[j] = "-c";
- 	    j++;
--	    /* cctools-port start */
--	    new_argv[j] = "-target";
--	    j++;
--	    new_argv[j] = "unknown-apple-darwin";
--	    j++;
--	    /* cctools-port end */
- 	    new_argv[j] = NULL;
- 	    if(execute(new_argv, verbose))
- 		exit(0);
diff --git a/pkgs/os-specific/darwin/install_name_tool/default.nix b/pkgs/os-specific/darwin/install_name_tool/default.nix
deleted file mode 100644
index 581eb31cc71..00000000000
--- a/pkgs/os-specific/darwin/install_name_tool/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ stdenv }:
-
-assert stdenv.isDarwin;
-
-stdenv.mkDerivation {
-  name = "install_name_tool";
-  src = "/usr/bin/install_name_tool";
-
-  unpackPhase = "true";
-  dontBuild = true;
-
-  installPhase = ''
-    mkdir -p "$out"/bin
-    ln -s "$src" "$out"/bin
-  '';
-
-  meta = with stdenv.lib; {
-    description = "Change dynamic shared library install names";
-    homepage    = https://developer.apple.com/library/mac/documentation/Darwin/Reference/Manpages/man1/install_name_tool.1.html;
-    maintainers = with maintainers; [ lovek323 ];
-    platforms   = platforms.darwin;
-
-    longDescription = ''
-      Install_name_tool changes the dynamic shared library install names and or
-      adds, changes or deletes the rpaths recorded in a Mach-O binary.
-    '';
-  };
-}
-
diff --git a/pkgs/os-specific/linux/blcr/default.nix b/pkgs/os-specific/linux/blcr/default.nix
index c2e3fa4b9e1..ab1a93b3a70 100644
--- a/pkgs/os-specific/linux/blcr/default.nix
+++ b/pkgs/os-specific/linux/blcr/default.nix
@@ -1,14 +1,10 @@
 { stdenv, lib, fetchurl, kernel, perl, makeWrapper }:
 
-# BLCR 0.8.5 should works for kernel version up to 3.7.1
-# BLCR 0.8.6 should works for kernel version up to 3.17.x
+# BLCR version 0.8.6 should works with linux kernel up to version 3.17.x
 
 assert stdenv.isLinux;
 assert builtins.compareVersions "3.18" kernel.version == 1;
 
-# it doesn't compile anymore on 3.12
-assert lib.versionAtLeast kernel.version "3.14";
-
 stdenv.mkDerivation {
   name = "blcr_${kernel.version}-0.8.6pre4";
 
diff --git a/pkgs/os-specific/linux/broadcom-sta/default.nix b/pkgs/os-specific/linux/broadcom-sta/default.nix
index c548b55105d..8b2bac38438 100644
--- a/pkgs/os-specific/linux/broadcom-sta/default.nix
+++ b/pkgs/os-specific/linux/broadcom-sta/default.nix
@@ -25,13 +25,10 @@ stdenv.mkDerivation {
     ./i686-build-failure.patch
     ./license.patch
     ./linux-4.7.patch
+    # source: https://git.archlinux.org/svntogit/community.git/tree/trunk/004-linux48.patch?h=packages/broadcom-wl-dkms
+    ./linux-4.8.patch
     ./null-pointer-fix.patch
     ./gcc.patch
-    (fetchpatch {
-      name = "linux-4.8.patch";
-      url = "https://aur.archlinux.org/cgit/aur.git/plain/004-linux48.patch?h=broadcom-wl-dkms";
-      sha256 = "1g1gazxx67kxyw242cli6bf62il7ikzmf0w6v14k44j6b4bihcax";
-    })
   ];
 
   makeFlags = "KBASE=${kernel.dev}/lib/modules/${kernel.modDirVersion}";
diff --git a/pkgs/os-specific/linux/broadcom-sta/linux-4.8.patch b/pkgs/os-specific/linux/broadcom-sta/linux-4.8.patch
new file mode 100644
index 00000000000..20e8a9ae49d
--- /dev/null
+++ b/pkgs/os-specific/linux/broadcom-sta/linux-4.8.patch
@@ -0,0 +1,64 @@
+From d3f93542326a06d920c6eb89b703384290d37b8b Mon Sep 17 00:00:00 2001
+From: Alberto Milone <alberto.milone@canonical.com>
+Date: Fri, 2 Sep 2016 17:35:34 +0200
+Subject: [PATCH 1/1] Add support for Linux 4.8
+
+Orginal author: Krzysztof Kolasa
+---
+ src/wl/sys/wl_cfg80211_hybrid.c | 22 ++++++++++++++++++++++
+ 1 file changed, 22 insertions(+)
+
+diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c
+index 2fc71fe..ec5e472 100644
+--- a/src/wl/sys/wl_cfg80211_hybrid.c
++++ b/src/wl/sys/wl_cfg80211_hybrid.c
+@@ -2388,8 +2388,16 @@ wl_bss_connect_done(struct wl_cfg80211_priv *wl, struct net_device *ndev,
+ 	s32 err = 0;
+ 
+ 	if (wl->scan_request) {
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0)
++		struct cfg80211_scan_info info = {
++			.aborted = true,
++		};
++		WL_DBG(("%s: Aborting scan\n", __FUNCTION__));
++		cfg80211_scan_done(wl->scan_request, &info);
++#else
+ 		WL_DBG(("%s: Aborting scan\n", __FUNCTION__));
+ 		cfg80211_scan_done(wl->scan_request, true);     
++#endif
+ 		wl->scan_request = NULL;
+ 	}
+ 
+@@ -2490,7 +2498,14 @@ wl_notify_scan_status(struct wl_cfg80211_priv *wl, struct net_device *ndev,
+ 
+ scan_done_out:
+ 	if (wl->scan_request) {
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0)
++		struct cfg80211_scan_info info = {
++			.aborted = false,
++		};
++		cfg80211_scan_done(wl->scan_request, &info);
++#else
+ 		cfg80211_scan_done(wl->scan_request, false);
++#endif
+ 		wl->scan_request = NULL;
+ 	}
+ 	rtnl_unlock();
+@@ -2909,7 +2924,14 @@ s32 wl_cfg80211_down(struct net_device *ndev)
+ 	s32 err = 0;
+ 
+ 	if (wl->scan_request) {
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0)
++		struct cfg80211_scan_info info = {
++			.aborted = true,
++		};
++		cfg80211_scan_done(wl->scan_request, &info);
++#else
+ 		cfg80211_scan_done(wl->scan_request, true);	
++#endif
+ 		wl->scan_request = NULL;
+ 	}
+ 
+-- 
+2.7.4
+
diff --git a/pkgs/os-specific/linux/firejail/default.nix b/pkgs/os-specific/linux/firejail/default.nix
index 27acc8f1c28..cf7fe8fc841 100644
--- a/pkgs/os-specific/linux/firejail/default.nix
+++ b/pkgs/os-specific/linux/firejail/default.nix
@@ -3,11 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="firejail";
-    version="0.9.44.8";
+    version="0.9.44.10";
     name="${baseName}-${version}";
-    hash="0w87n5qzvylbjipaf45sw65gg4rpqcbi32zw9cs1jbfvf4bikzmr";
-    url="https://netix.dl.sourceforge.net/project/firejail/firejail/firejail-0.9.44.8.tar.xz";
-    sha256="0w87n5qzvylbjipaf45sw65gg4rpqcbi32zw9cs1jbfvf4bikzmr";
+    hash="19wln3h54wcscqgcmkm8sprdh7vrn5k91rr0hagv055y1i52c7mj";
+    url="https://netix.dl.sourceforge.net/project/firejail/firejail/firejail-0.9.44.10.tar.xz";
+    sha256="19wln3h54wcscqgcmkm8sprdh7vrn5k91rr0hagv055y1i52c7mj";
   };
   buildInputs = [
     which
diff --git a/pkgs/os-specific/linux/firejail/default.upstream b/pkgs/os-specific/linux/firejail/default.upstream
index 4a0037e8aa4..186dd4408b7 100644
--- a/pkgs/os-specific/linux/firejail/default.upstream
+++ b/pkgs/os-specific/linux/firejail/default.upstream
@@ -1,3 +1,3 @@
 url http://sourceforge.net/projects/firejail/files/firejail/
-version_link '[.]tar[.][a-z0-9]+/download$'
+version_link '[-][0-9.]+[.]tar[.][a-z0-9]+/download$'
 SF_redirect
diff --git a/pkgs/os-specific/linux/firmware/rtl8192su-firmware/default.nix b/pkgs/os-specific/linux/firmware/rtl8192su-firmware/default.nix
new file mode 100644
index 00000000000..d8d4c37fd88
--- /dev/null
+++ b/pkgs/os-specific/linux/firmware/rtl8192su-firmware/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchFromGitHub }:
+with stdenv.lib;
+stdenv.mkDerivation {
+  name = "rtl8192su-unstable-2016-10-05";
+
+  src = fetchFromGitHub {
+    owner = "chunkeey";
+    repo = "rtl8192su";
+    rev = "c00112c9a14133290fe30bd3b44e45196994cb1c";
+    sha256 = "0j3c35paapq1icmxq0mg7pm2xa2m69q7bkfmwgq99d682yr2cb5l";
+  };
+
+  phases = [ "unpackPhase" "installPhase" ];
+
+  installPhase = ''
+    for i in rtl8192sfw.bin \
+             rtl8192sufw-ap.bin \
+             rtl8192sufw-apple.bin \
+             rtl8192sufw-windows.bin \
+             rtl8712u-linux-firmware-bad.bin \
+             rtl8712u-most-recent-v2.6.6-bad.bin \
+             rtl8712u-most-recent-v2.6.6-bad.bin \
+             rtl8712u-oldest-but-good.bin;
+    do
+      install -D -pm644 firmwares/$i $out/lib/firmware/rtlwifi/$i
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Firmware for Realtek RTL8188SU/RTL8191SU/RTL8192SU";
+    homepage = https://github.com/chunkeey/rtl8192su;
+    license = licenses.unfreeRedistributableFirmware;
+    maintainers = with maintainers; [ mic92 ];
+    platforms = with platforms; linux;
+  };
+}
diff --git a/pkgs/os-specific/linux/i2c-tools/default.nix b/pkgs/os-specific/linux/i2c-tools/default.nix
index 7d2a5f795d9..1f67743af0d 100644
--- a/pkgs/os-specific/linux/i2c-tools/default.nix
+++ b/pkgs/os-specific/linux/i2c-tools/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "i2c-tools-${version}";
-  version = "3.1.1";
+  version = "3.1.2";
 
   src = fetchurl {
     url = "http://http.debian.net/debian/pool/main/i/i2c-tools/i2c-tools_${version}.orig.tar.bz2";
-    sha256 = "000pvg995qy1b15ks59gd0klri55hb33kqpg5czy84hw1pbdgm0l";
+    sha256 = "0hd4c1w8lnwc3j95h3vpd125170l1d4myspyrlpamqx6wbr6jpnv";
   };
 
   buildInputs = [ perl ];
diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix
index 09e4d9e1ecd..2c4dbc7d20f 100644
--- a/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/pkgs/os-specific/linux/kernel/common-config.nix
@@ -100,6 +100,10 @@ with stdenv.lib;
   # Disable some expensive (?) features.
   PM_TRACE_RTC n
 
+  # Enable initrd support.
+  BLK_DEV_RAM y
+  BLK_DEV_INITRD y
+
   # Enable various subsystems.
   ACCESSIBILITY y # Accessibility support
   AUXDISPLAY y # Auxiliary Display support
@@ -119,6 +123,7 @@ with stdenv.lib;
   ${optionalString (versionOlder version "3.13") ''
     IPV6_PRIVACY y
   ''}
+  NETFILTER y
   NETFILTER_ADVANCED y
   IP_ROUTE_VERBOSE y
   IP_MROUTE_MULTIPLE_TABLES y
diff --git a/pkgs/os-specific/linux/kernel/generate-config.pl b/pkgs/os-specific/linux/kernel/generate-config.pl
index 5574cc937af..5bce3af9429 100644
--- a/pkgs/os-specific/linux/kernel/generate-config.pl
+++ b/pkgs/os-specific/linux/kernel/generate-config.pl
@@ -17,6 +17,7 @@ my $wd = getcwd;
 
 my $debug = $ENV{'DEBUG'};
 my $autoModules = $ENV{'AUTO_MODULES'};
+my $preferBuiltin = $ENV{'PREFER_BUILTIN'};
     
 $SIG{PIPE} = 'IGNORE';
 
@@ -73,7 +74,7 @@ sub runConfig {
                 my $question = $1; my $name = $2; my $alts = $3;
                 my $answer = "";
                 # Build everything as a module if possible.
-                $answer = "m" if $autoModules && $alts =~ /\/m/;
+                $answer = "m" if $autoModules && $alts =~ /\/m/ && !($preferBuiltin && $alts =~ /Y/);
                 $answer = $answers{$name} if defined $answers{$name};
                 print STDERR "QUESTION: $question, NAME: $name, ALTS: $alts, ANSWER: $answer\n" if $debug;
                 print OUT "$answer\n";
diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix
index af14434b08f..16b35e9aa3e 100644
--- a/pkgs/os-specific/linux/kernel/generic.nix
+++ b/pkgs/os-specific/linux/kernel/generic.nix
@@ -55,6 +55,7 @@ let
     kernelBaseConfig = stdenv.platform.kernelBaseConfig;
     kernelTarget = stdenv.platform.kernelTarget;
     autoModules = stdenv.platform.kernelAutoModules;
+    preferBuiltin = stdenv.platform.kernelPreferBuiltin or false;
     arch = stdenv.platform.kernelArch;
 
     crossAttrs = let
@@ -92,7 +93,7 @@ let
       echo "generating kernel configuration..."
       echo "$kernelConfig" > kernel-config
       DEBUG=1 ARCH=$arch KERNEL_CONFIG=kernel-config AUTO_MODULES=$autoModules \
-           SRC=../$sourceRoot perl -w $generateConfig
+           PREFER_BUILTIN=$preferBuiltin SRC=../$sourceRoot perl -w $generateConfig
     '';
 
     installPhase = "mv .config $out";
diff --git a/pkgs/os-specific/linux/kernel/linux-4.10.nix b/pkgs/os-specific/linux/kernel/linux-4.10.nix
index a4fa8f65c39..cf68997c2fb 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.10.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.10.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.10.8";
+  version = "4.10.12";
   extraMeta.branch = "4.10";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "12wf3nzhs0hbl87ckwc15b492z50lg4c7rxwqw50px3zhh5mvf8a";
+    sha256 = "1i1vzv9y9pdkpyir04pnlsacnlahp15bqqgrl68hn3ni20macx7q";
   };
 
   kernelPatches = args.kernelPatches;
diff --git a/pkgs/os-specific/linux/kernel/linux-4.4.nix b/pkgs/os-specific/linux/kernel/linux-4.4.nix
index da633753e70..c5b52890c60 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.4.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.4.59";
+  version = "4.4.63";
   extraMeta.branch = "4.4";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1jlnm6msxdhm7l6all91rd1rkqsqpd0rblbdl68z7nkz9hy55sb4";
+    sha256 = "1v2pilwzkdcxvda96g1yy62abqz6w2zhcymgj73maz9836xsjxbv";
   };
 
   kernelPatches = args.kernelPatches;
diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix
index e8facc96ebc..706f31ea6c5 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.9.20";
+  version = "4.9.24";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0h8km3z5c3qyhwq24dvh00j2jzfcyqdjjcjrrz5qvyrjvl30hrj8";
+    sha256 = "01ig3hmalzkn783d5pppw1x473y0mma54rx7dfnany15n62w9csh";
   };
 
   kernelPatches = args.kernelPatches;
diff --git a/pkgs/os-specific/linux/kernel/linux-grsecurity.nix b/pkgs/os-specific/linux/kernel/linux-grsecurity.nix
index b32dfbc4b35..166836a3275 100644
--- a/pkgs/os-specific/linux/kernel/linux-grsecurity.nix
+++ b/pkgs/os-specific/linux/kernel/linux-grsecurity.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.9.20";
+  version = "4.9.24";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha512 = "3israf7zhq92wi0py8y299f7cz6z6xr0y4i5b1xvb46ljyx39jwrrdjrf5nxngz6c1641l9qalwzg5r15pp4gqyr09ilmwn8i7kbqwi";
+    sha512 = "3031ldw2f6dwkm3z1cn7rw8y4diq57rs3na64nzkw7xw4q74cfpzzp5866vf58y0fsyl8l2vgvwza7cdhxywmmxp7q0q5385jn8nnvd";
   };
 
   kernelPatches = args.kernelPatches;
diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix
index f56b1df6184..932c6602842 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.11-rc5";
-  modDirVersion = "4.11.0-rc5";
+  version = "4.11-rc7";
+  modDirVersion = "4.11.0-rc7";
   extraMeta.branch = "4.11";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/testing/linux-${version}.tar.xz";
-    sha256 = "0qmb8sssh4f4zhvasy20k30r8cwc03qm5ql3b25cj16cn3frp0q7";
+    sha256 = "0zifawlrc62gsqmg91858wxx7vbpz0drjbhzmmbpplj3j7pdlly5";
   };
 
   features.iwlwifi = true;
diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix
index d8676413e82..b014dd8482c 100644
--- a/pkgs/os-specific/linux/kernel/patches.nix
+++ b/pkgs/os-specific/linux/kernel/patches.nix
@@ -100,9 +100,9 @@ rec {
   };
 
   grsecurity_testing = grsecPatch
-    { kver   = "4.9.20";
-      grrev  = "201703310823";
-      sha512 = "0pm3wmcip73imjjx13yar5l5bhpii45mjac5vb1snypmbwqmywmikiixqslq84i1yqw0c8pi822znkz7650dhxrmdmagy0yirwfdrhf";
+    { kver   = "4.9.24";
+      grrev  = "201704210851";
+      sha512 = "398cnj7cnzp2vxy54y1538bgqrg2gbz2f7wnx2yhv5xgdwc9b87z9r0d7znk3ah79vrpr2m87394m6zk7d96sjq483y4nm9b1rz5pmn";
     };
 
   # This patch relaxes grsec constraints on the location of usermode helpers,
diff --git a/pkgs/os-specific/linux/kmod/default.nix b/pkgs/os-specific/linux/kmod/default.nix
index 138130fa82e..5d0dca7b6be 100644
--- a/pkgs/os-specific/linux/kmod/default.nix
+++ b/pkgs/os-specific/linux/kmod/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, autoreconfHook, xz, zlib, pkgconfig, libxslt }:
+{ stdenv, buildPackages, lib, fetchurl, autoreconfHook, pkgconfig, libxslt, xz }:
 
 let
   systems = [ "/run/current-system/kernel-modules" "/run/booted-system/kernel-modules" "" ];
@@ -14,13 +14,14 @@ in stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig libxslt ];
-  buildInputs = [ xz /* zlib */ ];
+  buildInputs = [ xz ];
+  # HACK until BUG issue #21191 is addressed
+  crossAttrs.preUnpack = ''PATH="${buildPackages.xz}/bin''${PATH:+:}$PATH"'';
 
   configureFlags = [
     "--sysconfdir=/etc"
     "--with-xz"
     "--with-modulesdirs=${modulesDirs}"
-    # "--with-zlib"
   ];
 
   patches = [ ./module-dir.patch ];
diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix
index f04ff107ea6..f5e849e95e1 100644
--- a/pkgs/os-specific/linux/nvidia-x11/default.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/default.nix
@@ -22,11 +22,11 @@ in
   };
 
   legacy_340 = generic {
-    version = "340.101";
-    sha256_32bit = "0qmhkvxj6h63sayys9gldpafw5skpv8nsm2gxxb3pxcv7nfdlpjz";
-    sha256_64bit = "02k8j0xzxp2y4vay0kf982q382ny1i4g1kai93f2h5sak6sq3kyj";
-    settingsSha256 = "1mavbhff24n0jn154af152fp04njd505scdlxdm850h1ycb2i3g9";
-    persistencedSha256 = "1396bmmg9b1z805dzljgi2f219ji84wfnnifdbk32dpd5mrywjk0";
+    version = "340.102";
+    sha256_32bit = "0a484i37j00d0rc60q0bp6fd2wfrx2c4r32di9w5svqgmrfkvcb1";
+    sha256_64bit = "0nnz51d48a5fpnnmlz1znjp937k3nshdq46fw1qm8h00dkrd55ib";
+    settingsSha256 = "0nm5c06b09p6wsxpyfaqrzsnal3p1047lk6p4p2a0vksb7id9598";
+    persistencedSha256 = "1jwmggbph9zd8fj4syihldp2a5bxff7q1i2l9c55xz8cvk0rx08i";
     useGLVND = false;
   };
 
diff --git a/pkgs/os-specific/linux/nvidia-x11/fs52243.patch b/pkgs/os-specific/linux/nvidia-x11/fs52243.patch
new file mode 100644
index 00000000000..212df64fa61
--- /dev/null
+++ b/pkgs/os-specific/linux/nvidia-x11/fs52243.patch
@@ -0,0 +1,14 @@
+--- a/kernel/nv-drm.c
++++ b/kernel/nv-drm.c
+@@ -115,7 +115,11 @@
+ };
+ 
+ static struct drm_driver nv_drm_driver = {
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
++    .driver_features = DRIVER_GEM | DRIVER_PRIME | DRIVER_LEGACY,
++#else
+     .driver_features = DRIVER_GEM | DRIVER_PRIME,
++#endif
+     .load = nv_drm_load,
+     .unload = nv_drm_unload,
+     .fops = &nv_drm_fops,
diff --git a/pkgs/os-specific/linux/nvidia-x11/generic.nix b/pkgs/os-specific/linux/nvidia-x11/generic.nix
index 4573766b78b..9441ce772c8 100644
--- a/pkgs/os-specific/linux/nvidia-x11/generic.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/generic.nix
@@ -8,7 +8,7 @@
 , preferGtk2 ? false
 }:
 
-{ stdenv, callPackage, callPackage_i686, buildEnv, fetchurl
+{ stdenv, callPackage, callPackage_i686, fetchurl
 , kernel ? null, xorg, zlib, perl, nukeReferences
 , # Whether to build the libraries only (i.e. not the kernel module or
   # nvidia-settings).  Used to support 32-bit binaries on 64-bit
@@ -43,8 +43,20 @@ let
       else throw "nvidia-x11 does not support platform ${stdenv.system}";
 
     # patch to get the nvidia and nvidiaBeta driver to compile on kernel 4.10
-    patches = if libsOnly || versionOlder version "375"
+    patches = if libsOnly
               then null
+              else if versionOlder version "340"
+              then null
+              else if versionOlder version "375"
+              then [
+                     (fetchurl {
+                         url = https://git.archlinux.org/svntogit/packages.git/plain/trunk/4.10.0_kernel.patch?h=packages/nvidia-340xx;
+                         sha256 = "08k2phr9kawg6a3v88d4zkj7gdlih29gm5a1gmhpgmvd926k0z5l";
+                     })
+                         # from https://git.archlinux.org/svntogit/packages.git/plain/trunk/fs52243.patch?h=packages/nvidia-340xx
+                         # with datestamps removed
+                     ./fs52243.patch
+                   ]
               else [ (fetchurl {
                       url = https://git.archlinux.org/svntogit/packages.git/plain/trunk/kernel_4.10.patch?h=packages/nvidia;  sha256 = "0zhpx3baq2pca2pmz1af5cp2nzjxjx0j9w5xrdy204mnv3v2708z";
                      }) ];
@@ -73,7 +85,7 @@ let
         withGtk2 = preferGtk2;
         withGtk3 = !preferGtk2;
       };
-      persistenced = if persistencedSha256 == null then null else callPackage (import ./persistenced.nix self persistencedSha256) { };
+      persistenced = mapNullable (hash: callPackage (import ./persistenced.nix self hash) { }) persistencedSha256;
     };
 
     meta = with stdenv.lib; {
diff --git a/pkgs/os-specific/linux/procps-ng/default.nix b/pkgs/os-specific/linux/procps-ng/default.nix
index afe1a438860..c52dfbe461a 100644
--- a/pkgs/os-specific/linux/procps-ng/default.nix
+++ b/pkgs/os-specific/linux/procps-ng/default.nix
@@ -1,11 +1,12 @@
 { lib, stdenv, fetchurl, ncurses }:
 
-stdenv.mkDerivation {
-  name = "procps-3.3.11";
+stdenv.mkDerivation rec {
+  name = "procps-${version}";
+  version = "3.3.12";
 
   src = fetchurl {
-    url = mirror://sourceforge/procps-ng/procps-ng-3.3.11.tar.xz;
-    sha256 = "1va4n0mpsq327ca9dqp4hnrpgs6821rp0f2m0jyc1bfjl9lk2jg9";
+    url = "mirror://sourceforge/procps-ng/procps-ng-${version}.tar.xz";
+    sha256 = "1m57w6jmry84njd5sgk5afycbglql0al80grx027kwqqcfw5mmkf";
   };
 
   buildInputs = [ ncurses ];
diff --git a/pkgs/os-specific/linux/sysdig/default.nix b/pkgs/os-specific/linux/sysdig/default.nix
index b23da5451d1..27a0d301acf 100644
--- a/pkgs/os-specific/linux/sysdig/default.nix
+++ b/pkgs/os-specific/linux/sysdig/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
     stdenv.cc.cc
   ];
 
-  postInstall = ''
+  postInstall = optionalString (!stdenv.isDarwin) ''
     patchelf --set-rpath "$libPath" "$out/bin/sysdig"
     patchelf --set-rpath "$libPath" "$out/bin/csysdig"
   '' + optionalString (kernel != null) ''
diff --git a/pkgs/os-specific/linux/tcp-wrappers/default.nix b/pkgs/os-specific/linux/tcp-wrappers/default.nix
index 850fbe9f449..526b1a86db1 100644
--- a/pkgs/os-specific/linux/tcp-wrappers/default.nix
+++ b/pkgs/os-specific/linux/tcp-wrappers/default.nix
@@ -57,6 +57,6 @@ in stdenv.mkDerivation rec {
 
     homepage = ftp://ftp.porcupine.org/pub/security/index.html;
     license = "BSD-style";
-    platforms = stdenv.lib.platforms.unix;
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/os-specific/linux/wireguard/default.nix b/pkgs/os-specific/linux/wireguard/default.nix
index 68966dd0399..641fb046c6d 100644
--- a/pkgs/os-specific/linux/wireguard/default.nix
+++ b/pkgs/os-specific/linux/wireguard/default.nix
@@ -6,11 +6,11 @@ assert kernel != null -> stdenv.lib.versionAtLeast kernel.version "3.18";
 let
   name = "wireguard-${version}";
 
-  version = "0.0.20170324";
+  version = "0.0.20170409";
 
   src = fetchurl {
     url    = "https://git.zx2c4.com/WireGuard/snapshot/WireGuard-${version}.tar.xz";
-    sha256 = "2ec08a5d74cb3a63576f06d3cae695b6b8995acd9665e2fa4da91927b467ca51";
+    sha256 = "065vxxvdsnxk9paqbafi0c622b4qayfh3ps6zzb853qp2i6kniri";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/servers/cayley/default.nix b/pkgs/servers/cayley/default.nix
new file mode 100644
index 00000000000..9249d7cc347
--- /dev/null
+++ b/pkgs/servers/cayley/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "cayley-${version}";
+  version = "0.6.1";
+
+  goPackagePath = "github.com/cayleygraph/cayley";
+
+  src = fetchFromGitHub {
+    owner = "cayleygraph";
+    repo = "cayley";
+    rev = "v${version}";
+    sha256 = "1r0kw3y32bqm7g37svzrch2qj9n45p93xmsrf7dj1cg4wwkb65ry";
+  };
+
+  goDeps = ./deps.nix;
+
+  buildFlagsArray = ''
+    -ldflags=
+      -X=main.Version=${version}
+  '';
+  
+  meta = {
+    homepage = "https://cayley.io/";
+    description = "A graph database inspired by Freebase and Knowledge Graph";
+    maintainers = with stdenv.lib.maintainers; [ sigma ];
+    license = stdenv.lib.licenses.asl20;
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/pkgs/servers/cayley/deps.nix b/pkgs/servers/cayley/deps.nix
new file mode 100644
index 00000000000..1e6fadf9f4d
--- /dev/null
+++ b/pkgs/servers/cayley/deps.nix
@@ -0,0 +1,272 @@
+[
+  {
+    goPackagePath = "github.com/badgerodon/peg";
+    fetch = {
+      type = "git";
+      url = "https://github.com/badgerodon/peg";
+      rev = "9e5f7f4d07ca576562618c23e8abadda278b684f";
+      sha256 = "12vd7hzdgknn8byz77lmvcrz9m5lvmffdnz2wwk83304przkra11";
+    };
+  }
+  {
+    goPackagePath = "github.com/boltdb/bolt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/boltdb/bolt";
+      rev = "a705895fdad108f053eae7ee011ed94a0541ee13";
+      sha256 = "0ql67l2hmjhplkl80j9a49qlra4qx671il5rgn58afkvk20cgq2r";
+    };
+  }
+  {
+    goPackagePath = "github.com/cznic/mathutil";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cznic/mathutil";
+      rev = "f9551431b78e71ee24939a1e9d8f49f43898b5cd";
+      sha256 = "1158mlwzryyna1qslr9v88i0k8x6m8vs4rljnnwh04rmd63ksj75";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "2df174808ee097f90d259e432cc04442cf60be21";
+      sha256 = "0jghd5dmwqpcjbxij9yjj8sjzll9s65i2qnxd8rdzwh77xdsfm9g";
+    };
+  }
+  {
+    goPackagePath = "github.com/dlclark/regexp2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dlclark/regexp2";
+      rev = "4009c9dc49dd8906bfd4d479c255470d6a477ce5";
+      sha256 = "1r6f0q1jvn1lkwqlrmmg5d90p6zss8s64jyp91hp6i97vpahq8xz";
+    };
+  }
+  {
+    goPackagePath = "github.com/dop251/goja";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dop251/goja";
+      rev = "64f863c4eb0329df18ecd1dab1e03609556bfaca";
+      sha256 = "0smipfs7fja286nvlr7q4b8f815br0nia0k4xp8y5fvprrzrm64h";
+    };
+  }
+  {
+    goPackagePath = "github.com/gogo/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gogo/protobuf";
+      rev = "50d1bd39ce4e7a96b75e3e040be9caf79dbb4c61";
+      sha256 = "09cad9j98pdqh1sp191j92ng6lvw9la3k3v6m5mv38nwirpwzra1";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/glog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/glog";
+      rev = "23def4e6c14b4da8ac2ed8007337bc5eb5007998";
+      sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "888eb0692c857ec880338addf316bd662d5e630e";
+      sha256 = "1vhx2dwr71hma9z3dfb3l1yrkjlry0glwxknxzyp9ds51i6pjiq0";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-cleanhttp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-cleanhttp";
+      rev = "ad28ea4487f05916463e2423a55166280e8254b5";
+      sha256 = "0xw0qas3ixg8p2xh09hhc81km0mfn9lbnfgrdb309hzcwhmiyqjm";
+    };
+  }
+  {
+    goPackagePath = "github.com/julienschmidt/httprouter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/julienschmidt/httprouter";
+      rev = "b59a38004596b696aca7aa2adccfa68760864d86";
+      sha256 = "0j1w2fkcghyw3lcsc13lwf2zqar9xyni2g7fqp4aq8g08ii7paac";
+    };
+  }
+  {
+    goPackagePath = "github.com/lib/pq";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lib/pq";
+      rev = "0dad96c0b94f8dee039aa40467f767467392a0af";
+      sha256 = "06c38iy37251mh8jy9s8n97b01pjnqpq8ii77nnmqh1dsph37jz4";
+    };
+  }
+  {
+    goPackagePath = "github.com/linkeddata/gojsonld";
+    fetch = {
+      type = "git";
+      url = "https://github.com/linkeddata/gojsonld";
+      rev = "a223ef39bb925d36d4c410d3e35b0e34e370cc31";
+      sha256 = "1i3vl7gbkq2xl2wyv0kszj0x32vp8jw1cf0ngpdqdhdvnbfi1w7i";
+    };
+  }
+  {
+    goPackagePath = "github.com/pborman/uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pborman/uuid";
+      rev = "ca53cad383cad2479bbba7f7a1a05797ec1386e4";
+      sha256 = "0rcx669bbjkkwdlw81spnra4ffgzd4rbpywnrj3w41m9vq6mk1gn";
+    };
+  }
+  {
+    goPackagePath = "github.com/peterh/liner";
+    fetch = {
+      type = "git";
+      url = "https://github.com/peterh/liner";
+      rev = "1bb0d1c1a25ed393d8feb09bab039b2b1b1fbced";
+      sha256 = "05ihxpmp6x3hw71xzvjdgxnyvyx2s4lf23xqnfjj16s4j4qidc48";
+    };
+  }
+  {
+    goPackagePath = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev = "d8ed2627bdf02c080bf22230dbb337003b7aba2d";
+      sha256 = "0w1jp4k4zbnrxh3jvh8fgbjgqpf2hg31pbj8fb32kh26px9ldpbs";
+    };
+  }
+  {
+    goPackagePath = "github.com/robertkrimen/otto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/robertkrimen/otto";
+      rev = "d1b4d8ef0e0e4b088c8328c95ca63ab9ebd8fc9d";
+      sha256 = "0i31p3paz3n7qi2v1g77lm3cx2hssgwgcfpar4qc2vj7m4766884";
+    };
+  }
+  {
+    goPackagePath = "github.com/russross/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/russross/blackfriday";
+      rev = "17bb7999de6cfb791d4f8986cc00b3309b370cdb";
+      sha256 = "1md0sjw69mj359cb4c8ghzllcbn2lnkvby1203wl0pf5wbyfvm5s";
+    };
+  }
+  {
+    goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/sanitized_anchor_name";
+      rev = "8e87604bec3c645a4eeaee97dfec9f25811ff20d";
+      sha256 = "05b6yj23c3xx446kanhaj1l83av8676z7si8n1f4sqy2pp7s966v";
+    };
+  }
+  {
+    goPackagePath = "github.com/sirupsen/logrus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sirupsen/logrus";
+      rev = "08a8a7c27e3d058a8989316a850daad1c10bf4ab";
+      sha256 = "1fbh1b42alvpbw87v0v2hanliaqp6fm4h9n7byk921mcv6dai8fl";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "f390dcf405f7b83c997eac1b06768bb9f44dec18";
+      sha256 = "1l3z0ggdcjspfmm6k9glmh52a9x50806k6yldxql73p4bpynsd9g";
+    };
+  }
+  {
+    goPackagePath = "github.com/syndtr/goleveldb";
+    fetch = {
+      type = "git";
+      url = "https://github.com/syndtr/goleveldb";
+      rev = "4875955338b0a434238a31165cb87255ab6e9e4a";
+      sha256 = "0786j6kizrlskqz196ng4d13363d44whl849jcv1q07yab2nq40i";
+    };
+  }
+  {
+    goPackagePath = "github.com/syndtr/gosnappy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/syndtr/gosnappy";
+      rev = "156a073208e131d7d2e212cb749feae7c339e846";
+      sha256 = "08lf8smnp4imj5fkph9sbqzb4a5n191q9m6b2c5kamp19i9h2y6z";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "6a513affb38dc9788b449d59ffed099b8de18fa0";
+      sha256 = "1g07c05s3ccq0086f0f200k9cfjjzxd4r9nrdilkmy44lbhhrval";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "a646d33e2ee3172a661fc09bca23bb4889a41bc8";
+      sha256 = "1jniqg2nv5zhdzfm9gwfx0s9q8mwxrgcxdbkd6cddk9w0qgji9dc";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "5a42fa2464759cbb7ee0af9de00b54d69f09a29c";
+      sha256 = "0far6mb2ikwzr7icn0yqi9ygl8kv2wsaasyprbqb9qapr0dqjw0s";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/appengine";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/appengine";
+      rev = "4f7eeb5305a4ba1966344836ba4af9996b7b4e05";
+      sha256 = "09pgvlk5ay3f0avi1bawpy8khi3rmkfl36l2yr3ryp8z12i9k2qj";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/mgo.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/mgo.v2";
+      rev = "c6a7dce14133ccac2dcac3793f1d6e2ef048503a";
+      sha256 = "0rg232q1bkq3y3kd5816hgk1jpf7i38aha5q5ia7j6p9xashz7vj";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-sql-driver/mysql";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-sql-driver/mysql";
+      rev = "2e00b5cd70399450106cec6431c2e2ce3cae5034";
+      sha256 = "085g48jq9hzmlcxg122n0c4pi41sc1nn2qpx1vrl2jfa8crsppa5";
+    };
+  }
+  {
+    goPackagePath = "github.com/dennwc/graphql";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dennwc/graphql";
+      rev = "fd5c4aa13f2119414084f229600de0d73f174436";
+      sha256 = "11f9jwfc2j646732gkcjb332ih9fxh04j31zmhvqswx75gvk9wzs";
+    };
+  }
+]
diff --git a/pkgs/servers/consul/default.nix b/pkgs/servers/consul/default.nix
index 41a0bea1cdd..cc566e712c2 100644
--- a/pkgs/servers/consul/default.nix
+++ b/pkgs/servers/consul/default.nix
@@ -17,6 +17,10 @@ buildGoPackage rec {
   # Keep consul.ui for backward compatability
   passthru.ui = consul-ui;
 
+  preBuild = ''
+    buildFlagsArray+=("-ldflags" "-X github.com/hashicorp/consul/version.GitDescribe=v${version} -X github.com/hashicorp/consul/version.Version=${version} -X github.com/hashicorp/consul/version.VersionPrerelease=")
+  '';
+
   meta = with stdenv.lib; {
     description = "Tool for service discovery, monitoring and configuration";
     homepage = "https://www.consul.io/";
diff --git a/pkgs/servers/dns/knot-resolver/default.nix b/pkgs/servers/dns/knot-resolver/default.nix
index bc9e35f88c4..c58b66d42f2 100644
--- a/pkgs/servers/dns/knot-resolver/default.nix
+++ b/pkgs/servers/dns/knot-resolver/default.nix
@@ -10,11 +10,11 @@ let
 in
 stdenv.mkDerivation rec {
   name = "knot-resolver-${version}";
-  version = "1.2.4";
+  version = "1.2.5";
 
   src = fetchurl {
     url = "http://secure.nic.cz/files/knot-resolver/${name}.tar.xz";
-    sha256 = "630b2ad0bfdcf59164957a377adef8b1fddc37a58a7e1d10e76a1b497a30f036";
+    sha256 = "30e24f9681e40c79a0aadbbfd78aaa72534dd3bca3347de89dfeae055b2c99e4";
   };
 
   outputs = [ "out" "dev" ];
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ knot-dns luajit libuv gnutls ]
     ++ optional stdenv.isLinux lmdb # system lmdb causes some problems on Darwin
-    ## optional dependencies
+    ## optional dependencies; TODO: libedit, dnstap?
     ++ optional doInstallCheck cmocka
     ++ optional stdenv.isLinux systemd # socket activation
     ++ [
diff --git a/pkgs/servers/dns/nsd/default.nix b/pkgs/servers/dns/nsd/default.nix
index 89845fff9c6..e69b25c5b94 100644
--- a/pkgs/servers/dns/nsd/default.nix
+++ b/pkgs/servers/dns/nsd/default.nix
@@ -13,11 +13,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "nsd-4.1.14";
+  name = "nsd-4.1.15";
 
   src = fetchurl {
     url = "http://www.nlnetlabs.nl/downloads/nsd/${name}.tar.gz";
-    sha256 = "bdfc61c5f3bf11febd8f4776eef1d4f2d95ed70f12f11d4eeee943c186ffd802";
+    sha256 = "494a862cfcd26a525a4bf06306eb7ab0387b34678ac6d37767507438e3a23a4b";
   };
 
   buildInputs = [ libevent openssl ];
diff --git a/pkgs/servers/emby/default.nix b/pkgs/servers/emby/default.nix
index 9e0de290143..f88b82675da 100644
--- a/pkgs/servers/emby/default.nix
+++ b/pkgs/servers/emby/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "emby-${version}";
-  version = "3.2.10";
+  version = "3.2.12";
 
   src = fetchurl {
     url = "https://github.com/MediaBrowser/Emby/releases/download/${version}/Emby.Mono.zip";
-    sha256 = "0qqqaxlmcy3nfygbfy1bjc188x8k461nckj1sxfvy6wiv6jjfc25";
+    sha256 = "0vbb7ax3100djz6zl8vji04a1x3r9vrrgkar605sc2w9n1j1msp2";
   };
 
   buildInputs = with pkgs; [
diff --git a/pkgs/servers/http/nginx/mainline.nix b/pkgs/servers/http/nginx/mainline.nix
index a9f3d74e99c..388c355c3f7 100644
--- a/pkgs/servers/http/nginx/mainline.nix
+++ b/pkgs/servers/http/nginx/mainline.nix
@@ -1,6 +1,6 @@
 { callPackage, ... }@args:
 
 callPackage ./generic.nix (args // {
-  version = "1.11.10";
-  sha256 = "0gak6pcsn1m8fsz0g95z4b72nn12ivy35vlxrmagfcvnn2mkr2vp";
+  version = "1.11.13";
+  sha256 = "1lqm2ixld5b55s4i1yy5337c6ifp7jzjfsm51z49hagdz0g602rn";
 })
diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix
index 2d5ad9e2742..85ebb5a8043 100644
--- a/pkgs/servers/matrix-synapse/default.nix
+++ b/pkgs/servers/matrix-synapse/default.nix
@@ -24,13 +24,13 @@ let
   };
 in pythonPackages.buildPythonApplication rec {
   name = "matrix-synapse-${version}";
-  version = "0.19.3";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "synapse";
     rev = "v${version}";
-    sha256 = "0dnlv2rgda94zlgwkpryjsypcf995l7zdp19d2xiq7zpd13x6yag";
+    sha256 = "1ss89dd4xn80y0zafs6dc9c24ba1kxk20jhjvqbcbbng6mlynj9h";
   };
 
   patches = [ ./matrix-synapse.patch ];
@@ -41,6 +41,7 @@ in pythonPackages.buildPythonApplication rec {
     signedjson systemd twisted ujson unpaddedbase64 pyyaml
     matrix-angular-sdk bleach netaddr jinja2 psycopg2
     psutil msgpack lxml matrix-synapse-ldap3
+    phonenumbers jsonschema
   ];
 
   # Checks fail because of Tox.
diff --git a/pkgs/servers/monitoring/sensu/Gemfile.lock b/pkgs/servers/monitoring/sensu/Gemfile.lock
index ee425b6edf9..0d01c227145 100644
--- a/pkgs/servers/monitoring/sensu/Gemfile.lock
+++ b/pkgs/servers/monitoring/sensu/Gemfile.lock
@@ -12,51 +12,54 @@ GEM
     em-worker (0.0.2)
       eventmachine
     eventmachine (1.2.2)
-    ffi (1.9.17)
-    oj (2.14.6)
+    ffi (1.9.18)
+    oj (2.18.1)
     parse-cron (0.1.4)
-    sensu (0.28.0)
+    sensu (0.29.0)
       em-http-server (= 0.1.8)
       eventmachine (= 1.2.2)
       parse-cron (= 0.1.4)
       sensu-extension (= 1.5.1)
-      sensu-extensions (= 1.7.1)
-      sensu-json (= 2.0.1)
+      sensu-extensions (= 1.9.0)
+      sensu-json (= 2.1.0)
       sensu-logger (= 1.2.1)
-      sensu-redis (= 2.1.0)
-      sensu-settings (= 9.9.0)
+      sensu-redis (= 2.1.1)
+      sensu-settings (= 10.0.0)
       sensu-spawn (= 2.2.1)
       sensu-transport (= 7.0.2)
     sensu-extension (1.5.1)
       eventmachine
-    sensu-extensions (1.7.1)
+    sensu-extensions (1.9.0)
       sensu-extension
+      sensu-extensions-check-dependencies (= 1.0.1)
       sensu-extensions-debug (= 1.0.0)
       sensu-extensions-json (= 1.0.0)
-      sensu-extensions-occurrences (= 1.1.0)
+      sensu-extensions-occurrences (= 1.2.0)
       sensu-extensions-only-check-output (= 1.0.0)
       sensu-extensions-ruby-hash (= 1.0.0)
       sensu-json (>= 1.1.0)
       sensu-logger
       sensu-settings
+    sensu-extensions-check-dependencies (1.0.1)
+      sensu-extension
     sensu-extensions-debug (1.0.0)
       sensu-extension
     sensu-extensions-json (1.0.0)
       sensu-extension
-    sensu-extensions-occurrences (1.1.0)
+    sensu-extensions-occurrences (1.2.0)
       sensu-extension
     sensu-extensions-only-check-output (1.0.0)
       sensu-extension
     sensu-extensions-ruby-hash (1.0.0)
       sensu-extension
-    sensu-json (2.0.1)
-      oj (= 2.14.6)
+    sensu-json (2.1.0)
+      oj (= 2.18.1)
     sensu-logger (1.2.1)
       eventmachine
       sensu-json
-    sensu-redis (2.1.0)
+    sensu-redis (2.1.1)
       eventmachine
-    sensu-settings (9.9.0)
+    sensu-settings (10.0.0)
       parse-cron
       sensu-json (>= 1.1.0)
     sensu-spawn (2.2.1)
@@ -76,4 +79,4 @@ DEPENDENCIES
   sensu
 
 BUNDLED WITH
-   1.14.4
+   1.14.6
diff --git a/pkgs/servers/monitoring/sensu/gemset.nix b/pkgs/servers/monitoring/sensu/gemset.nix
index 273496e2fb4..1df8d419cb6 100644
--- a/pkgs/servers/monitoring/sensu/gemset.nix
+++ b/pkgs/servers/monitoring/sensu/gemset.nix
@@ -50,18 +50,18 @@
   ffi = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07hnyr47mndsjfanzh348wm3fxjx9nx68mdb3cpsdvfqrxnz97s7";
+      sha256 = "034f52xf7zcqgbvwbl20jwdyjwznvqnwpbaps9nk18v9lgb1dpx0";
       type = "gem";
     };
-    version = "1.9.17";
+    version = "1.9.18";
   };
   oj = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0pa9vmbxivplphad4ddjy30ylbb3bi61y13vmwx4llz3svl8r8kk";
+      sha256 = "147whmq8h2n04chskl3v4a132xhz5i6kk6vhnz83jwng4vihin5f";
       type = "gem";
     };
-    version = "2.14.6";
+    version = "2.18.1";
   };
   parse-cron = {
     source = {
@@ -74,10 +74,10 @@
   sensu = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1dbyc1wylg9ligr1slv60myhbzdbja96v3srb3xrirv6vl33npqx";
+      sha256 = "0931qccqhwmvqf4jj3jwip25xwkg7rf1yxxpkdhiyi2yndyfb8x7";
       type = "gem";
     };
-    version = "0.28.0";
+    version = "0.29.0";
   };
   sensu-extension = {
     source = {
@@ -90,10 +90,18 @@
   sensu-extensions = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0axjqak7yhhznhs9f4q8km7ikha5khglwqsc33scck13hsvw9l6g";
+      sha256 = "1r09mdbbnh5cg9yvqw78sxbhlb8xqld1vwbr4hsjw6k3x1xpnnr9";
       type = "gem";
     };
-    version = "1.7.1";
+    version = "1.9.0";
+  };
+  sensu-extensions-check-dependencies = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0clgvf2abvwz549f28ny3zd6q7z6y7m49i8pp91ll10jp1vsy4b2";
+      type = "gem";
+    };
+    version = "1.0.1";
   };
   sensu-extensions-debug = {
     source = {
@@ -114,10 +122,10 @@
   sensu-extensions-occurrences = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xi9888gp3lz5fik1k32bc1c6sjp7rr551p8dr5i3hsm5ii7blja";
+      sha256 = "0lx5wsbblfs0rvkxfg09bsz0g2mwmckrhga7idnarsnm8m565v1v";
       type = "gem";
     };
-    version = "1.1.0";
+    version = "1.2.0";
   };
   sensu-extensions-only-check-output = {
     source = {
@@ -138,10 +146,10 @@
   sensu-json = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08bn8a5fscbhc9mcjg5avwjjbwxn28b48336bdxx87yng0wyafm4";
+      sha256 = "02qkh86jddv7gha39vjx6g9hi7vkq7r433dr86bwmm9c7lqkgyl9";
       type = "gem";
     };
-    version = "2.0.1";
+    version = "2.1.0";
   };
   sensu-logger = {
     source = {
@@ -154,18 +162,18 @@
   sensu-redis = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "10axrjg2q569bjdchpjsdillzszifkgkayaz390hnf876mssqwcg";
+      sha256 = "1nqk2046g6nldpiqy40f805gms8r856v2zxm53j0c8ni03sgz2a3";
       type = "gem";
     };
-    version = "2.1.0";
+    version = "2.1.1";
   };
   sensu-settings = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0bs66zmhs7yrwywvfhbld051d83f3nypmk2rf8dfn19ijzk4ch9i";
+      sha256 = "0fb3wgqll5cq5akgmqhx6vgjvmcpcjyx68qqs8hb106b07gdpmli";
       type = "gem";
     };
-    version = "9.9.0";
+    version = "10.0.0";
   };
   sensu-spawn = {
     source = {
diff --git a/pkgs/servers/plex/default.nix b/pkgs/servers/plex/default.nix
index 122d5bd7dc9..618bc17d0a7 100644
--- a/pkgs/servers/plex/default.nix
+++ b/pkgs/servers/plex/default.nix
@@ -6,9 +6,9 @@
 let
   plexPass = throw "Plex pass has been removed at upstream's request; please unset nixpkgs.config.plex.pass";
   plexpkg = if enablePlexPass then plexPass else {
-    version = "1.3.3.3148";
-    vsnHash = "b38628e";
-    sha256 = "1dx8z27l1dwigr3ipcdzn25hnj0206255ihxh9rnh2qchrcqmb5y";
+    version = "1.5.5.3634";
+    vsnHash = "995f1dead";
+    sha256 = "0zk2zv7r4mf582gfbv4ahxzl8pbspzkf3514qmqhhx2z4grng49h";
   };
 
 in stdenv.mkDerivation rec {
@@ -36,7 +36,14 @@ in stdenv.mkDerivation rec {
 
     # Now we need to patch up the executables and libraries to work on Nix.
     # Side note: PLEASE don't put spaces in your binary names. This is stupid.
-    for bin in "Plex Media Server" "Plex DLNA Server" "Plex Media Scanner" "Plex Script Host" "Plex Transcoder" "Plex Relay"; do
+    for bin in "Plex Media Server"              \
+               "Plex DLNA Server"               \
+               "Plex Media Scanner"             \
+               "Plex Media Server Tests"        \
+               "Plex Relay"                     \
+               "Plex Script Host"               \
+               "Plex Transcoder"                \
+               "Plex Tuner Service"             ; do
       patchelf --set-interpreter "${glibc.out}/lib/ld-linux-x86-64.so.2" "$out/usr/lib/plexmediaserver/$bin"
       patchelf --set-rpath "$out/usr/lib/plexmediaserver" "$out/usr/lib/plexmediaserver/$bin"
     done
@@ -67,7 +74,7 @@ in stdenv.mkDerivation rec {
     homepage = http://plex.tv/;
     license = licenses.unfree;
     platforms = platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ colemickens forkk thoughtpolice ];
+    maintainers = with stdenv.lib.maintainers; [ colemickens forkk thoughtpolice pjones ];
     description = "Media / DLNA server";
     longDescription = ''
       Plex is a media server which allows you to store your media and play it
diff --git a/pkgs/servers/radarr/default.nix b/pkgs/servers/radarr/default.nix
index 446927745a9..af6cea97d2f 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.535";
+  version = "0.2.0.654";
 
   src = fetchurl {
     url = "https://github.com/Radarr/Radarr/releases/download/v${version}/Radarr.develop.${version}.linux.tar.gz";
-    sha256 = "1ccvblklqn5iki7gc16bzzbwms28mv4kxzv1nwhlm9vf0cw4qxbr";
+    sha256 = "05sb3zk8gvydmkiy7g9ha5cmiqzqfwcydljm401zjndzwzhkz698";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/shishi/default.nix b/pkgs/servers/shishi/default.nix
index 3e340ba7df4..535571f46e2 100644
--- a/pkgs/servers/shishi/default.nix
+++ b/pkgs/servers/shishi/default.nix
@@ -6,9 +6,10 @@
 }:
 
 let
-  mkFlag = trueStr: falseStr: cond: name: val:
-    if cond == null then null else
-      "--${if cond != false then trueStr else falseStr}${name}${if val != null && cond != false then "=${val}" else ""}";
+  mkFlag = trueStr: falseStr: cond: name: val: "--"
+    + (if cond then trueStr else falseStr)
+    + name
+    + stdenv.lib.optionalString (val != null && cond != false) "=${val}";
   mkEnable = mkFlag "enable-" "disable-";
   mkWith = mkFlag "with-" "without-";
   mkOther = mkFlag "" "" true;
diff --git a/pkgs/servers/slimserver/default.nix b/pkgs/servers/slimserver/default.nix
new file mode 100644
index 00000000000..18dbed4d1f3
--- /dev/null
+++ b/pkgs/servers/slimserver/default.nix
@@ -0,0 +1,97 @@
+{ stdenv, buildPerlPackage, fetchurl
+, perl, perlPackages }:
+
+buildPerlPackage rec {
+  name = "slimserver-${version}";
+  version = "7.9.0";
+
+  src = fetchurl {
+    url = "https://github.com/Logitech/slimserver/archive/${version}.tar.gz";
+    sha256 = "07rhqipg7m28x0nqdd83nyzi88dp9cf8rr2pamdyrfcwyp1h1b44";
+  };
+
+  buildInputs = [
+    perl
+    perlPackages.AnyEvent
+    perlPackages.AudioScan
+    perlPackages.CarpClan
+    perlPackages.CGI
+    perlPackages.ClassXSAccessor
+    perlPackages.DataDump
+    perlPackages.DataURIEncode
+    perlPackages.DBDSQLite
+    perlPackages.DBI
+    perlPackages.DBIxClass
+    perlPackages.DigestSHA1
+    perlPackages.EV
+    perlPackages.ExporterLite
+    perlPackages.FileBOM
+    perlPackages.FileCopyRecursive
+    perlPackages.FileNext
+    perlPackages.FileReadBackwards
+    perlPackages.FileSlurp
+    perlPackages.FileWhich
+    perlPackages.HTMLParser
+    perlPackages.HTTPCookies
+    perlPackages.HTTPDaemon
+    perlPackages.HTTPMessage
+    perlPackages.ImageScale
+    perlPackages.IOSocketSSL
+    perlPackages.IOString
+    perlPackages.JSONXSVersionOneAndTwo
+    perlPackages.Log4Perl
+    perlPackages.LWPUserAgent
+    perlPackages.NetHTTP
+    perlPackages.ProcBackground
+    perlPackages.SubName
+    perlPackages.TemplateToolkit
+    perlPackages.TextUnidecode
+    perlPackages.TieCacheLRU
+    perlPackages.TieCacheLRUExpires
+    perlPackages.TieRegexpHash
+    perlPackages.TimeDate
+    perlPackages.URI
+    perlPackages.URIFind
+    perlPackages.UUIDTiny
+    perlPackages.XMLParser
+    perlPackages.XMLSimple
+    perlPackages.YAMLLibYAML
+  ];
+
+
+  prePatch = ''
+    mkdir CPAN_used
+    # slimserver doesn't work with current DBIx/SQL versions, use bundled copies
+    mv CPAN/DBIx CPAN/SQL CPAN_used
+    rm -rf CPAN
+    rm -rf Bin
+    touch Makefile.PL
+    '';
+
+  preConfigurePhase = "";
+
+  buildPhase = "
+    mv lib tmp
+    mkdir -p lib/perl5/site_perl
+    mv CPAN_used/* lib/perl5/site_perl
+    cp -rf tmp/* lib/perl5/site_perl
+  ";
+
+  doCheck = false;
+
+  installPhase = ''
+    cp -r . $out
+  '';
+
+  outputs = [ "out" ];
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/Logitech/slimserver;
+    description = "Server for Logitech Squeezebox players. This server is also called Logitech Media Server";
+    # the firmware is not under a free license!
+    # https://github.com/Logitech/slimserver/blob/public/7.9/License.txt
+    license = licenses.unfree;
+    maintainers = [ maintainers.phile314 ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/servers/sonarr/default.nix b/pkgs/servers/sonarr/default.nix
index af0b17bfb3a..de147e31da7 100644
--- a/pkgs/servers/sonarr/default.nix
+++ b/pkgs/servers/sonarr/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "sonarr-${version}";
-  version = "2.0.0.4645";
+  version = "2.0.0.4689";
 
   src = fetchurl {
     url = "http://download.sonarr.tv/v2/master/mono/NzbDrone.master.${version}.mono.tar.gz";
-    sha256 = "13a1ly2rm0ha355h4q2x8v699d43arcq3iyn7nm921rkswajvvb8";
+    sha256 = "056ndn98byn6gkiq46vn8pl0s715ni7wklxnmid2hk5xwyjy7bwk";
   };
 
   buildInputs = [
diff --git a/pkgs/servers/unifi/default.nix b/pkgs/servers/unifi/default.nix
index 8a411f0c1a5..a11618d24f5 100644
--- a/pkgs/servers/unifi/default.nix
+++ b/pkgs/servers/unifi/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "unifi-controller-${version}";
-  version = "5.4.11";
+  version = "5.4.14";
 
   src = fetchurl {
     url = "https://dl.ubnt.com/unifi/${version}/UniFi.unix.zip";
-    sha256 = "18hd0w1zif6x9yxmfpwm7vbd07n705lf36yhg3z8fy04an6njgv2";
+    sha256 = "16scryd8g0dsswawwadxxqsirir6mn0jaawv3qcszqj52vlz878w";
   };
 
   buildInputs = [ unzip ];
diff --git a/pkgs/shells/lambda-mod-zsh-theme/default.nix b/pkgs/shells/lambda-mod-zsh-theme/default.nix
new file mode 100644
index 00000000000..e53aa28666b
--- /dev/null
+++ b/pkgs/shells/lambda-mod-zsh-theme/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub }:
+
+let
+  repo = "lambda-mod-zsh-theme";
+  rev = "eceee68cf46bba9f7f42887c2128b48e8861e31b";
+in stdenv.mkDerivation {
+  name = "${repo}-${rev}";
+
+  src = fetchFromGitHub {
+    inherit rev repo;
+
+    owner = "halfo";
+    sha256 = "1410ryc22i20na5ypa1q6f106lkjj8n1qfjmb77q4rspi0ydaiy4";
+  };
+
+  buildPhases = [ "unpackPhase" "installPhase" ];
+
+  installPhase = ''
+    mkdir -p $out/share/themes
+    cp lambda-mod.zsh-theme $out/share/themes
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A ZSH theme optimized for people who use Git & Unicode-compatible fonts and terminals";
+    homepage = "https://github.com/halfo/lambda-mod-zsh-theme/";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ ma27 ];
+  };
+}
diff --git a/pkgs/shells/rssh/default.nix b/pkgs/shells/rssh/default.nix
index f1fb4d03121..b84f5f26685 100644
--- a/pkgs/shells/rssh/default.nix
+++ b/pkgs/shells/rssh/default.nix
@@ -76,7 +76,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "http://www.pizzashack.org/rssh/";
     license = licenses.bsd2;
-    platforms = platforms.unix;
+    platforms = platforms.linux;
     maintainers = with maintainers; [ arobyn ];
   };
 
diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix
index e647c81890e..e80c54e0218 100644
--- a/pkgs/stdenv/darwin/default.nix
+++ b/pkgs/stdenv/darwin/default.nix
@@ -4,15 +4,15 @@
 # Allow passing in bootstrap files directly so we can test the stdenv bootstrap process when changing the bootstrap tools
 , bootstrapFiles ? let
   fetch = { file, sha256, executable ? true }: import <nix/fetchurl.nix> {
-    url = "http://tarballs.nixos.org/stdenv-darwin/x86_64/33f59c9d11b8d5014dfd18cc11a425f6393c884a/${file}";
+    url = "http://tarballs.nixos.org/stdenv-darwin/x86_64/c4effbe806be9a0a3727fdbbc9a5e28149347532/${file}";
     inherit (localSystem) system;
     inherit sha256 executable;
   }; in {
-    sh      = fetch { file = "sh";    sha256 = "1rx4kg6358xdj05z0m139a0zn4f4zfmq4n4vimlmnwyfiyn4x7wk"; };
-    bzip2   = fetch { file = "bzip2"; sha256 = "104qnhzk79vkbp2yi0kci6lszgfppvrwk3rgxhry842ly1xz2r7l"; };
-    mkdir   = fetch { file = "mkdir"; sha256 = "0d91c19xjzmqisncvldv79d7ddzai9l7vcmajhwlwwv74g6da5yl"; };
-    cpio    = fetch { file = "cpio";  sha256 = "0lw057bmcqls96j0gv1n3mgl66q31mba7i413cbkkaf0rfzz3dxj"; };
-    tarball = fetch { file = "bootstrap-tools.cpio.bz2"; sha256 = "13ihbj002pis3fgy1d9c4fi7flca21z9brjsjkklm82h5b4nlwxl"; executable = false; };
+    sh      = fetch { file = "sh";    sha256 = "1b9r3dksj907bpxp589yhc4217cas73vni8sng4r57f04ydjcinr"; };
+    bzip2   = fetch { file = "bzip2"; sha256 = "1wm28jgap4cbr8hf4ambg6h9flr2b4mcbh7fw20i0l51v6n8igky"; };
+    mkdir   = fetch { file = "mkdir"; sha256 = "0jc32mzx2whhx2xh70grvvgz4jj26118p9yxmhjqcysagc0k7y66"; };
+    cpio    = fetch { file = "cpio";  sha256 = "0x5dcczkzn0g8yb4pah449jmgy3nmpzrqy4s480grcx05b6v6hkp"; };
+    tarball = fetch { file = "bootstrap-tools.cpio.bz2"; sha256 = "0ifdc8bwxdhmpbhx2vd3lwjg71gqm6pi5mfm0fkcsbqavl8hd8hz"; executable = false; };
   }
 }:
 
@@ -301,7 +301,7 @@ in rec {
 
     allowedRequisites = (with pkgs; [
       xz.out xz.bin libcxx libcxxabi icu.out gmp.out gnumake findutils bzip2.out
-      bzip2.bin llvmPackages.llvm zlib.out zlib.dev libffi.out coreutils ed diffutils gnutar
+      bzip2.bin llvmPackages.llvm llvmPackages.llvm.lib zlib.out zlib.dev libffi.out coreutils ed diffutils gnutar
       gzip ncurses.out ncurses.dev ncurses.man gnused bash gawk
       gnugrep llvmPackages.clang-unwrapped patch pcre.out binutils-raw.out
       binutils-raw.dev binutils gettext
@@ -309,10 +309,12 @@ in rec {
       dyld Libsystem CF cctools libiconv locale
     ]);
 
-    overrides = self: super: persistent4 prevStage self super // {
-      clang = cc;
-      inherit cc;
-    };
+    overrides = self: super:
+      let persistent = persistent4 prevStage self super; in persistent // {
+        clang = cc;
+        llvmPackages = persistent.llvmPackages // { clang = cc; };
+        inherit cc;
+      };
   };
 
   stagesDarwin = [
diff --git a/pkgs/stdenv/darwin/make-bootstrap-tools.nix b/pkgs/stdenv/darwin/make-bootstrap-tools.nix
index 85e4dabbbde..4f651575d6a 100644
--- a/pkgs/stdenv/darwin/make-bootstrap-tools.nix
+++ b/pkgs/stdenv/darwin/make-bootstrap-tools.nix
@@ -3,7 +3,7 @@
 with import pkgspath { inherit system; };
 
 let
-  llvmPackages = llvmPackages_37;
+  llvmPackages = llvmPackages_4;
 in rec {
   coreutils_ = coreutils.override (args: {
     # We want coreutils without ACL support.
diff --git a/pkgs/stdenv/linux/bootstrap-files/armv5tel.nix b/pkgs/stdenv/linux/bootstrap-files/armv5tel.nix
index 9781414895b..37471e9ce42 100644
--- a/pkgs/stdenv/linux/bootstrap-files/armv5tel.nix
+++ b/pkgs/stdenv/linux/bootstrap-files/armv5tel.nix
@@ -1,12 +1,12 @@
 {
   busybox = import <nix/fetchurl.nix> {
-    url = http://nixos-arm.dezgeg.me/bootstrap-2016-07-20-33a1d8/armv5tel/busybox;
-    sha256 = "03i90dwkly1j2a7i12qixkybjz2b24ixjrl7zsr17s1sv6m27zba";
+    url = http://nixos-arm.dezgeg.me/bootstrap-2017-04-13-1f32d4b4/armv5tel/busybox;
+    sha256 = "00mxas5xg2j9n1g0q0nklr0dy87qqxk0jja5qz1yi7xl7zzsnpnw";
     executable = true;
   };
 
   bootstrapTools = import <nix/fetchurl.nix> {
-    url = http://nixos-arm.dezgeg.me/bootstrap-2016-07-20-33a1d8/armv5tel/bootstrap-tools.tar.xz;
-    sha256 = "1sikiydjlbv8v35fgjvr5swgvj6bc83gmrbjrhpi0hyzyfcinxbn";
+    url = http://nixos-arm.dezgeg.me/bootstrap-2017-04-13-1f32d4b4/armv5tel/bootstrap-tools.tar.xz;
+    sha256 = "0fhiy9l3mbmlhpkby31c2s63bhjiqx25qqr3wdp8cb7fxz8ayx2f";
   };
 }
diff --git a/pkgs/stdenv/linux/bootstrap-files/armv6l.nix b/pkgs/stdenv/linux/bootstrap-files/armv6l.nix
index 76fe900b9ae..44718975682 100644
--- a/pkgs/stdenv/linux/bootstrap-files/armv6l.nix
+++ b/pkgs/stdenv/linux/bootstrap-files/armv6l.nix
@@ -1,12 +1,12 @@
 {
   busybox = import <nix/fetchurl.nix> {
-    url = http://nixos-arm.dezgeg.me/bootstrap-2016-07-20-33a1d8/armv6l/busybox;
-    sha256 = "1vl1nx7ccalp2w8d5ymj6i2vs0s9w80xvxpsxl2l24k5ibbspcy0";
+    url = http://nixos-arm.dezgeg.me/bootstrap-2017-04-13-1f32d4b4/armv6l/busybox;
+    sha256 = "06n8dy8y2v28yx9ws8x64wxrvn9pszgpd299hc90nv9x21m79jzd";
     executable = true;
   };
 
   bootstrapTools = import <nix/fetchurl.nix> {
-    url = http://nixos-arm.dezgeg.me/bootstrap-2016-07-20-33a1d8/armv6l/bootstrap-tools.tar.xz;
-    sha256 = "106f3r1ndl9h1cbxn44vwn3kkhgi8a937xx1v9n40zfx6dzzfv25";
+    url = http://nixos-arm.dezgeg.me/bootstrap-2017-04-13-1f32d4b4/armv6l/bootstrap-tools.tar.xz;
+    sha256 = "1gg2q3sw81vi65g1gmpvx0nnd6hxb76vlz73wfp292m90z1mym7f";
   };
 }
diff --git a/pkgs/stdenv/linux/bootstrap-files/armv7l.nix b/pkgs/stdenv/linux/bootstrap-files/armv7l.nix
index 91452d639c4..b97fd9967ea 100644
--- a/pkgs/stdenv/linux/bootstrap-files/armv7l.nix
+++ b/pkgs/stdenv/linux/bootstrap-files/armv7l.nix
@@ -1,12 +1,12 @@
 {
   busybox = import <nix/fetchurl.nix> {
-    url = http://nixos-arm.dezgeg.me/bootstrap-2016-07-20-33a1d8/armv7l/busybox;
-    sha256 = "0kb439p37rzlascp6ldm4kwf5kwd6p3lv17c41zwj20wbv8sdilq";
+    url = http://nixos-arm.dezgeg.me/bootstrap-2017-04-13-1f32d4b4/armv7l/busybox;
+    sha256 = "187xwzsng5lpak1nanrk88y4mlydmrbhx6la00rrd6kjx376s565";
     executable = true;
   };
 
   bootstrapTools = import <nix/fetchurl.nix> {
-    url = http://nixos-arm.dezgeg.me/bootstrap-2016-07-20-33a1d8/armv7l/bootstrap-tools.tar.xz;
-    sha256 = "0h75xbpkyzhvmjzhj9i598p0cq60py7v0b8lryrvcqw7qjlbgrsd";
+    url = http://nixos-arm.dezgeg.me/bootstrap-2017-04-13-1f32d4b4/armv7l/bootstrap-tools.tar.xz;
+    sha256 = "05ayki2kak3i5lw97qidd5h9jv00dmlhx9h7l771bj331yamyqdn";
   };
 }
diff --git a/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix b/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix
index 1a762bd87c7..613edfafd95 100644
--- a/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix
+++ b/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix
@@ -221,8 +221,7 @@ rec {
         # GCC has certain things built in statically. See
         # pkgs/stdenv/linux/default.nix for the details.
         cp -d ${isl}/lib/libisl*.so* $out/lib
-        # Also this is needed since bzip2 uses a custom build system
-        # for native builds but autoconf (via a patch) for cross builds
+
         cp -d ${bzip2.out}/lib/libbz2.so* $out/lib
 
         # Copy binutils.
diff --git a/pkgs/stdenv/linux/make-bootstrap-tools.nix b/pkgs/stdenv/linux/make-bootstrap-tools.nix
index 42015a79a3e..2ce73eb781d 100644
--- a/pkgs/stdenv/linux/make-bootstrap-tools.nix
+++ b/pkgs/stdenv/linux/make-bootstrap-tools.nix
@@ -122,6 +122,8 @@ rec {
         cp -d ${zlib.out}/lib/libz.so* $out/lib
         cp -d ${libelf}/lib/libelf.so* $out/lib
 
+        cp -d ${bzip2.out}/lib/libbz2.so* $out/lib
+
         # Copy binutils.
         for i in as ld ar ranlib nm strip readelf objdump; do
           cp ${binutils.out}/bin/$i $out/bin
diff --git a/pkgs/tools/X11/xpra/default.nix b/pkgs/tools/X11/xpra/default.nix
index 943707c0c5e..15feb30743b 100644
--- a/pkgs/tools/X11/xpra/default.nix
+++ b/pkgs/tools/X11/xpra/default.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, fetchurl, python2Packages, pkgconfig
 , xorg, gtk2, glib, pango, cairo, gdk_pixbuf, atk
 , makeWrapper, xkbcomp, xorgserver, getopt, xauth, utillinux, which, fontsConf
-, ffmpeg, x264, libvpx, libwebp
+, ffmpeg_3_2, x264, libvpx, libwebp
 , libfakeXinerama
 , gst_all_1, pulseaudioLight, gobjectIntrospection
 , pam }:
@@ -11,11 +11,11 @@ with lib;
 let
   inherit (python2Packages) python cython buildPythonApplication;
 in buildPythonApplication rec {
-  name = "xpra-0.17.6";
+  name = "xpra-2.0.1";
   namePrefix = "";
   src = fetchurl {
     url = "http://xpra.org/src/${name}.tar.xz";
-    sha256 = "1z7v58m45g10icpv22qg4dipafcfsdqkxqz73z3rwsb6r0kdyrpj";
+    sha256 = "11y2icy24mc337gvppp0ankyl3wxrprlifm7spixvsndyz056mb8";
   };
 
   buildInputs = [
@@ -28,7 +28,7 @@ in buildPythonApplication rec {
 
     pango cairo gdk_pixbuf atk gtk2 glib
 
-    ffmpeg libvpx x264 libwebp
+    ffmpeg_3_2 libvpx x264 libwebp
 
     gobjectIntrospection
     gst_all_1.gstreamer
diff --git a/pkgs/tools/admin/google-cloud-sdk/default.nix b/pkgs/tools/admin/google-cloud-sdk/default.nix
index 6e6fbed2dbf..67bbb510b13 100644
--- a/pkgs/tools/admin/google-cloud-sdk/default.nix
+++ b/pkgs/tools/admin/google-cloud-sdk/default.nix
@@ -7,23 +7,23 @@ assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" || stden
 
 stdenv.mkDerivation rec {
   name = "google-cloud-sdk-${version}";
-  version = "148.0.1";
+  version = "151.0.0";
 
   src =
     if stdenv.system == "i686-linux" then
       fetchurl {
         url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/${name}-linux-x86.tar.gz";
-        sha256 = "17az8nah6s33c790kkqcpmcsc8cydhndmq7dblpwgizd86hg245g";
+        sha256 = "1d1h6jiqs3grsb6c61v6dkb4l2qv6v8g7wbzgaqkmn09xdbaq40l";
       }
     else if stdenv.system == "x86_64-darwin" then
       fetchurl {
         url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/${name}-darwin-x86_64.tar.gz";
-        sha256 = "1p5076cqk02y8zc3pkdlmrgh3mx2w1pddb2r5c9h3krfcaim2yj8";
+        sha256 = "05idf0g505s8diaz28ij9yqig2wwn43lyppfs483m7vnx5hk62j5";
       }
     else
       fetchurl {
         url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/${name}-linux-x86_64.tar.gz";
-        sha256 = "0fr07vcksy0vrg7inmyddz9jlbqx0yg933s45zzkpp3a0m5hz6ll";
+        sha256 = "01hf7pp1v57dxx6f2pz7j13fjdnrfp7gjmzjdlhlx4rnvxrd6i3f";
       };
 
   buildInputs = [python27 makeWrapper];
diff --git a/pkgs/tools/archivers/p7zip/default.nix b/pkgs/tools/archivers/p7zip/default.nix
index 2b61b5b2679..8e9db09147e 100644
--- a/pkgs/tools/archivers/p7zip/default.nix
+++ b/pkgs/tools/archivers/p7zip/default.nix
@@ -16,6 +16,14 @@ stdenv.mkDerivation rec {
     })
   ];
 
+  # Default makefile is full of impurities on Darwin. The patch doesn't hurt Linux so I'm leaving it unconditional
+  postPatch = ''
+    sed -i '/CC=\/usr/d' makefile.macosx_llvm_64bits
+
+    # I think this is a typo and should be CXX? Either way let's kill it
+    sed -i '/XX=\/usr/d' makefile.macosx_llvm_64bits
+  '';
+
   preConfigure = ''
     makeFlagsArray=(DEST_HOME=$out)
     buildFlags=all3
diff --git a/pkgs/tools/archivers/sharutils/default.nix b/pkgs/tools/archivers/sharutils/default.nix
index 41043cda5b6..77ab8a1cb03 100644
--- a/pkgs/tools/archivers/sharutils/default.nix
+++ b/pkgs/tools/archivers/sharutils/default.nix
@@ -1,23 +1,17 @@
 { stdenv, fetchurl, gettext, coreutils }:
 
 stdenv.mkDerivation rec {
-  name = "sharutils-4.11.1";
+  name = "sharutils-4.15.2";
 
   src = fetchurl {
-    url = "mirror://gnu/sharutils/${name}.tar.bz2";
-    sha256 = "1mallg1gprimlggdisfzdmh1xi676jsfdlfyvanlcw72ny8fsj3g";
+    url = "mirror://gnu/sharutils/${name}.tar.xz";
+    sha256 = "16isapn8f39lnffc3dp4dan05b7x6mnc76v6q5nn8ysxvvvwy19b";
   };
 
   hardeningDisable = [ "format" ];
 
-  preConfigure = ''
-     # Fix for building on Glibc 2.16.  Won't be needed once the
-     # gnulib in sharutils is updated.
-     sed -i ${stdenv.lib.optionalString (stdenv.isOpenBSD && stdenv.cc.nativeTools) "''"} '/gets is a security hole/d' lib/stdio.in.h
-  '';
-
   # GNU Gettext is needed on non-GNU platforms.
-  buildInputs = [ gettext coreutils ];
+  buildInputs = [ coreutils gettext ];
 
   doCheck = true;
 
@@ -25,7 +19,7 @@ stdenv.mkDerivation rec {
     patches = [ ./sharutils-4.11.1-cross-binary-mode-popen.patch ];
   };
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Tools for remote synchronization and `shell archives'";
     longDescription =
       '' GNU shar makes so-called shell archives out of many files, preparing
@@ -44,8 +38,8 @@ stdenv.mkDerivation rec {
          concatenated shell archives.
       '';
     homepage = http://www.gnu.org/software/sharutils/;
-    license = stdenv.lib.licenses.gpl3Plus;
-    maintainers = [ ];
-    platforms = stdenv.lib.platforms.all;
+    license = licenses.gpl3Plus;
+    maintainers = [ maintainers.ndowens ];
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/tools/audio/darkice/default.nix b/pkgs/tools/audio/darkice/default.nix
index bb2df52f84c..3cfb9a05b2d 100644
--- a/pkgs/tools/audio/darkice/default.nix
+++ b/pkgs/tools/audio/darkice/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildEnv, fetchurl, pkgconfig
+{ stdenv, fetchurl, pkgconfig
 , libjack2, alsaLib, libpulseaudio
 , faac, lame, libogg, libopus, libvorbis, libsamplerate
 }:
diff --git a/pkgs/tools/audio/glyr/default.nix b/pkgs/tools/audio/glyr/default.nix
new file mode 100644
index 00000000000..e98667b8c04
--- /dev/null
+++ b/pkgs/tools/audio/glyr/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub, cmake
+, curl, glib, sqlite, pkgconfig }:
+
+stdenv.mkDerivation rec {
+  version = "1.0.10";
+  name = "glyr-${version}";
+
+  src = fetchFromGitHub {
+    owner = "sahib";
+    repo = "glyr";
+    rev = "${version}";
+    sha256 = "1miwbqzkhg0v3zysrwh60pj9sv6ci4lzq2vq2hhc6pc6hdyh8xyr";
+  };
+
+  nativeBuildInputs = [ cmake pkgconfig ];
+  buildInputs = [ sqlite glib curl ];
+
+  configurePhase = ''
+    cmake -DCMAKE_INSTALL_PREFIX=$out
+  '';
+
+  meta = with stdenv.lib; {
+    license = licenses.lgpl3;
+    description = "A music related metadata searchengine";
+    homepage = https://github.com/sahib/glyr;
+    maintainers = [ maintainers.sternenseemann ];
+    platforms = platforms.linux; # TODO macOS would be possible
+  };
+}
+
+
diff --git a/pkgs/tools/audio/mpdris2/default.nix b/pkgs/tools/audio/mpdris2/default.nix
index 9378585d8b2..fd9cf2bacbf 100644
--- a/pkgs/tools/audio/mpdris2/default.nix
+++ b/pkgs/tools/audio/mpdris2/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "mpDris2";
-  version = "0.6";
+  version = "0.7";
 
   src = fetchurl {
     url = "https://github.com/eonpatapon/${name}/archive/${version}.tar.gz";
-    sha256 = "0zdmamj2ldhr6y3s464w8y2x3yizda784jnlrg3j3myfabssisvz";
+    sha256 = "095swrjw59lh8qiwmjjjdbxl9587axilkj4mh2sx5m0kiq929z21";
   };
 
   preConfigure = ''
diff --git a/pkgs/tools/backup/bup/default.nix b/pkgs/tools/backup/bup/default.nix
index baf9e4f4e39..0d60930b1fb 100644
--- a/pkgs/tools/backup/bup/default.nix
+++ b/pkgs/tools/backup/bup/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchFromGitHub, fetchurl, makeWrapper
 , perl, pandoc, python2Packages, git
-, par2cmdline ? null, par2Support ? false
+, par2cmdline ? null, par2Support ? true
 }:
 
 assert par2Support -> par2cmdline != null;
 
-let version = "0.29"; in
+let version = "0.29.1"; in
 
 with stdenv.lib;
 
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     repo = "bup";
     owner = "bup";
     rev = version;
-    sha256 = "1cc9kpq9bpln89m4ni6wqzh4c8zwxmgnhaibdxxfs5pk2mpl3ds5";
+    sha256 = "0wdr399jf64zzzsdvldhrwvnh5xpbghjvslr1j2cwr5y4i36znxf";
   };
 
   buildInputs = [ git python2Packages.python ];
diff --git a/pkgs/tools/compression/advancecomp/default.nix b/pkgs/tools/compression/advancecomp/default.nix
index 2f4b56ffcaf..23acf7446b1 100644
--- a/pkgs/tools/compression/advancecomp/default.nix
+++ b/pkgs/tools/compression/advancecomp/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = ''A set of tools to optimize deflate-compressed files'';
-    license = licenses.gpl2 ;
+    license = licenses.gpl3 ;
     maintainers = [ maintainers.raskin ];
     platforms = platforms.linux;
     homepage = https://github.com/amadvance/advancecomp;
diff --git a/pkgs/tools/compression/brotli/default.nix b/pkgs/tools/compression/brotli/default.nix
index 92180216671..111d4125684 100644
--- a/pkgs/tools/compression/brotli/default.nix
+++ b/pkgs/tools/compression/brotli/default.nix
@@ -15,6 +15,10 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ cmake ];
 
+  # This breaks on Darwin because our cmake hook tries to make a build folder
+  # and the wonderful bazel BUILD file is already there (yay case-insensitivty?)
+  prePatch = "rm BUILD";
+
   meta = with stdenv.lib; {
     inherit (src.meta) homepage;
 
diff --git a/pkgs/tools/compression/upx/default.nix b/pkgs/tools/compression/upx/default.nix
index b5e7f6652de..c41553b562d 100644
--- a/pkgs/tools/compression/upx/default.nix
+++ b/pkgs/tools/compression/upx/default.nix
@@ -1,33 +1,36 @@
-{stdenv, fetchurl, ucl, zlib}:
+{stdenv, fetchurl, fetchFromGitHub, ucl, zlib, perl}:
 
-stdenv.mkDerivation {
-  name = "upx-3.91";
-  src = fetchurl {
-    url = mirror://sourceforge/upx/upx-3.91-src.tar.bz2;
-    sha256 = "0g3aiinlcb37z1xhs202h2qrgbf8dygiyarmflbgahcq89byfz2j";
+stdenv.mkDerivation rec {
+  name = "upx-${version}";
+  version = "3.93";
+  src = fetchFromGitHub {
+    owner = "upx";
+    repo = "upx";
+    rev = "v${version}";
+    sha256 = "03ah23q85hx3liqyyj4vm8vip2d47bijsimagqd39q762a2rin3i";
   };
 
-  buildInputs = [ ucl zlib ];
+  buildInputs = [ ucl zlib perl ];
 
-  lzmaSrc = fetchurl {
-    url = mirror://sourceforge/sevenzip/lzma443.tar.bz2;
-    sha256 = "1ck4z81y6xv1x9ky8abqn3mj9xj2dwg41bmd5j431xgi8crgd1ds";
+  lzmaSrc = fetchFromGitHub {
+    owner = "upx";
+    repo = "upx-lzma-sdk";
+    rev = "v${version}";
+    sha256 = "16vj1c5bl04pzma0sr4saqk80y2iklyslzmrb4rm66aifa365zqj";
   };
 
   preConfigure = "
     export UPX_UCLDIR=${ucl}
-    mkdir lzma443
-    pushd lzma443
-    tar xf $lzmaSrc
-    popd
-    export UPX_LZMADIR=`pwd`/lzma443
+    cp -a $lzmaSrc/* src/lzma-sdk
+    export UPX_LZMADIR=`pwd`/src/lzma-sdk
     cd src
   ";
 
+  buildPhase = "make CHECK_WHITESPACE=true";
   installPhase = "mkdir -p $out/bin ; cp upx.out $out/bin/upx";
 
   meta = {
-    homepage = http://upx.sourceforge.net/;
+    homepage = https://upx.github.io/;
     description = "The Ultimate Packer for eXecutables";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/tools/compression/xz/default.nix b/pkgs/tools/compression/xz/default.nix
index 3092bd840c4..55ab89993c7 100644
--- a/pkgs/tools/compression/xz/default.nix
+++ b/pkgs/tools/compression/xz/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "xz-5.2.2";
+  name = "xz-5.2.3";
 
   src = fetchurl {
     url = "http://tukaani.org/xz/${name}.tar.bz2";
-    sha256 = "1da071wyx921pyx3zkxlnbpp14p6km98pnp66mg1arwi9dxgbxbg";
+    sha256 = "1ha08wxcldgcl81021x5nhknr47s1p95ljfkka4sqah5w5ns377x";
   };
 
   outputs = [ "bin" "dev" "out" "man" "doc" ];
diff --git a/pkgs/tools/compression/zstdmt/default.nix b/pkgs/tools/compression/zstdmt/default.nix
index 14dd4f21b2d..5cf88e68c64 100644
--- a/pkgs/tools/compression/zstdmt/default.nix
+++ b/pkgs/tools/compression/zstdmt/default.nix
@@ -17,9 +17,7 @@ stdenv.mkDerivation rec {
     zstd lz4
   ];
 
-  buildPhase = ''
-    make zstdmt lz4mt
-  '';
+  makeFlags = [ "CC=cc" "zstdmt" "lz4mt" ];
 
   installPhase = ''
     mkdir -p $out/bin/
diff --git a/pkgs/tools/filesystems/bonnie/bonnie-homebrew.patch b/pkgs/tools/filesystems/bonnie/bonnie-homebrew.patch
deleted file mode 100644
index e4903143f11..00000000000
--- a/pkgs/tools/filesystems/bonnie/bonnie-homebrew.patch
+++ /dev/null
@@ -1,157 +0,0 @@
-Copyright 2009-2016 Homebrew contributors.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-
- 1. Redistributions of source code must retain the above copyright
-    notice, this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright
-    notice, this list of conditions and the following disclaimer in the
-    documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
-IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-# Changes included in this patchset:
-# 1) Explicitly use clang/clang++ in Makefile
-# 2) __min() and __max() macros break bon_csv2html.cpp: "redefinition of 'min' as different kind of symbol"
-#    Remove the construct in favor of macro targets min()/max() provided by the library
-#    Files affected: port.h.in port.h duration.cpp bonnie++.cpp
-# 3) Remove the #ifdef _LARGEFILE64_SOURCE macros which not only prohibits the intended functionality of
-#    splitting into 2 GB files for such filesystems but also incorrectly tests for it in the first place.
-#    The ideal fix would be to replace the AC_TRY_RUN() in configure.in if the fail code actually worked.
-#    Files affected: bonnie++.cp
-
-diff --git i/Makefile w/Makefile
-index 4bb5103..8f7ed41 100644
---- i/Makefile
-+++ w/Makefile
-@@ -10,8 +10,8 @@ eprefix=${prefix}
- #MORE_WARNINGS=-Weffc++
- WFLAGS=-Wall -W -Wshadow -Wpointer-arith -Wwrite-strings -pedantic -ffor-scope -Wcast-align -Wsign-compare -Wpointer-arith -Wwrite-strings -Wformat-security -Wswitch-enum -Winit-self $(MORE_WARNINGS)
- CFLAGS=-O2  -DNDEBUG $(WFLAGS) $(MORECFLAGS)
--CXX=g++ $(CFLAGS)
--LINK=g++
-+CXX=clang++ $(CFLAGS)
-+LINK=clang++
- THREAD_LFLAGS=-lpthread
-
- INSTALL=/usr/bin/install -c
-diff --git i/bonnie++.cpp w/bonnie++.cpp
-index 8c5a43a..8a4b3dc 100644
---- i/bonnie++.cpp
-+++ w/bonnie++.cpp
-@@ -73,7 +73,7 @@ public:
-   void set_io_chunk_size(int size)
-     { delete m_buf; pa_new(size, m_buf, m_buf_pa); m_io_chunk_size = size; }
-   void set_file_chunk_size(int size)
--    { delete m_buf; m_buf = new char[__max(size, m_io_chunk_size)]; m_file_chunk_size = size; }
-+    { delete m_buf; m_buf = new char[max(size, m_io_chunk_size)]; m_file_chunk_size = size; }
- 
-   // Return the page-aligned version of the local buffer
-   char *buf() { return m_buf_pa; }
-@@ -138,7 +138,7 @@ CGlobalItems::CGlobalItems(bool *exitFlag)
-  , m_buf(NULL)
-  , m_buf_pa(NULL)
- {
--  pa_new(__max(m_io_chunk_size, m_file_chunk_size), m_buf, m_buf_pa);
-+  pa_new(max(m_io_chunk_size, m_file_chunk_size), m_buf, m_buf_pa);
-   SetName(".");
- }
- 
-@@ -294,11 +294,7 @@ int main(int argc, char *argv[])
-       {
-         char *sbuf = _strdup(optarg);
-         char *size = strtok(sbuf, ":");
--#ifdef _LARGEFILE64_SOURCE
-         file_size = size_from_str(size, "gt");
--#else
--        file_size = size_from_str(size, "g");
--#endif
-         size = strtok(NULL, "");
-         if(size)
-         {
-@@ -384,17 +380,8 @@ int main(int argc, char *argv[])
-     if(file_size % 1024 > 512)
-       file_size = file_size + 1024 - (file_size % 1024);
-   }
--#ifndef _LARGEFILE64_SOURCE
--  if(file_size == 2048)
--    file_size = 2047;
--  if(file_size > 2048)
--  {
--    fprintf(stderr, "Large File Support not present, can't do %dM.\n", file_size);
--    usage();
--  }
--#endif
--  globals.byte_io_size = __min(file_size, globals.byte_io_size);
--  globals.byte_io_size = __max(0, globals.byte_io_size);
-+  globals.byte_io_size = min(file_size, globals.byte_io_size);
-+  globals.byte_io_size = max(0, globals.byte_io_size);
- 
-   if(machine == NULL)
-   {
-@@ -465,14 +452,6 @@ int main(int argc, char *argv[])
-      && (directory_max_size < directory_min_size || directory_max_size < 0
-      || directory_min_size < 0) )
-     usage();
--#ifndef _LARGEFILE64_SOURCE
--  if(file_size > (1 << (31 - 20 + globals.io_chunk_bits)) )
--  {
--    fprintf(stderr
--   , "The small chunk size and large IO size make this test impossible in 32bit.\n");
--    usage();
--  }
--#endif
-   if(file_size && globals.ram && (file_size * concurrency) < (globals.ram * 2) )
-   {
-     fprintf(stderr
-diff --git i/duration.cpp w/duration.cpp
-index efa3fd3..f943155 100644
---- i/duration.cpp
-+++ w/duration.cpp
-@@ -38,7 +38,7 @@ double Duration_Base::stop()
-   getTime(&tv);
-   double ret;
-   ret = tv - m_start;
--  m_max = __max(m_max, ret);
-+  m_max = max(m_max, ret);
-   return ret;
- }
- 
-diff --git i/port.h w/port.h
-index 8d53622..2e1f112 100644
---- i/port.h
-+++ w/port.h
-@@ -49,8 +49,6 @@ typedef struct timeval TIMEVAL_TYPE;
- #endif
- 
- typedef int FILE_TYPE;
--#define __min min
--#define __max max
- typedef unsigned int UINT;
- typedef unsigned long ULONG;
- typedef const char * PCCHAR;
-diff --git i/port.h.in w/port.h.in
-index 69c8f24..8359d72 100644
---- i/port.h.in
-+++ w/port.h.in
-@@ -49,8 +49,6 @@ typedef struct timeval TIMEVAL_TYPE;
- #endif
- 
- typedef int FILE_TYPE;
--#define __min min
--#define __max max
- typedef unsigned int UINT;
- typedef unsigned long ULONG;
- typedef const char * PCCHAR;
diff --git a/pkgs/tools/filesystems/bonnie/default.nix b/pkgs/tools/filesystems/bonnie/default.nix
index fb25446d2e3..c120073866d 100644
--- a/pkgs/tools/filesystems/bonnie/default.nix
+++ b/pkgs/tools/filesystems/bonnie/default.nix
@@ -1,14 +1,12 @@
 { stdenv, fetchurl }:
 
-stdenv.mkDerivation {
-  name = "bonnie++-1.97";
+stdenv.mkDerivation rec {
+  name = "bonnie++-1.97.3";
   src = fetchurl {
-    url = http://www.coker.com.au/bonnie++/experimental/bonnie++-1.97.tgz;
-    sha256 = "10jrqgvacvblyqv38pg5jb9jspyisxaladcrp8k6b2k46xcs1xa4";
+    url = "http://www.coker.com.au/bonnie++/experimental/${name}.tgz";
+    sha256 = "0vkl42rsrsy95fc1ykc6g8rsdbnpxayvdaihnnkly1fww1m3hyz2";
   };
 
-  patches = stdenv.lib.optional stdenv.isDarwin ./bonnie-homebrew.patch;
-
   enableParallelBuilding = true;
 
   meta = {
diff --git a/pkgs/tools/filesystems/ceph/generic.nix b/pkgs/tools/filesystems/ceph/generic.nix
index d21d790dac8..e4c8b0f33bc 100644
--- a/pkgs/tools/filesystems/ceph/generic.nix
+++ b/pkgs/tools/filesystems/ceph/generic.nix
@@ -31,11 +31,10 @@ with stdenv;
 with stdenv.lib;
 let
   inherit (python2Packages) python;
-  mkFlag = trueStr: falseStr: cond: name: val:
-    if cond == null then null else
-      "--${if cond != false then trueStr else falseStr}${name}"
-      + "${if val != null && cond != false then "=${val}" else ""}";
-
+  mkFlag = trueStr: falseStr: cond: name: val: "--"
+    + (if cond then trueStr else falseStr)
+    + name
+    + optionalString (val != null && cond != false) "=${val}";
   mkEnable = mkFlag "enable-" "disable-";
   mkWith = mkFlag "with-" "without-";
   mkOther = mkFlag "" "" true;
diff --git a/pkgs/tools/filesystems/dosfstools/default.nix b/pkgs/tools/filesystems/dosfstools/default.nix
index 76df4f41257..d6a4e83a533 100644
--- a/pkgs/tools/filesystems/dosfstools/default.nix
+++ b/pkgs/tools/filesystems/dosfstools/default.nix
@@ -1,17 +1,19 @@
-{ stdenv, fetchFromGitHub }:
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "dosfstools-${version}";
-  version = "3.0.28";
+  version = "4.1";
 
   src = fetchFromGitHub {
     owner = "dosfstools";
     repo = "dosfstools";
     rev = "v${version}";
-    sha256 = "0lqirpxcn8ml0anq8aqmaljfsji9h6mdzz0jrs0yqqfhgg90bkg2";
+    sha256 = "1a2zn1655d5f1m6jp9vpn3bp8yfxhcmxx3mx23ai9hmxiydiykr1";
   };
 
-  makeFlags = "PREFIX=$(out)";
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+
+  configureFlags = [ "--enable-compat-symlinks" ];
 
   meta = {
     description = "Utilities for creating and checking FAT and VFAT file systems";
diff --git a/pkgs/tools/filesystems/f2fs-tools/default.nix b/pkgs/tools/filesystems/f2fs-tools/default.nix
index acc3b5183fe..d56c5e2ed9a 100644
--- a/pkgs/tools/filesystems/f2fs-tools/default.nix
+++ b/pkgs/tools/filesystems/f2fs-tools/default.nix
@@ -1,16 +1,17 @@
-{ stdenv, fetchurl, autoreconfHook, libselinux, libuuid, pkgconfig }:
+{ stdenv, fetchgit, autoreconfHook, libselinux, libuuid, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "f2fs-tools-${version}";
-  version = "1.7.0";
+  version = "1.8.0";
 
-  src = fetchurl {
-    url = "http://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git/snapshot/${name}.tar.gz";
-    sha256 = "1m6bn1ibq0p53m0n97il91xqgjgn2pzlz74lb5bfzassx7159m1k";
+  src = fetchgit {
+    url = "git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git";
+    rev = "refs/tags/v${version}";
+    sha256 = "0mbpg6mng6jcm5vxq0ivhklgpkwvjbhjwgkhzxr50ln46h5kbd2f";
   };
 
-  nativeBuildInputs = [ autoreconfHook ];
-  buildInputs = [ libselinux libuuid pkgconfig ];
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+  buildInputs = [ libselinux libuuid ];
 
   meta = with stdenv.lib; {
     homepage = "http://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git/";
diff --git a/pkgs/tools/filesystems/gcsfuse/default.nix b/pkgs/tools/filesystems/gcsfuse/default.nix
index 06190a8f03d..086f0e0f790 100644
--- a/pkgs/tools/filesystems/gcsfuse/default.nix
+++ b/pkgs/tools/filesystems/gcsfuse/default.nix
@@ -14,9 +14,9 @@ buildGoPackage rec {
     sha256 = "1lj9czippsgkhr8y3r7vwxgc8i952v76v1shdv10p43gsxwyyi9a";
   };
 
-  # TODO: add metadata https://nixos.org/nixpkgs/manual/#sec-standard-meta-attributes
   meta = {
     license = lib.licenses.asl20;
+    platforms = lib.platforms.linux;
     maintainers = [];
     homepage = https://cloud.google.com/storage/docs/gcs-fuse;
     description =
diff --git a/pkgs/tools/filesystems/glusterfs/default.nix b/pkgs/tools/filesystems/glusterfs/default.nix
index 2f49d630c15..4689207e835 100644
--- a/pkgs/tools/filesystems/glusterfs/default.nix
+++ b/pkgs/tools/filesystems/glusterfs/default.nix
@@ -6,10 +6,10 @@ let
   s =
   rec {
     baseName="glusterfs";
-    version = "3.10.0";
+    version = "3.10.1";
     name="${baseName}-${version}";
-    url="http://download.gluster.org/pub/gluster/glusterfs/3.10/3.10.0/glusterfs-3.10.0.tar.gz";
-    sha256 = "1svysq55z4sd6bxcdpkxljwis4cnzkknag22ngyr7sgb4bs19c97";
+    url="http://download.gluster.org/pub/gluster/glusterfs/3.10/${version}/glusterfs-${version}.tar.gz";
+    sha256 = "05qmn85lg3d1gz0fhn1v2z7nwl2qwbflvjc8nvkfyr4r57rkvhnk";
   };
   buildInputs = [
     fuse bison flex_2_5_35 openssl python2 ncurses readline
diff --git a/pkgs/tools/filesystems/mtools/UNUSED-darwin.patch b/pkgs/tools/filesystems/mtools/UNUSED-darwin.patch
new file mode 100644
index 00000000000..46b790afd30
--- /dev/null
+++ b/pkgs/tools/filesystems/mtools/UNUSED-darwin.patch
@@ -0,0 +1,11 @@
+--- mtools/sysincludes.h.orig	2017-04-01 20:59:46.083196540 +0100
++++ mtools/sysincludes.h	2017-04-01 20:59:12.855030456 +0100
+@@ -103,7 +103,7 @@
+ # define PACKED __attribute__ ((packed))
+ # if __GNUC__ == 2 && __GNUC_MINOR__ > 6 || __GNUC__ >= 3
+ /* gcc 2.6.3 doesn't have "unused" */		/* mool */
+-#  define UNUSED(x) x __attribute__ ((unused));x
++#  define UNUSED(x) x
+ #  define UNUSEDP __attribute__ ((unused))
+ # else
+ #  define UNUSED(x) x
diff --git a/pkgs/tools/filesystems/mtools/default.nix b/pkgs/tools/filesystems/mtools/default.nix
index 6b9631bfccf..ff311b9fae2 100644
--- a/pkgs/tools/filesystems/mtools/default.nix
+++ b/pkgs/tools/filesystems/mtools/default.nix
@@ -8,12 +8,19 @@ stdenv.mkDerivation rec {
     sha256 = "119gdfnsxc6hzicnsf718k0fxgy2q14pxn7557rc96aki20czsar";
   };
 
+  # Prevents errors such as "mainloop.c:89:15: error: expected ')'"
+  # Upstream issue https://lists.gnu.org/archive/html/info-mtools/2014-02/msg00000.html
+  patches = stdenv.lib.optional stdenv.isDarwin ./UNUSED-darwin.patch;
+
+  # fails to find X on darwin
+  configureFlags = stdenv.lib.optional stdenv.isDarwin "--without-x";
+
   doCheck = true;
 
   meta = {
     homepage = http://www.gnu.org/software/mtools/;
     description = "Utilities to access MS-DOS disks";
-    platforms = stdenv.lib.platforms.gnu;  # arbitrary choice
+    platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.darwin;
     maintainers = [ ];
   };
 }
diff --git a/pkgs/tools/filesystems/ntfs-3g/default.nix b/pkgs/tools/filesystems/ntfs-3g/default.nix
index a5c858ecbae..a96612c2804 100644
--- a/pkgs/tools/filesystems/ntfs-3g/default.nix
+++ b/pkgs/tools/filesystems/ntfs-3g/default.nix
@@ -3,7 +3,7 @@
 
 stdenv.mkDerivation rec {
   pname = "ntfs-3g";
-  version = "2016.2.22";
+  version = "2017.3.23";
   name = "${pname}-${version}";
 
   buildInputs = [ libuuid ] ++ stdenv.lib.optionals crypto [ gnutls libgcrypt ];
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://tuxera.com/opensource/ntfs-3g_ntfsprogs-${version}.tgz";
-    sha256 = "180y5y09h30ryf2vim8j30a2npwz1iv9ly5yjmh3wjdkwh2jrdyp";
+    sha256 = "1mb228p80hv97pgk3myyvgp975r9mxq56c6bdn1n24kngcfh4niy";
   };
 
   patches = [
diff --git a/pkgs/tools/graphics/asymptote/default.nix b/pkgs/tools/graphics/asymptote/default.nix
index 0fbca9f659c..de3ba3621a8 100644
--- a/pkgs/tools/graphics/asymptote/default.nix
+++ b/pkgs/tools/graphics/asymptote/default.nix
@@ -9,11 +9,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="asymptote";
-    version="2.40";
+    version="2.41";
     name="${baseName}-${version}";
-    hash="08hy8hgh217df9kwznr22mg8vxxh3rbmbxgx3nqhxyggc9xqy544";
-    url="https://netcologne.dl.sourceforge.net/project/asymptote/2.40/asymptote-2.40.src.tgz";
-    sha256="08hy8hgh217df9kwznr22mg8vxxh3rbmbxgx3nqhxyggc9xqy544";
+    hash="1w7fbq6gy65g0mxg6wdxi7v178c5yxvh9yrnv3bzm4sjzf4pwvhx";
+    url="https://freefr.dl.sourceforge.net/project/asymptote/2.41/asymptote-2.41.src.tgz";
+    sha256="1w7fbq6gy65g0mxg6wdxi7v178c5yxvh9yrnv3bzm4sjzf4pwvhx";
   };
   buildInputs = [
    ghostscriptX imagemagick fftw
diff --git a/pkgs/tools/graphics/epstool/default.nix b/pkgs/tools/graphics/epstool/default.nix
new file mode 100644
index 00000000000..9735adca53d
--- /dev/null
+++ b/pkgs/tools/graphics/epstool/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  version = "3.08";
+  name = "epstool-${version}";
+
+  src = fetchurl {
+    url = "http://ftp.de.debian.org/debian/pool/main/e/epstool/epstool_${version}+repack.orig.tar.gz";
+    sha256 = "1pfgqbipwk36clhma2k365jkpvyy75ahswn8jczzys382jalpwgk";
+  };
+
+  installPhase = ''
+    make EPSTOOL_ROOT=$out install
+  '';
+
+  patches = [ ./gcc43.patch ];
+
+  meta = with stdenv.lib; {
+    description = "A utility to create or extract preview images in EPS files, fix bounding boxes and convert to bitmaps";
+    homepage = http://pages.cs.wisc.edu/~ghost/gsview/epstool.htm;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.asppsa ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/graphics/epstool/gcc43.patch b/pkgs/tools/graphics/epstool/gcc43.patch
new file mode 100644
index 00000000000..398ce08c518
--- /dev/null
+++ b/pkgs/tools/graphics/epstool/gcc43.patch
@@ -0,0 +1,20 @@
+--- epstool-3.08.orig/src/epstool.c	2005-06-10 04:41:00.000000000 -0500
++++ epstool-3.08/src/epstool.c	2009-02-16 20:55:43.186140029 -0600
+@@ -2824,7 +2824,7 @@
+ 		code = -1;
+ 	}
+ 	if ((code==0) && stdout_name && (hChildStdoutWr == -1)) {
+-	    handle = open(stdout_name, O_WRONLY | O_CREAT);
++	    handle = open(stdout_name, O_WRONLY | O_CREAT, 0644);
+ 	    hChildStdoutWr = dup2(handle, 1);
+ 	    if (handle != -1)
+ 		close(handle);
+@@ -2832,7 +2832,7 @@
+ 		code = -1;
+ 	}
+ 	if ((code==0) && stderr_name && (hChildStderrWr == -1)) {
+-	    handle = open(stderr_name, O_WRONLY | O_CREAT);
++	    handle = open(stderr_name, O_WRONLY | O_CREAT, 0644);
+ 	    hChildStderrWr = dup2(handle, 2);
+ 	    if (handle != -1)
+ 		close(handle);
diff --git a/pkgs/tools/graphics/flam3/default.nix b/pkgs/tools/graphics/flam3/default.nix
index f4e0faffb0e..e3c9cbf2e69 100644
--- a/pkgs/tools/graphics/flam3/default.nix
+++ b/pkgs/tools/graphics/flam3/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Cosmic recursive fractal flames";
     homepage = http://flam3.com/;
-    maintainers = maintainers.nand0p;
+    maintainers = [ maintainers.nand0p ];
     platforms = platforms.linux;
     license = licenses.cc-by-nc-sa-20;
   };
diff --git a/pkgs/tools/graphics/icoutils/default.nix b/pkgs/tools/graphics/icoutils/default.nix
index 70f9e29d0f5..8b26f4ce3c8 100644
--- a/pkgs/tools/graphics/icoutils/default.nix
+++ b/pkgs/tools/graphics/icoutils/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libpng, perl, perlPackages, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "icoutils-0.31.1";
+  name = "icoutils-0.31.3";
 
   src = fetchurl {
     url = "mirror://savannah/icoutils/${name}.tar.bz2";
-    sha256 = "14rhd7p7v0rvxsfnrgxf5l4rl6n52h2aq09583glqpgjg0y9vqi6";
+    sha256 = "d4651de8e3f9e28d24b5343a2b7564f49754e5fe7d211c5d4dd60dcd65c8a152";
   };
 
   buildInputs = [ makeWrapper libpng perl ];
diff --git a/pkgs/tools/misc/autorandr/default.nix b/pkgs/tools/misc/autorandr/default.nix
index da9a599714c..d63819ade21 100644
--- a/pkgs/tools/misc/autorandr/default.nix
+++ b/pkgs/tools/misc/autorandr/default.nix
@@ -1,12 +1,12 @@
-{ fetchgit
-, stdenv
+{ stdenv
 , python3Packages
-, fetchFromGitHub }:
+, fetchFromGitHub
+, systemd }:
 
 let
   python = python3Packages.python;
   wrapPython = python3Packages.wrapPython;
-  date = "2016-11-23";
+  date = "2017-01-22";
 in
   stdenv.mkDerivation {
     name = "autorandr-unstable-${date}";
@@ -16,20 +16,38 @@ in
     phases = [ "unpackPhase" "installPhase" ];
 
     installPhase = ''
-      # install bash completions
-      mkdir -p $out/bin $out/libexec $out/etc/bash_completion.d
-      cp -v contrib/bash_completion/autorandr $out/etc/bash_completion.d
-
-      # install autorandr bin
-      cp autorandr.py $out/bin/autorandr
+      make install TARGETS='autorandr' PREFIX=$out
       wrapPythonProgramsIn $out/bin/autorandr $out
+
+      make install TARGETS='bash_completion' DESTDIR=$out
+
+      make install TARGETS='autostart_config' PREFIX=$out DESTDIR=$out
+
+      ${if false then ''
+        # breaks systemd-udev-settle during boot so disabled
+        make install TARGETS='systemd udev' PREFIX=$out DESTDIR=$out \
+          SYSTEMD_UNIT_DIR=/lib/systemd/system \
+          UDEV_RULES_DIR=/etc/udev/rules.d
+        substituteInPlace $out/etc/udev/rules.d/40-monitor-hotplug.rules \
+          --replace /bin "${systemd}/bin"
+      '' else if systemd != null then ''
+        make install TARGETS='systemd' PREFIX=$out DESTDIR=$out \
+          SYSTEMD_UNIT_DIR=/lib/systemd/system
+        make install TARGETS='udev' PREFIX=$out DESTDIR=$out \
+          UDEV_RULES_DIR=/etc/udev/rules.d
+      '' else ''
+        make install TARGETS='pmutils' DESTDIR=$out \
+          PM_SLEEPHOOKS_DIR=/lib/pm-utils/sleep.d
+        make install TARGETS='udev' PREFIX=$out DESTDIR=$out \
+          UDEV_RULES_DIR=/etc/udev/rules.d
+      ''}
     '';
 
     src = fetchFromGitHub {
       owner = "phillipberndt";
       repo = "autorandr";
-      rev = "53d29f99275aebf14240ea95f2d7022b305738d5";
-      sha256 = "0pza4wfkzv7mmg2m4pf3n8wk0p7cy6bfqknn8ywz51r8ja16cqfj";
+      rev = "855c18b7f2cfd364d6f085d4301b5b98ba6e572a";
+      sha256 = "1yp1gns3lwa8796cb7par9czkc9i7paap2fkzf7wj6zqlkgjdvv0";
     };
 
     meta = {
diff --git a/pkgs/tools/misc/buildtorrent/default.nix b/pkgs/tools/misc/buildtorrent/default.nix
new file mode 100644
index 00000000000..064c836f843
--- /dev/null
+++ b/pkgs/tools/misc/buildtorrent/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl }:
+
+let version = "0.8"; in
+
+stdenv.mkDerivation rec {
+	name = "buildtorrent";
+
+	src = fetchurl {
+		url = "http://mathr.co.uk/blog/code/${name}-${version}.tar.gz";
+		sha256 = "e8e27647bdb38873ac570d46c1a9689a92b01bb67f59089d1cdd08784f7052d0";
+	};
+
+	meta = {
+		description = "A simple commandline torrent creator";
+		homepage = http://mathr.co.uk/blog/torrent.html;
+		license = stdenv.lib.licenses.gpl3Plus;
+		platforms = stdenv.lib.platforms.all;
+	};
+}
\ No newline at end of file
diff --git a/pkgs/tools/misc/clac/default.nix b/pkgs/tools/misc/clac/default.nix
new file mode 100644
index 00000000000..9fd8711a3d0
--- /dev/null
+++ b/pkgs/tools/misc/clac/default.nix
@@ -0,0 +1,30 @@
+{stdenv, fetchFromGitHub}:
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "clac";
+  version = "0.0.0.20170416";
+
+  src = fetchFromGitHub {
+    owner = "soveran";
+    repo = "clac";
+    rev = "828600b01e80166bc435d4d73506f0c3e16f2459";
+    sha256 = "08fhhvjrc7rn5fjjdqlallr76m6ybj3wm5gx407jbgfbky0fj7mb";
+  };
+
+  buildInputs = [];
+  makeFlags = ["PREFIX=$(out)"];
+
+  postInstall = ''
+    mkdir -p "$out/share/doc/${pname}"
+    cp README* LICENSE "$out/share/doc/${pname}"
+  '';
+
+  meta = {
+    inherit version;
+    description = "Interactive stack-based calculator";
+    license = stdenv.lib.licenses.bsd2;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+    homepage = "https://github.com/soveran/clac";
+  };
+}
diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix
index 455937f3a67..d87976cbc5e 100644
--- a/pkgs/tools/misc/coreutils/default.nix
+++ b/pkgs/tools/misc/coreutils/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
       ++ optional aclSupport acl.crossDrv
       ++ optional attrSupport attr.crossDrv
       ++ optionals selinuxSupport [ libselinux.crossDrv libsepol.crossDrv ]
-      ++ optional (stdenv.ccCross.libc ? libiconv)
+      ++ optional (stdenv ? ccCross.libc.libiconv)
         stdenv.ccCross.libc.libiconv.crossDrv;
 
     # Prevents attempts of running 'help2man' on cross-built binaries.
diff --git a/pkgs/tools/misc/exa/default.nix b/pkgs/tools/misc/exa/default.nix
index d26eb8f45ae..c49f11a72a9 100644
--- a/pkgs/tools/misc/exa/default.nix
+++ b/pkgs/tools/misc/exa/default.nix
@@ -1,28 +1,55 @@
-{ stdenv, fetchFromGitHub, rustPlatform, openssl, cmake, zlib }:
+{ stdenv, fetchFromGitHub, rustPlatform, openssl, cmake, perl, pkgconfig, zlib }:
 
 with rustPlatform;
 
-buildRustPackage rec {
-  name = "exa-${version}";
-  version = "2016-04-20";
+let
+  # check for updates
+  zoneinfo_compiled = fetchFromGitHub {
+    owner = "rust-datetime";
+    repo = "zoneinfo-compiled";
+    rev = "f56921ea5e9f7cf065b1480ff270a1757c1f742f";
+    sha256 = "1xmw7c5f5n45lkxnyxp4llfv1bnqhc876w98165ccdbbiylfkw26";
+  };
+  cargoPatch = ''
+    # use non-git dependencies
+    patch -p1 <<EOF
+   --- exa-v0.4.1-src.org/Cargo.toml       1970-01-01 01:00:01.000000000 +0100
+   +++ exa-v0.4.1-src/Cargo.toml   2017-04-04 10:33:31.554377034 +0200
+   @@ -42,4 +42,4 @@
+    optional = true
+
+    [dependencies.zoneinfo_compiled]
+   -git = "https://github.com/rust-datetime/zoneinfo-compiled.git"
+   +path = "${zoneinfo_compiled}"
+EOF
+  '';
+in buildRustPackage rec {
+  name = "exa-unstable-2017-04-02";
 
-  # NOTE: There is an impurity caused by `exa` depending on
-  # https://github.com/rust-datetime/zoneinfo-compiled.git
-  depsSha256 = "0qsqkgc1wxigvskhaamgfp5pyc2kprsikhcfccysgs07w44nxkd0";
+  depsSha256 = "0szjba03q4iwzjzb2dp39hhz554ys4z11qdhcdq1mgxqk94scjf4";
 
   src = fetchFromGitHub {
     owner = "ogham";
     repo = "exa";
-    rev = "110a1c716bfc4a7f74f74b3c4f0a881c773fcd06";
-    sha256 = "136yxi85m50vwmqinr1wnd0h29n5yjykqqqk9ibbcmmhx8sqhjzf";
+    rev = "1a6066327d2643881996946942aba530e8a1c67c";
+    sha256 = "1xrsg3zw5d3sw2bwx8g0lrs6zpk8rdrvvnknf7c9drp7rplmd8zq";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake pkgconfig perl ];
   buildInputs = [ openssl zlib ];
 
   # Some tests fail, but Travis ensures a proper build
   doCheck = false;
 
+  cargoUpdateHook = ''
+    ${cargoPatch}
+  '';
+  cargoDepsHook = ''
+    pushd $sourceRoot
+    ${cargoPatch}
+    popd
+  '';
+
   meta = with stdenv.lib; {
     description = "Replacement for 'ls' written in Rust";
     longDescription = ''
@@ -36,6 +63,5 @@ buildRustPackage rec {
     homepage = http://bsago.me/exa;
     license = licenses.mit;
     maintainer = [ maintainers.ehegnes ];
-    broken = true;
   };
 }
diff --git a/pkgs/tools/misc/fzf/default.nix b/pkgs/tools/misc/fzf/default.nix
index 84b074de6cc..6001a785c7a 100644
--- a/pkgs/tools/misc/fzf/default.nix
+++ b/pkgs/tools/misc/fzf/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "fzf-${version}";
-  version = "0.16.4";
+  version = "0.16.6";
   rev = "${version}";
 
   goPackagePath = "github.com/junegunn/fzf";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     inherit rev;
     owner = "junegunn";
     repo = "fzf";
-    sha256 = "0kq4j6q1xk17ryzzcb8s6l2zqsjkk75lrwalias9gwcriqs6k6yn";
+    sha256 = "0nzjbm40c4w9d0d34s5qnr9jkrh1vkn508xl2lfwfvmnzsnb9xbn";
   };
 
   outputs = [ "bin" "out" "man" ];
diff --git a/pkgs/tools/misc/fzf/deps.nix b/pkgs/tools/misc/fzf/deps.nix
index 170761078c9..2f033c5b1c2 100644
--- a/pkgs/tools/misc/fzf/deps.nix
+++ b/pkgs/tools/misc/fzf/deps.nix
@@ -14,8 +14,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/junegunn/go-runewidth";
-      rev = "63c378b851290989b19ca955468386485f118c65";
-      sha256 = "1z5mhfrpqdssn3603vwd95w69z28igwq96lh7b9rrdcx440i822d";
+      rev = "14207d285c6c197daabb5c9793d63e7af9ab2d50";
+      sha256 = "0y6yq9zd4kh7fimnc00r3h9pr2pwa5j85b3jcn5dyfamsnm2xdsv";
     };
   }
   {
@@ -32,8 +32,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/crypto";
-      rev = "854ae91cdcbf914b499b1d7641d07859f3653481";
-      sha256 = "19hj2nv2awc6zhpiapv8xv2yjdwfpxhvx5wnr99if6kg0y1ybsa7";
+      rev = "abc5fa7ad02123a41f02bf1391c9760f7586e608";
+      sha256 = "1kdfbz46jnpm2hip79db6jvw5m4z4vh7x7rr798mzqdn6fsad7jb";
     };
   }
 ]
diff --git a/pkgs/tools/misc/keychain/default.nix b/pkgs/tools/misc/keychain/default.nix
index 6ffd36312a3..9abfdea5f7b 100644
--- a/pkgs/tools/misc/keychain/default.nix
+++ b/pkgs/tools/misc/keychain/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "keychain-${version}";
-  version = "2.8.0";
+  version = "2.8.3";
 
   src = fetchFromGitHub {
     owner = "funtoo";
     repo = "keychain";
-    rev = "1c8eaba53a7788d12d086b66ac3929810510f73a";
-    sha256 = "0ajas58cv8mp5wb6hn1zhsqiwfxvx69p4f91a5j2as299rxgrxlp";
+    rev = "${version}";
+    sha256 = "0za2fi4g7ixzj3izgwlv71b3cviz3qhz43y4bhdkglg16x5cnzcb";
   };
 
   buildInputs = [ makeWrapper perl ];
@@ -38,5 +38,6 @@ stdenv.mkDerivation rec {
     platforms =
       with stdenv.lib;
       platforms.linux ++ platforms.darwin;
+    maintainers = with stdenv.lib.maintainers; [ sigma ];
   };
 }
diff --git a/pkgs/tools/misc/less/default.nix b/pkgs/tools/misc/less/default.nix
index 9693556862b..b3370a3cab1 100644
--- a/pkgs/tools/misc/less/default.nix
+++ b/pkgs/tools/misc/less/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, ncurses, lessSecure ? false }:
 
 stdenv.mkDerivation rec {
-  name = "less-481";
+  name = "less-487";
 
   src = fetchurl {
     url = "http://www.greenwoodsoftware.com/less/${name}.tar.gz";
-    sha256 = "19fxj0h10y5bhr3a1xa7kqvnwl44db3sdypz8jxl1q79yln8z8rz";
+    sha256 = "01i7n6jaxwmww3pasy3hg38zc6x7jw0w05mqqvh6caqbrdaq9p7k";
   };
 
   configureFlags = [ "--sysconfdir=/etc" ] # Look for ‘sysless’ in /etc.
diff --git a/pkgs/tools/misc/mktorrent/default.nix b/pkgs/tools/misc/mktorrent/default.nix
index c62bd45fef8..0e1d3b8f49f 100644
--- a/pkgs/tools/misc/mktorrent/default.nix
+++ b/pkgs/tools/misc/mktorrent/default.nix
@@ -1,11 +1,14 @@
-{stdenv, fetchurl, openssl}:
+{stdenv, fetchFromGitHub, openssl}:
 
-stdenv.mkDerivation {
-  name = "mktorrent-1.0";
+stdenv.mkDerivation rec {
+  name = "mktorrent-${version}";
+  version = "1.1";
 
-  src = fetchurl {
-    url = mirror://sourceforge/mktorrent/mktorrent-1.0.tar.gz;
-    sha256 = "17qi3nfky240pq6qcmf5qg324mxm83vk9r3nvsdhsvinyqm5d3kg";
+  src = fetchFromGitHub {
+    owner = "Rudde";
+    repo = "mktorrent";
+    rev = "v${version}";
+    sha256 = "17pdc5mandl739f8q26n5is8ga56s83aqcrwhlnnplbxwx2inidr";
   };
 
   makeFlags = "USE_PTHREADS=1 USE_OPENSSL=1 USE_LONG_OPTIONS=1"
@@ -22,7 +25,6 @@ stdenv.mkDerivation {
     homepage = http://mktorrent.sourceforge.net/;
     license = stdenv.lib.licenses.gpl2Plus;
     description = "Command line utility to create BitTorrent metainfo files";
-    platforms = with stdenv.lib.platforms; unix;
-    maintainers = with stdenv.lib.maintainers; [viric];
+    maintainers = with stdenv.lib.maintainers; [viric profpatsch];
   };
 }
diff --git a/pkgs/tools/misc/osm2pgsql/default.nix b/pkgs/tools/misc/osm2pgsql/default.nix
new file mode 100644
index 00000000000..98489358738
--- /dev/null
+++ b/pkgs/tools/misc/osm2pgsql/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchgit, cmake, expat, proj, bzip2, zlib, boost, postgresql, lua}:
+
+let
+  version = "0.92.1-unstable";
+in
+stdenv.mkDerivation rec {
+  name = "osm2pgsql-${version}";
+
+  src = fetchgit {
+    url = "https://github.com/openstreetmap/osm2pgsql.git";
+    rev = "2b72b2121e91b72b0db6911d65c5165ca46d9d66";
+    # Still waiting on release after:
+    # https://github.com/openstreetmap/osm2pgsql/pull/684
+    # https://github.com/openstreetmap/osm2pgsql/issues/634
+    #rev = "refs/tags/${version}";
+    sha256 = "1v6s863zsv9p2mni35gfamawj0xr2cv2p8a31z7sijf8m6fn0vpy";
+  };
+  nativeBuildInputs = [cmake];
+  buildInputs = [expat proj bzip2 zlib boost postgresql lua];
+
+  meta = {
+    description = "OpenStreetMap data to PostgreSQL converter";
+    version = "0.92.1-unstable";
+    homepage = https://github.com/openstreetmap/osm2pgsql;
+    license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/pkgs/tools/misc/picocom/default.nix b/pkgs/tools/misc/picocom/default.nix
index f287e39e7b2..bfafe0151a0 100644
--- a/pkgs/tools/misc/picocom/default.nix
+++ b/pkgs/tools/misc/picocom/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "picocom-${version}";
-  version = "2.1";
+  version = "2.2";
 
   src = fetchFromGitHub {
     owner = "npat-efault";
     repo = "picocom";
     rev = version;
-    sha256 = "1ac3xdfiw5bd24lw4l9hxc75rcagw0y182x7svhkqp2gwsvzkbjv";
+    sha256 = "06b2ic34dnxc73cprc5imi3iamlhsv623sbg9vj5h5rvs586dwjx";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/misc/rrdtool/default.nix b/pkgs/tools/misc/rrdtool/default.nix
index de4c97731ef..3d2666add42 100644
--- a/pkgs/tools/misc/rrdtool/default.nix
+++ b/pkgs/tools/misc/rrdtool/default.nix
@@ -1,5 +1,5 @@
 { fetchurl, stdenv, gettext, perl, pkgconfig, libxml2, pango, cairo, groff
-, tcl-8_5 }:
+, tcl-8_5, darwin }:
 
 stdenv.mkDerivation rec {
   name = "rrdtool-1.6.0";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig ];
 
   buildInputs = [ gettext perl libxml2 pango cairo groff ]
-    ++ stdenv.lib.optional stdenv.isDarwin tcl-8_5;
+    ++ stdenv.lib.optionals stdenv.isDarwin [ tcl-8_5 darwin.apple_sdk.frameworks.ApplicationServices ];
 
   postInstall = ''
     # for munin and rrdtool support
diff --git a/pkgs/tools/misc/scanmem/default.nix b/pkgs/tools/misc/scanmem/default.nix
index 03c1273a7d3..38b31311137 100644
--- a/pkgs/tools/misc/scanmem/default.nix
+++ b/pkgs/tools/misc/scanmem/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/scanmem/scanmem";
     description = "Memory scanner for finding and poking addresses in executing processes";
     maintainers = [ maintainers.chattered  ];
-    platforms = with platforms; linux ++ darwin;
+    platforms = platforms.linux;
     license = licenses.gpl3;
   };
 }
diff --git a/pkgs/tools/misc/units/default.nix b/pkgs/tools/misc/units/default.nix
index e8b93569c72..90758e909e5 100644
--- a/pkgs/tools/misc/units/default.nix
+++ b/pkgs/tools/misc/units/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "units-${version}";
-  version = "2.13";
+  version = "2.14";
 
   src = fetchurl {
     url = "mirror://gnu/units/${name}.tar.gz";
-    sha256 = "1awhjw9zjlfb8s5g3yyx63f7ddfcr1sanlbxpqifmrgq24ql198b";
+    sha256 = "9d33893d82f3ddd831d5822992007c40bcd0826ae67d3cbc96539951fb0a82e8";
   };
 
   buildInputs = [ readline ];
diff --git a/pkgs/tools/misc/yle-dl/default.nix b/pkgs/tools/misc/yle-dl/default.nix
index a7f2d445bca..600b2c49758 100644
--- a/pkgs/tools/misc/yle-dl/default.nix
+++ b/pkgs/tools/misc/yle-dl/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "yle-dl-${version}";
-  version = "2.11";
+  version = "2.15";
 
   src = fetchFromGitHub {
     owner = "aajanki";
     repo = "yle-dl";
     rev = version;
-    sha256 = "1fa2a25j3wwk3m6q1alilklwhqf337ch8rj6bwricc5zqb58qivc";
+    sha256 = "1mvgw8ppv33j04mjsyb5rxg358v3i2zfgazwm7nc3ysc5yl091j5";
   };
 
   patchPhase = ''
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index b9548a5bff5..998f2969925 100644
--- a/pkgs/tools/misc/youtube-dl/default.nix
+++ b/pkgs/tools/misc/youtube-dl/default.nix
@@ -14,11 +14,11 @@ with stdenv.lib;
 buildPythonApplication rec {
 
   name = "youtube-dl-${version}";
-  version = "2017.04.02";
+  version = "2017.04.17";
 
   src = fetchurl {
     url = "https://yt-dl.org/downloads/${version}/${name}.tar.gz";
-    sha256 = "131z42aq2qnh394y4ykzm3mvsf62lia86y90as6acyg4v201lgk2";
+    sha256 = "0bihcjghrpj8skh216wwb7i2r990f6b7x63m8vdamq5bw317wvrj";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/networking/cjdns/default.nix b/pkgs/tools/networking/cjdns/default.nix
index 3000aacafa3..3f2d81249d1 100644
--- a/pkgs/tools/networking/cjdns/default.nix
+++ b/pkgs/tools/networking/cjdns/default.nix
@@ -1,20 +1,14 @@
 { stdenv, fetchurl, fetchpatch, nodejs, which, python27, utillinux }:
 
-let version = "18"; in
+let version = "19.1"; in
 stdenv.mkDerivation {
   name = "cjdns-"+version;
 
   src = fetchurl {
     url = "https://github.com/cjdelisle/cjdns/archive/cjdns-v${version}.tar.gz";
-    sha256 = "1as7n730ppn93cpal7s6r6iq1qx46m0c45iwy8baypbpp42zxrap";
+    sha256 = "53c568a500215b055a9894178eb4477bd93a6e1abf751d0bc5ef2a03ea01a188";
   };
 
-  patches = [(fetchpatch {
-    name = "glibc-2.25.diff";
-    url = https://github.com/cjdelisle/cjdns/pull/1017.diff;
-    sha256 = "1k05d1w04lngcki56b6brkwg9xakzsbr5ibkcba8112v6jdzw51f";
-  })];
-
   buildInputs = [ which python27 nodejs ] ++
     # for flock
     stdenv.lib.optional stdenv.isLinux utillinux;
diff --git a/pkgs/tools/networking/dropbear/default.nix b/pkgs/tools/networking/dropbear/default.nix
index b1f726ad27d..aeace91df19 100644
--- a/pkgs/tools/networking/dropbear/default.nix
+++ b/pkgs/tools/networking/dropbear/default.nix
@@ -1,5 +1,7 @@
-{ stdenv, fetchurl, zlib, enableStatic ? false,
-sftpPath ? "/var/run/current-system/sw/libexec/sftp-server" }:
+{ stdenv, lib, fetchurl, glibc, zlib
+, enableStatic ? false
+, sftpPath ? "/run/current-system/sw/libexec/sftp-server"
+}:
 
 stdenv.mkDerivation rec {
   name = "dropbear-2016.74";
@@ -11,7 +13,7 @@ stdenv.mkDerivation rec {
 
   dontDisableStatic = enableStatic;
 
-  configureFlags = stdenv.lib.optional enableStatic "LDFLAGS=-static";
+  configureFlags = lib.optional enableStatic "LDFLAGS=-static";
 
   CFLAGS = "-DSFTPSERVER_PATH=\\\"${sftpPath}\\\"";
 
@@ -33,7 +35,7 @@ stdenv.mkDerivation rec {
     ./pass-path.patch
   ];
 
-  buildInputs = [ zlib ];
+  buildInputs = [ zlib ] ++ lib.optionals enableStatic [ glibc.static zlib.static ];
 
   meta = with stdenv.lib; {
     homepage = "http://matt.ucc.asn.au/dropbear/dropbear.html";
diff --git a/pkgs/tools/networking/inetutils/default.nix b/pkgs/tools/networking/inetutils/default.nix
index 3a6e9b625b8..ad058174cff 100644
--- a/pkgs/tools/networking/inetutils/default.nix
+++ b/pkgs/tools/networking/inetutils/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ncurses, perl }:
+{ stdenv, fetchurl, ncurses, perl, help2man }:
 
 stdenv.mkDerivation rec {
   name = "inetutils-1.9.4";
@@ -8,9 +8,12 @@ stdenv.mkDerivation rec {
     sha256 = "05n65k4ixl85dc6rxc51b1b732gnmm8xnqi424dy9f1nz7ppb3xy";
   };
 
-  patches = [ ./whois-Update-Canadian-TLD-server.patch ];
+  patches = [
+    ./whois-Update-Canadian-TLD-server.patch
+    ./service-name.patch
+  ];
 
-  buildInputs = [ ncurses /* for `talk' */ perl /* for `whois' */ ];
+  buildInputs = [ ncurses /* for `talk' */ perl /* for `whois' */ help2man ];
 
   configureFlags = "--with-ncurses-include-dir=${ncurses.dev}/include";
 
@@ -18,6 +21,7 @@ stdenv.mkDerivation rec {
   # $TMPDIR is too long.
   #doCheck = true;
 
+
   postInstall = ''
     # XXX: These programs are normally installed setuid but since it
     # fails, they end up being non-executable, hence this hack.
diff --git a/pkgs/tools/networking/inetutils/service-name.patch b/pkgs/tools/networking/inetutils/service-name.patch
new file mode 100644
index 00000000000..e34516313c5
--- /dev/null
+++ b/pkgs/tools/networking/inetutils/service-name.patch
@@ -0,0 +1,11 @@
+--- inetutils-1.9.4.org/whois/whois.c	2015-03-31 17:40:50.000000000 +0200
++++ inetutils-1.9.4/whois/whois.c	2017-04-20 10:23:38.487358708 +0200
+@@ -576,7 +576,7 @@
+   hints.ai_family = AF_UNSPEC;
+   hints.ai_socktype = SOCK_STREAM;
+ 
+-  if ((i = getaddrinfo (server, port ? port : "whois", &hints, &res)) != 0)
++  if ((i = getaddrinfo (server, port ? port : "nicname", &hints, &res)) != 0)
+     err_quit ("getaddrinfo: %s", gai_strerror (i));
+ 
+   for (ressave = res; res; res = res->ai_next)
diff --git a/pkgs/tools/networking/iperf/3.nix b/pkgs/tools/networking/iperf/3.nix
index 7dc418cba57..0d1e3194bd8 100644
--- a/pkgs/tools/networking/iperf/3.nix
+++ b/pkgs/tools/networking/iperf/3.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "iperf-3.1.3";
+  name = "iperf-3.1.7";
 
   src = fetchurl {
     url = "http://downloads.es.net/pub/iperf/${name}.tar.gz";
-    sha256 = "1gwmhm29zlp5grrpglmqj7vgx19s6xy33hk6hpbn8jnpn5lxpn30";
+    sha256 = "0kvk8d0a3dcxc8fisyprbn01y8akxj4sx8ld5dh508p9dx077vx4";
   };
 
   postInstall = ''
diff --git a/pkgs/tools/networking/jwhois/default.nix b/pkgs/tools/networking/jwhois/default.nix
index 2a2e444f5b2..1d7932c7ad3 100644
--- a/pkgs/tools/networking/jwhois/default.nix
+++ b/pkgs/tools/networking/jwhois/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
     sed -i -e "s|/usr/bin/lynx|${lynx}/bin/lynx|g" $out/etc/jwhois.conf
   '';
 
-  patches = [ ./connect.patch ];
+  patches = [ ./connect.patch ./service-name.patch ];
 
   meta = {
     description = "A client for the WHOIS protocol allowing you to query the owner of a domain name";
diff --git a/pkgs/tools/networking/jwhois/service-name.patch b/pkgs/tools/networking/jwhois/service-name.patch
new file mode 100644
index 00000000000..170eddbad79
--- /dev/null
+++ b/pkgs/tools/networking/jwhois/service-name.patch
@@ -0,0 +1,17 @@
+--- a/src/dns.c   2007-06-25 23:58:38.000000000 -0700
++++ b/src/dns.c   2016-06-04 16:20:19.644865127 -0700
+@@ -113,12 +113,13 @@
+ lookup_host_addrinfo(struct addrinfo **res, const char *host, int port)
+ {
+   struct addrinfo hints;
+-  char ascport[10] = "whois";
++  char ascport[10] = "nicname";
+   int error;
+
+   memset(&hints, 0, sizeof(hints));
+   hints.ai_family = PF_UNSPEC;
+
++  hints.ai_flags = AI_ADDRCONFIG;
+   hints.ai_socktype = SOCK_STREAM;
+   if (port)
+     sprintf(ascport, "%9.9d", port);
diff --git a/pkgs/tools/networking/lftp/default.nix b/pkgs/tools/networking/lftp/default.nix
index d6ae4a0e5a9..ae62195342f 100644
--- a/pkgs/tools/networking/lftp/default.nix
+++ b/pkgs/tools/networking/lftp/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   name = "lftp-${version}";
-  version = "4.7.6";
+  version = "4.7.7";
 
   src = fetchurl {
     urls = [
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
       "ftp://ftp.st.ryukoku.ac.jp/pub/network/ftp/lftp/${name}.tar.bz2"
       "http://lftp.yar.ru/ftp/old/${name}.tar.bz2"
       ];
-    sha256 = "6b46389e9c2e67af9029a783806facea4c8f0b4d6adca5c1088e948d2fd68ae7";
+    sha256 = "104jvzmvbmblfg8n8ffrnrrg8za5l25n53lbkawwy5x3m4h1yi7y";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/networking/netcat-openbsd/default.nix b/pkgs/tools/networking/netcat-openbsd/default.nix
index 9933b512006..ef539cbb51f 100644
--- a/pkgs/tools/networking/netcat-openbsd/default.nix
+++ b/pkgs/tools/networking/netcat-openbsd/default.nix
@@ -15,7 +15,9 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  buildInputs = [ pkgconfig libbsd ];
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ libbsd ];
+
   sourceRoot = name;
   patches = [ "../debian/patches/*.patch" ];
 
diff --git a/pkgs/tools/networking/network-manager-applet/default.nix b/pkgs/tools/networking/network-manager-applet/default.nix
index d2240984d9f..c596ea63f4d 100644
--- a/pkgs/tools/networking/network-manager-applet/default.nix
+++ b/pkgs/tools/networking/network-manager-applet/default.nix
@@ -1,16 +1,17 @@
 { stdenv, fetchurl, intltool, pkgconfig, libglade, networkmanager, gnome3
 , libnotify, libsecret, polkit, isocodes, modemmanager, librsvg
 , mobile_broadband_provider_info, glib_networking, gsettings_desktop_schemas
-, makeWrapper, udev, libgudev, hicolor_icon_theme, jansson, wrapGAppsHook }:
+, makeWrapper, udev, libgudev, hicolor_icon_theme, jansson, wrapGAppsHook, webkitgtk }:
 
 stdenv.mkDerivation rec {
-  name    = "${pname}-${version}";
+  name    = "${pname}-${major}.${minor}";
   pname   = "network-manager-applet";
-  version = networkmanager.version;
+  major   = "1.4";
+  minor   = "6";
 
   src = fetchurl {
-    url    = "mirror://gnome/sources/${pname}/${networkmanager.major}/${name}.tar.xz";
-    sha256 = "09ijxicsqf39y6h8kwbfjyljfbqkkx4vrpyfn6gfg1h9mvp4cf39";
+    url    = "mirror://gnome/sources/${pname}/${major}/${name}.tar.xz";
+    sha256 = "0xpcdwqmnwiqqqsd5rx1gh5rvv5m2skj59bqxhccy1k2ikzgr9hh";
   };
 
   configureFlags = [ "--sysconfdir=/etc" ];
@@ -18,7 +19,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     gnome3.gtk libglade networkmanager libnotify libsecret gsettings_desktop_schemas
     polkit isocodes makeWrapper udev libgudev gnome3.gconf gnome3.libgnome_keyring
-    modemmanager jansson librsvg glib_networking gnome3.dconf
+    modemmanager jansson librsvg glib_networking gnome3.dconf webkitgtk
   ];
 
   nativeBuildInputs = [ intltool pkgconfig wrapGAppsHook ];
diff --git a/pkgs/tools/networking/network-manager/PppdPath.patch b/pkgs/tools/networking/network-manager/PppdPath.patch
index 98c1308e4db..4850d93716d 100644
--- a/pkgs/tools/networking/network-manager/PppdPath.patch
+++ b/pkgs/tools/networking/network-manager/PppdPath.patch
@@ -1,8 +1,6 @@
-diff --git a/src/ppp-manager/nm-ppp-manager.c b/src/ppp-manager/nm-ppp-manager.c
-index 89a7add..ae99eb4 100644
---- a/src/ppp-manager/nm-ppp-manager.c
-+++ b/src/ppp-manager/nm-ppp-manager.c
-@@ -843,7 +843,7 @@ create_pppd_cmd_line (NMPPPManager *self,
+--- NetworkManager-1.6.2.org/src/ppp/nm-ppp-manager.c	2017-02-15 13:10:27.000000000 +0100
++++ NetworkManager-1.6.2/./src/ppp/nm-ppp-manager.c	2017-04-03 11:45:39.891653216 +0200
+@@ -724,7 +724,7 @@
  
  	g_return_val_if_fail (setting != NULL, NULL);
  
diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix
index cac37bce280..fd470143a3c 100644
--- a/pkgs/tools/networking/network-manager/default.nix
+++ b/pkgs/tools/networking/network-manager/default.nix
@@ -2,25 +2,34 @@
 , systemd, libgudev, libnl, libuuid, polkit, gnutls, ppp, dhcp, iptables
 , libgcrypt, dnsmasq, bluez5, readline
 , gobjectIntrospection, modemmanager, openresolv, libndp, newt, libsoup
-, ethtool, gnused, coreutils, file, inetutils, kmod }:
+, ethtool, iputils, gnused, coreutils, file, inetutils, kmod, jansson, libxslt
+, python3Packages, docbook_xsl, fetchpatch }:
 
 stdenv.mkDerivation rec {
   name    = "network-manager-${version}";
   pname   = "NetworkManager";
-  major   = "1.4";
-  version = "${major}.4";
+  major   = "1.6";
+  version = "${major}.2";
 
   src = fetchurl {
     url    = "mirror://gnome/sources/${pname}/${major}/${pname}-${version}.tar.xz";
-    sha256 = "029k2f1arx1m5hppmr778i9yg34jj68nmji3i89qs06c33rpi4w2";
+    sha256 = "1y96k82rav8if334jl500zc024d210c4pgprh94yqyz3rmanyaxj";
   };
 
   outputs = [ "out" "dev" ];
 
+  postPatch = ''
+    patchShebangs ./tools
+  '';
+
   preConfigure = ''
     substituteInPlace configure --replace /usr/bin/uname ${coreutils}/bin/uname
     substituteInPlace configure --replace /usr/bin/file ${file}/bin/file
-    substituteInPlace src/devices/nm-device.c --replace /usr/bin/ping ${inetutils}/bin/ping
+    substituteInPlace src/devices/nm-device.c \
+       --replace /usr/bin/ping ${inetutils}/bin/ping \
+       --replace /usr/bin/ping6 ${inetutils}/bin/ping
+    substituteInPlace src/devices/nm-arping-manager.c \
+       --replace '("arping", NULL, NULL);' '("arping", "${inetutils}/bin/arping", NULL);'
     substituteInPlace src/NetworkManagerUtils.c --replace /sbin/modprobe ${kmod}/bin/modprobe
     substituteInPlace data/84-nm-drivers.rules \
       --replace /bin/sh ${stdenv.shell}
@@ -58,14 +67,21 @@ stdenv.mkDerivation rec {
     "--with-libsoup=yes"
   ];
 
-  patches = [ ./PppdPath.patch ];
+  patches = [
+    ./PppdPath.patch
+    (fetchpatch {
+      sha256 = "1n90j5rwg97xkrhlldyr92filc2dmycl9pr0svky9hlcn9csk2z6";
+      name = "null-dereference.patch";
+      url = "https://github.com/NetworkManager/NetworkManager/commit/4e8eddd100bbc8429806a70620c90b72cfd29cb1.patch";
+    })
+  ];
 
   buildInputs = [ systemd libgudev libnl libuuid polkit ppp libndp
-                  bluez5 dnsmasq gobjectIntrospection modemmanager readline newt libsoup ];
+                  bluez5 dnsmasq gobjectIntrospection modemmanager readline newt libsoup jansson ];
 
-  propagatedBuildInputs = [ dbus_glib gnutls libgcrypt ];
+  propagatedBuildInputs = [ dbus_glib gnutls libgcrypt python3Packages.pygobject3 ];
 
-  nativeBuildInputs = [ intltool pkgconfig ];
+  nativeBuildInputs = [ intltool pkgconfig libxslt docbook_xsl ];
 
   preInstall = ''
     installFlagsArray=( "sysconfdir=$out/etc" "localstatedir=$out/var" "runstatedir=$out/var/run" )
@@ -78,7 +94,7 @@ stdenv.mkDerivation rec {
     substituteInPlace $out/etc/dbus-1/system.d/org.freedesktop.NetworkManager.conf --replace 'at_console="true"' 'group="networkmanager"'
 
     # rename to network-manager to be in style
-    mv $out/etc/systemd/system/NetworkManager.service $out/etc/systemd/system/network-manager.service 
+    mv $out/etc/systemd/system/NetworkManager.service $out/etc/systemd/system/network-manager.service
 
     # systemd in NixOS doesn't use `systemctl enable`, so we need to establish
     # aliases ourselves.
diff --git a/pkgs/tools/networking/network-manager/l2tp.nix b/pkgs/tools/networking/network-manager/l2tp.nix
index 591994ddccf..6a4f31e5e19 100644
--- a/pkgs/tools/networking/network-manager/l2tp.nix
+++ b/pkgs/tools/networking/network-manager/l2tp.nix
@@ -5,13 +5,13 @@
 stdenv.mkDerivation rec {
   name    = "${pname}${if withGnome then "-gnome" else ""}-${version}";
   pname   = "NetworkManager-l2tp";
-  version = networkmanager.version;
+  version = "1.2.4";
 
   src = fetchFromGitHub {
     owner  = "nm-l2tp";
     repo   = "network-manager-l2tp";
-    rev    = "c0cedda5e2a0ded695b497c361eaf577068520cb";
-    sha256 = "01f39ghc37vw4n4i7whyikgqz8vzxf41q9fsv2gfw1g501cny1j2";
+    rev    = "${version}";
+    sha256 = "1mvn0z1vl4j9drl3dsw2dv0pppqvj29d2m07487dzzi8cbxrqj36";
   };
 
   buildInputs = [ networkmanager ppp libsecret ]
diff --git a/pkgs/tools/networking/ntp/default.nix b/pkgs/tools/networking/ntp/default.nix
index b4053c7a956..29f8e1ae257 100644
--- a/pkgs/tools/networking/ntp/default.nix
+++ b/pkgs/tools/networking/ntp/default.nix
@@ -15,6 +15,10 @@ stdenv.mkDerivation rec {
     sha256 = "17xrk7gxrl3hgg0i73n8qm53knyh01lf0f3l1zx9x6r1cip3dlnx";
   };
 
+  # The hardcoded list of allowed system calls for seccomp is
+  # insufficient for NixOS, add more to make it work (issue #21136).
+  patches = [ ./seccomp.patch ];
+
   configureFlags = [
     "--sysconfdir=/etc"
     "--localstatedir=/var"
diff --git a/pkgs/tools/networking/ntp/seccomp.patch b/pkgs/tools/networking/ntp/seccomp.patch
new file mode 100644
index 00000000000..28de2f01d07
--- /dev/null
+++ b/pkgs/tools/networking/ntp/seccomp.patch
@@ -0,0 +1,44 @@
+diff -urN ntp-4.2.8p10.orig/ntpd/ntpd.c ntp-4.2.8p10/ntpd/ntpd.c
+--- ntp-4.2.8p10.orig/ntpd/ntpd.c	2017-04-02 20:21:17.371319663 +0200
++++ ntp-4.2.8p10/ntpd/ntpd.c	2017-04-02 21:26:02.766178723 +0200
+@@ -1157,10 +1157,12 @@
+ 	SCMP_SYS(close),
+ 	SCMP_SYS(connect),
+ 	SCMP_SYS(exit_group),
++	SCMP_SYS(fcntl),
+ 	SCMP_SYS(fstat),
+ 	SCMP_SYS(fsync),
+ 	SCMP_SYS(futex),
+ 	SCMP_SYS(getitimer),
++	SCMP_SYS(getpid),
+ 	SCMP_SYS(getsockname),
+ 	SCMP_SYS(ioctl),
+ 	SCMP_SYS(lseek),
+@@ -1179,6 +1181,7 @@
+ 	SCMP_SYS(sendto),
+ 	SCMP_SYS(setitimer),
+ 	SCMP_SYS(setsid),
++        SCMP_SYS(setsockopt),
+ 	SCMP_SYS(socket),
+ 	SCMP_SYS(stat),
+ 	SCMP_SYS(time),
+@@ -1195,9 +1198,11 @@
+ 	SCMP_SYS(clock_settime),
+ 	SCMP_SYS(close),
+ 	SCMP_SYS(exit_group),
++	SCMP_SYS(fcntl),
+ 	SCMP_SYS(fsync),
+ 	SCMP_SYS(futex),
+ 	SCMP_SYS(getitimer),
++	SCMP_SYS(getpid),
+ 	SCMP_SYS(madvise),
+ 	SCMP_SYS(mmap),
+ 	SCMP_SYS(mmap2),
+@@ -1211,6 +1216,7 @@
+ 	SCMP_SYS(select),
+ 	SCMP_SYS(setitimer),
+ 	SCMP_SYS(setsid),
++        SCMP_SYS(setsockopt),
+ 	SCMP_SYS(sigprocmask),
+ 	SCMP_SYS(sigreturn),
+ 	SCMP_SYS(socketcall),
diff --git a/pkgs/tools/networking/nuttcp/default.nix b/pkgs/tools/networking/nuttcp/default.nix
index 70f3d7e9c70..23cce602875 100644
--- a/pkgs/tools/networking/nuttcp/default.nix
+++ b/pkgs/tools/networking/nuttcp/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   unpackPhase = ":";
 
   buildPhase = ''
-    gcc -O2 -o nuttcp $src
+    cc -O2 -o nuttcp $src
   '';
 
   installPhase = ''
diff --git a/pkgs/tools/networking/openssh/default.nix b/pkgs/tools/networking/openssh/default.nix
index 1c66900c06b..0bcb0baaab8 100644
--- a/pkgs/tools/networking/openssh/default.nix
+++ b/pkgs/tools/networking/openssh/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch, zlib, openssl, perl, libedit, pkgconfig, pam
+{ stdenv, fetchurl, fetchpatch, zlib, openssl, perl, libedit, pkgconfig, pam, autoreconfHook
 , etcDir ? null
 , hpnSupport ? false
 , withKerberos ? false
@@ -12,17 +12,12 @@ assert withGssapiPatches -> withKerberos;
 
 let
 
-  hpnSrc = fetchurl {
-    url = mirror://sourceforge/hpnssh/openssh-6.6p1-hpnssh14v5.diff.gz;
-    sha256 = "682b4a6880d224ee0b7447241b684330b731018585f1ba519f46660c10d63950";
-  };
-
   # **please** update this patch when you update to a new openssh release.
   gssapiSrc = fetchpatch {
     name = "openssh-gssapi.patch";
     url = "https://anonscm.debian.org/cgit/pkg-ssh/openssh.git/plain/debian"
-        + "/patches/gssapi.patch?id=255b8554a50b5c75fca63f76b1ac837c0d4fb7aa";
-    sha256 = "0yg9iq7vb2fkvy36ar0jxk29pkw0h3dhv5vn8qncc3pgwx3617n2";
+        + "/patches/gssapi.patch?id=a18d56bd84f04292ec9178b4b17ef6d56a0c7aef";
+    sha256 = "1sb929lfc3s45km2vpylmlbb6mpqcbr74xl6gx2s4cgnsrfd9kp3";
   };
 
 in
@@ -31,18 +26,18 @@ stdenv.mkDerivation rec {
   # Please ensure that openssh_with_kerberos still builds when
   # bumping the version here!
   name = "openssh-${version}";
-  version = "7.4p1";
-
-  src = fetchurl {
-    url = "mirror://openbsd/OpenSSH/portable/${name}.tar.gz";
-    sha256 = "1l8r3x4fr2kb6xm95s7kjdif1wp6f94d4kljh4qjj9109shw87qv";
-  };
-
-  prePatch = optionalString hpnSupport
-    ''
-      gunzip -c ${hpnSrc} | patch -p1
-      export NIX_LDFLAGS="$NIX_LDFLAGS -lgcc_s"
-    '';
+  version = "7.5p1";
+
+  src = if hpnSupport then
+      fetchurl {
+        url = "https://github.com/rapier1/openssh-portable/archive/hpn-KitchenSink-7_5_P1.tar.gz";
+        sha256 = "1hasdcfjl6xf5nbbbvqyyq5v7ad10nywrq89j7naxz9wln58nhnn";
+      }
+    else
+      fetchurl {
+        url = "mirror://openbsd/OpenSSH/portable/${name}.tar.gz";
+        sha256 = "1w7rb5gbrikxdkp8w7zxnci4549gk4bw1lml01s59w5rzb2y6ilq";
+      };
 
   patches =
     [
@@ -55,7 +50,8 @@ stdenv.mkDerivation rec {
     ++ optional withGssapiPatches gssapiSrc;
 
   buildInputs = [ zlib openssl libedit pkgconfig pam ]
-    ++ optional withKerberos kerberos;
+    ++ optional withKerberos kerberos
+    ++ optional hpnSupport autoreconfHook;
 
   # I set --disable-strip because later we strip anyway. And it fails to strip
   # properly when cross building.
@@ -94,6 +90,5 @@ stdenv.mkDerivation rec {
     license = stdenv.lib.licenses.bsd2;
     platforms = platforms.unix;
     maintainers = with maintainers; [ eelco aneeshusa ];
-    broken = hpnSupport; # probably after 6.7 update
   };
 }
diff --git a/pkgs/tools/networking/openvpn/default.nix b/pkgs/tools/networking/openvpn/default.nix
index f609c90ad50..a8f3a5a19ae 100644
--- a/pkgs/tools/networking/openvpn/default.nix
+++ b/pkgs/tools/networking/openvpn/default.nix
@@ -15,8 +15,6 @@ stdenv.mkDerivation rec {
     sha256 = "0zpqnbhjaifdalyxwmvk5kcyd7cpxbcigbn7967nbsyvl54vl8vg";
   };
 
-  patches = optional stdenv.isLinux ./systemd-notify.patch;
-
   buildInputs = [ lzo openssl pkgconfig ]
                   ++ optionals stdenv.isLinux [ pam systemd iproute ]
                   ++ optional pkcs11Support pkcs11helper;
diff --git a/pkgs/tools/networking/openvpn/systemd-notify.patch b/pkgs/tools/networking/openvpn/systemd-notify.patch
deleted file mode 100644
index c0ac8ae89d3..00000000000
--- a/pkgs/tools/networking/openvpn/systemd-notify.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff -ru -x '*~' openvpn-2.3.1-orig/src/openvpn/init.c openvpn-2.3.1/src/openvpn/init.c
---- openvpn-2.3.1-orig/src/openvpn/init.c	2013-03-20 09:28:14.000000000 +0100
-+++ openvpn-2.3.1/src/openvpn/init.c	2014-04-22 13:02:21.351026640 +0200
-@@ -48,6 +48,8 @@
- 
- #include "occ-inline.h"
- 
-+#include <systemd/sd-daemon.h>
-+
- static struct context *static_context; /* GLOBAL */
- 
- /*
-@@ -1375,6 +1375,9 @@
-     /* Reset the unsuccessful connection counter on complete initialisation */
-     c->options.unsuccessful_attempts = 0;
- 
-+    /* Tell systemd we're ready. */
-+    sd_notify(0, "READY=1");
-+
-     /* If we delayed UID/GID downgrade or chroot, do it now */
-     do_uid_gid_chroot (c, true);
- 
diff --git a/pkgs/tools/networking/speedtest-cli/default.nix b/pkgs/tools/networking/speedtest-cli/default.nix
index 3be1d194d82..8ccc924d9f6 100644
--- a/pkgs/tools/networking/speedtest-cli/default.nix
+++ b/pkgs/tools/networking/speedtest-cli/default.nix
@@ -2,13 +2,13 @@
 
 pythonPackages.buildPythonApplication rec {
   name = "speedtest-cli-${version}";
-  version = "1.0.3";
+  version = "1.0.4";
   
   src = fetchFromGitHub {
     owner = "sivel";
     repo = "speedtest-cli";
     rev = "v${version}";
-    sha256 = "160m1liinbpbmjxi3cvdw5x3k9sb4j51ly92lynylpamcqcv8m83";
+    sha256 = "13i7bvhvwv8h2lxnz9pfxq6jv915lb948d6xjiy5p7rqbki40ng2";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/networking/ssmtp/default.nix b/pkgs/tools/networking/ssmtp/default.nix
index 7c47f2762dd..ceac5a58800 100644
--- a/pkgs/tools/networking/ssmtp/default.nix
+++ b/pkgs/tools/networking/ssmtp/default.nix
@@ -10,6 +10,10 @@ stdenv.mkDerivation {
     sha256 = "0dps8s87ag4g3jr6dk88hs9zl46h3790marc5c2qw7l71k4pvhr2";
   };
 
+  # A request has been made to merge this patch into ssmtp.
+  # See: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=858781
+  patches = [ ./ssmtp_support_AuthPassFile_parameter.patch ];
+
   configureFlags = "--sysconfdir=/etc ${if tlsSupport then "--enable-ssl" else ""}";
 
   postConfigure =
@@ -27,7 +31,8 @@ stdenv.mkDerivation {
   
   buildInputs = stdenv.lib.optional tlsSupport openssl;
 
-  meta = {
-    platforms = stdenv.lib.platforms.linux;
+  meta = with stdenv.lib; {
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ basvandijk ];
   };
 }
diff --git a/pkgs/tools/networking/ssmtp/ssmtp_support_AuthPassFile_parameter.patch b/pkgs/tools/networking/ssmtp/ssmtp_support_AuthPassFile_parameter.patch
new file mode 100644
index 00000000000..371c0f6de2b
--- /dev/null
+++ b/pkgs/tools/networking/ssmtp/ssmtp_support_AuthPassFile_parameter.patch
@@ -0,0 +1,69 @@
+diff -Naurb a/ssmtp.c b/ssmtp.c
+--- a/ssmtp.c	2009-11-23 10:55:11.000000000 +0100
++++ b/ssmtp.c	2017-03-25 03:00:26.508283016 +0100
+@@ -57,6 +57,7 @@
+ char arpadate[ARPADATE_LENGTH];
+ char *auth_user = (char)NULL;
+ char *auth_pass = (char)NULL;
++char *auth_passfile = (char)NULL;
+ char *auth_method = (char)NULL;		/* Mechanism for SMTP authentication */
+ char *mail_domain = (char)NULL;
+ char *from = (char)NULL;		/* Use this as the From: address */
+@@ -1053,6 +1054,15 @@
+ 					log_event(LOG_INFO, "Set AuthPass=\"%s\"\n", auth_pass);
+ 				}
+ 			}
++			else if(strcasecmp(p, "AuthPassFile") == 0 && !auth_passfile) {
++				if((auth_passfile = strdup(q)) == (char *)NULL) {
++					die("parse_config() -- strdup() failed");
++				}
++
++				if(log_level > 0) {
++					log_event(LOG_INFO, "Set AuthPassFile=\"%s\"\n", auth_passfile);
++				}
++			}
+ 			else if(strcasecmp(p, "AuthMethod") == 0 && !auth_method) {
+ 				if((auth_method = strdup(q)) == (char *)NULL) {
+ 					die("parse_config() -- strdup() failed");
+@@ -1415,6 +1425,8 @@
+ 	struct passwd *pw;
+ 	int i, sock;
+ 	uid_t uid;
++	FILE *fp;
++	char pass_buf[BUF_SZ+1];
+ 	bool_t minus_v_save, leadingdot, linestart = True;
+ 	int timeout = 0;
+ 	int bufsize = sizeof(b)-1;
+@@ -1433,6 +1445,17 @@
+ 		log_event(LOG_INFO, "%s not found", config_file);
+ 	}
+ 
++	if(auth_passfile != (char *)NULL) {
++		if((fp = fopen(auth_passfile, "r")) == (FILE *)NULL) {
++			  die("Could not open the AuthPassFile %s", auth_passfile);
++		}
++		if (fgets(pass_buf, BUF_SZ, fp) == NULL) {
++			die("Error while reading a line from the AuthPassFile %s, or it is empty", auth_passfile);
++		}
++		fclose(fp);
++		auth_pass = strdup(pass_buf);
++	}
++
+ 	if((p = strtok(pw->pw_gecos, ";,"))) {
+ 		if((gecos = strdup(p)) == (char *)NULL) {
+ 			die("ssmtp() -- strdup() failed");
+diff -Naurb a/ssmtp.conf.5 b/ssmtp.conf.5
+--- a/ssmtp.conf.5	2008-02-29 03:50:15.000000000 +0100
++++ b/ssmtp.conf.5	2017-03-25 01:45:52.890165426 +0100
+@@ -61,6 +61,11 @@
+ .Pp
+ .It Cm AuthPass
+ The password to use for SMTP AUTH.
++It is recommended to use AuthPassFile which also takes precedence over AuthPass.
++.Pp
++.It Cm AuthPassFile
++A file that should contain the password to use for SMTP AUTH.
++This takes precedence over AuthPass.
+ .Pp
+ .It Cm AuthMethod
+ The authorization method to use.
diff --git a/pkgs/tools/networking/strongswan/default.nix b/pkgs/tools/networking/strongswan/default.nix
index 7da47e339d0..5a9cf8f1f4b 100644
--- a/pkgs/tools/networking/strongswan/default.nix
+++ b/pkgs/tools/networking/strongswan/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "strongswan-${version}";
-  version = "5.5.1";
+  version = "5.5.2";
 
   src = fetchurl {
     url = "http://download.strongswan.org/${name}.tar.bz2";
-    sha256 = "1drahhmwz1jg14rfh67cl231dlg2a9pra6jmipfxwyzpj4ck02vj";
+    sha256 = "0slzrr5amn1rs9lrjca0fv5n1ya5jwlspfiqg9xzq1bghg56z5ys";
   };
 
   dontPatchELF = true;
diff --git a/pkgs/tools/networking/stunnel/default.nix b/pkgs/tools/networking/stunnel/default.nix
index cf930769b86..fbebba21dbd 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.39";
+  version = "5.41";
 
   src = fetchurl {
     url    = "http://www.stunnel.org/downloads/${name}.tar.gz";
-    sha256 = "1vjdn32iw11zqsygwxbjmqgs4644dk3ql1h8ap890ls6a1x0i318";
+    sha256 = "13qld0b8w2yfs2kfwnqvhcg98warh8hcyk13rjxdwv8zxqhn6p7h";
   };
 
   buildInputs = [ openssl ];
diff --git a/pkgs/tools/networking/zerotierone/default.nix b/pkgs/tools/networking/zerotierone/default.nix
index 76385312385..0202541da40 100644
--- a/pkgs/tools/networking/zerotierone/default.nix
+++ b/pkgs/tools/networking/zerotierone/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, openssl, lzo, zlib, iproute, which, ronn }:
 
 stdenv.mkDerivation rec {
-  version = "1.1.14";
+  version = "1.2.2";
   name = "zerotierone";
 
   src = fetchurl {
     url = "https://github.com/zerotier/ZeroTierOne/archive/${version}.tar.gz";
-    sha256 = "1brlyqk2p5h9sws15nbkmm4qhx911aib1v7crmcm2rhwsad0c1nj";
+    sha256 = "058sy6yrprd23iyx7fxnwyvnp1xxsd55yapjv5m2n7dcb7l4005h";
   };
 
   preConfigure = ''
diff --git a/pkgs/tools/package-management/cargo-edit/default.nix b/pkgs/tools/package-management/cargo-edit/default.nix
new file mode 100644
index 00000000000..4a34e62322d
--- /dev/null
+++ b/pkgs/tools/package-management/cargo-edit/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchFromGitHub, rustPlatform, makeWrapper, zlib, openssl }:
+
+with rustPlatform;
+
+buildRustPackage rec {
+  name = "cargo-edit-${version}";
+  version = "0.1.6";
+
+  src = fetchFromGitHub {
+    owner = "killercup";
+    repo = "cargo-edit";
+    rev = "v${version}";
+    sha256 = "16wvix2zkpzl1hhlsvd6mkps8fw5k4n2dvjk9m10gg27pixmiync";
+  };
+
+  buildInputs = [ zlib openssl ];
+
+  depsSha256 = "1v7ir56j6biximnnhyvadd98azcj3i5hc8aky0am2nf0swq0jimq";
+
+  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; [ jb55 ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index dbd6a352132..eaab261adef 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -7,8 +7,8 @@
 
 let
 
-  common = { name, suffix ? "", src, fromGit ? false }: stdenv.mkDerivation rec {
-    inherit name src;
+  common = { name, suffix ? "", src, patchPhase ? "", fromGit ? false }: stdenv.mkDerivation rec {
+    inherit name src patchPhase;
     version = lib.getVersion name;
 
     VERSION_SUFFIX = lib.optionalString fromGit suffix;
@@ -16,7 +16,8 @@ let
     outputs = [ "out" "dev" "man" "doc" ];
 
     nativeBuildInputs =
-      [ perl pkgconfig ]
+      [ pkgconfig ]
+      ++ lib.optionals (!lib.versionAtLeast version "1.12pre") [ perl ]
       ++ lib.optionals fromGit [ autoreconfHook autoconf-archive bison flex libxml2 libxslt docbook5 docbook5_xsl ];
 
     buildInputs = [ curl openssl sqlite xz ]
@@ -43,12 +44,12 @@ let
       [ "--with-store-dir=${storeDir}"
         "--localstatedir=${stateDir}"
         "--sysconfdir=/etc"
-        "--with-dbi=${perlPackages.DBI}/${perl.libPrefix}"
-        "--with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}"
         "--disable-init-state"
         "--enable-gc"
       ]
-      ++ lib.optional (!lib.versionAtLeast version "1.12pre") [
+      ++ lib.optionals (!lib.versionAtLeast version "1.12pre") [
+        "--with-dbi=${perlPackages.DBI}/${perl.libPrefix}"
+        "--with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}"
         "--with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}"
       ];
 
@@ -97,30 +98,59 @@ let
       maintainers = [ stdenv.lib.maintainers.eelco ];
       platforms = stdenv.lib.platforms.all;
     };
+
+    passthru = { inherit fromGit; };
+  };
+
+  perl-bindings = { nix }: stdenv.mkDerivation {
+    name = "nix-perl-" + nix.version;
+
+    inherit (nix) src;
+
+    postUnpack = "sourceRoot=$sourceRoot/perl";
+
+    nativeBuildInputs =
+      [ perl pkgconfig curl nix libsodium ]
+      ++ lib.optionals nix.fromGit [ autoreconfHook autoconf-archive ];
+
+    configureFlags =
+      [ "--with-dbi=${perlPackages.DBI}/${perl.libPrefix}"
+        "--with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}"
+        "--with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}"
+      ];
   };
 
 in rec {
 
   nix = nixStable;
 
-  nixStable = common rec {
+  nixStable = (common rec {
     name = "nix-1.11.8";
     src = fetchurl {
       url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
       sha256 = "69e0f398affec2a14c47b46fec712906429c85312d5483be43e4c34da4f63f67";
     };
-  };
 
-  nixUnstable = lib.lowPrio (common rec {
+    # Until 1.11.9 is released, we do this :)
+    patchPhase = ''
+      substituteInPlace src/libexpr/json-to-value.cc \
+        --replace 'std::less<Symbol>, gc_allocator<Value *>' \
+                  'std::less<Symbol>, gc_allocator<std::pair<const Symbol, Value *> >'
+
+      sed -i '/if (settings.readOnlyMode) {/a curSchema = getSchema();' src/libstore/local-store.cc
+    '';
+  }) // { perl-bindings = nixStable; };
+
+  nixUnstable = (lib.lowPrio (common rec {
     name = "nix-1.12${suffix}";
-    suffix = "pre5122_c60715e";
+    suffix = "pre5152_915f62fa";
     src = fetchFromGitHub {
       owner = "NixOS";
       repo = "nix";
-      rev = "c60715e937e3773bbb8a114fc9b9c6577f8c5cb5";
-      sha256 = "0hkc4g7i3z06y3rsdxqzdnx5rz77jb8ij1j13bdskbvpp7vfm60p";
+      rev = "915f62fa19790d8f826aeb4dd3d2bb5bde2f67e9";
+      sha256 = "0mf7y7hvzw2x5dp482qy8774djr3vzcjaqq58cp82zdil8l7kwjd";
     };
     fromGit = true;
-  });
+  })) // { perl-bindings = perl-bindings { nix = nixUnstable; }; };
 
 }
diff --git a/pkgs/tools/package-management/rpm/default.nix b/pkgs/tools/package-management/rpm/default.nix
index 6c3a63119b0..78d815eb7c1 100644
--- a/pkgs/tools/package-management/rpm/default.nix
+++ b/pkgs/tools/package-management/rpm/default.nix
@@ -1,11 +1,12 @@
-{ stdenv, fetchurl, cpio, zlib, bzip2, file, elfutils, libarchive, nspr, nss, popt, db, xz, python, lua, pkgconfig, autoreconfHook }:
+{ stdenv, fetchurl, cpio, zlib, bzip2, file, elfutils, libarchive, nspr, nss, popt, db, xz, python, lua, pkgconfig, binutils, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  name = "rpm-4.13.0-rc1";
+  name = "rpm-${version}";
+  version = "4.13.0.1";
 
   src = fetchurl {
-    url = "http://www.rpm.org/releases/testing/rpm-4.13.0-rc1.tar.bz2";
-    sha256 = "097mc0kkrf09c01hrgi71df7maahmvayfgsvspnxigvl3xysv8hp";
+    url = "http://ftp.rpm.org/releases/rpm-4.13.x/rpm-${version}.tar.bz2";
+    sha256 = "27fc7ba7d419622b1ce34d6507aa70b0808bc344021d298072a0c2ec165f9b0d";
   };
 
   outputs = [ "out" "dev" "man" ];
@@ -13,7 +14,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ cpio zlib bzip2 file libarchive nspr nss db xz python lua pkgconfig autoreconfHook ];
 
   # rpm/rpmlib.h includes popt.h, and then the pkg-config file mentions these as linkage requirements
-  propagatedBuildInputs = [ popt elfutils nss db bzip2 libarchive ];
+  propagatedBuildInputs = [ popt elfutils nss db bzip2 libarchive binutils ];
 
   NIX_CFLAGS_COMPILE = "-I${nspr.dev}/include/nspr -I${nss.dev}/include/nss";
 
@@ -25,6 +26,8 @@ stdenv.mkDerivation rec {
     "--sharedstatedir=/com"
   ];
 
+  patches = [ ./rpm-4.13.0.1-bfd-config.patch ];
+
   postPatch = ''
     # For Python3, the original expression evaluates as 'python3.4' but we want 'python3.4m' here
     substituteInPlace configure.ac --replace 'python''${PYTHON_VERSION}' ${python.executable}
@@ -43,6 +46,10 @@ stdenv.mkDerivation rec {
     for tool in ld nm objcopy objdump strip; do
       sed -i $out/lib/rpm/macros -e "s/^%__$tool.*/%__$tool $tool/"
     done
+
+    # symlinks produced by build are incorrect
+    ln -sf $out/bin/{rpm,rpmquery}
+    ln -sf $out/bin/{rpm,rpmverify}
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/package-management/rpm/rpm-4.13.0.1-bfd-config.patch b/pkgs/tools/package-management/rpm/rpm-4.13.0.1-bfd-config.patch
new file mode 100644
index 00000000000..b8192b24f13
--- /dev/null
+++ b/pkgs/tools/package-management/rpm/rpm-4.13.0.1-bfd-config.patch
@@ -0,0 +1,11 @@
+diff -ru rpm-4.13.0.1/tools/sepdebugcrcfix.c rpm-4.13.0.1.new/tools/sepdebugcrcfix.c
+--- rpm-4.13.0.1/tools/sepdebugcrcfix.c	2017-02-16 10:40:09.988649399 +0100
++++ rpm-4.13.0.1.new/tools/sepdebugcrcfix.c	2017-04-15 00:02:21.151359876 +0200
+@@ -28,6 +28,7 @@
+ #include <error.h>
+ #include <libelf.h>
+ #include <gelf.h>
++#include <config.h>
+ #include <bfd.h>
+ 
+ #define _(x) x
diff --git a/pkgs/tools/security/ecryptfs/helper.nix b/pkgs/tools/security/ecryptfs/helper.nix
index 05327ad3a09..40a728f6cb1 100644
--- a/pkgs/tools/security/ecryptfs/helper.nix
+++ b/pkgs/tools/security/ecryptfs/helper.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   installPhase = ''
     mkdir -p $out/bin $out/libexec
     cp $src $out/libexec/ecryptfs-helper.py
-    makeWrapper "${python2.interpreter} $out/libexec/ecryptfs-helper.py" $out/bin/ecryptfs-helper
+    makeWrapper "${python2.interpreter}" "$out/bin/ecryptfs-helper" --add-flags "$out/libexec/ecryptfs-helper.py"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/security/gnupg/1compat.nix b/pkgs/tools/security/gnupg/1compat.nix
index c4cc68dcca3..da700fe9f22 100644
--- a/pkgs/tools/security/gnupg/1compat.nix
+++ b/pkgs/tools/security/gnupg/1compat.nix
@@ -21,5 +21,6 @@ stdenv.mkDerivation {
   meta = gnupg.meta // {
     description = gnupg.meta.description +
       " with symbolic links for gpg and gpgv";
+    priority = -1;
   };
 }
diff --git a/pkgs/tools/security/gnupg/21.nix b/pkgs/tools/security/gnupg/21.nix
index 72786247af4..230ace07823 100644
--- a/pkgs/tools/security/gnupg/21.nix
+++ b/pkgs/tools/security/gnupg/21.nix
@@ -15,11 +15,11 @@ assert guiSupport -> pinentry != null;
 stdenv.mkDerivation rec {
   name = "gnupg-${version}";
 
-  version = "2.1.19";
+  version = "2.1.20";
 
   src = fetchurl {
     url = "mirror://gnupg/gnupg/${name}.tar.bz2";
-    sha256 = "1w4vccmb5l50lm4yrz9vkdj7whbfvzx543r55362kkj1aqgyvk26";
+    sha256 = "03cnd6gz8f4lf69inskssw57idrswcdimhccdyglmrlv6rlrmkr4";
   };
 
   buildInputs = [
diff --git a/pkgs/tools/security/nitrokey-app/FixInstallDestination.patch b/pkgs/tools/security/nitrokey-app/FixInstallDestination.patch
index 74e466069d9..7acd7239b39 100644
--- a/pkgs/tools/security/nitrokey-app/FixInstallDestination.patch
+++ b/pkgs/tools/security/nitrokey-app/FixInstallDestination.patch
@@ -1,57 +1,11 @@
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -251,23 +251,23 @@
-       #      ${CMAKE_SOURCE_DIR}/data/icons/48x48
-       #      ${CMAKE_SOURCE_DIR}/data/icons/128x128
-     ${CMAKE_SOURCE_DIR}/data/icons/
--    DESTINATION usr/share/icons/
-+    DESTINATION share/icons/
-   )
- 
-   install(FILES
-     ${CMAKE_SOURCE_DIR}/data/nitrokey-app.desktop
--    DESTINATION usr/share/applications
-+    DESTINATION share/applications
-   )
- 
-   install(FILES
-     ${CMAKE_SOURCE_DIR}/data/icons/hicolor/128x128/apps/nitrokey-app.png
--    DESTINATION usr/share/pixmaps
-+    DESTINATION share/pixmaps
-   )
- 
-   # Install Nitrokey udev rules
-   install(FILES
-    ${CMAKE_SOURCE_DIR}/data/40-nitrokey.rules
--   DESTINATION usr/lib/udev/rules.d
-+   DESTINATION lib/udev/rules.d
-   )
- 
+@@ -273,7 +273,7 @@
    # Install autocompletion scripts
-@@ -278,7 +278,7 @@
- 
    install(FILES
-    ${CMAKE_SOURCE_DIR}/po/de_DE/nitrokey-app.mo
--   DESTINATION usr/share/locale/de_DE/LC_MESSAGES
-+   DESTINATION share/locale/de_DE/LC_MESSAGES
+    ${CMAKE_SOURCE_DIR}/data/bash-autocomplete/nitrokey-app
+-    DESTINATION /etc/bash_completion.d
++    DESTINATION etc/bash_completion.d
    )
  
    install(FILES
-@@ -286,7 +286,7 @@
-     ${CMAKE_SOURCE_DIR}/images/quit.png
-     ${CMAKE_SOURCE_DIR}/images/safe_zahlenkreis.png
-     ${CMAKE_SOURCE_DIR}/images/settings.png
--    DESTINATION usr/share/nitrokey
-+    DESTINATION share/nitrokey
-   )
- 
- ENDIF () # NOT WIN32
-@@ -299,7 +299,7 @@
-   ${resources_ouput}
- )
- 
--INSTALL(TARGETS nitrokey-app DESTINATION usr/bin)
-+INSTALL(TARGETS nitrokey-app DESTINATION bin)
- 
- TARGET_LINK_LIBRARIES(nitrokey-app
-   ${QT_LIBRARIES}
diff --git a/pkgs/tools/security/nitrokey-app/default.nix b/pkgs/tools/security/nitrokey-app/default.nix
index 91d5e75272b..5e1baa4f57b 100644
--- a/pkgs/tools/security/nitrokey-app/default.nix
+++ b/pkgs/tools/security/nitrokey-app/default.nix
@@ -2,27 +2,29 @@
 
 stdenv.mkDerivation rec {
   name = "nitrokey-app";
-  version = "0.5.1";
+  version = "0.6.3";
 
   src = fetchFromGitHub {
     owner = "Nitrokey";
     repo = "nitrokey-app";
     rev = "v${version}";
-    sha256 = "0acb2502r3wa0mry6h8sz1k16zaa4bgnhxwxqd1vd1y42xc6g9bw";
+    sha256 = "1l5l4lwxmyd3jrafw19g12sfc42nd43sv7h7i4krqxnkk6gfx11q";
   };
 
   buildInputs = [
-    cmake
     libusb1
-    pkgconfig
     qt5.qtbase
   ];
+  nativeBuildInputs = [
+    cmake
+    pkgconfig
+  ];
   patches = [
      ./FixInstallDestination.patch
      ./HeaderPath.patch
   ];
   cmakeFlags = "-DHAVE_LIBAPPINDICATOR=NO";
-  meta = {
+  meta = with stdenv.lib; {
     description      = "Provides extra functionality for the Nitrokey Pro and Storage";
     longDescription  = ''
        The nitrokey-app provides a QT system tray widget with wich you can
@@ -31,7 +33,7 @@ stdenv.mkDerivation rec {
     '';
     homepage         = https://github.com/Nitrokey/nitrokey-app;
     repositories.git = https://github.com/Nitrokey/nitrokey-app.git;
-    license          = stdenv.lib.licenses.gpl3;
-    maintainer       = stdenv.lib.maintainers.kaiha;
+    license          = licenses.gpl3;
+    maintainer       = maintainers.kaiha;
   };
 }
diff --git a/pkgs/tools/security/pass/default.nix b/pkgs/tools/security/pass/default.nix
index 62f1a3a05dd..83394d984ad 100644
--- a/pkgs/tools/security/pass/default.nix
+++ b/pkgs/tools/security/pass/default.nix
@@ -21,7 +21,8 @@ stdenv.mkDerivation rec {
     sha256 = "002mw7j0m33bw483rllzhcf41wp3ixka8yma6kqrfaj57jyw66hn";
   };
 
-  patches = stdenv.lib.optional stdenv.isDarwin ./no-darwin-getopt.patch;
+  patches = [ ./set-correct-program-name-for-sleep.patch 
+            ] ++ stdenv.lib.optional stdenv.isDarwin ./no-darwin-getopt.patch;
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/pkgs/tools/security/pass/set-correct-program-name-for-sleep.patch b/pkgs/tools/security/pass/set-correct-program-name-for-sleep.patch
new file mode 100644
index 00000000000..782e06e20fd
--- /dev/null
+++ b/pkgs/tools/security/pass/set-correct-program-name-for-sleep.patch
@@ -0,0 +1,69 @@
+From 25b44e00ed5df8ffe2782d38ad5cd9f514379599 Mon Sep 17 00:00:00 2001
+From: "Andrew R. M" <andrewmiller237@gmail.com>
+Date: Sat, 8 Apr 2017 13:50:01 -0400
+Subject: [PATCH] Patch the clip() function to work even when using
+ single-binary coreutils
+
+---
+ src/password-store.sh  | 4 ++--
+ src/platform/cygwin.sh | 4 ++--
+ src/platform/darwin.sh | 4 ++--
+ 3 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/src/password-store.sh b/src/password-store.sh
+index 6a4172d..4dbd6b8 100755
+--- a/src/password-store.sh
++++ b/src/password-store.sh
+@@ -155,11 +155,11 @@ clip() {
+ 	# variable. Specifically, it cannot store nulls nor (non-trivally) store
+ 	# trailing new lines.
+ 	local sleep_argv0="password store sleep on display $DISPLAY"
+-	pkill -f "^$sleep_argv0" 2>/dev/null && sleep 0.5
++	pkill -P $(pgrep -f "^$sleep_argv0") 2>/dev/null && sleep 0.5
+ 	local before="$(xclip -o -selection "$X_SELECTION" 2>/dev/null | base64)"
+ 	echo -n "$1" | xclip -selection "$X_SELECTION" || die "Error: Could not copy data to the clipboard"
+ 	(
+-		( exec -a "$sleep_argv0" bash <<<"trap 'kill %1' TERM; sleep '$CLIP_TIME' & wait" )
++		( exec -a "$sleep_argv0" bash <(echo trap 'kill %1' TERM\; sleep "$CLIP_TIME & wait") )
+ 		local now="$(xclip -o -selection "$X_SELECTION" | base64)"
+ 		[[ $now != $(echo -n "$1" | base64) ]] && before="$now"
+ 
+diff --git a/src/platform/cygwin.sh b/src/platform/cygwin.sh
+index 6e5dd86..f3574c4 100644
+--- a/src/platform/cygwin.sh
++++ b/src/platform/cygwin.sh
+@@ -3,11 +3,11 @@
+ 
+ clip() {
+ 	local sleep_argv0="password store sleep on display $DISPLAY"
+-	pkill -f "^$sleep_argv0" 2>/dev/null && sleep 0.5
++	pkill -P $(pgrep -f "^$sleep_argv0") 2>/dev/null && sleep 0.5
+ 	local before="$(base64 < /dev/clipboard)"
+ 	echo -n "$1" > /dev/clipboard
+ 	(
+-		( exec -a "$sleep_argv0" sleep "$CLIP_TIME" )
++		( exec -a "$sleep_argv0" bash <(echo sleep "$CLIP_TIME") )
+ 		local now="$(base64 < /dev/clipboard)"
+ 		[[ $now != $(echo -n "$1" | base64) ]] && before="$now"
+ 		echo "$before" | base64 -d > /dev/clipboard
+diff --git a/src/platform/darwin.sh b/src/platform/darwin.sh
+index 86eb325..deb04c4 100644
+--- a/src/platform/darwin.sh
++++ b/src/platform/darwin.sh
+@@ -3,11 +3,11 @@
+ 
+ clip() {
+ 	local sleep_argv0="password store sleep for user $(id -u)"
+-	pkill -f "^$sleep_argv0" 2>/dev/null && sleep 0.5
++	pkill -P $(pgrep -f "^$sleep_argv0") 2>/dev/null && sleep 0.5
+ 	local before="$(pbpaste | openssl base64)"
+ 	echo -n "$1" | pbcopy
+ 	(
+-		( exec -a "$sleep_argv0" sleep "$CLIP_TIME" )
++		( exec -a "$sleep_argv0" bash <(echo sleep "$CLIP_TIME") )
+ 		local now="$(pbpaste | openssl base64)"
+ 		[[ $now != $(echo -n "$1" | openssl base64) ]] && before="$now"
+ 		echo "$before" | openssl base64 -d | pbcopy
+-- 
+2.12.2
+
diff --git a/pkgs/tools/security/pinentry-mac/default.nix b/pkgs/tools/security/pinentry-mac/default.nix
index 7116d1777d6..4cba1c7e617 100644
--- a/pkgs/tools/security/pinentry-mac/default.nix
+++ b/pkgs/tools/security/pinentry-mac/default.nix
@@ -1,20 +1,22 @@
-{ fetchurl, stdenv }:
+{ fetchurl, stdenv, fetchFromGitHub, xcbuild, libiconv, Cocoa, ncurses }:
 
 stdenv.mkDerivation rec {
   name = "pinentry-mac-0.9.4";
 
-  src = fetchurl {
-    url = "https://github.com/GPGTools/pinentry-mac/archive/v0.9.4.tar.gz";
-    sha256 = "037ebb010377d3a3879ae2a832cefc4513f5c397d7d887d7b86b4e5d9a628271";
+  src = fetchFromGitHub {
+    owner = "matthewbauer";
+    repo = "pinentry-mac";
+    rev = "d60aa902644a1f0126ec50e79937423a3a7c3bc4";
+    sha256 = "0xp4rdyj0mw6gg1z1wraggb1qlkjb5845mibrz3nj0l692da52nq";
   };
 
-  postPatch = ''
-    substituteInPlace ./Makefile --replace "xcodebuild" "/usr/bin/xcodebuild"
-  '';
+  buildInputs = [ xcbuild libiconv Cocoa ncurses ];
+
+  dontUseXcbuild = true;
 
   installPhase = ''
     mkdir -p $out/Applications
-    mv build/Release/pinentry-mac.app $out/Applications
+    mv pinentry-mac-*/Build/Products/Release/pinentry-mac.app $out/Applications
   '';
 
   passthru = {
diff --git a/pkgs/tools/system/fio/default.nix b/pkgs/tools/system/fio/default.nix
index 0398ffc180a..50c8862bc34 100644
--- a/pkgs/tools/system/fio/default.nix
+++ b/pkgs/tools/system/fio/default.nix
@@ -1,8 +1,8 @@
 { stdenv, fetchFromGitHub, libaio, python, zlib }:
 
 let
-  version = "2.17";
-  sha256 = "17fygcy3flsp64mfmwpc66byy95cidby34s6grm3zgsjb7mcypr0";
+  version = "2.19";
+  sha256 = "1rfnisb8hqwx76rjmgaagvs3k0808z27ll9i3w5ifzysi1c1l6r9";
 in
 
 stdenv.mkDerivation rec {
diff --git a/pkgs/tools/system/hwinfo/default.nix b/pkgs/tools/system/hwinfo/default.nix
index 8dd95a8b4de..09dfb6e47a5 100644
--- a/pkgs/tools/system/hwinfo/default.nix
+++ b/pkgs/tools/system/hwinfo/default.nix
@@ -32,6 +32,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     homepage = https://github.com/openSUSE/hwinfo;
     maintainers = with maintainers; [ bobvanderlinden ndowens ];
-    platforms = platforms.unix;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/system/logcheck/default.nix b/pkgs/tools/system/logcheck/default.nix
index 9c2a42eeb5a..40cee73dcd2 100644
--- a/pkgs/tools/system/logcheck/default.nix
+++ b/pkgs/tools/system/logcheck/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
       Logcheck helps spot problems and security violations in your logfiles automatically and will send the results to you by e-mail.
       Logcheck was part of the Abacus Project of security tools, but this version has been rewritten.
     '';
-    homepage = http://logcheck.org;
+    homepage = http://logcheck.alioth.debian.org/;
     license = licenses.gpl2;
     maintainers = [ maintainers.bluescreen303 ];
     
diff --git a/pkgs/tools/system/pciutils/default.nix b/pkgs/tools/system/pciutils/default.nix
index dd107049578..998a3bdf6d1 100644
--- a/pkgs/tools/system/pciutils/default.nix
+++ b/pkgs/tools/system/pciutils/default.nix
@@ -1,15 +1,13 @@
 { stdenv, fetchurl, pkgconfig, zlib, kmod, which }:
 
 stdenv.mkDerivation rec {
-  name = "pciutils-3.5.2"; # with database from 2016-10
+  name = "pciutils-3.5.4"; # with database from 2017-02
 
   src = fetchurl {
     url = "mirror://kernel/software/utils/pciutils/${name}.tar.xz";
-    sha256 = "1z2y4f3cyvm7a0dyan0n6jpb3p9pvh35lrim0058slj0kwd1969s";
+    sha256 = "0rpy7kkb2y89wmbcbfjjjxsk2x89v5xxhxib4vpl131ip5m3qab4";
   };
 
-  patches = [ ./module-dir.diff ];
-
   buildInputs = [ pkgconfig zlib kmod which ];
 
   makeFlags = "SHARED=yes PREFIX=\${out}";
diff --git a/pkgs/tools/system/pciutils/module-dir.diff b/pkgs/tools/system/pciutils/module-dir.diff
deleted file mode 100644
index ea38b115b24..00000000000
--- a/pkgs/tools/system/pciutils/module-dir.diff
+++ /dev/null
@@ -1,23 +0,0 @@
-Don't override libkmod's way of finding modules.
-
-(We override that behavior in nixpkgs to fit nixos.)
-
-diff --git a/ls-kernel.c b/ls-kernel.c
-index 78b70f1..ecacd0e 100644
---- a/ls-kernel.c
-+++ b/ls-kernel.c
-@@ -29,13 +29,7 @@ show_kernel_init(void)
-   if (show_kernel_inited >= 0)
-     return show_kernel_inited;
- 
--  struct utsname uts;
--  if (uname(&uts) < 0)
--    die("uname() failed: %m");
--  char *name = alloca(64 + strlen(uts.release));
--  sprintf(name, "/lib/modules/%s", uts.release);
--
--  kmod_ctx = kmod_new(name, NULL);
-+  kmod_ctx = kmod_new(NULL, NULL);
-   if (!kmod_ctx)
-     {
-       fprintf(stderr, "lspci: Unable to initialize libkmod context\n");
diff --git a/pkgs/tools/system/safecopy/default.nix b/pkgs/tools/system/safecopy/default.nix
index 5e7ec51bf10..ce0779c0999 100644
--- a/pkgs/tools/system/safecopy/default.nix
+++ b/pkgs/tools/system/safecopy/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
     license = stdenv.lib.licenses.gpl2Plus;
 
-    platforms = stdenv.lib.platforms.all;
+    platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.bluescreen303 ];
   };
 }
diff --git a/pkgs/tools/text/fanficfare/default.nix b/pkgs/tools/text/fanficfare/default.nix
new file mode 100644
index 00000000000..38eadf40ae3
--- /dev/null
+++ b/pkgs/tools/text/fanficfare/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl, python27Packages }:
+
+python27Packages.buildPythonApplication rec {
+  version = "2.9.0";
+  name = "fanficfare-${version}";
+  nameprefix = "";
+
+  src = fetchurl {
+    url = "https://github.com/JimmXinu/FanFicFare/archive/v${version}.tar.gz";
+    sha256 = "781e9095d8152345a6106135e87c46eb306ff234b847de5073faca2f78544398";
+  };
+
+  propagatedBuildInputs = with python27Packages; [ beautifulsoup4 chardet html5lib html2text ];
+
+  meta = with stdenv.lib; {
+    description = "FanFicFare is a tool for making eBooks from fanfiction web sites";
+    homepage = "https://github.com/JimmXinu/FanFicFare";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ lucas8 ];
+    inherit version;
+  };
+}
diff --git a/pkgs/tools/text/gawk/default.nix b/pkgs/tools/text/gawk/default.nix
index 271a89b784d..3a504e9478c 100644
--- a/pkgs/tools/text/gawk/default.nix
+++ b/pkgs/tools/text/gawk/default.nix
@@ -5,22 +5,23 @@ let
   inherit (stdenv.lib) optional;
 in
 stdenv.mkDerivation rec {
-  name = "gawk-4.1.3";
+  name = "gawk-4.1.4";
 
   src = fetchurl {
     url = "mirror://gnu/gawk/${name}.tar.xz";
-    sha256 = "09d6pmx6h3i2glafm0jd1v1iyrs03vcyv2rkz12jisii3vlmbkz3";
+    sha256 = "0rn2mmjxm767zliqzd67j7h2ncjn4j0321c60y9fy3grs3i89qak";
   };
 
   # When we do build separate interactive version, it makes sense to always include man.
   outputs = [ "out" "info" ] ++ stdenv.lib.optional (!interactive) "man";
 
-  doCheck = !(
+  # FIXME: 4.1.4 testsuite breaks when only C locales are available
+  doCheck = false /*!(
        stdenv.isCygwin # XXX: `test-dup2' segfaults on Cygwin 6.1
     || stdenv.isDarwin # XXX: `locale' segfaults
     || stdenv.isSunOS  # XXX: `_backsmalls1' fails, locale stuff?
     || stdenv.isFreeBSD
-  );
+  )*/;
 
   nativeBuildInputs = [ xz.bin ];
   buildInputs =
diff --git a/pkgs/tools/text/kdiff3/default.nix b/pkgs/tools/text/kdiff3/default.nix
index 4303fe82a45..bd76b89ccf7 100644
--- a/pkgs/tools/text/kdiff3/default.nix
+++ b/pkgs/tools/text/kdiff3/default.nix
@@ -1,5 +1,5 @@
 {
-  kdeDerivation, kdeWrapper, lib, fetchgit,
+  kdeDerivation, kdeWrapper, lib, fetchgit, fetchpatch,
   extra-cmake-modules, kdoctools, kconfig, kinit, kparts
 }:
 
@@ -18,6 +18,15 @@ let
 
     setSourceRoot = ''sourceRoot="$(echo */kdiff3/)"'';
 
+    patches = [
+      (fetchpatch {
+        name = "git-mergetool.diff"; # see https://gitlab.com/tfischer/kdiff3/merge_requests/2
+        url = "https://gitlab.com/vcunat/kdiff3/commit/6106126216.patch";
+        sha256 = "16xqc24y8bg8gzkdbwapiwi68rzqnkpz4hgn586mi01ngig2fd7y";
+      })
+    ];
+    patchFlags = "-p 2";
+
     postPatch = ''
       sed -re "s/(p\\[[^]]+] *== *)('([^']|\\\\')+')/\\1QChar(\\2)/g" -i src/diff.cpp
     '';
@@ -26,6 +35,8 @@ let
 
     propagatedBuildInputs = [ kconfig kinit kparts ];
 
+    enableParallelBuilding = true;
+
     meta = with lib; {
       homepage = http://kdiff3.sourceforge.net/;
       license = licenses.gpl2Plus;
diff --git a/pkgs/tools/text/patchutils/default.nix b/pkgs/tools/text/patchutils/default.nix
index 75922a6c830..8a066864d22 100644
--- a/pkgs/tools/text/patchutils/default.nix
+++ b/pkgs/tools/text/patchutils/default.nix
@@ -1,15 +1,13 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "patchutils-0.3.3";
+  name = "patchutils-0.3.4";
 
   src = fetchurl {
     url = "http://cyberelk.net/tim/data/patchutils/stable/${name}.tar.xz";
-    sha256 = "0g5df00cj4nczrmr4k791l7la0sq2wnf8rn981fsrz1f3d2yix4i";
+    sha256 = "0xp8mcfyi5nmb5a2zi5ibmyshxkb1zv1dgmnyn413m7ahgdx8mfg";
   };
 
-  patches = [ ./drop-comments.patch ]; # we would get into a cycle when using fetchpatch on this one
-
   hardeningDisable = [ "format" ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/text/patchutils/drop-comments.patch b/pkgs/tools/text/patchutils/drop-comments.patch
deleted file mode 100644
index e02693a5683..00000000000
--- a/pkgs/tools/text/patchutils/drop-comments.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From 58987954647f51dc42fb13b7759923c6170dd905 Mon Sep 17 00:00:00 2001
-From: Tim Waugh <twaugh@redhat.com>
-Date: Fri, 9 May 2014 16:23:27 +0100
-Subject: Make --clean drop comments after '@@' lines as well (trac #29).
-
-
-diff --git a/Makefile.am b/Makefile.am
-index 99ad2a3..f3c6dbc 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -198,6 +198,7 @@ TESTS = tests/newline1/run-test \
- 	tests/convert1/run-test \
- 	tests/convert2/run-test \
- 	tests/clean1/run-test \
-+	tests/clean2/run-test \
- 	tests/stdin/run-test
- 
- # These ones don't work yet.
-diff --git a/src/filterdiff.c b/src/filterdiff.c
-index 383e72b..6ca2316 100644
---- a/src/filterdiff.c
-+++ b/src/filterdiff.c
-@@ -2,7 +2,7 @@
-  * filterdiff - extract (or exclude) a diff from a diff file
-  * lsdiff - show which files are modified by a patch
-  * grepdiff - show files modified by a patch containing a regexp
-- * Copyright (C) 2001, 2002, 2003, 2004, 2008, 2009, 2011 Tim Waugh <twaugh@redhat.com>
-+ * Copyright (C) 2001, 2002, 2003, 2004, 2008, 2009, 2011, 2013, 2014 Tim Waugh <twaugh@redhat.com>
-  *
-  * This program is free software; you can redistribute it and/or modify
-  * it under the terms of the GNU General Public License as published by
-@@ -408,7 +408,8 @@ do_unified (FILE *f, char *header[2], int match, char **line,
- 							 " Hunk #%lu, %s",
- 							 hunknum, bestname);
- 
--					fputs (trailing, output_to);
-+					fputs (clean_comments ? "\n" : trailing,
-+					       output_to);
- 					break;
- 				case Before:
- 					// Note the initial line number
-diff --git a/tests/clean2/run-test b/tests/clean2/run-test
-new file mode 100755
-index 0000000..42320df
---- /dev/null
-+++ b/tests/clean2/run-test
-@@ -0,0 +1,34 @@
-+#!/bin/sh
-+
-+# This is a filterdiff(1) testcase.
-+# Test: Make sure --clean removes hunk-level comments.
-+
-+
-+. ${top_srcdir-.}/tests/common.sh
-+
-+cat << EOF > diff
-+non-diff line
-+--- a/file1
-++++ b/file1
-+@@ -0,0 +1 @@ this is a hunk-level comment
-++a
-+EOF
-+
-+${FILTERDIFF} --clean diff 2>errors >filtered || exit 1
-+[ -s errors ] && exit 1
-+
-+cat << EOF | cmp - filtered || exit 1
-+--- a/file1
-++++ b/file1
-+@@ -0,0 +1 @@
-++a
-+EOF
-+
-+${FILTERDIFF} --clean -x file1 diff 2>errors >filtered || exit 1
-+[ -s errors ] && exit 1
-+cat << EOF | cmp - filtered || exit 1
-+--- a/file1
-++++ b/file1
-+@@ -0,0 +1 @@
-++a
-+EOF
--- 
-cgit v0.10.1
-
diff --git a/pkgs/tools/typesetting/lout/builder.sh b/pkgs/tools/typesetting/lout/builder.sh
index ec52adc225b..cd3b9c67e3c 100755
--- a/pkgs/tools/typesetting/lout/builder.sh
+++ b/pkgs/tools/typesetting/lout/builder.sh
@@ -39,6 +39,6 @@ cat makefile |									\
   > "$nixMakefile" &&								\
 mkdir -p "$out/bin" && mkdir -p "$out/lib"					\
 mkdir -p "$out/man" && mkdir -p "$out/doc/lout" &&				\
-make -f "$nixMakefile" install installman &&					\
+make -f "$nixMakefile" CC=cc install installman &&					\
 installDoc &&									\
 fixupPhase
diff --git a/pkgs/tools/video/atomicparsley/casts.patch b/pkgs/tools/video/atomicparsley/casts.patch
deleted file mode 100644
index b70a3cbcf85..00000000000
--- a/pkgs/tools/video/atomicparsley/casts.patch
+++ /dev/null
@@ -1,38 +0,0 @@
---- AtomicParsley-source-0.9.0/AtomicParsley.cpp.orig	2015-03-13 15:38:16.817904490 -0600
-+++ AtomicParsley-source-0.9.0/AtomicParsley.cpp	2015-03-13 15:48:07.595273416 -0600
-@@ -1447,7 +1447,7 @@
- 	uint32_t atom_offsets = 0;
- 	char* uuid_outfile = (char*)calloc(1, sizeof(char)*MAXPATHLEN+1); //malloc a new string because it may be a cli arg for a specific output path
- 	if (output_path == NULL) {
--		char* orig_suffix = strrchr(originating_file, '.');
-+		char* orig_suffix = strrchr((char*)originating_file, (int)'.');
- 		if (orig_suffix == NULL) {
- 			fprintf(stdout, "AP warning: a file extension for the input file was not found.\n\tGlobbing onto original filename...\n");
- 			path_len = strlen(originating_file);
-@@ -4464,7 +4464,7 @@
- void APar_DeriveNewPath(const char *filePath, char* temp_path, int output_type, const char* file_kind, char* forced_suffix, bool random_filename = true) {
- 	char* suffix = NULL;
- 	if (forced_suffix == NULL) {
--		suffix = strrchr(filePath, '.');
-+		suffix = strrchr((char*)filePath, (int)'.');
- 	} else {
- 		suffix = forced_suffix;
- 	}
-@@ -4480,7 +4480,7 @@
- 		memcpy(temp_path, filePath, base_len);
- 		memcpy(temp_path + base_len, file_kind, strlen(file_kind));
- #else
--		char* file_name = strrchr(filePath, '/');
-+		char* file_name = strrchr((char*)filePath, (int)'/');
- 		size_t file_name_len = strlen(file_name);
- 		memcpy(temp_path, filePath, filepath_len-file_name_len+1);
- 		memcpy(temp_path + strlen(temp_path), ".", 1);
-@@ -5006,7 +5006,7 @@
- 			free_modified_name = true;
- 			if (forced_suffix_type == FORCE_M4B_TYPE) { //using --stik Audiobook with --overWrite will change the original file's extension
- 				uint16_t filename_len = strlen(m4aFile);
--				char* suffix = strrchr(m4aFile, '.');
-+				char* suffix = strrchr((char*)m4aFile, (int)'.');
- 				memcpy(originating_file, m4aFile, filename_len+1 );
- 				memcpy(originating_file + (filename_len - strlen(suffix) ), ".m4b", 5 );
- 			}
diff --git a/pkgs/tools/video/atomicparsley/default.nix b/pkgs/tools/video/atomicparsley/default.nix
index b2eb5366618..701850758bc 100644
--- a/pkgs/tools/video/atomicparsley/default.nix
+++ b/pkgs/tools/video/atomicparsley/default.nix
@@ -1,39 +1,32 @@
-{ stdenv, fetchurl, unzip, darwin }:
+{ stdenv, fetchhg, autoreconfHook, zlib, darwin }:
 
 stdenv.mkDerivation rec {
   name = "atomicparsley-${version}";
-  product = "AtomicParsley";
-  version = "0.9.0";
+  version = "0.9.6";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/atomicparsley/${product}-source-${version}.zip";
-    sha256 = "de83f219f95e6fe59099b277e3ced86f0430ad9468e845783092821dff15a72e";
+  src = fetchhg {
+    url = "https://bitbucket.org/wez/atomicparsley";
+    sha256 = "05n4kbn91ps52h3wi1qb2jwygjsc01qzx4lgkv5mvwl5i49rj8fm";
   };
 
-  patches = stdenv.lib.optional (!stdenv.cc.isClang) ./casts.patch;
+  buildInputs =
+    [ autoreconfHook
+      zlib
+    ] ++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Cocoa;
 
-  buildInputs = [ unzip ]
-    ++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Cocoa;
-
-  setSourceRoot = "sourceRoot=${product}-source-${version}";
-
-  buildPhase = "bash build";
   installPhase = "install -D AtomicParsley $out/bin/AtomicParsley";
 
-  postPatch = ''
-    substituteInPlace build \
-      --replace 'g++' 'c++'
-    substituteInPlace AP_NSImage.mm \
-      --replace '_NSBitmapImageFileType' 'NSBitmapImageFileType'
-  '';
-
   meta = with stdenv.lib; {
     description = ''
       A lightweight command line program for reading, parsing and
       setting metadata into MPEG-4 files
     '';
 
-    homepage = http://atomicparsley.sourceforge.net/;
+    longDescription = ''
+      This is a maintained fork of the original AtomicParsley.
+    '';
+
+    homepage = https://bitbucket.org/wez/atomicparsley;
     license = licenses.gpl2;
     platforms = platforms.unix;
     maintainers = with maintainers; [ pjones ];
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 9dca8e7e26c..1046b86dbb4 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -62,6 +62,7 @@ doNotDisplayTwice rec {
   gnustep-make = gnustep.make; # added 2016-7-6
   htmlTidy = html-tidy;  # added 2014-12-06
   iana_etc = iana-etc;  # added 2017-03-08
+  idea = jetbrains; # added 2017-04-03
   inherit (haskell.compiler) jhc uhc;   # 2015-05-15
   inotifyTools = inotify-tools;
   joseki = apache-jena-fuseki; # added 2016-02-28
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index f297937455b..836eb3695c7 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -303,7 +303,7 @@ with pkgs;
 
   composableDerivation = callPackage ../../lib/composable-derivation.nix { };
 
-  platforms = import ./platforms.nix;
+  inherit (lib.systems) platforms;
 
   setJavaClassPath = makeSetupHook { } ../build-support/setup-hooks/set-java-classpath.sh;
 
@@ -325,7 +325,7 @@ with pkgs;
   findXMLCatalogs = makeSetupHook { } ../build-support/setup-hooks/find-xml-catalogs.sh;
 
   wrapGAppsHook = makeSetupHook {
-    deps = [ gnome3.dconf.lib gnome3.gtk makeWrapper ];
+    deps = [ gnome3.dconf.lib gnome3.gtk librsvg makeWrapper ];
   } ../build-support/setup-hooks/wrap-gapps-hook.sh;
 
   separateDebugInfo = makeSetupHook { } ../build-support/setup-hooks/separate-debug-info.sh;
@@ -444,6 +444,14 @@ with pkgs;
 
   argyllcms = callPackage ../tools/graphics/argyllcms {};
 
+  arm-frc-linux-gnueabi-eglibc = callPackage ../development/libraries/arm-frc-linux-gnueabi-eglibc {};
+
+  arm-frc-linux-gnueabi-linux-api-headers = callPackage ../development/libraries/arm-frc-linux-gnueabi-linux-api-headers {};
+
+  arm-frc-linux-gnueabi-binutils = callPackage ../development/tools/misc/arm-frc-linux-gnueabi-binutils {};
+
+  arm-frc-linux-gnueabi-gcc = callPackage ../development/compilers/arm-frc-linux-gnueabi-gcc {};
+
   arp-scan = callPackage ../tools/misc/arp-scan { };
 
   artyFX = callPackage ../applications/audio/artyFX {};
@@ -531,6 +539,8 @@ with pkgs;
 
   gcsfuse = callPackage ../tools/filesystems/gcsfuse { };
 
+  glyr = callPackage ../tools/audio/glyr { };
+
   lastpass-cli = callPackage ../tools/security/lastpass-cli { };
 
   pass = callPackage ../tools/security/pass { };
@@ -547,8 +557,6 @@ with pkgs;
 
   reattach-to-user-namespace = callPackage ../os-specific/darwin/reattach-to-user-namespace {};
 
-  install_name_tool = callPackage ../os-specific/darwin/install_name_tool { };
-
   xcodeenv = callPackage ../development/mobile/xcodeenv { };
 
   titaniumenv = callPackage ../development/mobile/titaniumenv {
@@ -646,6 +654,10 @@ with pkgs;
 
   blink = callPackage ../applications/networking/instant-messengers/blink { };
 
+  quaternion = libsForQt5.callPackage ../applications/networking/instant-messengers/quaternion { };
+
+  tensor = libsForQt5.callPackage ../applications/networking/instant-messengers/tensor { };
+
   blink1-tool = callPackage ../tools/misc/blink1-tool { };
 
   blitz = callPackage ../development/libraries/blitz {
@@ -695,6 +707,8 @@ with pkgs;
 
   btrbk = callPackage ../tools/backup/btrbk { };
 
+  buildtorrent = callPackage ../tools/misc/buildtorrent { };
+
   bwm_ng = callPackage ../tools/networking/bwm-ng { };
 
   byobu = callPackage ../tools/misc/byobu {
@@ -741,7 +755,7 @@ with pkgs;
   catclock = callPackage ../applications/misc/catclock { };
 
   cde = callPackage ../tools/package-management/cde { };
-  
+
   cdemu-daemon = callPackage ../misc/emulators/cdemu/daemon.nix { };
 
   cdemu-client = callPackage ../misc/emulators/cdemu/client.nix { };
@@ -760,6 +774,8 @@ with pkgs;
 
   ckbcomp = callPackage ../tools/X11/ckbcomp { };
 
+  clac = callPackage ../tools/misc/clac {};
+
   clasp = callPackage ../tools/misc/clasp { };
 
   cli53 = callPackage ../tools/admin/cli53 { };
@@ -818,6 +834,8 @@ with pkgs;
 
   daemontools = callPackage ../tools/admin/daemontools { };
 
+  dale = callPackage ../development/compilers/dale { };
+
   dante = callPackage ../servers/dante { };
 
   datamash = callPackage ../tools/misc/datamash { };
@@ -865,6 +883,8 @@ with pkgs;
 
   ditaa = callPackage ../tools/graphics/ditaa { };
 
+  dino = callPackage ../applications/networking/instant-messengers/dino { };
+
   dlx = callPackage ../misc/emulators/dlx { };
 
   dosage = pythonPackages.dosage;
@@ -932,6 +952,8 @@ with pkgs;
 
   gdrivefs = python27Packages.gdrivefs;
 
+  gdrive = callPackage ../applications/networking/gdrive { };
+
   go-dependency-manager = callPackage ../development/tools/gdm { };
 
   gencfsm = callPackage ../tools/security/gencfsm { };
@@ -966,9 +988,7 @@ with pkgs;
 
   interlock = callPackage ../servers/interlock {};
 
-  jbuilder = callPackage ../development/tools/ocaml/jbuilder {
-    inherit (ocaml-ng.ocamlPackages_4_03) ocaml;
-  };
+  jbuilder = callPackage ../development/tools/ocaml/jbuilder { };
 
   kapacitor = callPackage ../servers/monitoring/kapacitor { };
 
@@ -1118,9 +1138,7 @@ with pkgs;
     inherit (pythonPackages) gyp;
   };
 
-  bup = callPackage ../tools/backup/bup {
-    par2Support = config.bup.par2Support or false;
-  };
+  bup = callPackage ../tools/backup/bup { };
 
   burp_1_3 = callPackage ../tools/backup/burp/1.3.48.nix { };
 
@@ -1668,6 +1686,8 @@ with pkgs;
 
   eplot = callPackage ../tools/graphics/eplot { };
 
+  epstool = callPackage ../tools/graphics/epstool { };
+
   ethtool = callPackage ../tools/misc/ethtool { };
 
   ettercap = callPackage ../applications/networking/sniffers/ettercap { };
@@ -1709,6 +1729,8 @@ with pkgs;
       pillow;
   };
 
+  fanficfare = callPackage ../tools/text/fanficfare { };
+
   fastd = callPackage ../tools/networking/fastd { };
 
   fatsort = callPackage ../tools/filesystems/fatsort { };
@@ -2473,6 +2495,8 @@ with pkgs;
 
   jsduck = callPackage ../development/tools/jsduck { };
 
+  jucipp = callPackage ../applications/editors/jucipp { };
+
   jwhois = callPackage ../tools/networking/jwhois { };
 
   k2pdfopt = callPackage ../applications/misc/k2pdfopt { };
@@ -3484,7 +3508,9 @@ with pkgs;
     libcap = if stdenv.isDarwin then null else libcap;
   };
 
-  pinentry_mac = callPackage ../tools/security/pinentry-mac { };
+  pinentry_mac = callPackage ../tools/security/pinentry-mac {
+    inherit (darwin.apple_sdk.frameworks) Cocoa;
+  };
 
   pingtcp = callPackage ../tools/networking/pingtcp { };
 
@@ -3797,6 +3823,10 @@ with pkgs;
 
   rrdtool = callPackage ../tools/misc/rrdtool { };
 
+  rss2email = callPackage ../applications/networking/feedreaders/rss2email {
+    pythonPackages = python3Packages;
+  };
+
   rsstail = callPackage ../applications/networking/feedreaders/rsstail { };
 
   rtorrent = callPackage ../tools/networking/p2p/rtorrent { };
@@ -4424,6 +4454,8 @@ with pkgs;
 
   time = callPackage ../tools/misc/time { };
 
+  tweet-hs = haskell.lib.justStaticExecutables haskellPackages.tweet-hs;
+
   qfsm = callPackage ../applications/science/electronics/qfsm { };
 
   tkgate = callPackage ../applications/science/electronics/tkgate/1.x.nix { };
@@ -5073,7 +5105,7 @@ with pkgs;
     cross = null;
     libcCross = if targetPlatform != buildPlatform then libcCross else null;
 
-    isl = if !stdenv.isDarwin then isl_0_14 else null;
+    isl = isl_0_17;
   }));
 
   gfortran = gfortran5;
@@ -5216,6 +5248,8 @@ with pkgs;
   all-cabal-hashes = callPackage ../data/misc/hackage/default.nix { };
 
   purescript = haskell.lib.justStaticExecutables haskellPackages.purescript;
+  psc-package = haskell.lib.justStaticExecutables
+    (haskellPackages.callPackage ../development/compilers/purescript/psc-package { });
 
   inherit (ocamlPackages) haxe;
 
@@ -5231,6 +5265,10 @@ with pkgs;
 
   fsharp = callPackage ../development/compilers/fsharp { };
 
+  fsharp41 = callPackage ../development/compilers/fsharp41 {
+    mono = mono46;
+  };
+
   fstar = callPackage ../development/compilers/fstar {
     ocamlPackages = ocaml-ng.ocamlPackages_4_02;
   };
@@ -5334,7 +5372,7 @@ with pkgs;
   jdk = jdk8;
   jre = jre8;
   jre_headless = jre8_headless;
-  
+
   openshot-qt = libsForQt56.callPackage ../applications/video/openshot-qt { };
 
   oraclejdk = pkgs.jdkdistro true false;
@@ -5419,7 +5457,7 @@ with pkgs;
   llvm_34 = llvmPackages_34.llvm;
 
   llvmPackages = recurseIntoAttrs
-    (if stdenv.isDarwin then llvmPackages_37 else llvmPackages_39);
+    (if stdenv.isDarwin then llvmPackages_4 else llvmPackages_39);
 
   llvmPackagesSelf = llvmPackages_34.override {
     stdenv = libcxxStdenv;
@@ -5433,13 +5471,9 @@ with pkgs;
     isl = isl_0_14;
   };
 
-  llvmPackages_37 = callPackage ../development/compilers/llvm/3.7 ({
+  llvmPackages_37 = callPackage ../development/compilers/llvm/3.7 {
     inherit (stdenvAdapters) overrideCC;
-  } // stdenv.lib.optionalAttrs stdenv.isDarwin {
-    cmake = cmake.override { isBootstrap = true; useSharedLibraries = false; };
-    libxml2 = libxml2.override { pythonSupport = false; };
-    python2 = callPackage ../development/interpreters/python/cpython/2.7/boot.nix { inherit (darwin) CF configd; };
-  });
+  };
 
   llvmPackages_38 = callPackage ../development/compilers/llvm/3.8 {
     inherit (stdenvAdapters) overrideCC;
@@ -5449,9 +5483,13 @@ with pkgs;
     inherit (stdenvAdapters) overrideCC;
   };
 
-  llvmPackages_4 = callPackage ../development/compilers/llvm/4 {
+  llvmPackages_4 = callPackage ../development/compilers/llvm/4 ({
     inherit (stdenvAdapters) overrideCC;
-  };
+  } // stdenv.lib.optionalAttrs stdenv.isDarwin {
+    cmake = cmake.override { isBootstrap = true; useSharedLibraries = false; };
+    libxml2 = libxml2.override { pythonSupport = false; };
+    python2 = callPackage ../development/interpreters/python/cpython/2.7/boot.nix { inherit (darwin) CF configd; };
+  });
 
   manticore = callPackage ../development/compilers/manticore { };
 
@@ -5564,6 +5602,8 @@ with pkgs;
   cargo = rust.cargo;
   rustc = rust.rustc;
 
+  cargo-edit = callPackage ../tools/package-management/cargo-edit { };
+
   rustPlatform = recurseIntoAttrs (makeRustPlatform rust);
 
   makeRustPlatform = rust: lib.fix (self:
@@ -5584,6 +5624,9 @@ with pkgs;
   rustracer = callPackage ../development/tools/rust/racer { };
   rustracerd = callPackage ../development/tools/rust/racerd { };
   rust-bindgen = callPackage ../development/tools/rust/bindgen { };
+  rustup = callPackage ../development/tools/rust/rustup {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
 
   sbclBootstrap = callPackage ../development/compilers/sbcl/bootstrap.nix {};
   sbcl = callPackage ../development/compilers/sbcl {};
@@ -5931,17 +5974,29 @@ with pkgs;
     git = gitMinimal;
   };
 
-  octave = callPackage ../development/interpreters/octave {
-    qt = null;
-    ghostscript = null;
-    graphicsmagick = null;
-    llvm = null;
-    hdf5 = null;
-    glpk = null;
-    suitesparse = null;
-    jdk = null;
-    openblas = if stdenv.isDarwin then openblasCompat else openblas;
-  };
+  inherit (
+    let
+      defaultOctaveOptions = {
+        qt = null;
+        ghostscript = null;
+        graphicsmagick = null;
+        llvm = null;
+        hdf5 = null;
+        glpk = null;
+        suitesparse = null;
+        jdk = null;
+        openblas = if stdenv.isDarwin then openblasCompat else openblas;
+      };
+
+      hgOctaveOptions =
+        (removeAttrs defaultOctaveOptions ["ghostscript"]) // {
+          overridePlatforms = stdenv.lib.platforms.none;
+        };
+    in {
+      octave = callPackage ../development/interpreters/octave defaultOctaveOptions;
+      octaveHg = lowPrio (callPackage ../development/interpreters/octave/hg.nix hgOctaveOptions);
+  }) octave octaveHg;
+
   octaveFull = (lowPrio (callPackage ../development/interpreters/octave {
     qt = qt4;
     overridePlatforms = ["x86_64-linux" "x86_64-darwin"];
@@ -6049,7 +6104,9 @@ with pkgs;
 
   pythonDocs = recurseIntoAttrs (callPackage ../development/interpreters/python/cpython/docs {});
 
-  pypi2nix = callPackage ../development/tools/pypi2nix { python = python35; };
+  pypi2nix = callPackage ../development/tools/pypi2nix {
+    pythonPackages = python3Packages;
+  };
 
   svg2tikz = python27Packages.svg2tikz;
 
@@ -6085,17 +6142,17 @@ with pkgs;
   inherit (callPackage ../development/interpreters/ruby {})
     ruby_2_0_0
     ruby_2_1_10
-    ruby_2_2_5
-    ruby_2_3_3
-    ruby_2_4_0;
+    ruby_2_2_7
+    ruby_2_3_4
+    ruby_2_4_1;
 
   # Ruby aliases
   ruby = ruby_2_3;
   ruby_2_0 = ruby_2_0_0;
   ruby_2_1 = ruby_2_1_10;
-  ruby_2_2 = ruby_2_2_5;
-  ruby_2_3 = ruby_2_3_3;
-  ruby_2_4 = ruby_2_4_0;
+  ruby_2_2 = ruby_2_2_7;
+  ruby_2_3 = ruby_2_3_4;
+  ruby_2_4 = ruby_2_4_1;
 
   scsh = callPackage ../development/interpreters/scsh { };
 
@@ -6377,8 +6434,12 @@ with pkgs;
 
   coan = callPackage ../development/tools/analysis/coan { };
 
+  compile-daemon = callPackage ../development/tools/compile-daemon { };
+
   complexity = callPackage ../development/tools/misc/complexity { };
 
+  conan = callPackage ../development/tools/build-managers/conan { };
+
   cookiecutter = pythonPackages.cookiecutter;
 
   ctags = callPackage ../development/tools/misc/ctags { };
@@ -7385,7 +7446,7 @@ with pkgs;
   ffmpeg_0 = ffmpeg_0_10;
   ffmpeg_1 = ffmpeg_1_2;
   ffmpeg_2 = ffmpeg_2_8;
-  ffmpeg_3 = ffmpeg_3_1;
+  ffmpeg_3 = ffmpeg_3_2;
   ffmpeg = ffmpeg_3;
 
   ffmpeg-full = callPackage ../development/libraries/ffmpeg-full {
@@ -7711,9 +7772,15 @@ with pkgs;
 
   gnutls = gnutls35;
 
-  gnutls35 = callPackage ../development/libraries/gnutls/3.5.nix {
-    guileBindings = config.gnutls.guile or false;
-  };
+  gnutls35 = callPackage
+    (if stdenv.isDarwin
+      # Avoid > 3.5.10 due to frameworks for now; see discussion on:
+      # https://github.com/NixOS/nixpkgs/commit/d6454e6a1
+      then ../development/libraries/gnutls/3.5.10.nix
+      else ../development/libraries/gnutls/3.5.nix)
+    {
+      guileBindings = config.gnutls.guile or false;
+    };
 
   gnutls-kdh = callPackage ../development/libraries/gnutls-kdh/3.5.nix {
     guileBindings = config.gnutls.guile or false;
@@ -7822,6 +7889,10 @@ with pkgs;
     gtk = gtk2;
   };
 
+  gtk-mac-integration-gtk3 = callPackage ../development/libraries/gtk-mac-integration {
+    gtk = gtk3;
+  };
+
   gtk-mac-bundler = callPackage ../development/tools/gtk-mac-bundler {};
 
   gtkspell2 = callPackage ../development/libraries/gtkspell { };
@@ -8035,9 +8106,7 @@ with pkgs;
 
   levmar = callPackage ../development/libraries/levmar { };
 
-  leptonica = callPackage ../development/libraries/leptonica {
-    libpng = libpng12;
-  };
+  leptonica = callPackage ../development/libraries/leptonica { };
 
   lib3ds = callPackage ../development/libraries/lib3ds { };
 
@@ -8086,6 +8155,10 @@ with pkgs;
 
   libb2 = callPackage ../development/libraries/libb2 { };
 
+  libbap = callPackage ../development/libraries/libbap {
+    inherit (ocamlPackages_4_02) bap ocaml findlib ctypes;
+  };
+
   libbluedevil = callPackage ../development/libraries/libbluedevil { };
 
   libbdplus = callPackage ../development/libraries/libbdplus { };
@@ -9023,10 +9096,12 @@ with pkgs;
     in mo.drivers
   );
 
+  # Please, avoid using this attribute.  It was meant as transitional hack
+  # for packages that assume that libGLU and libGL live in the same prefix.
+  # Otherwise it's better to use mesa_glu or mesa_noglu, depending on whether
+  # you need libGLU or not (_glu propagates _noglu).
   mesa = mesaDarwinOr (buildEnv {
     name = "mesa-${mesa_noglu.version}";
-    # FIXME: this causes mesa to have a runtime dependency on
-    # mesa_noglu.dev.
     paths = [ mesa_noglu.dev mesa_noglu.out mesa_glu mesa_glu.dev ];
     meta = {
       platforms = lib.platforms.unix;
@@ -9133,9 +9208,7 @@ with pkgs;
   };
   libnghttp2 = nghttp2.lib;
 
-  nix-plugins = callPackage ../development/libraries/nix-plugins {
-    nix = pkgs.nixUnstable;
-  };
+  nix-plugins = callPackage ../development/libraries/nix-plugins {};
 
   nlohmann_json = callPackage ../development/libraries/nlohmann_json { };
 
@@ -9235,7 +9308,7 @@ with pkgs;
 
   openslp = callPackage ../development/libraries/openslp {};
 
-  libressl = libressl_2_4;
+  libressl = libressl_2_5;
   libressl_2_4 = callPackage ../development/libraries/libressl/2.4.nix {
     fetchurl = fetchurlBoot;
   };
@@ -9442,7 +9515,7 @@ with pkgs;
     inherit newScope;
     inherit stdenv fetchurl makeSetupHook makeWrapper;
     bison = bison2; # error: too few arguments to function 'int yylex(...
-    cups = if stdenv.isLinux then cups else null;
+    inherit cups;
     harfbuzz = harfbuzz-icu;
     mesa = mesa_noglu;
     inherit perl;
@@ -9455,7 +9528,7 @@ with pkgs;
     inherit newScope;
     inherit stdenv fetchurl makeSetupHook makeWrapper;
     bison = bison2; # error: too few arguments to function 'int yylex(...
-    cups = if stdenv.isLinux then cups else null;
+    inherit cups;
     harfbuzz = harfbuzz-icu;
     mesa = mesa_noglu;
     inherit perl;
@@ -9523,6 +9596,10 @@ with pkgs;
 
     libopenshot-audio = callPackage ../applications/video/openshot-qt/libopenshot-audio.nix { };
 
+    libqtav = callPackage ../development/libraries/libqtav { 
+      libva = libva-full; # also wants libva-x11 
+    };
+
     mlt = callPackage ../development/libraries/mlt/qt-5.nix {
       ffmpeg = ffmpeg_2;
     };
@@ -9623,6 +9700,8 @@ with pkgs;
     haskell-lib = haskell.lib;
   };
 
+  lambda-mod-zsh-theme = callPackage ../shells/lambda-mod-zsh-theme/default.nix { };
+
   leksah = callPackage ../development/tools/haskell/leksah {
     inherit (haskellPackages) ghcWithPackages;
   };
@@ -9671,6 +9750,8 @@ with pkgs;
 
   sad = callPackage ../applications/science/logic/sad { };
 
+  safefile = callPackage ../development/libraries/safefile {};
+
   sbc = callPackage ../development/libraries/sbc { };
 
   schroedinger = callPackage ../development/libraries/schroedinger { };
@@ -10553,6 +10634,8 @@ with pkgs;
   bosun = callPackage ../servers/monitoring/bosun { };
   scollector = bosun;
 
+  cayley = callPackage ../servers/cayley { };
+
   charybdis = callPackage ../servers/irc/charybdis {};
 
   couchdb = callPackage ../servers/http/couchdb {
@@ -11042,6 +11125,8 @@ with pkgs;
 
   sipwitch = callPackage ../servers/sip/sipwitch { };
 
+  slimserver = callPackage ../servers/slimserver { };
+
   smcroute = callPackage ../servers/smcroute { };
 
   spawn_fcgi = callPackage ../servers/http/spawn-fcgi { };
@@ -12039,6 +12124,8 @@ with pkgs;
 
   rt5677-firmware = callPackage ../os-specific/linux/firmware/rt5677 { };
 
+  rtl8192su-firmware = callPackage ../os-specific/linux/firmware/rtl8192su-firmware { };
+
   rtl8723bs-firmware = callPackage ../os-specific/linux/firmware/rtl8723bs-firmware { };
 
   rtlwifi_new-firmware = callPackage ../os-specific/linux/firmware/rtlwifi_new-firmware { };
@@ -12401,6 +12488,8 @@ with pkgs;
 
   encode-sans = callPackage ../data/fonts/encode-sans { };
 
+  envypn-font = callPackage ../data/fonts/envypn-font { };
+
   fantasque-sans-mono = callPackage ../data/fonts/fantasque-sans-mono {};
 
   fira = callPackage ../data/fonts/fira { };
@@ -12630,6 +12719,11 @@ with pkgs;
   source-han-sans-korean = sourceHanSansPackages.korean;
   source-han-sans-simplified-chinese = sourceHanSansPackages.simplified-chinese;
   source-han-sans-traditional-chinese = sourceHanSansPackages.traditional-chinese;
+  sourceHanSerifPackages = callPackage ../data/fonts/source-han-serif { };
+  source-han-serif-japanese = sourceHanSerifPackages.japanese;
+  source-han-serif-korean = sourceHanSerifPackages.korean;
+  source-han-serif-simplified-chinese = sourceHanSerifPackages.simplified-chinese;
+  source-han-serif-traditional-chinese = sourceHanSerifPackages.traditional-chinese;
 
   inherit (callPackages ../data/fonts/tai-languages { }) tai-ahom;
 
@@ -12841,6 +12935,7 @@ with pkgs;
 
   go-ethereum = self.altcoins.go-ethereum;
   ethabi = self.altcoins.ethabi;
+  ethrun = self.altcoins.ethrun;
 
   stellar-core = self.altcoins.stellar-core;
 
@@ -13198,7 +13293,13 @@ with pkgs;
   dmtx-utils = callPackage (callPackage ../tools/graphics/dmtx-utils) {
   };
 
-  docker = callPackage ../applications/virtualization/docker { };
+  inherit (callPackage ../applications/virtualization/docker { })
+    docker_17_03
+    docker_17_04;
+
+  docker = docker_17_03;
+  docker-edge = docker_17_04;
+
   docker-proxy = callPackage ../applications/virtualization/docker/proxy.nix { };
 
   docker-gc = callPackage ../applications/virtualization/docker/gc.nix { };
@@ -13535,7 +13636,7 @@ with pkgs;
 
   fbreader = callPackage ../applications/misc/fbreader { };
 
-  fdr = libsForQt56.callPackage ../applications/science/programming/fdr { };
+  fdr = libsForQt5.callPackage ../applications/science/programming/fdr { };
 
   fehlstart = callPackage ../applications/misc/fehlstart { };
 
@@ -13673,7 +13774,7 @@ with pkgs;
   inherit (callPackages ../applications/networking/browsers/firefox {
     inherit (gnome2) libIDL;
     libpng = libpng_apng;
-    enableGTK3 = false;
+    enableGTK3 = true;
     python = python2;
     gnused = gnused_422;
   }) firefox-unwrapped firefox-esr-unwrapped;
@@ -13715,15 +13816,15 @@ with pkgs;
   flac = callPackage ../applications/audio/flac { };
 
   flashplayer = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer {
-      debug = config.flashplayer.debug or false;
+    debug = config.flashplayer.debug or false;
   };
 
   flashplayer-standalone = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix {
-      debug = config.flashplayer.debug or false;
+    debug = config.flashplayer.debug or false;
   };
 
   flashplayer-standalone-debugger = flashplayer-standalone.override {
-      debug = true;
+    debug = true;
   };
 
   fluxbox = callPackage ../applications/window-managers/fluxbox { };
@@ -13773,6 +13874,8 @@ with pkgs;
 
   getxbook = callPackage ../applications/misc/getxbook {};
 
+  ghq = gitAndTools.ghq;
+
   gimp_2_8 = callPackage ../applications/graphics/gimp/2.8.nix {
     inherit (gnome2) libart_lgpl;
     webkit = null;
@@ -13851,7 +13954,7 @@ with pkgs;
     libart = pkgs.gnome2.libart_lgpl;
   };
 
-  idea = recurseIntoAttrs (callPackages ../applications/editors/idea { androidsdk = androidsdk_extras; });
+  jetbrains = recurseIntoAttrs (callPackages ../applications/editors/jetbrains { androidsdk = androidsdk_extras; });
 
   libquvi = callPackage ../applications/video/quvi/library.nix { };
 
@@ -13944,7 +14047,9 @@ with pkgs;
 
   gosmore = callPackage ../applications/misc/gosmore { };
 
-  gpsbabel = libsForQt5.callPackage ../applications/misc/gpsbabel { };
+  gpsbabel = libsForQt5.callPackage ../applications/misc/gpsbabel {
+    inherit (darwin) IOKit;
+  };
 
   gpscorrelate = callPackage ../applications/misc/gpscorrelate { };
 
@@ -14243,7 +14348,8 @@ with pkgs;
 
   inherit (kdeApplications)
     akonadi ark dolphin ffmpegthumbs filelight gwenview kate
-    kdenlive kcalc kcolorchooser kcontacts kgpg khelpcenter kig konsole krfb marble
+    kdenlive kcalc kcolorchooser kcontacts kgpg khelpcenter kig
+    kolourpaint konsole krfb marble
     okteta okular spectacle;
 
   kdeconnect = libsForQt5.callPackage ../applications/misc/kdeconnect { };
@@ -14436,10 +14542,7 @@ with pkgs;
 
   lxdvdrip = callPackage ../applications/video/lxdvdrip { };
 
-  handbrake = callPackage ../applications/video/handbrake {
-    # TODO: remove when 3.2 becomes default
-    ffmpeg = ffmpeg_3_2;
-  };
+  handbrake = callPackage ../applications/video/handbrake { };
 
   lilyterm = callPackage ../applications/misc/lilyterm {
     inherit (gnome2) vte;
@@ -14715,6 +14818,8 @@ with pkgs;
 
   oroborus = callPackage ../applications/window-managers/oroborus {};
 
+  osm2pgsql = callPackage ../tools/misc/osm2pgsql { };
+
   ostinato = callPackage ../applications/networking/ostinato { };
 
   panamax_api = callPackage ../applications/networking/cluster/panamax/api {
@@ -14900,7 +15005,10 @@ with pkgs;
 
   osmo = callPackage ../applications/office/osmo { };
 
-  palemoon = callPackage ../applications/networking/browsers/palemoon { };
+  palemoon = callPackage ../applications/networking/browsers/palemoon {
+    # https://forum.palemoon.org/viewtopic.php?f=57&t=15296#p111146
+    stdenv = overrideCC stdenv gcc49;
+  };
 
   pamix = callPackage ../applications/audio/pamix { };
 
@@ -14987,6 +15095,8 @@ with pkgs;
 
   pidgin-skypeweb = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-skypeweb { };
 
+  pidgin-carbons = callPackage ../applications/networking/instant-messengers/pidgin-plugins/carbons { };
+
   pidgin-xmpp-receipts = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-xmpp-receipts { };
 
   pidginotr = callPackage ../applications/networking/instant-messengers/pidgin-plugins/otr { };
@@ -15648,6 +15758,7 @@ with pkgs;
   };
 
   tesseract = callPackage ../applications/graphics/tesseract { };
+  tesseract_4 = lowPrio (callPackage ../applications/graphics/tesseract/4.x.nix { });
 
   tetraproc = callPackage ../applications/audio/tetraproc { };
 
@@ -15656,11 +15767,13 @@ with pkgs;
   thunderbird = callPackage ../applications/networking/mailreaders/thunderbird {
     inherit (gnome2) libIDL;
     libpng = libpng_apng;
+    enableGTK3 = true;
   };
 
   thunderbird-bin = callPackage ../applications/networking/mailreaders/thunderbird-bin {
     gconf = pkgs.gnome2.GConf;
     inherit (pkgs.gnome2) libgnome libgnomeui;
+    inherit (pkgs.gnome3) defaultIconTheme;
   };
 
   tig = gitAndTools.tig;
@@ -15782,6 +15895,10 @@ with pkgs;
 
   vdpauinfo = callPackage ../tools/X11/vdpauinfo { };
 
+  verbiste = callPackage ../applications/misc/verbiste {
+    inherit (gnome2) libgnomeui;
+  };
+
   vim = callPackage ../applications/editors/vim {
     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
   };
@@ -15912,8 +16029,7 @@ with pkgs;
     gtk = gtk2;
   };
 
-  # VLC 3.0 is needed to compile in C++11 mode (QT 5.7)
-  vlc_qt5 = libsForQt56.vlc;
+  vlc_qt5 = libsForQt5.vlc;
 
   vmpk = callPackage ../applications/audio/vmpk { };
 
@@ -16600,6 +16716,8 @@ with pkgs;
     lua = lua5;
   };
 
+  instead-launcher = callPackage ../games/instead-launcher { };
+
   ja2-stracciatella = callPackage ../games/ja2-stracciatella { };
 
   klavaro = callPackage ../games/klavaro {};
@@ -17140,6 +17258,8 @@ with pkgs;
 
   bcftools = callPackage ../applications/science/biology/bcftools { };
 
+  diamond = callPackage ../applications/science/biology/diamond { };
+
   ecopcr = callPackage ../applications/science/biology/ecopcr { };
 
   emboss = callPackage ../applications/science/biology/emboss { };
@@ -17753,6 +17873,8 @@ with pkgs;
 
   cups-dymo = callPackage ../misc/cups/drivers/dymo {};
 
+  cups-toshiba-estudio = callPackage ../misc/cups/drivers/estudio {};
+
   crashplan = callPackage ../applications/backup/crashplan { };
 
   colort = callPackage ../applications/misc/colort { };
@@ -17999,7 +18121,7 @@ with pkgs;
 
   redis-desktop-manager = libsForQt56.callPackage ../applications/misc/redis-desktop-manager { };
 
-  robomongo = libsForQt5.callPackage ../applications/misc/robomongo { };
+  robomongo = callPackage ../applications/misc/robomongo { };
 
   rucksack = callPackage ../development/tools/rucksack { };
 
@@ -18129,10 +18251,10 @@ with pkgs;
   inherit (callPackage ../applications/networking/cluster/terraform {})
     terraform_0_8_5
     terraform_0_8_8
-    terraform_0_9_2;
+    terraform_0_9_3;
 
   terraform_0_8 = terraform_0_8_8;
-  terraform_0_9 = terraform_0_9_2;
+  terraform_0_9 = terraform_0_9_3;
   terraform = terraform_0_9;
 
   terragrunt = callPackage ../applications/networking/cluster/terragrunt {
@@ -18385,7 +18507,7 @@ with pkgs;
 
   discord = callPackage ../applications/networking/instant-messengers/discord { };
 
-  golden-cheetah = libsForQt5.callPackage ../applications/misc/golden-cheetah {};
+  golden-cheetah = libsForQt56.callPackage ../applications/misc/golden-cheetah {};
 
   linkchecker = callPackage ../tools/networking/linkchecker { };
 
@@ -18424,4 +18546,11 @@ with pkgs;
   ghc-standalone-archive = callPackage ../os-specific/darwin/ghc-standalone-archive { inherit (darwin) cctools; };
 
   messenger-for-desktop = callPackage ../applications/networking/instant-messengers/messenger-for-desktop {};
+
+  NSPlist = callPackage ../development/libraries/NSPlist {};
+
+  PlistCpp = callPackage ../development/libraries/PlistCpp {};
+
+  xib2nib = callPackage ../development/tools/xib2nib {};
+
 }
diff --git a/pkgs/top-level/default.nix b/pkgs/top-level/default.nix
index 3e3ecdeea6c..96d5e1fe283 100644
--- a/pkgs/top-level/default.nix
+++ b/pkgs/top-level/default.nix
@@ -40,6 +40,7 @@
 
 let # Rename the function arguments
   configExpr = config;
+  crossSystem0 = crossSystem;
 
 in let
   lib = import ../../lib;
@@ -52,12 +53,15 @@ in let
     then configExpr { inherit pkgs; }
     else configExpr;
 
-  # Allow setting the platform in the config file. Otherwise, let's use a
-  # reasonable default.
-  localSystem =
-    { platform = (import ./platforms.nix).selectPlatformBySystem args.localSystem.system; }
-    // builtins.intersectAttrs { platform = null; } config
-    // args.localSystem;
+  # From a minimum of `system` or `config` (actually a target triple, *not*
+  # nixpkgs configuration), infer the other one and platform as needed.
+  localSystem = lib.systems.elaborate (
+    # Allow setting the platform in the config file. This take precedence over
+    # the inferred platform, but not over an explicitly passed-in one.
+    builtins.intersectAttrs { platform = null; } config
+    // args.localSystem);
+
+  crossSystem = lib.mapNullable lib.systems.elaborate crossSystem0;
 
   # A few packages make a new package set to draw their dependencies from.
   # (Currently to get a cross tool chain, or forced-i686 package.) Rather than
diff --git a/pkgs/top-level/dotnet-packages.nix b/pkgs/top-level/dotnet-packages.nix
index 71f2326b937..ac4c5eaac64 100644
--- a/pkgs/top-level/dotnet-packages.nix
+++ b/pkgs/top-level/dotnet-packages.nix
@@ -46,6 +46,20 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     outputFiles = [ "lib/net40/*" ];
   };
 
+  FSharpCore = fetchNuGet {
+    baseName = "FSharp.Core";
+    version = "4.0.0.1";
+    sha256 = "01nhjcxdz8l1r5vvdzhmgy5x7z5fqppab3ki34qg14axgf8jjygn";
+    outputFiles = [ "*" ];
+  };
+
+  FSharpData225 = fetchNuGet {
+    baseName = "FSharp.Data";
+    version = "2.2.5";
+    sha256 = "1c9l6bk0d2srccash2980y9phq3kmfm0m76k4wghnysnq94vm724";
+    outputFiles = [ "*" ];
+  };
+
   FSharpDataSQLProvider = fetchNuGet {
     baseName = "SQLProvider";
     version = "0.0.9-alpha";
@@ -60,6 +74,13 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     outputFiles = [ "lib/net45/*" ];
   };
 
+  FsCheck262 = fetchNuGet {
+    baseName = "FsCheck";
+    version = "2.6.2";
+    sha256 = "0fh9yvsc4i61z31qf00d6gjv6xxd54pv1ykf5bpv95a5crc3qfvl";
+    outputFiles = [ "*" ];
+  };
+
   FsCheckNunit = fetchNuGet {
     baseName = "FsCheck.Nunit";
     version = "1.0.4";
@@ -67,6 +88,13 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     outputFiles = [ "lib/net45/*" ];
   };
 
+  FSharpCompilerTools = fetchNuGet {
+    baseName = "FSharp.Compiler.Tools";
+    version = "4.1.4";
+    sha256 = "0vsp0khlnwh15ibg8s161rw6a6i8rlriclpq53paga447jllf0m8";
+    outputFiles = [ "*" ];
+  };
+
   FsLexYacc = fetchNuGet {
     baseName = "FsLexYacc";
     version = "6.1.0";
@@ -74,6 +102,13 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     outputFiles = [ "build/*" ];
   };
 
+  FsLexYacc704 = fetchNuGet {
+    baseName = "FsLexYacc";
+    version = "7.0.4";
+    sha256 = "01zpdb0pybdf0by02rwd7pb1g0cmnn8jxm2pibzxjxw6f4l43ywi";
+    outputFiles = [ "*" ];
+  };
+
   FsPickler = fetchNuGet {
     baseName = "FsPickler";
     version = "1.2.9";
@@ -102,6 +137,13 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     outputFiles = [ "lib/*" ];
   };
 
+  NUnit350 = fetchNuGet {
+    baseName = "NUnit";
+    version = "3.5.0";
+    sha256 = "19fxq9cf754ygda5c8rn1zqs71pfxi7mb96jwqhlichnqih6i16z";
+    outputFiles = [ "*" ];
+  };
+
   NUnit2 = fetchNuGet {
     baseName = "NUnit";
     version = "2.6.4";
@@ -153,6 +195,13 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     outputFiles = [ "tools/*" ];
   };
 
+  SystemValueTuple = fetchNuGet {
+    baseName = "System.ValueTuple";
+    version = "4.3.0";
+    sha256 = "00p5s753xh5417arw3k6npf1pc1k3m1s9mrlkw5vmc7pg8lm6n88";
+    outputFiles = [ "*" ];
+  };
+
   RestSharp = fetchNuGet {
     baseName = "RestSharp";
     version = "105.2.3";
@@ -195,6 +244,20 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     outputFiles = [ "lib/*" ];
   };
 
+  MicrosoftDiaSymReader = fetchNuGet {
+    baseName = "Microsoft.DiaSymReader";
+    version = "1.1.0";
+    sha256 = "04dgwy6nyxksd1nb24k5c5vz8naggg7hryadvwqnm2v3alkh6g88";
+    outputFiles = [ "*" ];
+  };
+
+  MicrosoftDiaSymReaderPortablePdb = fetchNuGet {
+    baseName = "Microsoft.DiaSymReader.PortablePdb";
+    version = "1.2.0";
+    sha256 = "0qa8sqg0lzz9galkkfyi8rkbkali0nxm3qd5y4dlxp96ngrq5ldz";
+    outputFiles = [ "*" ];
+  };
+
   NUnitRunners = fetchNuGet {
     baseName = "NUnit.Runners";
     version = "2.6.4";
@@ -210,6 +273,20 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     outputFiles = [ "lib/portable-net45+win8+wp8+wpa81/*" ];
   };
 
+  SystemCollectionsImmutable131 = fetchNuGet {
+    baseName = "System.Collections.Immutable";
+    version = "1.3.1";
+    sha256 = "149fcp7k7r9iw24dv5hbaij0c38kcv28dyhzbkggilfh4x2hy8c2";
+    outputFiles = [ "*" ];
+  };
+
+  SystemReflectionMetadata = fetchNuGet {
+    baseName = "System.Reflection.Metadata";
+    version = "1.4.2";
+    sha256 = "19fhdgd35yg52gyckhgwrphq07nv7v7r73hcg69ns94xfg1i6r7i";
+    outputFiles = [ "*" ];
+  };
+
   Suave = fetchNuGet {
     baseName = "Suave";
     version = "0.29.0";
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 232f1331865..cf2b676a5d4 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -51,6 +51,8 @@ let
 
     base64 = callPackage ../development/ocaml-modules/base64 { };
 
+    bap = callPackage ../development/ocaml-modules/bap { };
+
     bitstring = callPackage ../development/ocaml-modules/bitstring { };
 
     bolt = callPackage ../development/ocaml-modules/bolt { };
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f0414b1b1ae..0e9efde834d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -459,6 +459,22 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  AudioScan = buildPerlPackage rec {
+    name = "Audio-Scan-0.93";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/A/AG/AGRUNDMA/${name}.tar.gz";
+      sha256 = "03nwcm234y76jb1p20rlcky6vzv68i46s9mjfr7kzp65w3yg94js";
+    };
+    buildInputs = [ pkgs.zlib ModuleBuild ModuleBuildPluggablePPPort ];
+    propagatedBuildInputs = [ TestWarn ];
+    NIX_CFLAGS_COMPILE = "-I${pkgs.zlib.dev}/include";
+    NIX_CFLAGS_LINK = "-L${pkgs.zlib.out}/lib -lz";
+    meta = {
+      description = "Fast C metadata and tag reader for all common audio file formats";
+      license = stdenv.lib.licenses.gpl2;
+    };
+  };
+
   AuthenDecHpwd = buildPerlPackage rec {
     name = "Authen-DecHpwd-2.006";
     src = fetchurl {
@@ -865,6 +881,17 @@ let self = _self // overrides; _self = with self; {
     buildInputs = [ TestMore ];
   };
 
+  CanaryStability = buildPerlPackage rec {
+    name = "Canary-Stability-2012";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/M/ML/MLEHMANN/${name}.tar.gz";
+      sha256 = "fd240b111d834dbae9630c59b42fae2145ca35addc1965ea311edf0d07817107";
+    };
+    meta = {
+      license = stdenv.lib.licenses.gpl1Plus;
+    };
+  };
+
   CaptchaReCAPTCHA = buildPerlPackage rec {
     name = "Captcha-reCAPTCHA-0.97";
     src = fetchurl {
@@ -2040,6 +2067,20 @@ let self = _self // overrides; _self = with self; {
     propagatedBuildInputs = [ ClassInspector ];
   };
 
+  ClassVirtual = buildPerlPackage rec {
+    name = "Class-Virtual-0.08";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/M/MS/MSCHWERN/${name}.tar.gz";
+      sha256 = "c6499b42d3b4e5c6488a5e82fbc28698e6c9860165072dddfa6749355a9cfbb2";
+    };
+    propagatedBuildInputs = [ CarpAssert ClassDataInheritable ClassISA ];
+    meta = {
+      homepage = https://metacpan.org/release/Class-Virtual;
+      description = "Base class for virtual base classes";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   ClassXSAccessor = buildPerlPackage {
     name = "Class-XSAccessor-1.19";
     src = fetchurl {
@@ -3050,6 +3091,17 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  DataURIEncode = buildPerlPackage rec {
+    name = "Data-URIEncode-0.11";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/R/RH/RHANDOM/${name}.tar.gz";
+      sha256 = "51c9efbf8423853616eaa24841e4d1996b2db0036900617fb1dbc76c75a1f360";
+    };
+    meta = {
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   DataUUID = buildPerlPackage rec {
     name = "Data-UUID-1.220";
     src = fetchurl {
@@ -4614,6 +4666,17 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  enum = buildPerlPackage rec {
+    name = "enum-1.11";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/N/NE/NEILB/${name}.tar.gz";
+      sha256 = "d2f36b5015f1e35f640159867b60bf5d5cd66b56cd5e42d33f531be68e5eee35";
+    };
+    meta = {
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   Env = buildPerlPackage {
     name = "Env-1.04";
     src = fetchurl {
@@ -4647,6 +4710,19 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  EV = buildPerlPackage rec {
+    name = "EV-4.22";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/M/ML/MLEHMANN/${name}.tar.gz";
+      sha256 = "2ae7f8734e2e4945510252152c3bea4be35f4aa58aad3db0504c38844b08a991";
+    };
+    buildInputs = [ CanaryStability ];
+    propagatedBuildInputs = [ CommonSense ];
+    meta = {
+      license = stdenv.lib.licenses.gpl1Plus;
+    };
+  };
+
   EvalClosure = buildPerlPackage {
     name = "Eval-Closure-0.11";
     src = fetchurl {
@@ -5073,6 +5149,20 @@ let self = _self // overrides; _self = with self; {
     propagatedBuildInputs = [ ModuleBuild ];
   };
 
+  FileBOM = buildPerlPackage rec {
+    name = "File-BOM-0.15";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/M/MA/MATTLAW/${name}.tar.gz";
+      sha256 = "431c8b39397fd5ad5b1a1100d3647a06e9f94304d46db44ffc0a0e5c5c06a1c1";
+    };
+    buildInputs = [ ModuleBuild TestException ];
+    propagatedBuildInputs = [ Readonly ];
+    meta = {
+      description = "Utilities for handling Byte Order Marks";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   FileCheckTree = buildPerlPackage {
     name = "File-CheckTree-4.42";
     src = fetchurl {
@@ -6569,6 +6659,21 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  ImageScale = buildPerlPackage rec {
+    name = "Image-Scale-0.13";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/A/AG/AGRUNDMA/${name}.tar.gz";
+      sha256 = "5b2c92dc2dd635b488879461760cd251aa2b1feef41b64f17914a6e4bbe3e442";
+    };
+    buildInputs = [ pkgs.libpng pkgs.libjpeg ];
+    propagatedBuildInputs = [ TestNoWarnings pkgs.zlib ];
+    makeMakerFlags = "--with-jpeg-includes=${pkgs.libjpeg.dev}/include --with-jpeg-libs=${pkgs.libjpeg.out}/lib --with-png-includes=${pkgs.libpng.dev}/include --with-png-libs=${pkgs.libpng.out}/lib";
+    meta = {
+      description = "Fast, high-quality fixed-point image resizing";
+      license = stdenv.lib.licenses.gpl2Plus;
+    };
+  };
+
   ImageSize = buildPerlPackage rec {
     name = "Image-Size-3.232";
     src = fetchurl {
@@ -7123,6 +7228,18 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  JSONXSVersionOneAndTwo = buildPerlPackage rec {
+    name = "JSON-XS-VersionOneAndTwo-0.31";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/L/LB/LBROCARD/${name}.tar.gz";
+      sha256 = "e6092c4d961fae777acf7fe99fb3cd6e5b710fec85765a6b90417480e4c94a34";
+    };
+    propagatedBuildInputs = [ JSONXS ];
+    meta = {
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   Later = buildPerlPackage rec {
     version = "0.19";
     name = "Object-Realize-Later-${version}";
@@ -10616,6 +10733,16 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  ProcBackground = buildPerlPackage rec {
+    name = "Proc-Background-1.10";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/B/BZ/BZAJAC/${name}.tar.gz";
+      sha256 = "1ce0dd78c0bb8393a2431b385a27b99fcc623a41ebec57b3cc09cc38cdb708ee";
+    };
+    meta = {
+    };
+  };
+
   ProcProcessTable = buildPerlPackage {
     name = "Proc-ProcessTable-0.51";
     src = fetchurl {
@@ -14194,6 +14321,31 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  TieCacheLRU = buildPerlPackage rec {
+    name = "Tie-Cache-LRU-20150301";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/M/MS/MSCHWERN/${name}.tar.gz";
+      sha256 = "1bf740450d3a6d7c12b48c25f7da5964e44e7cc38b28572cfb76ff22464f4469";
+    };
+    propagatedBuildInputs = [ CarpAssert ClassDataInheritable ClassVirtual enum ];
+    meta = {
+      description = "A Least-Recently Used cache";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
+  TieCacheLRUExpires = buildPerlPackage rec {
+    name = "Tie-Cache-LRU-Expires-0.55";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/O/OE/OESTERHOL/${name}.tar.gz";
+      sha256 = "b316d849acd25f24346d55a9950d281fee0746398767c601234122159573eb9a";
+    };
+    propagatedBuildInputs = [ TieCacheLRU ];
+    meta = {
+      license = stdenv.lib.licenses.artistic1;
+    };
+  };
+
   TieCycle = buildPerlPackage rec {
     name = "Tie-Cycle-1.21";
     src = fetchurl {
@@ -14249,6 +14401,17 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  TieRegexpHash = buildPerlPackage rec {
+    name = "Tie-RegexpHash-0.17";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/A/AL/ALTREUS/${name}.tar.gz";
+      sha256 = "0c207850e77efb16618e0aa015507926a3425b34aad5aa6e3e40d83989a085a3";
+    };
+    meta = {
+      license = stdenv.lib.licenses.artistic1;
+    };
+  };
+
   TieToObject = buildPerlPackage {
     name = "Tie-ToObject-0.03";
     src = fetchurl {
@@ -14644,6 +14807,18 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  UUIDTiny = buildPerlPackage rec {
+    name = "UUID-Tiny-1.04";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/C/CA/CAUGUSTIN/${name}.tar.gz";
+      sha256 = "6dcd92604d64e96cc6c188194ae16a9d3a46556224f77b6f3d1d1312b68f9a3d";
+    };
+    meta = {
+      description = "Pure Perl UUID Support With Functional Interface";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   VariableMagic = buildPerlPackage rec {
     name = "Variable-Magic-0.58";
     src = fetchurl {
diff --git a/pkgs/top-level/platforms.nix b/pkgs/top-level/platforms.nix
deleted file mode 100644
index e26bc9e66ae..00000000000
--- a/pkgs/top-level/platforms.nix
+++ /dev/null
@@ -1,493 +0,0 @@
-rec {
-  pcBase = {
-    name = "pc";
-    uboot = null;
-    kernelHeadersBaseConfig = "defconfig";
-    kernelBaseConfig = "defconfig";
-    # Build whatever possible as a module, if not stated in the extra config.
-    kernelAutoModules = true;
-    kernelTarget = "bzImage";
-  };
-
-  pc64 = pcBase // { kernelArch = "x86_64"; };
-
-  pc32 = pcBase // { kernelArch = "i386"; };
-
-  pc32_simplekernel = pc32 // {
-    kernelAutoModules = false;
-  };
-
-  pc64_simplekernel = pc64 // {
-    kernelAutoModules = false;
-  };
-
-  sheevaplug = {
-    name = "sheevaplug";
-    kernelMajor = "2.6";
-    kernelHeadersBaseConfig = "multi_v5_defconfig";
-    kernelBaseConfig = "multi_v5_defconfig";
-    kernelArch = "arm";
-    kernelAutoModules = false;
-    kernelExtraConfig =
-      ''
-        BLK_DEV_RAM y
-        BLK_DEV_INITRD y
-        BLK_DEV_CRYPTOLOOP m
-        BLK_DEV_DM m
-        DM_CRYPT m
-        MD y
-        REISERFS_FS m
-        BTRFS_FS m
-        XFS_FS m
-        JFS_FS m
-        EXT4_FS m
-        USB_STORAGE_CYPRESS_ATACB m
-
-        # mv cesa requires this sw fallback, for mv-sha1
-        CRYPTO_SHA1 y
-        # Fast crypto
-        CRYPTO_TWOFISH y
-        CRYPTO_TWOFISH_COMMON y
-        CRYPTO_BLOWFISH y
-        CRYPTO_BLOWFISH_COMMON y
-
-        IP_PNP y
-        IP_PNP_DHCP y
-        NFS_FS y
-        ROOT_NFS y
-        TUN m
-        NFS_V4 y
-        NFS_V4_1 y
-        NFS_FSCACHE y
-        NFSD m
-        NFSD_V2_ACL y
-        NFSD_V3 y
-        NFSD_V3_ACL y
-        NFSD_V4 y
-        NETFILTER y
-        IP_NF_IPTABLES y
-        IP_NF_FILTER y
-        IP_NF_MATCH_ADDRTYPE y
-        IP_NF_TARGET_LOG y
-        IP_NF_MANGLE y
-        IPV6 m
-        VLAN_8021Q m
-
-        CIFS y
-        CIFS_XATTR y
-        CIFS_POSIX y
-        CIFS_FSCACHE y
-        CIFS_ACL y
-
-        WATCHDOG y
-        WATCHDOG_CORE y
-        ORION_WATCHDOG m
-
-        ZRAM m
-        NETCONSOLE m
-
-        # Disable OABI to have seccomp_filter (required for systemd)
-        # https://github.com/raspberrypi/firmware/issues/651
-        OABI_COMPAT n
-
-        # Fail to build
-        DRM n
-        SCSI_ADVANSYS n
-        USB_ISP1362_HCD n
-        SND_SOC n
-        SND_ALI5451 n
-        FB_SAVAGE n
-        SCSI_NSP32 n
-        ATA_SFF n
-        SUNGEM n
-        IRDA n
-        ATM_HE n
-        SCSI_ACARD n
-        BLK_DEV_CMD640_ENHANCED n
-
-        FUSE_FS m
-
-        # systemd uses cgroups
-        CGROUPS y
-
-        # Latencytop 
-        LATENCYTOP y
-
-        # Ubi for the mtd
-        MTD_UBI y
-        UBIFS_FS y
-        UBIFS_FS_XATTR y
-        UBIFS_FS_ADVANCED_COMPR y
-        UBIFS_FS_LZO y
-        UBIFS_FS_ZLIB y
-        UBIFS_FS_DEBUG n
-
-        # Kdb, for kernel troubles
-        KGDB y
-        KGDB_SERIAL_CONSOLE y
-        KGDB_KDB y
-      '';
-    kernelMakeFlags = [ "LOADADDR=0x0200000" ];
-    kernelTarget = "uImage";
-    uboot = "sheevaplug";
-    # Only for uboot = uboot :
-    ubootConfig = "sheevaplug_config";
-    kernelDTB = true; # Beyond 3.10
-    gcc = {
-      arch = "armv5te";
-      float = "soft";
-    };
-  };
-
-  raspberrypi = {
-    name = "raspberrypi";
-    kernelMajor = "2.6";
-    kernelHeadersBaseConfig = "bcm2835_defconfig";
-    kernelBaseConfig = "bcmrpi_defconfig";
-    kernelDTB = true;
-    kernelArch = "arm";
-    kernelAutoModules = false;
-    kernelExtraConfig =
-      ''
-        BLK_DEV_RAM y
-        BLK_DEV_INITRD y
-        BLK_DEV_CRYPTOLOOP m
-        BLK_DEV_DM m
-        DM_CRYPT m
-        MD y
-        REISERFS_FS m
-        BTRFS_FS y
-        XFS_FS m
-        JFS_FS y
-        EXT4_FS y
-
-        IP_PNP y
-        IP_PNP_DHCP y
-        NFS_FS y
-        ROOT_NFS y
-        TUN m
-        NFS_V4 y
-        NFS_V4_1 y
-        NFS_FSCACHE y
-        NFSD m
-        NFSD_V2_ACL y
-        NFSD_V3 y
-        NFSD_V3_ACL y
-        NFSD_V4 y
-        NETFILTER y
-        IP_NF_IPTABLES y
-        IP_NF_FILTER y
-        IP_NF_MATCH_ADDRTYPE y
-        IP_NF_TARGET_LOG y
-        IP_NF_MANGLE y
-        IPV6 m
-        VLAN_8021Q m
-
-        CIFS y
-        CIFS_XATTR y
-        CIFS_POSIX y
-        CIFS_FSCACHE y
-        CIFS_ACL y
-
-        ZRAM m
-
-        # Disable OABI to have seccomp_filter (required for systemd)
-        # https://github.com/raspberrypi/firmware/issues/651
-        OABI_COMPAT n
-
-        # Fail to build
-        DRM n
-        SCSI_ADVANSYS n
-        USB_ISP1362_HCD n
-        SND_SOC n
-        SND_ALI5451 n
-        FB_SAVAGE n
-        SCSI_NSP32 n
-        ATA_SFF n
-        SUNGEM n
-        IRDA n
-        ATM_HE n
-        SCSI_ACARD n
-        BLK_DEV_CMD640_ENHANCED n
-
-        FUSE_FS m
-
-        # nixos mounts some cgroup
-        CGROUPS y
-
-        # Latencytop 
-        LATENCYTOP y
-      '';
-    kernelTarget = "zImage";
-    uboot = null;
-    gcc = {
-      arch = "armv6";
-      fpu = "vfp";
-      float = "hard";
-    };
-  };
-
-  raspberrypi2 = armv7l-hf-multiplatform // {
-    name = "raspberrypi2";
-    kernelBaseConfig = "bcm2709_defconfig";
-    kernelDTB = true;
-    kernelAutoModules = false;
-    kernelExtraConfig =
-      ''
-        BLK_DEV_RAM y
-        BLK_DEV_INITRD y
-        BLK_DEV_CRYPTOLOOP m
-        BLK_DEV_DM m
-        DM_CRYPT m
-        MD y
-        REISERFS_FS m
-        BTRFS_FS y
-        XFS_FS m
-        JFS_FS y
-        EXT4_FS y
-
-        IP_PNP y
-        IP_PNP_DHCP y
-        NFS_FS y
-        ROOT_NFS y
-        TUN m
-        NFS_V4 y
-        NFS_V4_1 y
-        NFS_FSCACHE y
-        NFSD m
-        NFSD_V2_ACL y
-        NFSD_V3 y
-        NFSD_V3_ACL y
-        NFSD_V4 y
-        NETFILTER y
-        IP_NF_IPTABLES y
-        IP_NF_FILTER y
-        IP_NF_MATCH_ADDRTYPE y
-        IP_NF_TARGET_LOG y
-        IP_NF_MANGLE y
-        IPV6 m
-        VLAN_8021Q m
-
-        CIFS y
-        CIFS_XATTR y
-        CIFS_POSIX y
-        CIFS_FSCACHE y
-        CIFS_ACL y
-
-        ZRAM m
-
-        # Disable OABI to have seccomp_filter (required for systemd)
-        # https://github.com/raspberrypi/firmware/issues/651
-        OABI_COMPAT n
-
-        # Fail to build
-        DRM n
-        SCSI_ADVANSYS n
-        USB_ISP1362_HCD n
-        SND_SOC n
-        SND_ALI5451 n
-        FB_SAVAGE n
-        SCSI_NSP32 n
-        ATA_SFF n
-        SUNGEM n
-        IRDA n
-        ATM_HE n
-        SCSI_ACARD n
-        BLK_DEV_CMD640_ENHANCED n
-
-        FUSE_FS m
-
-        # nixos mounts some cgroup
-        CGROUPS y
-
-        # Latencytop 
-        LATENCYTOP y
-
-        # Disable the common config Xen, it doesn't build on ARM
-	XEN? n
-      '';
-    kernelTarget = "zImage";
-    uboot = null;
-  };
-
-  guruplug = sheevaplug // {
-    # Define `CONFIG_MACH_GURUPLUG' (see
-    # <http://kerneltrap.org/mailarchive/git-commits-head/2010/5/19/33618>)
-    # and other GuruPlug-specific things.  Requires the `guruplug-defconfig'
-    # patch.
-
-    kernelBaseConfig = "guruplug_defconfig";
-    #kernelHeadersBaseConfig = "guruplug_defconfig";
-  };
-
-  fuloong2f_n32 = {
-    name = "fuloong2f_n32";
-    kernelMajor = "2.6";
-    kernelHeadersBaseConfig = "fuloong2e_defconfig";
-    kernelBaseConfig = "lemote2f_defconfig";
-    kernelArch = "mips";
-    kernelAutoModules = false;
-    kernelExtraConfig =
-      ''
-        MIGRATION n
-        COMPACTION n
-
-        # nixos mounts some cgroup
-        CGROUPS y
-
-        BLK_DEV_RAM y
-        BLK_DEV_INITRD y
-        BLK_DEV_CRYPTOLOOP m
-        BLK_DEV_DM m
-        DM_CRYPT m
-        MD y
-        REISERFS_FS m
-        EXT4_FS m
-        USB_STORAGE_CYPRESS_ATACB m
-
-        IP_PNP y
-        IP_PNP_DHCP y
-        IP_PNP_BOOTP y
-        NFS_FS y
-        ROOT_NFS y
-        TUN m
-        NFS_V4 y
-        NFS_V4_1 y
-        NFS_FSCACHE y
-        NFSD m
-        NFSD_V2_ACL y
-        NFSD_V3 y
-        NFSD_V3_ACL y
-        NFSD_V4 y
-
-        # Fail to build
-        DRM n
-        SCSI_ADVANSYS n
-        USB_ISP1362_HCD n
-        SND_SOC n
-        SND_ALI5451 n
-        FB_SAVAGE n
-        SCSI_NSP32 n
-        ATA_SFF n
-        SUNGEM n
-        IRDA n
-        ATM_HE n
-        SCSI_ACARD n
-        BLK_DEV_CMD640_ENHANCED n
-
-        FUSE_FS m
-
-        # Needed for udev >= 150
-        SYSFS_DEPRECATED_V2 n
-
-        VGA_CONSOLE n
-        VT_HW_CONSOLE_BINDING y
-        SERIAL_8250_CONSOLE y
-        FRAMEBUFFER_CONSOLE y
-        EXT2_FS y
-        EXT3_FS y
-        REISERFS_FS y
-        MAGIC_SYSRQ y
-
-        # The kernel doesn't boot at all, with FTRACE
-        FTRACE n
-      '';
-    kernelTarget = "vmlinux";
-    uboot = null;
-    gcc.arch = "loongson2f";
-  };
-  
-  beaglebone = armv7l-hf-multiplatform // {
-    name = "beaglebone";
-    kernelBaseConfig = "omap2plus_defconfig";
-    kernelAutoModules = false;
-    kernelExtraConfig = ""; # TBD kernel config
-    kernelTarget = "zImage";
-    uboot = null;
-  };
-
-  armv7l-hf-multiplatform = {
-    name = "armv7l-hf-multiplatform";
-    kernelMajor = "2.6"; # Using "2.6" enables 2.6 kernel syscalls in glibc.
-    kernelHeadersBaseConfig = "multi_v7_defconfig";
-    kernelBaseConfig = "multi_v7_defconfig";
-    kernelArch = "arm";
-    kernelDTB = true;
-    kernelAutoModules = false;
-    uboot = null;
-    kernelTarget = "zImage";
-    gcc = {
-      # Some table about fpu flags:
-      # http://community.arm.com/servlet/JiveServlet/showImage/38-1981-3827/blogentry-103749-004812900+1365712953_thumb.png
-      # Cortex-A5: -mfpu=neon-fp16
-      # Cortex-A7 (rpi2): -mfpu=neon-vfpv4
-      # Cortex-A8 (beaglebone): -mfpu=neon
-      # Cortex-A9: -mfpu=neon-fp16
-      # Cortex-A15: -mfpu=neon-vfpv4
-
-      # More about FPU:
-      # https://wiki.debian.org/ArmHardFloatPort/VfpComparison
-
-      # vfpv3-d16 is what Debian uses and seems to be the best compromise: NEON is not supported in e.g. Scaleway or Tegra 2,
-      # and the above page suggests NEON is only an improvement with hand-written assembly.
-      arch = "armv7-a";
-      fpu = "vfpv3-d16";
-      float = "hard";
-
-      # For Raspberry Pi the 2 the best would be:
-      #   cpu = "cortex-a7";
-      #   fpu = "neon-vfpv4";
-    };
-  };
-
-  aarch64-multiplatform = {
-    name = "aarch64-multiplatform";
-    kernelMajor = "2.6"; # Using "2.6" enables 2.6 kernel syscalls in glibc.
-    kernelHeadersBaseConfig = "defconfig";
-    kernelBaseConfig = "defconfig";
-    kernelArch = "arm64";
-    kernelDTB = true;
-    kernelAutoModules = false;
-    kernelExtraConfig = ''
-      # Raspberry Pi 3 stuff. Not needed for kernels >= 4.10.
-      ARCH_BCM2835 y
-      BCM2835_MBOX y
-      BCM2835_WDT y
-      BRCMFMAC m
-      DMA_BCM2835 m
-      DRM_VC4 m
-      I2C_BCM2835 m
-      PWM_BCM2835 m
-      RASPBERRYPI_FIRMWARE y
-      RASPBERRYPI_POWER y
-      SERIAL_8250_BCM2835AUX y
-      SERIAL_8250_EXTENDED y
-      SERIAL_8250_SHARE_IRQ y
-      SND_BCM2835_SOC_I2S m
-      SPI_BCM2835AUX m
-      SPI_BCM2835 m
-
-      # Cavium ThunderX stuff.
-      PCI_HOST_THUNDER_ECAM y
-      THUNDER_NIC_RGX y
-      THUNDER_NIC_BGX y
-      THUNDER_NIC_PF y
-      THUNDER_NIC_VF y
-    '';
-    uboot = null;
-    kernelTarget = "Image";
-    gcc = {
-      arch = "armv8-a";
-    };
-  };
-
-  selectPlatformBySystem = system: {
-      "i686-linux" = pc32;
-      "x86_64-linux" = pc64;
-      "armv5tel-linux" = sheevaplug;
-      "armv6l-linux" = raspberrypi;
-      "armv7l-linux" = armv7l-hf-multiplatform;
-      "aarch64-linux" = aarch64-multiplatform;
-      "mips64el-linux" = fuloong2f_n32;
-    }.${system} or pcBase;
-}
diff --git a/pkgs/top-level/pure-packages.nix b/pkgs/top-level/pure-packages.nix
index 005e09cc003..a1600888032 100644
--- a/pkgs/top-level/pure-packages.nix
+++ b/pkgs/top-level/pure-packages.nix
@@ -1,4 +1,4 @@
-{ callPackage }:
+{ callPackage, octaveHg }:
 
 rec {
   audio = callPackage ../development/pure-modules/audio { };
@@ -19,7 +19,7 @@ rec {
   lv2 = callPackage ../development/pure-modules/lv2 { };
   midi = callPackage ../development/pure-modules/midi { };
   mpfr = callPackage ../development/pure-modules/mpfr { };
-  octave = callPackage ../development/pure-modules/octave { };
+  octave = callPackage ../development/pure-modules/octave { octave = octaveHg; };
   odbc = callPackage ../development/pure-modules/odbc { };
   pandoc = callPackage ../development/pure-modules/pandoc { };
   rational = callPackage ../development/pure-modules/rational { };
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 5bb2b28d001..e2a615e7a0f 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -118,6 +118,8 @@ in {
     };
   };
 
+  phonenumbers = callPackage ../development/python-modules/phonenumbers { };
+
   agate-dbf = buildPythonPackage rec {
     name = "agate-dbf-0.1.0";
     disabled = isPy3k;
@@ -175,6 +177,10 @@ in {
 
   # packages defined elsewhere
 
+  bap = callPackage ../development/python-modules/bap {
+    bap = pkgs.ocamlPackages_4_02.bap;
+  };
+
   blivet = callPackage ../development/python-modules/blivet { };
 
   breathe = callPackage ../development/python-modules/breathe { };
@@ -1621,11 +1627,11 @@ in {
 
   awscli = buildPythonPackage rec {
     name = "awscli-${version}";
-    version = "1.11.45";
+    version = "1.11.75";
       namePrefix = "";
       src = pkgs.fetchurl {
       url = "mirror://pypi/a/awscli/${name}.tar.gz";
-      sha256 = "0sv9dw4zsra8fm7ddbnwhlh80w534z4h8llz2p8asssaaj5nq2ya";
+      sha256 = "0bkjyrgb78f29vvr8j2id0386d30w340wrl7krwiha725c9y3pz1";
     };
 
     # No tests included
@@ -2518,6 +2524,8 @@ in {
     doCheck = false; # lazy packager
   };
 
+  csscompressor = callPackage ../development/python-modules/csscompressor.nix {};
+
   csvkit = buildPythonPackage rec {
     name = "csvkit-${version}";
     version = "0.9.1";
@@ -2980,11 +2988,10 @@ in {
         to do lots of things, you're probably outside the use cases. Either
         trust those users, or don't.
       '';
-      homepage = https://github.com/jsocol/bleach;
-      downloadPage = https://github.com/jsocol/bleach/releases;
+      homepage = https://github.com/mozilla/bleach;
+      downloadPage = https://github.com/mozilla/bleach/releases;
       license = licenses.asl20;
       maintainers = with maintainers; [ prikhi ];
-      platforms = platforms.linux;
     };
   };
 
@@ -3183,6 +3190,9 @@ in {
       runHook postCheck
     '';
 
+    # Network access
+    doCheck = false;
+
     meta = {
       homepage = https://github.com/boto/boto3;
       license = stdenv.lib.licenses.asl20;
@@ -3196,11 +3206,11 @@ in {
   };
 
   botocore = buildPythonPackage rec {
-    version = "1.5.8"; # This version is required by awscli
+    version = "1.5.38"; # This version is required by awscli
     name = "botocore-${version}";
     src = pkgs.fetchurl {
       url = "mirror://pypi/b/botocore/${name}.tar.gz";
-      sha256 = "1qhrq2l9kvhi3gnrgwqhvy42aqbsk93j8mfr4ixqx18yqgbnylvz";
+      sha256 = "04cvsi8g8p3r5vr3vr2nb5ldyrsm0y4c2phimabbpk33wv718qyx";
     };
 
     propagatedBuildInputs =
@@ -7739,6 +7749,9 @@ in {
     };
   });
 
+
+  htmlmin = callPackage ../development/python-modules/htmlmin.nix {};
+
   httpauth = buildPythonPackage rec {
     version = "0.3";
     name = "httpauth-${version}";
@@ -10331,12 +10344,12 @@ in {
 
   django_1_9 = buildPythonPackage rec {
     name = "Django-${version}";
-    version = "1.9.12";
+    version = "1.9.13";
     disabled = pythonOlder "2.7";
 
     src = pkgs.fetchurl {
       url = "http://www.djangoproject.com/m/releases/1.9/${name}.tar.gz";
-      sha256 = "0daaz2rp1rwwpzm5l29wcgg1gbw9yqzcv9x2dsjfz29n806q685x";
+      sha256 = "079zspfsvfnv9wf6qvg8xmz1m23d0723p2nqyk8gfqb012jxn1y0";
     };
 
     # patch only $out/bin to avoid problems with starter templates (see #3134)
@@ -10355,37 +10368,12 @@ in {
 
   django_1_8 = buildPythonPackage rec {
     name = "Django-${version}";
-    version = "1.8.17";
+    version = "1.8.18";
     disabled = pythonOlder "2.7";
 
     src = pkgs.fetchurl {
       url = "http://www.djangoproject.com/m/releases/1.8/${name}.tar.gz";
-      sha256 = "01zb2l0gcdb2wgxmvvrhjj9ccdj1mfhn6zhqcdq04m7lzi4dc6q2";
-    };
-
-    # too complicated to setup
-    doCheck = false;
-
-    # patch only $out/bin to avoid problems with starter templates (see #3134)
-    postFixup = ''
-      wrapPythonProgramsIn $out/bin "$out $pythonPath"
-    '';
-
-    meta = {
-      description = "A high-level Python Web framework";
-      homepage = https://www.djangoproject.com/;
-    };
-  };
-
-
-  django_1_7 = buildPythonPackage rec {
-    name = "Django-${version}";
-    version = "1.7.11";
-    disabled = pythonOlder "2.7";
-
-    src = pkgs.fetchurl {
-      url = "http://www.djangoproject.com/m/releases/1.7/${name}.tar.gz";
-      sha256 = "18arf0zr98q2gxhimm2fgh0avwcdax1mcnps0cyn06wgrr7i8f90";
+      sha256 = "1ishvbihr9pain0486qafb18dnb7v2ppq34nnx1s8f95bvfiqqf7";
     };
 
     # too complicated to setup
@@ -10593,7 +10581,7 @@ in {
       sha256 = "0wxvpmjdzk0aajk33y4himn3wqjx7k0aqlka9j8ay3yfav78bdq0";
     };
 
-    propagatedBuildInputs = with self; [ django_1_7 ];
+    propagatedBuildInputs = with self; [ django ];
 
     # tests appear to be broken on 0.6.1 at least
     doCheck = ( version != "0.6.1" );
@@ -13290,6 +13278,10 @@ in {
       license = with licenses; [ lgpl21 ];
     };
   };
+  
+  iso-639 = callPackage ../development/python-modules/iso-639 {};
+  
+  iso3166 = callPackage ../development/python-modules/iso3166 {};
 
   iso8601 = buildPythonPackage rec {
     name = "iso8601-${version}";
@@ -20695,11 +20687,11 @@ in {
   };
 
   PyICU = buildPythonPackage rec {
-    name = "PyICU-1.9.5";
+    name = "PyICU-1.9.6";
 
     src = pkgs.fetchurl {
       url = "mirror://pypi/P/PyICU/${name}.tar.gz";
-      sha256 = "16rmxy9y0qhqqna2v49i7nzwm09as699rbyvh4raw7w602w55c3k";
+      sha256 = "0l151zhhyiazzdz8skpxgrw1x4nqa9pq2cwni6d97anmg97i7hn5";
     };
 
     buildInputs = [ pkgs.icu ];
@@ -20869,16 +20861,18 @@ in {
 
   pyocr = buildPythonPackage rec {
     name = "pyocr-${version}";
-    version = "0.4.4";
+    version = "0.4.6";
 
     # Don't fetch from PYPI because it doesn't contain tests.
     src = pkgs.fetchFromGitHub {
       owner = "jflesch";
       repo = "pyocr";
       rev = version;
-      sha256 = "09s7dxin8ams0f3xab60f45l3nn236a8win9yfyq9aqy9mm946ak";
+      sha256 = "0amyhkkm400qzbw65ivyzrzxl2r7vxqgsgqm7ml95m7gwkwhnzz0";
     };
 
+    patches = [ ../development/python-modules/pyocr-tesseract.patch ];
+
     postPatch = ''
       sed -i \
         -e 's,^\(TESSERACT_CMD *= *\).*,\1"${pkgs.tesseract}/bin/tesseract",' \
@@ -22345,7 +22339,7 @@ in {
     };
 
     buildInputs = with self; [ nose ] ++ optionals isPy27 [mock];
-    propagatedBuildInputs = with self; [traitlets jupyter_core jupyter_client pygments ipykernel pyqt4];
+    propagatedBuildInputs = with self; [traitlets jupyter_core jupyter_client pygments ipykernel pyqt5];
 
     # : cannot connect to X server
     doCheck = false;
@@ -23157,6 +23151,8 @@ in {
     };
   };
 
+  typeguard = callPackage ../development/python-modules/typeguard { };
+
   ruamel_yaml = buildPythonPackage rec {
     name = "ruamel.yaml-${version}";
     version = "0.13.7";
@@ -23184,7 +23180,6 @@ in {
   runsnakerun = buildPythonPackage rec {
     name = "runsnakerun-2.0.4";
 
-
     src = pkgs.fetchurl {
       url = "mirror://pypi/R/RunSnakeRun/RunSnakeRun-2.0.4.tar.gz";
       sha256 = "61d03a13f1dcb3c1829f5a146da1fe0cc0e27947558a51e848b6d469902815ef";
@@ -28923,8 +28918,7 @@ EOF
     };
 
     propagatedBuildInputs = with self; [ cffi ];
-    buildInputs = [ pkgs.libspotify ]
-      ++ stdenv.lib.optional stdenv.isDarwin pkgs.install_name_tool;
+    buildInputs = [ pkgs.libspotify ];
 
     # python zip complains about old timestamps
     preConfigure = ''
@@ -32205,6 +32199,12 @@ EOF
 
   nitpick = callPackage ../applications/version-management/nitpick { };
 
+  pluginbase = callPackage ../development/python-modules/pluginbase { };
+
+  node-semver = callPackage ../development/python-modules/node-semver { };
+
+  distro = callPackage ../development/python-modules/distro { };
+
 });
 
 in fix' (extends overrides packages)
diff --git a/pkgs/top-level/release-cross.nix b/pkgs/top-level/release-cross.nix
index f9382985fcd..82428972699 100644
--- a/pkgs/top-level/release-cross.nix
+++ b/pkgs/top-level/release-cross.nix
@@ -1,4 +1,3 @@
-
 { # The platforms for which we build Nixpkgs.
   supportedSystems ? [ builtins.currentSystem ]
 , # Strip most of attributes when evaluating to spare memory usage
@@ -8,8 +7,6 @@
 with import ./release-lib.nix { inherit supportedSystems scrubJobs; };
 
 let
-  inherit (pkgs) lib;
-
   nativePlatforms = linux;
 
   /* Basic list of packages to cross-build */
@@ -50,11 +47,11 @@ in
     # cause false negatives.
     testEqualOne = path: system: let
       f = path: attrs: builtins.toString (lib.getAttrFromPath path (allPackages attrs));
-    in assert
+    in assertTrue (
         f path { inherit system; }
         ==
-        f (["buildPackages"] ++ path) { inherit system crossSystem; };
-      true;
+        f (["buildPackages"] ++ path) { inherit system crossSystem; }
+      );
 
     testEqual = path: systems: forAllSupportedSystems systems (testEqualOne path);
 
@@ -80,7 +77,7 @@ in
       arch = "arm";
       float = "soft";
       withTLS = true;
-      platform = pkgs.platforms.sheevaplug;
+      platform = lib.systems.platforms.sheevaplug;
       libc = "glibc";
       openssl.system = "linux-generic32";
     };
@@ -139,16 +136,7 @@ in
       float = "hard";
       withTLS = true;
       libc = "glibc";
-      platform = {
-        name = "fuloong-minipc";
-        kernelMajor = "2.6";
-        kernelBaseConfig = "lemote2f_defconfig";
-        kernelHeadersBaseConfig = "fuloong2e_defconfig";
-        uboot = null;
-        kernelArch = "mips";
-        kernelAutoModules = false;
-        kernelTarget = "vmlinux";
-      };
+      platform = lib.systems.platforms.fuloong2f_n32;
       openssl.system = "linux-generic32";
       gcc = {
         arch = "loongson2f";
@@ -172,7 +160,7 @@ in
       fpu = "vfp";
       withTLS = true;
       libc = "glibc";
-      platform = pkgs.platforms.raspberrypi;
+      platform = lib.systems.platforms.raspberrypi;
       openssl.system = "linux-generic32";
       gcc = {
         arch = "armv6";
diff --git a/pkgs/top-level/release-lib.nix b/pkgs/top-level/release-lib.nix
index a6e574a7d11..ddc449ae59c 100644
--- a/pkgs/top-level/release-lib.nix
+++ b/pkgs/top-level/release-lib.nix
@@ -1,19 +1,20 @@
 { supportedSystems
 , packageSet ? (import ../..)
 , scrubJobs ? true
+, # Attributes passed to nixpkgs. Don't build packages marked as unfree.
+  nixpkgsArgs ? { config = { allowUnfree = false; inHydra = true; }; }
 }:
 
-with import ../../lib;
+let
+  lib = import ../../lib;
+in with lib;
 
 rec {
 
-  # Ensure that we don't build packages marked as unfree.
-  allPackages = args: packageSet (args // {
-    config.allowUnfree = false;
-    config.inHydra = true;
-  });
+  allPackages = args: packageSet (args // nixpkgsArgs);
 
   pkgs = pkgsFor "x86_64-linux";
+  inherit lib;
 
 
   hydraJob' = if scrubJobs then hydraJob else id;
@@ -43,6 +44,11 @@ rec {
   pkgs_x86_64_cygwin = allPackages { system = "x86_64-cygwin"; };
 
 
+  assertTrue = bool:
+    if bool
+    then pkgs.runCommand "evaluated-to-true" {} "touch $out"
+    else pkgs.runCommand "evaluated-to-false" {} "false";
+
   /* The working or failing mails for cross builds will be sent only to
      the following maintainers, as most package maintainers will not be
      interested in the result of cross building a package. */
diff --git a/pkgs/top-level/release-python.nix b/pkgs/top-level/release-python.nix
index 0fbd5e50d12..3bc252e440f 100644
--- a/pkgs/top-level/release-python.nix
+++ b/pkgs/top-level/release-python.nix
@@ -3,14 +3,14 @@
    $ hydra-eval-jobs pkgs/top-level/release-python.nix
 */
 
-{ nixpkgs ? { outPath = (import ../.. {}).lib.cleanSource ../..; revCount = 1234; shortRev = "abcdef"; }
+{ nixpkgs ? { outPath = (import ../../lib).cleanSource ../..; revCount = 1234; shortRev = "abcdef"; }
 , officialRelease ? false
 , # The platforms for which we build Nixpkgs.
   supportedSystems ? [ "x86_64-linux" ]
 }:
 
-with import ../../lib;
 with import ./release-lib.nix {inherit supportedSystems; };
+with lib;
 
 let
   packagePython = mapAttrs (name: value:
diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix
index b12eda6f150..f329f2460d7 100644
--- a/pkgs/top-level/release-small.nix
+++ b/pkgs/top-level/release-small.nix
@@ -1,7 +1,7 @@
 /* A small release file, with few packages to be built.  The aim is to reduce
    the load on Hydra when testing the `stdenv-updates' branch. */
 
-{ nixpkgs ? { outPath = (import ../.. {}).lib.cleanSource ../..; revCount = 1234; shortRev = "abcdef"; }
+{ nixpkgs ? { outPath = (import ../../lib).cleanSource ../..; revCount = 1234; shortRev = "abcdef"; }
 , supportedSystems ? [ "x86_64-linux" "i686-linux" "x86_64-darwin" ]
 }:
 
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index b5207879a5e..cf4d54fe049 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -9,27 +9,41 @@
    $ nix-build pkgs/top-level/release.nix -A coreutils.x86_64-linux
 */
 
-{ nixpkgs ? { outPath = (import ../.. {}).lib.cleanSource ../..; revCount = 1234; shortRev = "abcdef"; }
+{ nixpkgs ? { outPath = (import ../../lib).cleanSource ../..; revCount = 1234; shortRev = "abcdef"; }
 , officialRelease ? false
 , # The platforms for which we build Nixpkgs.
   supportedSystems ? [ "x86_64-linux" "i686-linux" "x86_64-darwin" "aarch64-linux" ]
 , # Strip most of attributes when evaluating to spare memory usage
   scrubJobs ? true
+, # Attributes passed to nixpkgs. Don't build packages marked as unfree.
+  nixpkgsArgs ? { config = { allowUnfree = false; inHydra = true; }; }
 }:
 
-with import ./release-lib.nix { inherit supportedSystems scrubJobs; };
+with import ./release-lib.nix { inherit supportedSystems scrubJobs nixpkgsArgs; };
 
 let
-
-  lib = pkgs.lib;
-
   jobs =
     { tarball = import ./make-tarball.nix { inherit pkgs nixpkgs officialRelease; };
 
       metrics = import ./metrics.nix { inherit pkgs nixpkgs; };
 
       manual = import ../../doc;
-      lib-tests = import ../../lib/tests/release.nix { inherit nixpkgs; };
+      lib-tests = import ../../lib/tests/release.nix { inherit nixpkgs supportedSystems scrubJobs; };
+
+      darwin-tested = pkgs.releaseTools.aggregate
+        { name = "nixpkgs-darwin-${jobs.tarball.version}";
+          meta.description = "Release-critical builds for the Nixpkgs darwin channel";
+          constituents =
+            [ jobs.tarball
+              jobs.stdenv.x86_64-darwin
+              jobs.ghc.x86_64-darwin
+              jobs.cabal2nix.x86_64-darwin
+              jobs.ruby.x86_64-darwin
+              jobs.python.x86_64-darwin
+              jobs.rustc.x86_64-darwin
+              jobs.go.x86_64-darwin
+            ];
+        };
 
       unstable = pkgs.releaseTools.aggregate
         { name = "nixpkgs-${jobs.tarball.version}";
@@ -38,7 +52,6 @@ let
             [ jobs.tarball
               jobs.metrics
               jobs.manual
-              jobs.lib-tests
               jobs.stdenv.x86_64-linux
               jobs.stdenv.i686-linux
               jobs.stdenv.x86_64-darwin
@@ -65,7 +78,8 @@ let
               jobs.git.x86_64-darwin
               jobs.mysql.x86_64-darwin
               jobs.vim.x86_64-darwin
-            ] ++ lib.collect lib.isDerivation jobs.stdenvBootstrapTools;
+            ] ++ lib.collect lib.isDerivation jobs.stdenvBootstrapTools
+              ++ lib.collect lib.isDerivation jobs.lib-tests;
         };
     } // (lib.optionalAttrs (builtins.elem "i686-linux" supportedSystems) {
       stdenvBootstrapTools.i686-linux =
diff --git a/pkgs/top-level/rust-packages.nix b/pkgs/top-level/rust-packages.nix
index 6ca18ed4668..7f866f69660 100644
--- a/pkgs/top-level/rust-packages.nix
+++ b/pkgs/top-level/rust-packages.nix
@@ -7,9 +7,9 @@
 { runCommand, fetchFromGitHub, git }:
 
 let
-  version = "2017-03-29";
-  rev = "d9dbb2fc117bf730d1f54b090b3af407e8e5ff20";
-  sha256 = "1vrzr4v8qp5jy3xmqrcyk9naik3rngk8hzxif42y687ncppzrsdl";
+  version = "2017-04-13";
+  rev = "5758a926a647716bd650978ad53aeb4a0c5f9b45";
+  sha256 = "1fnwh62k8fbflciv1qg3r9fsqn1xy72flyv15ii3mpja2vqzkdi2";
 
   src = fetchFromGitHub {
       inherit rev;
@@ -44,7 +44,7 @@ runCommand "rustRegistry-${version}-${builtins.substring 0 7 rev}" { inherit src
   $git config --local user.email "example@example.com"
   $git config --local user.name "example"
   $git add .
-  $git commit -m 'Rust registry commit'
+  $git commit --quiet -m 'Rust registry commit'
 
   touch $out/touch . "$out/.cargo-index-lock"
 ''