summary refs log tree commit diff
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2014-10-16 15:16:50 +0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2014-10-16 15:16:50 +0200
commit09dc132e04c8a69581becb56a1c5e1bfee3aef7e (patch)
tree186745725ff42ea953572f38eaca71161fee9406
parent3c6efec2c09e9389eb973ec5e45cb8e04b35f8aa (diff)
parente39bf7a7043a466761754c423b3d5783a320a6ce (diff)
downloadnixpkgs-09dc132e04c8a69581becb56a1c5e1bfee3aef7e.tar
nixpkgs-09dc132e04c8a69581becb56a1c5e1bfee3aef7e.tar.gz
nixpkgs-09dc132e04c8a69581becb56a1c5e1bfee3aef7e.tar.bz2
nixpkgs-09dc132e04c8a69581becb56a1c5e1bfee3aef7e.tar.lz
nixpkgs-09dc132e04c8a69581becb56a1c5e1bfee3aef7e.tar.xz
nixpkgs-09dc132e04c8a69581becb56a1c5e1bfee3aef7e.tar.zst
nixpkgs-09dc132e04c8a69581becb56a1c5e1bfee3aef7e.zip
Merge remote-tracking branch 'origin/master' into staging
Conflicts:
	pkgs/development/libraries/poppler/default.nix
-rw-r--r--.travis.yml4
-rw-r--r--doc/meta.xml7
-rw-r--r--doc/stdenv.xml17
-rw-r--r--lib/licenses.nix5
-rw-r--r--lib/maintainers.nix7
-rwxr-xr-xmaintainers/scripts/travis-nox-review-pr.sh51
-rw-r--r--maintainers/scripts/vanity-manual-equalities.txt3
-rwxr-xr-xmaintainers/scripts/vanity.sh67
-rw-r--r--nixos/modules/config/pulseaudio.nix5
-rw-r--r--nixos/modules/misc/ids.nix8
-rwxr-xr-xnixos/modules/module-list.nix3
-rw-r--r--nixos/modules/rename.nix1
-rw-r--r--nixos/modules/services/logging/logrotate.nix1
-rw-r--r--nixos/modules/services/logging/logstash.nix69
-rw-r--r--nixos/modules/services/logging/syslog-ng.nix38
-rw-r--r--nixos/modules/services/misc/redmine.nix222
-rw-r--r--nixos/modules/services/network-filesystems/nfsd.nix10
-rw-r--r--nixos/modules/services/networking/prosody.nix280
-rw-r--r--nixos/modules/services/networking/seeks.nix75
-rw-r--r--nixos/modules/services/scheduling/cron.nix26
-rw-r--r--nixos/modules/services/x11/window-managers/default.nix3
-rw-r--r--nixos/modules/services/x11/window-managers/stumpwm.nix30
-rw-r--r--nixos/modules/system/boot/stage-1-init.sh8
-rw-r--r--nixos/modules/system/boot/stage-1.nix3
-rw-r--r--nixos/modules/tasks/filesystems/zfs.nix1
-rw-r--r--nixos/modules/tasks/network-interfaces.nix23
-rw-r--r--nixos/modules/virtualisation/amazon-image.nix4
-rw-r--r--nixos/modules/virtualisation/qemu-vm.nix2
-rw-r--r--nixos/release-combined.nix2
-rw-r--r--nixos/release-small.nix91
-rw-r--r--nixos/release.nix16
-rw-r--r--nixos/tests/bittorrent.nix4
-rw-r--r--nixos/tests/installer.nix64
-rw-r--r--pkgs/applications/audio/guitarix/default.nix4
-rw-r--r--pkgs/applications/audio/moc/default.nix2
-rw-r--r--pkgs/applications/audio/yoshimi/default.nix4
-rw-r--r--pkgs/applications/editors/idea/default.nix50
-rw-r--r--pkgs/applications/editors/sigil/default.nix66
-rw-r--r--pkgs/applications/editors/yi/yi-custom-cabal/LICENSE24
-rw-r--r--pkgs/applications/editors/yi/yi-custom-cabal/yi-custom.cabal17
-rw-r--r--pkgs/applications/editors/yi/yi-custom.nix42
-rw-r--r--pkgs/applications/editors/yi/yi.nix68
-rw-r--r--pkgs/applications/gis/qgis/default.nix3
-rw-r--r--pkgs/applications/graphics/dia/default.nix6
-rw-r--r--pkgs/applications/graphics/dia/glib-top-level-header.patch471
-rw-r--r--pkgs/applications/graphics/f-spot/default.nix2
-rw-r--r--pkgs/applications/graphics/ocrad/default.nix4
-rw-r--r--pkgs/applications/graphics/sxiv/146.patch25
-rw-r--r--pkgs/applications/graphics/sxiv/default.nix12
-rw-r--r--pkgs/applications/graphics/ufraw/default.nix4
-rw-r--r--pkgs/applications/misc/cdrtools/default.nix2
-rw-r--r--pkgs/applications/misc/cura/default.nix4
-rw-r--r--pkgs/applications/misc/gphoto2/default.nix4
-rw-r--r--pkgs/applications/misc/ikiwiki/default.nix4
-rw-r--r--pkgs/applications/misc/keepass/default.nix4
-rw-r--r--pkgs/applications/misc/roxterm/default.nix2
-rw-r--r--pkgs/applications/misc/sweethome3d/default.nix10
-rw-r--r--pkgs/applications/misc/taffybar/default.nix15
-rw-r--r--pkgs/applications/misc/xmobar/default.nix16
-rw-r--r--pkgs/applications/misc/xterm/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/default.nix5
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/sources.nix24
-rw-r--r--pkgs/applications/networking/browsers/firefox/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/links/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/vimb/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/freetalk/default.nix74
-rw-r--r--pkgs/applications/networking/instant-messengers/gajim/default.nix15
-rw-r--r--pkgs/applications/networking/iptraf/default.nix2
-rw-r--r--pkgs/applications/networking/irc/irssi/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/claws-mail/default.nix86
-rw-r--r--pkgs/applications/networking/mailreaders/mailpile/default.nix10
-rw-r--r--pkgs/applications/networking/mumble/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/opentracker/default.nix24
-rw-r--r--pkgs/applications/networking/sync/akunambol/default.nix16
-rw-r--r--pkgs/applications/networking/sync/akunambol/non-latin.diff17
-rw-r--r--pkgs/applications/office/tagainijisho/default.nix22
-rw-r--r--pkgs/applications/science/astronomy/xplanet/giflib.patch19
-rw-r--r--pkgs/applications/science/electronics/fritzing/default.nix30
-rw-r--r--pkgs/applications/science/logic/coq/HEAD.nix8
-rw-r--r--pkgs/applications/science/logic/cvc4/default.nix23
-rw-r--r--pkgs/applications/science/logic/why3/default.nix16
-rw-r--r--pkgs/applications/science/math/maxima/default.nix4
-rw-r--r--pkgs/applications/version-management/darcs/default.nix3
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex/default.nix1
-rw-r--r--pkgs/applications/version-management/mercurial/default.nix4
-rw-r--r--pkgs/applications/version-management/rcs/default.nix4
-rw-r--r--pkgs/applications/version-management/redmine/2002_FHS_through_env_vars.patch100
-rw-r--r--pkgs/applications/version-management/redmine/2003_externalize_session_config.patch72
-rw-r--r--pkgs/applications/version-management/redmine/2004_FHS_plugins_assets.patch11
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile.lock152
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile.nix332
-rw-r--r--pkgs/applications/version-management/redmine/README6
-rw-r--r--pkgs/applications/version-management/redmine/bootstrap.nix45
-rw-r--r--pkgs/applications/version-management/redmine/default.nix73
-rw-r--r--pkgs/applications/version-management/redmine/generate_nix_requirements.rb56
-rw-r--r--pkgs/applications/video/kdenlive/default.nix4
-rw-r--r--pkgs/applications/video/miro/default.nix16
-rw-r--r--pkgs/applications/video/smplayer/basegui.cpp.patch11
-rw-r--r--pkgs/applications/video/smplayer/default.nix6
-rw-r--r--pkgs/applications/video/smtube/default.nix23
-rw-r--r--pkgs/applications/video/xbmc/plugins.nix26
-rw-r--r--pkgs/applications/window-managers/awesome/default.nix6
-rw-r--r--pkgs/applications/window-managers/stumpwm/contrib.nix31
-rw-r--r--pkgs/applications/window-managers/stumpwm/default.nix41
-rw-r--r--pkgs/data/documentation/man-pages/default.nix4
-rw-r--r--pkgs/data/misc/poppler-data/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/3.12/apps/pomodoro/default.nix16
-rw-r--r--pkgs/desktops/gnome-3/3.12/misc/gpaste/default.nix4
-rw-r--r--pkgs/desktops/kde-4.12/applications/kate.nix11
-rw-r--r--pkgs/desktops/kde-4.12/applications/konsole.nix11
-rw-r--r--pkgs/desktops/kde-4.12/default.nix44
-rw-r--r--pkgs/desktops/kde-4.12/files/kde-wallpapers-buildsystem.patch17
-rw-r--r--pkgs/desktops/kde-4.12/files/kdelibs-cve-2014-5033.patch36
-rw-r--r--pkgs/desktops/kde-4.12/files/polkit-install.patch12
-rw-r--r--pkgs/desktops/kde-4.12/kactivities.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kde-base-artwork.nix14
-rw-r--r--pkgs/desktops/kde-4.12/kde-baseapps/kde-baseapps.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kde-package/4.12.4.nix444
-rw-r--r--pkgs/desktops/kde-4.12/kde-package/default.nix129
-rwxr-xr-xpkgs/desktops/kde-4.12/kde-package/kde-manifest.sh146
-rw-r--r--pkgs/desktops/kde-4.12/kde-package/kde-submodules.xslt22
-rw-r--r--pkgs/desktops/kde-4.12/kde-runtime.nix24
-rw-r--r--pkgs/desktops/kde-4.12/kde-wallpapers.nix17
-rw-r--r--pkgs/desktops/kde-4.12/kde-workspace.nix46
-rw-r--r--pkgs/desktops/kde-4.12/kdeaccessibility/jovie.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeaccessibility/kaccessible.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeaccessibility/kmag.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdeaccessibility/kmousetool.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeaccessibility/kmouth.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeadmin/kcron.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeadmin/ksystemlog.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeadmin/kuser.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeartwork/ColorSchemes.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kdeartwork/FindXscreensaver.cmake73
-rw-r--r--pkgs/desktops/kde-4.12/kdeartwork/HighResolutionWallpapers.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kdeartwork/IconThemes.nix13
-rw-r--r--pkgs/desktops/kde-4.12/kdeartwork/WeatherWallpapers.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kdeartwork/desktopthemes.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kdeartwork/emoticons.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kdeartwork/kscreensaver.nix15
-rw-r--r--pkgs/desktops/kde-4.12/kdeartwork/kwin-styles.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeartwork/styles.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kdeartwork/wallpapers.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kdebindings/perlqt.nix14
-rw-r--r--pkgs/desktops/kde-4.12/kdebindings/pykde4.nix32
-rw-r--r--pkgs/desktops/kde-4.12/kdebindings/qtruby-install-prefix.patch15
-rw-r--r--pkgs/desktops/kde-4.12/kdebindings/qtruby.nix20
-rw-r--r--pkgs/desktops/kde-4.12/kdebindings/smokegen-CMakeLists.txt-nix.patch13
-rw-r--r--pkgs/desktops/kde-4.12/kdebindings/smokegen-nix.patch13
-rw-r--r--pkgs/desktops/kde-4.12/kdebindings/smokegen.nix13
-rw-r--r--pkgs/desktops/kde-4.12/kdebindings/smokekde.nix19
-rw-r--r--pkgs/desktops/kde-4.12/kdebindings/smokeqt.nix15
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/analitza.nix8
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/blinken.nix8
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/cantor.nix13
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/kalgebra.nix8
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/kalzium.nix13
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/kanagram.nix8
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/kbruch.nix8
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/kgeography.nix8
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/khangman.nix8
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/kig.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/kiten.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/klettres.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/kmplot.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/kstars.nix14
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/ktouch.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/kturtle.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/kwordquiz.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/libkdeedu.nix8
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/marble.nix12
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/pairs.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/parley.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/rocs.nix16
-rw-r--r--pkgs/desktops/kde-4.12/kdeedu/step.nix12
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/bomber.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/bovo.nix8
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/granatier.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kajongg.nix13
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kapman.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/katomic.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kblackbox.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kblocks.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kbounce.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kbreakout.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kdiamond.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kfourinline.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kgoldrunner.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kigo.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/killbots.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kiriki.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kjumpingcube.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/klickety.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/klines.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kmahjongg.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kmines.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/knavalbattle.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/knetwalk.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kolf.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kollision.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/konquest.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kpat.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kreversi.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kshisen.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/ksirk.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/ksnakeduel.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kspaceduel.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/ksquares.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/ksudoku.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/ktuberling.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/kubrick.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/libkdegames.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/libkmahjongg.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/lskat.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/palapeli.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kdegames/picmi.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/gwenview.nix15
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/kamera.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/kcolorchooser.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/kdegraphics-mobipocket.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/kdegraphics-strigi-analyzer.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/kdegraphics-thumbnailers.nix13
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/kgamma.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/kolourpaint.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/kruler.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/ksaneplugin.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/ksnapshot.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/libkdcraw.nix13
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/libkexiv2.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/libkipi.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/libksane.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/okular.nix17
-rw-r--r--pkgs/desktops/kde-4.12/kdegraphics/svgpart.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdelibs/kdelibs.nix49
-rw-r--r--pkgs/desktops/kde-4.12/kdelibs/nepomuk-core.nix20
-rw-r--r--pkgs/desktops/kde-4.12/kdelibs/nepomuk-widgets.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kdemultimedia/audiocd-kio.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdemultimedia/dragon.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdemultimedia/ffmpegthumbs.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdemultimedia/juk.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdemultimedia/kmix.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdemultimedia/kscd.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdemultimedia/libkcddb.nix8
-rw-r--r--pkgs/desktops/kde-4.12/kdemultimedia/libkcompactdisc.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdemultimedia/mplayerthumbs.nix7
-rw-r--r--pkgs/desktops/kde-4.12/kdenetwork/kdenetwork-filesharing.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdenetwork/kdenetwork-strigi-analyzers.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdenetwork/kget.nix20
-rw-r--r--pkgs/desktops/kde-4.12/kdenetwork/kopete.nix26
-rw-r--r--pkgs/desktops/kde-4.12/kdenetwork/kppp.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdenetwork/krdc.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdenetwork/krfb.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdenetwork/zeroconf-ioslave.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdepim-runtime.nix16
-rw-r--r--pkgs/desktops/kde-4.12/kdepim.nix28
-rw-r--r--pkgs/desktops/kde-4.12/kdepimlibs.nix19
-rw-r--r--pkgs/desktops/kde-4.12/kdeplasma-addons.nix23
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/cervisia.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/dolphin-plugins.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/kapptemplate.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/kcachegrind.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/kde-dev-scripts.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/kde-dev-utils.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/kdesdk-kioslaves.nix12
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/kdesdk-strigi-analyzers.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/kdesdk-thumbnailers.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/kompare.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/libkomparediff2.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/lokalize.nix13
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/okteta.nix13
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/poxml.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdesdk/umbrello.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdetoys/amor.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdetoys/kteatime.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdetoys/ktux.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/ark.nix17
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/filelight.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/kcalc.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/kcharselect.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/kdf.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/kfloppy.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/kgpg.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/kremotecontrol.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/ktimer.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/kwalletmanager.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/print-manager.nix27
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/superkaramba.nix11
-rw-r--r--pkgs/desktops/kde-4.12/kdeutils/sweeper.nix9
-rw-r--r--pkgs/desktops/kde-4.12/kdewebdev/kfilereplace.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdewebdev/kimagemapeditor.nix10
-rw-r--r--pkgs/desktops/kde-4.12/kdewebdev/klinkstatus.nix13
-rw-r--r--pkgs/desktops/kde-4.12/kdewebdev/kommander.nix9
-rw-r--r--pkgs/desktops/kde-4.12/l10n/default.nix46
-rwxr-xr-xpkgs/desktops/kde-4.12/l10n/l10n-manifest.sh32
-rw-r--r--pkgs/desktops/kde-4.12/l10n/manifest-4.12.4.nix262
-rw-r--r--pkgs/desktops/kde-4.12/oxygen-icons.nix15
-rw-r--r--pkgs/desktops/kde-4.12/support/akonadi/default.nix24
-rw-r--r--pkgs/desktops/pantheon/apps/pantheon-terminal/default.nix32
-rw-r--r--pkgs/development/arduino/arduino-core/default.nix24
-rw-r--r--pkgs/development/compilers/agda/default.nix1
-rw-r--r--pkgs/development/compilers/agda/stdlib.nix2
-rw-r--r--pkgs/development/compilers/elm/elm.nix31
-rw-r--r--pkgs/development/compilers/epic/default.nix6
-rw-r--r--pkgs/development/compilers/fsharp/default.nix4
-rw-r--r--pkgs/development/compilers/go/1.3.nix6
-rw-r--r--pkgs/development/compilers/icedtea-web/default.nix4
-rw-r--r--pkgs/development/compilers/idris/default.nix3
-rw-r--r--pkgs/development/compilers/oraclejdk/jdk8-linux.nix6
-rw-r--r--pkgs/development/compilers/rustc/hardcode_paths.HEAD.patch3
-rw-r--r--pkgs/development/compilers/rustc/head.nix18
-rw-r--r--pkgs/development/compilers/yasm/default.nix4
-rw-r--r--pkgs/development/coq-modules/bedrock/default.nix33
-rw-r--r--pkgs/development/coq-modules/containers/default.nix5
-rw-r--r--pkgs/development/coq-modules/coq-ext-lib/default.nix28
-rw-r--r--pkgs/development/coq-modules/domains/darcs_context809
-rw-r--r--pkgs/development/coq-modules/domains/default.nix26
-rw-r--r--pkgs/development/coq-modules/heq/default.nix27
-rw-r--r--pkgs/development/coq-modules/mathcomp/default.nix4
-rw-r--r--pkgs/development/coq-modules/paco/default.nix31
-rw-r--r--pkgs/development/coq-modules/ssreflect/default.nix16
-rw-r--r--pkgs/development/coq-modules/tlc/default.nix29
-rw-r--r--pkgs/development/coq-modules/ynot/default.nix32
-rw-r--r--pkgs/development/interpreters/clisp/2.44.1.nix1
-rw-r--r--pkgs/development/interpreters/perl/5.20/default.nix6
-rw-r--r--pkgs/development/interpreters/php/5.3.nix4
-rw-r--r--pkgs/development/interpreters/php/5.4.nix4
-rw-r--r--pkgs/development/interpreters/pure/default.nix61
-rw-r--r--pkgs/development/interpreters/pypy/2.4/default.nix3
-rw-r--r--pkgs/development/interpreters/python/2.6/default.nix55
-rw-r--r--pkgs/development/interpreters/python/2.7/default.nix68
-rw-r--r--pkgs/development/interpreters/python/2.7/remove-avoid-daemon-thread-shutdown.patch170
-rw-r--r--pkgs/development/interpreters/python/3.4/default.nix6
-rw-r--r--pkgs/development/interpreters/python/3.4/issue21121-3.patch86
-rw-r--r--pkgs/development/interpreters/python/wrapper.nix7
-rw-r--r--pkgs/development/interpreters/spidermonkey/185-1.0.0.nix17
-rw-r--r--pkgs/development/interpreters/spidermonkey/findvanilla.patch19
-rw-r--r--pkgs/development/libraries/asio/default.nix4
-rw-r--r--pkgs/development/libraries/box2d/2.0.1.nix1
-rw-r--r--pkgs/development/libraries/ccrtp/default.nix6
-rw-r--r--pkgs/development/libraries/celt/0.5.1.nix1
-rw-r--r--pkgs/development/libraries/celt/0.7.nix1
-rw-r--r--pkgs/development/libraries/clearsilver/default.nix2
-rw-r--r--pkgs/development/libraries/concurrencykit/default.nix4
-rw-r--r--pkgs/development/libraries/dclib/default.nix2
-rw-r--r--pkgs/development/libraries/dlib/default.nix45
-rw-r--r--pkgs/development/libraries/eigen/2.0.nix1
-rw-r--r--pkgs/development/libraries/fox/default.nix2
-rw-r--r--pkgs/development/libraries/gdcm/default.nix38
-rw-r--r--pkgs/development/libraries/geoip/default.nix4
-rw-r--r--pkgs/development/libraries/glm/default.nix4
-rw-r--r--pkgs/development/libraries/granite/default.nix21
-rw-r--r--pkgs/development/libraries/haskell/Boolean/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/ChasingBottoms/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/CouchDB/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/DAV/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/Extra/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/GLUtil/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/HSH/default.nix11
-rw-r--r--pkgs/development/libraries/haskell/HaTeX/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/HandsomeSoup/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/HaskellNet-SSL/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/HaskellNet/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/MonadRandom/0.2.0.1.nix1
-rw-r--r--pkgs/development/libraries/haskell/NumInstances/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/Thrift/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/WAVE/default.nix19
-rw-r--r--pkgs/development/libraries/haskell/acid-state/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/aeson/0.8.0.1.nix (renamed from pkgs/development/libraries/haskell/aeson/0.8.0.0.nix)4
-rw-r--r--pkgs/development/libraries/haskell/ariadne/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/auto-update/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/base-prelude/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/binary/0.7.2.2.nix (renamed from pkgs/development/libraries/haskell/binary/0.7.2.1.nix)4
-rw-r--r--pkgs/development/libraries/haskell/boomerang/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/bytestring-trie/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/cairo/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/cereal/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/citeproc-hs/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/classy-prelude/default.nix16
-rw-r--r--pkgs/development/libraries/haskell/clean-unions/default.nix16
-rw-r--r--pkgs/development/libraries/haskell/clientsession/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/clock/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/cmdargs/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/cmdtheline/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/conduit-extra/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/conduit/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/cookie/default.nix11
-rw-r--r--pkgs/development/libraries/haskell/criterion/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/derive/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/diagrams/cairo.nix4
-rw-r--r--pkgs/development/libraries/haskell/diagrams/lib.nix10
-rw-r--r--pkgs/development/libraries/haskell/diagrams/rasterific.nix4
-rw-r--r--pkgs/development/libraries/haskell/direct-sqlite/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/distributed-process/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/dsp/default.nix3
-rw-r--r--pkgs/development/libraries/haskell/dynamic-state/default.nix18
-rw-r--r--pkgs/development/libraries/haskell/ekg-carbon/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/ekg-core/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/ekg/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/enclosed-exceptions/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/esqueleto/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/exception-mtl/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/exception-transformers/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/fay-base/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/fay-text/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/fay/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/fb/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/free-game/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/generic-aeson/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/ghc-heap-view/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/ghc-mod/default.nix18
-rw-r--r--pkgs/development/libraries/haskell/ghc-vis/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/gio/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/glib/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/gtk/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/gtk2hs-buildtools/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/gtk3/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/gtksourceview2/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hS3/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/happstack/happstack-lite.nix4
-rw-r--r--pkgs/development/libraries/haskell/happstack/happstack-server.nix4
-rw-r--r--pkgs/development/libraries/haskell/haskell-names/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/haskell-packages/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/haskell-src-exts/1.15.0.1.nix (renamed from pkgs/development/libraries/haskell/haskell-src-exts/default.nix)2
-rw-r--r--pkgs/development/libraries/haskell/haskell-src-exts/1.16.0.nix (renamed from pkgs/development/libraries/haskell/haskell-src-exts/1.13.5.nix)14
-rw-r--r--pkgs/development/libraries/haskell/haskell-src-meta/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/haskelldb/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/haskintex/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/haste-compiler/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/haste-perch/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/heist/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/here/default.nix15
-rw-r--r--pkgs/development/libraries/haskell/hexpat/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hindent/default.nix11
-rw-r--r--pkgs/development/libraries/haskell/hit/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/hmatrix/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hoauth2/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hoogle/default.nix11
-rw-r--r--pkgs/development/libraries/haskell/hourglass/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hplayground/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/hsimport/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hspec-wai/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/http-conduit/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/http-reverse-proxy/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/http-streams/default.nix20
-rw-r--r--pkgs/development/libraries/haskell/httpd-shed/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/hxt/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/iCalendar/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/ieee754/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/imm/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/implicit/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/interpolate/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/intervals/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/ipprint/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/json-schema/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/jwt/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/lambdabot-utils/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/lambdabot/default.nix2
-rw-r--r--pkgs/development/libraries/haskell/language-c-quote/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/leveldb-haskell/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/libjenkins/default.nix21
-rw-r--r--pkgs/development/libraries/haskell/libmpd/0.8.0.5.nix26
-rw-r--r--pkgs/development/libraries/haskell/libmpd/default.nix (renamed from pkgs/development/libraries/haskell/libmpd/0.9.0.1.nix)0
-rw-r--r--pkgs/development/libraries/haskell/linux-inotify/default.nix16
-rw-r--r--pkgs/development/libraries/haskell/lushtags/default.nix2
-rw-r--r--pkgs/development/libraries/haskell/machines-directory/default.nix17
-rw-r--r--pkgs/development/libraries/haskell/machines-io/default.nix17
-rw-r--r--pkgs/development/libraries/haskell/machines/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/map-syntax/default.nix21
-rw-r--r--pkgs/development/libraries/haskell/monad-journal/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/monad-supply/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/monadloc-pp/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/multiarg/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/ncurses/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/network-carbon/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/network-conduit-tls/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/numeric-prelude/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/objective/default.nix17
-rw-r--r--pkgs/development/libraries/haskell/oeis/default.nix15
-rw-r--r--pkgs/development/libraries/haskell/oo-prototypes/default.nix16
-rw-r--r--pkgs/development/libraries/haskell/optparse-applicative/0.10.0.nix1
-rw-r--r--pkgs/development/libraries/haskell/optparse-applicative/0.11.0.1.nix17
-rw-r--r--pkgs/development/libraries/haskell/pango/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/parallel-io/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/parsec/3.1.7.nix (renamed from pkgs/development/libraries/haskell/parsec/3.1.6.nix)4
-rw-r--r--pkgs/development/libraries/haskell/pdf-toolbox-content/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/pdf-toolbox-core/default.nix9
-rw-r--r--pkgs/development/libraries/haskell/pdf-toolbox-document/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/persistent-mysql/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/persistent-postgresql/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/persistent-sqlite/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/persistent-template/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/persistent/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/pipes-zlib/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/pipes/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/postgresql-simple/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/primitive/0.5.3.0.nix1
-rw-r--r--pkgs/development/libraries/haskell/primitive/0.5.4.0.nix15
-rw-r--r--pkgs/development/libraries/haskell/purescript/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/pwstore-fast/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/random/1.0.1.3.nix1
-rw-r--r--pkgs/development/libraries/haskell/random/1.1.nix15
-rw-r--r--pkgs/development/libraries/haskell/rest-gen/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/rethinkdb/default.nix20
-rw-r--r--pkgs/development/libraries/haskell/sdl2/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/shell-conduit/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/shelly/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/simple-sendfile/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/snap-cors/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/snap-web-routes/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/snap/server.nix2
-rw-r--r--pkgs/development/libraries/haskell/snap/snap.nix4
-rw-r--r--pkgs/development/libraries/haskell/snaplet-redis/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/snaplet-stripe/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/sodium/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/srcloc/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/state-plus/default.nix16
-rw-r--r--pkgs/development/libraries/haskell/string-conversions/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/stylish-haskell/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/symbol/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/tagsoup/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/tasty-ant-xml/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/tasty-hunit/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/tasty-quickcheck/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/tasty-smallcheck/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/tasty/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/test-framework-th-prime/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/test-simple/default.nix16
-rw-r--r--pkgs/development/libraries/haskell/threepenny-gui/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/thyme/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/tostring/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/trivia/default.nix17
-rw-r--r--pkgs/development/libraries/haskell/twitter-conduit/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/unix-time/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/unordered-containers/0.2.5.1.nix (renamed from pkgs/development/libraries/haskell/unordered-containers/0.2.5.0.nix)4
-rw-r--r--pkgs/development/libraries/haskell/uri/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/urlencoded/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/vado/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/validation/default.nix21
-rw-r--r--pkgs/development/libraries/haskell/vector/0.10.0.1.nix1
-rw-r--r--pkgs/development/libraries/haskell/vector/0.10.11.0.nix2
-rw-r--r--pkgs/development/libraries/haskell/vector/0.10.12.1.nix23
-rw-r--r--pkgs/development/libraries/haskell/vector/0.10.9.3.nix1
-rw-r--r--pkgs/development/libraries/haskell/wai/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/warp-tls/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/warp/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/web-routes-boomerang/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/web-routes/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/webdriver/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/webkit/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/websockets/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/word-trie/default.nix18
-rw-r--r--pkgs/development/libraries/haskell/x509-system/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/x509/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/xdot/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/xml-conduit/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/yaml/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yesod-auth-hashdb/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/yesod-auth/default.nix33
-rw-r--r--pkgs/development/libraries/haskell/yesod-bin/default.nix18
-rw-r--r--pkgs/development/libraries/haskell/yesod-core/default.nix41
-rw-r--r--pkgs/development/libraries/haskell/yesod-form/default.nix17
-rw-r--r--pkgs/development/libraries/haskell/yesod-persistent/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/yesod-static/default.nix22
-rw-r--r--pkgs/development/libraries/haskell/yesod-test/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/yesod/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/yi-contrib/default.nix (renamed from pkgs/applications/editors/yi/yi-contrib.nix)15
-rw-r--r--pkgs/development/libraries/haskell/yi-language/default.nix28
-rw-r--r--pkgs/development/libraries/haskell/yi-rope/default.nix19
-rw-r--r--pkgs/development/libraries/haskell/yst/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/zeromq4-haskell/default.nix4
-rw-r--r--pkgs/development/libraries/http-parser/default.nix4
-rw-r--r--pkgs/development/libraries/id3lib/default.nix2
-rw-r--r--pkgs/development/libraries/imlib/default.nix2
-rw-r--r--pkgs/development/libraries/iso-codes/default.nix4
-rw-r--r--pkgs/development/libraries/lcms2/default.nix4
-rw-r--r--pkgs/development/libraries/ldns/default.nix4
-rw-r--r--pkgs/development/libraries/libantlr3c/default.nix19
-rw-r--r--pkgs/development/libraries/libbluray/default.nix4
-rw-r--r--pkgs/development/libraries/libbsd/default.nix6
-rw-r--r--pkgs/development/libraries/libcdio/default.nix6
-rw-r--r--pkgs/development/libraries/libdc1394/default.nix4
-rw-r--r--pkgs/development/libraries/libdvdcss/default.nix6
-rw-r--r--pkgs/development/libraries/libee/default.nix2
-rw-r--r--pkgs/development/libraries/libetpan/default.nix24
-rw-r--r--pkgs/development/libraries/libevdev/default.nix4
-rw-r--r--pkgs/development/libraries/libgdiplus/giflib.patch44
-rw-r--r--pkgs/development/libraries/libibverbs/default.nix17
-rw-r--r--pkgs/development/libraries/liblastfm/default.nix4
-rw-r--r--pkgs/development/libraries/libmtp/default.nix4
-rw-r--r--pkgs/development/libraries/libmusicbrainz/default.nix2
-rw-r--r--pkgs/development/libraries/libofx/default.nix4
-rw-r--r--pkgs/development/libraries/libowfat/default.nix18
-rw-r--r--pkgs/development/libraries/libpcap/default.nix5
-rw-r--r--pkgs/development/libraries/libqb/default.nix20
-rw-r--r--pkgs/development/libraries/librdmacm/default.nix19
-rw-r--r--pkgs/development/libraries/libsieve/default.nix16
-rw-r--r--pkgs/development/libraries/libstatgrab/default.nix18
-rw-r--r--pkgs/development/libraries/libtoxcore/default.nix3
-rw-r--r--pkgs/development/libraries/libusb/default.nix2
-rw-r--r--pkgs/development/libraries/libvirt-glib/default.nix4
-rw-r--r--pkgs/development/libraries/libvirt/default.nix7
-rw-r--r--pkgs/development/libraries/libyubikey/default.nix4
-rw-r--r--pkgs/development/libraries/loudmouth/default.nix2
-rw-r--r--pkgs/development/libraries/martyr/default.nix2
-rw-r--r--pkgs/development/libraries/nss/default.nix8
-rw-r--r--pkgs/development/libraries/nss/nss-3.17-gentoo-fixups.patch (renamed from pkgs/development/libraries/nss/nss-3.15-gentoo-fixups.patch)27
-rw-r--r--pkgs/development/libraries/openssl/default.nix4
-rw-r--r--pkgs/development/libraries/phonon-backend-gstreamer/default.nix4
-rw-r--r--pkgs/development/libraries/phonon-backend-vlc/default.nix4
-rw-r--r--pkgs/development/libraries/phonon/default.nix4
-rw-r--r--pkgs/development/libraries/poppler/default.nix4
-rw-r--r--pkgs/development/libraries/sqlite/default.nix1
-rw-r--r--pkgs/development/libraries/talloc/default.nix2
-rw-r--r--pkgs/development/libraries/thrift/default.nix4
-rw-r--r--pkgs/development/libraries/wxGTK-3.0/default.nix4
-rw-r--r--pkgs/development/libraries/xmlsec/default.nix4
-rw-r--r--pkgs/development/lisp-modules/lisp-packages.nix2
-rw-r--r--pkgs/development/lisp-modules/stumpwm/default.nix36
-rw-r--r--pkgs/development/mobile/androidenv/androidndk.nix4
-rw-r--r--pkgs/development/mobile/titaniumenv/build-app.nix23
-rw-r--r--pkgs/development/mobile/titaniumenv/default.nix6
-rw-r--r--pkgs/development/mobile/titaniumenv/examples/default.nix26
-rw-r--r--pkgs/development/mobile/titaniumenv/examples/simulate-kitchensink/default.nix10
-rw-r--r--pkgs/development/mobile/titaniumenv/titaniumsdk-3.1.nix4
-rw-r--r--pkgs/development/mobile/titaniumenv/titaniumsdk-3.4.nix77
-rw-r--r--pkgs/development/mobile/xcodeenv/default.nix2
-rw-r--r--pkgs/development/mobile/xcodeenv/simulate-app.nix45
-rw-r--r--pkgs/development/mobile/xcodeenv/xcodewrapper.nix2
-rw-r--r--pkgs/development/ocaml-modules/calendar/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/camlimages/default.nix17
-rw-r--r--pkgs/development/ocaml-modules/http/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/lablgl/META.patch18
-rw-r--r--pkgs/development/ocaml-modules/lablgl/default.nix13
-rw-r--r--pkgs/development/ocaml-modules/lablgtk/default.nix23
-rw-r--r--pkgs/development/ocaml-modules/macaque/default.nix22
-rw-r--r--pkgs/development/ocaml-modules/odn/default.nix12
-rw-r--r--pkgs/development/ocaml-modules/pgocaml/default.nix22
-rw-r--r--pkgs/development/ocaml-modules/reactivedata/default.nix34
-rw-r--r--pkgs/development/ocaml-modules/ssl/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/zarith/default.nix15
-rw-r--r--pkgs/development/pharo/vm/default.nix6
-rw-r--r--pkgs/development/pure-modules/pure-gsl/default.nix28
-rw-r--r--pkgs/development/pure-modules/pure-gsl/setup-hook.sh2
-rw-r--r--pkgs/development/tools/gnulib/default.nix6
-rw-r--r--pkgs/development/tools/golint/default.nix29
-rw-r--r--pkgs/development/tools/golint/deps.nix27
-rw-r--r--pkgs/development/tools/gotags/default.nix29
-rw-r--r--pkgs/development/tools/gotags/deps.nix27
-rw-r--r--pkgs/development/tools/haskell/BNFC/default.nix8
-rw-r--r--pkgs/development/tools/haskell/PastePipe/default.nix12
-rw-r--r--pkgs/development/tools/haskell/SourceGraph/default.nix1
-rw-r--r--pkgs/development/tools/haskell/cabal-db/default.nix1
-rw-r--r--pkgs/development/tools/haskell/cabal2nix/default.nix2
-rw-r--r--pkgs/development/tools/haskell/codex/default.nix14
-rw-r--r--pkgs/development/tools/haskell/hlint/default.nix4
-rw-r--r--pkgs/development/tools/haskell/hsb2hs/default.nix17
-rw-r--r--pkgs/development/tools/haskell/hscope/default.nix1
-rw-r--r--pkgs/development/tools/haskell/ihaskell/default.nix1
-rw-r--r--pkgs/development/tools/haskell/pointfree/default.nix4
-rw-r--r--pkgs/development/tools/haskell/timeplot/default.nix6
-rw-r--r--pkgs/development/tools/jq/default.nix2
-rw-r--r--pkgs/development/tools/misc/ddd/default.nix14
-rw-r--r--pkgs/development/tools/misc/epm/default.nix18
-rw-r--r--pkgs/development/tools/misc/help2man/default.nix4
-rw-r--r--pkgs/development/tools/misc/hydra/default.nix73
-rw-r--r--pkgs/development/tools/misc/intel-gpu-tools/default.nix4
-rw-r--r--pkgs/development/tools/misc/kibana/default.nix19
-rw-r--r--pkgs/development/tools/misc/lttng-tools/default.nix8
-rw-r--r--pkgs/development/tools/misc/lttng-ust/default.nix4
-rw-r--r--pkgs/development/tools/ocaml/findlib/default.nix6
-rw-r--r--pkgs/development/tools/ocaml/findlib/install_topfind.patch9
-rw-r--r--pkgs/development/tools/ocaml/oasis/default.nix16
-rw-r--r--pkgs/development/tools/ocaml/utop/default.nix6
-rw-r--r--pkgs/development/tools/parsing/re2c/default.nix6
-rw-r--r--pkgs/games/chocolate-doom/default.nix2
-rw-r--r--pkgs/games/chocolate-doom/master.nix8
-rw-r--r--pkgs/games/hedgewars/default.nix69
-rw-r--r--pkgs/games/hedgewars/fix-ghc-7.8-build-failure.diff16
-rw-r--r--pkgs/games/keen4/default.nix2
-rw-r--r--pkgs/games/megaglest/default.nix49
-rw-r--r--pkgs/games/quake3/demo/default.nix4
-rw-r--r--pkgs/games/tibia/default.nix6
-rw-r--r--pkgs/games/ut2004demo/default.nix2
-rw-r--r--pkgs/misc/apulse/default.nix22
-rw-r--r--pkgs/misc/beep/default.nix2
-rw-r--r--pkgs/misc/cups/default.nix4
-rw-r--r--pkgs/misc/emulators/atari800/default.nix2
-rw-r--r--pkgs/misc/emulators/retroarch/cores.nix123
-rw-r--r--pkgs/misc/emulators/retroarch/default.nix40
-rw-r--r--pkgs/misc/emulators/retroarch/master.nix31
-rw-r--r--pkgs/misc/lilypond/default.nix4
-rw-r--r--pkgs/misc/sails/default.nix24
-rw-r--r--pkgs/misc/screensavers/rss-glx/default.nix2
-rw-r--r--pkgs/misc/vim-plugins/default.nix7
-rw-r--r--pkgs/os-specific/linux/batman-adv/default.nix2
-rw-r--r--pkgs/os-specific/linux/broadcom-sta/default.nix12
-rw-r--r--pkgs/os-specific/linux/broadcom-sta/linux-recent.patch126
-rw-r--r--pkgs/os-specific/linux/broadcom-sta/netdev-3.17.patch15
-rw-r--r--pkgs/os-specific/linux/hostapd/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/patches.nix12
-rw-r--r--pkgs/os-specific/linux/lockdep/default.nix7
-rw-r--r--pkgs/os-specific/linux/lttng-modules/default.nix18
-rw-r--r--pkgs/os-specific/linux/lttng-modules/lttng-fix-build-error-on-linux-3.2.patch33
-rw-r--r--pkgs/os-specific/linux/lxc/default.nix4
-rw-r--r--pkgs/os-specific/linux/netatop/default.nix2
-rw-r--r--pkgs/os-specific/linux/pam_ldap/default.nix2
-rw-r--r--pkgs/os-specific/linux/procps-ng/default.nix6
-rw-r--r--pkgs/os-specific/linux/spl/default.nix2
-rw-r--r--pkgs/os-specific/linux/spl/git.nix2
-rw-r--r--pkgs/os-specific/linux/spl/kernel-3.16.patch34
-rw-r--r--pkgs/os-specific/linux/spl/kernel-3.17.patch175
-rw-r--r--pkgs/os-specific/linux/sysstat/default.nix10
-rw-r--r--pkgs/os-specific/linux/udisks/1-default.nix11
-rw-r--r--pkgs/os-specific/linux/upstart/default.nix2
-rw-r--r--pkgs/os-specific/linux/wpa_supplicant/default.nix7
-rw-r--r--pkgs/os-specific/linux/wpa_supplicant/libnl.patch13
-rw-r--r--pkgs/servers/corosync/default.nix50
-rw-r--r--pkgs/servers/gpsd/default.nix2
-rw-r--r--pkgs/servers/http/jetty/default.nix2
-rw-r--r--pkgs/servers/http/thttpd/default.nix4
-rw-r--r--pkgs/servers/mail/dovecot/2.2.x.nix4
-rw-r--r--pkgs/servers/memcached/default.nix4
-rw-r--r--pkgs/servers/monitoring/net-snmp/default.nix3
-rw-r--r--pkgs/servers/mpd/default.nix8
-rw-r--r--pkgs/servers/nosql/redis/default.nix4
-rw-r--r--pkgs/servers/openafs-client/I5558c64760e4cad2bd3dc648067d81020afc69b6.patch48
-rw-r--r--pkgs/servers/openafs-client/If1fd9d27f795dee4b5aa2152dd09e0540d643a69.patch55
-rw-r--r--pkgs/servers/openafs-client/default.nix2
-rw-r--r--pkgs/servers/search/elasticsearch/default.nix4
-rw-r--r--pkgs/servers/sql/mariadb/default.nix4
-rw-r--r--pkgs/servers/sql/postgresql/8.4.x.nix4
-rw-r--r--pkgs/servers/xmpp/prosody/default.nix52
-rw-r--r--pkgs/shells/fish/default.nix4
-rw-r--r--pkgs/shells/zsh/default.nix6
-rw-r--r--pkgs/tools/X11/xmacro/default.nix2
-rw-r--r--pkgs/tools/archivers/atool/default.nix3
-rw-r--r--pkgs/tools/archivers/cromfs/default.nix4
-rw-r--r--pkgs/tools/audio/mpdcron/default.nix4
-rw-r--r--pkgs/tools/bluetooth/obexd/default.nix6
-rw-r--r--pkgs/tools/cd-dvd/xorriso/default.nix4
-rw-r--r--pkgs/tools/compression/gzip/default.nix2
-rw-r--r--pkgs/tools/compression/lzip/default.nix4
-rw-r--r--pkgs/tools/compression/zdelta/default.nix2
-rw-r--r--pkgs/tools/filesystems/ceph/default.nix11
-rw-r--r--pkgs/tools/filesystems/squashfs/default.nix6
-rw-r--r--pkgs/tools/graphics/graphviz/2.0.nix1
-rw-r--r--pkgs/tools/graphics/graphviz/2.32.nix1
-rw-r--r--pkgs/tools/graphics/logstalgia/default.nix4
-rw-r--r--pkgs/tools/graphics/optipng/default.nix4
-rw-r--r--pkgs/tools/graphics/transfig/default.nix2
-rw-r--r--pkgs/tools/misc/colord/default.nix4
-rw-r--r--pkgs/tools/misc/datamash/default.nix18
-rw-r--r--pkgs/tools/misc/dbacl/default.nix2
-rw-r--r--pkgs/tools/misc/getopt/default.nix2
-rw-r--r--pkgs/tools/misc/grub/default.nix2
-rw-r--r--pkgs/tools/misc/gummiboot/default.nix2
-rw-r--r--pkgs/tools/misc/ised/default.nix45
-rw-r--r--pkgs/tools/misc/lbdb/default.nix2
-rw-r--r--pkgs/tools/misc/less/default.nix4
-rw-r--r--pkgs/tools/misc/logstash/contrib.nix31
-rw-r--r--pkgs/tools/misc/mssys/default.nix2
-rw-r--r--pkgs/tools/misc/pastebinit/default.nix2
-rw-r--r--pkgs/tools/misc/screen/default.nix2
-rw-r--r--pkgs/tools/misc/units/default.nix6
-rw-r--r--pkgs/tools/misc/venus/default.nix2
-rw-r--r--pkgs/tools/networking/autossh/default.nix6
-rw-r--r--pkgs/tools/networking/cutter/default.nix2
-rw-r--r--pkgs/tools/networking/gvpe/default.nix2
-rw-r--r--pkgs/tools/networking/gvpe/src-for-default.nix10
-rw-r--r--pkgs/tools/networking/inadyn/default.nix15
-rw-r--r--pkgs/tools/networking/lftp/default.nix6
-rw-r--r--pkgs/tools/networking/mailsend/default.nix34
-rw-r--r--pkgs/tools/networking/mailsend/default.upstream3
-rw-r--r--pkgs/tools/networking/netcat-openbsd/default.nix4
-rw-r--r--pkgs/tools/networking/netcat/default.nix2
-rw-r--r--pkgs/tools/networking/p2p/azureus/default.nix2
-rw-r--r--pkgs/tools/networking/p2p/libtorrent/git.nix28
-rw-r--r--pkgs/tools/networking/p2p/rtorrent/git.nix63
-rw-r--r--pkgs/tools/networking/p2p/seeks/default.nix40
-rw-r--r--pkgs/tools/networking/par2cmdline/default.nix2
-rw-r--r--pkgs/tools/networking/plasma-nm/default.nix8
-rw-r--r--pkgs/tools/networking/strongswan/default.nix2
-rw-r--r--pkgs/tools/networking/stunnel/default.nix5
-rw-r--r--pkgs/tools/networking/tcpdump/default.nix4
-rw-r--r--pkgs/tools/networking/traceroute/default.nix2
-rw-r--r--pkgs/tools/package-management/cabal-install/1.16.0.2.nix3
-rw-r--r--pkgs/tools/package-management/cabal-install/1.18.0.3.nix3
-rw-r--r--pkgs/tools/package-management/cabal-install/1.20.0.3.nix3
-rw-r--r--pkgs/tools/security/apg/default.nix4
-rw-r--r--pkgs/tools/security/gnupg1/default.nix4
-rw-r--r--pkgs/tools/security/mkrand/default.nix20
-rw-r--r--pkgs/tools/security/p0f/default.nix4
-rw-r--r--pkgs/tools/security/ssdeep/default.nix8
-rw-r--r--pkgs/tools/security/sudo/default.nix4
-rw-r--r--pkgs/tools/security/thc-hydra/default.nix5
-rw-r--r--pkgs/tools/security/trousers/default.nix18
-rw-r--r--pkgs/tools/security/trousers/disable-install-rule.patch27
-rw-r--r--pkgs/tools/security/trousers/double-installed-man-page.patch32
-rw-r--r--pkgs/tools/system/ansible/default.nix4
-rw-r--r--pkgs/tools/system/cron/default.nix2
-rw-r--r--pkgs/tools/system/fakechroot/default.nix2
-rw-r--r--pkgs/tools/system/ipmitool/default.nix4
-rw-r--r--pkgs/tools/system/proot/default.nix29
-rw-r--r--pkgs/tools/system/runit/Makefile.patch11
-rw-r--r--pkgs/tools/system/runit/default.nix39
-rw-r--r--pkgs/tools/system/smartmontools/default.nix4
-rw-r--r--pkgs/tools/text/discount/default.nix19
-rw-r--r--pkgs/tools/text/discount/fix-configure-path.patch12
-rw-r--r--pkgs/tools/text/gist/default.nix32
-rw-r--r--pkgs/tools/text/peco/default.nix18
-rw-r--r--pkgs/tools/text/xml/xmlstarlet/default.nix4
-rw-r--r--pkgs/tools/text/xml/xpf/default.nix2
-rw-r--r--pkgs/tools/typesetting/tex/texlive/beamer.nix2
-rw-r--r--pkgs/tools/typesetting/tex/texlive/default.nix17
-rw-r--r--pkgs/tools/typesetting/tex/texlive/extra.nix6
-rw-r--r--pkgs/tools/typesetting/xmlroff/default.nix2
-rw-r--r--pkgs/tools/video/vnc2flv/default.nix2
-rw-r--r--pkgs/tools/virtualization/euca2ools/default.nix2
-rw-r--r--pkgs/top-level/all-packages.nix231
-rw-r--r--pkgs/top-level/haskell-defaults.nix31
-rw-r--r--pkgs/top-level/haskell-packages.nix134
-rw-r--r--pkgs/top-level/lua-packages.nix102
-rw-r--r--pkgs/top-level/perl-packages.nix68
-rw-r--r--pkgs/top-level/php-packages.nix2
-rw-r--r--pkgs/top-level/python-packages.nix2371
826 files changed, 8929 insertions, 7225 deletions
diff --git a/.travis.yml b/.travis.yml
index d34a7831d65..6fa426d36de 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,3 +1,5 @@
 language: python
 python: "3.4"
-script: ./maintainers/scripts/travis-nox-review-pr.sh
+before_install: ./maintainers/scripts/travis-nox-review-pr.sh nix
+install: ./maintainers/scripts/travis-nox-review-pr.sh nox
+script: ./maintainers/scripts/travis-nox-review-pr.sh build
diff --git a/doc/meta.xml b/doc/meta.xml
index fc0ff977792..a0ed3069b68 100644
--- a/doc/meta.xml
+++ b/doc/meta.xml
@@ -117,6 +117,13 @@ hello-2.3  A program that produces a familiar, friendly greeting
   </varlistentry>
 
   <varlistentry>
+    <term><varname>branch</varname></term>
+    <listitem><para>Release branch. Used to specify that a package is not
+    going to receive updates that are not in this branch; for example, Linux
+    kernel 3.0 is supposed to be updated to 3.0.X, not 3.1.</para></listitem>
+  </varlistentry>
+
+  <varlistentry>
     <term><varname>homepage</varname></term>
     <listitem><para>The package’s homepage.  Example:
     <literal>http://www.gnu.org/software/hello/manual/</literal></para></listitem>
diff --git a/doc/stdenv.xml b/doc/stdenv.xml
index 28e7b7d89f4..8c6266b2672 100644
--- a/doc/stdenv.xml
+++ b/doc/stdenv.xml
@@ -150,8 +150,8 @@ genericBuild
 
   <listitem><para>GNU <command>tar</command>.</para></listitem>
 
-  <listitem><para><command>gzip</command> and
-  <command>bzip2</command>.</para></listitem>
+  <listitem><para><command>gzip</command>, <command>bzip2</command>
+  and <command>xz</command>.</para></listitem>
 
   <listitem><para>GNU Make.  It has been patched to provide
   <quote>nested</quote> output that can be fed into the
@@ -341,9 +341,11 @@ It supports the following files by default:
     <term>Tar files</term>
     <listitem><para>These can optionally be compressed using
     <command>gzip</command> (<filename>.tar.gz</filename>,
-    <filename>.tgz</filename> or <filename>.tar.Z</filename>) or
+    <filename>.tgz</filename> or <filename>.tar.Z</filename>),
     <command>bzip2</command> (<filename>.tar.bz2</filename> or
-    <filename>.tbz2</filename>).</para></listitem>
+    <filename>.tbz2</filename>) or <command>xz</command>
+    (<filename>.tar.xz</filename> or
+    <filename>.tar.lzma</filename>).</para></listitem>
   </varlistentry>
 
   <varlistentry>
@@ -445,9 +447,10 @@ Additional file types can be supported by setting the
     <listitem><para>The list of patches.  They must be in the format
     accepted by the <command>patch</command> command, and may
     optionally be compressed using <command>gzip</command>
-    (<filename>.gz</filename>) or <command>bzip2</command>
-    (<filename>.bz2</filename>).</para></listitem>
-  </varlistentry>  
+    (<filename>.gz</filename>), <command>bzip2</command>
+    (<filename>.bz2</filename>) or <command>xz</command>
+    (<filename>.xz</filename>).</para></listitem>
+  </varlistentry>
 
   <varlistentry>
     <term><varname>patchFlags</varname></term>
diff --git a/lib/licenses.nix b/lib/licenses.nix
index 35fcbd072af..9546f83844c 100644
--- a/lib/licenses.nix
+++ b/lib/licenses.nix
@@ -72,6 +72,11 @@ rec {
     fullName = "Creative Commons Attribution 3.0";
   };
 
+  cc-by-sa-30 = spdx {
+    shortName = "CC-BY-SA-3.0";
+    fullName = "Creative Commons Attribution Share Alike 3.0";
+  };
+
   cc-by-40 = spdx {
     shortName = "CC-BY-4.0";
     fullName = "Creative Commons Attribution 4.0";
diff --git a/lib/maintainers.nix b/lib/maintainers.nix
index 7c75bfdc0c6..18e949ae2c2 100644
--- a/lib/maintainers.nix
+++ b/lib/maintainers.nix
@@ -18,6 +18,7 @@
   antono = "Antono Vasiljev <self@antono.info>";
   aristid = "Aristid Breitkreuz <aristidb@gmail.com>";
   arobyn = "Alexei Robyn <shados@shados.net>";
+  asppsa = "Alastair Pharo <asppsa@gmail.com>";
   astsmtl = "Alexander Tsamutali <astsmtl@yandex.ru>";
   aszlig = "aszlig <aszlig@redmoonstudios.org>";
   auntie = "Jonathan Glines <auntieNeo@gmail.com>";
@@ -37,7 +38,9 @@
   cdepillabout = "Dennis Gosnell <cdep.illabout@gmail.com>";
   cfouche = "Chaddaï Fouché <chaddai.fouche@gmail.com>";
   chaoflow = "Florian Friesdorf <flo@chaoflow.net>";
+  christopherpoole = "Christopher Mark Poole <mail@christopherpoole.net>";
   coconnor = "Corey O'Connor <coreyoconnor@gmail.com>";
+  codyopel = "Cody Opel <codyopel@gmail.com>";
   copumpkin = "Dan Peebles <pumpkingod@gmail.com>";
   coroa = "Jonas Hörsch <jonas@chaoflow.net>";
   cstrahan = "Charles Strahan <charles.c.strahan@gmail.com>";
@@ -66,6 +69,7 @@
   ianwookim = "Ian-Woo Kim <ianwookim@gmail.com>";
   iElectric = "Domen Kozar <domen@dev.si>";
   iyzsong = "Song Wenwu <iyzsong@gmail.com>";
+  jagajaga = "Arseniy Seroka <ars.seroka@gmail.com>";
   jcumming = "Jack Cummings <jack@mudshark.org>";
   jgeerds = "Jascha Geerds <jg@ekby.de>";
   joamaki = "Jussi Maki <joamaki@gmail.com>";
@@ -73,6 +77,7 @@
   jwiegley = "John Wiegley <johnw@newartisans.com>";
   kkallio = "Karn Kallio <tierpluspluslists@gmail.com>";
   koral = "Koral <koral@mailoo.org>";
+  kragniz = "Louis Taylor <kragniz@gmail.com>";
   ktosiek = "Tomasz Kontusz <tomasz.kontusz@gmail.com>";
   lethalman = "Luca Bruno <lucabru@src.gnome.org>";
   lhvwb = "Nathaniel Baxter <nathaniel.baxter@gmail.com>";
@@ -117,6 +122,7 @@
   rycee = "Robert Helgesson <robert@rycee.net>";
   sander = "Sander van der Burg <s.vanderburg@tudelft.nl>";
   sepi = "Raffael Mancini <raffael@mancini.lu>";
+  shell = "Shell Turner <cam.turn@gmail.com>";
   shlevy = "Shea Levy <shea@shealevy.com>";
   simons = "Peter Simons <simons@cryp.to>";
   skeidel = "Sven Keidel <svenkeidel@gmail.com>";
@@ -138,6 +144,7 @@
   viric = "Lluís Batlle i Rossell <viric@viric.name>";
   vizanto = "Danny Wilson <danny@prime.vc>";
   vlstill = "Vladimír Štill <xstill@fi.muni.cz>";
+  vozz = "Oliver Hunt <oliver.huntuk@gmail.com>";
   winden = "Antonio Vargas Gonzalez <windenntw@gmail.com>";
   wizeman = "Ricardo M. Correia <rcorreia@wizy.org>";
   wjlroe = "William Roe <willroe@gmail.com>";
diff --git a/maintainers/scripts/travis-nox-review-pr.sh b/maintainers/scripts/travis-nox-review-pr.sh
index 5b0ef380f9a..baee1baa11f 100755
--- a/maintainers/scripts/travis-nox-review-pr.sh
+++ b/maintainers/scripts/travis-nox-review-pr.sh
@@ -1,29 +1,42 @@
 #! /usr/bin/env bash
 set -e
 
-# Install Nix
-bash <(curl https://nixos.org/nix/install)
-source $HOME/.nix-profile/etc/profile.d/nix.sh
+export NIX_CURL_FLAGS=-sS
 
-# Make sure we can use hydra's binary cache
-sudo mkdir /etc/nix
-sudo tee /etc/nix/nix.conf <<EOF
+if [[ $1 == nix ]]; then
+    echo "=== Installing Nix..."
+    # Install Nix
+    bash <(curl -sS https://nixos.org/nix/install)
+    source $HOME/.nix-profile/etc/profile.d/nix.sh
+
+    # Make sure we can use hydra's binary cache
+    sudo mkdir /etc/nix
+    sudo tee /etc/nix/nix.conf <<EOF >/dev/null
 binary-caches = http://cache.nixos.org http://hydra.nixos.org
 trusted-binary-caches = http://hydra.nixos.org
 build-max-jobs = 4
 EOF
 
-if [ "${TRAVIS_PULL_REQUEST}" = "false" ]; then
-    echo "Not a pull request, checking evaluation"
-    nix-build pkgs/top-level/release.nix -A tarball
-    exit 0
-fi
-
-echo "Installing nox"
-git clone https://github.com/madjar/nox
-pip --quiet install -e nox
+    # Verify evaluation
+    echo "=== Verifying that nixpkgs evaluates..."
+    nix-env -f. -qa --json >/dev/null
+elif [[ $1 == nox ]]; then
+    echo "=== Installing nox..."
+    git clone -q https://github.com/madjar/nox
+    pip --quiet install -e nox
+elif [[ $1 == build ]]; then
+    source $HOME/.nix-profile/etc/profile.d/nix.sh
 
-echo "Reviewing PR"
-# The current HEAD is the PR merged into origin/master, so we compare
-# against origin/master
-nox-review wip --against origin/master
+    if [[ $TRAVIS_PULL_REQUEST == false ]]; then
+        echo "===> Not a pull request, checking evaluation"
+        nix-build pkgs/top-level/release.nix -A tarball
+    else
+        echo "=== Checking PR"
+        # The current HEAD is the PR merged into origin/master, so we compare
+        # against origin/master
+        nox-review wip --against origin/master
+    fi
+else
+    echo "$0: Unknown option $1" >&2
+    false
+fi
diff --git a/maintainers/scripts/vanity-manual-equalities.txt b/maintainers/scripts/vanity-manual-equalities.txt
index 392ff266e1a..9b31e9dc07c 100644
--- a/maintainers/scripts/vanity-manual-equalities.txt
+++ b/maintainers/scripts/vanity-manual-equalities.txt
@@ -1,3 +1,6 @@
 viric	viriketo@gmail.com
 Pjotr Prins	pjotr.public01@thebird.nl
 Pjotr Prins	pjotr.public05@thebird.nl
+Wouter den Breejen	wbreejen
+MarcWeber	marcweber
+Ricardo Correia	Ricardo M. Correia
diff --git a/maintainers/scripts/vanity.sh b/maintainers/scripts/vanity.sh
index 48c7d6dbef6..5a1b8b08b60 100755
--- a/maintainers/scripts/vanity.sh
+++ b/maintainers/scripts/vanity.sh
@@ -3,7 +3,8 @@
 export LANG=C LC_ALL=C LC_COLLATE=C
 
 # Load git log
-git_data="$(git log | grep 'Author:' | 
+raw_git_log="$(git log)"
+git_data="$(echo "$raw_git_log" | grep 'Author:' | 
   sed -e 's/^ *Author://; s/\\//g; s/^ *//; s/ *$//; 
   s/ @ .*//; s/ *[<]/\t/; s/[>]//')"
 
@@ -13,15 +14,44 @@ maintainers="$(cat "$(dirname "$0")/../../lib/maintainers.nix" |
   grep '=' | sed -re 's/\\"/''/g;
   s/ *([^ =]*) *= *" *(.*[^ ]) *[<](.*)[>] *".*/\1\t\2\t\3/')"
 git_lines="$( ( echo "$git_data"; 
-  cat vanity-manual-equalities.txt) | sort |uniq)"
+    cat "$(dirname "$0")/vanity-manual-equalities.txt") | sort |uniq)"
+
+emails="$( 
+    ( echo "$maintainers" | cut -f 3; echo "$git_data" | cut -f 2 ) | 
+    sort | uniq | grep -E ".+@.+[.].+" 
+    )"
+
+fetchGithubName () {
+    commitid="$(
+        echo "$raw_git_log" | grep -B3 "Author: .*[<]$1[>]" | head -n 3 | 
+            grep '^commit ' | tail -n 1 | sed -e 's/^commit //'
+    )"
+    userid="$(
+        curl https://github.com/NixOS/nixpkgs/commit/"$commitid" 2>/dev/null |
+        grep authored -B10 | grep 'href="/' |
+        sed -re 's@.* href="/@@; s@".*@@' |
+	grep -v "/commit/"
+    )";
+    echo "$userid"
+}
+
+[ -n "$NIXPKGS_GITHUB_NAME_CACHE" ] && {
+    echo "$emails" | while read email; do 
+        line="$(grep "$email	" "$NIXPKGS_GITHUB_NAME_CACHE")"
+	[ -z "$line" ] && {
+            echo "$email	$(fetchGithubName "$email")" >> \
+                "$NIXPKGS_GITHUB_NAME_CACHE"
+        }
+    done
+}
 
 # For RDF
 normalize_name () {
-	sed -e 's/ /_/g; s/'\''/*/g; s/"/**/g;'
+	sed -e 's/%/%25/g; s/ /%20/g; s/'\''/%27/g; s/"/%22/g;'
 }
 
 denormalize_name () {
-	sed -e 's/_/ /g; s/[*][*]/"/g; s/[*]/'\''/g;'
+	sed -e 's/%20/ /g; s/%27/'\''/g; s/%22/"/g; s/%25/%/g;';
 }
 
 n3="$(mktemp --suffix .n3)"
@@ -37,6 +67,9 @@ echo "$maintainers" | sed -re 's@(.*)\t(.*)\t(.*)@<my://name/\3>	<my://can-be>	<
 echo "$git_lines" | grep ' ' | cut -f 1 | sed -e 's@.*@<my://name/&>	<my://is-name>	<my://0>.@'
 echo "$git_lines" | grep -v ' ' | cut -f 1 | sed -e 's@.*@<my://name/&>	<my://is-name>	<my://1>.@'
 echo "$maintainers" | cut -f 2 | sed -e 's@.*@<my://name/&>	<my://is-name>	<my://0>.@'
+[ -n "$NIXPKGS_GITHUB_NAME_CACHE" ] && cat "$NIXPKGS_GITHUB_NAME_CACHE" |
+    grep -v "	$" |
+    sed -re 's@(.*)\t(.*)@<my://name/\1>	<my://at-github>	<my://github/\2>.@'
 ) | normalize_name | grep -E '<my://[-a-z]+>' | sort | uniq > "$n3"
 
 # Get transitive closure
@@ -51,6 +84,14 @@ name_list="$(
 	sed -re 's@<my://name/@@g; s@<my://@@g; s@>@@g;' | 
 	sort -k 2,3 -t '	'
 )"
+github_name_list="$(
+	"$sparql" --results=TSV --data="$n3" "
+	select ?x ?y where {
+	  ?x (<my://can-be>+ / <my://at-github>) ?y.
+        }
+	" | tail -n +2 | 
+	sed -re 's@<my://(name|github)/@@g; s@<my://@@g; s@>@@g;'
+)"
 
 # Take first spelling option for every person
 name_list_canonical="$(echo "$name_list" | cut -f 1,2 | uniq -f1)"
@@ -58,8 +99,24 @@ name_list_canonical="$(echo "$name_list" | cut -f 1,2 | uniq -f1)"
 cleaner_script="$(echo "$name_list_canonical" | denormalize_name | 
   sed -re 's/(.*)\t(.*)/s#^\2$#\1#g/g')"
 
+# Add github usernames
+if [ -n "$NIXPKGS_GITHUB_NAME_CACHE" ]; then
+    github_adder_script="$(echo "$github_name_list" |
+        grep -E "$(echo "$name_list_canonical" | cut -f 2 |
+	    tr '\n' '|' )" |
+	sort | uniq | 
+        sed -re 's/(.*)\t(.*)/s| \1$| \1\t\2|g;/' |
+	denormalize_name 
+	)"
+else
+    github_adder_script=''
+fi
+
 echo "$name_list" | denormalize_name
 
 echo
 
-echo "$git_data" | cut -f 1 | sed -re "$cleaner_script" | sort | uniq -c | sort -k1n
+echo "$git_data" | cut -f 1 |
+    sed -re "$cleaner_script" | 
+    sort | uniq -c | sort -k1n | sed -re "$github_adder_script" |
+    sed -re 's/^ *([0-9]+) /\1\t/'
diff --git a/nixos/modules/config/pulseaudio.nix b/nixos/modules/config/pulseaudio.nix
index 737f0abc52f..8b38489a8c1 100644
--- a/nixos/modules/config/pulseaudio.nix
+++ b/nixos/modules/config/pulseaudio.nix
@@ -12,7 +12,7 @@ let
 
   # Forces 32bit pulseaudio and alsaPlugins to be built/supported for apps
   # using 32bit alsa on 64bit linux.
-  enable32BitAlsaPlugins = stdenv.isx86_64 && (pkgs_i686.alsaLib != null);
+  enable32BitAlsaPlugins = stdenv.isx86_64 && (pkgs_i686.alsaLib != null && pkgs_i686.pulseaudio != null);
 
   ids = config.ids;
 
@@ -126,8 +126,7 @@ in {
     (mkIf cfg.enable {
       environment.systemPackages = [
         cfg.package
-        (lib.optional enable32BitAlsaPlugins pkgs_i686.pulseaudio)
-      ];
+      ] ++ lib.optionals enable32BitAlsaPlugins [ pkgs_i686.pulseaudio ];
 
       environment.etc = singleton {
         target = "asound.conf";
diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index fa51f831481..d28624c4326 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -154,6 +154,10 @@
       collectd = 144;
       consul = 145;
       mailpile = 146;
+      redmine = 147;
+      seeks = 148;
+
+      prosody = 148;
 
       # When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
 
@@ -275,6 +279,10 @@
       riemanndash = 138;
       uhub = 142;
       mailpile = 146;
+      redmine = 147;
+      seeks = 148;
+
+      prosody = 148;
 
       # When adding a gid, make sure it doesn't match an existing uid. And don't use gids above 399!
 
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 3db44a4d8de..17d3140b087 100755
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -174,6 +174,7 @@
   ./services/misc/nixos-manual.nix
   ./services/misc/nix-ssh-serve.nix
   ./services/misc/phd.nix
+  ./services/misc/redmine.nix
   ./services/misc/rippled.nix
   ./services/misc/rogue.nix
   ./services/misc/siproxd.nix
@@ -250,6 +251,7 @@
   ./services/networking/polipo.nix
   ./services/networking/prayer.nix
   ./services/networking/privoxy.nix
+  ./services/networking/prosody.nix
   ./services/networking/quassel.nix
   ./services/networking/radicale.nix
   ./services/networking/radvd.nix
@@ -257,6 +259,7 @@
   ./services/networking/rpcbind.nix
   ./services/networking/sabnzbd.nix
   ./services/networking/searx.nix
+  ./services/networking/seeks.nix
   ./services/networking/spiped.nix
   ./services/networking/ssh/lshd.nix
   ./services/networking/ssh/sshd.nix
diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix
index 019fbc721b1..073a2220765 100644
--- a/nixos/modules/rename.nix
+++ b/nixos/modules/rename.nix
@@ -130,5 +130,6 @@ in zipModules ([]
 ++ obsolete' [ "boot" "initrd" "luks" "enable" ]
 ++ obsolete' [ "programs" "bash" "enable" ]
 ++ obsolete' [ "services" "samba" "defaultShare" ]
+++ obsolete' [ "services" "syslog-ng" "serviceName" ]
 
 )
diff --git a/nixos/modules/services/logging/logrotate.nix b/nixos/modules/services/logging/logrotate.nix
index 6887ab1e805..0186452de95 100644
--- a/nixos/modules/services/logging/logrotate.nix
+++ b/nixos/modules/services/logging/logrotate.nix
@@ -21,6 +21,7 @@ in
 
       config = mkOption {
         default = "";
+        type = types.lines;
         description = ''
           The contents of the logrotate config file
         '';
diff --git a/nixos/modules/services/logging/logstash.nix b/nixos/modules/services/logging/logstash.nix
index df81ac142dc..41f71be2365 100644
--- a/nixos/modules/services/logging/logstash.nix
+++ b/nixos/modules/services/logging/logstash.nix
@@ -4,6 +4,9 @@ with lib;
 
 let
   cfg = config.services.logstash;
+  pluginPath = lib.concatStringsSep ":" cfg.plugins;
+  havePluginPath = lib.length cfg.plugins > 0;
+  ops = lib.optionalString;
 
 in
 
@@ -20,12 +23,50 @@ in
         description = "Enable logstash.";
       };
 
+      package = mkOption {
+        type = types.package;
+        default = pkgs.logstash;
+        example = literalExample "pkgs.logstash";
+        description = "Logstash package to use.";
+      };
+
+      plugins = mkOption {
+        type = types.listOf types.path;
+        default = [ ];
+        example = literalExample "[ pkgs.logstash-contrib ]";
+        description = "The paths to find other logstash plugins in.";
+      };
+
+      watchdogTimeout = mkOption {
+        type = types.int;
+        default = 10;
+        description = "Set watchdog timeout value in seconds.";
+      };
+
+      filterWorkers = mkOption {
+        type = types.int;
+        default = 1;
+        description = "The quantity of filter workers to run.";
+      };
+
       enableWeb = mkOption {
         type = types.bool;
         default = false;
         description = "Enable the logstash web interface.";
       };
 
+      address = mkOption {
+        type = types.str;
+        default = "0.0.0.0";
+        description = "Address on which to start webserver.";
+      };
+
+      port = mkOption {
+        type = types.str;
+        default = "9292";
+        description = "Port on which to start webserver.";
+      };
+
       inputConfig = mkOption {
         type = types.lines;
         default = ''stdin { type => "example" }'';
@@ -79,19 +120,25 @@ in
       wantedBy = [ "multi-user.target" ];
       environment = { JAVA_HOME = jre; };
       serviceConfig = {
-        ExecStart = "${logstash}/bin/logstash agent -f ${writeText "logstash.conf" ''
-          input {
-            ${cfg.inputConfig}
-          }
+        ExecStart =
+          "${cfg.package}/bin/logstash agent " +
+          "-w ${toString cfg.filterWorkers} " +
+          ops havePluginPath "--pluginpath ${pluginPath} " +
+          "--watchdog-timeout ${toString cfg.watchdogTimeout} " +
+          "-f ${writeText "logstash.conf" ''
+            input {
+              ${cfg.inputConfig}
+            }
 
-          filter {
-            ${cfg.filterConfig}
-          }
+            filter {
+              ${cfg.filterConfig}
+            }
 
-          output {
-            ${cfg.outputConfig}
-          }
-        ''} ${optionalString cfg.enableWeb "-- web"}";
+            output {
+              ${cfg.outputConfig}
+            }
+          ''} " +
+          ops cfg.enableWeb "-- web -a ${cfg.address} -p ${cfg.port}";
       };
     };
   };
diff --git a/nixos/modules/services/logging/syslog-ng.nix b/nixos/modules/services/logging/syslog-ng.nix
index 4a16b19134a..f3991a411ec 100644
--- a/nixos/modules/services/logging/syslog-ng.nix
+++ b/nixos/modules/services/logging/syslog-ng.nix
@@ -7,8 +7,7 @@ let
   cfg = config.services.syslog-ng;
 
   syslogngConfig = pkgs.writeText "syslog-ng.conf" ''
-    @version: 3.5
-    @include "scl.conf"
+    ${cfg.configHeader}
     ${cfg.extraConfig}
   '';
 
@@ -44,13 +43,13 @@ in {
           The package providing syslog-ng binaries.
         '';
       };
-      serviceName = mkOption {
-        type = types.str;
-        default = "syslog-ng";
+      listenToJournal = mkOption {
+        type = types.bool;
+        default = true;
         description = ''
-          The name of the systemd service that runs syslog-ng. Set this to
-          <literal>syslog</literal> if you want journald to automatically
-          forward all logs to syslog-ng.
+          Whether syslog-ng should listen to the syslog socket used
+          by journald, and therefore receive all logs that journald
+          produces.
         '';
       };
       extraModulePaths = mkOption {
@@ -72,16 +71,33 @@ in {
           Configuration added to the end of <literal>syslog-ng.conf</literal>.
         '';
       };
+      configHeader = mkOption {
+        type = types.lines;
+        default = ''
+          @version: 3.5
+          @include "scl.conf"
+        '';
+        description = ''
+          The very first lines of the configuration file. Should usually contain
+          the syslog-ng version header.
+        '';
+      };
     };
   };
 
   config = mkIf cfg.enable {
-    systemd.services."${cfg.serviceName}" = {
-      wantedBy = [ "multi-user.target" ];
+    systemd.sockets.syslog = mkIf cfg.listenToJournal {
+      wantedBy = [ "sockets.target" ];
+      socketConfig.Service = "syslog-ng.service";
+    };
+    systemd.services.syslog-ng = {
+      description = "syslog-ng daemon";
       preStart = "mkdir -p /{var,run}/syslog-ng";
+      wantedBy = optional (!cfg.listenToJournal) "multi-user.target";
+      after = [ "multi-user.target" ]; # makes sure hostname etc is set
       serviceConfig = {
         Type = "notify";
-        Sockets = "syslog.socket";
+        Sockets = if cfg.listenToJournal then "syslog.socket" else null;
         StandardOutput = "null";
         Restart = "on-failure";
         ExecStart = "${cfg.package}/sbin/syslog-ng ${concatStringsSep " " syslogngOptions}";
diff --git a/nixos/modules/services/misc/redmine.nix b/nixos/modules/services/misc/redmine.nix
new file mode 100644
index 00000000000..d7e64590f50
--- /dev/null
+++ b/nixos/modules/services/misc/redmine.nix
@@ -0,0 +1,222 @@
+{ config, lib, pkgs, ... }:
+
+# TODO: support non-postgresql
+
+with lib;
+
+let
+  cfg = config.services.redmine;
+
+  ruby = pkgs.ruby;
+  rubyLibs = pkgs.rubyLibs;
+
+  databaseYml = ''
+    production:
+      adapter: postgresql
+      database: ${cfg.databaseName}
+      host: ${cfg.databaseHost}
+      password: ${cfg.databasePassword}
+      username: ${cfg.databaseUsername}
+      encoding: utf8
+  '';
+
+  configurationYml = ''
+    default:
+      # Absolute path to the directory where attachments are stored.
+      # The default is the 'files' directory in your Redmine instance.
+      # Your Redmine instance needs to have write permission on this
+      # directory.
+      # Examples:
+      # attachments_storage_path: /var/redmine/files
+      # attachments_storage_path: D:/redmine/files
+      attachments_storage_path: ${cfg.stateDir}/files
+
+      # Absolute path to the SCM commands errors (stderr) log file.
+      # The default is to log in the 'log' directory of your Redmine instance.
+      # Example:
+      # scm_stderr_log_file: /var/log/redmine_scm_stderr.log
+      scm_stderr_log_file: ${cfg.stateDir}/redmine_scm_stderr.log
+
+      ${cfg.extraConfig}
+  '';
+
+  unpackTheme = unpack "theme";
+  unpackPlugin = unpack "plugin";
+  unpack = id: (name: source:
+    pkgs.stdenv.mkDerivation {
+      name = "redmine-${id}-${name}";
+      buildInputs = [ pkgs.unzip ];
+      buildCommand = ''
+        mkdir -p $out
+        cd $out
+        unpackFile ${source}
+      '';
+    });
+
+in {
+
+  options = {
+    services.redmine = {
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Enable the redmine service.
+        '';
+      };
+
+      stateDir = mkOption {
+        type = types.str;
+        default = "/var/redmine";
+        description = "The state directory, logs and plugins are stored here";
+      };
+
+      extraConfig = mkOption {
+        type = types.str;
+        default = "";
+        description = "Extra configuration in configuration.yml";
+      };
+
+      themes = mkOption {
+        type = types.attrsOf types.path;
+        default = {};
+        description = "Set of themes";
+      };
+
+      plugins = mkOption {
+        type = types.attrsOf types.path;
+        default = {};
+        description = "Set of plugins";
+      };
+
+      #databaseType = mkOption {
+      #  type = types.str;
+      #  default = "postgresql";
+      #  description = "Type of database";
+      #};
+
+      databaseHost = mkOption {
+        type = types.str;
+        default = "127.0.0.1";
+        description = "Database hostname";
+      };
+
+      databasePassword = mkOption {
+        type = types.str;
+        default = "";
+        description = "Database user password";
+      };
+
+      databaseName = mkOption {
+        type = types.str;
+        default = "redmine";
+        description = "Database name";
+      };
+
+      databaseUsername = mkOption {
+        type = types.str;
+        default = "redmine";
+        description = "Database user";
+      };
+    };
+  };
+
+  config = mkIf cfg.enable {
+
+    assertions = [
+      { assertion = cfg.databasePassword != "";
+        message = "databasePassword must be set";
+      }
+    ];
+
+    users.extraUsers = [
+      { name = "redmine";
+        group = "redmine";
+        uid = config.ids.uids.redmine;
+      } ];
+
+    users.extraGroups = [
+      { name = "redmine";
+        gid = config.ids.gids.redmine;
+      } ];
+
+    systemd.services.redmine = {
+      after = [ "network.target" "postgresql.service" ];
+      wantedBy = [ "multi-user.target" ];
+      environment.RAILS_ENV = "production";
+      environment.RAILS_ETC = "${cfg.stateDir}/config";
+      environment.RAILS_LOG = "${cfg.stateDir}/log";
+      environment.RAILS_VAR = "${cfg.stateDir}/var";
+      environment.RAILS_CACHE = "${cfg.stateDir}/cache";
+      environment.RAILS_PLUGINS = "${cfg.stateDir}/plugins";
+      environment.RAILS_PUBLIC = "${cfg.stateDir}/public";
+      environment.RAILS_TMP = "${cfg.stateDir}/tmp";
+      environment.SCHEMA = "${cfg.stateDir}/cache/schema.db";
+      environment.HOME = "${pkgs.redmine}/share/redmine";
+      environment.REDMINE_LANG = "en";
+      environment.GEM_HOME = "${pkgs.redmine}/share/redmine/vendor/bundle/ruby/1.9.1";
+      environment.GEM_PATH = "${rubyLibs.bundler}/lib/ruby/gems/1.9";
+      path = with pkgs; [
+        imagemagickBig
+        subversion
+        mercurial
+        cvs
+        config.services.postgresql.package
+        bazaar
+        gitAndTools.git
+        # once we build binaries for darc enable it
+        #darcs
+      ];
+      preStart = ''
+        # TODO: use env vars
+        for i in plugins public/plugin_assets db files log config cache var/files tmp; do
+          mkdir -p ${cfg.stateDir}/$i
+        done
+
+        chown -R redmine:redmine ${cfg.stateDir}
+        chmod -R 755 ${cfg.stateDir}
+
+        rm -rf ${cfg.stateDir}/public/*
+        cp -R ${pkgs.redmine}/share/redmine/public/* ${cfg.stateDir}/public/
+        for theme in ${concatStringsSep " " (mapAttrsToList unpackTheme cfg.themes)}; do
+          ln -fs $theme/* ${cfg.stateDir}/public/themes/
+        done
+
+        rm -rf ${cfg.stateDir}/plugins/*
+        for plugin in ${concatStringsSep " " (mapAttrsToList unpackPlugin cfg.plugins)}; do
+          ln -fs $plugin/* ${cfg.stateDir}/plugins/''${plugin##*-redmine-plugin-}
+        done
+
+        ln -fs ${pkgs.writeText "database.yml" databaseYml} ${cfg.stateDir}/config/database.yml
+        ln -fs ${pkgs.writeText "configuration.yml" configurationYml} ${cfg.stateDir}/config/configuration.yml
+
+        if [ "${cfg.databaseHost}" = "127.0.0.1" ]; then
+          if ! test -e "${cfg.stateDir}/db-created"; then
+            psql postgres -c "CREATE ROLE redmine WITH LOGIN NOCREATEDB NOCREATEROLE NOCREATEUSER ENCRYPTED PASSWORD '${cfg.databasePassword}'"
+            ${config.services.postgresql.package}/bin/createdb --owner redmine redmine || true
+            touch "${cfg.stateDir}/db-created"
+          fi
+        fi
+
+        cd ${pkgs.redmine}/share/redmine/
+        ${ruby}/bin/rake db:migrate
+        ${ruby}/bin/rake redmine:plugins:migrate
+        ${ruby}/bin/rake redmine:load_default_data
+        ${ruby}/bin/rake generate_secret_token
+      '';
+
+      serviceConfig = {
+        PermissionsStartOnly = true; # preStart must be run as root
+        Type = "simple";
+        User = "redmine";
+        Group = "redmine";
+        TimeoutSec = "300";
+        WorkingDirectory = "${pkgs.redmine}/share/redmine";
+        ExecStart="${ruby}/bin/ruby ${pkgs.redmine}/share/redmine/script/rails server webrick -e production -P ${cfg.stateDir}/redmine.pid";
+      };
+
+    };
+
+  };
+
+}
diff --git a/nixos/modules/services/network-filesystems/nfsd.nix b/nixos/modules/services/network-filesystems/nfsd.nix
index 57d56cd7287..893df51fc1f 100644
--- a/nixos/modules/services/network-filesystems/nfsd.nix
+++ b/nixos/modules/services/network-filesystems/nfsd.nix
@@ -64,6 +64,13 @@ in
             Use fixed port for rpc.mountd, usefull if server is behind firewall.
           '';
         };
+
+        lockdPort = mkOption {
+          default = 0;
+          description = ''
+            Fix the lockd port number. This can help setting firewall rules for NFS.
+          '';
+        };
       };
 
     };
@@ -104,6 +111,9 @@ in
             # Create a state directory required by NFSv4.
             mkdir -p /var/lib/nfs/v4recovery
 
+            ${pkgs.procps}/sbin/sysctl -w fs.nfs.nlm_tcpport=${builtins.toString cfg.lockdPort}
+            ${pkgs.procps}/sbin/sysctl -w fs.nfs.nlm_udpport=${builtins.toString cfg.lockdPort}
+
             rpc.nfsd \
               ${if cfg.hostName != null then "-H ${cfg.hostName}" else ""} \
               ${builtins.toString cfg.nproc}
diff --git a/nixos/modules/services/networking/prosody.nix b/nixos/modules/services/networking/prosody.nix
new file mode 100644
index 00000000000..f82f8bfddbb
--- /dev/null
+++ b/nixos/modules/services/networking/prosody.nix
@@ -0,0 +1,280 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+  cfg = config.services.prosody;
+
+  sslOpts = { ... }: {
+
+    options = {
+
+      # TODO: require attribute
+      key = mkOption {
+        type = types.str;
+        description = "Path to the key file";
+      };
+
+      # TODO: require attribute
+      cert = mkOption {
+        type = types.str;
+        description = "Path to the certificate file";
+      };
+    };
+  };
+
+  moduleOpts = {
+
+    roster = mkOption {
+      default = true;
+      description = "Allow users to have a roster";
+    };
+
+    saslauth = mkOption {
+      default = true;
+      description = "Authentication for clients and servers. Recommended if you want to log in.";
+    };
+
+    tls = mkOption {
+      default = true;
+      description = "Add support for secure TLS on c2s/s2s connections";
+    };
+
+    dialback = mkOption {
+      default = true;
+      description = "s2s dialback support";
+    };
+
+    disco = mkOption {
+      default = true;
+      description = "Service discovery";
+    };
+
+    legacyauth = mkOption {
+      default = true;
+      description = "Legacy authentication. Only used by some old clients and bots";
+    };
+
+    version = mkOption {
+      default = true;
+      description = "Replies to server version requests";
+    };
+
+    uptime = mkOption {
+      default = true;
+      description = "Report how long server has been running";
+    };
+
+    time = mkOption {
+      default = true;
+      description = "Let others know the time here on this server";
+    };
+
+    ping = mkOption {
+      default = true;
+      description = "Replies to XMPP pings with pongs";
+    };
+
+    console = mkOption {
+      default = false;
+      description = "telnet to port 5582";
+    };
+
+    bosh = mkOption {
+      default = false;
+      description = "Enable BOSH clients, aka 'Jabber over HTTP'";
+    };
+
+    httpserver = mkOption {
+      default = false;
+      description = "Serve static files from a directory over HTTP";
+    };
+
+    websocket = mkOption {
+      default = false;
+      description = "Enable WebSocket support";
+    };
+
+  };
+
+  createSSLOptsStr = o:
+    if o ? key && o ? cert then
+      ''ssl = { key = "${o.key}"; certificate = "${o.cert}"; };''
+    else "";
+
+  vHostOpts = { ... }: {
+
+    options = {
+
+      # TODO: require attribute
+      domain = mkOption {
+        type = types.str;
+        description = "Domain name";
+      };
+
+      enabled = mkOption {
+        default = false;
+        description = "Whether to enable the virtual host";
+      };
+
+      ssl = mkOption {
+        description = "Paths to SSL files";
+        default = null;
+        options = [ sslOpts ];
+      };
+
+      extraConfig = mkOption {
+        default = '''';
+        description = "Additional virtual host specific configuration";
+      };
+
+    };
+
+  };
+
+in
+
+{
+
+  ###### interface
+
+  options = {
+
+    services.prosody = {
+
+      enable = mkOption {
+        default = false;
+        description = "Whether to enable the prosody server";
+      };
+
+      allowRegistration = mkOption {
+        default = false;
+        description = "Allow account creation";
+      };
+
+      modules = moduleOpts;
+
+      extraModules = mkOption {
+        description = "Enable custom modules";
+        default = [];
+      };
+
+      virtualHosts = mkOption {
+
+        description = "Define the virtual hosts";
+
+        type = types.loaOf types.optionSet;
+
+        example = {
+          myhost = {
+            domain = "my-xmpp-example-host.org";
+            enabled = true;
+          };
+        };
+
+        default = {
+          localhost = {
+            domain = "localhost";
+            enabled = true;
+          };
+        };
+
+        options = [ vHostOpts ];
+      };
+
+      ssl = mkOption {
+        description = "Paths to SSL files";
+        default = null;
+        options = [ sslOpts ];
+      };
+
+      admins = mkOption {
+        description = "List of administrators of the current host";
+        example = [ "admin1@example.com" "admin2@example.com" ];
+        default = [];
+      };
+
+      extraConfig = mkOption {
+        default = '''';
+        description = "Additional prosody configuration";
+      };
+
+    };
+  };
+
+
+  ###### implementation
+
+  config = mkIf cfg.enable {
+
+    environment.systemPackages = [ pkgs.prosody ];
+
+    environment.etc."prosody/prosody.cfg.lua".text = ''
+
+      pidfile = "/var/lib/prosody/prosody.pid"
+
+
+      log = "*syslog"
+
+      data_path = "/var/lib/prosody"
+
+      allow_registration = ${ if cfg.allowRegistration then "true" else "false" };
+
+      ${ optionalString cfg.modules.console "console_enabled = true;" }
+
+      ${ optionalString  (cfg.ssl != null) (createSSLOptsStr cfg.ssl) }
+
+      admins = { ${lib.concatStringsSep ", " (map (n: "\"${n}\"") cfg.admins) } };
+
+      modules_enabled = {
+
+        ${ lib.concatStringsSep "\n\ \ " (lib.mapAttrsToList
+          (name: val: optionalString val ''"${name}";'')
+        cfg.modules) }
+
+        ${ optionalString cfg.allowRegistration "\"register\"\;" }
+
+        ${ lib.concatStringsSep "\n" (map (x: "\"${x}\";") cfg.extraModules)}
+
+        "posix";
+      };
+
+      ${ cfg.extraConfig }
+
+      ${ lib.concatStringsSep "\n" (lib.mapAttrsToList (n: v: ''
+        VirtualHost "${v.domain}"
+          enabled = ${if v.enabled then "true" else "false"};
+          ${ optionalString (v.ssl != null) (createSSLOptsStr v.ssl) }
+          ${ v.extraConfig }
+        '') cfg.virtualHosts) }
+    '';
+
+    users.extraUsers.prosody = {
+      uid = config.ids.uids.prosody;
+      description = "Prosody user";
+      createHome = true;
+      group = "prosody";
+      home = "/var/lib/prosody";
+    };
+
+    users.extraGroups.prosody = {
+      gid = config.ids.gids.prosody;
+    };
+
+    systemd.services.prosody = {
+
+      description = "Prosody XMPP server";
+      after = [ "network.target" ];
+      wantedBy = [ "multi-user.target" ];
+      serviceConfig = {
+        User = "prosody";
+        PIDFile = "/var/lib/prosody/prosody.pid";
+        ExecStart = "${pkgs.prosody}/bin/prosodyctl start";
+      };
+
+    };
+
+  };
+
+}
diff --git a/nixos/modules/services/networking/seeks.nix b/nixos/modules/services/networking/seeks.nix
new file mode 100644
index 00000000000..155ecbb98ef
--- /dev/null
+++ b/nixos/modules/services/networking/seeks.nix
@@ -0,0 +1,75 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+  cfg = config.services.seeks;
+
+  confDir = cfg.confDir;
+
+  seeks = pkgs.seeks.override { seeks_confDir = confDir; };
+
+in
+
+{
+
+  ###### interface
+
+  options = {
+
+    services.seeks = {
+
+      enable = mkOption {
+        default = false;
+        type = types.bool;
+        description = "
+          Whether to enable the Seeks server.
+        ";
+      };
+
+      confDir = mkOption {
+        default = "";
+        type = types.str;
+        description = "
+          The Seeks server configuration. If it is not specified,
+          a default configuration is used (${seeks}/etc/seeks).
+        ";
+      };
+
+    };
+
+  };
+
+
+  ###### implementation
+
+  config = mkIf config.services.seeks.enable {
+
+    users.extraUsers.seeks =
+      { uid = config.ids.uids.seeks;
+        description = "Seeks user";
+        createHome = true;
+        home = "/var/lib/seeks";
+      };
+
+    users.extraGroups.seeks =
+      { gid = config.ids.gids.seeks;
+      };
+
+    systemd.services.seeks =
+      {
+        description = "Seeks server, the p2p search engine.";
+        after = [ "network.target" ];
+        wantedBy = [ "multi-user.target" ];
+        serviceConfig = {
+          User = "seeks";
+          ExecStart = "${seeks}/bin/seeks";
+        };
+      };
+
+    environment.systemPackages = [ seeks ];
+
+  };
+
+}
diff --git a/nixos/modules/services/scheduling/cron.nix b/nixos/modules/services/scheduling/cron.nix
index 9ce0bcbec7e..ded3010ec5a 100644
--- a/nixos/modules/services/scheduling/cron.nix
+++ b/nixos/modules/services/scheduling/cron.nix
@@ -25,6 +25,10 @@ let
     sendmailPath = "/var/setuid-wrappers/sendmail";
   };
 
+  allFiles = map (f: "\"${f}\"") (
+    [ "${systemCronJobsFile}" ] ++ config.services.cron.cronFiles
+  );
+
 in
 
 {
@@ -71,6 +75,15 @@ in
         '';
       };
 
+      cronFiles = mkOption {
+        type = types.listOf types.path;
+        default = [];
+        description = ''
+          A list of extra crontab files that will be read and appended to the main
+          crontab file when the cron service starts.
+        '';
+      };
+
     };
 
   };
@@ -78,14 +91,7 @@ in
 
   ###### implementation
 
-  config = mkIf config.services.cron.enable {
-
-    environment.etc = singleton
-      # The system-wide crontab.
-      { source = systemCronJobsFile;
-        target = "crontab";
-        mode = "0600"; # Cron requires this.
-      };
+  config = mkIf (config.services.cron.enable && allFiles != []) {
 
     security.setuidPrograms = [ "crontab" ];
 
@@ -100,6 +106,10 @@ in
 
         preStart =
           ''
+            rm -f /etc/crontab
+            cat ${toString allFiles} > /etc/crontab
+            chmod 0600 /etc/crontab
+
             mkdir -m 710 -p /var/cron
 
             # By default, allow all users to create a crontab.  This
diff --git a/nixos/modules/services/x11/window-managers/default.nix b/nixos/modules/services/x11/window-managers/default.nix
index 45a4e947e0a..4f2a2309b60 100644
--- a/nixos/modules/services/x11/window-managers/default.nix
+++ b/nixos/modules/services/x11/window-managers/default.nix
@@ -18,6 +18,7 @@ in
       ./i3.nix
       ./herbstluftwm.nix
       ./bspwm.nix
+      ./stumpwm.nix
     ];
 
   options = {
@@ -60,4 +61,4 @@ in
   config = {
     services.xserver.displayManager.session = cfg.session;
   };
-}
+}
\ No newline at end of file
diff --git a/nixos/modules/services/x11/window-managers/stumpwm.nix b/nixos/modules/services/x11/window-managers/stumpwm.nix
new file mode 100644
index 00000000000..a876f13fd21
--- /dev/null
+++ b/nixos/modules/services/x11/window-managers/stumpwm.nix
@@ -0,0 +1,30 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.xserver.windowManager.stumpwm;
+in
+
+{
+  options = {
+    services.xserver.windowManager.stumpwm = {
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        example = true;
+        description = "Enable the stumpwm tiling window manager.";
+      };
+    };
+  };
+
+  config = mkIf cfg.enable {
+    services.xserver.windowManager.session = singleton {
+      name = "stumpwm";
+      start = "
+        ${pkgs.stumpwm}/bin/stumpwm
+      ";
+    };
+    environment.systemPackages = [ pkgs.stumpwm ];
+  };
+}
diff --git a/nixos/modules/system/boot/stage-1-init.sh b/nixos/modules/system/boot/stage-1-init.sh
index f14f105ef23..5a9beeeafa1 100644
--- a/nixos/modules/system/boot/stage-1-init.sh
+++ b/nixos/modules/system/boot/stage-1-init.sh
@@ -368,6 +368,14 @@ exec 3>&-
 @postMountCommands@
 
 
+# Emit a udev rule for /dev/root to prevent systemd from complaining.
+eval $(udevadm info --export --export-prefix=ROOT_ --device-id-of-file=$targetRoot || true)
+if [ "$ROOT_MAJOR" -a "$ROOT_MINOR" -a "$ROOT_MAJOR" != 0 ]; then
+    mkdir -p /run/udev/rules.d
+    echo 'ACTION=="add|change", SUBSYSTEM=="block", ENV{MAJOR}=="'$ROOT_MAJOR'", ENV{MINOR}=="'$ROOT_MINOR'", SYMLINK+="root"' > /run/udev/rules.d/61-dev-root-link.rules
+fi
+
+
 # Stop udevd.
 udevadm control --exit || true
 
diff --git a/nixos/modules/system/boot/stage-1.nix b/nixos/modules/system/boot/stage-1.nix
index 1ec11e70e84..6b09559876c 100644
--- a/nixos/modules/system/boot/stage-1.nix
+++ b/nixos/modules/system/boot/stage-1.nix
@@ -346,9 +346,6 @@ in
       (isYes "BLK_DEV_INITRD")
     ];
 
-    # Prevent systemd from waiting for the /dev/root symlink.
-    systemd.units."dev-root.device".text = "";
-
     boot.initrd.supportedFilesystems = map (fs: fs.fsType) fileSystems;
 
   };
diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix
index 1c4bbc16b49..eb72bfba33c 100644
--- a/nixos/modules/tasks/filesystems/zfs.nix
+++ b/nixos/modules/tasks/filesystems/zfs.nix
@@ -155,6 +155,7 @@ in
       systemd.services."zpool-import" = {
         description = "Import zpools";
         after = [ "systemd-udev-settle.service" ];
+        wantedBy = [ "local-fs.target" ];
         serviceConfig = {
           Type = "oneshot";
           RemainAfterExit = true;
diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix
index 6f6000cf339..22b52f77b14 100644
--- a/nixos/modules/tasks/network-interfaces.nix
+++ b/nixos/modules/tasks/network-interfaces.nix
@@ -773,29 +773,28 @@ in
             wantedBy = [ "network.target" (subsystemDevice n) ];
             bindsTo = deps;
             after = deps;
+            before = [ "${n}-cfg.service" ];
             serviceConfig.Type = "oneshot";
             serviceConfig.RemainAfterExit = true;
             path = [ pkgs.ifenslave pkgs.iproute ];
             script = ''
-              # Remove Dead Interfaces
-              ip link set "${n}" down >/dev/null 2>&1 || true
-              ifenslave -d "${n}" >/dev/null 2>&1 || true
-              ip link del "${n}" >/dev/null 2>&1 || true
-
               ip link add name "${n}" type bond
 
               # !!! There must be a better way to wait for the interface
               while [ ! -d /sys/class/net/${n} ]; do sleep 0.1; done;
 
+              # Ensure the link is down so that we can set options
+              ip link set "${n}" down
+
               # Set the miimon and mode options
               ${optionalString (v.miimon != null)
-                "echo ${toString v.miimon} > /sys/class/net/${n}/bonding/miimon"}
+                "echo \"${toString v.miimon}\" >/sys/class/net/${n}/bonding/miimon"}
               ${optionalString (v.mode != null)
-                "echo \"${v.mode}\" > /sys/class/net/${n}/bonding/mode"}
+                "echo \"${v.mode}\" >/sys/class/net/${n}/bonding/mode"}
               ${optionalString (v.lacp_rate != null)
-                "echo \"${v.lacp_rate}\" > /sys/class/net/${n}/bonding/lacp_rate"}
+                "echo \"${v.lacp_rate}\" >/sys/class/net/${n}/bonding/lacp_rate"}
               ${optionalString (v.xmit_hash_policy != null)
-                "echo \"${v.xmit_hash_policy}\" > /sys/class/net/${n}/bonding/xmit_hash_policy"}
+                "echo \"${v.xmit_hash_policy}\" >/sys/class/net/${n}/bonding/xmit_hash_policy"}
 
               # Bring up the bond and enslave the specified interfaces
               ip link set "${n}" up
@@ -804,8 +803,10 @@ in
               '')}
             '';
             postStop = ''
-              ip link set "${n}" down >dev/null 2>&1 || true
-              ifenslave -d "${n}" >/dev/null 2>&1 || true
+              ${flip concatMapStrings v.interfaces (i: ''
+                ifenslave -d "${n}" "${i}" >/dev/null 2>&1 || true
+              '')}
+              ip link set "${n}" down >/dev/null 2>&1 || true
               ip link del "${n}" >/dev/null 2>&1 || true
             '';
           });
diff --git a/nixos/modules/virtualisation/amazon-image.nix b/nixos/modules/virtualisation/amazon-image.nix
index e129e496fe3..552d787b447 100644
--- a/nixos/modules/virtualisation/amazon-image.nix
+++ b/nixos/modules/virtualisation/amazon-image.nix
@@ -70,10 +70,10 @@ in
 
             # Register the paths in the Nix database.
             printRegistration=1 perl ${pkgs.pathsFromGraph} /tmp/xchg/closure | \
-                chroot /mnt ${config.nix.package}/bin/nix-store --load-db
+                chroot /mnt ${config.nix.package}/bin/nix-store --load-db --option build-users-group ""
 
             # Create the system profile to allow nixos-rebuild to work.
-            chroot /mnt ${config.nix.package}/bin/nix-env \
+            chroot /mnt ${config.nix.package}/bin/nix-env --option build-users-group "" \
                 -p /nix/var/nix/profiles/system --set ${config.system.build.toplevel}
 
             # `nixos-rebuild' requires an /etc/NIXOS.
diff --git a/nixos/modules/virtualisation/qemu-vm.nix b/nixos/modules/virtualisation/qemu-vm.nix
index 33f48d65d43..a7610b3e11a 100644
--- a/nixos/modules/virtualisation/qemu-vm.nix
+++ b/nixos/modules/virtualisation/qemu-vm.nix
@@ -383,7 +383,7 @@ in
 
     # When building a regular system configuration, override whatever
     # video driver the host uses.
-    services.xserver.videoDrivers = mkVMOverride [ "vesa" ];
+    services.xserver.videoDrivers = mkVMOverride [ "modesetting" ];
     services.xserver.defaultDepth = mkVMOverride 0;
     services.xserver.resolutions = mkVMOverride [ { x = 1024; y = 768; } ];
     services.xserver.monitorSection =
diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix
index ca7ca2afb65..5173c33cab7 100644
--- a/nixos/release-combined.nix
+++ b/nixos/release-combined.nix
@@ -47,12 +47,10 @@ in rec {
         (all nixos.iso_graphical)
         (all nixos.ova)
 
-        #(all nixos.tests.efi-installer.simple)
         #(all nixos.tests.containers)
         (all nixos.tests.firefox)
         (all nixos.tests.firewall)
         (all nixos.tests.gnome3)
-        #(all nixos.tests.installer.efi)
         (all nixos.tests.installer.grub1)
         (all nixos.tests.installer.lvm)
         (all nixos.tests.installer.separateBoot)
diff --git a/nixos/release-small.nix b/nixos/release-small.nix
new file mode 100644
index 00000000000..243dddcd12c
--- /dev/null
+++ b/nixos/release-small.nix
@@ -0,0 +1,91 @@
+# This jobset is used to generate a NixOS channel that contains a
+# small subset of Nixpkgs, mostly useful for servers that need fast
+# security updates.
+
+{ nixpkgs ? { outPath = ./..; revCount = 56789; shortRev = "gfedcba"; }
+, stableBranch ? false
+, supportedSystems ? [ "x86_64-linux" ] # no i686-linux
+}:
+
+let
+
+  nixpkgsSrc = nixpkgs; # urgh
+
+  pkgs = import ./.. {};
+
+  lib = pkgs.lib;
+
+  nixos' = import ./release.nix {
+    inherit stableBranch supportedSystems;
+    nixpkgs = nixpkgsSrc;
+  };
+
+  nixpkgs' = builtins.removeAttrs (import ../pkgs/top-level/release.nix {
+    inherit supportedSystems;
+    nixpkgs = nixpkgsSrc;
+  }) [ "unstable" ];
+
+in rec {
+
+  nixos = {
+    inherit (nixos') channel manual iso_minimal dummy;
+    tests = {
+      inherit (nixos'.tests)
+        containers
+        firewall
+        ipv6
+        login
+        misc
+        nat
+        nfs3
+        openssh
+        proxy
+        simple;
+      installer = {
+        inherit (nixos'.tests.installer)
+          grub1
+          lvm
+          separateBoot
+          simple;
+      };
+    };
+  };
+
+  nixpkgs = {
+    inherit (nixpkgs')
+      apacheHttpd_2_2
+      apacheHttpd_2_4
+      cmake
+      cryptsetup
+      emacs
+      gettext
+      git
+      imagemagick
+      linux
+      mysql51
+      mysql55
+      nginx
+      openssh
+      php
+      postgresql92
+      postgresql93
+      python
+      rsyslog
+      stdenv
+      subversion
+      tarball
+      vim;
+  };
+
+  tested = pkgs.releaseTools.aggregate {
+    name = "nixos-${nixos.channel.version}";
+    meta = {
+      description = "Release-critical builds for the NixOS channel";
+      maintainers = [ lib.maintainers.eelco ];
+    };
+    constituents =
+      let all = x: map (system: x.${system}) supportedSystems; in
+      [ nixpkgs.tarball ] ++ lib.collect lib.isDerivation nixos;
+  };
+
+}
diff --git a/nixos/release.nix b/nixos/release.nix
index 7337ad7e3f4..e782b0b7c63 100644
--- a/nixos/release.nix
+++ b/nixos/release.nix
@@ -132,6 +132,10 @@ in rec {
   manpages = buildFromConfig ({ pkgs, ... }: { }) (config: config.system.build.manual.manpages);
 
 
+  # Build the initial ramdisk so Hydra can keep track of its size over time.
+  initialRamdisk = buildFromConfig ({ pkgs, ... }: { }) (config: config.system.build.initialRamdisk);
+
+
   iso_minimal = forAllSystems (system: makeIso {
     module = ./modules/installer/cd-dvd/installation-cd-minimal.nix;
     type = "minimal";
@@ -188,12 +192,15 @@ in rec {
 
   # Ensure that all packages used by the minimal NixOS config end up in the channel.
   dummy = forAllSystems (system: pkgs.runCommand "dummy"
-    { propagatedBuildInputs = (import lib/eval-config.nix {
+    { toplevel = (import lib/eval-config.nix {
         inherit system;
-        modules = lib.singleton ({ config, pkgs, ... }: { });
-      }).config.environment.systemPackages;
+        modules = lib.singleton ({ config, pkgs, ... }:
+          { fileSystems."/".device  = lib.mkDefault "/dev/sda1";
+            boot.loader.grub.device = lib.mkDefault "/dev/sda";
+          });
+      }).config.system.build.toplevel;
     }
-    "mkdir $out; fixupPhase");
+    "mkdir $out; ln -s $toplevel $out/dummy");
 
 
   # Provide a tarball that can be unpacked into an SD card, and easily
@@ -231,7 +238,6 @@ in rec {
   tests.firefox = callTest tests/firefox.nix {};
   tests.firewall = callTest tests/firewall.nix {};
   tests.gnome3 = callTest tests/gnome3.nix {};
-  tests.installer.efi = forAllSystems (system: scrubDrv (import tests/installer.nix { inherit system; }).efi.test);
   tests.installer.grub1 = forAllSystems (system: scrubDrv (import tests/installer.nix { inherit system; }).grub1.test);
   tests.installer.lvm = forAllSystems (system: scrubDrv (import tests/installer.nix { inherit system; }).lvm.test);
   tests.installer.rebuildCD = forAllSystems (system: scrubDrv (import tests/installer.nix { inherit system; }).rebuildCD.test);
diff --git a/nixos/tests/bittorrent.nix b/nixos/tests/bittorrent.nix
index c4a00ee507b..3500ad8ccc3 100644
--- a/nixos/tests/bittorrent.nix
+++ b/nixos/tests/bittorrent.nix
@@ -28,7 +28,7 @@ in
   nodes =
     { tracker =
         { config, pkgs, ... }:
-        { environment.systemPackages = [ pkgs.transmission ];
+        { environment.systemPackages = [ pkgs.transmission pkgs.opentracker ];
 
           # We need Apache on the tracker to serve the torrents.
           services.httpd.enable = true;
@@ -86,7 +86,7 @@ in
 
       # Start the tracker.  !!! use a less crappy tracker
       $tracker->waitForUnit("network.target");
-      $tracker->succeed("bittorrent-tracker --port 6969 --dfile /tmp/dstate >&2 &");
+      $tracker->succeed("opentracker -p 6969 >&2 &");
       $tracker->waitForOpenPort(6969);
 
       # Start the initial seeder.
diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix
index 138a81ad807..4ee0e064c10 100644
--- a/nixos/tests/installer.nix
+++ b/nixos/tests/installer.nix
@@ -35,7 +35,7 @@ let
 
 
   # The configuration to install.
-  makeConfig = { testChannel, useEFI, grubVersion, grubDevice, grubIdentifier
+  makeConfig = { testChannel, grubVersion, grubDevice, grubIdentifier
     , readOnly ? true, forceGrubReinstallCount ? 0 }:
     pkgs.writeText "configuration.nix" ''
       { config, pkgs, modulesPath, ... }:
@@ -46,18 +46,13 @@ let
             <nixpkgs/nixos/modules/profiles/minimal.nix>
           ];
 
-        ${if useEFI then ''
-          boot.loader.efi.canTouchEfiVariables = true;
-          boot.loader.gummiboot.enable = true;
-        '' else ''
-          boot.loader.grub.version = ${toString grubVersion};
-          ${optionalString (grubVersion == 1) ''
-            boot.loader.grub.splashImage = null;
-          ''}
-          boot.loader.grub.device = "${grubDevice}";
-          boot.loader.grub.extraConfig = "serial; terminal_output.serial";
-          boot.loader.grub.fsIdentifier = "${grubIdentifier}";
+        boot.loader.grub.version = ${toString grubVersion};
+        ${optionalString (grubVersion == 1) ''
+          boot.loader.grub.splashImage = null;
         ''}
+        boot.loader.grub.device = "${grubDevice}";
+        boot.loader.grub.extraConfig = "serial; terminal_output.serial";
+        boot.loader.grub.fsIdentifier = "${grubIdentifier}";
 
         boot.loader.grub.configurationLimit = 100 + ${toString forceGrubReinstallCount};
 
@@ -100,16 +95,14 @@ let
   # disk, and then reboot from the hard disk.  It's parameterized with
   # a test script fragment `createPartitions', which must create
   # partitions and filesystems.
-  testScriptFun = { createPartitions, testChannel, useEFI, grubVersion, grubDevice, grubIdentifier }:
+  testScriptFun = { createPartitions, testChannel, grubVersion, grubDevice, grubIdentifier }:
     let
       # FIXME: OVMF doesn't boot from virtio http://www.mail-archive.com/edk2-devel@lists.sourceforge.net/msg01501.html
-      iface = if useEFI || grubVersion == 1 then "scsi" else "virtio";
+      iface = if grubVersion == 1 then "scsi" else "virtio";
       qemuFlags =
         (if iso.system == "x86_64-linux" then "-m 768 " else "-m 512 ") +
-        (optionalString (iso.system == "x86_64-linux") "-cpu kvm64 ") +
-        (optionalString useEFI ''-L ${efiBios} -hda ''${\(Cwd::abs_path('harddisk'))} '');
-      hdFlags = optionalString (!useEFI)
-        ''hda => "harddisk", hdaInterface => "${iface}", '';
+        (optionalString (iso.system == "x86_64-linux") "-cpu kvm64 ");
+      hdFlags =''hda => "harddisk", hdaInterface => "${iface}", '';
     in
     ''
       createDisk("harddisk", 4 * 1024);
@@ -168,7 +161,7 @@ let
       $machine->succeed("cat /mnt/etc/nixos/hardware-configuration.nix >&2");
 
       $machine->copyFileFromHost(
-          "${ makeConfig { inherit testChannel useEFI grubVersion grubDevice grubIdentifier; } }",
+          "${ makeConfig { inherit testChannel grubVersion grubDevice grubIdentifier; } }",
           "/mnt/etc/nixos/configuration.nix");
 
       # Perform the installation.
@@ -189,11 +182,7 @@ let
       # Did /boot get mounted?
       $machine->waitForUnit("local-fs.target");
 
-      ${if useEFI then ''
-        $machine->succeed("test -e /boot/efi");
-      '' else ''
-        $machine->succeed("test -e /boot/grub");
-      ''}
+      $machine->succeed("test -e /boot/grub");
 
       # Did the swap device get activated?
       $machine->waitForUnit("swap.target");
@@ -206,7 +195,7 @@ let
 
       # We need to a writable nix-store on next boot
       $machine->copyFileFromHost(
-          "${ makeConfig { inherit testChannel useEFI grubVersion grubDevice grubIdentifier; readOnly = false; forceGrubReinstallCount = 1; } }",
+          "${ makeConfig { inherit testChannel grubVersion grubDevice grubIdentifier; readOnly = false; forceGrubReinstallCount = 1; } }",
           "/etc/nixos/configuration.nix");
 
       # Check whether nixos-rebuild works.
@@ -223,7 +212,7 @@ let
       $machine = createMachine({ ${hdFlags} qemuFlags => "${qemuFlags}" });
       $machine->waitForUnit("multi-user.target");
       $machine->copyFileFromHost(
-          "${ makeConfig { inherit testChannel useEFI grubVersion grubDevice grubIdentifier; readOnly = false; forceGrubReinstallCount = 2; } }",
+          "${ makeConfig { inherit testChannel grubVersion grubDevice grubIdentifier; readOnly = false; forceGrubReinstallCount = 2; } }",
           "/etc/nixos/configuration.nix");
       $machine->succeed("nixos-rebuild boot >&2");
       $machine->shutdown;
@@ -237,13 +226,13 @@ let
 
 
   makeInstallerTest = name:
-    { createPartitions, testChannel ? false, useEFI ? false, grubVersion ? 2, grubDevice ? "/dev/vda", grubIdentifier ? "uuid" }:
+    { createPartitions, testChannel ? false, grubVersion ? 2, grubDevice ? "/dev/vda", grubIdentifier ? "uuid" }:
     makeTest {
       inherit iso;
       name = "installer-" + name;
       nodes = if testChannel then { inherit webserver; } else { };
       testScript = testScriptFun {
-        inherit createPartitions testChannel useEFI grubVersion grubDevice grubIdentifier;
+        inherit createPartitions testChannel grubVersion grubDevice grubIdentifier;
       };
     };
 
@@ -369,25 +358,6 @@ in {
       grubDevice = "/dev/sda";
     };
 
-  # Test an EFI install.
-  efi = makeInstallerTest "efi"
-    { createPartitions =
-        ''
-          $machine->succeed(
-              "sgdisk -Z /dev/sda",
-              "sgdisk -n 1:0:+256M -n 2:0:+1024M -N 3 -t 1:ef00 -t 2:8200 -t 3:8300 -c 1:boot -c 2:swap -c 3:root /dev/sda",
-              "mkfs.vfat -n BOOT /dev/sda1",
-              "mkswap /dev/sda2 -L swap",
-              "swapon -L swap",
-              "mkfs.ext3 -L nixos /dev/sda3",
-              "mount LABEL=nixos /mnt",
-              "mkdir /mnt/boot",
-              "mount LABEL=BOOT /mnt/boot",
-          );
-        '';
-      useEFI = true;
-    };
-
   # Rebuild the CD configuration with a little modification.
   rebuildCD = makeTest
     { inherit iso;
diff --git a/pkgs/applications/audio/guitarix/default.nix b/pkgs/applications/audio/guitarix/default.nix
index 3a125ef665d..fd61c65dba2 100644
--- a/pkgs/applications/audio/guitarix/default.nix
+++ b/pkgs/applications/audio/guitarix/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "guitarix-${version}";
-  version = "0.30.0";
+  version = "0.31.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/guitarix/guitarix2-${version}.tar.bz2";
-    sha256 = "0fbapd1pcixzlqxgzb2s2q1c64g9z9lf4hz3vy73z55cnpk72vdx";
+    sha256 = "0n3swk4xahspf42qglikfmvcz8my43wmp6sp4ns7h4m8hr9lgfk6";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/audio/moc/default.nix b/pkgs/applications/audio/moc/default.nix
index 9fbf05a2feb..ec9b1dd47ae 100644
--- a/pkgs/applications/audio/moc/default.nix
+++ b/pkgs/applications/audio/moc/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     description = "An ncurses console audio player designed to be powerful and easy to use";
     homepage = http://moc.daper.net/;
     license = licenses.gpl2;
-    maintainers = with maintainers; [ pSub ];
+    maintainers = with maintainers; [ pSub jagajaga ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/audio/yoshimi/default.nix b/pkgs/applications/audio/yoshimi/default.nix
index bc28108b7cb..ec168486f6d 100644
--- a/pkgs/applications/audio/yoshimi/default.nix
+++ b/pkgs/applications/audio/yoshimi/default.nix
@@ -6,11 +6,11 @@ assert stdenv ? glibc;
 
 stdenv.mkDerivation  rec {
   name = "yoshimi-${version}";
-  version = "1.2.3";
+  version = "1.2.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/yoshimi/${name}.tar.bz2";
-    sha256 = "00bp699k8gnilin2rvgj35334s9jrizp82qwlmzzvvfliwcgqlqw";
+    sha256 = "0wz2bc0x0h989schwzqjj6sx9hvzxkw4jrkflwhyrzjini1pvkxz";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/editors/idea/default.nix b/pkgs/applications/editors/idea/default.nix
index f67f23e9e09..5a9ad5e7160 100644
--- a/pkgs/applications/editors/idea/default.nix
+++ b/pkgs/applications/editors/idea/default.nix
@@ -17,7 +17,7 @@ let
     desktopItem = makeDesktopItem {
       name = loName;
       exec = loName;
-      comment = meta.longDescription;
+      comment = lib.replaceChars ["\n"] [" "] meta.longDescription;
       desktopName = product;
       genericName = meta.description;
       categories = "Application;Development;";
@@ -147,54 +147,42 @@ in
 
   android-studio = buildAndroidStudio rec {
     name = "android-studio-${version}";
-    version = "0.8.10";
-    build = "135.1428667";
+    version = "0.8.12";
+    build = "135.1503853";
     description = "Android development environment based on IntelliJ IDEA";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://dl.google.com/dl/android/studio/ide-zips/${version}" +
             "/android-studio-ide-${build}-linux.zip";
-      sha256 = "5736a92ffda24233026ff45a47f1b4f9567ba40347cfa0c9f351112e729b5401";
+      sha256 = "225c8b2f90b9159c465eae5797132350660994184a568c631d4383313a510695";
     };
   };
 
   idea-community = buildIdea rec {
     name = "idea-community-${version}";
-    version = "13.1.4b";
-    build = "IC-135.1230";
+    version = "13.1.5";
+    build = "IC-135.1289";
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "http://download-ln.jetbrains.com/idea/ideaIC-${version}.tar.gz";
-      sha256 = "8b4ee25fd2934e06b87230b50e1474183ed4b331c1626a7fee69b96294d9616d";
+      sha256 = "e08b9adad0ed9aa62a43f3026a1b499d1663710314d00a3bec2e171a6c375f09";
     };
   };
 
   idea-ultimate = buildIdea rec {
     name = "idea-ultimate-${version}";
-    version = "13.1.4b";
-    build = "IU-135.1230";
+    version = "13.1.5";
+    build = "IU-135.1289";
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "http://download-ln.jetbrains.com/idea/ideaIU-${version}.tar.gz";
-      sha256 = "84660d97c9c3e4e7cfd6c2708f4685dc7322157f1e1c2888feac64df119f0606";
+      sha256 = "0800b1ffc135f884e46f1004289fb75850148d705afc447d3374cfd281c231a2";
     };
   };
 
-  pycharm-community-313 = buildPycharm rec {
-    name = "pycharm-community-${version}";
-    version = "3.1.3";
-    build = "133.1347";
-    description = "PyCharm 3.1 Community Edition";
-    license = stdenv.lib.licenses.asl20;
-    src = fetchurl {
-      url = "http://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "f671ee4c99207c179f168b5b98fa23afe90a94c3a3914367b95a46b0c2881b23";
-    };
-  };
-
-  pycharm-community-341 = buildPycharm rec {
+  pycharm-community = buildPycharm rec {
     name = "pycharm-community-${version}";
     version = "3.4.1";
     build = "135.1057";
@@ -206,19 +194,7 @@ in
     };
   };
 
-  pycharm-professional-313 = buildPycharm rec {
-    name = "pycharm-professional-${version}";
-    version = "3.1.3";
-    build = "133.1347";
-    description = "PyCharm 3.1 Professional Edition";
-    license = stdenv.lib.licenses.unfree;
-    src = fetchurl {
-      url = "http://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "e0c2db8f18cb825a95de6ddc4b0b9f93c5643bf34cca9f1b3c2fa37fd7c14f11";
-    };
-  };
-
-  pycharm-professional-341 = buildPycharm rec {
+  pycharm-professional = buildPycharm rec {
     name = "pycharm-professional-${version}";
     version = "3.4.1";
     build = "135.1057";
@@ -230,4 +206,4 @@ in
     };
   };
 
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/editors/sigil/default.nix b/pkgs/applications/editors/sigil/default.nix
new file mode 100644
index 00000000000..516377f0996
--- /dev/null
+++ b/pkgs/applications/editors/sigil/default.nix
@@ -0,0 +1,66 @@
+{ stdenv, fetchurl, unzip, cmake, pkgconfig, makeWrapper
+, hunspell, minizip, boost, xercesc, qt5
+}:
+
+let
+  version = "0.7.4";
+
+in
+
+stdenv.mkDerivation rec {
+  name = "sigil-${version}";
+
+  src = fetchurl {
+    url = "https://sigil.googlecode.com/files/Sigil-${version}-Code.zip";
+    sha256 = "68c7ca15ea8611921af0c435369563f55c6afd2ef1fb0945cf6c4a47429b0fb5";
+  };
+
+  buildInputs = [
+    unzip cmake pkgconfig
+    hunspell minizip boost xercesc qt5
+  ];
+
+  # XXX: the compiler seems to treat the .h file inappropriately:
+  #
+  #    COMMAND ${CMAKE_CXX_COMPILER} ${compile_flags} \
+  #            ${CMAKE_CURRENT_SOURCE_DIR}/${header_name}.h \
+  #           -o ${header_name}.h.gch
+  #
+  #  but using -c or -x c++-header seems to work:
+  #
+  #    COMMAND ${CMAKE_CXX_COMPILER} ${compile_flags} \
+  #            -c ${CMAKE_CURRENT_SOURCE_DIR}/${header_name}.h \
+  #            -o ${header_name}.h.gch
+  #
+  #    COMMAND ${CMAKE_CXX_COMPILER} ${compile_flags} \
+  #            -x c++-header ${CMAKE_CURRENT_SOURCE_DIR}/${header_name}.h \
+  #            -o ${header_name}.h.gch
+  #
+  # Might be related to:
+  #
+  #   http://permalink.gmane.org/gmane.comp.gcc.bugs/361195
+  buildCommand = ''
+    mkdir -pv $out
+    mkdir -pv ${name}/src ${name}/build ${name}/run
+    cd ${name}/src
+    unzip -n ${src}
+    sed -i \
+        -e 's|\(COMMAND\) \([^ ]\+\) \([^ ]\+\) \(.*\)|\1 \2 \3 -c \4|' \
+        cmake_extras/CustomPCH.cmake
+    cd ../build
+    cmake -G "Unix Makefiles" \
+        -DCMAKE_INSTALL_PREFIX=$out \
+        -DCMAKE_BUILD_TYPE=Release \
+        -DCMAKE_SKIP_BUILD_RPATH=ON \
+        ../src
+    make
+    make install
+  '';
+
+  meta = {
+    description = "Free, open source, multi-platform ebook (ePub) editor";
+    homepage = https://code.google.com/p/sigil/;
+    license = stdenv.lib.licenses.gpl3;
+    inherit version;
+  };
+}
diff --git a/pkgs/applications/editors/yi/yi-custom-cabal/LICENSE b/pkgs/applications/editors/yi/yi-custom-cabal/LICENSE
new file mode 100644
index 00000000000..cf1ab25da03
--- /dev/null
+++ b/pkgs/applications/editors/yi/yi-custom-cabal/LICENSE
@@ -0,0 +1,24 @@
+This is free and unencumbered software released into the public domain.
+
+Anyone is free to copy, modify, publish, use, compile, sell, or
+distribute this software, either in source code form or as a compiled
+binary, for any purpose, commercial or non-commercial, and by any
+means.
+
+In jurisdictions that recognize copyright laws, the author or authors
+of this software dedicate any and all copyright interest in the
+software to the public domain. We make this dedication for the benefit
+of the public at large and to the detriment of our heirs and
+successors. We intend this dedication to be an overt act of
+relinquishment in perpetuity of all present and future rights to this
+software under copyright law.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+For more information, please refer to <http://unlicense.org>
diff --git a/pkgs/applications/editors/yi/yi-custom-cabal/yi-custom.cabal b/pkgs/applications/editors/yi/yi-custom-cabal/yi-custom.cabal
new file mode 100644
index 00000000000..d9ffbb8e481
--- /dev/null
+++ b/pkgs/applications/editors/yi/yi-custom-cabal/yi-custom.cabal
@@ -0,0 +1,17 @@
+name:           yi-custom
+version:        0.0.0.1
+category:       Yi
+synopsis:       Convenience wrapper for nix
+description:    Convenience wrapper for nix
+license:        PublicDomain
+license-file:   LICENSE
+author:         Mateusz Kowalczyk
+maintainer:     fuuzetsu@fuuzetsu.co.uk
+Cabal-Version:  >= 1.10
+build-type:     Simple
+
+library
+  hs-source-dirs: .
+  default-language: Haskell2010
+  build-depends: base, yi
+  ghc-options: -threaded
diff --git a/pkgs/applications/editors/yi/yi-custom.nix b/pkgs/applications/editors/yi/yi-custom.nix
new file mode 100644
index 00000000000..59436392408
--- /dev/null
+++ b/pkgs/applications/editors/yi/yi-custom.nix
@@ -0,0 +1,42 @@
+# This is a manually-written expression over an in-tree cabal file.
+# It's awkward but this way allows the package user to pass in
+# extraPackages without much extra hassle on their end, similarly how
+# the XMonad service handles it: the difference is that we don't have
+# anything like XMONAD_GHC…
+#
+# The idea is that the user changes their configs using any libraries
+# he likes and then builds it using this expression. Once that's done,
+# ‘reload’ and similar functions should all work as long as the user
+# doesn't need new libraries at which point they should add them to
+# extraPackages and rebuild from the expression.
+{ cabal, yi, extraPackages, makeWrapper }:
+
+cabal.mkDerivation (self: rec {
+  pname = "yi-custom";
+  version = "0.0.0.1";
+  src = ./yi-custom-cabal;
+  isLibrary = true;
+  buildDepends = extraPackages ++ [ yi ];
+  buildTools = [ makeWrapper ];
+  noHaddock = true;
+  doCheck = false;
+
+  # Allows Yi to find the libraries it needs at runtime. We drop ‘:’
+  # from this GHC_PACKAGE_PATH because we're wrapping over a different
+  # wrapper that used --prefix: if we didn't, we end up with a
+  # double-colon, confusing GHC.
+  postInstall = ''
+    makeWrapper ${yi}/bin/yi $out/bin/yi --set GHC_PACKAGE_PATH ''${GHC_PACKAGE_PATH%?}
+  '';
+
+  meta = {
+    homepage = "http://haskell.org/haskellwiki/Yi";
+    description = "Wrapper over user-specified Haskell libraries for use in Yi config";
+    license = self.stdenv.lib.licenses.publicDomain;
+    platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
+    # The wrapper does not yet work properly if we actually try to use it.
+    broken = true;
+  };
+
+})
\ No newline at end of file
diff --git a/pkgs/applications/editors/yi/yi.nix b/pkgs/applications/editors/yi/yi.nix
index 9b9287a50f1..c1d1e52db3d 100644
--- a/pkgs/applications/editors/yi/yi.nix
+++ b/pkgs/applications/editors/yi/yi.nix
@@ -1,65 +1,43 @@
-{ cabal, alex, binary, Cabal, cautiousFile, concreteTyperep
-, dataDefault, derive, Diff, dlist, dyre, filepath, fingertree
-, glib, gtk, hashable, hint, HUnit, lens, mtl, pango, parsec
-, pointedlist, QuickCheck, random, regexBase, regexTdfa, safe
-, split, tasty, tastyHunit, tastyQuickcheck, time, transformersBase
-, uniplate, unixCompat, unorderedContainers, utf8String, vty
-, xdgBasedir
-, withPango ? true
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-# User may need extra dependencies for their configuration file so we
-# want to specify it here to have them available when wrapping the
-# produced binary.
-, extraDepends ? [ ]
+{ cabal, binary, Cabal, cautiousFile, dataDefault, derive, dlist
+, dynamicState, dyre, filepath, glib, gtk, hashable, hint, HUnit
+, lens, makeWrapper, mtl, ooPrototypes, pango, parsec, pointedlist
+, QuickCheck, random, regexBase, regexTdfa, safe, semigroups, split
+, tagged, tasty, tastyHunit, tastyQuickcheck, text, time
+, transformersBase, unixCompat, unorderedContainers, utf8String
+, vty, wordTrie, xdgBasedir, yiLanguage, yiRope
 }:
 
 cabal.mkDerivation (self: {
   pname = "yi";
-  version = "0.8.2";
-  sha256 = "18rnyswsdzkh0jdcqfg8pr90mpm6xf11siv598svqkxg12d2qql9";
+  version = "0.10.1";
+  sha256 = "1vj4ndp43w7xlji4p2px79a8g90p64g54sr3hx4pzimwrlpmifk8";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    binary Cabal cautiousFile concreteTyperep dataDefault derive Diff
-    dlist dyre filepath fingertree hashable hint lens mtl
+    binary Cabal cautiousFile dataDefault derive dlist dynamicState
+    dyre filepath glib gtk hashable hint lens mtl ooPrototypes pango
     parsec pointedlist QuickCheck random regexBase regexTdfa safe
-    split time transformersBase uniplate unixCompat unorderedContainers
-    utf8String vty xdgBasedir
-  ] ++ (if withPango then [ pango gtk glib ] else [ ]) ++ extraDepends;
+    semigroups split tagged text time transformersBase unixCompat
+    unorderedContainers utf8String vty wordTrie xdgBasedir yiLanguage
+    yiRope
+  ];
   testDepends = [
-    filepath HUnit QuickCheck tasty tastyHunit tastyQuickcheck
+    filepath HUnit lens QuickCheck semigroups tasty tastyHunit
+    tastyQuickcheck text yiLanguage yiRope
   ];
-  buildTools = [ alex ];
-  configureFlags = if withPango then "-fpango" else "-f-pango";
-  doCheck = false;
-
-  # https://ghc.haskell.org/trac/ghc/ticket/9170
-  noHaddock = self.ghc.version == "7.6.3";
-
-  # Allows Yi to find the libraries it needs at runtime.
+  buildTools = [ makeWrapper ];
+  configureFlags = "-fpango -fvty";
+  noHaddock = self.stdenv.lib.versionOlder self.ghc.version "7.8";
   postInstall = ''
-    mv $out/bin/yi $out/bin/.yi-wrapped
-    cat - > $out/bin/yi <<EOF
-    #! ${self.stdenv.shell}
-    # Trailing : is necessary for it to pick up Prelude &c.
-    export GHC_PACKAGE_PATH=$(${self.ghc.GHCGetPackages} ${self.ghc.version} \
-                              | sed 's/-package-db\ //g' \
-                              | sed 's/^\ //g' \
-                              | sed 's/\ /:/g')\
-    :$out/lib/ghc-${self.ghc.version}/package.conf.d/yi-$version.installedconf:
-
-    eval exec $out/bin/.yi-wrapped "\$@"
-    EOF
-    chmod +x $out/bin/yi
+    wrapProgram $out/bin/yi --suffix GHC_PACKAGE_PATH : $out/lib/ghc-${self.ghc.version}/package.conf.d/yi-$version.installedconf:$GHC_PACKAGE_PATH
   '';
-
   meta = {
     homepage = "http://haskell.org/haskellwiki/Yi";
     description = "The Haskell-Scriptable Editor";
     license = self.stdenv.lib.licenses.gpl2;
     platforms = self.ghc.meta.platforms;
-    hydraPlatforms = self.stdenv.lib.platforms.none;
-    maintainers = [ self.stdenv.lib.maintainers.fuuzetsu ];
-    broken = true;
+    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
   };
 })
diff --git a/pkgs/applications/gis/qgis/default.nix b/pkgs/applications/gis/qgis/default.nix
index 9a41bcc36ec..82f1bc382d7 100644
--- a/pkgs/applications/gis/qgis/default.nix
+++ b/pkgs/applications/gis/qgis/default.nix
@@ -9,7 +9,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake python ];
 
-  enableParallelBuilding = true;
+  # fatal error: ui_qgsdelimitedtextsourceselectbase.h: No such file or directory
+  #enableParallelBuilding = true;
 
   # To handle the lack of 'local' RPATH; required, as they call one of
   # their built binaries requiring their libs, in the build process.
diff --git a/pkgs/applications/graphics/dia/default.nix b/pkgs/applications/graphics/dia/default.nix
index da683888063..e498533d63d 100644
--- a/pkgs/applications/graphics/dia/default.nix
+++ b/pkgs/applications/graphics/dia/default.nix
@@ -7,8 +7,8 @@ stdenv.mkDerivation rec {
 
   src = fetchurlGnome {
     project = "dia";
-    major = "0"; minor = "97"; patchlevel = "2"; extension = "xz";
-    sha256 = "1qgawm7rrf4wd1yc0fp39ywv8gbz4ry1s16k00dzg5w6p67lfqd7";
+    major = "0"; minor = "97"; patchlevel = "3"; extension = "xz";
+    sha256 = "0d3x6w0l6fwd0l8xx06y1h56xf8ss31yzia3a6xr9y28xx44x492";
   };
 
   correctPersistence = fetchurl {
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   configureFlags = stdenv.lib.optionalString withGNOME "--enable-gnome";
 
-  patches = [ ./glib-top-level-header.patch ];
+  patches = [ ];
 
   # This file should normally require a gtk-update-icon-cache -q /usr/share/icons/hicolor command
   # It have no reasons to exist in a redistribuable package
diff --git a/pkgs/applications/graphics/dia/glib-top-level-header.patch b/pkgs/applications/graphics/dia/glib-top-level-header.patch
deleted file mode 100644
index 80460ae9d72..00000000000
--- a/pkgs/applications/graphics/dia/glib-top-level-header.patch
+++ /dev/null
@@ -1,471 +0,0 @@
-diff -Naur dia-0.97.2-orig/app/app_procs.c dia-0.97.2/app/app_procs.c
---- dia-0.97.2-orig/app/app_procs.c	2011-03-20 07:18:13.000000000 -0400
-+++ dia-0.97.2/app/app_procs.c	2012-07-15 10:49:08.192726306 -0400
-@@ -50,7 +50,7 @@
- #include <libxml/parser.h>
- #include <libxml/xmlerror.h>
- 
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "app_procs.h"
-diff -Naur dia-0.97.2-orig/app/dia-win-remote.c dia-0.97.2/app/dia-win-remote.c
---- dia-0.97.2-orig/app/dia-win-remote.c	2010-08-03 11:35:35.000000000 -0400
-+++ dia-0.97.2/app/dia-win-remote.c	2012-07-15 10:49:08.159726316 -0400
-@@ -35,7 +35,7 @@
- #include <shellapi.h>
- #include <Shlwapi.h>
- #include <glib.h>
--#include <glib/gprintf.h>
-+#include <glib.h>
- 
- /**
-  * PROTOTYPES:
-diff -Naur dia-0.97.2-orig/app/filedlg.c dia-0.97.2/app/filedlg.c
---- dia-0.97.2-orig/app/filedlg.c	2009-11-07 12:13:53.000000000 -0500
-+++ dia-0.97.2/app/filedlg.c	2012-07-15 10:49:08.227726294 -0400
-@@ -28,7 +28,7 @@
- #include <unistd.h>
- #endif
- #include <stdio.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #undef GTK_DISABLE_DEPRECATED /* gtk_file_chooser_dialog_new_with_backend */
- #include <gtk/gtk.h>
-diff -Naur dia-0.97.2-orig/app/load_save.c dia-0.97.2/app/load_save.c
---- dia-0.97.2-orig/app/load_save.c	2011-09-25 07:55:11.000000000 -0400
-+++ dia-0.97.2/app/load_save.c	2012-07-15 10:49:08.203726303 -0400
-@@ -30,7 +30,7 @@
- #include <string.h>
- 
- #include <glib.h>
--#include <glib/gstdio.h> /* g_access() and friends */
-+#include <glib.h> /* g_access() and friends */
- #include <errno.h>
- 
- #ifndef W_OK
-diff -Naur dia-0.97.2-orig/app/sheets_dialog_callbacks.c dia-0.97.2/app/sheets_dialog_callbacks.c
---- dia-0.97.2-orig/app/sheets_dialog_callbacks.c	2009-11-07 12:13:53.000000000 -0500
-+++ dia-0.97.2/app/sheets_dialog_callbacks.c	2012-07-15 10:49:08.201726302 -0400
-@@ -44,7 +44,7 @@
- #endif
- #endif
- 
--#include <glib/gstdio.h>
-+#include <glib.h>
- #include <gmodule.h>
- 
- #undef GTK_DISABLE_DEPRECATED /* GtkOptionMenu */
-diff -Naur dia-0.97.2-orig/ChangeLog.pre-git dia-0.97.2/ChangeLog.pre-git
---- dia-0.97.2-orig/ChangeLog.pre-git	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/ChangeLog.pre-git	2012-07-15 10:49:08.384726247 -0400
-@@ -4137,7 +4137,7 @@
- 	  plug-ins/vdx/vdx-export.c plug-ins/vdx/vdx-import.c 
- 	  plug-ins/wmf/wmf.cpp plug-ins/wpg/wpg.c 
- 	  plug-ins/xfig/xfig-export.c plug-ins/xfig/xfig-import.c
--	  plug-ins/xslt/xslt.c : use <glib/gstdio.h> to match GLib's filename
-+	  plug-ins/xslt/xslt.c : use <glib.h> to match GLib's filename
- 	encoding to the io functions used, that is: g_open, g_fopen, g_stat, 
- 	g_unlink, g_mkdir, g_rename (, g_access, g_lstat, g_remove, g_freopen, 
- 	g_chdir, g_rmdir). Also replace gzopen() with gzdopen(g_open(), ...)
-@@ -5995,7 +5995,7 @@
- 	Also special case strings starting with \tex - i.e. dont escape them -
- 	to keep the use-case of direct tex input.
- 	
--	* lib/debug.c : #include <glib/gprintf.h> not just <gprintf.h>
-+	* lib/debug.c : #include <glib.h>
- 
- 
- 2006-01-14  Hans Breuer  <hans@breuer.org>
-@@ -6207,7 +6207,7 @@
- 	* lib/makefile.msc : build debug.obj
- 
- 	* plug-ins/makefile.msc : building pgf in the right alphabetical order
--	* plug-ins/pgf/render_pgf.c : include <glib/gprintf.h>
-+	* plug-ins/pgf/render_pgf.c : include <glib.h>
- 	
- 2005-12-08  Lars Clausen  <lars@raeder.dk>
- 
-diff -Naur dia-0.97.2-orig/lib/debug.c dia-0.97.2/lib/debug.c
---- dia-0.97.2-orig/lib/debug.c	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/lib/debug.c	2012-07-15 10:49:06.813726730 -0400
-@@ -21,7 +21,7 @@
- #include <config.h>
- 
- #include <stdio.h>
--#include <glib/gprintf.h>
-+#include <glib.h>
- #include <stdarg.h>
- 
- #include "debug.h"
-diff -Naur dia-0.97.2-orig/lib/dia_dirs.c dia-0.97.2/lib/dia_dirs.c
---- dia-0.97.2-orig/lib/dia_dirs.c	2009-11-07 12:13:53.000000000 -0500
-+++ dia-0.97.2/lib/dia_dirs.c	2012-07-15 10:49:06.740726750 -0400
-@@ -30,7 +30,7 @@
- #include <sys/stat.h>
- #include <sys/types.h>
- #endif
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- /** Get the name of a subdirectory of our data directory.
-  *  This function does not create the subdirectory, just make the correct name.
-diff -Naur dia-0.97.2-orig/lib/dia_xml.c dia-0.97.2/lib/dia_xml.c
---- dia-0.97.2-orig/lib/dia_xml.c	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/lib/dia_xml.c	2012-07-15 10:49:06.770726743 -0400
-@@ -25,7 +25,7 @@
- #include <fcntl.h>
- 
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include <libxml/parser.h>
- #include <libxml/parserInternals.h>
-diff -Naur dia-0.97.2-orig/objects/custom/shape_typeinfo.c dia-0.97.2/objects/custom/shape_typeinfo.c
---- dia-0.97.2-orig/objects/custom/shape_typeinfo.c	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/objects/custom/shape_typeinfo.c	2012-07-15 10:49:06.639726783 -0400
-@@ -27,8 +27,8 @@
- #include "custom_util.h"
- #include <string.h>
- #include <stdarg.h>
--#include <glib/gstrfuncs.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
-+#include <glib.h>
- #include <libxml/parser.h>
- 
- /*
-diff -Naur dia-0.97.2-orig/objects/SISSI/sissi.c dia-0.97.2/objects/SISSI/sissi.c
---- dia-0.97.2-orig/objects/SISSI/sissi.c	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/objects/SISSI/sissi.c	2012-07-15 10:49:06.570726804 -0400
-@@ -42,7 +42,7 @@
- #include "dia_xml_libxml.h"
- 
- #include <string.h>
--#include <glib/gprintf.h>
-+#include <glib.h>
- 
- #define DEFAULT_WIDTH  1.0
- #define DEFAULT_HEIGHT 1.0
-diff -Naur dia-0.97.2-orig/objects/standard/image.c dia-0.97.2/objects/standard/image.c
---- dia-0.97.2-orig/objects/standard/image.c	2009-11-07 12:13:53.000000000 -0500
-+++ dia-0.97.2/objects/standard/image.c	2012-07-15 10:49:06.683726770 -0400
-@@ -25,7 +25,7 @@
- #ifdef HAVE_UNIST_H
- #include <unistd.h>
- #endif
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "message.h"
-diff -Naur dia-0.97.2-orig/plug-ins/cairo/diacairo.c dia-0.97.2/plug-ins/cairo/diacairo.c
---- dia-0.97.2-orig/plug-ins/cairo/diacairo.c	2009-11-07 12:13:53.000000000 -0500
-+++ dia-0.97.2/plug-ins/cairo/diacairo.c	2012-07-15 10:49:06.433726846 -0400
-@@ -28,7 +28,7 @@
- #include <errno.h>
- #define G_LOG_DOMAIN "DiaCairo"
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- /*
-  * To me the following looks rather suspicious. Why do we need to compile
-diff -Naur dia-0.97.2-orig/plug-ins/cairo/diacairo-renderer.c dia-0.97.2/plug-ins/cairo/diacairo-renderer.c
---- dia-0.97.2-orig/plug-ins/cairo/diacairo-renderer.c	2011-01-07 06:54:21.000000000 -0500
-+++ dia-0.97.2/plug-ins/cairo/diacairo-renderer.c	2012-07-15 10:49:06.435726846 -0400
-@@ -28,7 +28,7 @@
- #include <errno.h>
- #define G_LOG_DOMAIN "DiaCairo"
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #ifdef HAVE_PANGOCAIRO_H
- #include <pango/pangocairo.h>
-diff -Naur dia-0.97.2-orig/plug-ins/cgm/cgm.c dia-0.97.2/plug-ins/cgm/cgm.c
---- dia-0.97.2-orig/plug-ins/cgm/cgm.c	2009-12-27 11:22:38.000000000 -0500
-+++ dia-0.97.2/plug-ins/cgm/cgm.c	2012-07-15 10:49:06.425726846 -0400
-@@ -31,7 +31,7 @@
- #include <glib.h>
- #include <errno.h>
- 
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "message.h"
-diff -Naur dia-0.97.2-orig/plug-ins/drs/dia-render-script.c dia-0.97.2/plug-ins/drs/dia-render-script.c
---- dia-0.97.2-orig/plug-ins/drs/dia-render-script.c	2009-11-07 12:13:53.000000000 -0500
-+++ dia-0.97.2/plug-ins/drs/dia-render-script.c	2012-07-15 10:49:06.427726848 -0400
-@@ -54,7 +54,7 @@
- 
- #define G_LOG_DOMAIN "DiaRenderScript"
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "filter.h"
-diff -Naur dia-0.97.2-orig/plug-ins/dxf/dxf-export.c dia-0.97.2/plug-ins/dxf/dxf-export.c
---- dia-0.97.2-orig/plug-ins/dxf/dxf-export.c	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/plug-ins/dxf/dxf-export.c	2012-07-15 10:49:06.421726850 -0400
-@@ -29,7 +29,7 @@
- #include <math.h>
- #include <glib.h>
- #include <errno.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "autocad_pal.h"
- 
-diff -Naur dia-0.97.2-orig/plug-ins/dxf/dxf-import.c dia-0.97.2/plug-ins/dxf/dxf-import.c
---- dia-0.97.2-orig/plug-ins/dxf/dxf-import.c	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/plug-ins/dxf/dxf-import.c	2012-07-15 10:49:06.419726851 -0400
-@@ -30,7 +30,7 @@
- #include <string.h>
- #include <math.h>
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "message.h"
-diff -Naur dia-0.97.2-orig/plug-ins/hpgl/hpgl.c dia-0.97.2/plug-ins/hpgl/hpgl.c
---- dia-0.97.2-orig/plug-ins/hpgl/hpgl.c	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/plug-ins/hpgl/hpgl.c	2012-07-15 10:49:06.487726830 -0400
-@@ -37,7 +37,7 @@
- #include <errno.h>
- 
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "message.h"
-diff -Naur dia-0.97.2-orig/plug-ins/libart/export_png.c dia-0.97.2/plug-ins/libart/export_png.c
---- dia-0.97.2-orig/plug-ins/libart/export_png.c	2011-07-03 06:56:08.000000000 -0400
-+++ dia-0.97.2/plug-ins/libart/export_png.c	2012-07-15 10:49:06.415726849 -0400
-@@ -29,7 +29,7 @@
- #include <errno.h>
- #include <stdlib.h>
- 
--#include <glib/gstdio.h>
-+#include <glib.h>
- #include <gtk/gtk.h>
- 
- #include "intl.h"
-diff -Naur dia-0.97.2-orig/plug-ins/metapost/render_metapost.c dia-0.97.2/plug-ins/metapost/render_metapost.c
---- dia-0.97.2-orig/plug-ins/metapost/render_metapost.c	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/plug-ins/metapost/render_metapost.c	2012-07-15 10:49:06.396726857 -0400
-@@ -43,7 +43,7 @@
- #endif
- #include <errno.h>
- 
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "render_metapost.h"
-diff -Naur dia-0.97.2-orig/plug-ins/pgf/render_pgf.c dia-0.97.2/plug-ins/pgf/render_pgf.c
---- dia-0.97.2-orig/plug-ins/pgf/render_pgf.c	2011-01-07 07:11:34.000000000 -0500
-+++ dia-0.97.2/plug-ins/pgf/render_pgf.c	2012-07-15 10:49:06.445726842 -0400
-@@ -61,8 +61,8 @@
- #endif
- #include <errno.h>
- 
--#include <glib/gprintf.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "render_pgf.h"
-diff -Naur dia-0.97.2-orig/plug-ins/postscript/paginate_psprint.c dia-0.97.2/plug-ins/postscript/paginate_psprint.c
---- dia-0.97.2-orig/plug-ins/postscript/paginate_psprint.c	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/plug-ins/postscript/paginate_psprint.c	2012-07-15 10:49:06.451726838 -0400
-@@ -31,7 +31,7 @@
- #include <errno.h>
- #include <sys/stat.h>
- 
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "message.h"
-diff -Naur dia-0.97.2-orig/plug-ins/postscript/render_eps.c dia-0.97.2/plug-ins/postscript/render_eps.c
---- dia-0.97.2-orig/plug-ins/postscript/render_eps.c	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/plug-ins/postscript/render_eps.c	2012-07-15 10:49:06.451726838 -0400
-@@ -55,7 +55,7 @@
- #include <locale.h>
- #include <errno.h>
- 
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "render_eps.h"
-diff -Naur dia-0.97.2-orig/plug-ins/pstricks/render_pstricks.c dia-0.97.2/plug-ins/pstricks/render_pstricks.c
---- dia-0.97.2-orig/plug-ins/pstricks/render_pstricks.c	2011-01-07 07:11:34.000000000 -0500
-+++ dia-0.97.2/plug-ins/pstricks/render_pstricks.c	2012-07-15 10:49:06.410726853 -0400
-@@ -50,7 +50,7 @@
- #endif
- #include <errno.h>
- 
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "render_pstricks.h"
-diff -Naur dia-0.97.2-orig/plug-ins/python/pydia-render.c dia-0.97.2/plug-ins/python/pydia-render.c
---- dia-0.97.2-orig/plug-ins/python/pydia-render.c	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/plug-ins/python/pydia-render.c	2012-07-15 10:49:06.503726822 -0400
-@@ -21,7 +21,7 @@
- 
- #include <Python.h>
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include <locale.h>
- 
-diff -Naur dia-0.97.2-orig/plug-ins/shape/shape-export.c dia-0.97.2/plug-ins/shape/shape-export.c
---- dia-0.97.2-orig/plug-ins/shape/shape-export.c	2009-11-08 06:14:56.000000000 -0500
-+++ dia-0.97.2/plug-ins/shape/shape-export.c	2012-07-15 10:49:06.489726827 -0400
-@@ -40,7 +40,7 @@
- #include <unistd.h>
- #endif
- 
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- /* the dots per centimetre to render this diagram at */
- /* this matches the setting `100%' setting in dia. */
-diff -Naur dia-0.97.2-orig/plug-ins/svg/render_svg.c dia-0.97.2/plug-ins/svg/render_svg.c
---- dia-0.97.2-orig/plug-ins/svg/render_svg.c	2011-12-17 11:30:38.000000000 -0500
-+++ dia-0.97.2/plug-ins/svg/render_svg.c	2012-07-15 10:49:06.392726859 -0400
-@@ -30,7 +30,7 @@
- #endif
- 
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include <libxml/entities.h>
- #include <libxml/tree.h>
-diff -Naur dia-0.97.2-orig/plug-ins/vdx/vdx-export.c dia-0.97.2/plug-ins/vdx/vdx-export.c
---- dia-0.97.2-orig/plug-ins/vdx/vdx-export.c	2009-12-27 11:22:38.000000000 -0500
-+++ dia-0.97.2/plug-ins/vdx/vdx-export.c	2012-07-15 10:55:17.066579728 -0400
-@@ -32,11 +32,12 @@
- 
- #include <string.h>
- #include <math.h>
-+#include <sys/stat.h>
- #include <glib.h>
- #include <stdlib.h>
- #include <errno.h>
- #include <locale.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "message.h"
-diff -Naur dia-0.97.2-orig/plug-ins/vdx/vdx-import.c dia-0.97.2/plug-ins/vdx/vdx-import.c
---- dia-0.97.2-orig/plug-ins/vdx/vdx-import.c	2009-12-27 11:22:38.000000000 -0500
-+++ dia-0.97.2/plug-ins/vdx/vdx-import.c	2012-07-15 10:49:06.466726836 -0400
-@@ -28,7 +28,7 @@
- #include <string.h>
- #include <math.h>
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- #include <stdlib.h>
- #include <ctype.h>
- #include <libxml/tree.h>
-diff -Naur dia-0.97.2-orig/plug-ins/wmf/wmf.cpp dia-0.97.2/plug-ins/wmf/wmf.cpp
---- dia-0.97.2-orig/plug-ins/wmf/wmf.cpp	2011-03-13 09:07:48.000000000 -0400
-+++ dia-0.97.2/plug-ins/wmf/wmf.cpp	2012-07-15 10:49:06.482726831 -0400
-@@ -25,7 +25,7 @@
- #include <string.h>
- #include <math.h>
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "message.h"
-diff -Naur dia-0.97.2-orig/plug-ins/wpg/wpg.c dia-0.97.2/plug-ins/wpg/wpg.c
---- dia-0.97.2-orig/plug-ins/wpg/wpg.c	2009-11-07 09:28:34.000000000 -0500
-+++ dia-0.97.2/plug-ins/wpg/wpg.c	2012-07-15 10:49:06.406726855 -0400
-@@ -40,7 +40,7 @@
- #include <errno.h>
- 
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "message.h"
-diff -Naur dia-0.97.2-orig/plug-ins/xfig/xfig-export.c dia-0.97.2/plug-ins/xfig/xfig-export.c
---- dia-0.97.2-orig/plug-ins/xfig/xfig-export.c	2011-12-17 11:30:38.000000000 -0500
-+++ dia-0.97.2/plug-ins/xfig/xfig-export.c	2012-07-15 10:49:06.400726856 -0400
-@@ -16,7 +16,7 @@
- #include <locale.h>
- 
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "message.h"
-diff -Naur dia-0.97.2-orig/plug-ins/xfig/xfig-import.c dia-0.97.2/plug-ins/xfig/xfig-import.c
---- dia-0.97.2-orig/plug-ins/xfig/xfig-import.c	2009-11-07 12:13:53.000000000 -0500
-+++ dia-0.97.2/plug-ins/xfig/xfig-import.c	2012-07-15 10:49:06.402726853 -0400
-@@ -40,7 +40,7 @@
- #include <locale.h>
- 
- #include <glib.h>
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "intl.h"
- #include "message.h"
-diff -Naur dia-0.97.2-orig/plug-ins/xslt/xslt.c dia-0.97.2/plug-ins/xslt/xslt.c
---- dia-0.97.2-orig/plug-ins/xslt/xslt.c	2009-11-07 12:13:53.000000000 -0500
-+++ dia-0.97.2/plug-ins/xslt/xslt.c	2012-07-15 10:49:06.440726844 -0400
-@@ -27,7 +27,7 @@
- #include <string.h>
- #include <errno.h>
- 
--#include <glib/gstdio.h>
-+#include <glib.h>
- 
- #include "filter.h"
- #include "intl.h"
-diff -Naur dia-0.97.2-orig/tests/test-boundingbox.c dia-0.97.2/tests/test-boundingbox.c
---- dia-0.97.2-orig/tests/test-boundingbox.c	2009-11-07 09:28:35.000000000 -0500
-+++ dia-0.97.2/tests/test-boundingbox.c	2012-07-15 10:49:06.986726677 -0400
-@@ -29,7 +29,7 @@
- #include <glib-object.h>
- 
- #if GLIB_CHECK_VERSION(2,16,0)
--#include <glib/gtestutils.h>
-+#include <glib.h>
- #endif
- #include "dialib.h"
- 
-diff -Naur dia-0.97.2-orig/tests/test-objects.c dia-0.97.2/tests/test-objects.c
---- dia-0.97.2-orig/tests/test-objects.c	2009-11-07 09:28:35.000000000 -0500
-+++ dia-0.97.2/tests/test-objects.c	2012-07-15 10:49:06.985726677 -0400
-@@ -29,7 +29,7 @@
- #include <glib-object.h>
- 
- #if GLIB_CHECK_VERSION(2,16,0)
--#include <glib/gtestutils.h>
-+#include <glib.h>
- #endif
- 
- #include "object.h"
diff --git a/pkgs/applications/graphics/f-spot/default.nix b/pkgs/applications/graphics/f-spot/default.nix
index 8ecfc0df162..291f0adce58 100644
--- a/pkgs/applications/graphics/f-spot/default.nix
+++ b/pkgs/applications/graphics/f-spot/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = http://tarballs.nixos.org/f-spot-0.0.10.tar.bz2;
-    md5 = "19cc6e067ccc261b0502ff6189b79832";
+    sha256 = "1hgls6hzvxsnk09j9y6hq10qxsc92i864mdg3gk2cimbkbr0mh8b";
   };
 
   patches = [./dllmap.patch];
diff --git a/pkgs/applications/graphics/ocrad/default.nix b/pkgs/applications/graphics/ocrad/default.nix
index ad8735a6dff..b4becafdb0b 100644
--- a/pkgs/applications/graphics/ocrad/default.nix
+++ b/pkgs/applications/graphics/ocrad/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, lzip, texinfo }:
 
 stdenv.mkDerivation rec {
-  name = "ocrad-0.23";
+  name = "ocrad-0.24";
 
   src = fetchurl {
     url = "mirror://gnu/ocrad/${name}.tar.lz";
-    sha256 = "0vx0v4sz8ivgcp04zggdq9cv9sb5zxnn7j1nm15cds0zq1wr9g7m";
+    sha256 = "0hhlx072d00bi9qia0nj5izsq4qkscpfz2mpbyfc72msl3hfvslv";
   };
 
   buildInputs = [ lzip texinfo ];
diff --git a/pkgs/applications/graphics/sxiv/146.patch b/pkgs/applications/graphics/sxiv/146.patch
new file mode 100644
index 00000000000..ad1b030e1a4
--- /dev/null
+++ b/pkgs/applications/graphics/sxiv/146.patch
@@ -0,0 +1,25 @@
+From b901236261dc717dc08ed10f63e2d5cd3f3031f8 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Bart=C5=82omiej=20Piotrowski?= <b@bpiotrowski.pl>
+Date: Tue, 27 May 2014 11:46:06 +0200
+Subject: [PATCH] Fix build with giflib >= 5.1.0.
+
+---
+ image.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/image.c b/image.c
+index e62a69f..7eec544 100644
+--- a/image.c
++++ b/image.c
+@@ -278,7 +278,11 @@ bool img_load_gif(img_t *img, const fileinfo_t *file)
+ 		}
+ 	} while (rec != TERMINATE_RECORD_TYPE);
+ 
++#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
++	DGifCloseFile(gif, NULL);
++#else
+ 	DGifCloseFile(gif);
++#endif
+ 
+ 	if (err && !file->loaded)
+ 		warn("corrupted gif file: %s", file->name);
diff --git a/pkgs/applications/graphics/sxiv/default.nix b/pkgs/applications/graphics/sxiv/default.nix
index 30513577d04..9997d5ec734 100644
--- a/pkgs/applications/graphics/sxiv/default.nix
+++ b/pkgs/applications/graphics/sxiv/default.nix
@@ -1,14 +1,16 @@
 { stdenv, fetchurl, libX11, imlib2, giflib }:
 
-stdenv.mkDerivation {
-  name = "sxiv-1.1.1";
+stdenv.mkDerivation rec {
+  name = "sxiv-1.2";
 
   src = fetchurl {
-    url = "https://github.com/muennich/sxiv/archive/v1.1.1.tar.gz";
-    name = "sxiv-1.1.tar.gz";
-    sha256 = "07r8125xa8d5q71ql71s4i1dx4swy8hypxh2s5h7z2jnn5y9nmih";
+    url = "https://github.com/muennich/sxiv/archive/v1.2.tar.gz";
+    name = "${name}.tar.gz";
+    sha256 = "1wwcxy2adc67xd8x6c2sayy1cjcwrv2lvv1iwln7y4w992gbcxmc";
   };
 
+  patches = [ ./146.patch ];
+
   buildInputs = [ libX11 imlib2 giflib ];
 
   prePatch = ''sed -i "s@/usr/local@$out@" Makefile'';
diff --git a/pkgs/applications/graphics/ufraw/default.nix b/pkgs/applications/graphics/ufraw/default.nix
index dbfda4e5819..3de3d6cdd5a 100644
--- a/pkgs/applications/graphics/ufraw/default.nix
+++ b/pkgs/applications/graphics/ufraw/default.nix
@@ -2,12 +2,12 @@
 , libjpeg, libtiff, cfitsio, exiv2, lcms, gtkimageview, lensfun }:
 
 stdenv.mkDerivation rec {
-  name = "ufraw-0.19.2";
+  name = "ufraw-0.20";
 
   src = fetchurl {
     # XXX: These guys appear to mutate uploaded tarballs!
     url = "mirror://sourceforge/ufraw/${name}.tar.gz";
-    sha256 = "1lxba7pb3vcsq94dwapg9bk9mb3ww6r3pvvcyb0ah5gh2sgzxgkk";
+    sha256 = "1q51p0ynzayxwfpilj0s38aapgkfga00gbl7xi0ndx9q6bvk1kbd";
   };
 
   buildInputs =
diff --git a/pkgs/applications/misc/cdrtools/default.nix b/pkgs/applications/misc/cdrtools/default.nix
index d1b3b284052..d96236c94ee 100644
--- a/pkgs/applications/misc/cdrtools/default.nix
+++ b/pkgs/applications/misc/cdrtools/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://sourceforge/cdrtools/${name}.tar.bz2";
-    md5 = "d44a81460e97ae02931c31188fe8d3fd";
+    sha256 = "08kc5w4z5k2ka7i05an7gfzzp0fsrc403riav7bw8xws0rsn32vj";
   };
 
   patches = [./cdrtools-2.01-install.patch];
diff --git a/pkgs/applications/misc/cura/default.nix b/pkgs/applications/misc/cura/default.nix
index c290cdfb690..581081975e5 100644
--- a/pkgs/applications/misc/cura/default.nix
+++ b/pkgs/applications/misc/cura/default.nix
@@ -1,14 +1,14 @@
 { stdenv, python27Packages, curaengine, makeDesktopItem, fetchurl }:
 let
   py = python27Packages;
-  version = "14.07";
+  version = "14.09";
 in
 stdenv.mkDerivation rec {
   name = "cura-${version}";
 
   src = fetchurl {
     url = "https://github.com/daid/Cura/archive/${version}.tar.gz";
-    sha256 = "1jfgkb2qh1syakcssk66yhnfjm9p9qcx48v34bbza9nryrdlmxdb";
+    sha256 = "1nr26hfqa6chim5qch92wpk0s28wfvznvcf3kkzgf23hw707f40v";
   };
 
   desktopItem = makeDesktopItem {
diff --git a/pkgs/applications/misc/gphoto2/default.nix b/pkgs/applications/misc/gphoto2/default.nix
index 7ff253fd4e8..eafa5c10405 100644
--- a/pkgs/applications/misc/gphoto2/default.nix
+++ b/pkgs/applications/misc/gphoto2/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "gphoto2-2.5.3";
+  name = "gphoto2-2.5.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/gphoto/${name}.tar.bz2";
-    sha256 = "0i6qjyvgn3aaspiblmiwv51mfy92gm73xpbd3z41ki8mw7plg53i";
+    sha256 = "1d0lvp5gsrss72597wixhgh8prcw4g7izfg3zdzzsswjgnlsxsal";
   };
 
   nativeBuildInputs = [ pkgconfig gettext ];
diff --git a/pkgs/applications/misc/ikiwiki/default.nix b/pkgs/applications/misc/ikiwiki/default.nix
index fab492d5c09..f611eb823bb 100644
--- a/pkgs/applications/misc/ikiwiki/default.nix
+++ b/pkgs/applications/misc/ikiwiki/default.nix
@@ -23,7 +23,7 @@ assert mercurialSupport -> (mercurial != null);
 
 let
   name = "ikiwiki";
-  version = "3.20140227";
+  version = "3.20140916";
 
   lib = stdenv.lib;
 in
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://ftp.de.debian.org/debian/pool/main/i/ikiwiki/${name}_${version}.tar.gz";
-    sha256 = "1bbpqs4c1la1yqcxcxj3xip3wadjnjq0wawv19j6d6baymm66cr3";
+    sha256 = "05nws8jkcbhg767wqgn7in1p8zbcx2kdnhxz19fq52ncfzk2ndn0";
   };
 
   buildInputs = [ perl TextMarkdown URI HTMLParser HTMLScrubber HTMLTemplate
diff --git a/pkgs/applications/misc/keepass/default.nix b/pkgs/applications/misc/keepass/default.nix
index b3fafbc4016..e47e87d6338 100644
--- a/pkgs/applications/misc/keepass/default.nix
+++ b/pkgs/applications/misc/keepass/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "keepass-${version}";
-  version = "2.27";
+  version = "2.28";
 
   src = fetchurl {
     url = "mirror://sourceforge/keepass/KeePass-${version}.zip";
-    sha256 = "1qi7pls5xrv7ma53bwka738idvnxk82dvhk06m1snc8c29dws7fa";
+    sha256 = "0rlll6qriflaibqpw9qqfgqqr7cvhl404c3ph6n2i22j7xn5mizh";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/applications/misc/roxterm/default.nix b/pkgs/applications/misc/roxterm/default.nix
index a8338b80c9e..60322c2b911 100644
--- a/pkgs/applications/misc/roxterm/default.nix
+++ b/pkgs/applications/misc/roxterm/default.nix
@@ -29,7 +29,7 @@ in stdenv.mkDerivation rec {
                          "-I${dbus_libs}/lib/dbus-1.0/include" ];
 
   # Fix up python path so the lockfile library is on it.
-  PYTHONPATH = stdenv.lib.makeSearchPath "lib/${pythonFull.python.libPrefix}/site-packages" [
+  PYTHONPATH = stdenv.lib.makeSearchPath "lib/${pythonFull.libPrefix}/site-packages" [
     pythonPackages.curses pythonPackages.lockfile
   ];
 
diff --git a/pkgs/applications/misc/sweethome3d/default.nix b/pkgs/applications/misc/sweethome3d/default.nix
index 17b5c92406b..978dd19e3df 100644
--- a/pkgs/applications/misc/sweethome3d/default.nix
+++ b/pkgs/applications/misc/sweethome3d/default.nix
@@ -4,13 +4,13 @@
 let
 
   mkSweetHome3D =
-  { name, module, version, src, license, description }:
+  { name, module, version, src, license, description, icon }:
 
   stdenv.mkDerivation rec {
-    inherit name version src description;
+    inherit name version src description icon;
     exec = stdenv.lib.toLower module;
     sweethome3dItem = makeDesktopItem {
-      inherit name exec;
+      inherit name exec icon;
       comment =  description;
       desktopName = name;
       genericName = "Computer Aided (Interior) Design";
@@ -61,6 +61,10 @@ in rec {
       module = module;
       tag = "V_" + d2u version;
     };
+    icon = fetchurl {
+      url = "http://sweethome3d.cvs.sourceforge.net/viewvc/sweethome3d/SweetHome3D/src/com/eteks/sweethome3d/viewcontroller/resources/help/images/sweethome3d.png";
+      sha256 = "0lnv2sz2d3m8jx25hz92gzardf0iblykhy5q0q2cyb7mw2qb2p92";
+    };
   };
 
 }
diff --git a/pkgs/applications/misc/taffybar/default.nix b/pkgs/applications/misc/taffybar/default.nix
index 09eb186013f..1f5481fc5a9 100644
--- a/pkgs/applications/misc/taffybar/default.nix
+++ b/pkgs/applications/misc/taffybar/default.nix
@@ -1,21 +1,22 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
 { cabal, cairo, dbus, dyre, enclosedExceptions, filepath, gtk
-, gtkTraymanager, HStringTemplate, HTTP, mtl, network, parsec, safe
-, split, stm, text, time, transformers, utf8String, X11, xdgBasedir
-, xmonad, xmonadContrib
+, gtkTraymanager, HStringTemplate, HTTP, mtl, network, networkUri
+, parsec, safe, split, stm, text, time, transformers, utf8String
+, X11, xdgBasedir, xmonad, xmonadContrib
 }:
 
 cabal.mkDerivation (self: {
   pname = "taffybar";
-  version = "0.4.1";
-  sha256 = "0b4x78sq5x1w0xnc5fk4ixpbkl8cwjfyb4fq8vy21shf4n0fri26";
+  version = "0.4.3";
+  sha256 = "1h7acdzq3bndy44lyvgnm3gvxpbhzcs0ymvkrhmn3y41bfcwaac2";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
     cairo dbus dyre enclosedExceptions filepath gtk gtkTraymanager
-    HStringTemplate HTTP mtl network parsec safe split stm text time
-    transformers utf8String X11 xdgBasedir xmonad xmonadContrib
+    HStringTemplate HTTP mtl network networkUri parsec safe split stm
+    text time transformers utf8String X11 xdgBasedir xmonad
+    xmonadContrib
   ];
   pkgconfigDepends = [ gtk ];
   meta = {
diff --git a/pkgs/applications/misc/xmobar/default.nix b/pkgs/applications/misc/xmobar/default.nix
index 8d73dfebb18..65201f2495b 100644
--- a/pkgs/applications/misc/xmobar/default.nix
+++ b/pkgs/applications/misc/xmobar/default.nix
@@ -1,23 +1,23 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
 { cabal, alsaCore, alsaMixer, dbus, filepath, hinotify, HTTP
-, libmpd, libXrandr, mtl, parsec, regexCompat, stm, time
-, timezoneOlson, timezoneSeries, utf8String, wirelesstools, X11
-, X11Xft
+, libmpd, libXpm, libXrandr, mtl, parsec, regexCompat, stm, time
+, timezoneOlson, timezoneSeries, transformers, utf8String
+, wirelesstools, X11, X11Xft
 }:
 
 cabal.mkDerivation (self: {
   pname = "xmobar";
-  version = "0.21";
-  sha256 = "1h0gsb808zm4j4kmw7fl4339wllc16ldy1ki96l8w3fvj30bcxpm";
+  version = "0.22.1";
+  sha256 = "0mnwwcfk0xf4fi3cnw19s6lxcg8sbsdlvg7zwvf5xf0y9q365swz";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [
     alsaCore alsaMixer dbus filepath hinotify HTTP libmpd mtl parsec
-    regexCompat stm time timezoneOlson timezoneSeries utf8String X11
-    X11Xft
+    regexCompat stm time timezoneOlson timezoneSeries transformers
+    utf8String X11 X11Xft
   ];
-  extraLibraries = [ libXrandr wirelesstools ];
+  extraLibraries = [ libXpm libXrandr wirelesstools ];
   configureFlags = "-fall_extensions";
   meta = {
     homepage = "http://xmobar.org";
diff --git a/pkgs/applications/misc/xterm/default.nix b/pkgs/applications/misc/xterm/default.nix
index 00e9ab0c810..3365e62f8be 100644
--- a/pkgs/applications/misc/xterm/default.nix
+++ b/pkgs/applications/misc/xterm/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, xorg, ncurses, freetype, fontconfig, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "xterm-303";
+  name = "xterm-312";
 
   src = fetchurl {
     url = "ftp://invisible-island.net/xterm/${name}.tgz";
-    sha256 = "0n7hay16aam9kfn642ri0wj5yzilbjm3l8znxc2p5dx9pn3rkwla";
+    sha256 = "0vpkhls3i12ly4r68igz91vh6s9179wihjkdy0gvwr752hdqxm7s";
   };
 
   buildInputs =
diff --git a/pkgs/applications/networking/browsers/chromium/source/default.nix b/pkgs/applications/networking/browsers/chromium/source/default.nix
index 5494b370817..3c7abc0d5e2 100644
--- a/pkgs/applications/networking/browsers/chromium/source/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/source/default.nix
@@ -32,11 +32,6 @@ stdenv.mkDerivation {
       -e 's|/bin/echo|echo|' \
       -e "/python_arch/s/: *'[^']*'/: '""'/" \
       build/common.gypi chrome/chrome_tests.gypi
-  '' + optionalString (versionOlder version "38.0.0.0") ''
-    sed -i -e '/not RunGN/,+1d' -e '/import.*depot/d' build/gyp_chromium
-    sed -i -e 's|/usr/bin/gcc|gcc|' \
-      third_party/WebKit/Source/build/scripts/scripts.gypi \
-      third_party/WebKit/Source/build/scripts/preprocessor.pm
   '' + optionalString useOpenSSL ''
     cat $opensslPatches | patch -p1 -d third_party/openssl/openssl
   '';
diff --git a/pkgs/applications/networking/browsers/chromium/source/sources.nix b/pkgs/applications/networking/browsers/chromium/source/sources.nix
index e85369f763b..0640a6abd09 100644
--- a/pkgs/applications/networking/browsers/chromium/source/sources.nix
+++ b/pkgs/applications/networking/browsers/chromium/source/sources.nix
@@ -1,21 +1,21 @@
 # This file is autogenerated from update.sh in the parent directory.
 {
   dev = {
-    version = "39.0.2171.7";
-    sha256 = "1wxi601zsi10jw7ypa4i0a2g5hd3hqrb5pqkkry1pgbdimw69sb8";
-    sha256bin32 = "11isyislr5mbbhwk625b347xyyp1x3xgws844sjbbcx83gf0ij7y";
-    sha256bin64 = "16b0yzlm8j7kx8pc6fhzwiizl7zrzxmfal40q45848715jyln8hf";
+    version = "40.0.2182.3";
+    sha256 = "1713y6f2q5qh32wg027nphkv6p6rgq0q1awqcy543ypbk9p1jvbm";
+    sha256bin32 = "0qf0ccfg77qc17iy5cndkp827s8li3qyxasmgjq224g579wcj0bl";
+    sha256bin64 = "07f97m548kj7indpzyyvksa4gisndxc1s8qslk43mgsx26kz62rf";
   };
   beta = {
-    version = "38.0.2125.101";
-    sha256 = "12hrl7i0xrjdwz8yaap5jhc6bzn29pk6dcz96743n6j7mcckac6k";
-    sha256bin32 = "178nffl5pgqajg7vxxisycl79vnyv1iqqz04riywgj88mw7mjwpg";
-    sha256bin64 = "0akwvnl987w8wli4h4k2x8xnpkzk9n8hn9wbp1lw87ch08sr7zfm";
+    version = "39.0.2171.19";
+    sha256 = "19j86hzh552a73mvabzgdiq0s1ypr30b6lkn4kfxc2vhs1ds8nmg";
+    sha256bin32 = "06imcc3r6g4f7yi8b4mzknqk11khzk44pjrw0qnw40kgjf0kkgd3";
+    sha256bin64 = "0qd594rbg049g1h4s7lgw9abcccx6wrl3fggkd1z9bl8ihj54j4b";
   };
   stable = {
-    version = "37.0.2062.120";
-    sha256 = "1yvf1hzza5cdsa67dg302ifcwb759r8sf2z21p9q9wyanrc3f1xk";
-    sha256bin32 = "07zwf5yn3ig8x9ysjdpm7w1fh4rcyxzfsnqvxmabc0bkrv2r1hg7";
-    sha256bin64 = "02qc5qq5v9k55c5bxmndjh1xl6j1qaxk7k4r8mm0k5nxxyqih1p2";
+    version = "38.0.2125.101";
+    sha256 = "12hrl7i0xrjdwz8yaap5jhc6bzn29pk6dcz96743n6j7mcckac6k";
+    sha256bin32 = "1c35j4wx53njcqbdqznz2m0791bb9lpmhnpkrll36051437f25wl";
+    sha256bin64 = "1k8hrrxlqc1mv88v2qkyq8188lfaibvqpqg0g8qgj2ha5vsnvwvw";
   };
 }
diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix
index 6d4a8078dc8..c1458fd2fba 100644
--- a/pkgs/applications/networking/browsers/firefox/default.nix
+++ b/pkgs/applications/networking/browsers/firefox/default.nix
@@ -15,14 +15,14 @@
 
 assert stdenv.gcc ? libc && stdenv.gcc.libc != null;
 
-let version = "32.0.3"; in
+let version = "33.0"; in
 
 stdenv.mkDerivation rec {
   name = "firefox-${version}";
 
   src = fetchurl {
     url = "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${version}/source/firefox-${version}.source.tar.bz2";
-    sha1 = "1f831147365478e353212714038e812ca3e9fe42";
+    sha1 = "ad10e8fefcd9687d2b67bacafa4ecb5f5ca4af66";
   };
 
   buildInputs =
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
     ]
     ++ (if debugBuild then [ "--enable-debug" "--enable-profiling"]
                       else [ "--disable-debug" "--enable-release"
-                             "--enable-optimize${lib.optionalString (stdenv.system == "i686-linux") "=-O1"}"
+                             "--enable-optimize${lib.optionalString (stdenv.system == "i686-linux") "=-O3"}"
                              "--enable-strip" ])
     ++ lib.optional enableOfficialBranding "--enable-official-branding";
 
diff --git a/pkgs/applications/networking/browsers/links/default.nix b/pkgs/applications/networking/browsers/links/default.nix
index 6bbd0fc800c..8e78a0bd89c 100644
--- a/pkgs/applications/networking/browsers/links/default.nix
+++ b/pkgs/applications/networking/browsers/links/default.nix
@@ -4,6 +4,6 @@ stdenv.mkDerivation {
   name = "links-1.00pre15";
   src = fetchurl {
     url = http://artax.karlin.mff.cuni.cz/~mikulas/links/download/links-1.00pre15.tar.gz;
-    md5 = "f64823b9a1ac2d79df578a991dfae8b8";
+    sha256 = "0yzgzc6jm9vhv7rgbj5s9zwxn9fnf4nyap9l6dzgpwsn7m18vprv";
   };
 }
diff --git a/pkgs/applications/networking/browsers/vimb/default.nix b/pkgs/applications/networking/browsers/vimb/default.nix
index 996bda67323..1f83f427156 100644
--- a/pkgs/applications/networking/browsers/vimb/default.nix
+++ b/pkgs/applications/networking/browsers/vimb/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "vimb-${version}";
-  version = "2.7";
+  version = "2.8";
 
   src = fetchurl {
     url = "https://github.com/fanglingsu/vimb/archive/${version}.tar.gz";
-    sha256 = "05i5p9827rgga4h27qy3qh4ps8aynkcr55j681ddhn16ci3dk8zr";
+    sha256 = "04ify6gqpkislsppaplvdfgs3fja9gl37j3dywg7bhz1fbkv166k";
   };
 
   # Nixos default ca bundle
diff --git a/pkgs/applications/networking/instant-messengers/freetalk/default.nix b/pkgs/applications/networking/instant-messengers/freetalk/default.nix
index cdbc4233cf4..320e7094d48 100644
--- a/pkgs/applications/networking/instant-messengers/freetalk/default.nix
+++ b/pkgs/applications/networking/instant-messengers/freetalk/default.nix
@@ -1,51 +1,43 @@
-x@{builderDefsPackage
-  , guile, pkgconfig, glib, loudmouth, gmp, libidn, readline, libtool
-  , libunwind, ncurses
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
+{ stdenv, fetchgit
+, guile, pkgconfig, glib, loudmouth, gmp, libidn, readline, libtool
+, libunwind, ncurses, curl, jansson, texinfo
+, automake, autoconf
+}:
 
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
+let
+  s = rec {
     baseName="freetalk";
-    version="3.2";
+    version="4.0rc6";
     name="${baseName}-${version}";
-    url="mirror://savannah/${baseName}/${name}.tar.gz";
-    hash="12dn7yj9k5xsrrjlnma77wzpvsdxjccwla1q0wy3lacl5l2p0jms";
+    url="https://github.com/GNUFreetalk/freetalk";
+    rev = "refs/tags/v${version}";
+    sha256="0sj3bwq9n6ijwv552nmi038sz7wayq8r3zaj6ngn2cnkn2b5nwbz";
   };
+  buildInputs = [
+    guile pkgconfig glib loudmouth gmp libidn readline libtool
+    libunwind ncurses curl jansson texinfo
+    autoconf automake
+  ];
 in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
-  };
-
-  inherit (sourceInfo) name version;
+stdenv.mkDerivation {
+  inherit (s) name version;
   inherit buildInputs;
+  src = fetchgit {
+    inherit (s) url rev sha256;
+    name = "git-export-${s.name}";
+  };
 
-  patches = [./01_callbacks_const_fix.diff];
+  preConfigure = ''
+    patchShebangs .
+    ./autogen.sh
+  '';
 
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doPatch" "doConfigure" "doMakeInstall"];
-      
   meta = {
-    description = "Console XMPP client";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    license = a.lib.licenses.gpl3Plus;
+    inherit (s) version;
+    description =  "Console XMPP client";
+    license = stdenv.lib.licenses.gpl3Plus ;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+    downloadPage = "http://www.gnu.org/software/freetalk/";
   };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://www.gnu.org/software/freetalk/";
-    };
-  };
-}) x
-
+}
diff --git a/pkgs/applications/networking/instant-messengers/gajim/default.nix b/pkgs/applications/networking/instant-messengers/gajim/default.nix
index d5902d14359..8584eb84273 100644
--- a/pkgs/applications/networking/instant-messengers/gajim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gajim/default.nix
@@ -22,21 +22,15 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "gajim-${version}";
-  version = "0.15.4";
+  version = "0.16";
 
   src = fetchurl {
-    url = "http://www.gajim.org/downloads/0.15/gajim-${version}.tar.gz";
-    sha256 = "1g4m5j777vqqdwqvr2m6l09ljjx65ilag45d5kfc78z7frm0cz7g";
+    url = "http://www.gajim.org/downloads/0.16/gajim-${version}.tar.bz2";
+    sha256 = "14x15jwgl0c6vwj02ccpzmxr3fczp632mnj50cpklbaj4bxqvgbs";
   };
 
   patches = [
     (fetchurl {
-      name = "gajim-drill-srv.patch";
-      url = "https://projects.archlinux.org/svntogit/packages.git/"
-          + "plain/trunk/gajim-drill.patch?h=packages/gajim";
-      sha256 = "1k8zz3ns0l0kriffq41jgkv5ym6jvyd24171l7s98v9d81prdw1w";
-    })
-    (fetchurl {
       name = "gajim-icon-index.patch";
       url = "http://hg.gajim.org/gajim/raw-rev/b9ec78663dfb";
       sha256 = "0w54hr5dq9y36val55kmh8d6cid7h4fs2nghx09714jylz2nyxxv";
@@ -69,6 +63,7 @@ stdenv.mkDerivation rec {
     pythonPackages.pygobject pythonPackages.pyGtkGlade
     pythonPackages.sqlite3 pythonPackages.pyasn1
     pythonPackages.pyxdg
+    pythonPackages.nbxmpp
     pyopenssl pythonDBus
   ] ++ optionals enableJingle [ farstream gst_plugins_bad libnice ]
     ++ optional enableE2E pythonPackages.pycrypto
@@ -88,5 +83,7 @@ stdenv.mkDerivation rec {
     description = "Jabber client written in PyGTK";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.raskin maintainers.aszlig ];
+    downloadPage = "http://gajim.org/downloads.php";
+    updateWalker = true;
   };
 }
diff --git a/pkgs/applications/networking/iptraf/default.nix b/pkgs/applications/networking/iptraf/default.nix
index db1f2011f11..11655d0e28d 100644
--- a/pkgs/applications/networking/iptraf/default.nix
+++ b/pkgs/applications/networking/iptraf/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   
   src = fetchurl {
     url = ftp://iptraf.seul.org/pub/iptraf/iptraf-3.0.1.tar.gz;
-    md5 = "004c2c005a1b78739e22bc49d33e244d";
+    sha256 = "12n059j9iihhpf6spmlaspqzxz3wqan6kkpnhmlj08jdijpnk84m";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/networking/irc/irssi/default.nix b/pkgs/applications/networking/irc/irssi/default.nix
index 67e06be0883..8d8913cf3cd 100644
--- a/pkgs/applications/networking/irc/irssi/default.nix
+++ b/pkgs/applications/networking/irc/irssi/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, ncurses, glib, openssl, perl, libintlOrEmpty }:
 
 stdenv.mkDerivation rec {
-  name = "irssi-0.8.15";
+  name = "irssi-0.8.16";
   
   src = fetchurl {
     url = "http://irssi.org/files/${name}.tar.bz2";
-    sha256 = "19m0aah9bhc70dnhh7kpydbsz5n35l0l9knxav1df0sic3xicbf1";
+    sha256 = "15wzs4h754jzs1l4z7qzsyjllk9wdx3qfb6gymdiykvmlb9gwyiz";
   };
   
   buildInputs = [ pkgconfig ncurses glib openssl perl libintlOrEmpty ];
diff --git a/pkgs/applications/networking/mailreaders/claws-mail/default.nix b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
new file mode 100644
index 00000000000..b66d749daaf
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
@@ -0,0 +1,86 @@
+{ fetchurl, stdenv
+, curl, dbus, dbus_glib, enchant, gtk, gnutls, gnupg, gpgme, libarchive
+, libcanberra, libetpan, libnotify, libsoup, libxml2, networkmanager, openldap
+, perl, pkgconfig, poppler, python, webkitgtk2
+
+# Build options
+# TODO: A flag to build the manual.
+# TODO: Plugins that complain about their missing dependencies, even when
+#       provided:
+#         gdata requires libgdata
+#         geolocation requires libchamplain
+#         python requires python
+, enableLdap ? false
+, enableNetworkManager ? false
+, enablePgp ? false
+, enablePluginArchive ? false
+, enablePluginFancy ? false
+, enablePluginNotificationDialogs ? true
+, enablePluginNotificationSounds ? true
+, enablePluginPdf ? false
+, enablePluginRavatar ? false
+, enablePluginRssyl ? false
+, enablePluginSmime ? false
+, enablePluginSpamassassin ? false
+, enablePluginSpamReport ? false
+, enablePluginVcalendar ? false
+, enableSpellcheck ? false
+}:
+
+with stdenv.lib;
+
+let version = "3.10.1"; in
+
+stdenv.mkDerivation {
+  name = "claws-mail-${version}";
+
+  meta = {
+    description = "The user-friendly, lightweight, and fast email client";
+    homepage = http://www.claws-mail.org/;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+  };
+
+  src = fetchurl {
+    url = "http://downloads.sourceforge.net/project/claws-mail/Claws%20Mail/${version}/claws-mail-${version}.tar.bz2";
+    sha256 = "634d35dee311a288fb8fcba36d26987afdcd5485730cf67d00554110f414178e";
+  };
+
+  buildInputs =
+    [ dbus dbus_glib gtk gnutls libetpan perl pkgconfig python ]
+    ++ optional enableSpellcheck enchant
+    ++ optionals (enablePgp || enablePluginSmime) [ gnupg gpgme ]
+    ++ optional enablePluginArchive libarchive
+    ++ optional enablePluginNotificationSounds libcanberra
+    ++ optional enablePluginNotificationDialogs libnotify
+    ++ optional enablePluginFancy libsoup
+    ++ optional
+      (enablePluginFancy || enablePluginRavatar || enablePluginRssyl
+        || enablePluginSpamassassin || enablePluginSpamReport
+        || enablePluginVcalendar)
+      curl
+    ++ optional enablePluginRssyl libxml2
+    ++ optional enableNetworkManager networkmanager
+    ++ optional enableLdap openldap
+    ++ optional enablePluginPdf poppler
+    ++ optional enablePluginFancy webkitgtk2;
+
+  configureFlags =
+    optional (!enableLdap) "--disable-ldap"
+    ++ optional (!enableNetworkManager) "--disable-networkmanager"
+    ++ optionals (!enablePgp) [
+      "--disable-pgpcore-plugin"
+      "--disable-pgpinline-plugin"
+      "--disable-pgpmime-plugin"
+    ]
+    ++ optional (!enablePluginArchive) "--disable-archive-plugin"
+    ++ optional (!enablePluginFancy) "--disable-fancy-plugin"
+    ++ optional (!enablePluginPdf) "--disable-pdf_viewer-plugin"
+    ++ optional (!enablePluginRavatar) "--disable-libravatar-plugin"
+    ++ optional (!enablePluginRssyl) "--disable-rssyl-plugin"
+    ++ optional (!enablePluginSmime) "--disable-smime-plugin"
+    ++ optional (!enablePluginSpamassassin) "--disable-spamassassin-plugin"
+    ++ optional (!enablePluginSpamReport) "--disable-spam_report-plugin"
+    ++ optional (!enablePluginVcalendar) "--disable-vcalendar-plugin"
+    ++ optional (!enableSpellcheck) "--disable-enchant";
+}
diff --git a/pkgs/applications/networking/mailreaders/mailpile/default.nix b/pkgs/applications/networking/mailreaders/mailpile/default.nix
index 4ab85026ded..695e2b38157 100644
--- a/pkgs/applications/networking/mailreaders/mailpile/default.nix
+++ b/pkgs/applications/networking/mailreaders/mailpile/default.nix
@@ -2,14 +2,14 @@
 
 pythonPackages.buildPythonPackage rec {
   name = "mailpile-${version}";
-  version = "0.4.0";
+  version = "0.4.1";
 
   src = fetchgit {
     url = "git://github.com/pagekite/Mailpile";
-    rev = "af3e2554dcef892cc44e044ce61e1693f09228c0";
-    sha256 = "0p8j5w5281rjl0nigsw7glfp7inz13p6iqlr9g3m3vh72i9pvl7h";
+    rev = "refs/tags/${version}";
+    sha256 = "0h84cc9kwb0m4admqjkpg4pllxlh095rmzvrql45kz71fpnxs780";
   };
-  
+
   patchPhase = ''
     substituteInPlace setup.py --replace "data_files.append((dir" "data_files.append(('lib/${pythonPackages.python.libPrefix}/site-packages/' + dir"
   '';
@@ -31,4 +31,4 @@ pythonPackages.buildPythonPackage rec {
     platforms = platforms.linux;
     maintainers = [ maintainers.iElectric ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/networking/mumble/default.nix b/pkgs/applications/networking/mumble/default.nix
index 7b9396ff5ff..80db3020ba5 100644
--- a/pkgs/applications/networking/mumble/default.nix
+++ b/pkgs/applications/networking/mumble/default.nix
@@ -15,11 +15,11 @@ let
 in
 stdenv.mkDerivation rec {
   name = "mumble-" + version;
-  version = "1.2.7";
+  version = "1.2.8";
 
   src = fetchurl {
     url = "mirror://sourceforge/mumble/${name}.tar.gz";
-    sha256 = "0zjqkkdkcvgmqic6np87hj6b6f851lkzyd6y3cqj6zzacjvps31d";
+    sha256 = "0ng1xd7i0951kqnd9visf84y2dcwia79a1brjwfvr1wnykgw6bsc";
   };
 
   patches = optional jackSupport ./mumble-jack-support.patch;
diff --git a/pkgs/applications/networking/p2p/opentracker/default.nix b/pkgs/applications/networking/p2p/opentracker/default.nix
new file mode 100644
index 00000000000..32ceeb6fc8d
--- /dev/null
+++ b/pkgs/applications/networking/p2p/opentracker/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchgit, libowfat, zlib }:
+
+stdenv.mkDerivation {
+  name = "opentracker";
+  src = fetchgit {
+    url = "https://github.com/masroore/opentracker.git";
+    rev = "9a26b3d203755577879315ecc2b515d0e22793cb";
+    sha256 = "74a7a6cbe80932fefb1698524809ce89be696f0fe3afd38fcb2b99fa59c9c891";
+  };
+  
+  buildInputs = [ libowfat zlib ];
+  
+  installPhase = ''
+    mkdir -p $out/bin
+    cp opentracker $out/bin
+  '';
+  
+  meta = with stdenv.lib; {
+    homepage = https://github.com/masroore/opentracker;
+    license = "beer-ware";
+    platforms = platforms.linux;
+    description = "Bittorrent tracker project aiminf for minimal resource usage and is intended to run at your wlan router";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/applications/networking/sync/akunambol/default.nix b/pkgs/applications/networking/sync/akunambol/default.nix
deleted file mode 100644
index 2aedfd7f833..00000000000
--- a/pkgs/applications/networking/sync/akunambol/default.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ stdenv, fetchgit, kdepimlibs, funambol, liblikeback }:
-
-stdenv.mkDerivation rec {
-  name = "akunambol-20110304";
-
-  src = fetchgit {
-    url = git://anongit.kde.org/akunambol.git;
-    rev = "1d832bbbce84f474e3f1e5d2f9fa8a4079b0c8e5";
-    sha256 = "1d2x42lbw32qyawri7z0mrbafz36r035w5bxjpq51awyqjwkbb2d";
-  };
-
-  buildInputs = [ kdepimlibs funambol liblikeback ];
-  KDEDIRS = liblikeback;
-
-  patches = [ ./non-latin.diff ];
-}
diff --git a/pkgs/applications/networking/sync/akunambol/non-latin.diff b/pkgs/applications/networking/sync/akunambol/non-latin.diff
deleted file mode 100644
index 905a6a894bd..00000000000
--- a/pkgs/applications/networking/sync/akunambol/non-latin.diff
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/qtgui/standardsourcesettings.cpp b/qtgui/standardsourcesettings.cpp
-index a14a737..5d4712e 100644
---- a/qtgui/standardsourcesettings.cpp
-+++ b/qtgui/standardsourcesettings.cpp
-@@ -83,9 +83,9 @@ void StandardSourceSettings::populateCollections()
-     foreach( const Collection &collection, colls ) {
-         if (collection.contentMimeTypes().contains(source->getAkonadiMimeType())) {
-             i++;
--            const char* dn = collection.name().toUtf8();
--            LOG.debug("Adding collection id %lld named %s", collection.id(), dn);
--            collections->addItem(dn);
-+            LOG.debug("Adding collection id %lld named %s", collection.id(),
-+                      collection.name().toLocal8Bit().data());
-+            collections->addItem(collection.name());
-             idList.append(collection.id());
-         }
-     }
diff --git a/pkgs/applications/office/tagainijisho/default.nix b/pkgs/applications/office/tagainijisho/default.nix
new file mode 100644
index 00000000000..bee1b738d12
--- /dev/null
+++ b/pkgs/applications/office/tagainijisho/default.nix
@@ -0,0 +1,22 @@
+{stdenv, fetchurl, qt4, cmake, sqlite}:
+
+stdenv.mkDerivation {
+  name = "tagainijisho-1.0.2";
+  src = fetchurl {
+    url = https://github.com/Gnurou/tagainijisho/releases/download/1.0.2/tagainijisho-1.0.2.tar.gz;
+    sha256 = "0gvwsphy2a1b2npxkzvaf91rbzb00zhi2anxd5102h6ld5m52jhl";
+  };
+
+  buildInputs = [ qt4 cmake sqlite ];
+
+  meta = with stdenv.lib; {
+    description = "A free, open-source Japanese dictionary and kanji lookup tool";
+    homepage = http://www.tagaini.net/;
+    license = with licenses; [
+      /* program */ gpl3Plus
+      /* data */ cc-by-sa-30
+    ];
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ vbgl ];
+  };
+}
diff --git a/pkgs/applications/science/astronomy/xplanet/giflib.patch b/pkgs/applications/science/astronomy/xplanet/giflib.patch
index aaf024198fb..653b9c8dc7d 100644
--- a/pkgs/applications/science/astronomy/xplanet/giflib.patch
+++ b/pkgs/applications/science/astronomy/xplanet/giflib.patch
@@ -1,6 +1,6 @@
-diff -wbBur xplanet-1.3.0/src/libimage/gif.c /home/sergej/tmp/BUILD/staging-i686/sergej/build/xplanet/src/xplanet-1.3.0/src/libimage/gif.c
+diff -wbBur xplanet-1.3.0/src/libimage/gif.c xplanet-1.3.0.my/src/libimage/gif.c
 --- xplanet-1.3.0/src/libimage/gif.c	2006-03-26 01:50:51.000000000 +0300
-+++ /home/sergej/tmp/BUILD/staging-i686/sergej/build/xplanet/src/xplanet-1.3.0/src/libimage/gif.c	2013-07-30 18:21:17.412474692 +0400
++++ xplanet-1.3.0.my/src/libimage/gif.c	2014-05-29 18:59:14.830652716 +0400
 @@ -20,7 +20,7 @@
  
  #include <stdio.h>
@@ -59,6 +59,15 @@ diff -wbBur xplanet-1.3.0/src/libimage/gif.c /home/sergej/tmp/BUILD/staging-i686
                      return(0);
                  }
              }
+@@ -154,7 +154,7 @@
+     
+     free(buffer);
+ 
+-    DGifCloseFile(infile);
++    DGifCloseFile(infile, NULL);
+     return(1);
+ }
+ 
 @@ -178,7 +178,7 @@
          return(0);
      }
@@ -119,11 +128,13 @@ diff -wbBur xplanet-1.3.0/src/libimage/gif.c /home/sergej/tmp/BUILD/staging-i686
              return(0);
          }
          ptr += width;
-@@ -233,7 +233,7 @@
+@@ -232,8 +232,8 @@
+ 
      EGifSpew(outfile);
  
-     if (EGifCloseFile(outfile) == GIF_ERROR) 
+-    if (EGifCloseFile(outfile) == GIF_ERROR) 
 -        PrintGifError();
++    if (EGifCloseFile(outfile, NULL) == GIF_ERROR) 
 +        printf("%s\n", GifErrorString(GIF_ERROR));
  
      free(buffer);
diff --git a/pkgs/applications/science/electronics/fritzing/default.nix b/pkgs/applications/science/electronics/fritzing/default.nix
new file mode 100644
index 00000000000..0ac189c4ef8
--- /dev/null
+++ b/pkgs/applications/science/electronics/fritzing/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl, qt5, boost }:
+
+stdenv.mkDerivation rec {
+
+  version = "0.9.0b";
+  name = "fritzing";
+
+  src = fetchurl {
+    url = "http://fritzing.org/download/${version}/source-tarball/fritzing-${version}.source.tar_1.bz2";
+    sha256 = "181qnknq1j5x075icpw2qk0sc4wcj9f2hym533vs936is0wxp2gk";
+  };
+
+  unpackPhase = ''
+    tar xjf ${src}
+  '';
+
+  buildInputs = [ qt5 boost ];
+
+  configurePhase = ''
+    cd fritzing-${version}.source
+    qmake PREFIX=$out phoenix.pro
+  '';
+
+  meta = {
+    description = "An open source prototyping tool for Arduino-based projects";
+    homepage = http://fritzing.org/;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = [ stdenv.lib.maintainers.robberer ];
+  }; 
+}
diff --git a/pkgs/applications/science/logic/coq/HEAD.nix b/pkgs/applications/science/logic/coq/HEAD.nix
index 4081465fbd2..bf426bc42c2 100644
--- a/pkgs/applications/science/logic/coq/HEAD.nix
+++ b/pkgs/applications/science/logic/coq/HEAD.nix
@@ -2,8 +2,8 @@
 
 {stdenv, fetchgit, writeText, pkgconfig, ocaml, findlib, camlp5, ncurses, lablgtk ? null}:
 
-let 
-  version = "8.5pre-01feb42";
+let
+  version = "8.5pre-2313bde0";
   coq-version = "8.5";
   buildIde = lablgtk != null;
   ideFlags = if buildIde then "-lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else "";
@@ -17,8 +17,8 @@ stdenv.mkDerivation {
 
   src = fetchgit {
     url = git://scm.gforge.inria.fr/coq/coq.git;
-    rev = "01feb4206d26b41bfaab9bd45a7b2fc4db569baf";
-    sha256 = "e6d44ebc3019b2650c6e320218b264f5bde68bf6f222b356d41b0a38918e839f";
+    rev = "2313bde0116a5916912bebbaca77d291f7b2760a";
+    sha256 = "116b8060a47a7b2d0cac72d86f7e320bec99b6d450614d1e6b92ff919619c509";
   };
 
   buildInputs = [ pkgconfig ocaml findlib camlp5 ncurses lablgtk ];
diff --git a/pkgs/applications/science/logic/cvc4/default.nix b/pkgs/applications/science/logic/cvc4/default.nix
new file mode 100644
index 00000000000..5b2e9c54d6f
--- /dev/null
+++ b/pkgs/applications/science/logic/cvc4/default.nix
@@ -0,0 +1,23 @@
+{stdenv, fetchurl, gmp, libantlr3c, boost}:
+
+stdenv.mkDerivation {
+  name = "cvc4-1.4";
+  src = fetchurl {
+    url = http://cvc4.cs.nyu.edu/builds/src/cvc4-1.4.tar.gz;
+    sha256 = "093h7zgv4z4ad503j30dpn8k2pz9m90pvd7gi5axdmwsxgwlzzkn";
+  };
+
+  buildInputs = [ gmp libantlr3c boost ];
+
+  preConfigure = "patchShebangs ./src/";
+
+  doChecks = true;
+
+  meta = with stdenv.lib; {
+    description = "An efficient open-source automatic theorem prover for satisfiability modulo theories (SMT) problems";
+    homepage = http://cvc4.cs.nyu.edu/web/;
+    license = licenses.bsd3;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ vbgl ];
+  };
+}
diff --git a/pkgs/applications/science/logic/why3/default.nix b/pkgs/applications/science/logic/why3/default.nix
index 71ff1cc7fb4..70149522393 100644
--- a/pkgs/applications/science/logic/why3/default.nix
+++ b/pkgs/applications/science/logic/why3/default.nix
@@ -2,21 +2,21 @@
 
 stdenv.mkDerivation rec {
   name    = "why3-${version}";
-  version = "0.83";
+  version = "0.85";
 
   src = fetchurl {
-    url    = "https://gforge.inria.fr/frs/download.php/33490/${name}.tar.gz";
-    sha256 = "1jcs5vj91ppbgh4q4hch89b63wgakjhg35pm3r4jwhp377lnggya";
+    url    = "https://gforge.inria.fr/frs/download.php/34074/why3-0.85.tar.gz";
+    sha256 = "0sj1pd50lqvnvyss1f8ysgigdi64s91rrpdrmp7crmcy1npa8apf";
   };
 
   buildInputs = with ocamlPackages;
     [ coq ocaml findlib lablgtk ocamlgraph zarith ];
 
-  meta = {
-    description = "why is a software verification platform";
+  meta = with stdenv.lib; {
+    description = "A platform for deductive program verification";
     homepage    = "http://why3.lri.fr/";
-    license     = stdenv.lib.licenses.lgpl21;
-    platforms   = stdenv.lib.platforms.linux;
-    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+    license     = licenses.lgpl21;
+    platforms   = platforms.unix;
+    maintainers = with maintainers; [ thoughtpolice vbgl ];
   };
 }
diff --git a/pkgs/applications/science/math/maxima/default.nix b/pkgs/applications/science/math/maxima/default.nix
index 3277d94d99b..ddd5dc5d6bb 100644
--- a/pkgs/applications/science/math/maxima/default.nix
+++ b/pkgs/applications/science/math/maxima/default.nix
@@ -2,7 +2,7 @@
 
 let
   name    = "maxima";
-  version = "5.33.0";
+  version = "5.34.1";
 
   searchPath =
     stdenv.lib.makeSearchPath "bin"
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://sourceforge/${name}/${name}-${version}.tar.gz";
-    sha256 = "13axm11xw0f3frx5b0qdidi7igkn1524fzz77s9rbpl2yy2nrbz2";
+    sha256 = "1dw9vfzldpj7lv303xbw0wpyn6ra6i2yzwlrjbcx7j0jm5n43ji0";
   };
 
   buildInputs = [sbcl texinfo perl makeWrapper];
diff --git a/pkgs/applications/version-management/darcs/default.nix b/pkgs/applications/version-management/darcs/default.nix
index ff5c3456e22..abfb20baff2 100644
--- a/pkgs/applications/version-management/darcs/default.nix
+++ b/pkgs/applications/version-management/darcs/default.nix
@@ -23,6 +23,9 @@ cabal.mkDerivation (self: {
     mkdir -p $out/etc/bash_completion.d
     mv contrib/darcs_completion $out/etc/bash_completion.d/darcs
   '';
+  patchPhase = ''
+    sed -i -e 's|random.*==.*|random|' darcs.cabal
+  '';
   meta = {
     homepage = "http://darcs.net/";
     description = "a distributed, interactive, smart revision control system";
diff --git a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
index cbbdb6b7075..434e8063ad9 100644
--- a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
@@ -48,5 +48,6 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.gpl3;
     platforms = self.ghc.meta.platforms;
     maintainers = with self.stdenv.lib.maintainers; [ simons ];
+    broken = true;
   };
 })
diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix
index 7b309233ca9..82d92fd79e8 100644
--- a/pkgs/applications/version-management/mercurial/default.nix
+++ b/pkgs/applications/version-management/mercurial/default.nix
@@ -2,7 +2,7 @@
 , guiSupport ? false, tk ? null, curses }:
 
 let
-  version = "3.1.1";
+  version = "3.1.2";
   name = "mercurial-${version}";
 in
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://mercurial.selenic.com/release/${name}.tar.gz";
-    sha256 = "1ncqagvxcqa41ginmf0kpx2z6b2r2zrq7bdkza3nfba682c2is67";
+    sha256 = "0fldlypjpzn12az2gk4b3am615wih3r6ld69im97iqq76zmmrgjx";
   };
 
   inherit python; # pass it so that the same version can be used in hg2git
diff --git a/pkgs/applications/version-management/rcs/default.nix b/pkgs/applications/version-management/rcs/default.nix
index 823638669b6..d58c9ed15c8 100644
--- a/pkgs/applications/version-management/rcs/default.nix
+++ b/pkgs/applications/version-management/rcs/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, ed }:
 
 stdenv.mkDerivation rec {
-  name = "rcs-5.9.2";
+  name = "rcs-5.9.3";
 
   src = fetchurl {
     url = "mirror://gnu/rcs/${name}.tar.xz";
-    sha256 = "0wdmmplga9k05d9k7wjqv4zb6xvvzsli8hmn206pvangki1g66k5";
+    sha256 = "0isvzwfvqkg7zcsznra6wqh650z49ib113n7gp6ncxv5p30x3c38";
   };
 
   buildInputs = [ ed ];
diff --git a/pkgs/applications/version-management/redmine/2002_FHS_through_env_vars.patch b/pkgs/applications/version-management/redmine/2002_FHS_through_env_vars.patch
new file mode 100644
index 00000000000..889b8c930e7
--- /dev/null
+++ b/pkgs/applications/version-management/redmine/2002_FHS_through_env_vars.patch
@@ -0,0 +1,100 @@
+Description: FHS through env vars
+Forwarded: not-needed
+Author: Jérémy Lal <kapouer@melix.org>
+Last-Update: 2013-09-28
+--- redmine.orig/app/models/attachment.rb
++++ redmine/app/models/attachment.rb
+@@ -46,10 +46,10 @@ class Attachment < ActiveRecord::Base
+                                                         "LEFT JOIN #{Project.table_name} ON #{Document.table_name}.project_id = #{Project.table_name}.id"}
+ 
+   cattr_accessor :storage_path
+-  @@storage_path = Redmine::Configuration['attachments_storage_path'] || File.join(Rails.root, "files")
++  @@storage_path = Redmine::Configuration['attachments_storage_path'] || ENV['RAILS_VAR'] ? File.join(ENV['RAILS_VAR'], "files") : File.join(Rails.root, "files")
+ 
+   cattr_accessor :thumbnails_storage_path
+-  @@thumbnails_storage_path = File.join(Rails.root, "tmp", "thumbnails")
++  @@thumbnails_storage_path = ENV['RAILS_TMP'] ? File.join(ENV['RAILS_TMP'], "thumbnails") : File.join(Rails.root, "tmp", "thumbnails")
+ 
+   before_save :files_to_final_location
+   after_destroy :delete_from_disk
+--- redmine.orig/lib/redmine/configuration.rb
++++ redmine/lib/redmine/configuration.rb
+@@ -32,7 +32,7 @@ module Redmine
+       # * <tt>:file</tt>: the configuration file to load (default: config/configuration.yml)
+       # * <tt>:env</tt>: the environment to load the configuration for (default: Rails.env)
+       def load(options={})
+-        filename = options[:file] || File.join(Rails.root, 'config', 'configuration.yml')
++        filename = options[:file] || ENV['RAILS_ETC'] ? File.join(ENV['RAILS_ETC'], 'configuration.yml') : File.join(Rails.root, 'config', 'configuration.yml')
+         env = options[:env] || Rails.env
+ 
+         @config = @defaults.dup
+@@ -103,7 +103,7 @@ module Redmine
+       end
+ 
+       def load_deprecated_email_configuration(env)
+-        deprecated_email_conf = File.join(Rails.root, 'config', 'email.yml')
++        deprecated_email_conf = ENV['RAILS_ETC'] ? File.join(ENV['RAILS_ETC'], 'email.yml') : File.join(Rails.root, 'config', 'email.yml')
+         if File.file?(deprecated_email_conf)
+           warn "Storing outgoing emails configuration in config/email.yml is deprecated. You should now store it in config/configuration.yml using the email_delivery setting."
+           @config.merge!({'email_delivery' => load_from_yaml(deprecated_email_conf, env)})
+--- redmine.orig/lib/redmine/export/pdf.rb
++++ redmine/lib/redmine/export/pdf.rb
+@@ -38,7 +38,7 @@ module Redmine
+         attr_accessor :footer_date
+ 
+         def initialize(lang, orientation='P')
+-          @@k_path_cache = Rails.root.join('tmp', 'pdf')
++          @@k_path_cache = ENV['RAILS_TMP'] ? File.join(ENV['RAILS_TMP'], 'pdf') : Rails.root.join('tmp', 'pdf')
+           FileUtils.mkdir_p @@k_path_cache unless File::exist?(@@k_path_cache)
+           set_language_if_valid lang
+           pdf_encoding = l(:general_pdf_encoding).upcase
+--- redmine.orig/config/application.rb
++++ redmine/config/application.rb
+@@ -52,8 +63,21 @@ module RedmineApp
+     # Do not include all helpers
+     config.action_controller.include_all_helpers = false
+ 
++    # move tmp directory to RAILS_TMP
++    config.paths['tmp'] = ENV['RAILS_TMP']
++
+     config.session_store :cookie_store, :key => '_redmine_session'
+ 
++    # log path
++    config.paths['log'] = File.join(ENV['RAILS_LOG'], "#{Rails.env}.log") unless !ENV['RAILS_LOG']
++
++    config.paths['public'] = ENV['RAILS_PUBLIC'] unless !ENV['RAILS_PUBLIC']
++
++    config.cache_store = :file_store, File.join(ENV['RAILS_TMP'], "cache")
++
++    # Set Active Record's database.yml path
++    config.paths['config/database'] = File.join(ENV['RAILS_ETC'], 'database.yml') unless !ENV['RAILS_ETC']
++
+     if File.exists?(File.join(File.dirname(__FILE__), 'additional_environment.rb'))
+       instance_eval File.read(File.join(File.dirname(__FILE__), 'additional_environment.rb'))
+     end
+--- redmine.orig/lib/plugins/rfpdf/lib/tcpdf.rb
++++ redmine/lib/plugins/rfpdf/lib/tcpdf.rb
+@@ -89,10 +89,10 @@ class TCPDF
+   @@k_small_ratio = 2/3.0
+   
+   cattr_accessor :k_path_cache
+-  @@k_path_cache = Rails.root.join('tmp')
++  @@k_path_cache = ENV['RAILS_TMP'] ? ENV['RAILS_TMP'] : Rails.root.join('tmp')
+   
+   cattr_accessor :k_path_url_cache
+-  @@k_path_url_cache = Rails.root.join('tmp')
++  @@k_path_url_cache = ENV['RAILS_TMP'] ? ENV['RAILS_TMP'] : Rails.root.join('tmp')
+   
+ 	attr_accessor :barcode
+ 	
+--- redmine.orig/lib/redmine/scm/adapters/abstract_adapter.rb
++++ redmine/lib/redmine/scm/adapters/abstract_adapter.rb
+@@ -222,7 +222,7 @@ module Redmine
+           if @stderr_log_file.nil?
+             writable = false
+             path = Redmine::Configuration['scm_stderr_log_file'].presence
+-            path ||= Rails.root.join("log/#{Rails.env}.scm.stderr.log").to_s
++            path ||= ENV['RAILS_LOG'] ? File.join(ENV['RAILS_LOG'], "#{Rails.env}.scm.stderr.log").to_s : Rails.root.join("log/#{Rails.env}.scm.stderr.log").to_s
+             if File.exists?(path)
+               if File.file?(path) && File.writable?(path) 
+                 writable = true
diff --git a/pkgs/applications/version-management/redmine/2003_externalize_session_config.patch b/pkgs/applications/version-management/redmine/2003_externalize_session_config.patch
new file mode 100644
index 00000000000..39af8e02e55
--- /dev/null
+++ b/pkgs/applications/version-management/redmine/2003_externalize_session_config.patch
@@ -0,0 +1,72 @@
+Description: Externalize session config to yml in /etc
+Forwarded: not-needed
+Author: Jérémy Lal <kapouer@melix.org>
+Last-Update: 2010-01-10
+--- redmine.orig/lib/tasks/initializers.rake
++++ redmine/lib/tasks/initializers.rake
+@@ -1,11 +1,12 @@
+ desc 'Generates a secret token for the application.'
++task :generate_secret_token do
+ 
+-file 'config/initializers/secret_token.rb' do
+-  path = File.join(Rails.root, 'config', 'initializers', 'secret_token.rb')
+-  secret = SecureRandom.hex(40)
+-  File.open(path, 'w') do |f|
+-    f.write <<"EOF"
+-# This file was generated by 'rake generate_secret_token', and should
++filename = ENV['YML_SESSION_FILENAME'] ? ENV['YML_SESSION_FILENAME'] : 'session.yml'
++path = File.join(ENV['RAILS_ETC'] ? ENV['RAILS_ETC'] : File.join(Rails.root, 'config'), filename)
++secret = SecureRandom.hex(40)
++File.open(path, 'w') do |f|
++  f.write <<"EOF"
++# This file was generated by 'rake generate_session_store',
+ # not be made visible to public.
+ # If you have a load-balancing Redmine cluster, you will need to use the
+ # same version of this file on each machine. And be sure to restart your
+@@ -15,10 +18,18 @@ file 'config/initializers/secret_token.r
+ # change this key, all old sessions will become invalid! Make sure the
+ # secret is at least 30 characters and all random, no regular words or
+ # you'll be exposed to dictionary attacks.
+-RedmineApp::Application.config.secret_token = '#{secret}'
++
++production:
++  key: _redmine_
++  secret: #{secret}
++
++development:
++  key: _redmine_
++  secret: #{secret}
++
++test:
++  key: _redmine_
++  secret: #{secret}
+ EOF
+   end
+ end
+-
+-desc 'Generates a secret token for the application.'
+-task :generate_secret_token => ['config/initializers/secret_token.rb']
+--- redmine.orig/config/application.rb
++++ redmine/config/application.rb
+@@ -66,7 +66,20 @@ module RedmineApp
+     # move tmp directory to RAILS_TMP
+     config.paths['tmp'] = ENV['RAILS_TMP']
+ 
+-    config.session_store :cookie_store, :key => '_redmine_session'
++    # loads cookie based session session and secret keys
++    # this is needed here because initializers are loaded after plugins,
++    # and some plugins initialize ActionController which requires a secret to be set.
++    # crash if file not found
++    relativeUrlRoot = ENV['RAILS_RELATIVE_URL_ROOT']
++    filename = ENV['RAILS_ETC'] ? File.join(ENV['RAILS_ETC'], 'session.yml') : File.join(File.dirname(__FILE__), '..', 'session.yml')
++    if File.exists?(filename)
++      sessionconfig = YAML::load_file(filename)
++      config.session_store :cookie_store, :key => sessionconfig[Rails.env]['key'], :path => (relativeUrlRoot.blank?) ? '/' : relativeUrlRoot
++      config.secret_token = sessionconfig[Rails.env]['secret']
++    else
++      # temporary settings before session.yml is created
++      config.session_store :cookie_store, :key => '_redmine_session', :path => (relativeUrlRoot.blank?) ? '/' : relativeUrlRoot
++    end
+ 
+     # log path
+     config.paths['log'] = File.join(ENV['RAILS_LOG'], "#{Rails.env}.log") unless !ENV['RAILS_LOG']
diff --git a/pkgs/applications/version-management/redmine/2004_FHS_plugins_assets.patch b/pkgs/applications/version-management/redmine/2004_FHS_plugins_assets.patch
new file mode 100644
index 00000000000..d9a6844a6a3
--- /dev/null
+++ b/pkgs/applications/version-management/redmine/2004_FHS_plugins_assets.patch
@@ -0,0 +1,11 @@
+--- redmine.orig/lib/redmine/plugin.rb
++++ redmine/lib/redmine/plugin.rb
+@@ -47,7 +47,7 @@ module Redmine #:nodoc:
+     self.directory = File.join(Rails.root, 'plugins')
+ 
+     cattr_accessor :public_directory
+-    self.public_directory = File.join(Rails.root, 'public', 'plugin_assets')
++    self.public_directory = ENV['RAILS_TMP'] ? File.join(ENV['RAILS_TMP'], 'plugin_assets') : File.join(Rails.root, 'public', 'plugin_assets')
+ 
+     @registered_plugins = {}
+     class << self
diff --git a/pkgs/applications/version-management/redmine/Gemfile.lock b/pkgs/applications/version-management/redmine/Gemfile.lock
new file mode 100644
index 00000000000..7d83583c019
--- /dev/null
+++ b/pkgs/applications/version-management/redmine/Gemfile.lock
@@ -0,0 +1,152 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    actionmailer (3.2.19)
+      actionpack (= 3.2.19)
+      mail (~> 2.5.4)
+    actionpack (3.2.19)
+      activemodel (= 3.2.19)
+      activesupport (= 3.2.19)
+      builder (~> 3.0.0)
+      erubis (~> 2.7.0)
+      journey (~> 1.0.4)
+      rack (~> 1.4.5)
+      rack-cache (~> 1.2)
+      rack-test (~> 0.6.1)
+      sprockets (~> 2.2.1)
+    activemodel (3.2.19)
+      activesupport (= 3.2.19)
+      builder (~> 3.0.0)
+    activerecord (3.2.19)
+      activemodel (= 3.2.19)
+      activesupport (= 3.2.19)
+      arel (~> 3.0.2)
+      tzinfo (~> 0.3.29)
+    activeresource (3.2.19)
+      activemodel (= 3.2.19)
+      activesupport (= 3.2.19)
+    activesupport (3.2.19)
+      i18n (~> 0.6, >= 0.6.4)
+      multi_json (~> 1.0)
+    arel (3.0.3)
+    awesome_nested_set (2.1.6)
+      activerecord (>= 3.0.0)
+    builder (3.0.0)
+    capybara (2.1.0)
+      mime-types (>= 1.16)
+      nokogiri (>= 1.3.3)
+      rack (>= 1.0.0)
+      rack-test (>= 0.5.4)
+      xpath (~> 2.0)
+    childprocess (0.5.5)
+      ffi (~> 1.0, >= 1.0.11)
+    coderay (1.1.0)
+    erubis (2.7.0)
+    fastercsv (1.5.5)
+    ffi (1.9.5)
+    hike (1.2.3)
+    i18n (0.6.11)
+    journey (1.0.4)
+    jquery-rails (2.0.3)
+      railties (>= 3.1.0, < 5.0)
+      thor (~> 0.14)
+    json (1.8.1)
+    mail (2.5.4)
+      mime-types (~> 1.16)
+      treetop (~> 1.4.8)
+    metaclass (0.0.4)
+    mime-types (1.25.1)
+    mini_portile (0.6.0)
+    mocha (1.0.0)
+      metaclass (~> 0.0.1)
+    multi_json (1.10.1)
+    net-ldap (0.3.1)
+    nokogiri (1.6.3.1)
+      mini_portile (= 0.6.0)
+    pg (0.17.1)
+    polyglot (0.3.5)
+    rack (1.4.5)
+    rack-cache (1.2)
+      rack (>= 0.4)
+    rack-openid (1.4.2)
+      rack (>= 1.1.0)
+      ruby-openid (>= 2.1.8)
+    rack-ssl (1.3.4)
+      rack
+    rack-test (0.6.2)
+      rack (>= 1.0)
+    rails (3.2.19)
+      actionmailer (= 3.2.19)
+      actionpack (= 3.2.19)
+      activerecord (= 3.2.19)
+      activeresource (= 3.2.19)
+      activesupport (= 3.2.19)
+      bundler (~> 1.0)
+      railties (= 3.2.19)
+    railties (3.2.19)
+      actionpack (= 3.2.19)
+      activesupport (= 3.2.19)
+      rack-ssl (~> 1.3.2)
+      rake (>= 0.8.7)
+      rdoc (~> 3.4)
+      thor (>= 0.14.6, < 2.0)
+    rake (10.1.1)
+    rdoc (3.12.2)
+      json (~> 1.4)
+    redcarpet (2.3.0)
+    rmagick (2.13.3)
+    ruby-openid (2.3.0)
+    rubyzip (1.1.6)
+    selenium-webdriver (2.43.0)
+      childprocess (~> 0.5)
+      multi_json (~> 1.0)
+      rubyzip (~> 1.0)
+      websocket (~> 1.0)
+    shoulda (3.3.2)
+      shoulda-context (~> 1.0.1)
+      shoulda-matchers (~> 1.4.1)
+    shoulda-context (1.0.2)
+    shoulda-matchers (1.4.1)
+      activesupport (>= 3.0.0)
+    sprockets (2.2.2)
+      hike (~> 1.2)
+      multi_json (~> 1.0)
+      rack (~> 1.0)
+      tilt (~> 1.1, != 1.3.0)
+    thor (0.19.1)
+    tilt (1.4.1)
+    treetop (1.4.15)
+      polyglot
+      polyglot (>= 0.3.1)
+    tzinfo (0.3.41)
+    websocket (1.2.1)
+    xpath (2.0.0)
+      nokogiri (~> 1.3)
+    yard (0.8.7.4)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  activerecord-jdbc-adapter (~> 1.3.2)
+  activerecord-jdbcpostgresql-adapter
+  awesome_nested_set (= 2.1.6)
+  builder (= 3.0.0)
+  capybara (~> 2.1.0)
+  coderay (~> 1.1.0)
+  fastercsv (~> 1.5.0)
+  jquery-rails (~> 2.0.2)
+  mime-types
+  mocha (~> 1.0.0)
+  net-ldap (~> 0.3.1)
+  pg (>= 0.11.0)
+  rack-openid
+  rails (= 3.2.19)
+  rake (~> 10.1.1)
+  rdoc (>= 2.4.2)
+  redcarpet (~> 2.3.0)
+  rmagick (>= 2.0.0)
+  ruby-openid (~> 2.3.0)
+  selenium-webdriver
+  shoulda (~> 3.3.2)
+  yard
diff --git a/pkgs/applications/version-management/redmine/Gemfile.nix b/pkgs/applications/version-management/redmine/Gemfile.nix
new file mode 100644
index 00000000000..a7339097b14
--- /dev/null
+++ b/pkgs/applications/version-management/redmine/Gemfile.nix
@@ -0,0 +1,332 @@
+[
+{
+name = "actionmailer";
+hash = "cd9f0b22f755b0adeae13cf949adaf63fa1c068c72d0a100572c6a11aecd3ba7";
+url = "http://rubygems.org/downloads/actionmailer-3.2.19.gem";
+version = "3.2.19";
+}
+{
+name = "actionpack";
+hash = "c58ca2342aff2062f4f478551ce46d81918ac93200bc62d099764d2cd7499fcd";
+url = "http://rubygems.org/downloads/actionpack-3.2.19.gem";
+version = "3.2.19";
+}
+{
+name = "activemodel";
+hash = "4ea3abf790eca9ee8228e9e2a465350e258294270a639b63f0e1dfad236fe70e";
+url = "http://rubygems.org/downloads/activemodel-3.2.19.gem";
+version = "3.2.19";
+}
+{
+name = "activerecord";
+hash = "052945ad510744aaa3e35a817a6f515a2316e7dd96df6460f75b36067bb60372";
+url = "http://rubygems.org/downloads/activerecord-3.2.19.gem";
+version = "3.2.19";
+}
+{
+name = "activeresource";
+hash = "8617d24537ca937cc67aac46aaa29782510d66136605426d0a23a3585a839daf";
+url = "http://rubygems.org/downloads/activeresource-3.2.19.gem";
+version = "3.2.19";
+}
+{
+name = "activesupport";
+hash = "2c837a59250da14b12a6b0cfb6774f0afae90aa749fd96ad4347344d8417ad3d";
+url = "http://rubygems.org/downloads/activesupport-3.2.19.gem";
+version = "3.2.19";
+}
+{
+name = "arel";
+hash = "c0006e2169deee3b8cc2d258296388822eeb2db59832450b9b7316e1387d0da4";
+url = "http://rubygems.org/downloads/arel-3.0.3.gem";
+version = "3.0.3";
+}
+{
+name = "awesome_nested_set";
+hash = "0dcd801aea5048f5ab907b62b4174b6763b191eaa4e1e11bb83f996f01349af8";
+url = "http://rubygems.org/downloads/awesome_nested_set-2.1.6.gem";
+version = "2.1.6";
+}
+{
+name = "builder";
+hash = "fbd3e15e5de02245f7d649b3415b2c2875cdc9a14dccde89aa30fc14a314618e";
+url = "http://rubygems.org/downloads/builder-3.0.0.gem";
+version = "3.0.0";
+}
+{
+name = "capybara";
+hash = "a9a19f8d6bb2dfcb1f05ea3e1727cb556d1cba0d234d1712b481e8d4f7bbb91e";
+url = "http://rubygems.org/downloads/capybara-2.1.0.gem";
+version = "2.1.0";
+}
+{
+name = "childprocess";
+hash = "9b583295a11932d2eeffa1e8f5b8fb2fb0064a2f0111ad98c3b752b94f80bf33";
+url = "http://rubygems.org/downloads/childprocess-0.5.5.gem";
+version = "0.5.5";
+}
+{
+name = "coderay";
+hash = "5a943c59e36f7ef9dd2677855735656413af02e3f302431e9c548aabe89f3c15";
+url = "http://rubygems.org/downloads/coderay-1.1.0.gem";
+version = "1.1.0";
+}
+{
+name = "erubis";
+hash = "63653f5174a7997f6f1d6f465fbe1494dcc4bdab1fb8e635f6216989fb1148ba";
+url = "http://rubygems.org/downloads/erubis-2.7.0.gem";
+version = "2.7.0";
+}
+{
+name = "fastercsv";
+hash = "d098199e62e4e10eec436a9ea9b8c189dacd5c06f2825f00d1e0f1c29fdbc3b5";
+url = "http://rubygems.org/downloads/fastercsv-1.5.5.gem";
+version = "1.5.5";
+}
+{
+name = "ffi";
+hash = "0d2ef90163eef8545689e8dfc27fb1245a2d82e3500d587de1e38290629e662f";
+url = "http://rubygems.org/downloads/ffi-1.9.5.gem";
+version = "1.9.5";
+}
+{
+name = "hike";
+hash = "154e2f2593845e5bcd8ed2ba3092600c55c6ad8c630722857de3fdaf334ccc44";
+url = "http://rubygems.org/downloads/hike-1.2.3.gem";
+version = "1.2.3";
+}
+{
+name = "i18n";
+hash = "b37dda25b30484f2674a851e24ae098a38564a61c976fa91a34bf8fceaa3923b";
+url = "http://rubygems.org/downloads/i18n-0.6.11.gem";
+version = "0.6.11";
+}
+{
+name = "journey";
+hash = "7454b8612530784000fbb17ea2df749a71b70702a0ac8ebef4a1e7f05aecc10f";
+url = "http://rubygems.org/downloads/journey-1.0.4.gem";
+version = "1.0.4";
+}
+{
+name = "jquery-rails";
+hash = "cc4eab342fb3b1fcbb2fc1c9a61b09ecd86d795b1f74d607994b0bc6fd5ef444";
+url = "http://rubygems.org/downloads/jquery-rails-2.0.3.gem";
+version = "2.0.3";
+}
+{
+name = "json";
+hash = "961bfbbfa9fda1e857e9c791e964e6664e0d43bf687b19669dfbc7cdbc5e0200";
+url = "http://rubygems.org/downloads/json-1.8.1.gem";
+version = "1.8.1";
+}
+{
+name = "mail";
+hash = "446585c38b062121252688dcc9cc70af1f470822e30db021bb97d185969e257c";
+url = "http://rubygems.org/downloads/mail-2.5.4.gem";
+version = "2.5.4";
+}
+{
+name = "metaclass";
+hash = "8569685c902108b1845be4e5794d646f2a8adcb0280d7651b600dab0844fe942";
+url = "http://rubygems.org/downloads/metaclass-0.0.4.gem";
+version = "0.0.4";
+}
+{
+name = "mime-types";
+hash = "88ef3c596481678710ffd4018fa40f1999b02d97babea39682ba7d5badd21f56";
+url = "http://rubygems.org/downloads/mime-types-1.25.1.gem";
+version = "1.25.1";
+}
+{
+name = "mini_portile";
+hash = "762b3e241362de24b2eb2bb1b98638399b931e9e51bece5f8e2df7611eb16c26";
+url = "http://rubygems.org/downloads/mini_portile-0.6.0.gem";
+version = "0.6.0";
+}
+{
+name = "mocha";
+hash = "788fd93c8009a7e0eebd155509953e5987f4681902aad666a294283baa09899a";
+url = "http://rubygems.org/downloads/mocha-1.0.0.gem";
+version = "1.0.0";
+}
+{
+name = "multi_json";
+hash = "2c98979877e87df0b338ebf5c86091b390f53d62c11a8232bd51ca007e0b82d2";
+url = "http://rubygems.org/downloads/multi_json-1.10.1.gem";
+version = "1.10.1";
+}
+{
+name = "net-ldap";
+hash = "953551665fb0d398740a72a26314c6d34bd70fa35419c96dc58351f17d9a5081";
+url = "http://rubygems.org/downloads/net-ldap-0.3.1.gem";
+version = "0.3.1";
+}
+{
+name = "nokogiri";
+hash = "91761a654439406b5bed71adf6092d49829e26332b4c0e7c8a23a2e628442585";
+url = "http://rubygems.org/downloads/nokogiri-1.6.3.1.gem";
+version = "1.6.3.1";
+}
+{
+name = "pg";
+hash = "e7933e8f7f184c28e820ed85ddfb3ad8a13933b2b2ab8656aa8f81cb0aa610a6";
+url = "http://rubygems.org/downloads/pg-0.17.1.gem";
+version = "0.17.1";
+}
+{
+name = "polyglot";
+hash = "59d66ef5e3c166431c39cb8b7c1d02af419051352f27912f6a43981b3def16af";
+url = "http://rubygems.org/downloads/polyglot-0.3.5.gem";
+version = "0.3.5";
+}
+{
+name = "rack";
+hash = "f7bf3faa8e09a2ff26475372de36a724e7470d6bdc33d189a0ec34b49605f308";
+url = "http://rubygems.org/downloads/rack-1.4.5.gem";
+version = "1.4.5";
+}
+{
+name = "rack-cache";
+hash = "02bfed05f8b3266db804f2fa445801636ca2c6d211a3137ec796f88af5756e1c";
+url = "http://rubygems.org/downloads/rack-cache-1.2.gem";
+version = "1.2";
+}
+{
+name = "rack-openid";
+hash = "8cd2305e738463a7da98791f9ac4df4cf3f6ed27908d982350430694ac2fe869";
+url = "http://rubygems.org/downloads/rack-openid-1.4.2.gem";
+version = "1.4.2";
+}
+{
+name = "rack-ssl";
+hash = "d703764fa2a0d44a2163d6add65be89f5dba4477d1959b90d3727682a9c37dcf";
+url = "http://rubygems.org/downloads/rack-ssl-1.3.4.gem";
+version = "1.3.4";
+}
+{
+name = "rack-test";
+hash = "7e920b6aac888e4a3846e5997fb1cbf456bdb5846322b58dc31697a54a38b306";
+url = "http://rubygems.org/downloads/rack-test-0.6.2.gem";
+version = "0.6.2";
+}
+{
+name = "rails";
+hash = "33b64cf78dfcf3206d961ce03e8fe6d260081da696e60da39d0b2a4a160fe22b";
+url = "http://rubygems.org/downloads/rails-3.2.19.gem";
+version = "3.2.19";
+}
+{
+name = "railties";
+hash = "c569009ee5c005190d208ac228087fdc094b10c6f0cf209f1d12c552b447cc10";
+url = "http://rubygems.org/downloads/railties-3.2.19.gem";
+version = "3.2.19";
+}
+{
+name = "rake";
+hash = "85e446590871dd3469c80dfe70a0296c20b76a9006af6b728c1f47d0b460412d";
+url = "http://rubygems.org/downloads/rake-10.1.1.gem";
+version = "10.1.1";
+}
+{
+name = "rdoc";
+hash = "a8e2b78f7e5ec4cc4716cd863975645f2f2377dc6db267a15e427e5fae2633ed";
+url = "http://rubygems.org/downloads/rdoc-3.12.2.gem";
+version = "3.12.2";
+}
+{
+name = "redcarpet";
+hash = "5c9bcc307fba97ff5a25eec74f08365c17e929d2a5c707db32d6fc99ec81f0b9";
+url = "http://rubygems.org/downloads/redcarpet-2.3.0.gem";
+version = "2.3.0";
+}
+{
+name = "rmagick";
+hash = "109f3b8be90afdea9abbdd2a79a955cd808b5cad65d937ed12676da22870d3b4";
+url = "http://rubygems.org/downloads/rmagick-2.13.3.gem";
+version = "2.13.3";
+}
+{
+name = "ruby-openid";
+hash = "f69ed004e95f7094e23bfd8bc9ebfb1dc88a7b46637252ca2907a1189870ea7b";
+url = "http://rubygems.org/downloads/ruby-openid-2.3.0.gem";
+version = "2.3.0";
+}
+{
+name = "rubyzip";
+hash = "a996435ee9698be6a09d3748f4d23ee15aaf45cbfef1749def165af6ea3c0a9e";
+url = "http://rubygems.org/downloads/rubyzip-1.1.6.gem";
+version = "1.1.6";
+}
+{
+name = "selenium-webdriver";
+hash = "09fe4374d1541cb45403ad1238c2d88129f3afb985218635af087a06c99a521a";
+url = "http://rubygems.org/downloads/selenium-webdriver-2.43.0.gem";
+version = "2.43.0";
+}
+{
+name = "shoulda";
+hash = "52e70b71cbfb7c01dace14e268a62d86c21ddd1e5ec0116c8b1e632d8e04e412";
+url = "http://rubygems.org/downloads/shoulda-3.3.2.gem";
+version = "3.3.2";
+}
+{
+name = "shoulda-context";
+hash = "ee5559aa13248c70fdec6868a3c144adf7438c904c59d1a76b04a002e5151de5";
+url = "http://rubygems.org/downloads/shoulda-context-1.0.2.gem";
+version = "1.0.2";
+}
+{
+name = "shoulda-matchers";
+hash = "c35693cbfa84213212dffbc2c87487427ef364927340151329a842f0a06086b9";
+url = "http://rubygems.org/downloads/shoulda-matchers-1.4.1.gem";
+version = "1.4.1";
+}
+{
+name = "sprockets";
+hash = "fae893b7e86e83c1936f6f2a64db3550510f86eabdd5fa9f0f23fb25d7e0cf96";
+url = "http://rubygems.org/downloads/sprockets-2.2.2.gem";
+version = "2.2.2";
+}
+{
+name = "thor";
+hash = "9ff834f031b5550c743bb8a3139317fefdae9cdebd02d60de376658f427fe522";
+url = "http://rubygems.org/downloads/thor-0.19.1.gem";
+version = "0.19.1";
+}
+{
+name = "tilt";
+hash = "39820562c4f5db45fe18de87ccc30a0e77a998bf5334b1d8c10a2f7dbc1f5903";
+url = "http://rubygems.org/downloads/tilt-1.4.1.gem";
+version = "1.4.1";
+}
+{
+name = "treetop";
+hash = "ffa68f201c0f62c26b0a1d13233d73194400596964696843f87ebb5d812f12ff";
+url = "http://rubygems.org/downloads/treetop-1.4.15.gem";
+version = "1.4.15";
+}
+{
+name = "tzinfo";
+hash = "381b22fd1744a35d0a0239f563f505773681e626e6d900063b14cb9b1b68e98c";
+url = "http://rubygems.org/downloads/tzinfo-0.3.41.gem";
+version = "0.3.41";
+}
+{
+name = "websocket";
+hash = "e626c8c3e8593735d900265fb1fc3439fd06b394069860177d8f40733b12ae9e";
+url = "http://rubygems.org/downloads/websocket-1.2.1.gem";
+version = "1.2.1";
+}
+{
+name = "xpath";
+hash = "9ca4a1cc88d9ab16c591468cce7b5d00ee06a8a76b841f8438970c7a44c86c12";
+url = "http://rubygems.org/downloads/xpath-2.0.0.gem";
+version = "2.0.0";
+}
+{
+name = "yard";
+hash = "e65a26f9b9dc6e2aa9b1d1d2e1a45bee3edf540a6a7e6c30fa6aa1df7f7a29b4";
+url = "http://rubygems.org/downloads/yard-0.8.7.4.gem";
+version = "0.8.7.4";
+}
+]
diff --git a/pkgs/applications/version-management/redmine/README b/pkgs/applications/version-management/redmine/README
new file mode 100644
index 00000000000..1cc4772568a
--- /dev/null
+++ b/pkgs/applications/version-management/redmine/README
@@ -0,0 +1,6 @@
+to regenerate Gemfile.nix and Gemfile.lock you need to
+
+  % nix-build bootstrap.nix
+  % cp result/Gemfile.nix ./
+  % cp result/Gemfile.lock ./
+
diff --git a/pkgs/applications/version-management/redmine/bootstrap.nix b/pkgs/applications/version-management/redmine/bootstrap.nix
new file mode 100644
index 00000000000..4b4359603c9
--- /dev/null
+++ b/pkgs/applications/version-management/redmine/bootstrap.nix
@@ -0,0 +1,45 @@
+{ pkgs ? import <nixpkgs> {}
+}:
+
+with pkgs;
+
+let
+
+in stdenv.mkDerivation rec {
+  version = "2.5.2";
+  name = "redmine-${version}";
+  __noChroot = true;
+  src = fetchurl {
+    url = "http://www.redmine.org/releases/${name}.tar.gz";
+    sha256 = "0x0zwxyj4dwbk7l64s3lgny10mjf0ba8jwrbafsm4d72sncmacv0";
+  };
+  buildInputs = [
+    ruby rubyLibs.bundler libiconv libxslt libxml2 pkgconfig
+    libffi imagemagickBig postgresql which stdenv
+  ];
+  installPhase = ''
+    unset http_proxy
+    unset ftp_proxy
+
+    cp -R . $out
+    cp ${./generate_nix_requirements.rb} $out/generate_nix_requirements.rb
+    cd $out
+
+    cat > config/database.yml <<EOF
+    production:
+      adapter: postgresql
+    EOF
+
+    bundle config --local build.nokogiri --use-system-libraries \
+      --with-iconv-dir=${libiconv} \
+      --with-xslt-dir=${libxslt} \
+      --with-xml2-dir=${libxml2} \
+      --with-pkg-config \
+      --with-pg-config=${postgresql}/bin/pg_config
+
+    bundle install --verbose --without development test rmagick --path /tmp/redmine-${version}
+
+    HOME="/tmp/redmine-${version}" ruby generate_nix_requirements.rb
+    rm -R /tmp/gems
+  '';
+}
diff --git a/pkgs/applications/version-management/redmine/default.nix b/pkgs/applications/version-management/redmine/default.nix
new file mode 100644
index 00000000000..4655a16671e
--- /dev/null
+++ b/pkgs/applications/version-management/redmine/default.nix
@@ -0,0 +1,73 @@
+{ stdenv, fetchurl, ruby, rubyLibs, libiconv, libxslt, libxml2, pkgconfig, libffi, imagemagickBig, postgresql }:
+
+let
+  gemspec = map (gem: fetchurl { url=gem.url; sha256=gem.hash; }) (import ./Gemfile.nix);
+in stdenv.mkDerivation rec {
+  version = "2.5.2";
+  name = "redmine-${version}";
+
+  src = fetchurl {
+    url = "http://www.redmine.org/releases/${name}.tar.gz";
+    sha256 = "0x0zwxyj4dwbk7l64s3lgny10mjf0ba8jwrbafsm4d72sncmacv0";
+  };
+
+  # taken from redmine (2.5.1-2~bpo70+3) in debian wheezy-backports
+  # needed to separate run-time and build-time directories
+  patches = [
+    ./2002_FHS_through_env_vars.patch
+    ./2004_FHS_plugins_assets.patch
+    ./2003_externalize_session_config.patch
+  ];
+  postPatch = ''
+    substituteInPlace lib/redmine/plugin.rb --replace "File.join(Rails.root, 'plugins')" "ENV['RAILS_PLUGINS']"
+    substituteInPlace lib/redmine/plugin.rb --replace "File.join(Rails.root, 'plugins', id.to_s, 'db', 'migrate')" "File.join(ENV['RAILS_PLUGINS'], id.to_s, 'db', 'migrate')"
+    substituteInPlace config/routes.rb --replace '"plugins/*", Rails.root' 'ENV["RAILS_PLUGINS"] + "/*"'
+  '';
+
+  buildInputs = [
+    ruby rubyLibs.bundler libiconv libxslt libxml2 pkgconfig libffi
+    imagemagickBig postgresql
+  ];
+
+  installPhase = ''
+    mkdir -p $out/share/redmine/
+    cp -R . $out/share/redmine/
+    cd $out/share/redmine
+    ln -s ${./Gemfile.lock} Gemfile.lock
+    export HOME=$(pwd)
+
+    cat > config/database.yml <<EOF
+      production:
+        adapter: postgresql
+    EOF
+
+    mkdir -p vendor/cache
+    ${stdenv.lib.concatStrings (map (gem: "ln -s ${gem} vendor/cache/${gem.name};") gemspec)}
+
+    bundle config build.nokogiri \
+      --use-system-libraries \
+      --with-iconv-dir=${libiconv} \
+      --with-xslt-dir=${libxslt} \
+      --with-xml2-dir=${libxml2} \
+      --with-pkg-config \
+      --with-pg-config=${postgresql}/bin/pg_config
+
+    bundle install --verbose --local --deployment
+
+    # make sure we always load pg package
+    echo "gem \"pg\"" >> Gemfile
+
+    # make rails server happy
+    mkdir -p tmp/pids
+
+    # cleanup
+    rm config/database.yml
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://www.redmine.org/;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.garbas ];
+    license = licenses.gpl2;
+  };
+}
diff --git a/pkgs/applications/version-management/redmine/generate_nix_requirements.rb b/pkgs/applications/version-management/redmine/generate_nix_requirements.rb
new file mode 100644
index 00000000000..ed47d52c9c1
--- /dev/null
+++ b/pkgs/applications/version-management/redmine/generate_nix_requirements.rb
@@ -0,0 +1,56 @@
+#!/usr/bin/env ruby
+
+require 'rubygems'
+require 'bundler'
+require 'fileutils'
+require 'net/http'
+require 'net/https'
+require 'uri'
+
+TMP_DIR = "/tmp/gems"
+
+FileUtils.rm_rf(TMP_DIR) if File.exists?(TMP_DIR)
+FileUtils.mkdir TMP_DIR
+
+GEMSERVER = "http://rubygems.org"
+
+# inspect Gemfile.lock
+lockfile = Bundler::LockfileParser.new(Bundler.read_file("Gemfile.lock"))
+
+to_mirror = {}
+
+uri = URI(GEMSERVER)
+http = Net::HTTP.new(uri.host, uri.port)
+http.use_ssl = uri.scheme == 'https'
+
+requirements = {}
+
+lockfile.specs.each do |s|
+  possible_gem_name = "#{s.name}-#{s.version.to_s}.gem"
+
+  Dir.chdir TMP_DIR do
+    filename = `gem fetch #{s.name} -v #{s.version.to_s}`.split()[1]
+    hash = `sha256sum #{filename}.gem`
+    url = "#{GEMSERVER}/downloads/#{filename}.gem"
+    puts url
+    requirements[s.name] = { :version => s.version.to_s, 
+                             :hash => hash.split().first,
+                             :url => url,}
+    
+  end
+end
+
+filename = 'Gemfile.nix'
+
+File.open(filename, 'w') do |file|
+  file.puts "["
+  requirements.each do |name, info|
+    file.puts "{"
+    file.puts ['name = ', '"', name, '";'].join('')
+    file.puts ['hash = ', '"', info[:hash], '";'].join('')
+    file.puts ['url = ', '"', info[:url], '";'].join('')
+    file.puts ['version = ', '"', info[:version], '";'].join('')
+    file.puts "}"
+  end
+  file.puts "]"
+end
diff --git a/pkgs/applications/video/kdenlive/default.nix b/pkgs/applications/video/kdenlive/default.nix
index 8c51c4f35a3..e3e52425ebd 100644
--- a/pkgs/applications/video/kdenlive/default.nix
+++ b/pkgs/applications/video/kdenlive/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   name = "kdenlive-${version}";
-  version = "0.9.8";
+  version = "0.9.10";
 
   src = fetchurl {
     url = "mirror://kde/stable/kdenlive/${version}/src/${name}.tar.bz2";
-    sha256 = "17x5srgywcwlbpbs598jwwc62l8313n4dbqx3sdk7p6lyvwk3jln";
+    sha256 = "0qxpxnfbr8g6xq0h32skgqqi2xylrv2bnmyx5x1cws9y2wwxp3zn";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/video/miro/default.nix b/pkgs/applications/video/miro/default.nix
index 7572bedc1e0..cd203391749 100644
--- a/pkgs/applications/video/miro/default.nix
+++ b/pkgs/applications/video/miro/default.nix
@@ -3,8 +3,13 @@
 , taglib, pysqlite, pycurl, mutagen, pycairo, pythonDBus, pywebkitgtk
 , libtorrentRasterbar, glib_networking, gsettings_desktop_schemas
 , gst_python, gst_plugins_base, gst_plugins_good, gst_ffmpeg
+, enableBonjour ? false, avahi ? null
 }:
 
+assert enableBonjour -> avahi != null;
+
+with stdenv.lib;
+
 buildPythonPackage rec {
   name = "miro-${version}";
   namePrefix = "";
@@ -37,6 +42,9 @@ buildPythonPackage rec {
                  c RESOURCE_ROOT = '"'$out/share/miro/resources/'"'
                }' \
            plat/resources.py
+  '' + optionalString enableBonjour ''
+    sed -i -e 's|ctypes.cdll.LoadLibrary( *|ctypes.CDLL("${avahi}/lib/" +|' \
+      ../lib/libdaap/pybonjour.py
   '';
 
   # Disabled for now, because it requires networking and even if we skip those
@@ -69,13 +77,13 @@ buildPythonPackage rec {
     pygobject pygtk pycurl python.modules.sqlite3 mutagen pycairo pythonDBus
     pywebkitgtk libtorrentRasterbar
     gst_python gst_plugins_base gst_plugins_good gst_ffmpeg
-  ];
+  ] ++ optional enableBonjour avahi;
 
   meta = {
     homepage = "http://www.getmiro.com/";
     description = "Video and audio feed aggregator";
-    license = stdenv.lib.licenses.gpl2Plus;
-    maintainers = [ stdenv.lib.maintainers.aszlig ];
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.gpl2Plus;
+    maintainers = [ maintainers.aszlig ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/video/smplayer/basegui.cpp.patch b/pkgs/applications/video/smplayer/basegui.cpp.patch
new file mode 100644
index 00000000000..05664ee96e6
--- /dev/null
+++ b/pkgs/applications/video/smplayer/basegui.cpp.patch
@@ -0,0 +1,11 @@
+--- a/src/basegui.cpp	2014-08-20 01:04:51.000000000 +0100
++++ b/src/basegui.cpp	2014-10-11 10:25:57.561983556 +0100
+@@ -5235,7 +5235,7 @@
+ #ifdef YOUTUBE_SUPPORT
+ void BaseGui::showTubeBrowser() {
+ 	qDebug("BaseGui::showTubeBrowser");
+-	QString exec = Paths::appPath() + "/smtube";
++	QString exec = "smtube";
+ 	qDebug("BaseGui::showTubeBrowser: '%s'", exec.toUtf8().constData());
+ 	if (!QProcess::startDetached(exec, QStringList())) {
+ 		QMessageBox::warning(this, "SMPlayer",
diff --git a/pkgs/applications/video/smplayer/default.nix b/pkgs/applications/video/smplayer/default.nix
index 018be742a16..4e4d7a3e4b5 100644
--- a/pkgs/applications/video/smplayer/default.nix
+++ b/pkgs/applications/video/smplayer/default.nix
@@ -1,13 +1,15 @@
 { stdenv, fetchurl, qt4 }:
 
 stdenv.mkDerivation rec {
-  name = "smplayer-14.3.0";
+  name = "smplayer-14.9.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/smplayer/${name}.tar.bz2";
-    sha256 = "9b8db20043d1528ee5c6054526779e88a172d2c757429bd7095c794d65ecbc18";
+    sha256 = "04yzgmdj9hm9v7ln49zm2aa1r9mm9q12pym4bvfww7yzsvnx96j2";
   };
 
+  patches = [ ./basegui.cpp.patch ];
+
   buildInputs = [ qt4 ];
 
   preConfigure = ''
diff --git a/pkgs/applications/video/smtube/default.nix b/pkgs/applications/video/smtube/default.nix
new file mode 100644
index 00000000000..d648b5866e0
--- /dev/null
+++ b/pkgs/applications/video/smtube/default.nix
@@ -0,0 +1,23 @@
+{stdenv, fetchurl, qt4}:
+
+stdenv.mkDerivation {
+  name = "smtube-14.8.0";
+  src = fetchurl {
+    url = mirror://sourceforge/smplayer/smtube-14.8.0.tar.bz2;
+    sha256 = "0h0kw4dvdj9sbxp0p6bdib9y8i7854f45lsmrdkykzk6rmgrf1cw";
+  };
+
+  buildInputs = [qt4];
+
+  preConfigure = ''
+    makeFlags="PREFIX=$out"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Play and download Youtube videos";
+    homepage = http://smplayer.sourceforge.net/smtube.php;
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ vbgl ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/video/xbmc/plugins.nix b/pkgs/applications/video/xbmc/plugins.nix
index d34fba9ade7..fe1be7a1e24 100644
--- a/pkgs/applications/video/xbmc/plugins.nix
+++ b/pkgs/applications/video/xbmc/plugins.nix
@@ -16,7 +16,9 @@ let
     installPhase = ''
       d=$out${pluginDir}/${namespace}
       mkdir -p $d
-      cp -R $src/* $d
+      sauce="."
+      [ -d ${namespace} ] && sauce=${namespace}
+      cp -R $sauce/* $d
     '';
   };
 
@@ -53,6 +55,28 @@ in
 
   };
 
+  genesis = mkXBMCPlugin rec {
+
+    plugin = "genesis";
+    namespace = "plugin.video.genesis";
+    version = "2.1.3";
+
+    src = fetchFromGitHub {
+      owner = "lambda81";
+      repo = "lambda-xbmc-addons";
+      rev = "f8aa34064bf31fffbb3c264af32c66bbdaf0a59e";
+      sha256 = "0d197fd6n3m9knpg38frnmfhqyabvh00ridpmikyw4vzk3hx11km";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = "http://forums.tvaddons.ag/forums/148-lambda-s-xbmc-addons";
+      description = "The origins of streaming";
+      platforms = platforms.all;
+      maintainers = with maintainers; [ edwtjo ];
+    };
+
+  };
+
   svtplay = mkXBMCPlugin rec {
 
     plugin = "svtplay";
diff --git a/pkgs/applications/window-managers/awesome/default.nix b/pkgs/applications/window-managers/awesome/default.nix
index 26987565636..713ca591578 100644
--- a/pkgs/applications/window-managers/awesome/default.nix
+++ b/pkgs/applications/window-managers/awesome/default.nix
@@ -2,7 +2,8 @@
 , xlibs, libstartup_notification, libxdg_basedir, libpthreadstubs
 , xcb-util-cursor, lgi, makeWrapper, pango, gobjectIntrospection, unclutter
 , compton, procps, iproute, coreutils, curl, alsaUtils, findutils, rxvt_unicode
-, which, dbus, nettools, git, asciidoc, doxygen }:
+, which, dbus, nettools, git, asciidoc, doxygen, xmlto, docbook_xml_dtd_45
+, docbook_xsl }:
 
 let
   version = "3.5.5";
@@ -52,8 +53,11 @@ stdenv.mkDerivation rec {
     xlibs.xcbutilkeysyms
     xlibs.xcbutilrenderutil
     xlibs.xcbutilwm
+    xmlto docbook_xml_dtd_45 docbook_xsl
   ];
 
+  cmakeFlags = "-DGENERATE_MANPAGES=ON";
+
   LD_LIBRARY_PATH = "${cairo}/lib:${pango}/lib:${gobjectIntrospection}/lib";
   GI_TYPELIB_PATH = "${pango}/lib/girepository-1.0";
   LUA_CPATH = "${lgi}/lib/lua/5.1/?.so";
diff --git a/pkgs/applications/window-managers/stumpwm/contrib.nix b/pkgs/applications/window-managers/stumpwm/contrib.nix
new file mode 100644
index 00000000000..dc707983811
--- /dev/null
+++ b/pkgs/applications/window-managers/stumpwm/contrib.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchgit }:
+
+let
+  tag = "0.9.8";
+in
+
+stdenv.mkDerivation rec {
+ name = "stumpwmContrib-${tag}";
+
+ src = fetchgit {
+   url = "https://github.com/stumpwm/stumpwm";
+   rev = "refs/tags/${tag}";
+   sha256 = "0a0lwwlly4hlmb30bk6dmi6bsdsy37g4crvv1z24gixippyv1qzm";
+ };
+
+  phases = [ "unpackPhase" "installPhase" ];
+
+  installPhase = ''
+   mkdir -p $out/bin
+   cp -a $src/contrib $out/
+   cp -a $src/contrib/stumpish $out/bin
+ '';
+
+  meta = with stdenv.lib; {
+    description = "Extension modules for the StumpWM";
+    homepage    = https://github.com/stumpwm/;
+    license     = licenses.gpl2Plus;
+    maintainers = with maintainers; [ _1126 ];
+    platforms   = platforms.linux;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/applications/window-managers/stumpwm/default.nix b/pkgs/applications/window-managers/stumpwm/default.nix
new file mode 100644
index 00000000000..7fe28b1678a
--- /dev/null
+++ b/pkgs/applications/window-managers/stumpwm/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, pkgs, fetchgit, autoconf, sbcl, lispPackages, xdpyinfo, texinfo4, makeWrapper, stumpwmContrib }:
+
+let
+  tag = "0.9.8";
+in
+
+stdenv.mkDerivation rec {
+ name = "stumpwm-${tag}";
+
+ src = fetchgit {
+   url = "https://github.com/stumpwm/stumpwm";
+   rev = "refs/tags/${tag}";
+   sha256 = "0a0lwwlly4hlmb30bk6dmi6bsdsy37g4crvv1z24gixippyv1qzm";
+ };
+
+ buildInputs = [ texinfo4 autoconf lispPackages.clx lispPackages.cl-ppcre sbcl makeWrapper stumpwmContrib ];
+
+ phases = [ "unpackPhase" "preConfigurePhase" "configurePhase" "installPhase" ];
+
+ preConfigurePhase = ''
+   $src/autogen.sh
+   mkdir -pv $out/bin
+ '';
+
+ configurePhase = ''
+   ./configure --prefix=$out --with-contrib-dir=${pkgs.stumpwmContrib}/contrib
+ '';
+
+ installPhase = ''
+   make
+   make install
+ '';
+
+  meta = with stdenv.lib; {
+    description = "A tiling window manager for X11";
+    homepage    = https://github.com/stumpwm/;
+    license     = licenses.gpl2Plus;
+    maintainers = with maintainers; [ _1126 ];
+    platforms   = platforms.linux;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/data/documentation/man-pages/default.nix b/pkgs/data/documentation/man-pages/default.nix
index 2ec66152f7d..a62abf54efd 100644
--- a/pkgs/data/documentation/man-pages/default.nix
+++ b/pkgs/data/documentation/man-pages/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "man-pages-3.73";
+  name = "man-pages-3.74";
 
   src = fetchurl {
     url = "mirror://kernel/linux/docs/man-pages/${name}.tar.xz";
-    sha256 = "01qcafrq9z55kh5q97fir13l9cg2a1ls7ijkgzj99kgc6vkc90h5";
+    sha256 = "10c6jra95ccdhz22xhmpskxcn29xvirkxzwr8dhz3jazyqwhq58y";
   };
 
   preBuild =
diff --git a/pkgs/data/misc/poppler-data/default.nix b/pkgs/data/misc/poppler-data/default.nix
index 9e2679c0438..5bf86ea6b32 100644
--- a/pkgs/data/misc/poppler-data/default.nix
+++ b/pkgs/data/misc/poppler-data/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, cmake }:
 
 stdenv.mkDerivation rec {
-  name = "poppler-data-0.4.6";
+  name = "poppler-data-0.4.7";
 
   src = fetchurl {
     url = "http://poppler.freedesktop.org/${name}.tar.gz";
-    sha256 = "1yhaz74b50hjkz3ii077kmq3qg3p3kdyxm33cv6r1njvz8fr01pk";
+    sha256 = "1pm7wg6xqj4sppb5az4pa7psfdk4yxxkw52j85bm9fksibcb0lp7";
   };
 
   buildInputs = [ cmake ];
diff --git a/pkgs/desktops/gnome-3/3.12/apps/pomodoro/default.nix b/pkgs/desktops/gnome-3/3.12/apps/pomodoro/default.nix
index 75c82607a02..d09b17df697 100644
--- a/pkgs/desktops/gnome-3/3.12/apps/pomodoro/default.nix
+++ b/pkgs/desktops/gnome-3/3.12/apps/pomodoro/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, which, automake113x, intltool, pkgconfig, libtool, makeWrapper,
+{ stdenv, fetchFromGitHub, which, automake113x, intltool, pkgconfig, libtool, makeWrapper,
   dbus_glib, libcanberra, gst_all_1, upower, vala, gnome3_12, gtk3, gst_plugins_base,
   glib, gobjectIntrospection, hicolor_icon_theme
 }:
@@ -6,13 +6,11 @@
 stdenv.mkDerivation rec {
   name = "gnome-shell-pomodoro-0.10.2-11-gd5f5b69";
 
-  src = fetchurl {
-    url =
-      "https://codeload.github.com/codito/gnome-shell-pomodoro/" +
-      "legacy.tar.gz/gnome-3.12";
-    sha256 =
-      "6c86203f56f69a52675c2df21e580a785f8894a2a9cdf4322d44743603504d10";
-    name = "${name}.tar.gz"; 
+  src = fetchFromGitHub {
+      owner = "codito";
+      repo = "gnome-shell-pomodoro";
+      rev = "0.10.2";
+      sha256 = "1jd4xmcx0fbcn57d1qj7b4xkj0dv4i75s367nifabm47akqzyn4f";
   };
 
   configureScript = ''./autogen.sh'';
@@ -47,4 +45,4 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3;
     platforms = platforms.linux;
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/desktops/gnome-3/3.12/misc/gpaste/default.nix b/pkgs/desktops/gnome-3/3.12/misc/gpaste/default.nix
index 48a08601407..f87431653c9 100644
--- a/pkgs/desktops/gnome-3/3.12/misc/gpaste/default.nix
+++ b/pkgs/desktops/gnome-3/3.12/misc/gpaste/default.nix
@@ -2,12 +2,12 @@
 , pango, gtk3, gnome3, dbus, clutter, appdata-tools, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  version = "3.12.3";
+  version = "3.12.3.1";
   name = "gpaste-${version}";
 
   src = fetchurl {
     url = "https://github.com/Keruspe/GPaste/archive/v${version}.tar.gz";
-    sha256 = "03f48kaidgbnyi4c7qgkwvnxs5rz7nk9m3iqfpsbhc512c8qnc1f";
+    sha256 = "05afbhn3gw015cf2z3045lvlnj4cz06p6libkglb2wqsfb7azbl0";
   };
 
   buildInputs = [ intltool autoreconfHook pkgconfig vala glib
diff --git a/pkgs/desktops/kde-4.12/applications/kate.nix b/pkgs/desktops/kde-4.12/applications/kate.nix
deleted file mode 100644
index e7a6476dd6d..00000000000
--- a/pkgs/desktops/kde-4.12/applications/kate.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ stdenv, kde, kdelibs, kactivities, qjson, pyqt4, sip, python, pykde4}:
-
-kde {
-
-  buildInputs = [ kdelibs kactivities qjson pyqt4 sip python pykde4 ];
-
-  meta = {
-    description = "Kate, the KDE Advanced Text Editor, as well as KWrite";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/applications/konsole.nix b/pkgs/desktops/kde-4.12/applications/konsole.nix
deleted file mode 100644
index bd4e9e58cd0..00000000000
--- a/pkgs/desktops/kde-4.12/applications/konsole.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ stdenv, kde, kdelibs, kde_baseapps }:
-
-kde {
-
-  buildInputs = [ kdelibs kde_baseapps ];
-
-  meta = {
-    description = "Konsole, the KDE terminal emulator";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/default.nix b/pkgs/desktops/kde-4.12/default.nix
deleted file mode 100644
index ffcd3115de7..00000000000
--- a/pkgs/desktops/kde-4.12/default.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ callPackage, callPackageOrig, stdenv, qt48, release ? "4.12.4" }:
-
-let
-  branch = "4.12";
-
-  # Need callPackageOrig to avoid infinite cycle
-  kde = callPackageOrig ./kde-package {
-    inherit release branch ignoreList extraSubpkgs callPackage;
-  };
-
-  # The list of igored individual modules
-  ignoreList = {
-    # Doesn't work yet
-    kdeutils = [ "ksecrets" ];
-    # kdeadmin/strigi-analyzer has no real code
-    kdeadmin = [ "strigi-analyzer" ];
-    # Most of kdebindings do not compile due to a bug in the buildsystem
-    kdebindings = [ "kimono" "korundum" "kross-interpreters" "perlkde" "qyoto" ];
-  };
-
-  # Extra subpackages in the manifest format
-  extraSubpkgs = {};
-
-in
-
-kde.modules // kde.individual //
-{
-  inherit (kde) manifest modules individual splittedModuleList;
-
-  akonadi = callPackage ./support/akonadi { };
-
-  qt4 = qt48;
-
-  kdebase_workspace = kde.modules.kde_workspace;
-
-  inherit release;
-
-  full = stdenv.lib.attrValues kde.modules;
-
-  l10n = callPackage ./l10n {
-    inherit release branch;
-    inherit (kde.manifest) stable;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/files/kde-wallpapers-buildsystem.patch b/pkgs/desktops/kde-4.12/files/kde-wallpapers-buildsystem.patch
deleted file mode 100644
index 378cdb64694..00000000000
--- a/pkgs/desktops/kde-4.12/files/kde-wallpapers-buildsystem.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 3d3e247..f78db67 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1,5 +1,10 @@
--find_package(KDE4 REQUIRED)
--include(KDE4Defaults)
-+project(kde-wallpapers NONE)
-+if( WALLPAPER_INSTALL_DIR )
-+  message(STATUS "Installing wallpapers to user-supplied directory ${WALLPAPER_INSTALL_DIR}")
-+else()
-+  find_package(KDE4 REQUIRED)
-+  include(KDE4Defaults)
-+endif()
- 
- install(DIRECTORY Air DESTINATION ${WALLPAPER_INSTALL_DIR} PATTERN .svn EXCLUDE)
- 
diff --git a/pkgs/desktops/kde-4.12/files/kdelibs-cve-2014-5033.patch b/pkgs/desktops/kde-4.12/files/kdelibs-cve-2014-5033.patch
deleted file mode 100644
index c85eccd6beb..00000000000
--- a/pkgs/desktops/kde-4.12/files/kdelibs-cve-2014-5033.patch
+++ /dev/null
@@ -1,36 +0,0 @@
---- a/kdecore/auth/backends/polkit-1/Polkit1Backend.cpp
-+++ b/kdecore/auth/backends/polkit-1/Polkit1Backend.cpp
-@@ -144,7 +144,7 @@
- 
- Action::AuthStatus Polkit1Backend::actionStatus(const QString &action)
- {
--    PolkitQt1::UnixProcessSubject subject(QCoreApplication::applicationPid());
-+    PolkitQt1::SystemBusNameSubject subject(QString::fromUtf8(callerID()));
-     PolkitQt1::Authority::Result r = PolkitQt1::Authority::instance()->checkAuthorizationSync(action, subject,
-                                                                                               PolkitQt1::Authority::None);
-     switch (r) {
-@@ -160,21 +160,12 @@
- 
- QByteArray Polkit1Backend::callerID() const
- {
--    QByteArray a;
--    QDataStream s(&a, QIODevice::WriteOnly);
--    s << QCoreApplication::applicationPid();
--
--    return a;
-+    return QDBusConnection::systemBus().baseService().toUtf8();
- }
- 
- bool Polkit1Backend::isCallerAuthorized(const QString &action, QByteArray callerID)
- {
--    QDataStream s(&callerID, QIODevice::ReadOnly);
--    qint64 pid;
--
--    s >> pid;
--
--    PolkitQt1::UnixProcessSubject subject(pid);
-+    PolkitQt1::SystemBusNameSubject subject(QString::fromUtf8(callerID));
-     PolkitQt1::Authority *authority = PolkitQt1::Authority::instance();
- 
-     PolkitResultEventLoop e;
-
diff --git a/pkgs/desktops/kde-4.12/files/polkit-install.patch b/pkgs/desktops/kde-4.12/files/polkit-install.patch
deleted file mode 100644
index d2ecac663ec..00000000000
--- a/pkgs/desktops/kde-4.12/files/polkit-install.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ru -x '*~' kdelibs-4.6.90-orig/kdecore/auth/ConfigureChecks.cmake kdelibs-4.6.90/kdecore/auth/ConfigureChecks.cmake
---- kdelibs-4.6.90-orig/kdecore/auth/ConfigureChecks.cmake	2011-05-20 22:24:54.000000000 +0200
-+++ kdelibs-4.6.90/kdecore/auth/ConfigureChecks.cmake	2011-07-12 14:03:00.000000000 +0200
-@@ -139,7 +139,7 @@
-         ${CMAKE_INSTALL_PREFIX} _KDE4_AUTH_POLICY_FILES_INSTALL_DIR
-         ${POLKITQT-1_POLICY_FILES_INSTALL_DIR})
- 
--    set(KDE4_AUTH_POLICY_FILES_INSTALL_DIR ${_KDE4_AUTH_POLICY_FILES_INSTALL_DIR} CACHE STRING 
-+    set(KDE4_AUTH_POLICY_FILES_INSTALL_DIR "\${CMAKE_INSTALL_PREFIX}/share/polkit-1/actions" CACHE STRING 
-         "Where policy files generated by KAuth will be installed" FORCE)
- elseif(KDE4_AUTH_BACKEND_NAME STREQUAL "FAKE")
-     set (KAUTH_COMPILING_FAKE_BACKEND TRUE)
diff --git a/pkgs/desktops/kde-4.12/kactivities.nix b/pkgs/desktops/kde-4.12/kactivities.nix
deleted file mode 100644
index 06381bb13d7..00000000000
--- a/pkgs/desktops/kde-4.12/kactivities.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, nepomuk_core }:
-
-kde {
-  propagatedBuildInputs = [ kdelibs nepomuk_core ];
-
-  meta = {
-    description = "KDE activities library and daemon";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kde-base-artwork.nix b/pkgs/desktops/kde-4.12/kde-base-artwork.nix
deleted file mode 100644
index 3f416cebddc..00000000000
--- a/pkgs/desktops/kde-4.12/kde-base-artwork.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  outputHashAlgo = "sha256";
-  outputHashMode = "recursive";
-  outputHash = "0mrd3w7rhsj0v92c8rh9zjxyifq7wyvwszksf2gyn53dzd06blk8";
-
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE Base artwork";
-    license = "GPL";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kde-baseapps/kde-baseapps.nix b/pkgs/desktops/kde-4.12/kde-baseapps/kde-baseapps.nix
deleted file mode 100644
index a65f33e13de..00000000000
--- a/pkgs/desktops/kde-4.12/kde-baseapps/kde-baseapps.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ stdenv, kde, kdelibs, htmlTidy, kactivities
-, nepomuk_core, nepomuk_widgets, libXt }:
-
-kde {
-  buildInputs = [ kdelibs nepomuk_core nepomuk_widgets htmlTidy kactivities libXt ];
-
-  meta = {
-    description = "Base KDE applications, including the Dolphin file manager and Konqueror web browser";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kde-package/4.12.4.nix b/pkgs/desktops/kde-4.12/kde-package/4.12.4.nix
deleted file mode 100644
index 9b5a53cee48..00000000000
--- a/pkgs/desktops/kde-4.12/kde-package/4.12.4.nix
+++ /dev/null
@@ -1,444 +0,0 @@
-{stable=true;
-hashes=builtins.listToAttrs[
-  {name="amor";value="0c8298z7c3a71yj6nik7h8h7rngqzrz6rc95kl990p37jp2ng0d9";}
-  {name="analitza";value="0l122nh81nf7r4bm73gc6dp9k4jh2dxc7majrzjq37hb8pi77njh";}
-  {name="ark";value="155bhqqyw3afm99c47b3pxqf9fiqcz6gqg1pavsx9q4rmk7rp8m6";}
-  {name="audiocd-kio";value="1c5234s1hdh6jc8szyb4nwqr1h8hhwlmin0iyxabsl0c45pss9pa";}
-  {name="blinken";value="0q0y3xfv3pjrw0h8mnbigpywwrqk8wb2lqbjcgk755j6syinhphh";}
-  {name="bomber";value="1f12qmg58n9sj6vjqdj57ch50pq5f0h6anx06x9bhhs502w6aqwy";}
-  {name="bovo";value="10x4qy4vdp76iv3n60iy24lk1wbsjdfr88l1m9xifj4k942wk2ir";}
-  {name="cantor";value="1x5rxshdbgl40cqx6h5r0hx49rrc6gwnabsl8b7kzimh0kbv2ma9";}
-  {name="cervisia";value="0ia78cjkq606232jy14ps7cpm77pq4xdmcfimv4l6p0xjpq8jzsg";}
-  {name="dolphin-plugins";value="08h278jpbll7wc1mhz58cklj1bkrk61dfwjlflag6fnlm6i4xx8k";}
-  {name="dragon";value="16gyr0dl50nl9r3yc2fkwmqlrfgzzyim6bdlb9a76winzbz8mgxr";}
-  {name="ffmpegthumbs";value="01cmwm6w1z2gsllwdmrzsl9882fw5k59lr1k7z114kkrh1l0b2j4";}
-  {name="filelight";value="01rs1r80ixm1dj5d73a22893rdz2srxqp4dv5pysw1fhn02zdkkf";}
-  {name="granatier";value="1ia85yxfbbi8qxdyn0vwgmdjrxwssb6nadbia1yqsjdncfsnhbvs";}
-  {name="gwenview";value="01p5b1z05v3c7f192fxrrfp6x3ss7gx8pxv29czkp641hpmcg3jl";}
-  {name="jovie";value="1hfkj3vlvm63sgb4gx3xl7nksb5cfqnh7shs7wqm3gl6yj2rwhjj";}
-  {name="juk";value="1vxnrxz6gbyk7fd15akhiyczpgq03cym3nldi61m958cx4khd4y7";}
-  {name="kaccessible";value="0a9r2bk8a5h7mpl37li3bqbsz5dfgn8rsxnri93msvc6555pnyzv";}
-  {name="kactivities";value="1fl638cyj3abxfmbqcfqsd3idmdmys1xim4flf1jpbqa29psl75j";}
-  {name="kajongg";value="19awqjqn9hqhprzi7mjb6nkrgvb3mzhignkgalfjd4j5rga7vzz0";}
-  {name="kalgebra";value="1bj88nh7znk86i6a4d3jcjyqp46kzipfc99xvhxvqdsy8drbrwjp";}
-  {name="kalzium";value="00pjpdbd11jgzs443kgh8y6pxf3ff0ypgl5j3zfa6gbj18cnkkq0";}
-  {name="kamera";value="12mcjw8l0nh2jbi04myx1y1irbf92x9bx93gdymw939lawaalqic";}
-  {name="kanagram";value="1yd5agh61nv4ajlrijxg5g3hvw0xjxdvnc6h3lbz5mgvc8smvazk";}
-  {name="kapman";value="1aa78q6y2s9dig2603b9nry5rx5jbbxz2pb3jxr323hmqxp6jy1z";}
-  {name="kapptemplate";value="08j8xh9spk6ymlichl74n1v2zn342d94m6f4jragnx2jvif2163k";}
-  {name="kate";value="1cxc9bgzvfpns7dhmmafzxhnyjqxyq0adr0l1mbwsahxpkblc30r";}
-  {name="katomic";value="01lk7ajlj98rjbs76xd9r3hnd98dy49xv809m2zchm5ria7hdh48";}
-  {name="kblackbox";value="1sgbs0flllmy6d3518wwnzmdr14kqkxsi76h2p4xyk3bq2g9q2xg";}
-  {name="kblocks";value="1zinpxbvri52r26qiiiv4j4r02a22947hcrchf1z3n6lf817vqwv";}
-  {name="kbounce";value="0f9ssdpicvkiv7dxnj75h1cmz24mz2sy2zyp7rw7mvr9ynnl8w21";}
-  {name="kbreakout";value="02ix39kfkagmsqs8icqrqy9cz90lbl2wqajyjzrshw1vi29iahc7";}
-  {name="kbruch";value="0mfqdgwd5d8sy3bdiicpd5927dgg6zhm521f2q853qd2sqjbspgl";}
-  {name="kcachegrind";value="0dydarm1a2i64nazcl59s0a8b8z7znnm20wdmx2gfm5377j98y8x";}
-  {name="kcalc";value="1znrv4fqwaf56djf9qg6fxcp7nfi7fzza2whjlkayvc9kxv3ah9y";}
-  {name="kcharselect";value="0mbl9zvb9hp0xdi58v0vb8z0by71xkz22pr9flnkar5b1klnjpdb";}
-  {name="kcolorchooser";value="1d1cyaqi0rhwfnmjbxpjjavgwjhr3pd2rywlxxb9g4q3rv8k7wg5";}
-  {name="kcron";value="033f0s14crqpsirhgysi309b9pj02vwsd7fr28n6n2sh5imj30a0";}
-  {name="kdeartwork";value="08snjhaqiddiaj5jfd0vx1fjijsyqwngy7p1mkpdfhj7575sbx7c";}
-  {name="kde-baseapps";value="0k0mfbpvmv0n2brrb8hc0rd1wz04m3cyr1byb0z34a7x7kk1h1i4";}
-  {name="kde-base-artwork";value="0vmkbmir7hviqkv7nqrbqd6skj2srp9w4nrs8rkcvq7c8n76rk5w";}
-  {name="kde-dev-scripts";value="0l5frvb1akhy86j3yic3n1jirclj8r1jwjn760fi89vl1xysrarq";}
-  {name="kde-dev-utils";value="0807c8mq8rqqk8vf9r1idqmqrlfv9bsc8rjn8mfv2ch49mzzdrdj";}
-  {name="kdegraphics-mobipocket";value="1m6lnkr460261iq634lz887dbhvmj56p97k4llch3h80ra10mlh8";}
-  {name="kdegraphics-strigi-analyzer";value="1rqb1lzqb39p95xpf8c26pm9rxhcmycd518hxzp8arz6k2chazj8";}
-  {name="kdegraphics-thumbnailers";value="04aaxjznb176ym89f06gp4bycg67zndwc451mkdr33mal58jh0zs";}
-  {name="kdelibs";value="0dn0z1fs4vym7cp2749viw171dhay9ql2dp65a4hphmsdmk9bzv4";}
-  {name="kdenetwork-filesharing";value="1r3a5y9nmcf06nqsdh8k4jny7dmrhya8xi3jwz0d1mfzlfjksyf7";}
-  {name="kdenetwork-strigi-analyzers";value="0gqj5b91q3l5hna6zbgm17wi54g7g058n605adc1mch97yshqyrd";}
-  {name="kdepim";value="00lsyg6762kd2qvhhqq6vrrrl1fbk07yd3ha8w1yyjwiy9cnsy7z";}
-  {name="kdepimlibs";value="1h7k5ravilwz9r5lh7dqjnzh9h8hz43plbdaicjwk2sg4mqwzzhh";}
-  {name="kdepim-runtime";value="1z631kag1gpmk2ljk64vhscr3lad3mj3599phh0i8jqlxvr4007c";}
-  {name="kdeplasma-addons";value="0lfza3454hzbicqpz0ipjys9brjkblmpsngqg5njxd6ph9mzg34a";}
-  {name="kde-runtime";value="05n5cllsjyf03bgisykrbc74i7a3nm5f0k6hnq9sphf8xnxl318x";}
-  {name="kdesdk-kioslaves";value="045kf44s2gg3i2xl6087zn3cz80y7li26fzxdvvv89ywcq0npg59";}
-  {name="kdesdk-strigi-analyzers";value="15xxpgiy5bp6m78crw448mzv3yijjzipsrybadrbwqz6p7dpysbv";}
-  {name="kdesdk-thumbnailers";value="039rgq5p4mkdrilcvkf6k1d9d45swk74hdg3qnsbz3m47vqqf92h";}
-  {name="kde-wallpapers";value="0z7ffz2i410k2xxl1cr8m74mm90c5sizpbhmhyqxwjlsbz1gwfya";}
-  {name="kdewebdev";value="0ljwbzdcshjaz2dv7yp4ckj0c0jxa60ka6vjbhdmc4x7nvwnx737";}
-  {name="kdf";value="0s8ms5h5gdfa3697xg1yzz0h2hijlv68gi2g7n7g3xwpawbqrzv1";}
-  {name="kdiamond";value="10v7zrj4d96ppawjib1jgdz00455h8334w4vb619g448pj5h66sn";}
-  {name="kfloppy";value="1fd7wwbxngaiy0fbxvqp027rp61jg8fwajz70lx7acs20kcs0301";}
-  {name="kfourinline";value="1s2gc7zk932ks89c24pyimcsspnmabbmsdjh520xkzzxrp41gz0b";}
-  {name="kgamma";value="0n19zrarda9fvhimgnm84mdcaqgcqn4qfr0yw6i76la24pjbl46y";}
-  {name="kgeography";value="0w32841fligd3gyjl34q2f31jldw2vl47bi6cljwp7nlkdlp0lkn";}
-  {name="kget";value="1kls245b5s2dlxcrpa4d969zlr2lw797p7p2ilyhb4rbv871c0wd";}
-  {name="kgoldrunner";value="10xq9827gwib6w9h4hhys1v896rxqd50mz66k3frnrqals04zbbk";}
-  {name="kgpg";value="1wa5ymibiqnjxl5ck94y1xh3qk0bx3v7k7n2y3jcvprmhglffx6j";}
-  {name="khangman";value="1jfi30cb17gkn7v3i42wj0pqgaq3mr4fjbwh60ikvhxxd0nf5nny";}
-  {name="kig";value="1z0f50m1hgr5jj79v5v610bdggy4knlqnbxpnwf6ihj60v3cn0x0";}
-  {name="kigo";value="1klcgh3bpl3gqyh5zvij7ah754wjjf409a9l1xqxjigz4samnism";}
-  {name="killbots";value="04vy4zybgqls4whymqnzgkfbmzb17cc1m2xf2hp32bq5fq0r8103";}
-  {name="kimono";value="1bqbgch1z2nm143sp4lwnh3swvmvavhkj4scgx6d17m24jgd69hn";}
-  {name="kiriki";value="04r7p5f9a2iwv7c40pcnbga5ldcfjjig31fx81ww0b6p62dv2vrl";}
-  {name="kiten";value="1fxyy805b1q2sxdkd0hq2fr6plbnawzyascsbwychsqsasw2rmng";}
-  {name="kjumpingcube";value="0q2hn6lvz5grwz10nqq5jkcg3j1lgqsmmmhmx0glr4c732hg1z1d";}
-  {name="klettres";value="1w4340gaaip8imwy5d0058600v6fi7wnifppay2l7kvlp09iwmws";}
-  {name="klickety";value="088xvrb1jn8f3cfh39387pzw9simrjan63c24hn76290fkqjadgq";}
-  {name="klines";value="0n3bsvf5skr4816mjrd7zqjnh8vp5klvgx3h0025hwcbqyfa64bs";}
-  {name="kmag";value="0x91b1fwvwppiwzsnvc0647429ffhn56gndykmmyzr27i45znk3r";}
-  {name="kmahjongg";value="19qz7q5sr5xphzwxjf84h5vg0fll45fvs3pi5q9a5x5g4dy14wsv";}
-  {name="kmines";value="1nm7di7xs727jvfvv2039hpgkxzddgfv6vvrw3jwls975akl1wmb";}
-  {name="kmix";value="19s9z6m1v3wk5prngmm612r34013z7dkira83ap6kn3v32cfciry";}
-  {name="kmousetool";value="1zf7d3k1jf5ydaiw7v7a34hd5w4fmgkd4g9427546x64n27vx0a2";}
-  {name="kmouth";value="12n1x1imy7w3rn8g8zawmfivic0avzgrpmwm71hy7kxw9ya24yjg";}
-  {name="kmplot";value="1zji3lkq332zgvccnlisdavwxh0d1x81131xcy25r36q9c42syj3";}
-  {name="knavalbattle";value="0ibbahwck80z1dhycvm52k4nnj0pifzf9vi7j64kczc54z20b6d2";}
-  {name="knetwalk";value="0j8lyv60rvs5w214vhpmkf0807vi8b2vc8lglmmvz66cpw42c45z";}
-  {name="kolf";value="060dmnpr84g1512l0c0myxf1h1qp4jdsfgnxg5vwpciqk0dc9qhy";}
-  {name="kollision";value="033x8dg57f5amsnignri6ln8adavbaw1l3sydlf0jrw7ww3qvw1h";}
-  {name="kolourpaint";value="0c7i95cplwvxxm6aqgsk70q8ny8yfarcah9113vk6b81llbwn5sc";}
-  {name="kompare";value="0mq2v9nissb5s41lwvjbpba6fznkzwah9a7yisjq1nq47rp4ymqb";}
-  {name="konquest";value="0bsqxr12x9qgk4al21s2hrm48hv15ir98792z8jna3d5w6j0a2zy";}
-  {name="konsole";value="13kv6pmziqfis4qxkfxbmm3yiy2w3fy2l2qi68l0s6yiaqkd9y37";}
-  {name="kopete";value="012zjq0zmqkgahnzzj02xaqhsh800bn1x7sj8vmv1mxqyi66srvy";}
-  {name="korundum";value="1qyk8gvzcjwi5pi7s0a74glyvi1mi7k5z5ilza16y0z5k6ffgvck";}
-  {name="kpat";value="0lmhygv4l1vkmbf7vmrbns6fl1anbcxsnldn0hccdpp73x1py88g";}
-  {name="kppp";value="0nnz137c384xlnrvy625zdjfzzrp6yrcfnn9gw6fs81cq4zwrr64";}
-  {name="krdc";value="0g7p94q0h3i3j9wwcmmiylz0604v4z9f0b2dppfiaq5bnz9m5pdl";}
-  {name="kremotecontrol";value="1hg4fq6ypws4zb07glsrflmr7vq35h7qqmjf5r5b5j53xqmgr6hp";}
-  {name="kreversi";value="059xsi9x6jhsdsgrxrk08haz1v4p4i46l7zkg8id64s9kvywgn5j";}
-  {name="krfb";value="01l8jv5ad3gc5kxjbr7k4ggcipc5903z82pq9616mk0qpd96j6jb";}
-  {name="kross-interpreters";value="0cdb9kaq9fdjaxks83z3gvjwwhz94g4kgjq1rp6wmzwydk28ip6i";}
-  {name="kruler";value="0i9n2znhm6llriipvrrjh8yymj76a17895w7kbcyd41srk0akk5i";}
-  {name="ksaneplugin";value="1fqkbf47ajw7ckzipphdjpnpv4gk426k1rpq3z1qlbag9f9wvxsd";}
-  {name="kscd";value="1f8099bhylrr5m3a5lrmjxz2rz59k3qi1abfjs63hk2z523p99n3";}
-  {name="kshisen";value="1nhq2rxiylzr7klpqqbhl35v7s4prv15wrckgx84mdm5hmyh4nsw";}
-  {name="ksirk";value="0s577h7sswqr44mzmm2a5gi62w8lpzivy9xy5jpib3iw768a9gxy";}
-  {name="ksnakeduel";value="09jp1cd138cqv131h7m3c994zwxbn97yw77fq1yrcfgyspmdx0x9";}
-  {name="ksnapshot";value="1fiqracij106c22b0ws6n047wn4fww5fzli8rqjas5m25931azl4";}
-  {name="kspaceduel";value="1a2n9kyn6y62yps5apclgpmzbchdrfn3lck9fl68alk0bpqdnz1n";}
-  {name="ksquares";value="1bg9na03ph1lignnl6fdxkvcbsq77dskbgn8d7hyq1p800n7jx7q";}
-  {name="kstars";value="1wf13434sxxwikrp29jl5klggmv0ln73a57rs0m4gr4zrjvbrs2s";}
-  {name="ksudoku";value="1nq4nj1q723s7gv1d0l3wafs2d6wz67xhir2sa1wsw12dzh856vf";}
-  {name="ksystemlog";value="0khb92vxr0hfny2yxwnww33ahgm9gmmrf5h7qaj0lqnyrh5fcl6c";}
-  {name="kteatime";value="13jzf4mcq8glkhg5szpawj2k0ss4qfzrjhpmjn3m3grz1zf167sw";}
-  {name="ktimer";value="0y6q9khxlmb7pgds4f9a83aqnbn0gwbi3r15s8vf72qr3qj3f5xc";}
-  {name="ktouch";value="1swdkzvm9q4r8ily7n4cs91y186zlzys7kjs3lf2q46d63l9nfdz";}
-  {name="ktuberling";value="0fzd17hvb2zaqwd0fw6f3rq0mlq8xrmz155dyg916jg2alslicxh";}
-  {name="kturtle";value="1hlfv77g0v48qfqwpqqnw5qf8fcl4v38612v3jy5z038g4sacxkx";}
-  {name="ktux";value="0shib3f2gcdgf88zh2w67kizbmj7gz0vqy8ff5vmr75fp44111b4";}
-  {name="kubrick";value="1dkd7rzkxyk71hd4r9l6nlvcl3zj8vf6i9v1gqi8zjrqwpxvf188";}
-  {name="kuser";value="1qc4wk5q9y7mmkfjqndcby7782z2aaj7x1cc4dcmds01glm2bw6j";}
-  {name="kwalletmanager";value="1f0ncnx3d6z3v373095nhydj844hiva64qh80cc7rmb624vlcsa4";}
-  {name="kwordquiz";value="1m0zi0gldw7shjy4nhiw2azgrfvhcmm5h423gckjczpqd9f17ihd";}
-  {name="libkcddb";value="0k1xr8z3dmfq08qh7fkjhi2v523lhy1inmggnk3gaxzarlvhqxxa";}
-  {name="libkcompactdisc";value="03ch51firb2xcqwy3p6q5j5zr9570nvqa5cgd5yj7pjnzdwcjxv8";}
-  {name="libkdcraw";value="1ypamhdk8y7vb9y250vilmv5dgxf1svvsw329yxc146ii0pb4nwr";}
-  {name="libkdeedu";value="0m20vxa9x2ww7xmq1a7j4pmqsdj5pp05hsg4q64slz69m5npi30r";}
-  {name="libkdegames";value="1hz02x2k7iiw0i78ifa4ji60l87by855v5f6pm3ksw3rdw0ipz9v";}
-  {name="libkexiv2";value="0mz88j3kszqxf518h7n0fjnql2iqwx780hv4jhvrkraclf4czng9";}
-  {name="libkipi";value="0x4d356c20fdjaqadzaqhsf43v9c9bgbwbyy304q2w329m8ab058";}
-  {name="libkmahjongg";value="0911knwvhwa77hr0ncqwjqzfcyvgi806ckyldglrhvm0gw0mgy60";}
-  {name="libkomparediff2";value="0rn5xhbnywjjbk9qx3xw3gss57l105a4a4v05gh9vvl82hc5sfzx";}
-  {name="libksane";value="19zibd1y96sxwnpdxkd752jiky83b8is85qi7six60g5kkzi948m";}
-  {name="lokalize";value="0sl9i146rx0ls3rii6893alkvsjv8ln0d5yabd72f8kagsaw42h7";}
-  {name="lskat";value="1flx7l8svf51fkr3lw0z85d0gkrabjzi73w4qn2wnsaz9wr6kahi";}
-  {name="marble";value="1gvlq0si76bk4yd8dfbixzwxj618ifd2jlr7fq6f9mx498cvifpi";}
-  {name="mplayerthumbs";value="1nw01216mghwxz7zhkf7px5kkb2d4dqdk7par20agvw2raan9axi";}
-  {name="nepomuk-core";value="0gavipa1hn5aw77q3xrdv9464l8qpabq6kawlvjvv90hjvs8clis";}
-  {name="nepomuk-widgets";value="1cr4v4s567vcx1046gj066xfmhrqx4g6lipffr6d3wdq9cgy5y5i";}
-  {name="okteta";value="0maadxyngj8an0hl3kidvmgj538n6vzpz964yilzj6qrry9f46wc";}
-  {name="okular";value="0cmcaqpaxx8910qmsvag6spjbchdbv6j9hgbizw6qq09kz4d9a7k";}
-  {name="oxygen-icons";value="00l7qy95za3c323hkjiihavmq2vjm2yi81yn4cgwpnc5l336pynb";}
-  {name="pairs";value="15kafhp54dsrv2466j9gnn0c8iqbfx4frrql0r6v5qza015vybr9";}
-  {name="palapeli";value="0bx7qqidywxwkj9vdbzpqsy2fvkjgf9vj8nqk5ypx7jm7da87y94";}
-  {name="parley";value="163xnfd9h8r6dp3riqs3s32qaramyf225bhy6y9laknbrr9lxnsm";}
-  {name="perlkde";value="05ybh43ckfq5qh03pklkgiajc2s6b6cmvp5alx0dvq605h5z881f";}
-  {name="perlqt";value="1fn3gxb8b4kx7g24pnrbg42dv17hn2wv70g53yfr6z277ljinxzl";}
-  {name="picmi";value="19gli6mii15qya9hi6qyb52rsk2n2dk6r4kzla99ps3cs8n4h9x8";}
-  {name="poxml";value="11cwhjil8vdwwpmp1l61335b5j9714hbxiyqw0wyxcr6yccasbdf";}
-  {name="print-manager";value="0v940bsksw04ymxq56lgm6sprkdlyzjm5fgsm24yb564nay3x42h";}
-  {name="pykde4";value="00gpjqgsfv83xfk1xmglr8c32ln9cc05m4nf1qbd3gvr5jb6cxmg";}
-  {name="qtruby";value="1312v8vn091q5lh81cm5z5wkgidigdngqkjs3kf7lp9d1k50ai47";}
-  {name="qyoto";value="0sjii1i31x1cxhr5y5ijaain9ql75fbba9ss1cxz9agswp95kpcz";}
-  {name="rocs";value="0h72mrb65gnk36g9d4l55bm7kfldh3v95hbv0wxad0p9v7baxmn2";}
-  {name="smokegen";value="0x4qz1pk8wn4vq0fmy344v9m1gh12dav3n71z6xi4pnpmpmq7kna";}
-  {name="smokekde";value="1wl88jy9yvvrykzknj1vy7rqhfxr52q053y2jmay53hvx1iaqjxm";}
-  {name="smokeqt";value="1lphdjxcvysn1lkq6yj7z5pmhzlwpkj3xx7izfdk1g6a1pkjwr7j";}
-  {name="step";value="0ma7748ixi00zw9hrjjlgbb7d1a4cr124ka3ymn45sa4q4mza3zh";}
-  {name="superkaramba";value="0xbs2k863p2yg2k7wn70gbwvriin4lv2hv78r5m6fwvb4rsjygsb";}
-  {name="svgpart";value="1svwqxcxl2wp4wq9s3q6crys7jmz072wp4qz69fvqcvp1cd92gsp";}
-  {name="sweeper";value="19lsqw192h3863fbd265didviy7m4wk6qwfgnhc7sxaxxccm19y4";}
-  {name="umbrello";value="0lmygjjsqiw0xnv4d3d1yb1b5zlnj18lh01k954ycl8f50cxsv9a";}
-  {name="zeroconf-ioslave";value="1324mx9gsr6ghi7m1qk4kwr91g8wfd3jsw3rzp26nhrlwjsa5j6a";}
-];
-modules=[
-{
-  module="kdemultimedia";
-  split=true;
-  pkgs=[
-    { name="audiocd-kio"; sane="audiocd_kio"; }
-    { name="dragon";  }
-    { name="ffmpegthumbs";  }
-    { name="juk";  }
-    { name="kmix";  }
-    { name="kscd";  }
-    { name="libkcddb";  }
-    { name="libkcompactdisc";  }
-    { name="mplayerthumbs";  }
-  ];
-}
-{
-  module="kdegraphics";
-  split=true;
-  pkgs=[
-    { name="gwenview";  }
-    { name="kamera";  }
-    { name="kcolorchooser";  }
-    { name="kdegraphics-mobipocket"; sane="kdegraphics_mobipocket"; }
-    { name="kdegraphics-strigi-analyzer"; sane="kdegraphics_strigi_analyzer"; }
-    { name="kdegraphics-thumbnailers"; sane="kdegraphics_thumbnailers"; }
-    { name="kgamma";  }
-    { name="kolourpaint";  }
-    { name="kruler";  }
-    { name="ksaneplugin";  }
-    { name="ksnapshot";  }
-    { name="libkdcraw";  }
-    { name="libkexiv2";  }
-    { name="libkipi";  }
-    { name="libksane";  }
-    { name="okular";  }
-    { name="svgpart";  }
-  ];
-}
-{
-  module="kdelibs";
-  split=true;
-  pkgs=[
-    { name="kdelibs";  }
-    { name="nepomuk-core"; sane="nepomuk_core"; }
-    { name="nepomuk-widgets"; sane="nepomuk_widgets"; }
-  ];
-}
-{
-  module="kdenetwork";
-  split=true;
-  pkgs=[
-    { name="kdenetwork-filesharing"; sane="kdenetwork_filesharing"; }
-    { name="kdenetwork-strigi-analyzers"; sane="kdenetwork_strigi_analyzers"; }
-    { name="zeroconf-ioslave";  }
-    { name="kget";  }
-    { name="kopete";  }
-    { name="kppp";  }
-    { name="krdc";  }
-    { name="krfb";  }
-  ];
-}
-{
-  module="kdeutils";
-  split=true;
-  pkgs=[
-    { name="ark";  }
-    { name="filelight";  }
-    { name="kcalc";  }
-    { name="kcharselect";  }
-    { name="kdf";  }
-    { name="kfloppy";  }
-    { name="kgpg";  }
-    { name="kremotecontrol";  }
-    { name="ktimer";  }
-    { name="kwalletmanager";  }
-    { name="print-manager"; sane="print_manager"; }
-    { name="superkaramba";  }
-    { name="sweeper";  }
-  ];
-}
-{
-  module="applications";
-  split=true;
-  pkgs=[
-    { name="kate";  }
-    { name="konsole";  }
-  ];
-}
-{
-  module="kdetoys";
-  split=true;
-  pkgs=[
-    { name="amor";  }
-    { name="kteatime";  }
-    { name="ktux";  }
-  ];
-}
-{
-  module="kdesdk";
-  split=true;
-  pkgs=[
-    { name="cervisia";  }
-    { name="dolphin-plugins"; sane="dolphin_plugins"; }
-    { name="kapptemplate";  }
-    { name="kcachegrind";  }
-    { name="kde-dev-scripts"; sane="kde_dev_scripts"; }
-    { name="kde-dev-utils"; sane="kde_dev_utils"; }
-    { name="kdesdk-kioslaves"; sane="kdesdk_kioslaves"; }
-    { name="kdesdk-strigi-analyzers"; sane="kdesdk_strigi_analyzers"; }
-    { name="kdesdk-thumbnailers"; sane="kdesdk_thumbnailers"; }
-    { name="kompare";  }
-    { name="libkomparediff2";  }
-    { name="lokalize";  }
-    { name="okteta";  }
-    { name="poxml";  }
-    { name="umbrello";  }
-  ];
-}
-{
-  module="kdegames";
-  split=true;
-  pkgs=[
-    { name="bomber";  }
-    { name="bovo";  }
-    { name="granatier";  }
-    { name="kajongg";  }
-    { name="kapman";  }
-    { name="katomic";  }
-    { name="kblackbox";  }
-    { name="kblocks";  }
-    { name="kbounce";  }
-    { name="kbreakout";  }
-    { name="kdiamond";  }
-    { name="kfourinline";  }
-    { name="kgoldrunner";  }
-    { name="kigo";  }
-    { name="killbots";  }
-    { name="kiriki";  }
-    { name="kjumpingcube";  }
-    { name="klickety";  }
-    { name="klines";  }
-    { name="kmahjongg";  }
-    { name="kmines";  }
-    { name="knavalbattle";  }
-    { name="knetwalk";  }
-    { name="kolf";  }
-    { name="kollision";  }
-    { name="konquest";  }
-    { name="kpat";  }
-    { name="kreversi";  }
-    { name="kshisen";  }
-    { name="ksirk";  }
-    { name="ksnakeduel";  }
-    { name="kspaceduel";  }
-    { name="ksquares";  }
-    { name="ksudoku";  }
-    { name="ktuberling";  }
-    { name="kubrick";  }
-    { name="libkdegames";  }
-    { name="libkmahjongg";  }
-    { name="lskat";  }
-    { name="palapeli";  }
-    { name="picmi";  }
-  ];
-}
-{
-  module="kdeedu";
-  split=true;
-  pkgs=[
-    { name="analitza";  }
-    { name="blinken";  }
-    { name="cantor";  }
-    { name="kalgebra";  }
-    { name="kalzium";  }
-    { name="kanagram";  }
-    { name="kbruch";  }
-    { name="kgeography";  }
-    { name="khangman";  }
-    { name="kig";  }
-    { name="kiten";  }
-    { name="klettres";  }
-    { name="kmplot";  }
-    { name="kstars";  }
-    { name="ktouch";  }
-    { name="kturtle";  }
-    { name="kwordquiz";  }
-    { name="libkdeedu";  }
-    { name="marble";  }
-    { name="pairs";  }
-    { name="parley";  }
-    { name="rocs";  }
-    { name="step";  }
-  ];
-}
-{
-  module="kdeadmin";
-  split=true;
-  pkgs=[
-    { name="kcron";  }
-    { name="ksystemlog";  }
-    { name="kuser";  }
-  ];
-}
-{
-  module="kdebindings";
-  split=true;
-  pkgs=[
-    { name="kimono";  }
-    { name="korundum";  }
-    { name="kross-interpreters"; sane="kross_interpreters"; }
-    { name="perlkde";  }
-    { name="perlqt";  }
-    { name="pykde4";  }
-    { name="qtruby";  }
-    { name="qyoto";  }
-    { name="smokegen";  }
-    { name="smokekde";  }
-    { name="smokeqt";  }
-  ];
-}
-{
-  module="kdeaccessibility";
-  split=true;
-  pkgs=[
-    { name="jovie";  }
-    { name="kaccessible";  }
-    { name="kmag";  }
-    { name="kmousetool";  }
-    { name="kmouth";  }
-  ];
-}
-{
-  module="kde-baseapps";
-sane="kde_baseapps";  split=true;
-  pkgs=[
-    { name="kde-baseapps"; sane="kde_baseapps"; }
-  ];
-}
-{ module="kactivities";  split=false;}
-{ module="kdeartwork";  split=false;
-  pkgs=[
-    { name="ColorSchemes"; }
-    { name="IconThemes"; }
-    { name="emoticons"; }
-    { name="kscreensaver"; }
-    { name="kwin-styles"; sane="kwin_styles";}
-    { name="styles"; }
-    { name="wallpapers"; }
-    { name="HighResolutionWallpapers"; }
-    { name="WeatherWallpapers"; }
-    { name="desktopthemes"; }
-  ];
-
-}
-{ module="kde-base-artwork"; sane="kde_base_artwork"; split=false;}
-{ module="kdelibs";  split=false;}
-{ module="kdepim";  split=false;}
-{ module="kdepimlibs";  split=false;}
-{ module="kdepim-runtime"; sane="kdepim_runtime"; split=false;}
-{ module="kdeplasma-addons"; sane="kdeplasma_addons"; split=false;}
-{ module="kde-runtime"; sane="kde_runtime"; split=false;}
-{ module="kde-wallpapers"; sane="kde_wallpapers"; split=false;}
-{ module="kdewebdev";  split=false;
-  pkgs=[
-    { name="klinkstatus"; }
-    { name="kfilereplace"; }
-    { name="kimagemapeditor"; }
-    { name="kommander"; }
-  ];
-
-}
-{ module="kde-workspace"; sane="kde_workspace"; split=false;}
-{ module="oxygen-icons"; sane="oxygen_icons"; split=false;}
-];
-}
diff --git a/pkgs/desktops/kde-4.12/kde-package/default.nix b/pkgs/desktops/kde-4.12/kde-package/default.nix
deleted file mode 100644
index 6b4e1ba0ad8..00000000000
--- a/pkgs/desktops/kde-4.12/kde-package/default.nix
+++ /dev/null
@@ -1,129 +0,0 @@
-{ callPackage, runCommand, stdenv, fetchurl, qt4, cmake, automoc4
-, release, branch, ignoreList, extraSubpkgs
-}:
-
-let
-  inherit (stdenv.lib) filter fold;
-  inherit (builtins) getAttr hasAttr remoteAttrs listToAttrs tail head;
-in
-rec {
-  manifest = import (./. + "/${release}.nix");
-
-  # src attribute for $name tarball
-  kdesrc = name: fetchurl {
-    url = "mirror://kde/" + (if manifest.stable then "" else "un")
-      + "stable/${release}/src/${name}-${release}.tar.xz";
-    sha256 = getAttr name manifest.hashes;
-  };
-
-  # Default meta attribute
-  defMeta = {
-    homepage = http://www.kde.org;
-    inherit branch;
-    platforms = stdenv.lib.platforms.linux;
-    inherit (qt4.meta) maintainers;
-  };
-
-  # KDE package built from the whole tarball
-  # This function is used both for monolithic modules and modules which are
-  # released as individual tarballs
-  kdeMonoPkg = name: let n_ = name; in a@{meta, name ? n_, version ? release, ...}:
-    stdenv.mkDerivation ({
-      name = "${name}-${version}";
-      src = kdesrc name;
-      meta = defMeta // meta;
-      enableParallelBuilding = true;
-    } // (removeAttrs a [ "meta" "name" ]));
-
-  # kdeMonoPkg wrapper for modules splitted upstream compatible with combinePkgs
-  # API.
-  kdeSplittedPkg = module: {name, sane ? name}: kdeMonoPkg name;
-
-  # Build subdirectory ${subdir} of tarball ${module}-${release}.tar.xz
-  kdeSubdirPkg = module:
-    {name, subdir ? name, sane ? name}:
-    let name_ = name; in
-    a@{cmakeFlags ? [], name ? name_, meta ? {}, ...}:
-    stdenv.mkDerivation ({
-      name = "${name}-${release}";
-      src = kdesrc module;
-      cmakeFlags =
-        [ "-DDISABLE_ALL_OPTIONAL_SUBDIRECTORIES=TRUE"
-          "-DBUILD_doc=TRUE"
-          "-DBUILD_${subdir}=TRUE"
-        ] ++ cmakeFlags;
-      meta = defMeta // meta;
-      enableParallelBuilding = module.enableParallelBuilding or true;
-    } // (removeAttrs a [ "meta" "name" "cmakeFlags" ]));
-
-  # A KDE monolithic module
-  kdeMonoModule = name: path: callPackage path { kde = kdeMonoPkg name; };
-
-  # Combine packages in one module.
-  # Arguments:
-  #  * pkgFun --- a function of the following signature:
-  #               module: manifest_attrs: manual_attrs: derivation;
-  #  * module --- name of the module
-  #  * pkgs --- list of packages in manifest format
-  combinePkgs = pkgFun: module: pkgs:
-    let
-      f = p@{name, ...}:
-        callPackage (./.. + "/${module}/${name}.nix") { kde = pkgFun module p; };
-      list = map f pkgs;
-      attrs = listToAttrs (map
-        ({name, sane ? name, ...}@p: { name = sane; value = f p; })
-        pkgs);
-    in
-      runCommand "${module}-${release}"
-      ({passthru = attrs // {
-         propagatedUserEnvPackages = list;
-         projects = attrs;
-       };})
-        ''
-          mkdir -pv $out/nix-support
-          echo "${toString list}" | tee $out/nix-support/propagated-user-env-packages
-        '';
-
-  # Given manifest module data, return the module
-  kdeModule = { module, sane ? module, split, pkgs ? [] }:
-    let
-      pkgs_ = filterPkgs module pkgs;
-    in
-    # Module is splitted by upstream
-    if split then combinePkgs kdeSplittedPkg module pkgs_
-    # Monolithic module
-    else if pkgs == [] then kdeMonoModule module (./.. + "/${module}.nix")
-    # Module is splitted by us
-    else combinePkgs kdeSubdirPkg module pkgs_;
-
-  # The same, as nameValuePair with sane name
-  kdeModuleNV = a@{ module, sane ? module, ... }:
-    { name = sane; value = kdeModule a; };
-
-  filterPkgs = module: (p:
-      removeNames (stdenv.lib.attrByPath [module] [] ignoreList) p
-      ++ (stdenv.lib.attrByPath [module] [] extraSubpkgs));
-
-  # Remove attrsets with x.name in subst. Optimized for empty subst.
-  removeNames = subst: big:
-    fold (s: out: filter (x: x.name != s) out) big subst;
-
-  modules = listToAttrs (map kdeModuleNV manifest.modules);
-
-  splittedModuleList =
-    let
-      splitted = filter (a: a ? pkgs) manifest.modules;
-      names = map ({module, sane ? module, ...}: sane) splitted;
-    in
-    map (m: m.projects) (stdenv.lib.attrVals names modules);
-
-  individual =
-    stdenv.lib.zipAttrsWith
-    (
-      name: list:
-      if tail list == []
-      then head list
-      else abort "Multiple modules define ${name}"
-    )
-    splittedModuleList;
-}
diff --git a/pkgs/desktops/kde-4.12/kde-package/kde-manifest.sh b/pkgs/desktops/kde-4.12/kde-package/kde-manifest.sh
deleted file mode 100755
index e964ce3ddc1..00000000000
--- a/pkgs/desktops/kde-4.12/kde-package/kde-manifest.sh
+++ /dev/null
@@ -1,146 +0,0 @@
-#! /bin/sh
-
-# Usage: download kde release to $dir, then run
-# $0 $dir
-
-dir="$1"
-
-# Detect release number & whether it is a stable release
-if [[ ! -d "${dir}" ]]; then
-  echo "${dir} is not a directory (or doesn't exist)!" >&2
-  exit 1
-fi
-
-release=$(ls "${dir}"/kdelibs-*.tar.xz | \
-  sed -e 's/.*kdelibs-//' -e 's/\.tar\.xz//')
-
-if [[ ${release##*.} -gt 50 ]]; then
-  stable="false"
-else
-  stable="true"
-fi
-
-echo "Detected release ${release}" >&2
-
-declare -A hash
-declare -A modules
-declare -a packages
-declare -a top_level
-
-# xsltproc output declares -A module
-if [[ ! -f kde_projects.xml ]]; then
-  curl -O -J http://projects.kde.org/kde_projects.xml
-fi
-eval `xsltproc kde-submodules.xslt kde_projects.xml`
-
-module[kde-baseapps]=kde-baseapps
-unset module[kactivities]
-
-print_sane() {
-  echo "Called print_sane $1" >&2
-  sane="${1//[^a-z0-9_]/_}"
-  if [[ "$sane" != "$1" ]]; then
-    echo "Sane version is $sane" >&2
-    echo -n "sane=\"$sane\";"
-  fi
-}
-
-for i in `cd "${dir}"; ls *-${release}.tar.xz`; do
-  package=${i%-${release}.tar.xz}
-  packages+=( "$package" )
-  echo -n "${package}.. " >&2
-  hash[$package]=$(nix-hash --type sha256 --flat --base32 "${dir}/${i}")
-  echo -n ${hash[$package]} >&2
-
-  if [ -n "${module[$package]}" ]; then
-    m="${module[$package]}"
-    echo " (${m})" >&2
-    modules[$m]=1
-  else
-    top_level+=( "$package" )
-    echo " (top-level)" >&2
-  fi
-  #nix-store --add-fixed sha256 "${dir}/${i}" >&2
-done
-
-
-print_pkg_hash() {
-  echo "  {name=\"${1}\";value=\"${hash[$1]}\";}"
-}
-
-print_hashes(){
-  echo "hashes=builtins.listToAttrs["
-  for p in "${packages[@]}"; do print_pkg_hash "$p"; done
-  echo "];"
-}
-
-print_split_module(){
-  echo -n "$1:" >&2
-  echo -e "{\n  module=\"$1\";"
-  print_sane "$1"
-  echo "  split=true;"
-  echo "  pkgs=["
-  for p in "${packages[@]}"; do
-    if [[ "${module[$p]}" == "$1" ]]; then
-      echo -n "    { name=\"$p\"; "
-      print_sane "$p"
-      echo " }"
-      echo -n " $p" >&2
-    fi
-  done
-  echo "  ];"
-  echo "}"
-  echo >&2
-}
-
-print_mono_module(){
-  echo -en "{ module=\"$1\"; "
-  print_sane "$1"
-  echo -n "$1 ... " >&2
-  echo -n " split=false;"
-  cml="$1-$release/CMakeLists.txt"
-  tar -xf "${dir}/$1-${release}.tar.xz" "$cml"
-  if grep '^[^#]*add_subdirectory' $cml >/dev/null; then
-    if grep '^[^#]*add_subdirectory' $cml | grep -v macro_optional_add_subdirectory >/dev/null; then
-      echo " is monolithic (has unconditionally added subdirs)" >&2
-    else
-      subdirs=( `grep '^[^#]*add_subdirectory' $cml |
-        sed -e 's/[^#]*add_subdirectory *( *\(.*\) *)/\1/' |
-        grep -v '\(doc\|cmake\)'` )
-      echo " seems splittable, subdirs: ${subdirs[*]}" >&2
-      echo -e "\n  pkgs=["
-      for s in "${subdirs[@]}"; do
-        echo -en "    {"
-		echo -n " name=\"${s//\//-}\"; "
-        print_sane "$s"
-        if [[ $s != "${s//\//-}" ]]; then
-          echo -n "subdir=\"$s\"; "
-        fi
-        echo "}"
-      done
-      echo -e "  ];\n"
-    fi
-  else
-    echo " is monolithic (has no subdirs)" >&2
-  fi
-  rm $cml
-  rmdir $1-$release
-  echo "}"
-}
-
-print_modules(){
-  echo "modules=["
-  echo "Printing modules splitted by upstream" >&2
-  for m in "${!modules[@]}"; do print_split_module "$m"; done
-  echo >&2
-  echo "Printing modules not splitted by upstream (${top_level[*]})" >&2
-  for m in "${top_level[@]}"; do print_mono_module "$m"; done
-  echo "];"
-}
-
-echo "Writing ${release}.nix" >&2
-exec > "${release}.nix"
-echo "{stable=${stable};"
-print_hashes
-print_modules
-echo "}"
diff --git a/pkgs/desktops/kde-4.12/kde-package/kde-submodules.xslt b/pkgs/desktops/kde-4.12/kde-package/kde-submodules.xslt
deleted file mode 100644
index 952a05a9d27..00000000000
--- a/pkgs/desktops/kde-4.12/kde-package/kde-submodules.xslt
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- xslt file for http://projects.kde.org/kde_projects.xml -->
-
-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-
-	<xsl:output method="text" />
-	<xsl:template match="/">
-		<xsl:for-each select="kdeprojects/component[@identifier='kde']">
-			<xsl:text>declare -A module
</xsl:text>
-			<xsl:for-each select="module">
-				<xsl:variable name="module" select='@identifier' />
-				<xsl:for-each select=".//project[repo]">
-					<xsl:text>module["</xsl:text>
-					<xsl:value-of select='@identifier' />
-					<xsl:text>"]="</xsl:text>
-					<xsl:value-of select="$module" />
-					<xsl:text>"
</xsl:text>
-				</xsl:for-each>
-			</xsl:for-each>
-		</xsl:for-each>
-	</xsl:template>
-</xsl:stylesheet>
diff --git a/pkgs/desktops/kde-4.12/kde-runtime.nix b/pkgs/desktops/kde-4.12/kde-runtime.nix
deleted file mode 100644
index 1c9706f4f4b..00000000000
--- a/pkgs/desktops/kde-4.12/kde-runtime.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ kde, kdelibs, bzip2, libssh, exiv2, attica, qca2
-, libcanberra, virtuoso, samba, libjpeg, ntrack, pkgconfig, xz, pulseaudio
-, networkmanager, kactivities, kdepimlibs, openexr, ilmbase, gpgme
-}:
-
-kde {
-  buildInputs = [
-    kdelibs attica xz bzip2 libssh libjpeg exiv2 ntrack
-    qca2 samba libcanberra pulseaudio gpgme
-    networkmanager kactivities kdepimlibs openexr
-#todo: add openslp
-#todo: gpgme can't be found because cmake module is provided by kdepimlibs which are found too late
-  ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR";
-
-  passthru.propagatedUserEnvPackages = [ virtuoso ];
-
-  meta = {
-    license = "LGPL";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kde-wallpapers.nix b/pkgs/desktops/kde-4.12/kde-wallpapers.nix
deleted file mode 100644
index 393d90824eb..00000000000
--- a/pkgs/desktops/kde-4.12/kde-wallpapers.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake }:
-
-kde {
-  nativeBuildInputs = [ cmake ];
-
-  patches = [ ./files/kde-wallpapers-buildsystem.patch ];
-
-  cmakeFlags = "-DWALLPAPER_INSTALL_DIR=share/wallpapers";
-
-  outputHashAlgo = "sha256";
-  outputHashMode = "recursive";
-  outputHash = "1yg9c780xdxa60bw832cqj60v87cbvjxp27k6gacj2lwk7rm5hwg";
-
-  meta = {
-    description = "Wallpapers for KDE";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kde-workspace.nix b/pkgs/desktops/kde-4.12/kde-workspace.nix
deleted file mode 100644
index 38e28225d94..00000000000
--- a/pkgs/desktops/kde-4.12/kde-workspace.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-{ stdenv, kde, kdelibs, qimageblitz, libdbusmenu_qt, xorg, lm_sensors
-, pciutils, libraw1394, libusb1, python, libqalculate, akonadi
-, xkeyboard_config, kdepimlibs, pam, boost, gpsd, prison
-, libjpeg, pkgconfig, kactivities, qjson, udev, fetchurl
-}:
-
-kde {
-
-  version = "4.11.6";
-
-  src = fetchurl {
-    url = "mirror://kde/stable/4.12.2/src/kde-workspace-4.11.6.tar.xz";
-    sha256 = "0lk3k9zl4x4il5dqpw7mf25gv8a3y48fd3jq3jvgmwwlviwcpcz1";
-  };
-
-#todo: wayland, xmms,   libusb isn't found
-  buildInputs =
-    [ kdelibs qimageblitz libdbusmenu_qt xorg.libxcb xorg.xcbutilimage libjpeg
-      xorg.xcbutilrenderutil xorg.xcbutilkeysyms xorg.libpthreadstubs xorg.libXdmcp
-      xorg.libxkbfile xorg.libXcomposite  xorg.libXtst
-      xorg.libXdamage
-
-      python boost boost.lib qjson lm_sensors gpsd libraw1394 pciutils udev
-      akonadi pam libusb1 libqalculate kdepimlibs  prison
-      kactivities
-    ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  preConfigure =
-   ''
-     # Fix incorrect path to kde4-config.
-     substituteInPlace startkde.cmake --replace '$bindir/kde4-config' ${kdelibs}/bin/kde4-config
-
-     # Fix the path to the keyboard configuration files.
-     substituteInPlace kcontrol/keyboard/xkb_rules.cpp \
-       --replace /usr/share/X11 ${xkeyboard_config}/etc/X11
-   '';
-
-  enableParallelBuilding = false; # frequent problems on Hydra
-
-  meta = {
-    description = "KDE workspace components such as Plasma, Kwin and System Settings";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeaccessibility/jovie.nix b/pkgs/desktops/kde-4.12/kdeaccessibility/jovie.nix
deleted file mode 100644
index d38c80c4c36..00000000000
--- a/pkgs/desktops/kde-4.12/kdeaccessibility/jovie.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, speechd }:
-
-kde {
-  buildInputs = [ kdelibs speechd ];
-
-  meta = {
-    description = "Text-to-speech synthesis daemon";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeaccessibility/kaccessible.nix b/pkgs/desktops/kde-4.12/kdeaccessibility/kaccessible.nix
deleted file mode 100644
index 98fae7c983f..00000000000
--- a/pkgs/desktops/kde-4.12/kdeaccessibility/kaccessible.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, speechd }:
-
-kde {
-  buildInputs = [ kdelibs speechd ];
-
-  meta = {
-    description = "Bridge that provides accessibility services to applications";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeaccessibility/kmag.nix b/pkgs/desktops/kde-4.12/kdeaccessibility/kmag.nix
deleted file mode 100644
index 606c61cddb6..00000000000
--- a/pkgs/desktops/kde-4.12/kdeaccessibility/kmag.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-#todo: package qaccessibilityclient
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Screen magnifier for KDE";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeaccessibility/kmousetool.nix b/pkgs/desktops/kde-4.12/kdeaccessibility/kmousetool.nix
deleted file mode 100644
index 8e0caa76ed9..00000000000
--- a/pkgs/desktops/kde-4.12/kdeaccessibility/kmousetool.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, libXtst, libXt }:
-
-kde {
-  buildInputs = [ kdelibs libXtst libXt ];
-
-  meta = {
-    description = "A program that clicks the mouse for you";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeaccessibility/kmouth.nix b/pkgs/desktops/kde-4.12/kdeaccessibility/kmouth.nix
deleted file mode 100644
index 4159501967c..00000000000
--- a/pkgs/desktops/kde-4.12/kdeaccessibility/kmouth.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "A type-and-say front end for speech synthesizers";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeadmin/kcron.nix b/pkgs/desktops/kde-4.12/kdeadmin/kcron.nix
deleted file mode 100644
index f585461af38..00000000000
--- a/pkgs/desktops/kde-4.12/kdeadmin/kcron.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Configure and schedule tasks";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeadmin/ksystemlog.nix b/pkgs/desktops/kde-4.12/kdeadmin/ksystemlog.nix
deleted file mode 100644
index 88757a6b91c..00000000000
--- a/pkgs/desktops/kde-4.12/kdeadmin/ksystemlog.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "System log viewer tool";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeadmin/kuser.nix b/pkgs/desktops/kde-4.12/kdeadmin/kuser.nix
deleted file mode 100644
index 6118cf558bb..00000000000
--- a/pkgs/desktops/kde-4.12/kdeadmin/kuser.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, kdepimlibs }:
-
-kde {
-  buildInputs = [ kdelibs kdepimlibs ];
-
-  meta = {
-    description = "User management tool";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeartwork/ColorSchemes.nix b/pkgs/desktops/kde-4.12/kdeartwork/ColorSchemes.nix
deleted file mode 100644
index acccf66976f..00000000000
--- a/pkgs/desktops/kde-4.12/kdeartwork/ColorSchemes.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  name = "kde-color-schemes";
-
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Additional KDE color schemes";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeartwork/FindXscreensaver.cmake b/pkgs/desktops/kde-4.12/kdeartwork/FindXscreensaver.cmake
deleted file mode 100644
index 499ed75268e..00000000000
--- a/pkgs/desktops/kde-4.12/kdeartwork/FindXscreensaver.cmake
+++ /dev/null
@@ -1,73 +0,0 @@
-#Macro to find xscreensaver directory
-
-# Copyright (c) 2006, Laurent Montel, <montel@kde.org>
-#
-# Redistribution and use is allowed according to the terms of the BSD license.
-# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-
-if (NOT XSCREENSAVER_FOUND)
-  FIND_PATH(XSCREENSAVER_DIR deco
-    HINTS
-      ${KDE4_INCLUDE_DIR}
-    PATHS
-      /usr
-      /usr/local
-      /opt/local
-      /usr/X11R6
-      /opt/kde
-      /opt/kde3
-      /usr/kde
-      /usr/local/kde
-      /usr/local/xscreensaver
-      /usr/openwin/lib/xscreensaver
-      /etc
-    PATH_SUFFIXES
-      lib${LIB_SUFFIX}/xscreensaver
-      lib${LIB_SUFFIX}/misc/xscreensaver
-      lib/xscreensaver
-      lib64/xscreensaver
-      lib/misc/xscreensaver
-      libexec/xscreensaver
-      bin/xscreensaver-hacks
-      hacks)
-  message(STATUS "XSCREENSAVER_DIR <${XSCREENSAVER_DIR}>")
-
-  FIND_PATH(XSCREENSAVER_CONFIG_DIR deco.xml
-    PATHS
-    ${KDE4_INCLUDE_DIR}
-    /usr/
-    /usr/local/
-    /opt/local/
-    /usr/X11R6/
-    /opt/kde/
-    /opt/kde3/
-    /usr/kde/
-    /usr/local/kde/
-    /usr/openwin/lib/xscreensaver/
-    /etc/
-    PATH_SUFFIXES xscreensaver xscreensaver/config share/xscreensaver/config
-  )
-  MESSAGE(STATUS "XSCREENSAVER_CONFIG_DIR :<${XSCREENSAVER_CONFIG_DIR}>")
-
-endif(NOT XSCREENSAVER_FOUND)
-
-#MESSAGE(STATUS "XSCREENSAVER_CONFIG_DIR :<${XSCREENSAVER_CONFIG_DIR}>")
-#MESSAGE(STATUS "XSCREENSAVER_DIR :<${XSCREENSAVER_DIR}>")
-
-# Need to fix hack
-if(XSCREENSAVER_DIR AND XSCREENSAVER_CONFIG_DIR)
-    set(XSCREENSAVER_FOUND TRUE)
-endif(XSCREENSAVER_DIR AND XSCREENSAVER_CONFIG_DIR)
-
-if (XSCREENSAVER_FOUND)
-  if (NOT Xscreensaver_FIND_QUIETLY)
-    message(STATUS "Found XSCREENSAVER_CONFIG_DIR <${XSCREENSAVER_CONFIG_DIR}>")
-  endif (NOT Xscreensaver_FIND_QUIETLY)
-else (XSCREENSAVER_FOUND)
-  if (Xscreensaver_FIND_REQUIRED)
-    message(FATAL_ERROR "XScreenSaver not found")
-  endif (Xscreensaver_FIND_REQUIRED)
-endif (XSCREENSAVER_FOUND)
-
-
-MARK_AS_ADVANCED(XSCREENSAVER_DIR XSCREENSAVER_CONFIG_DIR)
diff --git a/pkgs/desktops/kde-4.12/kdeartwork/HighResolutionWallpapers.nix b/pkgs/desktops/kde-4.12/kdeartwork/HighResolutionWallpapers.nix
deleted file mode 100644
index edffca1562e..00000000000
--- a/pkgs/desktops/kde-4.12/kdeartwork/HighResolutionWallpapers.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kde, kdelibs }:
-
-kde rec {
-  name = "kde-wallpapers-high-resolution";
-
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE wallpapers in high resolution";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeartwork/IconThemes.nix b/pkgs/desktops/kde-4.12/kdeartwork/IconThemes.nix
deleted file mode 100644
index 43071e8bd14..00000000000
--- a/pkgs/desktops/kde-4.12/kdeartwork/IconThemes.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  name = "kdeartwork-icon-themes";
-
-  # Sources contain primary and kdeclassic as well but they're not installed
-
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE nuvola and mono icon themes";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeartwork/WeatherWallpapers.nix b/pkgs/desktops/kde-4.12/kdeartwork/WeatherWallpapers.nix
deleted file mode 100644
index 947e5e17ab0..00000000000
--- a/pkgs/desktops/kde-4.12/kdeartwork/WeatherWallpapers.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kde, kdelibs }:
-
-kde rec {
-  name = "kde-weather-wallpapers";
-
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Additional KDE wallpapers (weather)";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeartwork/desktopthemes.nix b/pkgs/desktops/kde-4.12/kdeartwork/desktopthemes.nix
deleted file mode 100644
index 93dd361af73..00000000000
--- a/pkgs/desktops/kde-4.12/kdeartwork/desktopthemes.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  name = "kde-desktop-themes";
-
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Additional KDE desktop themes";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeartwork/emoticons.nix b/pkgs/desktops/kde-4.12/kdeartwork/emoticons.nix
deleted file mode 100644
index 5ef9f78a719..00000000000
--- a/pkgs/desktops/kde-4.12/kdeartwork/emoticons.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  name = "kde-emotion-icons";
-
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Additional KDE emotion icons (smiles)";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeartwork/kscreensaver.nix b/pkgs/desktops/kde-4.12/kdeartwork/kscreensaver.nix
deleted file mode 100644
index 84cb008056e..00000000000
--- a/pkgs/desktops/kde-4.12/kdeartwork/kscreensaver.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ kde, kdelibs, xscreensaver, kde_workspace, eigen, libkexiv2, libXt, pkgconfig }:
-
-kde {
-  buildInputs = [ kdelibs xscreensaver kde_workspace eigen libkexiv2 libXt ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  prePatch = "cp -v ${./FindXscreensaver.cmake} cmake/modules/FindXscreensaver.cmake";
-
-  cmakeFlags = [ "-DBUILD_asciiquarium:BOOL=ON" ];
-
-  meta = {
-    description = "KDE screensavers";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeartwork/kwin-styles.nix b/pkgs/desktops/kde-4.12/kdeartwork/kwin-styles.nix
deleted file mode 100644
index b5d769b216d..00000000000
--- a/pkgs/desktops/kde-4.12/kdeartwork/kwin-styles.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, kde_workspace }:
-
-kde {
-  buildInputs = [ kdelibs kde_workspace ];
-
-  meta = {
-    description = "Styles for KWin";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeartwork/styles.nix b/pkgs/desktops/kde-4.12/kdeartwork/styles.nix
deleted file mode 100644
index 6a1306c3710..00000000000
--- a/pkgs/desktops/kde-4.12/kdeartwork/styles.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kde, kdelibs }:
-
-kde rec {
-  name = "kde-style-phase";
-
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Phase, a widget style for KDE";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeartwork/wallpapers.nix b/pkgs/desktops/kde-4.12/kdeartwork/wallpapers.nix
deleted file mode 100644
index 7c9846fbf9e..00000000000
--- a/pkgs/desktops/kde-4.12/kdeartwork/wallpapers.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kde, kdelibs }:
-
-kde rec {
-  name = "kdeartwork-wallpapers";
-
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Additional KDE wallpapers";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdebindings/perlqt.nix b/pkgs/desktops/kde-4.12/kdebindings/perlqt.nix
deleted file mode 100644
index 48eed141ce6..00000000000
--- a/pkgs/desktops/kde-4.12/kdebindings/perlqt.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kde, cmake, smokeqt, perl }:
-
-kde {
-
-  # TODO: qscintilla2, qwt5
-
-  buildInputs = [ smokeqt perl ];
-
-  nativeBuildInputs = [ cmake ];
-
-  meta = {
-    description = "Perl bindings for Qt library";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdebindings/pykde4.nix b/pkgs/desktops/kde-4.12/kdebindings/pykde4.nix
deleted file mode 100644
index b298cdbc816..00000000000
--- a/pkgs/desktops/kde-4.12/kdebindings/pykde4.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ kde, kdelibs, python, sip, pyqt4, kdepimlibs, shared_desktop_ontologies,
-  polkit_qt_1, boost, lndir, pkgconfig }:
-
-let pydir = "lib/python${python.majorVersion}"; in
-
-kde {
-
-  # todo: polkit isn't found by the build system
-
-  buildInputs = [
-    python kdepimlibs shared_desktop_ontologies
-    boost boost.lib polkit_qt_1
-  ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  propagatedBuildInputs = [ pyqt4 sip ];
-
-  preConfigure =
-    ''
-      # Symlink PyQt into PyKDE.  This is necessary because PyQt looks
-      # in its PyQt4/uic/widget-plugins directory for plugins, and KDE
-      # needs to install a plugin.
-      mkdir -pv $out/${pydir}
-      ${lndir}/bin/lndir ${pyqt4}/${pydir} $out/${pydir}
-      cmakeFlagsArray=( "-DSIP_DEFAULT_SIP_DIR=$prefix/share/sip" )
-    '';
-
-  meta = {
-    description = "Python bindings for KDE";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdebindings/qtruby-install-prefix.patch b/pkgs/desktops/kde-4.12/kdebindings/qtruby-install-prefix.patch
deleted file mode 100644
index bd95a0d8bd3..00000000000
--- a/pkgs/desktops/kde-4.12/kdebindings/qtruby-install-prefix.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 33078b4..30aec0e 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -31,8 +31,8 @@ if (NOT COMPILE_RUBY)
-     return()
- endif (NOT COMPILE_RUBY)
- 
--SET(CUSTOM_RUBY_SITE_ARCH_DIR ${RUBY_SITEARCH_DIR} CACHE DIR "custom installation directory for ruby binary extension" )
--SET(CUSTOM_RUBY_SITE_LIB_DIR ${RUBY_SITELIB_DIR} CACHE DIR "custom installation directory for ruby extension" )
-+string(REPLACE "${RUBY_ROOT_DIR}" "${CMAKE_INSTALL_PREFIX}" CUSTOM_RUBY_SITE_ARCH_DIR ${RUBY_SITEARCH_DIR})
-+string(REPLACE "${RUBY_ROOT_DIR}" "${CMAKE_INSTALL_PREFIX}" CUSTOM_RUBY_SITE_LIB_DIR ${RUBY_SITELIB_DIR})
- 
- # compute an overall version number which can be compared at once
- MATH(EXPR RUBY_VERSION_NUMBER "${RUBY_VERSION_MAJOR}*10000 + ${RUBY_VERSION_MINOR}*100 + ${RUBY_VERSION_PATCH}")
diff --git a/pkgs/desktops/kde-4.12/kdebindings/qtruby.nix b/pkgs/desktops/kde-4.12/kdebindings/qtruby.nix
deleted file mode 100644
index 03e9dc9a007..00000000000
--- a/pkgs/desktops/kde-4.12/kdebindings/qtruby.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ kde, cmake, smokeqt, ruby }:
-
-kde {
-
- # TODO: scintilla2, qwt5
-
-  buildInputs = [ smokeqt ruby ];
-
-  nativeBuildInputs = [ cmake ];
-
-  # The patch is not ready for upstream submmission.
-  # I should add an option() instead.
-  patches = [ ./qtruby-install-prefix.patch ];
-
-  cmakeFlags="-DRUBY_ROOT_DIR=${ruby}";
-
-  meta = {
-    description = "Ruby bindings for Qt library";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdebindings/smokegen-CMakeLists.txt-nix.patch b/pkgs/desktops/kde-4.12/kdebindings/smokegen-CMakeLists.txt-nix.patch
deleted file mode 100644
index f0811d335a7..00000000000
--- a/pkgs/desktops/kde-4.12/kdebindings/smokegen-CMakeLists.txt-nix.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- smokegen-4.10.5.orig/CMakeLists.txt 2013-06-28 17:14:50.000000000 +0000
-+++ smokegen-4.10.5/CMakeLists.txt 2013-07-31 19:15:17.000000000 +0000
-@@ -36,6 +36,10 @@
- set (CMAKE_SKIP_BUILD_RPATH FALSE)
- set (CMAKE_SKIP_RPATH FALSE)
-
-+# add the automatically determined parts of the RPATH
-+# which point to directories outside the build tree to the install RPATH
-+SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
-+
- configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/config.h.in config.h @ONLY )
-
- add_executable(smokegen ${generator_SRC})
\ No newline at end of file
diff --git a/pkgs/desktops/kde-4.12/kdebindings/smokegen-nix.patch b/pkgs/desktops/kde-4.12/kdebindings/smokegen-nix.patch
deleted file mode 100644
index 53257e836e0..00000000000
--- a/pkgs/desktops/kde-4.12/kdebindings/smokegen-nix.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -urN smokegen-4.10.5.orig/cmake/SmokeConfig.cmake.in smokegen-4.10.5/cmake/SmokeConfig.cmake.in
---- smokegen-4.10.5.orig/cmake/SmokeConfig.cmake.in	2013-06-28 17:14:50.000000000 +0000
-+++ smokegen-4.10.5/cmake/SmokeConfig.cmake.in	2013-07-30 21:26:33.000000000 +0000
-@@ -80,8 +80,7 @@
- set(SMOKE_API_BIN "@SMOKE_API_BIN@")
- 
- find_library(SMOKE_BASE_LIBRARY smokebase 
--              PATHS "@SMOKE_LIBRARY_PREFIX@"
--              NO_DEFAULT_PATH)
-+              PATHS "@SMOKE_LIBRARY_PREFIX@")
- 
- if (NOT SMOKE_BASE_LIBRARY)
-     if (Smoke_FIND_REQUIRED)
diff --git a/pkgs/desktops/kde-4.12/kdebindings/smokegen.nix b/pkgs/desktops/kde-4.12/kdebindings/smokegen.nix
deleted file mode 100644
index 5708d0f96eb..00000000000
--- a/pkgs/desktops/kde-4.12/kdebindings/smokegen.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ stdenv, kde, qt4, cmake }:
-
-kde {
-  buildInputs = [ qt4 ];
-  nativeBuildInputs = [ cmake ];
-
-  patches = [ ./smokegen-nix.patch ./smokegen-CMakeLists.txt-nix.patch ];
-
-  meta = {
-    description = "C++ parser used to generate language bindings for Qt/KDE";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdebindings/smokekde.nix b/pkgs/desktops/kde-4.12/kdebindings/smokekde.nix
deleted file mode 100644
index 4474c1d9731..00000000000
--- a/pkgs/desktops/kde-4.12/kdebindings/smokekde.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ kde, cmake, smokeqt, kdelibs, akonadi, kdepimlibs, okular
-, shared_desktop_ontologies, attica, pkgconfig }:
-
-kde {
-
-  # TODO: attica, akonadi and kdepimlibs are disabled due to smokegen crash
-  # okular is disabled because the code generated is broken
-  buildInputs = [
-    smokeqt kdelibs shared_desktop_ontologies
-  ];
-
-  nativeBuildInputs = [ cmake pkgconfig ];
-
-  LD_LIBRARY_PATH = "${smokeqt}/lib/";
-
-  meta = {
-    description = "SMOKE bindings for kdelibs";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdebindings/smokeqt.nix b/pkgs/desktops/kde-4.12/kdebindings/smokeqt.nix
deleted file mode 100644
index 494bc85e646..00000000000
--- a/pkgs/desktops/kde-4.12/kdebindings/smokeqt.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ stdenv, kde, qt4, cmake, phonon, qimageblitz, smokegen }:
-
-kde {
-
-# TODO: Qwt5, QScintilla2
-
-  propagatedBuildInputs = [ qt4 phonon qimageblitz ];
-  nativeBuildInputs = [ cmake ];
-  propagatedNativeBuildInputs = [ smokegen ];
-
-  meta = {
-    description = "C++ parser used to generate language bindings for Qt/KDE";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/analitza.nix b/pkgs/desktops/kde-4.12/kdeedu/analitza.nix
deleted file mode 100644
index 74c3a1ebb20..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/analitza.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kde, kdelibs, readline }:
-kde {
-  buildInputs = [ kdelibs readline ];
-
-  meta = {
-    description = "Library part of KAlgebra";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/blinken.nix b/pkgs/desktops/kde-4.12/kdeedu/blinken.nix
deleted file mode 100644
index cdf9728833c..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/blinken.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kde, kdelibs }:
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Memory Enhancement Game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/cantor.nix b/pkgs/desktops/kde-4.12/kdeedu/cantor.nix
deleted file mode 100644
index a8cd2e44957..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/cantor.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ kde, kdelibs, libspectre, analitza, R, pkgconfig, libqalculate, python }:
-kde {
-
-# TODO: R is not found
-
-  buildInputs = [ kdelibs libspectre analitza R libqalculate python ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  meta = {
-    description = "KDE Frontend to Mathematical Software";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/kalgebra.nix b/pkgs/desktops/kde-4.12/kdeedu/kalgebra.nix
deleted file mode 100644
index 3675c3a225f..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/kalgebra.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kde, kdelibs, libkdeedu, analitza }:
-kde {
-  buildInputs = [ kdelibs libkdeedu analitza ];
-
-  meta = {
-    description = "2D and 3D Graph Calculator";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/kalzium.nix b/pkgs/desktops/kde-4.12/kdeedu/kalzium.nix
deleted file mode 100644
index 09de79ce1c0..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/kalzium.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ kde, kdelibs, facile, ocaml, eigen, openbabel, avogadro, pkgconfig }:
-kde {
-
-# TODO: chemical mime data
-
-  buildInputs = [ kdelibs facile ocaml eigen openbabel avogadro ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  meta = {
-    description = "Periodic Table of Elements";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/kanagram.nix b/pkgs/desktops/kde-4.12/kdeedu/kanagram.nix
deleted file mode 100644
index 8759c96d78c..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/kanagram.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kde, kdelibs, libkdeedu }:
-kde {
-  buildInputs = [ kdelibs libkdeedu ];
-
-  meta = {
-    description = "Letter Order Game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/kbruch.nix b/pkgs/desktops/kde-4.12/kdeedu/kbruch.nix
deleted file mode 100644
index dc50f1e85a3..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/kbruch.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kde, kdelibs }:
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Practice Fractions";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/kgeography.nix b/pkgs/desktops/kde-4.12/kdeedu/kgeography.nix
deleted file mode 100644
index bd8d27c8d6e..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/kgeography.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kde, kdelibs }:
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Geography Trainer";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/khangman.nix b/pkgs/desktops/kde-4.12/kdeedu/khangman.nix
deleted file mode 100644
index 997b50e906a..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/khangman.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kde, kdelibs, libkdeedu }:
-kde {
-  buildInputs = [ kdelibs libkdeedu ];
-
-  meta = {
-    description = "KDE hangman game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/kig.nix b/pkgs/desktops/kde-4.12/kdeedu/kig.nix
deleted file mode 100644
index fb442e2ef62..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/kig.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, boost, python}:
-kde {
-  buildInputs = [ kdelibs boost boost.lib python ];
-
-  cmakeFlags = "-DKIG_ENABLE_PYTHON_SCRIPTING=1";
-  meta = {
-    description = "KDE Interactive Geometry";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/kiten.nix b/pkgs/desktops/kde-4.12/kdeedu/kiten.nix
deleted file mode 100644
index 939b7a9f77a..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/kiten.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Japanese Reference/Study Tool";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/klettres.nix b/pkgs/desktops/kde-4.12/kdeedu/klettres.nix
deleted file mode 100644
index 7a0fa83078e..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/klettres.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "A KDE alphabet tutorial";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/kmplot.nix b/pkgs/desktops/kde-4.12/kdeedu/kmplot.nix
deleted file mode 100644
index fc7b0578c27..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/kmplot.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "A KDE mathematical function plotter";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/kstars.nix b/pkgs/desktops/kde-4.12/kdeedu/kstars.nix
deleted file mode 100644
index 0832dc2121e..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/kstars.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kde, kdelibs, eigen, xplanet, indilib, pkgconfig }:
-
-kde {
-
-# TODO: wcslib, astrometry
-
-  buildInputs = [ kdelibs eigen xplanet indilib ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  meta = {
-    description = "A KDE graphical desktop planetarium";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/ktouch.nix b/pkgs/desktops/kde-4.12/kdeedu/ktouch.nix
deleted file mode 100644
index 9e606adde33..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/ktouch.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, libxkbfile }:
-
-kde {
-  buildInputs = [ kdelibs libxkbfile ];
-
-  meta = {
-    description = "Touch Typing Tutor";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/kturtle.nix b/pkgs/desktops/kde-4.12/kdeedu/kturtle.nix
deleted file mode 100644
index 1e1922b1410..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/kturtle.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Educational Programming Environment";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/kwordquiz.nix b/pkgs/desktops/kde-4.12/kdeedu/kwordquiz.nix
deleted file mode 100644
index 1b33ba2e469..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/kwordquiz.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, libkdeedu }:
-
-kde {
-  buildInputs = [ kdelibs libkdeedu ];
-
-  meta = {
-    description = "Flash Card Trainer";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/libkdeedu.nix b/pkgs/desktops/kde-4.12/kdeedu/libkdeedu.nix
deleted file mode 100644
index def6c85fefe..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/libkdeedu.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kde, kdelibs }:
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Libraries used by KDE Education applications";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/marble.nix b/pkgs/desktops/kde-4.12/kdeedu/marble.nix
deleted file mode 100644
index 2dc07d14a0d..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/marble.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ kde, kdelibs, gpsd }:
-
-kde {
-
-# TODO: package QextSerialPort, libshp(shapelib), QtMobility, QtLocation, libwlocate, quazip
-
-  buildInputs = [ kdelibs gpsd ];
-
-  meta = {
-    description = "Marble Virtual Globe";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/pairs.nix b/pkgs/desktops/kde-4.12/kdeedu/pairs.nix
deleted file mode 100644
index 36c4aba9604..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/pairs.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "A memory and pairs game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/parley.nix b/pkgs/desktops/kde-4.12/kdeedu/parley.nix
deleted file mode 100644
index f9f86dde150..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/parley.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, libkdeedu, attica }:
-
-kde {
-  buildInputs = [ kdelibs libkdeedu attica ];
-
-  meta = {
-    description = "Vocabulary Trainer";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/rocs.nix b/pkgs/desktops/kde-4.12/kdeedu/rocs.nix
deleted file mode 100644
index 135598ded90..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/rocs.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, kdelibs, boost, grantlee }:
-let
-  boostpkg = boost.override { enableExceptions = true; };
-in
-kde {
-  buildInputs = [ kdelibs boostpkg boostpkg.lib grantlee ];
-
-  NIX_CFLAGS_COMPILE = "-fexceptions";
-
-  meta = {
-    description = "A KDE graph theory viewer";
-    kde = {
-      name = "rocs";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeedu/step.nix b/pkgs/desktops/kde-4.12/kdeedu/step.nix
deleted file mode 100644
index f36ccef9b7c..00000000000
--- a/pkgs/desktops/kde-4.12/kdeedu/step.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ kde, kdelibs, gsl, libqalculate, eigen, pkgconfig }:
-
-kde {
-
-  buildInputs = [ kdelibs gsl libqalculate eigen ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  meta = {
-    description = "A KDE interactive physical simulator";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/bomber.nix b/pkgs/desktops/kde-4.12/kdegames/bomber.nix
deleted file mode 100644
index 026227910f2..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/bomber.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a single player arcade game. The player is invading various cities in a plane that is decreasing in height";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/bovo.nix b/pkgs/desktops/kde-4.12/kdegames/bovo.nix
deleted file mode 100644
index b0e7d99c589..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/bovo.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a Gomoku (from Japanese 五目並べ - lit. \"five points\") like game for two players, where the opponents alternate in placing their respective pictogram on the game board";
-  };
-
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/granatier.nix b/pkgs/desktops/kde-4.12/kdegames/granatier.nix
deleted file mode 100644
index 9f1ab005309..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/granatier.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a clone of the classic Bomberman game, inspired by the work of the Clanbomber clone";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kajongg.nix b/pkgs/desktops/kde-4.12/kdegames/kajongg.nix
deleted file mode 100644
index 9a6f5e83695..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kajongg.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ kde, kdelibs, libkdegames, pythonPackages, sqlite,  pykde4 }:
-kde rec {
-
-  buildInputs = [ kdelibs libkdegames pythonPackages.python pythonPackages.wrapPython sqlite ] ++ pythonPath;
-
-  pythonPath = [ pythonPackages.twisted pykde4 ];
-
-  postInstall = "wrapPythonPrograms";
-
-  meta = {
-    description = "an ancient Chinese board game for 4 players";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kapman.nix b/pkgs/desktops/kde-4.12/kdegames/kapman.nix
deleted file mode 100644
index f10e099da3c..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kapman.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a clone of the well known game Pac-Man";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/katomic.nix b/pkgs/desktops/kde-4.12/kdegames/katomic.nix
deleted file mode 100644
index a9936c04f0e..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/katomic.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a fun and educational puzzle game built around molecular geometry";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kblackbox.nix b/pkgs/desktops/kde-4.12/kdegames/kblackbox.nix
deleted file mode 100644
index 27eeff2f65b..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kblackbox.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a game of hide and seek played on an grid of boxes, where the player shoots rays into the grid to deduce the positions of hidden objects";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kblocks.nix b/pkgs/desktops/kde-4.12/kdegames/kblocks.nix
deleted file mode 100644
index 98cf068de09..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kblocks.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a classic single player falling blocks puzzle game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kbounce.nix b/pkgs/desktops/kde-4.12/kdegames/kbounce.nix
deleted file mode 100644
index 77fa0db6352..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kbounce.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a single player arcade game with the elements of puzzle";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kbreakout.nix b/pkgs/desktops/kde-4.12/kdegames/kbreakout.nix
deleted file mode 100644
index 3a484d919bb..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kbreakout.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a Breakout-like game. Its object is to destroy as many bricks as possible without losing the ball";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kdiamond.nix b/pkgs/desktops/kde-4.12/kdegames/kdiamond.nix
deleted file mode 100644
index 06dfcee5ac3..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kdiamond.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a single player puzzle game. The object of the game is to build lines of three similar diamonds";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kfourinline.nix b/pkgs/desktops/kde-4.12/kdegames/kfourinline.nix
deleted file mode 100644
index 11b8838e708..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kfourinline.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a board game for two players based on the Connect-Four game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kgoldrunner.nix b/pkgs/desktops/kde-4.12/kdegames/kgoldrunner.nix
deleted file mode 100644
index 6217c47a806..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kgoldrunner.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "an action game where the hero runs through a maze, climbs stairs, dig holes and dodges enemies in order to collect all the gold nuggets and escape to the next level";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kigo.nix b/pkgs/desktops/kde-4.12/kdegames/kigo.nix
deleted file mode 100644
index 32eee67cc1e..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kigo.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "an open-source implementation of the popular Go game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/killbots.nix b/pkgs/desktops/kde-4.12/kdegames/killbots.nix
deleted file mode 100644
index d9c1472495e..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/killbots.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a simple game of evading killer robots";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kiriki.nix b/pkgs/desktops/kde-4.12/kdegames/kiriki.nix
deleted file mode 100644
index 72f7ab67501..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kiriki.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "an addictive and fun dice game, designed to be played by as many as six players";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kjumpingcube.nix b/pkgs/desktops/kde-4.12/kdegames/kjumpingcube.nix
deleted file mode 100644
index a6d22cff51c..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kjumpingcube.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a simple dice driven tactical game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/klickety.nix b/pkgs/desktops/kde-4.12/kdegames/klickety.nix
deleted file mode 100644
index b592bc40641..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/klickety.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a puzzle game where the player removes groups of colored marbles to clear the board";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/klines.nix b/pkgs/desktops/kde-4.12/kdegames/klines.nix
deleted file mode 100644
index 90952fe91c0..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/klines.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a simple but highly addictive one player game. The player has to move the colored balls around the game board, gathering them into the lines of the same color by five";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kmahjongg.nix b/pkgs/desktops/kde-4.12/kdegames/kmahjongg.nix
deleted file mode 100644
index 946b531ff12..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kmahjongg.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames, libkmahjongg }:
-kde {
-  buildInputs = [ kdelibs libkdegames libkmahjongg ];
-  meta = {
-    description = "the tiles are scrambled and staked on top of each other to resemble a certain shape. The player is then expected to remove all the tiles off the game board by locating each tile's matching pair";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kmines.nix b/pkgs/desktops/kde-4.12/kdegames/kmines.nix
deleted file mode 100644
index 538454e9598..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kmines.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a classic Minesweeper game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/knavalbattle.nix b/pkgs/desktops/kde-4.12/kdegames/knavalbattle.nix
deleted file mode 100644
index 42ffd2fcb4d..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/knavalbattle.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a Battle Ship game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/knetwalk.nix b/pkgs/desktops/kde-4.12/kdegames/knetwalk.nix
deleted file mode 100644
index a16e578ce84..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/knetwalk.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a small game where you have to build up a computer network by rotating the wires to connect the terminals to the server";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kolf.nix b/pkgs/desktops/kde-4.12/kdegames/kolf.nix
deleted file mode 100644
index 78815ee5799..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kolf.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a miniature golf game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kollision.nix b/pkgs/desktops/kde-4.12/kdegames/kollision.nix
deleted file mode 100644
index 3147c7305ea..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kollision.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a simple ball dodging game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/konquest.nix b/pkgs/desktops/kde-4.12/kdegames/konquest.nix
deleted file mode 100644
index 53ddd64928c..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/konquest.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "the KDE version of Gnu-Lactic Konquest";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kpat.nix b/pkgs/desktops/kde-4.12/kdegames/kpat.nix
deleted file mode 100644
index f8d9bad36dc..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kpat.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a relaxing card sorting game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kreversi.nix b/pkgs/desktops/kde-4.12/kdegames/kreversi.nix
deleted file mode 100644
index 2aed981428e..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kreversi.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a simple one player strategy game played against the computer. If a player's piece is captured by an opposing player, that piece is turned over to reveal the color of that player";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kshisen.nix b/pkgs/desktops/kde-4.12/kdegames/kshisen.nix
deleted file mode 100644
index 9c888034038..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kshisen.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames, libkmahjongg }:
-kde {
-  buildInputs = [ kdelibs libkdegames libkmahjongg ];
-  meta = {
-    description = "a solitaire-like game played using the standard set of Mahjong tiles";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/ksirk.nix b/pkgs/desktops/kde-4.12/kdegames/ksirk.nix
deleted file mode 100644
index 767eb67971a..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/ksirk.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames, qca2 }:
-kde {
-  buildInputs = [ kdelibs libkdegames qca2 ];
-  meta = {
-    description = "a computerized version of the well known strategic board game Risk";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/ksnakeduel.nix b/pkgs/desktops/kde-4.12/kdegames/ksnakeduel.nix
deleted file mode 100644
index ccf1fb551e9..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/ksnakeduel.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a simple Tron-Clone";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kspaceduel.nix b/pkgs/desktops/kde-4.12/kdegames/kspaceduel.nix
deleted file mode 100644
index 5285f7916ca..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kspaceduel.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "each of two possible players control a satellite spaceship orbiting the sun. As the game progresses players have to eliminate the opponent's spacecraft with bullets or mines";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/ksquares.nix b/pkgs/desktops/kde-4.12/kdegames/ksquares.nix
deleted file mode 100644
index a17be2da632..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/ksquares.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a game modeled after the well known pen and paper based game of Dots and Boxes";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/ksudoku.nix b/pkgs/desktops/kde-4.12/kdegames/ksudoku.nix
deleted file mode 100644
index ea4e13a5e4f..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/ksudoku.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a logic-based symbol placement puzzle";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/ktuberling.nix b/pkgs/desktops/kde-4.12/kdegames/ktuberling.nix
deleted file mode 100644
index 1a6ba9d653c..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/ktuberling.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a simple constructor game suitable for children and adults alike";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/kubrick.nix b/pkgs/desktops/kde-4.12/kdegames/kubrick.nix
deleted file mode 100644
index 9bdc6879db4..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/kubrick.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a game based on the Rubik's Cube™ puzzle";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/libkdegames.nix b/pkgs/desktops/kde-4.12/kdegames/libkdegames.nix
deleted file mode 100644
index 3819dcdc9ae..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/libkdegames.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, openal, libsndfile }:
-kde {
-  buildInputs = [ kdelibs openal libsndfile ];
-  meta = {
-    description = "KDE games library";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/libkmahjongg.nix b/pkgs/desktops/kde-4.12/kdegames/libkmahjongg.nix
deleted file mode 100644
index 383b347dc33..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/libkmahjongg.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a library for KMahjongg game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/lskat.nix b/pkgs/desktops/kde-4.12/kdegames/lskat.nix
deleted file mode 100644
index 2a5050cd667..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/lskat.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a fun and engaging card game for two players, where the second player is either live opponent, or a built in artificial intelligence";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/palapeli.nix b/pkgs/desktops/kde-4.12/kdegames/palapeli.nix
deleted file mode 100644
index 010dbd5d623..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/palapeli.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-
-# TODO: package qvoronoi
-
-  buildInputs = [ kdelibs libkdegames ];
-
-  meta = {
-    description = "a single-player jigsaw puzzle game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegames/picmi.nix b/pkgs/desktops/kde-4.12/kdegames/picmi.nix
deleted file mode 100644
index 165d7422f95..00000000000
--- a/pkgs/desktops/kde-4.12/kdegames/picmi.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkdegames }:
-kde {
-  buildInputs = [ kdelibs libkdegames ];
-  meta = {
-    description = "a single player logic-based puzzle game";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/gwenview.nix b/pkgs/desktops/kde-4.12/kdegraphics/gwenview.nix
deleted file mode 100644
index 3ce9b3dcc78..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/gwenview.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ stdenv, kde, kdelibs, exiv2, kde_baseapps, libkipi, nepomuk_core
-, libjpeg, pkgconfig, kactivities, lcms2 }:
-
-kde {
-
-  buildInputs =
-    [ kdelibs exiv2 nepomuk_core kactivities kde_baseapps libkipi libjpeg lcms2 ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  meta = {
-    description = "Gwenview, the KDE image viewer";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/kamera.nix b/pkgs/desktops/kde-4.12/kdegraphics/kamera.nix
deleted file mode 100644
index d9aa11c54af..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/kamera.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs, libgphoto2 }:
-
-kde {
-  buildInputs = [ kdelibs libgphoto2 ];
-
-  meta = {
-    description = "KDE camera interface library";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/kcolorchooser.nix b/pkgs/desktops/kde-4.12/kdegraphics/kcolorchooser.nix
deleted file mode 100644
index e06c1b5d307..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/kcolorchooser.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "A small utility to select a color";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/kdegraphics-mobipocket.nix b/pkgs/desktops/kde-4.12/kdegraphics/kdegraphics-mobipocket.nix
deleted file mode 100644
index e834762feb5..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/kdegraphics-mobipocket.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs, okular }:
-
-kde {
-  buildInputs = [ kdelibs okular ];
-
-  meta = {
-    description = "A collection of plugins to handle mobipocket files";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/kdegraphics-strigi-analyzer.nix b/pkgs/desktops/kde-4.12/kdegraphics/kdegraphics-strigi-analyzer.nix
deleted file mode 100644
index d9d35808ac5..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/kdegraphics-strigi-analyzer.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs, libtiff }:
-
-kde {
-  buildInputs = [ kdelibs libtiff ];
-
-  meta = {
-    description = "Strigi analyzers for various graphics file formats";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/kdegraphics-thumbnailers.nix b/pkgs/desktops/kde-4.12/kdegraphics/kdegraphics-thumbnailers.nix
deleted file mode 100644
index d6207689512..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/kdegraphics-thumbnailers.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ stdenv, kde, kdelibs, libkexiv2, libkdcraw, pkgconfig }:
-
-kde {
-
-  buildInputs = [ kdelibs libkexiv2 libkdcraw ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  meta = {
-    description = "Thumbnailers for various graphics file formats";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/kgamma.nix b/pkgs/desktops/kde-4.12/kdegraphics/kgamma.nix
deleted file mode 100644
index 016312c199e..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/kgamma.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs, libXxf86vm }:
-
-kde {
-  buildInputs = [ kdelibs libXxf86vm ];
-
-  meta = {
-    description = "KDE monitor calibration tool";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/kolourpaint.nix b/pkgs/desktops/kde-4.12/kdegraphics/kolourpaint.nix
deleted file mode 100644
index ecf34e5ae9e..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/kolourpaint.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs, qimageblitz }:
-
-kde {
-  buildInputs = [ kdelibs qimageblitz ];
-
-  meta = {
-    description = "KDE paint program";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/kruler.nix b/pkgs/desktops/kde-4.12/kdegraphics/kruler.nix
deleted file mode 100644
index 209331d9e83..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/kruler.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE screen ruler";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/ksaneplugin.nix b/pkgs/desktops/kde-4.12/kdegraphics/ksaneplugin.nix
deleted file mode 100644
index f541c4bdb4d..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/ksaneplugin.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs, libksane }:
-
-kde {
-  buildInputs = [ kdelibs libksane ];
-
-  meta = {
-    description = "A KScan plugin that implements the scanning through libksane";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/ksnapshot.nix b/pkgs/desktops/kde-4.12/kdegraphics/ksnapshot.nix
deleted file mode 100644
index a9897d270bb..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/ksnapshot.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs, libkipi }:
-
-kde {
-  buildInputs = [ kdelibs libkipi ];
-
-  meta = {
-    description = "KDE screenshot utility";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/libkdcraw.nix b/pkgs/desktops/kde-4.12/kdegraphics/libkdcraw.nix
deleted file mode 100644
index 1d5c6e2fcb4..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/libkdcraw.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ stdenv, kde, kdelibs, pkgconfig, libraw, lcms2 }:
-
-kde {
-
-  buildInputs = [ kdelibs libraw lcms2 ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  meta = {
-    description = "Library for decoding RAW images";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/libkexiv2.nix b/pkgs/desktops/kde-4.12/kdegraphics/libkexiv2.nix
deleted file mode 100644
index 46ec45fad01..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/libkexiv2.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs, exiv2 }:
-
-kde {
-  buildInputs = [ kdelibs exiv2 ];
-
-  meta = {
-    description = "Exiv2 support library";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/libkipi.nix b/pkgs/desktops/kde-4.12/kdegraphics/libkipi.nix
deleted file mode 100644
index 65e6c52bd44..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/libkipi.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Interface library to kipi-plugins";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/libksane.nix b/pkgs/desktops/kde-4.12/kdegraphics/libksane.nix
deleted file mode 100644
index 6c3543eef37..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/libksane.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs, saneBackends }:
-
-kde {
-  buildInputs = [ kdelibs saneBackends ];
-
-  meta = {
-    description = "An image scanning library that provides a QWidget that contains all the logic needed to interface a sacanner";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/okular.nix b/pkgs/desktops/kde-4.12/kdegraphics/okular.nix
deleted file mode 100644
index 092833388a7..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/okular.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ stdenv, chmlib, djvulibre, ebook_tools, kde, kdelibs, libspectre, popplerQt4, qca2
-, qimageblitz, libtiff, kactivities, pkgconfig, libkexiv2 }:
-
-kde {
-
-# TODO: package activeapp, qmobipocket
-
-  buildInputs = [ kdelibs chmlib djvulibre ebook_tools libspectre popplerQt4
-                  qca2 qimageblitz libtiff kactivities libkexiv2 ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  meta = {
-    description = "Okular, the KDE document viewer";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdegraphics/svgpart.nix b/pkgs/desktops/kde-4.12/kdegraphics/svgpart.nix
deleted file mode 100644
index 2fc0e373dbd..00000000000
--- a/pkgs/desktops/kde-4.12/kdegraphics/svgpart.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ stdenv, kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "SVG KPart";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdelibs/kdelibs.nix b/pkgs/desktops/kde-4.12/kdelibs/kdelibs.nix
deleted file mode 100644
index 5db693e6ea0..00000000000
--- a/pkgs/desktops/kde-4.12/kdelibs/kdelibs.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-{ kde, gcc, cmake, perl
-, qt4, bzip2, fam, shared_mime_info, giflib, jasper, strigi
-, openexr, avahi, kerberos, shared_desktop_ontologies, libXScrnSaver
-, automoc4, soprano, qca2, attica, enchant, libdbusmenu_qt, grantlee
-, docbook_xml_dtd_42, docbook_xsl, polkit_qt_1, acl, attr, libXtst
-, udev, herqq, phonon, libjpeg, xz, ilmbase, libxslt
-, pkgconfig
-}:
-
-kde {
-
-# TODO: media-player-info
-
-  buildInputs =
-    [ pkgconfig attica avahi bzip2 enchant fam giflib grantlee herqq
-      libdbusmenu_qt libXScrnSaver polkit_qt_1 qca2 acl jasper libxslt
-      shared_desktop_ontologies xz udev libjpeg kerberos openexr
-      libXtst attr
-    ];
-
-  NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR";
-
-  propagatedBuildInputs = [ qt4 soprano phonon strigi ];
-
-  propagatedNativeBuildInputs = [ automoc4 cmake perl shared_mime_info ];
-
-  # TODO: make sonnet plugins (dictionaries) really work.
-  # There are a few hardcoded paths.
-  # Split plugins from libs?
-
-  patches = [
-    ../files/polkit-install.patch
-    ../files/kdelibs-cve-2014-5033.patch  # Security patch, remove when updating to 4.14.0 or more
-  ];
-
-  cmakeFlags = [
-    "-DDOCBOOKXML_CURRENTDTD_DIR=${docbook_xml_dtd_42}/xml/dtd/docbook"
-    "-DDOCBOOKXSL_DIR=${docbook_xsl}/xml/xsl/docbook"
-    "-DHUPNP_ENABLED=ON"
-    "-DWITH_SOLID_UDISKS2=ON"
-  ];
-
-  passthru.wantsUdisks2 = true;
-
-  meta = {
-    description = "KDE libraries";
-    license = "LGPL";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdelibs/nepomuk-core.nix b/pkgs/desktops/kde-4.12/kdelibs/nepomuk-core.nix
deleted file mode 100644
index d90e1455ce9..00000000000
--- a/pkgs/desktops/kde-4.12/kdelibs/nepomuk-core.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ stdenv, kde, kdelibs, soprano, shared_desktop_ontologies, exiv2, ffmpeg, taglib, popplerQt4
-, pkgconfig, doxygen, ebook_tools
-}:
-
-kde {
-
-# TODO: qmobipocket
-
-  buildInputs = [
-    kdelibs soprano shared_desktop_ontologies taglib exiv2 ffmpeg
-    popplerQt4 ebook_tools
-  ];
-
-  nativeBuildInputs = [ pkgconfig doxygen ];
-
-  meta = {
-    description = "NEPOMUK core";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdelibs/nepomuk-widgets.nix b/pkgs/desktops/kde-4.12/kdelibs/nepomuk-widgets.nix
deleted file mode 100644
index b0fc5ad8900..00000000000
--- a/pkgs/desktops/kde-4.12/kdelibs/nepomuk-widgets.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ stdenv, kde, kdelibs, nepomuk_core }:
-
-kde {
-
-  buildInputs = [ kdelibs nepomuk_core ];
-
-  meta = {
-    description = "NEPOMUK Widgets";
-    license = stdenv.lib.licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdemultimedia/audiocd-kio.nix b/pkgs/desktops/kde-4.12/kdemultimedia/audiocd-kio.nix
deleted file mode 100644
index 4c56e7529dd..00000000000
--- a/pkgs/desktops/kde-4.12/kdemultimedia/audiocd-kio.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libkcompactdisc, cdparanoia, libkcddb, libvorbis, flac, lame }:
-kde {
-  buildInputs = [ kdelibs libkcompactdisc cdparanoia libkcddb libvorbis flac lame ];
-  meta = {
-    description = "transparent audio CD access for applications using the KDE Platform";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdemultimedia/dragon.nix b/pkgs/desktops/kde-4.12/kdemultimedia/dragon.nix
deleted file mode 100644
index 006300742ec..00000000000
--- a/pkgs/desktops/kde-4.12/kdemultimedia/dragon.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs }:
-kde {
-  buildInputs = [ kdelibs ];
-  meta = {
-    description = "a multimedia player with the focus on simplicity";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdemultimedia/ffmpegthumbs.nix b/pkgs/desktops/kde-4.12/kdemultimedia/ffmpegthumbs.nix
deleted file mode 100644
index 45f6c9abcb6..00000000000
--- a/pkgs/desktops/kde-4.12/kdemultimedia/ffmpegthumbs.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, ffmpeg }:
-kde {
-  buildInputs = [ kdelibs ffmpeg ];
-  meta = {
-    description = "a video thumbnail generator for KDE file managers like Dolphin and Konqueror";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdemultimedia/juk.nix b/pkgs/desktops/kde-4.12/kdemultimedia/juk.nix
deleted file mode 100644
index 5d7b1db224e..00000000000
--- a/pkgs/desktops/kde-4.12/kdemultimedia/juk.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ kde, kdelibs, taglib, libtunepimp }:
-kde {
-
-# TODO: opusfile
-
-  buildInputs = [ kdelibs taglib libtunepimp ];
-  meta = {
-    description = "an audio jukebox application";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdemultimedia/kmix.nix b/pkgs/desktops/kde-4.12/kdemultimedia/kmix.nix
deleted file mode 100644
index 1dd8108166f..00000000000
--- a/pkgs/desktops/kde-4.12/kdemultimedia/kmix.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libcanberra, pulseaudio }:
-kde {
-  buildInputs = [ kdelibs libcanberra pulseaudio ];
-  meta = {
-    description = "sound mixer, an application to allow you to change the volume of your sound card";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdemultimedia/kscd.nix b/pkgs/desktops/kde-4.12/kdemultimedia/kscd.nix
deleted file mode 100644
index e99ae53935b..00000000000
--- a/pkgs/desktops/kde-4.12/kdemultimedia/kscd.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs, libmusicbrainz }:
-kde {
-  buildInputs = [ kdelibs libmusicbrainz ];
-  meta = {
-    description = "KDE CD player";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdemultimedia/libkcddb.nix b/pkgs/desktops/kde-4.12/kdemultimedia/libkcddb.nix
deleted file mode 100644
index 720b01d1861..00000000000
--- a/pkgs/desktops/kde-4.12/kdemultimedia/libkcddb.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kde, kdelibs }:
-kde {
-#todo: libmusicbrainz5
-  buildInputs = [ kdelibs ];
-  meta = {
-    description = "a library used to retrieve audio CD meta data from the internet";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdemultimedia/libkcompactdisc.nix b/pkgs/desktops/kde-4.12/kdemultimedia/libkcompactdisc.nix
deleted file mode 100644
index 6ed08af89f3..00000000000
--- a/pkgs/desktops/kde-4.12/kdemultimedia/libkcompactdisc.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs }:
-kde {
-  buildInputs = [ kdelibs ];
-  meta = {
-    description = "KDE library for playing & ripping CDs";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdemultimedia/mplayerthumbs.nix b/pkgs/desktops/kde-4.12/kdemultimedia/mplayerthumbs.nix
deleted file mode 100644
index c88ebcc2a5a..00000000000
--- a/pkgs/desktops/kde-4.12/kdemultimedia/mplayerthumbs.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ kde, kdelibs }:
-kde {
-  buildInputs = [ kdelibs ];
-  meta = {
-    description = "a video thumbnail generator for KDE";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdenetwork/kdenetwork-filesharing.nix b/pkgs/desktops/kde-4.12/kdenetwork/kdenetwork-filesharing.nix
deleted file mode 100644
index 0330511a258..00000000000
--- a/pkgs/desktops/kde-4.12/kdenetwork/kdenetwork-filesharing.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE properties dialog plugin to share a directory with the local network";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdenetwork/kdenetwork-strigi-analyzers.nix b/pkgs/desktops/kde-4.12/kdenetwork/kdenetwork-strigi-analyzers.nix
deleted file mode 100644
index 9a76863c8e0..00000000000
--- a/pkgs/desktops/kde-4.12/kdenetwork/kdenetwork-strigi-analyzers.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, boost }:
-
-kde {
-  buildInputs = [ kdelibs boost boost.lib ];
-
-  meta = {
-    description = "Strigi analyzers for various network protocols";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdenetwork/kget.nix b/pkgs/desktops/kde-4.12/kdenetwork/kget.nix
deleted file mode 100644
index d7527ca6a60..00000000000
--- a/pkgs/desktops/kde-4.12/kdenetwork/kget.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ kde, kdelibs, libktorrent, kde_workspace, sqlite, boost
-, kde_baseapps, libmms, qca2, nepomuk_core, nepomuk_widgets
-, pkgconfig }:
-
-kde {
-
-# TODO: QGpgME
-
-  buildInputs =
-    [ kdelibs libktorrent nepomuk_core nepomuk_widgets sqlite qca2
-      libmms kde_baseapps kde_workspace boost boost.lib ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  KDEDIRS = libktorrent;
-
-  meta = {
-    description = "KDE download manager";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdenetwork/kopete.nix b/pkgs/desktops/kde-4.12/kdenetwork/kopete.nix
deleted file mode 100644
index e8eab764419..00000000000
--- a/pkgs/desktops/kde-4.12/kdenetwork/kopete.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ kde, kdelibs, libmsn, libotr, kdepimlibs, qimageblitz, libktorrent,
-  jasper, libidn, mediastreamer, pkgconfig, libxslt, giflib,
-  libgadu, boost, qca2, sqlite, jsoncpp,
-  ortp, srtp, libv4l }:
-
-kde {
-
-# TODO: libmeanwhile, xmms, jsoncpp(not found), kleopatra(from kdepim but doesn't install headers?),
-
-  buildInputs = [
-    kdelibs qca2 mediastreamer libgadu jsoncpp
-    kdepimlibs qimageblitz sqlite jasper libotr libmsn giflib
-    libidn libxslt boost boost.lib
-    ortp srtp libv4l
-  ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  KDEDIRS = libktorrent;
-
-  cmakeFlags = [ "-DBUILD_skypebuttons=TRUE" ];
-
-  meta = {
-    description = "A KDE multi-protocol IM client";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdenetwork/kppp.nix b/pkgs/desktops/kde-4.12/kdenetwork/kppp.nix
deleted file mode 100644
index 4c6bd65769f..00000000000
--- a/pkgs/desktops/kde-4.12/kdenetwork/kppp.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "PPP(Dial-Up) client tool";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdenetwork/krdc.nix b/pkgs/desktops/kde-4.12/kdenetwork/krdc.nix
deleted file mode 100644
index 80557e827fe..00000000000
--- a/pkgs/desktops/kde-4.12/kdenetwork/krdc.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, libvncserver, freerdp, telepathy_qt }:
-
-kde {
-  buildInputs = [ kdelibs libvncserver freerdp telepathy_qt ];
-
-  meta = {
-    description = "KDE remote desktop client";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdenetwork/krfb.nix b/pkgs/desktops/kde-4.12/kdenetwork/krfb.nix
deleted file mode 100644
index cb4857965a3..00000000000
--- a/pkgs/desktops/kde-4.12/kdenetwork/krfb.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, libvncserver, libXdamage, libXtst, libjpeg, telepathy_qt }:
-
-kde {
-  buildInputs = [ kdelibs libvncserver libXdamage libXtst libjpeg telepathy_qt ];
-
-  meta = {
-    description = "KDE desktop sharing";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdenetwork/zeroconf-ioslave.nix b/pkgs/desktops/kde-4.12/kdenetwork/zeroconf-ioslave.nix
deleted file mode 100644
index f65960cc337..00000000000
--- a/pkgs/desktops/kde-4.12/kdenetwork/zeroconf-ioslave.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE tool that monitors the network for DNS-SD services";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdepim-runtime.nix b/pkgs/desktops/kde-4.12/kdepim-runtime.nix
deleted file mode 100644
index 484d3e1933a..00000000000
--- a/pkgs/desktops/kde-4.12/kdepim-runtime.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, libxslt, boost, kdepimlibs, akonadi, shared_desktop_ontologies }:
-
-kde {
-
-# TODO: libkgapi(2), LibKFbAPI,libkolab, libkolabxml
-
-  buildInputs = [
-    kdepimlibs akonadi boost boost.lib shared_desktop_ontologies
-    libxslt
-  ];
-
-  meta = {
-    description = "KDE PIM runtime";
-    license = "GPL";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdepim.nix b/pkgs/desktops/kde-4.12/kdepim.nix
deleted file mode 100644
index 0f5d868837e..00000000000
--- a/pkgs/desktops/kde-4.12/kdepim.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ kde, boost, gpgme, libassuan, libxslt, kdepimlibs, kdepim_runtime
-, akonadi, shared_desktop_ontologies, cyrus_sasl, grantlee, prison
-, nepomuk_widgets, kactivities, libXScrnSaver, qjson
-, pkgconfig }:
-
-kde {
-
-# TODO: LinkGrammar
-
-  buildInputs =
-    [ kdepimlibs boost boost.lib shared_desktop_ontologies akonadi
-      nepomuk_widgets libxslt cyrus_sasl gpgme libassuan grantlee prison
-      kactivities libXScrnSaver qjson
-    ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  passthru.propagatedUserEnvPackages = [ akonadi kdepimlibs kdepim_runtime ];
-
-  meta = {
-    description = "KDE PIM tools";
-    longDescription = ''
-      Contains various personal information management tools for KDE, such as an organizer.
-    '';
-    license = "GPL";
-    homepage = http://pim.kde.org;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdepimlibs.nix b/pkgs/desktops/kde-4.12/kdepimlibs.nix
deleted file mode 100644
index 90d2717b880..00000000000
--- a/pkgs/desktops/kde-4.12/kdepimlibs.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ kde, pkgconfig, boost, cyrus_sasl, gpgme, libical, openldap, prison
-, kdelibs, akonadi, libxslt, nepomuk_core
-, shared_desktop_ontologies, qjson }:
-
-kde {
-  nativeBuildInputs = [ pkgconfig ];
-
-  buildInputs =
-    [ boost boost.lib gpgme libical libxslt qjson prison
-      openldap cyrus_sasl akonadi shared_desktop_ontologies
-    ];
-
-  propagatedBuildInputs = [ kdelibs nepomuk_core ];
-
-  meta = {
-    description = "KDE PIM libraries";
-    license = "LGPL";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeplasma-addons.nix b/pkgs/desktops/kde-4.12/kdeplasma-addons.nix
deleted file mode 100644
index afc925c79aa..00000000000
--- a/pkgs/desktops/kde-4.12/kdeplasma-addons.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ kde, kdelibs, marble, shared_desktop_ontologies, pkgconfig
-, boost, eigen, kde_workspace, attica, qca2, qimageblitz
-, kdepimlibs, libkexiv2, libqalculate, libXtst, libdbusmenu_qt
-, qjson, qoauth }:
-
-kde {
-
-# TODO: qwt, scim, ibus
-
-  KDEDIRS=marble;
-
-  buildInputs = [ kdelibs boost boost.lib kde_workspace kdepimlibs attica qjson
-                  qoauth eigen qca2 libXtst qimageblitz libqalculate
-                  shared_desktop_ontologies marble libkexiv2 libdbusmenu_qt
-  ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  meta = {
-    description = "KDE Plasma Addons";
-    license = "GPL";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/cervisia.nix b/pkgs/desktops/kde-4.12/kdesdk/cervisia.nix
deleted file mode 100644
index 1dabe46cd42..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/cervisia.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "A KDE CVS frontend";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/dolphin-plugins.nix b/pkgs/desktops/kde-4.12/kdesdk/dolphin-plugins.nix
deleted file mode 100644
index ad8132a850e..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/dolphin-plugins.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kde, kdelibs, kde_baseapps }:
-
-kde {
-
-  # Needs kdebase for libkonq
-  buildInputs = [ kdelibs kde_baseapps ];
-
-  meta = {
-    description = "Svn, mercurial, git and bazaar plugins for dolphin";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/kapptemplate.nix b/pkgs/desktops/kde-4.12/kdesdk/kapptemplate.nix
deleted file mode 100644
index 391536248dd..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/kapptemplate.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "A KDE 4 project template generator";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/kcachegrind.nix b/pkgs/desktops/kde-4.12/kdesdk/kcachegrind.nix
deleted file mode 100644
index 65d410cca48..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/kcachegrind.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE Frontend for Callgrind/Cachegrind";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/kde-dev-scripts.nix b/pkgs/desktops/kde-4.12/kdesdk/kde-dev-scripts.nix
deleted file mode 100644
index df81145e5d6..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/kde-dev-scripts.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Various scripts to ease KDE development";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/kde-dev-utils.nix b/pkgs/desktops/kde-4.12/kdesdk/kde-dev-utils.nix
deleted file mode 100644
index 215c0a3c613..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/kde-dev-utils.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kde, kdelibs, gcc, libtool }:
-
-kde {
-  buildInputs = [ kdelibs libtool ];
-
-  preConfigure = "export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:${gcc}:${gcc.gcc}";
-
-  meta = {
-    description = "various KDE development utilities";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/kdesdk-kioslaves.nix b/pkgs/desktops/kde-4.12/kdesdk/kdesdk-kioslaves.nix
deleted file mode 100644
index 98bbce35a97..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/kdesdk-kioslaves.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ kde, kdelibs, subversionClient, apr, aprutil,perl }:
-
-kde {
-
-  buildInputs = [ kdelibs subversionClient apr aprutil perl ];
-
-  cmakeFlags = [ "-DBUILD_perldoc=ON" ];
-
-  meta = {
-    description = "Subversion and perldoc kioslaves";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/kdesdk-strigi-analyzers.nix b/pkgs/desktops/kde-4.12/kdesdk/kdesdk-strigi-analyzers.nix
deleted file mode 100644
index 4d579b88ba8..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/kdesdk-strigi-analyzers.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Strigi analyzers for diff, po and ts";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/kdesdk-thumbnailers.nix b/pkgs/desktops/kde-4.12/kdesdk/kdesdk-thumbnailers.nix
deleted file mode 100644
index d707fe9038f..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/kdesdk-thumbnailers.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ kde, kdelibs, gettext }:
-
-kde {
-
-  buildInputs = [ kdelibs gettext ];
-
-  meta = {
-    description = "PO file format thumbnailer";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/kompare.nix b/pkgs/desktops/kde-4.12/kdesdk/kompare.nix
deleted file mode 100644
index 644c7c48dc9..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/kompare.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, libkomparediff2 }:
-
-kde {
-  buildInputs = [ kdelibs libkomparediff2 ];
-
-  meta = {
-    description = "A program to view the differences between files and optionally generate a diff";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/libkomparediff2.nix b/pkgs/desktops/kde-4.12/kdesdk/libkomparediff2.nix
deleted file mode 100644
index 5933682c70a..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/libkomparediff2.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "A library to compare files and strings";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/lokalize.nix b/pkgs/desktops/kde-4.12/kdesdk/lokalize.nix
deleted file mode 100644
index 1565426eb1f..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/lokalize.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ kde, kdelibs, hunspell }:
-
-kde {
-  buildInputs = [ kdelibs hunspell ];
-
-  meta = {
-    description = "KDE 4 Computer-aided translation system";
-    longDescription = ''
-      Computer-aided translation system.
-      Do not translate what had already been translated.
-    '';
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/okteta.nix b/pkgs/desktops/kde-4.12/kdesdk/okteta.nix
deleted file mode 100644
index 058636596ad..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/okteta.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ kde, kdelibs, qca2 }:
-
-kde {
-  buildInputs = [ kdelibs qca2 ];
-
-# TODO: Look what does -DBUILD_mobile add
-
-  enableParallelBuilding = false;
-
-  meta = {
-    description = "KDE byte editor";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/poxml.nix b/pkgs/desktops/kde-4.12/kdesdk/poxml.nix
deleted file mode 100644
index 6e46c3e3ab4..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/poxml.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, antlr, gettext }:
-
-kde {
-  buildInputs = [ kdelibs antlr gettext ];
-
-  meta = {
-    description = "Po<->xml tools";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdesdk/umbrello.nix b/pkgs/desktops/kde-4.12/kdesdk/umbrello.nix
deleted file mode 100644
index 2dbccdef945..00000000000
--- a/pkgs/desktops/kde-4.12/kdesdk/umbrello.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, libxml2, libxslt, boost }:
-
-kde {
-  buildInputs = [ kdelibs libxml2 libxslt boost boost.lib ];
-
-  meta = {
-    description = "Umbrello UML modeller";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdetoys/amor.nix b/pkgs/desktops/kde-4.12/kdetoys/amor.nix
deleted file mode 100644
index 936d63d544a..00000000000
--- a/pkgs/desktops/kde-4.12/kdetoys/amor.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE creature for your desktop";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdetoys/kteatime.nix b/pkgs/desktops/kde-4.12/kdetoys/kteatime.nix
deleted file mode 100644
index dacf54def4b..00000000000
--- a/pkgs/desktops/kde-4.12/kdetoys/kteatime.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE utility for making a fine cup of tea";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdetoys/ktux.nix b/pkgs/desktops/kde-4.12/kdetoys/ktux.nix
deleted file mode 100644
index 108f9be7c72..00000000000
--- a/pkgs/desktops/kde-4.12/kdetoys/ktux.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, kde_workspace }:
-
-kde {
-  buildInputs = [ kdelibs kde_workspace ];
-
-  meta = {
-    description = "Tux Screen Saver";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/ark.nix b/pkgs/desktops/kde-4.12/kdeutils/ark.nix
deleted file mode 100644
index 99844b909fd..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/ark.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ makeWrapper, kde, kdelibs, libarchive, bzip2, kde_baseapps, lzma, qjson
-, unzip }:
-
-kde {
-  buildInputs = [
-    makeWrapper kdelibs kde_baseapps libarchive bzip2 lzma qjson
-  ];
-
-  postInstall = ''
-    wrapProgram $out/bin/ark \
-      --prefix PATH ":" "${unzip}/bin"
-  '';
-
-  meta = {
-    description = "KDE Archiving Tool";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/filelight.nix b/pkgs/desktops/kde-4.12/kdeutils/filelight.nix
deleted file mode 100644
index 25ecabed27c..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/filelight.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Tool to visualise file and directory sizes";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/kcalc.nix b/pkgs/desktops/kde-4.12/kdeutils/kcalc.nix
deleted file mode 100644
index 08b202e8f0e..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/kcalc.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, gmp }:
-
-kde {
-  buildInputs = [ kdelibs gmp ];
-
-  meta = {
-    description = "KDE Calculator";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/kcharselect.nix b/pkgs/desktops/kde-4.12/kdeutils/kcharselect.nix
deleted file mode 100644
index d4c9c06f483..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/kcharselect.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE character selection utility";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/kdf.nix b/pkgs/desktops/kde-4.12/kdeutils/kdf.nix
deleted file mode 100644
index 3f9da58d0a6..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/kdf.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE free disk space utility";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/kfloppy.nix b/pkgs/desktops/kde-4.12/kdeutils/kfloppy.nix
deleted file mode 100644
index 2434a4fa671..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/kfloppy.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Floppy disk formatting utility";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/kgpg.nix b/pkgs/desktops/kde-4.12/kdeutils/kgpg.nix
deleted file mode 100644
index 11b62f499a4..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/kgpg.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ kde, kdelibs, kdepimlibs, boost }:
-
-kde {
-
-  buildInputs = [ kdelibs kdepimlibs boost boost.lib ];
-
-  meta = {
-    description = "Simple KDE GUI for GPG";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/kremotecontrol.nix b/pkgs/desktops/kde-4.12/kdeutils/kremotecontrol.nix
deleted file mode 100644
index 70311a789f9..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/kremotecontrol.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs, libXtst }:
-
-kde {
-  buildInputs = [ kdelibs libXtst ];
-
-  meta = {
-    description = "KDE remote control";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/ktimer.nix b/pkgs/desktops/kde-4.12/kdeutils/ktimer.nix
deleted file mode 100644
index 5700977349e..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/ktimer.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE Timer";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/kwalletmanager.nix b/pkgs/desktops/kde-4.12/kdeutils/kwalletmanager.nix
deleted file mode 100644
index 9ec0e6c0396..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/kwalletmanager.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "KDE Wallet (password storage) management tool";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/print-manager.nix b/pkgs/desktops/kde-4.12/kdeutils/print-manager.nix
deleted file mode 100644
index ae72becd1e4..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/print-manager.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ kde, kdelibs
-, pythonPackages, cups, pyqt4, pykde4, pycups, system_config_printer }:
-
-let s_c_p = system_config_printer.override { withGUI = false; }; in
-
-kde rec {
-  buildInputs = [ kdelibs pythonPackages.python pythonPackages.wrapPython
-    ] ++ pythonPath;
-
-  pythonPath = [ cups pyqt4 pykde4 pycups s_c_p ];
-
-  passthru.propagatedUserEnvPackages = [ s_c_p ];
-
-  postInstall =
-    ''
-      wrapPythonPrograms
-
-      # "system-config-printer" supplies some D-Bus policy that we need.
-      mkdir -p $out/nix-support
-      echo ${s_c_p} > $out/nix-support/propagated-user-env-packages
-    '';
-
-  meta = {
-    description = "KDE printer manager";
-    longDescription = "Applet to view current print jobs and configure new printers";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/superkaramba.nix b/pkgs/desktops/kde-4.12/kdeutils/superkaramba.nix
deleted file mode 100644
index cbe7a285606..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/superkaramba.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kde, kdelibs, qimageblitz, python }:
-
-kde {
-  buildInputs = [ kdelibs qimageblitz python ];
-
-  cmakeFlags = [ "-DBUILD_icons=TRUE" "-DBUILD_plasma=TRUE" ];
-
-  meta = {
-    description = "A KDE Eye-candy Application";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdeutils/sweeper.nix b/pkgs/desktops/kde-4.12/kdeutils/sweeper.nix
deleted file mode 100644
index 78d56c7df30..00000000000
--- a/pkgs/desktops/kde-4.12/kdeutils/sweeper.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Helps clean unwanted traces the user leaves on the system";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdewebdev/kfilereplace.nix b/pkgs/desktops/kde-4.12/kdewebdev/kfilereplace.nix
deleted file mode 100644
index 55e37809e07..00000000000
--- a/pkgs/desktops/kde-4.12/kdewebdev/kfilereplace.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "Batch search and replace tool";
-    homepage = http://www.kdewebdev.org;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdewebdev/kimagemapeditor.nix b/pkgs/desktops/kde-4.12/kdewebdev/kimagemapeditor.nix
deleted file mode 100644
index 6d22f72461f..00000000000
--- a/pkgs/desktops/kde-4.12/kdewebdev/kimagemapeditor.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "An HTML imagemap editor";
-    homepage = http://www.nongnu.org/kimagemap/;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdewebdev/klinkstatus.nix b/pkgs/desktops/kde-4.12/kdewebdev/klinkstatus.nix
deleted file mode 100644
index 36630ef8fc6..00000000000
--- a/pkgs/desktops/kde-4.12/kdewebdev/klinkstatus.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ kde, kdelibs, libxml2, libxslt, kdepimlibs, htmlTidy, boost }:
-
-kde {
-
-# todo: ruby19 is not found by the build system. not linking against ruby18 due to it being too old
-
-  buildInputs = [ kdelibs kdepimlibs htmlTidy boost boost.lib ];
-
-  meta = {
-    description = "A KDE link checker";
-    homepage = http://klinkstatus.kdewebdev.org;
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/kdewebdev/kommander.nix b/pkgs/desktops/kde-4.12/kdewebdev/kommander.nix
deleted file mode 100644
index d5f4337f714..00000000000
--- a/pkgs/desktops/kde-4.12/kdewebdev/kommander.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kde, kdelibs }:
-
-kde {
-  buildInputs = [ kdelibs ];
-
-  meta = {
-    description = "A graphical editor of scripted dialogs";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/l10n/default.nix b/pkgs/desktops/kde-4.12/l10n/default.nix
deleted file mode 100644
index fa6406043b1..00000000000
--- a/pkgs/desktops/kde-4.12/l10n/default.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-{ stdenv, fetchurl, kdelibs, gettext, release, branch, stable }:
-
-let
-
-  inherit (stdenv.lib) attrByPath singleton;
-
-  kdeL10nDerivation =
-    { lang, saneName, sha256 }:
-
-    stdenv.mkDerivation rec {
-      name = "kde-l10n-${saneName}-${release}";
-
-      src = fetchurl {
-        url = "mirror://kde/${if stable then "" else "un"}stable/${release}/src/kde-l10n/kde-l10n-${lang}-${release}.tar.xz";
-        name = "${name}.tar.xz";
-        inherit sha256;
-      };
-
-      buildInputs = [ gettext kdelibs ];
-
-      cmakeFlags = "-Wno-dev";
-
-      meta = {
-        description = "KDE translation for ${lang}";
-        inherit branch;
-        license = "GPL";
-        platforms = stdenv.lib.platforms.linux;
-        inherit (kdelibs.meta) maintainers homepage;
-      };
-    };
-
-  kdeL10nRelease =
-    builtins.listToAttrs (
-      map ({lang, saneName, sha256}:
-        {
-          name = saneName;
-          value = kdeL10nDerivation { inherit lang saneName sha256; };
-        }
-      ) (import (./manifest + "-${release}.nix"))
-    );
-
-in
-{
-  inherit kdeL10nDerivation;
-  recurseForDerivations = true;
-} // kdeL10nRelease
diff --git a/pkgs/desktops/kde-4.12/l10n/l10n-manifest.sh b/pkgs/desktops/kde-4.12/l10n/l10n-manifest.sh
deleted file mode 100755
index ec159a1e204..00000000000
--- a/pkgs/desktops/kde-4.12/l10n/l10n-manifest.sh
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/sh
-
-# Usage: download kde-l10n to $dir, then run
-# $0 $dir
-
-dir=$1
-
-if [[ ! -d "${dir}" ]]; then
-  echo "${dir} is not a directory (or doesn't exist)!" >&2
-  exit 1
-fi
-
-release=$(ls "${dir}"/kde-l10n-en_GB-*.tar.xz | \
-	sed -e 's/.*en_GB-//' -e 's/\.tar\.xz//')
-
-echo "Detected release ${release}" >&2
-
-exec > "manifest-${release}.nix"
-echo "["
-for i in `cd "${dir}"; ls kde-l10n-*-${release}.tar.xz`; do
-  lang=${i%-${release}.tar.xz}
-  lang=${lang#kde-l10n-}
-  echo -n "${lang}.. " >&2
-  hash=$(nix-hash --type sha256 --flat --base32 "${dir}/${i}")
-  echo "{"
-  echo "  lang = \"${lang}\";"
-  echo "  saneName = \"$(echo $lang | sed s^@^_^g)\";"
-  echo "  sha256 = \"${hash}\";"
-  echo "}"
-  echo $hash >&2
-done
-echo "]"
diff --git a/pkgs/desktops/kde-4.12/l10n/manifest-4.12.4.nix b/pkgs/desktops/kde-4.12/l10n/manifest-4.12.4.nix
deleted file mode 100644
index e646e352887..00000000000
--- a/pkgs/desktops/kde-4.12/l10n/manifest-4.12.4.nix
+++ /dev/null
@@ -1,262 +0,0 @@
-[
-{
-  lang = "ar";
-  saneName = "ar";
-  sha256 = "1pygy9kckankwhlm4j61fk42zinafw2insc9kkpgmh9mvb8gv0jk";
-}
-{
-  lang = "bg";
-  saneName = "bg";
-  sha256 = "1qqbl7l84j3d5928gmdq7f7s0i31gw0rlf4y74p5zx8m80xbdd6l";
-}
-{
-  lang = "bs";
-  saneName = "bs";
-  sha256 = "0cg143wlalplw0qr10h60i6srn0avsim94m1hjbm8xrlg71iihjj";
-}
-{
-  lang = "ca";
-  saneName = "ca";
-  sha256 = "15s85xmqbnv7bm7ywivkyi62481ip4vy6yyw81m720hza0imbj9z";
-}
-{
-  lang = "ca@valencia";
-  saneName = "ca_valencia";
-  sha256 = "1d0bhndwf8b0pmglf3sx28r6s3li72x7a05kc39n026ha5zyx5f1";
-}
-{
-  lang = "cs";
-  saneName = "cs";
-  sha256 = "1dx5c6fkgn4hglx8qacrdnxn0l9p7dqbaz6cd7h9pa8b9zri5j9w";
-}
-{
-  lang = "da";
-  saneName = "da";
-  sha256 = "1ynh8s17999pa60bzwr2595pcd744h1n8zznyzr5lq302ir8f8qj";
-}
-{
-  lang = "de";
-  saneName = "de";
-  sha256 = "1da01wd1n64g3l57pagvrb8mn2jj50ni1qhicnlwylk8n2krw0pf";
-}
-{
-  lang = "el";
-  saneName = "el";
-  sha256 = "1qf9g5in9zr39gkip06hr80pzc4frchb2x9q76sqs36h58az5yfd";
-}
-{
-  lang = "en_GB";
-  saneName = "en_GB";
-  sha256 = "1lhrbfh74sqglqxl7yh68qkx0gmppg7iir194vxhm2s1j0jxq8r4";
-}
-{
-  lang = "es";
-  saneName = "es";
-  sha256 = "0qz39nxkiivgk720lgdbfgxdp3wn5wrvx2zf0phvb8g6q5rl68kw";
-}
-{
-  lang = "et";
-  saneName = "et";
-  sha256 = "1i9h68pfsnbi4gw5f4mb6q8jq56hdmi1lqxhwzj6vrbqiip7b9gl";
-}
-{
-  lang = "eu";
-  saneName = "eu";
-  sha256 = "020b1p164v82pj6x0jxz6d41w539786ygkfmgrf9dr20zwhchzha";
-}
-{
-  lang = "fi";
-  saneName = "fi";
-  sha256 = "0vs8bqr6if32bmwvjzdmakyqdl5fz13igg31mzwga4aqlzalxa1w";
-}
-{
-  lang = "fr";
-  saneName = "fr";
-  sha256 = "1wcd9gzf754150i62zl3fa24jq8p7vskn6adaa8x5qy208c0d6v1";
-}
-{
-  lang = "ga";
-  saneName = "ga";
-  sha256 = "0fpsc36sk7zh3flxgnvfgxig4cm5hm56sgdgbl01dfg1mac6dckq";
-}
-{
-  lang = "gl";
-  saneName = "gl";
-  sha256 = "1hrbsd595q2w09mym9h56hymikkpxbq0qmdxvphap5wsh0xsfxms";
-}
-{
-  lang = "he";
-  saneName = "he";
-  sha256 = "1q2y9js6j32rbm5jg8yn6s9zw0jh6yq1q4z6hxy9nss1gh6diqda";
-}
-{
-  lang = "hi";
-  saneName = "hi";
-  sha256 = "0zaknfk8kzcid7839wsj61qgn81gjz0hbpis7q2q1syky4nzjwsb";
-}
-{
-  lang = "hr";
-  saneName = "hr";
-  sha256 = "1d14h5kdfz8np5p27darraxq4ps0yhxhczg9yli436kgiflbvp88";
-}
-{
-  lang = "hu";
-  saneName = "hu";
-  sha256 = "0p29dybsalnjk00f7l3gni7pxzv1ig95m100svhhkmcwvh065kjf";
-}
-{
-  lang = "ia";
-  saneName = "ia";
-  sha256 = "1qqbn3v30z058580qr9qyq0sy6g4jw0far8w7ywgnhks4aapy97a";
-}
-{
-  lang = "is";
-  saneName = "is";
-  sha256 = "1gfm0k2j2jvff9lab87yjrywc1j0gayw2fxibzifvpygr9bl60i7";
-}
-{
-  lang = "it";
-  saneName = "it";
-  sha256 = "11zax6c3qfscadqfamls5k78hw36iwadqsgyiphl574ijz9q48ba";
-}
-{
-  lang = "ja";
-  saneName = "ja";
-  sha256 = "1ab658x0a44kydzs05zgzq7nks6dfl0z8m69ank5ngd12qnhb38s";
-}
-{
-  lang = "kk";
-  saneName = "kk";
-  sha256 = "0n26860ah421x8q2jmz8mh3mdzy26s8ckbfpnyph1vc23zqx9vqv";
-}
-{
-  lang = "km";
-  saneName = "km";
-  sha256 = "05ad1d5klc11s138zb5fj4h2kfida83xqr4z1m6nhv0igwzmza0g";
-}
-{
-  lang = "ko";
-  saneName = "ko";
-  sha256 = "14kchh6yixgrkzrrkdz25xaj2q91il6yshz79n4h0yk01lfc3sq5";
-}
-{
-  lang = "lt";
-  saneName = "lt";
-  sha256 = "0aa4spy2nc1hfbx1z2b4k3sahha0pdxih1k3pl6n9223cjgwcbqp";
-}
-{
-  lang = "lv";
-  saneName = "lv";
-  sha256 = "14341a4qr8p7idvsw6zp23kyva5lb4684wjygm24d9wj69nkc2c4";
-}
-{
-  lang = "mr";
-  saneName = "mr";
-  sha256 = "02rq9spp8vzvv8bvzny48qwksimrnqj6y9rpc3xh6bmzfhvr7qsa";
-}
-{
-  lang = "nb";
-  saneName = "nb";
-  sha256 = "1s2gbynxdbpi32rwdgddabsp3n10ngwpnh6za3yjp4is93ici6rm";
-}
-{
-  lang = "nds";
-  saneName = "nds";
-  sha256 = "18nmh605ya47w0x2nkglg8lrfks7l9pxr6mjnw3z3lsazafigvx1";
-}
-{
-  lang = "nl";
-  saneName = "nl";
-  sha256 = "1jxd109m2y7ky0c4im70ipx07rysbr0ndl2fpjb3myxb2nks106h";
-}
-{
-  lang = "nn";
-  saneName = "nn";
-  sha256 = "117zl85myjnnb957c4gx0h65ks842sk3gbw9dfp8hpzdwg8zvsn4";
-}
-{
-  lang = "pa";
-  saneName = "pa";
-  sha256 = "1q5c61a2swxvyhdw5rambibyms40hj34093ihx32ad73kb4mn72w";
-}
-{
-  lang = "pl";
-  saneName = "pl";
-  sha256 = "0wg4nlra1z6pf8mxlz3w0jq68k0qfhxrhsqij35l9zml5y203n4y";
-}
-{
-  lang = "pt";
-  saneName = "pt";
-  sha256 = "0rryyjfgplar77fz332jv2w0lv7d6273gv022pb1m83w945pzkf9";
-}
-{
-  lang = "pt_BR";
-  saneName = "pt_BR";
-  sha256 = "0aglgvj1ljfdf6gjs478l4wisp2z4dzkkbhz1sgry00p4q1417ab";
-}
-{
-  lang = "ro";
-  saneName = "ro";
-  sha256 = "14aqlg64lp287m09zhh9r9l6ywfwzz7f2nz0vr1fg3wqsdrchglw";
-}
-{
-  lang = "ru";
-  saneName = "ru";
-  sha256 = "0cq6xacyrb9wrrwbl8xrb2ah3h7s7a9vr7kz3fy5rf2rgq0phfd7";
-}
-{
-  lang = "sk";
-  saneName = "sk";
-  sha256 = "07i0plzmg0nykfalyjvwnhg5qrcfdf1h6i18b34xyrp3y4gm540a";
-}
-{
-  lang = "sl";
-  saneName = "sl";
-  sha256 = "0gw1iv550nr307ibgb8i48fxcq03liq5r2x7fr9pl0n9xknh3c8a";
-}
-{
-  lang = "sr";
-  saneName = "sr";
-  sha256 = "0489n0l9c9wig5567dfh4apyyy6xws7yxq79r4jl00zxl1j43bla";
-}
-{
-  lang = "sv";
-  saneName = "sv";
-  sha256 = "1n4ckll9ngj8qn976nikxfljf23qsvphblbjnjm0vk4713bnpf9h";
-}
-{
-  lang = "tr";
-  saneName = "tr";
-  sha256 = "0pzjdnanhynalcjlsg94g88i92hwdsqz02x85yxxg87vn74p13ks";
-}
-{
-  lang = "ug";
-  saneName = "ug";
-  sha256 = "1z9mjzh0w6i2a75ys0dx5ksm8fpwyw8wrwdh14bvbnxpnkx0jv8x";
-}
-{
-  lang = "uk";
-  saneName = "uk";
-  sha256 = "032vjcjpl19dyyc36z1nwyc9h696iys8dfyadpw9rhcllpk4ck67";
-}
-{
-  lang = "vi";
-  saneName = "vi";
-  sha256 = "0sd6vzb1qmbbxk6d1vfq21gkq009lp7qxnpdcr7jbykcf0licq7i";
-}
-{
-  lang = "wa";
-  saneName = "wa";
-  sha256 = "1m6fa0adfjzfqakjyrrjwak4p0y5wwdkkq61qx9wvzdb78qm83rw";
-}
-{
-  lang = "zh_CN";
-  saneName = "zh_CN";
-  sha256 = "11is37g7fafxhk7ydydgbxdg0x1s5cxr8v1pjzwqb858n1cq5x1h";
-}
-{
-  lang = "zh_TW";
-  saneName = "zh_TW";
-  sha256 = "1vbr0pjm8d25lxbmhqz8d4x57sjc411a5fkvyxh4rr34fd7xxhwq";
-}
-]
diff --git a/pkgs/desktops/kde-4.12/oxygen-icons.nix b/pkgs/desktops/kde-4.12/oxygen-icons.nix
deleted file mode 100644
index 01020e095f9..00000000000
--- a/pkgs/desktops/kde-4.12/oxygen-icons.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ kde, cmake }:
-
-kde {
-  outputHashAlgo = "sha256";
-  outputHashMode = "recursive";
-  outputHash = "06qddsbq0sadj9jh2x1qkbm69b7cnd2474b3h0zrzrqgnrsf8jn2";
-
-  nativeBuildInputs = [ cmake ];
-
-  meta = {
-    description = "KDE Oxygen theme icons";
-    longDescription = "Icons for KDE's default theme";
-    license = "GPL";
-  };
-}
diff --git a/pkgs/desktops/kde-4.12/support/akonadi/default.nix b/pkgs/desktops/kde-4.12/support/akonadi/default.nix
deleted file mode 100644
index 824fd3e6616..00000000000
--- a/pkgs/desktops/kde-4.12/support/akonadi/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ stdenv, fetchurl, cmake, qt4, shared_mime_info, libxslt, boost, automoc4, soprano, sqlite }:
-
-stdenv.mkDerivation rec {
-  name = "akonadi-1.11.0";
-  
-  src = fetchurl {
-    url = "mirror://kde/stable/akonadi/src/${name}.tar.bz2";
-    sha256 = "0k96i8xq3xkm5rrxrj3zqgppcmqbzcpc918xnx0p54jkkm85gchc";
-  };
-
-  buildInputs = [ qt4 soprano libxslt boost boost.lib sqlite ];
-
-  nativeBuildInputs = [ cmake automoc4 shared_mime_info ];
-
-  enableParallelBuilding = true;
-  
-  meta = with stdenv.lib; {
-    description = "KDE PIM Storage Service";
-    license = "LGPL";
-    homepage = http://pim.kde.org/akonadi;
-    maintainers = [ maintainers.sander maintainers.urkud maintainers.phreedom ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/desktops/pantheon/apps/pantheon-terminal/default.nix b/pkgs/desktops/pantheon/apps/pantheon-terminal/default.nix
new file mode 100644
index 00000000000..7506ece43dc
--- /dev/null
+++ b/pkgs/desktops/pantheon/apps/pantheon-terminal/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl, perl, cmake, vala, pkgconfig, glib, gtk3, granite, gnome3, libnotify, gettext, makeWrapper }:
+
+stdenv.mkDerivation rec {
+  majorVersion = "0.3";
+  minorVersion = "0.1";
+  name = "pantheon-terminal-${majorVersion}.${minorVersion}";
+  src = fetchurl {
+    url = "https://launchpad.net/pantheon-terminal/${majorVersion}.x/${majorVersion}.${minorVersion}/+download/${name}.tgz";
+    sha256 = "14wspqxp79myyyjngr1x7jg1kw15g3nm2pav2zffp8xs16s1i5za";
+  };
+
+  preConfigure = ''
+    export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:${granite}/lib64/pkgconfig"
+  '';
+
+  preFixup = ''
+    for f in $out/bin/*; do
+      wrapProgram $f \
+        --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share"
+    done
+  '';
+
+  buildInputs = [perl cmake vala pkgconfig glib gtk3 granite gnome3.vte gnome3.libgee libnotify gettext makeWrapper];
+  meta = {
+    description = "elementary OS's terminal";
+    longDescription = "A super lightweight, beautiful, and simple terminal. It's designed to be setup with sane defaults and little to no configuration. It's just a terminal, nothing more, nothing less. Designed for elementary OS.";
+    homepage = https://launchpad.net/pantheon-terminal;
+    license = stdenv.lib.licenses.gpl3;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.vozz ];
+  };
+}
diff --git a/pkgs/development/arduino/arduino-core/default.nix b/pkgs/development/arduino/arduino-core/default.nix
index f1be290b190..94336cc9e2b 100644
--- a/pkgs/development/arduino/arduino-core/default.nix
+++ b/pkgs/development/arduino/arduino-core/default.nix
@@ -1,23 +1,19 @@
-{ stdenv, fetchurl, jdk, jre, ant, coreutils, gnugrep }:
+{ stdenv, fetchFromGitHub, jdk, jre, ant, coreutils, gnugrep }:
 
 stdenv.mkDerivation rec {
 
-  version = "1.0.2";
+  version = "1.0.6";
   name = "arduino-core";
 
-  src = fetchurl {
-    url = "http://arduino.googlecode.com/files/arduino-${version}-src.tar.gz";
-    sha256 = "0nszl2hdjjgxk87gyk0xi0ww9grbq83hch3iqmpaf9yp4y9bra0x";
+  src = fetchFromGitHub {
+    owner = "arduino";
+    repo = "Arduino";
+    rev = "${version}";
+    sha256 = "0nr5b719qi03rcmx6swbhccv6kihxz3b8b6y46bc2j348rja5332";
   };
 
   buildInputs = [ jdk ant ];
 
-  phases = "unpackPhase patchPhase buildPhase installPhase";
-
-  patchPhase = ''
-  #
-  '';
-
   buildPhase = ''
     cd ./core && ant 
     cd ../build && ant 
@@ -34,9 +30,9 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "Arduino libraries";
+    description = "Libraries for the open-source electronics prototyping platform";
     homepage = http://arduino.cc/;
-    license = "GPL";
-    maintainers = [ stdenv.lib.maintainers.antono ];
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = [ stdenv.lib.maintainers.antono stdenv.lib.maintainers.robberer ];
   }; 
 }
diff --git a/pkgs/development/compilers/agda/default.nix b/pkgs/development/compilers/agda/default.nix
index 3a44baa489a..c930fa1b193 100644
--- a/pkgs/development/compilers/agda/default.nix
+++ b/pkgs/development/compilers/agda/default.nix
@@ -30,5 +30,6 @@ cabal.mkDerivation (self: {
     description = "A dependently typed functional programming language and proof assistant";
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
   };
 })
diff --git a/pkgs/development/compilers/agda/stdlib.nix b/pkgs/development/compilers/agda/stdlib.nix
index 7305fbb5397..638b45951c8 100644
--- a/pkgs/development/compilers/agda/stdlib.nix
+++ b/pkgs/development/compilers/agda/stdlib.nix
@@ -21,6 +21,6 @@ agda.mkDerivation (self: rec {
     description = "A standard library for use with the Agda compiler.";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.unix;
-    maintainers = with maintainers; [ jwiegley ];
+    maintainers = with maintainers; [ jwiegley fuuzetsu ];
   };
 })
diff --git a/pkgs/development/compilers/elm/elm.nix b/pkgs/development/compilers/elm/elm.nix
index 622f182e8c5..38e1d7de2c6 100644
--- a/pkgs/development/compilers/elm/elm.nix
+++ b/pkgs/development/compilers/elm/elm.nix
@@ -1,27 +1,30 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
 { cabal, aeson, aesonPretty, binary, blazeHtml, blazeMarkup
-, cmdargs, filemanip, filepath, HUnit, indents, languageEcmascript
-, languageGlsl, mtl, pandoc, parsec, QuickCheck, scientific
-, testFramework, testFrameworkHunit, testFrameworkQuickcheck2, text
-, transformers, unionFind, unorderedContainers, yaml
+, cheapskate, cmdargs, filemanip, filepath, highlightingKate, HUnit
+, indents, languageEcmascript, languageGlsl, mtl, parsec
+, QuickCheck, testFramework, testFrameworkHunit
+, testFrameworkQuickcheck2, text, transformers, unionFind
+, unorderedContainers
 }:
 
 cabal.mkDerivation (self: {
   pname = "Elm";
-  version = "0.12.3";
-  sha256 = "1v6h9qbbz27ikh19xwjbyfw0zi5ag9x1gp0khh9v4af1g0j86320";
+  version = "0.13";
+  sha256 = "1l6p00h0717blwvia0gvqpsakq8jy44fxc6brr4qxs5g4yjcjnmh";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    aeson aesonPretty binary blazeHtml blazeMarkup cmdargs filepath
-    indents languageEcmascript languageGlsl mtl pandoc parsec
-    scientific text transformers unionFind unorderedContainers yaml
+    aeson aesonPretty binary blazeHtml blazeMarkup cheapskate cmdargs
+    filepath highlightingKate indents languageEcmascript languageGlsl
+    mtl parsec text transformers unionFind unorderedContainers
   ];
   testDepends = [
-    aeson aesonPretty binary blazeHtml blazeMarkup cmdargs filemanip
-    filepath HUnit indents languageEcmascript languageGlsl mtl pandoc
-    parsec QuickCheck scientific testFramework testFrameworkHunit
-    testFrameworkQuickcheck2 text transformers unionFind
-    unorderedContainers yaml
+    aeson aesonPretty binary blazeHtml blazeMarkup cheapskate cmdargs
+    filemanip filepath highlightingKate HUnit indents
+    languageEcmascript languageGlsl mtl parsec QuickCheck testFramework
+    testFrameworkHunit testFrameworkQuickcheck2 text transformers
+    unionFind unorderedContainers
   ];
   doCheck = false;
   preConfigure = ''
diff --git a/pkgs/development/compilers/epic/default.nix b/pkgs/development/compilers/epic/default.nix
index 6ea377387ec..ae4d73d6e20 100644
--- a/pkgs/development/compilers/epic/default.nix
+++ b/pkgs/development/compilers/epic/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "epic";
-  version = "0.9.3";
-  sha256 = "1x8y3ljha8r52pw83mjfv5i49dq0b7i1xbxg8j9hlvr2vwfa4237";
+  version = "0.9.3.2";
+  sha256 = "1l73absns4ci20brkdjg1r1l9p4xxx88vax736diqik7rl7zrx9h";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ Cabal mtl ];
@@ -16,7 +16,5 @@ cabal.mkDerivation (self: {
     description = "Compiler for a simple functional language";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
-    hydraPlatforms = self.stdenv.lib.platforms.none;
-    broken = true;
   };
 })
diff --git a/pkgs/development/compilers/fsharp/default.nix b/pkgs/development/compilers/fsharp/default.nix
index 99e893c79d1..179c70a5f47 100644
--- a/pkgs/development/compilers/fsharp/default.nix
+++ b/pkgs/development/compilers/fsharp/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "fsharp-${version}";
-  version = "3.1.1.25";
+  version = "3.1.1.26";
 
   src = fetchurl {
     url = "https://github.com/fsharp/fsharp/archive/${version}.tar.gz";
-    sha256 = "1vrgw7qk4g78mjjapc1a1frribcgya4cdrwahv3i26z9s10g5h3d";
+    sha256 = "1yz3cq8ys6ryc6x3a0qyc100swrg2q3az8x8in1lp7c2c0l02zb2";
   };
 
   buildInputs = [ mono pkgconfig autoconf automake which ];
diff --git a/pkgs/development/compilers/go/1.3.nix b/pkgs/development/compilers/go/1.3.nix
index ca117baca78..3c465c3471f 100644
--- a/pkgs/development/compilers/go/1.3.nix
+++ b/pkgs/development/compilers/go/1.3.nix
@@ -8,8 +8,8 @@ let
   loaderArm = "${glibc}/lib/ld-linux.so.3";
   srcs = {
     golang = fetchurl {
-      url = https://storage.googleapis.com/golang/go1.3.2.src.tar.gz;
-      sha256 = "1yq6xygc5lhn3b9d4sbddlf8dzi3wihyzjwyc8rhiwrb3hj8hx1y";
+      url = https://storage.googleapis.com/golang/go1.3.3.src.tar.gz;
+      sha1 = "b54b7deb7b7afe9f5d9a3f5dd830c7dede35393a";
     };
     tools = fetchhg {
       url = https://code.google.com/p/go.tools/;
@@ -20,7 +20,7 @@ let
 in
 
 stdenv.mkDerivation {
-  name = "go-1.3.2";
+  name = "go-1.3.3";
 
   src = srcs.golang;
 
diff --git a/pkgs/development/compilers/icedtea-web/default.nix b/pkgs/development/compilers/icedtea-web/default.nix
index c9697bac36c..48b5dbb35a3 100644
--- a/pkgs/development/compilers/icedtea-web/default.nix
+++ b/pkgs/development/compilers/icedtea-web/default.nix
@@ -3,12 +3,12 @@
 stdenv.mkDerivation rec {
   name = "icedtea-web-${version}";
 
-  version = "1.5";
+  version = "1.5.1";
 
   src = fetchurl {
     url = "http://icedtea.wildebeest.org/download/source/${name}.tar.gz";
 
-    sha256 = "0bbwa944kaam0r8ldlqrrj9z9zj54v6zdc3q663ck59shw5z828w";
+    sha256 = "1581j1bmg4pavh10dd13q5zchr54j2hf11i2wcd4yml4z9b67w83";
   };
 
   buildInputs = [ gtk2 xulrunner zip pkgconfig npapi_sdk ];
diff --git a/pkgs/development/compilers/idris/default.nix b/pkgs/development/compilers/idris/default.nix
index 2af8ec1b022..ea465137823 100644
--- a/pkgs/development/compilers/idris/default.nix
+++ b/pkgs/development/compilers/idris/default.nix
@@ -31,5 +31,6 @@ cabal.mkDerivation (self: {
     description = "Functional Programming Language with Dependent Types";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ aycanirican ];
   };
-})
+})
\ No newline at end of file
diff --git a/pkgs/development/compilers/oraclejdk/jdk8-linux.nix b/pkgs/development/compilers/oraclejdk/jdk8-linux.nix
index 63af4564374..c97d74ec9af 100644
--- a/pkgs/development/compilers/oraclejdk/jdk8-linux.nix
+++ b/pkgs/development/compilers/oraclejdk/jdk8-linux.nix
@@ -1,9 +1,9 @@
 import ./jdk-linux-base.nix {
   productVersion = "8";
-  patchVersion = "11";
+  patchVersion = "20";
   downloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html;
-  sha256_i686 = "3981e6fb7d35b20ac3c05ec56fb3798ac1cd872a9e968bb3d77a718af7b146d1";
-  sha256_x86_64 = "f3593b248b64cc53bf191f45b92a1f10e8c5099c2f84bd5bd5d6465dfd07a8e9";
+  sha256_i686 = "fa013b3fcbb1308040bf0e75bbd6ef7e8396b547cbc8dd79e3cb8153604bfd06";
+  sha256_x86_64 = "3e717622ae48af5ca7298e7797cb71d4d545238f362741a83e69c097ca055de4";
   jceName = "jce_policy-8.zip";
   jceDownloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html;
   sha256JCE = "f3020a3922efd6626c2fff45695d527f34a8020e938a49292561f18ad1320b59";
diff --git a/pkgs/development/compilers/rustc/hardcode_paths.HEAD.patch b/pkgs/development/compilers/rustc/hardcode_paths.HEAD.patch
index 21e6576e4e3..8701cd3c982 100644
--- a/pkgs/development/compilers/rustc/hardcode_paths.HEAD.patch
+++ b/pkgs/development/compilers/rustc/hardcode_paths.HEAD.patch
@@ -1,5 +1,5 @@
 diff --git a/src/librustc/back/link.rs b/src/librustc/back/link.rs
-index 6332485..9500a23 100644
+index 1cc60fc..2e94b99 100644
 --- a/src/librustc/back/link.rs
 +++ b/src/librustc/back/link.rs
 @@ -383,18 +383,9 @@ pub fn mangle_internal_name_by_path_and_seq(path: PathElems, flav: &str) -> Stri
@@ -35,4 +35,3 @@ index 060dda5..fecf76b 100644
 +        None => "@arPath@"
      };
      let mut cmd = Command::new(ar);
- 
diff --git a/pkgs/development/compilers/rustc/head.nix b/pkgs/development/compilers/rustc/head.nix
index f81539fad9a..afefc6dcd81 100644
--- a/pkgs/development/compilers/rustc/head.nix
+++ b/pkgs/development/compilers/rustc/head.nix
@@ -18,19 +18,19 @@ assert stdenv.gcc.gcc != null;
 
 */
 
-with ((import ./common.nix) {inherit stdenv; version = "0.12.0-pre-a2e7c4da9"; });
+with ((import ./common.nix) {inherit stdenv; version = "0.12.0-pre-127-ga0ea210";});
 
 let snapshot = if stdenv.system == "i686-linux"
-      then "555aca74f9a268f80cab2df1147dc6406403e9e4"
+      then "0644637db852db8a6c603ded0531ccaa60291bd3"
       else if stdenv.system == "x86_64-linux"
-      then "6a43c2f6c8ba2cbbcb9da1f7b58f748aef99f431"
+      then "656b8c23fbb97794e85973aca725a4b9cd07b29e"
       else if stdenv.system == "i686-darwin"
-      then "331bd7ef519cbb424188c546273e8c7d738f0894"
+      then "e4d9709fcfe485fcca00f0aa1fe456e2f164ed96"
       else if stdenv.system == "x86_64-darwin"
-      then "2c83a79a9febfe1d326acb17c3af76ba053c6ca9"
+      then "6b1aa5a441965da87961be81950e8663eadba377"
       else abort "no-snapshot for platform ${stdenv.system}";
-    snapshotDate = "2014-10-04";
-    snapshotRev = "749ff5e";
+    snapshotDate = "2014-10-10";
+    snapshotRev = "78a7676";
     snapshotName = "rust-stage0-${snapshotDate}-${snapshotRev}-${platform}-${snapshot}.tar.bz2";
 
 in stdenv.mkDerivation {
@@ -40,8 +40,8 @@ in stdenv.mkDerivation {
 
   src = fetchgit {
     url = https://github.com/rust-lang/rust;
-    rev = "a2e7c4da9b331d337fba0b3911c6d3d7f48e8305";
-    sha256 = "1lpncqx3lfyjk6llfc7pd1iqxzfhj32hjqvj09zks73r4isc02n4";
+    rev = "a0ea210b394aa1b61d341593a3f9098fe5bf7806";
+    sha256 = "0flwzj6dywaq9s77ayinshqbz8na2a1jabkr9s7zj74s2ya5096i";
   };
 
   # We need rust to build rust. If we don't provide it, configure will try to download it.
diff --git a/pkgs/development/compilers/yasm/default.nix b/pkgs/development/compilers/yasm/default.nix
index ec1fda10d8c..f752ad35a6d 100644
--- a/pkgs/development/compilers/yasm/default.nix
+++ b/pkgs/development/compilers/yasm/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "yasm-1.2.0";
+  name = "yasm-1.3.0";
 
   src = fetchurl {
     url = "http://www.tortall.net/projects/yasm/releases/${name}.tar.gz";
-    sha256 = "0cfg7ji3ia2in628w42wrfvw2ixmmm4rghwmv2k202mraysgm3vn";
+    sha256 = "0gv0slmm0qpq91za3v2v9glff3il594x5xsrbgab7xcmnh0ndkix";
   };
 
   meta = {
diff --git a/pkgs/development/coq-modules/bedrock/default.nix b/pkgs/development/coq-modules/bedrock/default.nix
new file mode 100644
index 00000000000..7aadead5428
--- /dev/null
+++ b/pkgs/development/coq-modules/bedrock/default.nix
@@ -0,0 +1,33 @@
+{stdenv, fetchurl, coq}:
+
+stdenv.mkDerivation rec {
+
+  name = "coq-bedrock-${coq.coq-version}-${version}";
+  version = "20140722";
+
+  src = fetchurl {
+    url = "http://plv.csail.mit.edu/bedrock/bedrock-${version}.tgz";
+    sha256 = "0aaa98q42rsy9hpsxji21bqznizfvf6fplsw6jq42h06j0049k80";
+  };
+
+  buildInputs = [ coq.ocaml coq.camlp5 ];
+  propagatedBuildInputs = [ coq ];
+
+  enableParallelBuilding = true;
+
+  buildFlags = "cito";
+
+  installPhase = ''
+    COQLIB=$out/lib/coq/${coq.coq-version}/
+    mkdir -p $COQLIB/user-contrib/Bedrock
+    cp -pR src $COQLIB/user-contrib/Bedrock
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://plv.csail.mit.edu/bedrock/;
+    description = "Bedrock is a library that turns Coq into a tool much like classical verification systems";
+    maintainers = with maintainers; [ jwiegley ];
+    platforms = coq.meta.platforms;
+  };
+
+}
diff --git a/pkgs/development/coq-modules/containers/default.nix b/pkgs/development/coq-modules/containers/default.nix
index 8c20d64d8c7..5c5681f6010 100644
--- a/pkgs/development/coq-modules/containers/default.nix
+++ b/pkgs/development/coq-modules/containers/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = http://coq.inria.fr/pylons/contribs/files/Containers/v8.4/Containers.tar.gz;
-    sha256 = "1y9x2lwrskv2231z9ac3kv4bmg6h1415xpp4gl7v5w90ba6p6w8w";
+    sha256 = "0z7yk0g7zkniwc73ka7wwb5jjg5a2wr1krrn3akr7kn5z3gvy2mc";
   };
 
   buildInputs = [ coq.ocaml coq.camlp5 ];
@@ -17,9 +17,8 @@ stdenv.mkDerivation {
   meta = with stdenv.lib; {
     homepage = http://coq.inria.fr/pylons/pylons/contribs/view/Containers/v8.4;
     description = "A typeclass-based Coq library of finite sets/maps";
-    maintainers = with maintainers; [ vbgl ];
+    maintainers = with maintainers; [ vbgl jwiegley ];
     platforms = coq.meta.platforms;
-    broken = true; /* the source hash is wrong */
   };
 
 }
diff --git a/pkgs/development/coq-modules/coq-ext-lib/default.nix b/pkgs/development/coq-modules/coq-ext-lib/default.nix
new file mode 100644
index 00000000000..b9939a2e7f4
--- /dev/null
+++ b/pkgs/development/coq-modules/coq-ext-lib/default.nix
@@ -0,0 +1,28 @@
+{stdenv, fetchgit, coq}:
+
+stdenv.mkDerivation rec {
+
+  name = "coq-ext-lib-${coq.coq-version}-${version}";
+  version = "c2c71a2a";
+
+  src = fetchgit {
+    url = git://github.com/coq-ext-lib/coq-ext-lib.git;
+    rev = "c2c71a2a90ac87f2ceb311a6da53a6796b916816";
+    sha256 = "01sihw3nmvvpc8viwyr01qnqifdcmlg016034xmrfmv863yp8c4g";
+  };
+
+  buildInputs = [ coq.ocaml coq.camlp5 ];
+  propagatedBuildInputs = [ coq ];
+
+  enableParallelBuilding = true;
+
+  installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}/";
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/coq-ext-lib/coq-ext-lib;
+    description = "A collection of theories and plugins that may be useful in other Coq developments";
+    maintainers = with maintainers; [ jwiegley ];
+    platforms = coq.meta.platforms;
+  };
+
+}
diff --git a/pkgs/development/coq-modules/domains/darcs_context b/pkgs/development/coq-modules/domains/darcs_context
new file mode 100644
index 00000000000..5dac711c0c0
--- /dev/null
+++ b/pkgs/development/coq-modules/domains/darcs_context
@@ -0,0 +1,809 @@
+
+Context:
+
+[additional facts about limits on cuts
+robdockins@fastmail.fm**20140818025955
+ Ignore-this: 6f9c952db425df6ae9d2a14139a8a3d1
+] 
+
+[work on limits
+robdockins@fastmail.fm**20140817221707
+ Ignore-this: 9811e0cd669b48f3beb7a56d47cbe3c3
+] 
+
+[finish proving that Q field ops commute with injq
+robdockins@fastmail.fm**20140817060600
+ Ignore-this: a1f6c62b39983e6f6f01d28aca5f8534
+] 
+
+[split up realdom.v and perform associated code motion
+robdockins@fastmail.fm**20140817030034
+ Ignore-this: 24c74cd459d2ab15dcd3d83ba06f7081
+] 
+
+[recip is canonical and converges
+robdockins@fastmail.fm**20140725211947
+ Ignore-this: c100dbd94114cca9576b2a3f46c9ddc7
+] 
+
+[improve the proof that 1 is a unit for multiplication
+robdockins@fastmail.fm**20140724150124
+ Ignore-this: c5ec976f8a9858a7ba1f704b4e84d02e
+] 
+
+[complete proof the interval multiplication converges; other minor stuff
+robdockins@fastmail.fm**20140724015132
+ Ignore-this: bc717baa4c8f9ec31b821c5cfae5b499
+] 
+
+[further progress in realdom.v
+robdockins@fastmail.fm**20140723004023
+ Ignore-this: f33e18d22ae69c9b6209e28151d18017
+] 
+
+[unmessify rational_intervals patch
+robdockins@fastmail.fm**20140721123718
+ Ignore-this: 4a125b192a9964a508a1063845e9f160
+] 
+
+[messy updates to rational_intervals.v
+robdockins@fastmail.fm**20140721015810
+ Ignore-this: 858dac9c55426167c6f397a71ef3fda5
+] 
+
+[implicit arguments for "fixes"
+robdockins@fastmail.fm**20140721015739
+ Ignore-this: 229ecdd48265fc855319141e399bc522
+] 
+
+[metadata
+robdockins@fastmail.fm**20140714201441
+ Ignore-this: aa16faaf09c1c404bdc6eaf0d0c39912
+] 
+
+[further beautification
+robdockins@fastmail.fm**20140714200516
+ Ignore-this: 47d74c51d9fe130a5ac12706b1ddb1d4
+] 
+
+[start working on the recripricol function
+robdockins@fastmail.fm**20140714180055
+ Ignore-this: c7f93cea17f46daa78a1ea14e86dfcaf
+] 
+
+[tweaks to the lambda models
+robdockins@fastmail.fm**20140714180031
+ Ignore-this: 219788fe70f42f0f6e60176cab464f19
+] 
+
+[beauty edits in st_lam*
+robdockins@fastmail.fm**20140714180006
+ Ignore-this: a40aa7ae00ed27595ee04073918bd028
+] 
+
+[move stuff to rational_intervals.v / define real_mult and prove some properties
+robdockins@fastmail.fm**20140712053232
+ Ignore-this: 398c5c03aac9ff37526d4d7c9e1a82c0
+] 
+
+[finish correctness proof for interval multiplication
+robdockins@fastmail.fm**20140711191547
+ Ignore-this: c9ab138a0ca43fe0b133b208419bbcc4
+] 
+
+[break out facts about rational intervals
+robdockins@fastmail.fm**20140711012320
+ Ignore-this: b7fe6e9377629a89b5debe3019ae1aa
+] 
+
+[updates to ideal completion
+robdockins@fastmail.fm**20140707053800
+ Ignore-this: 90d1efbd0e5833d8c83f0df056d7a74c
+] 
+
+[a pile of additional properties in realdom.v
+robdockins@fastmail.fm**20140707053519
+ Ignore-this: 7edba1e72a1856f297ef11e698ed989f
+] 
+
+[some properties of converging prereals
+robdockins@fastmail.fm**20140706041401
+ Ignore-this: 273bfbb245302becd7ff402831827ffb
+] 
+
+[make realdom compile
+robdockins@fastmail.fm**20140630015439
+ Ignore-this: 8bfc8eaeed4a1596450b0bb9ddef9aaa
+] 
+
+[renaming
+robdockins@fastmail.fm**20140630011639
+ Ignore-this: a287e083af095790cbf2b48df7a58739
+] 
+
+[reorganize some code
+robdockins@fastmail.fm**20140630011446
+ Ignore-this: f1375b9e7ad822cb92f0c83d4001eddd
+] 
+
+[build the retract for realdom
+robdockins@fastmail.fm**20140630001245
+ Ignore-this: 4eb9da621588417d1b7b2fc980c7bf70
+] 
+
+[fill out lemmas about cPLT
+robdockins@fastmail.fm**20140630001140
+ Ignore-this: add9e45c14621e3d6328684098bf8461
+] 
+
+[more facts about cPLT
+robdockins@fastmail.fm**20140628073731
+ Ignore-this: 101a131ed114902924a1707eff7ebc70
+] 
+
+[continuous domains as retracts of bifinite domains
+robdockins@fastmail.fm**20140628035522
+ Ignore-this: 5e7c61d49cf8424412b0d94f5fcb5ee6
+] 
+
+[start implementing arithmetic operations in RealDom
+robdockins@fastmail.fm**20140620003249
+ Ignore-this: c28479b8a933cba263765bdddb112264
+] 
+
+[define the domain of rational intervals
+robdockins@fastmail.fm**20140619040809
+ Ignore-this: 6cbe1a9cc690e5a9d77f37ee299154b
+ this domain is useful for describing the semantics of exact real arithmetic.
+] 
+
+[show that every effective CUSL is Plotkin
+robdockins@fastmail.fm**20140619034433
+ Ignore-this: d529a4b1d6d698f79572caa805072394
+] 
+
+[fix notation for octothorpe
+robdockins@fastmail.fm**20140614222130
+ Ignore-this: 3dc815825f11ceaf4f4f53e4668e6382
+] 
+
+[fix for coq 8.4pl4
+robdockins@fastmail.fm**20140614222049
+ Ignore-this: 9745904845aaf54e5569df982fc93d65
+] 
+
+[move swelling lemma into finsets
+robdockins@fastmail.fm**20140504080535
+ Ignore-this: ffa560e9aa4e4f8b15a55c1f9b1da72e
+] 
+
+[documentation improvements and code motion
+robdockins@fastmail.fm**20140504070008
+ Ignore-this: da7847f82403990342732a8ce226315c
+] 
+
+[replace the old finprod
+robdockins@fastmail.fm**20140504005534
+ Ignore-this: 606cf44422f68d66c8d2d90049e67b93
+] 
+
+[remove the old finprod
+robdockins@fastmail.fm**20140504005137
+ Ignore-this: 38bd54e16c87d27bbede08496c37bfba
+] 
+
+[update st_lam_fix to use the new finprod
+robdockins@fastmail.fm**20140504003627
+ Ignore-this: 95d0a66e99ccead89bdfef09a1c8c109
+] 
+
+[update st_lam to use the new termmodel
+robdockins@fastmail.fm**20140503230854
+ Ignore-this: c3d6b2155674b414c5c2e14b85b13760
+] 
+
+[new version of finprod with a better term model
+robdockins@fastmail.fm**20140503222035
+ Ignore-this: db63e3a063bdb6f2f579644c7b63bd1b
+] 
+
+[a few more (hopefully final) lemmas about union
+robdockins@fastmail.fm**20140422223924
+ Ignore-this: 7b95c75abef9b0d45863b5e33d1c5a37
+] 
+
+[finish proofs about union
+robdockins@fastmail.fm**20140422065034
+ Ignore-this: 2929c3cdb013c028a48022b0293b2f18
+] 
+
+[powerdomain progress
+robdockins@fastmail.fm**20140421064325
+ Ignore-this: 592f9c6046f05a27897b460edb2efe10
+ Show that powerdomains are endofunctors on PLT.  Further, they are monads with
+ the 'singleton' and 'join' operations.  Also make some progress on the additive
+ portion of the theory, dealing with emptyset and union.
+] 
+
+[tweak makefile
+robdockins@fastmail.fm**20140420031337
+ Ignore-this: d5954b26f731bfed3d79cefacab322fb
+] 
+
+[show that semvalue is the weakest condition allowing beta-reduction of strict functions
+robdockins@fastmail.fm**20140420020447
+ Ignore-this: 16a7ed23f04879f1fb324bdac8a2ffaf
+] 
+
+[some additional operations relating to the PLT adjunction
+robdockins@fastmail.fm**20140420020351
+ Ignore-this: db8eec6e3f74cce3acb67d2b660b104e
+] 
+
+[finish building power domain fmap
+robdockins@fastmail.fm**20140420020217
+ Ignore-this: 556e1cb87576de36cb26f8add3a1b163
+] 
+
+[fix up st_lam.v
+robdockins@fastmail.fm**20140329015058
+ Ignore-this: 1c31d674b759fbd0cc74fb3125579f96
+] 
+
+[push some proofs into finprod
+robdockins@fastmail.fm**20140329000401
+ Ignore-this: 49070fdd951e49473e60d3cd0ec431c6
+] 
+
+[documentation and aesthetic changeds
+robdockins@fastmail.fm**20140327043141
+ Ignore-this: be27b24b78ea6af722a307117e59f5b3
+] 
+
+[finish the st_lam_fix example
+robdockins@fastmail.fm**20140322011153
+ Ignore-this: e702f564b6eab2f8c11ab16bcb62504b
+] 
+
+[clarafications re: countable choice; remove unfinished example from build order
+robdockins@fastmail.fm**20140321212852
+ Ignore-this: 2a9d5c79c05ba088e1815feab99a5f6c
+] 
+
+[break the "fixes" operator into a separate file and prove some facts about it
+robdockins@fastmail.fm**20140318013247
+ Ignore-this: 80c506cef0719a974a049a1f5870f676
+] 
+
+[minor fix to skiy.v
+robdockins@fastmail.fm**20140317054057
+ Ignore-this: ffef6fcaf5fa7f8cea80d2808caf4f4c
+] 
+
+[add the fixpoint operator; admit proofs
+robdockins@fastmail.fm**20140317044648
+ Ignore-this: 97ca18e980cdf46a9b40c8252badef14
+] 
+
+[remove the evaluation case for variables
+robdockins@fastmail.fm**20140317032932
+ Ignore-this: e46d634e735e5b21a18518a48777168d
+] 
+
+[start on STLC with fixpoints -- but without fixpoints for now 
+robdockins@fastmail.fm**20140317031953
+ Ignore-this: 3458bc18c73d967bef58418bc73e06cb
+] 
+
+[add the eliminator for booleans to st_lam; other additional utility lemmas
+robdockins@fastmail.fm**20140317031753
+ Ignore-this: 369dd375755cbd9ae5e3c969f3ef6ec
+] 
+
+[some minor code motion
+robdockins@fastmail.fm**20140228064927
+ Ignore-this: 804828472ddb0c5fafc72460fce8387b
+] 
+
+[plug final holes in st_lam and add to build order
+robdockins@fastmail.fm**20140228044729
+ Ignore-this: 3edc7f36bfa97775ba33ffa27c80df59
+] 
+
+[reduce st_lam.v to facts I believe about fresh variables
+robdockins@fastmail.fm**20140228010832
+ Ignore-this: bde3e73291ddd32337d6fb999e4b1c02
+] 
+
+[fix breakages
+robdockins@fastmail.fm**20140226073930
+ Ignore-this: 9be54f5255f8ed9d53a79260e9bdf565
+] 
+
+[more work on lambdas
+robdockins@fastmail.fm**20140226043753
+ Ignore-this: 7f7452670221e2643067a3c7cc180998
+] 
+
+[use new finprod implementation
+robdockins@fastmail.fm**20140226043700
+ Ignore-this: c9e05df5fcfd31254ed7318fe693490c
+] 
+
+[remove old finprod 
+robdockins@fastmail.fm**20140226043642
+ Ignore-this: 2705703a2c782da21a152fbb27c8a972
+] 
+
+[rearrange the interfact to finprod
+robdockins@fastmail.fm**20140226043541
+ Ignore-this: c44d7c478948f42b188eb8d06469abbf
+] 
+
+[fill remaining holes in finprod2
+robdockins@fastmail.fm**20140225205242
+ Ignore-this: 1eeb9b8beef92790c28918292f2a9cf4
+] 
+
+[rework some stuff dealing with semidecidable predicates
+robdockins@fastmail.fm**20140225092149
+ Ignore-this: 32b5ccb2927e08979ea92b9ef67c40f4
+] 
+
+[lots of work on alpha-congrunce in lambdas
+robdockins@fastmail.fm**20140225035601
+ Ignore-this: fbbec9dac4cb328ff4e0b25df646e0c7
+] 
+
+[terminate is universal in PLT
+robdockins@fastmail.fm**20140225035538
+ Ignore-this: abc6cd1a60578c435bf9ca596d8d0922
+] 
+
+[new attack on nominal finite products
+robdockins@fastmail.fm**20140225035516
+ Ignore-this: 3875e713acc6aa5193696612f3ede76d
+] 
+
+[push forward a little on lambdas
+robdockins@fastmail.fm**20140221095249
+ Ignore-this: c690a1b03075702e3fd84aac7e268211
+] 
+
+[update finprod for various changes
+robdockins@fastmail.fm**20140221095230
+ Ignore-this: a6d787930ed356ae2b0a003af1f4d44
+] 
+
+[better discrete cases lemma
+robdockins@fastmail.fm**20140219051301
+ Ignore-this: f0ec88e8207257e7657ced933cf687e7
+] 
+
+[start working on simply-typed lambdas
+robdockins@fastmail.fm**20140219051238
+ Ignore-this: 69bea345376ea39cd1addc0849a43077
+] 
+
+[more messing about with advanced category theory stuff
+robdockins@fastmail.fm**20140211095003
+ Ignore-this: 9cd3c9d961349e8797f109f716c5f678
+] 
+
+[minor rearrangements and code motion
+robdockins@fastmail.fm**20140211041724
+ Ignore-this: 642ad6f1395fde7ecd81e5a905fd5428
+] 
+
+[some basic bicategory theory
+robdockins@fastmail.fm**20140210083634
+ Ignore-this: f47a898fa045a397d3ee70e1512b8baa
+] 
+
+[even more notation futzing
+robdockins@fastmail.fm**20140209072416
+ Ignore-this: d2061652cb3e80f6994f567a9e677b32
+] 
+
+[additional notational futzing
+robdockins@fastmail.fm**20140209043308
+ Ignore-this: ac42cbbc94df227e6d5e70b96ae65fd3
+] 
+
+[futz around with notations, various other cleanup activities
+robdockins@fastmail.fm**20140209005551
+ Ignore-this: 3f41a52650aadd956ac490b62e59c1c3
+] 
+
+[complete adequacy for SKI+Y
+robdockins@fastmail.fm**20140206050414
+ Ignore-this: f730587ac7a42f3e35740976a1439f2e
+] 
+
+[minor changes in cpo
+robdockins@fastmail.fm**20140206014745
+ Ignore-this: 95244704faf1e6c336d62dc7912f9022
+] 
+
+[push through most of SKI+Y adequacy
+robdockins@fastmail.fm**20140205214805
+ Ignore-this: dc998ef45f2e919e9373bfa21a5ef8c7
+] 
+
+[major simplification of the adequacy proof for SKI
+robdockins@fastmail.fm**20140205185605
+ Ignore-this: f1f0dc46274db05f3393038dfe2775e2
+] 
+
+[push forward on SKI+Y
+robdockins@fastmail.fm**20140205044216
+ Ignore-this: daf255aa940b42c1c68ba947a356370d
+] 
+
+[continue futzing with the LR statement
+robdockins@fastmail.fm**20140203055601
+ Ignore-this: f5ef9f06d3b1a11d76317b52cec691ab
+] 
+
+[start pushing on adequacy for SKI+Y
+robdockins@fastmail.fm**20140202085948
+ Ignore-this: 956844809340fad0c13c19e9fa729b5c
+] 
+
+[mostly finish soundness for SKI+Y
+robdockins@fastmail.fm**20140202060633
+ Ignore-this: 4c75fd9eeefa1d6dad6866662abea0fd
+] 
+
+[start working on a CCL example
+robdockins@fastmail.fm**20140202020748
+ Ignore-this: 44c5d7854cc19b0f90414c2be6b3df68
+] 
+
+[make id(A) a parsing-only notation
+robdockins@fastmail.fm**20140202020724
+ Ignore-this: 68f51f754c0b89e2e815da47b901e4b1
+] 
+
+[the PLT adjunction is strong monodial
+robdockins@fastmail.fm**20140202020637
+ Ignore-this: 7b29b9a6a5e8efa07440c528ec12d7bd
+] 
+
+[fix my broken version of lfp and fixup proofs
+robdockins@fastmail.fm**20140202020615
+ Ignore-this: 3ac283481318622cbf38378e815a4f09
+] 
+
+[more work on SKI + Y
+robdockins@fastmail.fm**20140202020516
+ Ignore-this: d1f63e2ef610c6f93d03806c5426cfa5
+] 
+
+[start work on SKI + Y
+robdockins@fastmail.fm**20140201085039
+ Ignore-this: fb7a405830cf90526cddd8ce37f4da40
+] 
+
+[doc corrections
+robdockins@fastmail.fm**20140130015908
+ Ignore-this: bca4c04267bfdac8cb202651a0960d92
+] 
+
+[lots of additional inline documentation
+robdockins@fastmail.fm**20140129234834
+ Ignore-this: ab2c59add5514f44a898de1f0eece98b
+] 
+
+[powerdomains form continuous functors in EMBED
+robdockins@fastmail.fm**20140126234115
+ Ignore-this: d2ee08902f0bdb52efd7f7ce2c594469
+] 
+
+[complete the powerdomain constructions; build some operations
+robdockins@fastmail.fm**20140125225202
+ Ignore-this: 9c8f2632df05e84fc3794a338ff8720d
+] 
+
+[construct the basic powerdomains--still some holes left 
+robdockins@fastmail.fm**20140125064541
+ Ignore-this: c3206d2e1e925096b3e9ff49afacef2f
+] 
+
+[generalize the lfp construction to a generic chain_sup operation
+robdockins@fastmail.fm**20140124183103
+ Ignore-this: 4cc2c1011b9f79365dcb7c76784fbfa6
+] 
+
+[update makefile
+robdockins@fastmail.fm**20140124073734
+ Ignore-this: a0b7db8383262caa314c21b99e146222
+] 
+
+[new file for recursive lambda domains
+robdockins@fastmail.fm**20140124070023
+ Ignore-this: 300c02b4da83b6ebd734aa2ccb21cd2d
+] 
+
+[more lemmas about antistrict homs
+robdockins@fastmail.fm**20140124065953
+ Ignore-this: 483c7b350dc3cab59c8ff50e1ac73b8c
+] 
+
+[fix breakage related to implicit arguments
+robdockins@fastmail.fm**20140124065805
+ Ignore-this: 561693d3280851299c6a49a2a34546b3
+] 
+
+[notation tweaks in cpo.v
+robdockins@fastmail.fm**20140124053800
+ Ignore-this: 83e92d8c14568448074a940ceafbe2c9
+] 
+
+[add if/then/else to the SKI system
+robdockins@fastmail.fm**20140124023630
+ Ignore-this: 37a9737932a05393a6338380226ca346
+] 
+
+[case analysis for finite types
+robdockins@fastmail.fm**20140124012505
+ Ignore-this: 6ec1076b2a74f5832501a105a28a6dba
+] 
+
+[finish adequacy proof for SKI
+robdockins@fastmail.fm**20140123211322
+ Ignore-this: 1fe3e626e33431c27e2aa186b3bf91d2
+] 
+
+[additional lemmas about domains
+robdockins@fastmail.fm**20140123090037
+ Ignore-this: fcad2dd816f805b8b5e7d1be3df60db8
+] 
+
+[most of a proof of adequacy for SKI
+robdockins@fastmail.fm**20140123085839
+ Ignore-this: d1595c02a6387297018e7f316a3e751
+] 
+
+[more work on finite products
+robdockins@fastmail.fm**20140121061158
+ Ignore-this: c2f8212e041478104dd4c81c225b42d5
+] 
+
+[begin work on a more flexible "finprod" domain
+robdockins@fastmail.fm**20140119021653
+ Ignore-this: 249718a2c31964733171b21c84d2effb
+] 
+
+[mess with implicit arguments in categories.v
+robdockins@fastmail.fm**20140113041450
+ Ignore-this: 314cad9207f706e949bd686aaa5c5e1b
+] 
+
+[products for CPO, uniformity of lfp
+robdockins@fastmail.fm**20140113041421
+ Ignore-this: e533abe995e634c732a35e71d66ddb6a
+] 
+
+[define the LFP in pointed CPOs, prove the Scott induction principle
+robdockins@fastmail.fm**20140112231843
+ Ignore-this: 2014174b1c6914bef376d614f34d073f
+] 
+
+[build the forgetful functor from EMBED to PLT
+robdockins@fastmail.fm**20140110014909
+ Ignore-this: 1dacbfc0383e48f4ab35fe0a5fd11cec
+] 
+
+[notation changes, prove sum_cases and curry preserve order and equality
+robdockins@fastmail.fm**20140110014820
+ Ignore-this: d1c6a1d0346a9eba14f3529ac30b5e2f
+] 
+
+[prove addl facts about pairs, tweak implicit arguments
+robdockins@fastmail.fm**20140110010319
+ Ignore-this: 9f0af8abc268b2b22d8b5450d6a4136
+] 
+
+[make 'ob' a coercion
+robdockins@fastmail.fm**20140110010204
+ Ignore-this: 467c0b0a8b086a7f44bf98875a4380d6
+] 
+
+[copyright notices
+robdockins@fastmail.fm**20140106232333
+ Ignore-this: f59bafa0ec99e259bd9b4319f2cdbc67
+] 
+
+[add ord_dec coercion
+robdockins@fastmail.fm**20140104052750
+ Ignore-this: 4ed1cacfd27979f0fe518862be5ac27c
+] 
+
+[define the model for CBV lambda calculus
+robdockins@fastmail.fm**20140104050626
+ Ignore-this: 88ca796d4697bfebb044d3fae27d6129
+] 
+
+[proof a fixpoint lemma for unpointed domains
+robdockins@fastmail.fm**20140103231818
+ Ignore-this: 4939eb02d09b6a4eecf145c887c64393
+] 
+
+[prove that the adjoint functors between PLT and PPLT extend to continuous functors in EMBED
+robdockins@fastmail.fm**20140103000915
+ Ignore-this: 54da0101f581731ebe512ed514e0603e
+] 
+
+[notation changes for PLT
+robdockins@fastmail.fm**20140102234446
+ Ignore-this: ad1f82f22d1bf0e057f11c3508a81716
+] 
+
+[move embeddings into their own file; pull TPLT and PPLT into profinite.v
+robdockins@fastmail.fm**20140102234424
+ Ignore-this: 3704996af47ae32415ba3e539d67cf5c
+] 
+
+[Show that PLT is cocartesian; rearrange proof that EMBED(true) is terminated
+robdockins@fastmail.fm**20140102213805
+ Ignore-this: 3470df6910e7a3e4bda478c0c6ecea62
+] 
+
+[remove unnecessary "inh" hypothesis in the definition of Plotkin order; fixup the fallout
+robdockins@fastmail.fm**20140102213646
+ Ignore-this: b6a5ad59296f938b377d71852120d48b
+] 
+
+[move proofs that empty and unit preorders are effective plotkin
+robdockins@fastmail.fm**20140102205530
+ Ignore-this: 7324843510fd938d356aa82003c9ec68
+] 
+
+[make epi/mono/iso morphisms into categories
+robdockins@fastmail.fm**20131228082442
+ Ignore-this: ee75a2b6eb1f3d6fa47f17d6734e5015
+] 
+
+[define the cocartesian and distributive categories
+robdockins@fastmail.fm**20131226001612
+ Ignore-this: 11e9d8a88bef42bcb800b31d85d28d16
+] 
+
+[remove uses of maximally implict arguments
+robdockins@fastmail.fm**20131226001536
+ Ignore-this: c0d93a5398aea58cbcc4fbbca3b59b17
+] 
+
+[fixpoints and binary sums for NOMINAL
+robdockins@fastmail.fm**20131121092931
+ Ignore-this: 8a660dfe2ab16a8208ae559dcf2b7ed0
+] 
+
+[modify bilimit.v to use the general construction from cont_functors.v
+robdockins@fastmail.fm**20131120075848
+ Ignore-this: 17ea36107ade1646eab5c99aec3561a9
+] 
+
+[generic fixpoint construction for categories with initial objects and directed colimits
+robdockins@fastmail.fm**20131119092522
+ Ignore-this: 25674dff855a1cecdb4ee919f8bf3a5d
+] 
+
+[remove some irritating unit parameters, fix doc typos
+robdockins@fastmail.fm**20131118093204
+ Ignore-this: 38342d58567d8a13471620d5b7c2b7d4
+] 
+
+[improvements to categories; complete some constructions in nominal
+robdockins@fastmail.fm**20131118085737
+ Ignore-this: e58cb49a01d0210dabdb021250910adb
+] 
+
+[build fixes
+robdockins@fastmail.fm**20131113004305
+ Ignore-this: 5abffcd1d6b44f816749c5e0cfd5b6e9
+] 
+
+[Documentation additions
+robdockins@fastmail.fm**20131113004254
+ Ignore-this: 79a913d3a8652866f3fdc64891f6304d
+] 
+
+[lots of inline documentation additions
+robdockins@fastmail.fm**20131112192736
+ Ignore-this: 6aa38112c10ceed3bf43e35dbda98312
+] 
+
+[update makefiles
+robdockins@fastmail.fm**20131112192706
+ Ignore-this: d834beaa532cdf994cfa0a0b5a562e4f
+] 
+
+[continuous functors for binary sum and products
+robdockins@fastmail.fm**20131112192605
+ Ignore-this: 61520e6e315df909465a02f854816366
+] 
+
+[add the category of nominal types
+robdockins@fastmail.fm**20131112192520
+ Ignore-this: f0351c5eb0bdacdfe192a6863d9c0bc6
+] 
+
+[split the proof that expF is a continuous functor into a separate file; rearrange some defintions
+robdockins@fastmail.fm**20130924013328
+ Ignore-this: 4eacee37bb6474d1bdfffe416b98b4c1
+] 
+
+[rearrange definitions of continuous functors. Prove enough plumbing to build the model: D = D->D
+robdockins@fastmail.fm**20130924002837
+ Ignore-this: a66f9e8833601e244048b70e8bfaab96
+] 
+
+[show that the function space is a continuous functor; other junk
+robdockins@fastmail.fm**20130923060521
+ Ignore-this: d8f406450688c633ebc1fe1eb0343c91
+] 
+
+[some name changes, other cosmetic fixes
+robdockins@fastmail.fm**20130909043234
+ Ignore-this: cdd24d1c96a34fb3573c1806153df9fb
+] 
+
+[additional cosmetic changes and rearrangements
+robdockins@fastmail.fm**20130909020137
+ Ignore-this: 77d28bc9452f6c93915194033118dab7
+] 
+
+[reorganize profinite code
+robdockins@fastmail.fm**20130909011437
+ Ignore-this: 8511bf92ca6998ff8c69d5537624bdb8
+] 
+
+[cosmetic changes
+robdockins@fastmail.fm**20130908183909
+ Ignore-this: e19039701e58fd26ca4eab79d7b49d14
+] 
+
+[complete the bilimit construction, show how to take fixpoints of continuous functors
+robdockins@fastmail.fm**20130908175228
+ Ignore-this: 82feab8fdc0c944f13d91605c6a8e571
+] 
+
+[find a MUCH easier path to a bilimit construction
+robdockins@fastmail.fm**20130907012151
+ Ignore-this: fcc72ad140b045ef37e4b03ad38a8fb0
+] 
+
+[lots of progress, mostly on defining bilimits
+robdockins@fastmail.fm**20130905204959
+ Ignore-this: abf4bcf03a49fa009f9fb2200ee3abf2
+] 
+
+[start working on the theory of finite preorders, which form a basis for plokin orders
+robdockins@fastmail.fm**20130812054451
+ Ignore-this: 5be36257a8fdf486bcc31f587d93c457
+] 
+
+[parameterize plotkin orders, build category PPLT
+robdockins@fastmail.fm**20130811063623
+ Ignore-this: 3f273841bc72098acee0fd618627dbd5
+] 
+
+[complete the details showing PLT is cartesian closed
+robdockins@fastmail.fm**20130809230336
+ Ignore-this: 13fd1b5a8172dd263cf655421f7584f7
+] 
+
+[add files missed in the first import
+robdockins@fastmail.fm**20130809080742
+ Ignore-this: 6b59cce866a486d70559f7c80fe99053
+] 
+
+[initial import of development
+robdockins@fastmail.fm**20130809080409
+ Ignore-this: 44cb5a0df2f1643d289f07dcd4227cbf
+ First major steps toward a fully effective and usable formalized
+ domain theory.  We formalize the plotkin preorders and show that
+ they form a cartesian closed category.
+] 
diff --git a/pkgs/development/coq-modules/domains/default.nix b/pkgs/development/coq-modules/domains/default.nix
new file mode 100644
index 00000000000..975260c839b
--- /dev/null
+++ b/pkgs/development/coq-modules/domains/default.nix
@@ -0,0 +1,26 @@
+{stdenv, fetchdarcs, coq}:
+
+stdenv.mkDerivation rec {
+
+  name = "coq-domains-${coq.coq-version}-${version}";
+  version = "ce1a9806";
+
+  src = fetchdarcs {
+    url = http://hub.darcs.net/rdockins/domains;
+    context = ./darcs_context;
+    sha256 = "0zdqiw08b453i8gdxwbk7nia2dv2r3pncmxsvgr0kva7f3dn1rnc";
+  };
+
+  buildInputs = [ coq.ocaml coq.camlp5 ];
+  propagatedBuildInputs = [ coq ];
+
+  installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}/";
+
+  meta = with stdenv.lib; {
+    homepage = http://rwd.rdockins.name/domains/;
+    description = "A Coq library for domain theory";
+    maintainers = with maintainers; [ jwiegley ];
+    platforms = coq.meta.platforms;
+  };
+
+}
diff --git a/pkgs/development/coq-modules/heq/default.nix b/pkgs/development/coq-modules/heq/default.nix
new file mode 100644
index 00000000000..5f31fe6dc34
--- /dev/null
+++ b/pkgs/development/coq-modules/heq/default.nix
@@ -0,0 +1,27 @@
+{stdenv, fetchurl, coq, unzip}:
+
+stdenv.mkDerivation rec {
+
+  name = "coq-heq-${coq.coq-version}-${version}";
+  version = "0.92";
+
+  src = fetchurl {
+    url = "https://www.mpi-sws.org/~gil/Heq/download/Heq-${version}.zip";
+    sha256 = "03y71c4qs6cmy3s2hjs05g7pcgk9sqma6flj15394yyxbvr9is1p";
+  };
+
+  buildInputs = [ coq.ocaml coq.camlp5 unzip ];
+  propagatedBuildInputs = [ coq ];
+
+  preBuild = "cd src";
+
+  installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}";
+
+  meta = with stdenv.lib; {
+    homepage = https://www.mpi-sws.org/~gil/Heq/;
+    description = "Heq : a Coq library for Heterogeneous Equality";
+    maintainers = with maintainers; [ jwiegley ];
+    platforms = coq.meta.platforms;
+  };
+
+}
diff --git a/pkgs/development/coq-modules/mathcomp/default.nix b/pkgs/development/coq-modules/mathcomp/default.nix
index ca8bd6481ef..02d06edd538 100644
--- a/pkgs/development/coq-modules/mathcomp/default.nix
+++ b/pkgs/development/coq-modules/mathcomp/default.nix
@@ -11,12 +11,14 @@ stdenv.mkDerivation {
 
   propagatedBuildInputs = [ coq ssreflect ];
 
+  enableParallelBuilding = true;
+
   installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}/";
 
   meta = with stdenv.lib; {
     homepage = http://ssr.msr-inria.inria.fr/;
     license = licenses.cecill-b;
-    maintainers = [ maintainers.vbgl ];
+    maintainers = [ maintainers.vbgl maintainers.jwiegley ];
     platforms = coq.meta.platforms;
     hydraPlatforms = [];
   };
diff --git a/pkgs/development/coq-modules/paco/default.nix b/pkgs/development/coq-modules/paco/default.nix
new file mode 100644
index 00000000000..c885d14aa3f
--- /dev/null
+++ b/pkgs/development/coq-modules/paco/default.nix
@@ -0,0 +1,31 @@
+{stdenv, fetchurl, coq, unzip}:
+
+stdenv.mkDerivation rec {
+
+  name = "coq-paco-${coq.coq-version}-${version}";
+  version = "1.2.7";
+
+  src = fetchurl {
+    url = "http://plv.mpi-sws.org/paco/paco-${version}.zip";
+    sha256 = "010fs74c0cmb9sz5dmrgzg4pmb2mgwia4gm0g9l7j2fq5xxcschb";
+  };
+
+  buildInputs = [ coq.ocaml coq.camlp5 unzip ];
+  propagatedBuildInputs = [ coq ];
+
+  preBuild = "cd src";
+
+  installPhase = ''
+    COQLIB=$out/lib/coq/${coq.coq-version}/
+    mkdir -p $COQLIB/user-contrib/Paco
+    cp -pR *.vo $COQLIB/user-contrib/Paco
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://plv.mpi-sws.org/paco/;
+    description = "Paco is a Coq library implementing parameterized coinduction";
+    maintainers = with maintainers; [ jwiegley ];
+    platforms = coq.meta.platforms;
+  };
+
+}
diff --git a/pkgs/development/coq-modules/ssreflect/default.nix b/pkgs/development/coq-modules/ssreflect/default.nix
index 912ff7071f8..75112ec9663 100644
--- a/pkgs/development/coq-modules/ssreflect/default.nix
+++ b/pkgs/development/coq-modules/ssreflect/default.nix
@@ -14,12 +14,26 @@ stdenv.mkDerivation {
   buildInputs = [ coq.ocaml coq.camlp5 ];
   propagatedBuildInputs = [ coq ];
 
+  enableParallelBuilding = true;
+
+  patchPhase = ''
+    # Permit building of the ssrcoq statically-bound executable
+    sed -i 's/^#-custom/-custom/' Make
+    sed -i 's/^#SSRCOQ/SSRCOQ/' Make
+  '';
+
   installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}/";
 
+  postInstall = ''
+    mkdir -p $out/bin
+    cp -p bin/ssrcoq $out/bin
+    cp -p bin/ssrcoq.byte $out/bin
+  '';
+
   meta = with stdenv.lib; {
     homepage = http://ssr.msr-inria.inria.fr/;
     license = licenses.cecill-b;
-    maintainers = with maintainers; [ vbgl ];
+    maintainers = with maintainers; [ vbgl jwiegley ];
     platforms = coq.meta.platforms;
   };
 
diff --git a/pkgs/development/coq-modules/tlc/default.nix b/pkgs/development/coq-modules/tlc/default.nix
new file mode 100644
index 00000000000..e47ffbdd456
--- /dev/null
+++ b/pkgs/development/coq-modules/tlc/default.nix
@@ -0,0 +1,29 @@
+{stdenv, fetchsvn, coq}:
+
+stdenv.mkDerivation {
+
+  name = "coq-tlc-${coq.coq-version}";
+
+  src = fetchsvn {
+    url = svn://scm.gforge.inria.fr/svn/tlc/branches/v3.1;
+    rev = 240;
+    sha256 = "0mjnb6n9wzb13y2ix9cvd6irzd9d2gj8dcm2x71wgan0jcskxadm";
+  };
+
+  buildInputs = [ coq.ocaml coq.camlp5 ];
+  propagatedBuildInputs = [ coq ];
+
+  installPhase = ''
+    COQLIB=$out/lib/coq/${coq.coq-version}/
+    mkdir -p $COQLIB/user-contrib/Tlc
+    cp -p *.vo $COQLIB/user-contrib/Tlc
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://www.chargueraud.org/softs/tlc/;
+    description = "TLC is a general purpose Coq library that provides an alternative to Coq's standard library";
+    maintainers = with maintainers; [ jwiegley ];
+    platforms = coq.meta.platforms;
+  };
+
+}
diff --git a/pkgs/development/coq-modules/ynot/default.nix b/pkgs/development/coq-modules/ynot/default.nix
new file mode 100644
index 00000000000..555945068b1
--- /dev/null
+++ b/pkgs/development/coq-modules/ynot/default.nix
@@ -0,0 +1,32 @@
+{stdenv, fetchgit, coq}:
+
+stdenv.mkDerivation rec {
+
+  name = "coq-ynot-${coq.coq-version}-${version}";
+  version = "ce1a9806";
+
+  src = fetchgit {
+    url = git://github.com/Ptival/ynot.git;
+    rev = "ce1a9806c26ffc6e7def41da50a9aac1433cb2f8";
+    sha256 = "1pcmcl5zamiimkcg1xvynxnfbv439y02vg1mnz79hqq9mnjyfnpw";
+  };
+
+  buildInputs = [ coq.ocaml coq.camlp5 ];
+  propagatedBuildInputs = [ coq ];
+
+  preBuild = "cd src";
+
+  installPhase = ''
+    COQLIB=$out/lib/coq/${coq.coq-version}/
+    mkdir -p $COQLIB/user-contrib/Ynot
+    cp -pR coq/*.vo $COQLIB/user-contrib/Ynot
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://ynot.cs.harvard.edu/;
+    description = "Ynot is a library for writing and verifying imperative programs";
+    maintainers = with maintainers; [ jwiegley ];
+    platforms = coq.meta.platforms;
+  };
+
+}
diff --git a/pkgs/development/interpreters/clisp/2.44.1.nix b/pkgs/development/interpreters/clisp/2.44.1.nix
index 521933b0ed1..66f53831374 100644
--- a/pkgs/development/interpreters/clisp/2.44.1.nix
+++ b/pkgs/development/interpreters/clisp/2.44.1.nix
@@ -53,5 +53,6 @@ stdenv.mkDerivation rec {
     homepage = http://clisp.cons.org;
     maintainers = [stdenv.lib.maintainers.raskin];
     platforms = stdenv.lib.platforms.linux;
+    branch = "2.44";
   };
 }
diff --git a/pkgs/development/interpreters/perl/5.20/default.nix b/pkgs/development/interpreters/perl/5.20/default.nix
index 45eb8993b6f..66a9ca597a4 100644
--- a/pkgs/development/interpreters/perl/5.20/default.nix
+++ b/pkgs/development/interpreters/perl/5.20/default.nix
@@ -23,11 +23,11 @@ with {
 };
 
 stdenv.mkDerivation rec {
-  name = "perl-5.20.0";
+  name = "perl-5.20.1";
 
   src = fetchurl {
-    url = "mirror://cpan/src/${name}.tar.gz";
-    sha256 = "00ndpgw4bjing9gy2y6jvs3q46mv2ll6zrxjkhpr12fcdsnji32f";
+    url = "mirror://cpan/authors/id/S/SH/SHAY/${name}.tar.gz";
+    sha256 = "1dfl4v5fngnkd1c4278gcdjgcapsw7laxq0b34nxrx76z4805wgy";
   };
 
   patches =
diff --git a/pkgs/development/interpreters/php/5.3.nix b/pkgs/development/interpreters/php/5.3.nix
index c1d02064fe1..4de87f20d8e 100644
--- a/pkgs/development/interpreters/php/5.3.nix
+++ b/pkgs/development/interpreters/php/5.3.nix
@@ -10,7 +10,7 @@ in
 
 composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
 
-  version = "5.3.28";
+  version = "5.3.29";
 
   name = "php-${version}";
 
@@ -228,7 +228,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
 
   src = fetchurl {
     url = "http://www.php.net/distributions/php-${version}.tar.bz2";
-    sha256 = "04w53nn6qacpkd1x381mzd41kqh6k8kjnbyg44yvnkqwcl69db0c";
+    sha256 = "1480pfp4391byqzmvdmbxkdkqwdzhdylj63sfzrcgadjf9lwzqf4";
     name = "php-${version}.tar.bz2";
   };
 
diff --git a/pkgs/development/interpreters/php/5.4.nix b/pkgs/development/interpreters/php/5.4.nix
index 4f378ddff4f..4d70ba0e358 100644
--- a/pkgs/development/interpreters/php/5.4.nix
+++ b/pkgs/development/interpreters/php/5.4.nix
@@ -9,7 +9,7 @@ in
 
 composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
 
-  version = "5.4.32";
+  version = "5.4.33";
 
   name = "php-${version}";
 
@@ -249,7 +249,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
 
   src = fetchurl {
     url = "http://www.php.net/distributions/php-${version}.tar.bz2";
-    sha256 = "09n8lxnc5p2xfwk0ql2lh183h78hha1axhrdsa6g3650d5v73l16";
+    sha256 = "1d8bwiw24k5p34fzkdqv8j8ndq50k2ahv66kdj4bhx2yhg8b4x8s";
   };
 
   meta = {
diff --git a/pkgs/development/interpreters/pure/default.nix b/pkgs/development/interpreters/pure/default.nix
index 84ae789150d..c2cd71b999e 100644
--- a/pkgs/development/interpreters/pure/default.nix
+++ b/pkgs/development/interpreters/pure/default.nix
@@ -1,52 +1,33 @@
-x@{builderDefsPackage
-  , llvm, gmp, mpfr, readline, bison, flex, makeWrapper
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
+{ lib, stdenv, fetchurl, makeWrapper,
+  llvm, gmp, mpfr, readline, bison, flex }:
 
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="pure";
-    project="pure-lang";
-    version="0.58";
-    name="${baseName}-${version}";
-    extension="tar.gz";
+stdenv.mkDerivation rec {
+  baseName="pure";
+  project="pure-lang";
+  version="0.62";
+  name="${baseName}-${version}";
+  extension="tar.gz";
+
+  src = fetchurl {
     url="https://bitbucket.org/purelang/${project}/downloads/${name}.${extension}";
-    hash="180ygv8nmfy8v4696km8jdahn5cnr454sc8i1av7s6z4ss7mrxmi";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
+    sha256="77df64e8154ef6f8fac66f8bcc471dc8f994862d1ee77b7c98003607757a013b";
   };
 
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doConfigure" "doMakeInstall" "doWrap"];
+  buildInputs = [ bison flex makeWrapper ];
+  propagatedBuildInputs = [ llvm gmp mpfr readline ];
 
-  doWrap = a.makeManyWrappers ''$out/bin/pure'' ''--prefix LD_LIBRARY_PATH : "${llvm}/lib"'';
+  postInstall = ''
+    wrapProgram $out/bin/pure --prefix LD_LIBRARY_PATH : ${llvm}/lib
+  '';
 
   meta = {
-    description = "A purely functional programming language based on term rewriting";
-    maintainers = with a.lib.maintainers;
+    description = "A modern-style functional programming language based on term rewriting";
+    maintainers = with lib.maintainers;
     [
       raskin
     ];
-    platforms = with a.lib.platforms;
+    platforms = with lib.platforms;
       linux;
-    license = a.lib.licenses.gpl3Plus;
+    license = lib.licenses.gpl3Plus;
   };
-  passthru = {
-    updateInfo = {
-      downloadPage = "https://bitbucket.org/purelang/pure-lang/downloads";
-    };
-  };
-}) x
-
+}
\ No newline at end of file
diff --git a/pkgs/development/interpreters/pypy/2.4/default.nix b/pkgs/development/interpreters/pypy/2.4/default.nix
index 8f9647c2134..b8065ad047e 100644
--- a/pkgs/development/interpreters/pypy/2.4/default.nix
+++ b/pkgs/development/interpreters/pypy/2.4/default.nix
@@ -71,7 +71,8 @@ let
        # disable test_multiprocessing due to transient errors
        # disable test_os because test_urandom_failure fails
        # disable test_urllib2net and test_urllibnet because it requires networking (example.com)
-      ./pypy-c ./pypy/test_all.py --pypy=./pypy-c -k 'not (test_sqlite or test_urllib2net or test_urllibnet or test_socket or test_os or test_shutil or test_mhlib or test_multiprocessing)' lib-python
+       # disable test_zipfile64 because it randomly timeouts
+      ./pypy-c ./pypy/test_all.py --pypy=./pypy-c -k 'not (test_sqlite or test_urllib2net or test_urllibnet or test_socket or test_os or test_shutil or test_mhlib or test_multiprocessing or test_zipfile64)' lib-python
     '';
 
     installPhase = ''
diff --git a/pkgs/development/interpreters/python/2.6/default.nix b/pkgs/development/interpreters/python/2.6/default.nix
index 64e21b75569..cbdb55f4cc3 100644
--- a/pkgs/development/interpreters/python/2.6/default.nix
+++ b/pkgs/development/interpreters/python/2.6/default.nix
@@ -1,13 +1,11 @@
-{ stdenv, fetchurl, zlib ? null, zlibSupport ? true, bzip2
-, sqlite, tcl, tk, x11, openssl, readline, db, ncurses, gdbm
-}:
+{ stdenv, fetchurl, zlib ? null, zlibSupport ? true, bzip2, includeModules ? false
+, sqlite, tcl, tk, x11, openssl, readline, db, ncurses, gdbm}:
 
 assert zlibSupport -> zlib != null;
 
 with stdenv.lib;
 
 let
-
   majorVersion = "2.6";
   version = "${majorVersion}.9";
 
@@ -27,37 +25,42 @@ let
       # the Nix store to 1.  So treat that as a special case.
       ./nix-store-mtime.patch
     ];
+    
+  preConfigure = ''
+      # Purity.
+      for i in /usr /sw /opt /pkg; do
+        substituteInPlace ./setup.py --replace $i /no-such-path
+      done
+    '' + optionalString (stdenv ? gcc && stdenv.gcc.libc != null) ''
+      for i in Lib/plat-*/regen; do
+        substituteInPlace $i --replace /usr/include/ ${stdenv.gcc.libc}/include/
+      done
+    '' + optionalString stdenv.isCygwin ''
+      # On Cygwin, `make install' tries to read this Makefile.
+      mkdir -p $out/lib/python${majorVersion}/config
+      touch $out/lib/python${majorVersion}/config/Makefile
+      mkdir -p $out/include/python${majorVersion}
+      touch $out/include/python${majorVersion}/pyconfig.h
+    '';
 
   buildInputs =
     optional (stdenv ? gcc && stdenv.gcc.libc != null) stdenv.gcc.libc ++
-    [ bzip2 openssl ]
+    [ bzip2 openssl ]++ optionals includeModules [ db openssl ncurses gdbm readline x11 tcl tk sqlite ]
     ++ optional zlibSupport zlib;
 
 
   # Build the basic Python interpreter without modules that have
   # external dependencies.
   python = stdenv.mkDerivation {
-    name = "python-${version}";
+    name = "python${if includeModules then "" else "-minimal"}-${version}";
 
-    inherit majorVersion version src patches buildInputs;
+    inherit majorVersion version src patches buildInputs preConfigure;
 
     C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs);
     LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs);
 
     configureFlags = "--enable-shared --with-threads --enable-unicode";
 
-    preConfigure =
-      ''
-        # Purity.
-        for i in /usr /sw /opt /pkg; do
-          substituteInPlace ./setup.py --replace $i /no-such-path
-        done
-      '' + optionalString (stdenv ? gcc && stdenv.gcc.libc != null) ''
-        for i in Lib/plat-*/regen; do
-          substituteInPlace $i --replace /usr/include/ ${stdenv.gcc.libc}/include/
-        done
-      '';
-
     NIX_CFLAGS_COMPILE = optionalString stdenv.isDarwin "-msse2";
 
     setupHook = ./setup-hook.sh;
@@ -69,6 +72,10 @@ let
         ln -s $out/lib/python${majorVersion}/pdb.py $out/bin/pdb${majorVersion}
         mv $out/share/man/man1/{python.1,python2.6.1}
         ln -s $out/share/man/man1/{python2.6.1,python.1}
+        
+        paxmark E $out/bin/python${majorVersion}
+        
+        ${ optionalString includeModules "$out/bin/python ./setup.py build_ext"}
       '';
 
     passthru = rec {
@@ -96,7 +103,7 @@ let
       '';
       license = stdenv.lib.licenses.psfl;
       platforms = stdenv.lib.platforms.all;
-      maintainers = with stdenv.lib.maintainers; [ simons chaoflow ];
+      maintainers = with stdenv.lib.maintainers; [ simons chaoflow iElectric ];
     };
   };
 
@@ -108,18 +115,16 @@ let
     , internalName ? "_" + moduleName
     , deps
     }:
-    stdenv.mkDerivation rec {
+    if includeModules then null else stdenv.mkDerivation rec {
       name = "python-${moduleName}-${python.version}";
 
-      inherit src patches;
+      inherit src patches preConfigure;
 
       buildInputs = [ python ] ++ deps;
 
       C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs);
       LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs);
 
-      configurePhase = "true";
-
       buildPhase =
         ''
           # Fake the build environment that setup.py expects.
@@ -178,8 +183,6 @@ let
       deps = [ sqlite ];
     };
 
-    ssl = null;
-
     tkinter = buildInternalPythonModule {
       moduleName = "tkinter";
       deps = [ tcl tk x11 ];
diff --git a/pkgs/development/interpreters/python/2.7/default.nix b/pkgs/development/interpreters/python/2.7/default.nix
index 05fb8134f85..72c61e1f235 100644
--- a/pkgs/development/interpreters/python/2.7/default.nix
+++ b/pkgs/development/interpreters/python/2.7/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, zlib ? null, zlibSupport ? true, bzip2
+{ stdenv, fetchurl, zlib ? null, zlibSupport ? true, bzip2, includeModules ? false
 , sqlite, tcl, tk, x11, openssl, readline, db, ncurses, gdbm, libX11 }:
 
 assert zlibSupport -> zlib != null;
@@ -6,7 +6,6 @@ assert zlibSupport -> zlib != null;
 with stdenv.lib;
 
 let
-
   majorVersion = "2.7";
   version = "${majorVersion}.8";
 
@@ -28,33 +27,39 @@ let
       # patch python to put zero timestamp into pyc
       # if DETERMINISTIC_BUILD env var is set
       ./deterministic-build.patch
-    ];
-
-  postPatch = stdenv.lib.optionalString (stdenv.gcc.libc != null) ''
-    substituteInPlace ./Lib/plat-generic/regen \
-                      --replace /usr/include/netinet/in.h \
-                                ${stdenv.gcc.libc}/include/netinet/in.h
-  '';
-
-  buildInputs =
-    optional (stdenv ? gcc && stdenv.gcc.libc != null) stdenv.gcc.libc ++
-    [ bzip2 openssl ]
-    ++ optional zlibSupport zlib;
 
-  ensurePurity =
-    ''
+      # http://bugs.python.org/issue21963
+      ./remove-avoid-daemon-thread-shutdown.patch
+    ];
+    
+  preConfigure = ''
       # Purity.
       for i in /usr /sw /opt /pkg; do
         substituteInPlace ./setup.py --replace $i /no-such-path
       done
+    '' + optionalString (stdenv ? gcc && stdenv.gcc.libc != null) ''
+      for i in Lib/plat-*/regen; do
+        substituteInPlace $i --replace /usr/include/ ${stdenv.gcc.libc}/include/
+      done
+    '' + optionalString stdenv.isCygwin ''
+      # On Cygwin, `make install' tries to read this Makefile.
+      mkdir -p $out/lib/python${majorVersion}/config
+      touch $out/lib/python${majorVersion}/config/Makefile
+      mkdir -p $out/include/python${majorVersion}
+      touch $out/include/python${majorVersion}/pyconfig.h
     '';
 
+  buildInputs =
+    optional (stdenv ? gcc && stdenv.gcc.libc != null) stdenv.gcc.libc ++
+    [ bzip2 openssl ] ++ optionals includeModules [ db openssl ncurses gdbm libX11 readline x11 tcl tk sqlite ]
+    ++ optional zlibSupport zlib;
+
   # Build the basic Python interpreter without modules that have
   # external dependencies.
   python = stdenv.mkDerivation {
     name = "python-${version}";
 
-    inherit majorVersion version src patches postPatch buildInputs;
+    inherit majorVersion version src patches buildInputs preConfigure;
 
     LDFLAGS = stdenv.lib.optionalString (!stdenv.isDarwin) "-lgcc_s";
     C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs);
@@ -62,15 +67,6 @@ let
 
     configureFlags = "--enable-shared --with-threads --enable-unicode";
 
-    preConfigure = "${ensurePurity}" + optionalString stdenv.isCygwin
-      ''
-        # On Cygwin, `make install' tries to read this Makefile.
-        mkdir -p $out/lib/python${majorVersion}/config
-        touch $out/lib/python${majorVersion}/config/Makefile
-        mkdir -p $out/include/python${majorVersion}
-        touch $out/include/python${majorVersion}/pyconfig.h
-      '';
-
     NIX_CFLAGS_COMPILE = optionalString stdenv.isDarwin "-msse2";
     DETERMINISTIC_BUILD = 1;
 
@@ -84,6 +80,8 @@ let
         ln -s $out/share/man/man1/{python2.7.1.gz,python.1.gz}
 
         paxmark E $out/bin/python${majorVersion}
+        
+        ${ optionalString includeModules "$out/bin/python ./setup.py build_ext"}
       '';
 
     passthru = rec {
@@ -111,7 +109,7 @@ let
       '';
       license = stdenv.lib.licenses.psfl;
       platforms = stdenv.lib.platforms.all;
-      maintainers = with stdenv.lib.maintainers; [ simons chaoflow ];
+      maintainers = with stdenv.lib.maintainers; [ simons chaoflow iElectric ];
     };
   };
 
@@ -123,25 +121,17 @@ let
     , internalName ? "_" + moduleName
     , deps
     }:
-    stdenv.mkDerivation rec {
+    if includeModules then null else stdenv.mkDerivation rec {
       name = "python-${moduleName}-${python.version}";
 
-      inherit src patches postPatch;
+      inherit src patches preConfigure;
 
       buildInputs = [ python ] ++ deps;
 
       C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs);
       LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs);
 
-      configurePhase = "${ensurePurity}";
-
-      buildPhase =
-        ''
-          # Fake the build environment that setup.py expects.
-          ln -s ${python}/include/python*/pyconfig.h .
-          ln -s ${python}/lib/python*/config/Setup Modules/
-          ln -s ${python}/lib/python*/config/Setup.local Modules/
-
+      buildPhase = ''
           substituteInPlace setup.py --replace 'self.extensions = extensions' \
             'self.extensions = [ext for ext in self.extensions if ext.name in ["${internalName}"]]'
 
@@ -193,8 +183,6 @@ let
       deps = [ sqlite ];
     };
 
-    ssl = null;
-
     tkinter = buildInternalPythonModule {
       moduleName = "tkinter";
       deps = [ tcl tk x11 libX11 ];
diff --git a/pkgs/development/interpreters/python/2.7/remove-avoid-daemon-thread-shutdown.patch b/pkgs/development/interpreters/python/2.7/remove-avoid-daemon-thread-shutdown.patch
new file mode 100644
index 00000000000..650f276f08a
--- /dev/null
+++ b/pkgs/development/interpreters/python/2.7/remove-avoid-daemon-thread-shutdown.patch
@@ -0,0 +1,170 @@
+changeset:   93046:61ad2208a5ce
+branch:      2.7
+tag:         tip
+user:        William A. Kennington III <william@wkennington.com>
+date:        Mon Oct 13 13:57:12 2014 -0700
+summary:     Revert: 91229:7741d0dd66ca to fix i21963
+
+diff -r ed4098380799 -r 61ad2208a5ce Include/pythonrun.h
+--- a/Include/pythonrun.h	Mon Oct 13 12:58:03 2014 -0700
++++ b/Include/pythonrun.h	Mon Oct 13 13:57:12 2014 -0700
+@@ -147,8 +147,6 @@
+ PyAPI_FUNC(void) PyByteArray_Fini(void);
+ PyAPI_FUNC(void) _PyRandom_Fini(void);
+ 
+-PyAPI_DATA(PyThreadState *) _Py_Finalizing;
+-
+ /* Stuff with no proper home (yet) */
+ PyAPI_FUNC(char *) PyOS_Readline(FILE *, FILE *, char *);
+ PyAPI_DATA(int) (*PyOS_InputHook)(void);
+diff -r ed4098380799 -r 61ad2208a5ce Lib/test/test_threading.py
+--- a/Lib/test/test_threading.py	Mon Oct 13 12:58:03 2014 -0700
++++ b/Lib/test/test_threading.py	Mon Oct 13 13:57:12 2014 -0700
+@@ -700,49 +700,6 @@
+         output = "end of worker thread\nend of main thread\n"
+         self.assertScriptHasOutput(script, output)
+ 
+-    @unittest.skipIf(sys.platform in platforms_to_skip, "due to known OS bug")
+-    def test_6_daemon_threads(self):
+-        # Check that a daemon thread cannot crash the interpreter on shutdown
+-        # by manipulating internal structures that are being disposed of in
+-        # the main thread.
+-        script = """if True:
+-            import os
+-            import random
+-            import sys
+-            import time
+-            import threading
+-
+-            thread_has_run = set()
+-
+-            def random_io():
+-                '''Loop for a while sleeping random tiny amounts and doing some I/O.'''
+-                while True:
+-                    in_f = open(os.__file__, 'rb')
+-                    stuff = in_f.read(200)
+-                    null_f = open(os.devnull, 'wb')
+-                    null_f.write(stuff)
+-                    time.sleep(random.random() / 1995)
+-                    null_f.close()
+-                    in_f.close()
+-                    thread_has_run.add(threading.current_thread())
+-
+-            def main():
+-                count = 0
+-                for _ in range(40):
+-                    new_thread = threading.Thread(target=random_io)
+-                    new_thread.daemon = True
+-                    new_thread.start()
+-                    count += 1
+-                while len(thread_has_run) < count:
+-                    time.sleep(0.001)
+-                # Trigger process shutdown
+-                sys.exit(0)
+-
+-            main()
+-            """
+-        rc, out, err = assert_python_ok('-c', script)
+-        self.assertFalse(err)
+-
+     @unittest.skipUnless(hasattr(os, 'fork'), "needs os.fork()")
+     @unittest.skipIf(sys.platform in platforms_to_skip, "due to known OS bug")
+     def test_reinit_tls_after_fork(self):
+diff -r ed4098380799 -r 61ad2208a5ce Misc/NEWS
+--- a/Misc/NEWS	Mon Oct 13 12:58:03 2014 -0700
++++ b/Misc/NEWS	Mon Oct 13 13:57:12 2014 -0700
+@@ -96,10 +96,6 @@
+ - Issue #21831: Avoid integer overflow when large sizes and offsets are given to
+   the buffer type.
+ 
+-- Issue #1856: Avoid crashes and lockups when daemon threads run while the
+-  interpreter is shutting down; instead, these threads are now killed when they
+-  try to take the GIL.
+-
+ - Issue #19656: Running Python with the -3 option now also warns about
+   non-ascii bytes literals.
+ 
+diff -r ed4098380799 -r 61ad2208a5ce Python/ceval.c
+--- a/Python/ceval.c	Mon Oct 13 12:58:03 2014 -0700
++++ b/Python/ceval.c	Mon Oct 13 13:57:12 2014 -0700
+@@ -355,12 +355,6 @@
+     if (interpreter_lock) {
+         int err = errno;
+         PyThread_acquire_lock(interpreter_lock, 1);
+-        /* _Py_Finalizing is protected by the GIL */
+-        if (_Py_Finalizing && tstate != _Py_Finalizing) {
+-            PyThread_release_lock(interpreter_lock);
+-            PyThread_exit_thread();
+-            assert(0);  /* unreachable */
+-        }
+         errno = err;
+     }
+ #endif
+@@ -1024,13 +1018,6 @@
+                 /* Other threads may run now */
+ 
+                 PyThread_acquire_lock(interpreter_lock, 1);
+-
+-                /* Check if we should make a quick exit. */
+-                if (_Py_Finalizing && _Py_Finalizing != tstate) {
+-                    PyThread_release_lock(interpreter_lock);
+-                    PyThread_exit_thread();
+-                }
+-
+                 if (PyThreadState_Swap(tstate) != NULL)
+                     Py_FatalError("ceval: orphan tstate");
+ 
+diff -r ed4098380799 -r 61ad2208a5ce Python/pythonrun.c
+--- a/Python/pythonrun.c	Mon Oct 13 12:58:03 2014 -0700
++++ b/Python/pythonrun.c	Mon Oct 13 13:57:12 2014 -0700
+@@ -91,8 +91,6 @@
+ int Py_NoUserSiteDirectory = 0; /* for -s and site.py */
+ int Py_HashRandomizationFlag = 0; /* for -R and PYTHONHASHSEED */
+ 
+-PyThreadState *_Py_Finalizing = NULL;
+-
+ 
+ /* Hack to force loading of object files */
+ int (*_PyOS_mystrnicmp_hack)(const char *, const char *, Py_ssize_t) = \
+@@ -165,7 +163,6 @@
+     if (initialized)
+         return;
+     initialized = 1;
+-    _Py_Finalizing = NULL;
+ 
+     if ((p = Py_GETENV("PYTHONDEBUG")) && *p != '\0')
+         Py_DebugFlag = add_flag(Py_DebugFlag, p);
+@@ -425,16 +422,12 @@
+      * the threads created via Threading.
+      */
+     call_sys_exitfunc();
++    initialized = 0;
+ 
+     /* Get current thread state and interpreter pointer */
+     tstate = PyThreadState_GET();
+     interp = tstate->interp;
+ 
+-    /* Remaining threads (e.g. daemon threads) will automatically exit
+-       after taking the GIL (in PyEval_RestoreThread()). */
+-    _Py_Finalizing = tstate;
+-    initialized = 0;
+-
+     /* Disable signal handling */
+     PyOS_FiniInterrupts();
+ 
+diff -r ed4098380799 -r 61ad2208a5ce Python/thread_pthread.h
+--- a/Python/thread_pthread.h	Mon Oct 13 12:58:03 2014 -0700
++++ b/Python/thread_pthread.h	Mon Oct 13 13:57:12 2014 -0700
+@@ -242,9 +242,9 @@
+ PyThread_exit_thread(void)
+ {
+     dprintf(("PyThread_exit_thread called\n"));
+-    if (!initialized)
++    if (!initialized) {
+         exit(0);
+-    pthread_exit(0);
++    }
+ }
+ 
+ #ifdef USE_SEMAPHORES
+
diff --git a/pkgs/development/interpreters/python/3.4/default.nix b/pkgs/development/interpreters/python/3.4/default.nix
index 312bf247de7..4ce659389ec 100644
--- a/pkgs/development/interpreters/python/3.4/default.nix
+++ b/pkgs/development/interpreters/python/3.4/default.nix
@@ -18,7 +18,7 @@ with stdenv.lib;
 
 let
   majorVersion = "3.4";
-  version = "${majorVersion}.1";
+  version = "${majorVersion}.2";
   fullVersion = "${version}";
 
   buildInputs = filter (p: p != null) [
@@ -31,13 +31,11 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://www.python.org/ftp/python/${version}/Python-${fullVersion}.tar.xz";
-    sha256 = "1i7dgbzyvj24i6gfhb5q2zwr9nn1ni6w1ig1rcgh96a321is35f5";
+    sha256 = "1vrd9gqdqw7rw0kiiprqvng7ywnfc2hbyys7gr9mdh25s619cv8w";
   };
 
   NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s";
 
-  patches = [ ./issue21121-3.patch ];
-
   preConfigure = ''
     for i in /usr /sw /opt /pkg; do	# improve purity
       substituteInPlace ./setup.py --replace $i /no-such-path
diff --git a/pkgs/development/interpreters/python/3.4/issue21121-3.patch b/pkgs/development/interpreters/python/3.4/issue21121-3.patch
deleted file mode 100644
index 506d9ea9b3d..00000000000
--- a/pkgs/development/interpreters/python/3.4/issue21121-3.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-diff --git a/Makefile.pre.in b/Makefile.pre.in
---- a/Makefile.pre.in
-+++ b/Makefile.pre.in
-@@ -71,12 +71,17 @@
- BASECFLAGS=	@BASECFLAGS@
- BASECPPFLAGS=	@BASECPPFLAGS@
- CONFIGURE_CFLAGS=	@CFLAGS@
-+# CFLAGS_NODIST is used for building the interpreter and stdlib C extensions.
-+# Use it when a compiler flag should _not_ be part of the distutils CFLAGS
-+# once Python is installed (Issue #21121).
-+CONFIGURE_CFLAGS_NODIST=@CFLAGS_NODIST@
- CONFIGURE_CPPFLAGS=	@CPPFLAGS@
- CONFIGURE_LDFLAGS=	@LDFLAGS@
- # Avoid assigning CFLAGS, LDFLAGS, etc. so users can use them on the
- # command line to append to these values without stomping the pre-set
- # values.
- PY_CFLAGS=	$(BASECFLAGS) $(OPT) $(CONFIGURE_CFLAGS) $(CFLAGS) $(EXTRA_CFLAGS)
-+PY_CFLAGS_NODIST=$(CONFIGURE_CFLAGS_NODIST) $(CFLAGS_NODIST)
- # Both CPPFLAGS and LDFLAGS need to contain the shell's value for setup.py to
- # be able to build extension modules using the directories specified in the
- # environment variables
-@@ -91,7 +96,7 @@
- # Extra C flags added for building the interpreter object files.
- CFLAGSFORSHARED=@CFLAGSFORSHARED@
- # C flags used for building the interpreter object files
--PY_CORE_CFLAGS=	$(PY_CFLAGS) $(PY_CPPFLAGS) $(CFLAGSFORSHARED) -DPy_BUILD_CORE
-+PY_CORE_CFLAGS=	$(PY_CFLAGS) $(PY_CFLAGS_NODIST) $(PY_CPPFLAGS) $(CFLAGSFORSHARED) -DPy_BUILD_CORE
- 
- 
- # Machine-dependent subdirectories
-diff --git a/configure b/configure
---- a/configure
-+++ b/configure
-@@ -662,6 +662,7 @@
- LIBTOOL_CRUFT
- OTHER_LIBTOOL_OPT
- UNIVERSAL_ARCH_FLAGS
-+CFLAGS_NODIST
- BASECFLAGS
- OPT
- ABIFLAGS
-@@ -6504,7 +6505,7 @@
- 
-     if test $ac_cv_declaration_after_statement_warning = yes
-     then
--      BASECFLAGS="$BASECFLAGS -Werror=declaration-after-statement"
-+      CFLAGS_NODIST="$CFLAGS_NODIST -Werror=declaration-after-statement"
-     fi
- 
-     # if using gcc on alpha, use -mieee to get (near) full IEEE 754
-diff --git a/configure.ac b/configure.ac
---- a/configure.ac
-+++ b/configure.ac
-@@ -1147,6 +1147,7 @@
- fi
- 
- AC_SUBST(BASECFLAGS)
-+AC_SUBST(CFLAGS_NODIST)
- 
- # The -arch flags for universal builds on OSX
- UNIVERSAL_ARCH_FLAGS=
-@@ -1231,7 +1232,7 @@
- 
-     if test $ac_cv_declaration_after_statement_warning = yes
-     then
--      BASECFLAGS="$BASECFLAGS -Werror=declaration-after-statement"
-+      CFLAGS_NODIST="$CFLAGS_NODIST -Werror=declaration-after-statement"
-     fi
- 
-     # if using gcc on alpha, use -mieee to get (near) full IEEE 754
-diff --git a/setup.py b/setup.py
---- a/setup.py
-+++ b/setup.py
-@@ -19,6 +19,12 @@
- 
- cross_compiling = "_PYTHON_HOST_PLATFORM" in os.environ
- 
-+# Add special CFLAGS reserved for building the interpreter and the stdlib
-+# modules (Issue #21121).
-+cflags = sysconfig.get_config_var('CFLAGS')
-+py_cflags_nodist = sysconfig.get_config_var('PY_CFLAGS_NODIST')
-+sysconfig.get_config_vars()['CFLAGS'] = cflags + ' ' + py_cflags_nodist
-+
- def get_platform():
-     # cross build
-     if "_PYTHON_HOST_PLATFORM" in os.environ:
diff --git a/pkgs/development/interpreters/python/wrapper.nix b/pkgs/development/interpreters/python/wrapper.nix
index ccfbcfcdd42..37180b1472b 100644
--- a/pkgs/development/interpreters/python/wrapper.nix
+++ b/pkgs/development/interpreters/python/wrapper.nix
@@ -1,12 +1,11 @@
 { stdenv, python, buildEnv, makeWrapper, recursivePthLoader, extraLibs ? [], postBuild ? ""
-, stdLibs ? stdenv.lib.attrValues python.modules, ignoreCollisions ? false
-}:
+, ignoreCollisions ? false }:
 
 # Create a python executable that knows about additional packages.
 
 (buildEnv {
-  name = "python-${python.version}-wrapper";
-  paths = stdenv.lib.filter (x : x ? pythonPath) (stdenv.lib.closePropagation extraLibs) ++ stdLibs ++ [ python recursivePthLoader ];
+  name = "python-${python.version}-env";
+  paths = stdenv.lib.filter (x : x ? pythonPath) (stdenv.lib.closePropagation extraLibs) ++ [ python recursivePthLoader ];
 
   inherit ignoreCollisions;
 
diff --git a/pkgs/development/interpreters/spidermonkey/185-1.0.0.nix b/pkgs/development/interpreters/spidermonkey/185-1.0.0.nix
index 6fc4bcb9dea..a036388f15e 100644
--- a/pkgs/development/interpreters/spidermonkey/185-1.0.0.nix
+++ b/pkgs/development/interpreters/spidermonkey/185-1.0.0.nix
@@ -20,7 +20,22 @@ stdenv.mkDerivation rec {
     export LIBXUL_DIST=$out
   '';
 
-  configureFlags = [ "--enable-threadsafe" "--with-system-nspr" ];
+  # Explained below in configureFlags for ARM
+  patches = stdenv.lib.optionals stdenv.isArm [
+    ./findvanilla.patch
+  ];
+
+  patchFlags = "-p3";
+
+  # On the Sheevaplug, ARM, its nanojit thing segfaults in japi-tests in
+  # "make check". Disabling tracejit makes it work, but then it needs the
+  # patch findvanilla.patch do disable a checker about allocator safety. In case
+  # of polkit, which is what matters most, it does not override the allocator
+  # so the failure of that test does not matter much.
+  configureFlags = [ "--enable-threadsafe" "--with-system-nspr" ] ++
+    stdenv.lib.optionals stdenv.isArm [
+        "--with-cpu-arch=armv5t" 
+        "--disable-tracejit" ];
 
   # hack around a make problem, see https://github.com/NixOS/nixpkgs/issues/1279#issuecomment-29547393
   preBuild = "touch -- {.,shell,jsapi-tests}/{-lpthread,-ldl}";
diff --git a/pkgs/development/interpreters/spidermonkey/findvanilla.patch b/pkgs/development/interpreters/spidermonkey/findvanilla.patch
new file mode 100644
index 00000000000..f6dab5497a0
--- /dev/null
+++ b/pkgs/development/interpreters/spidermonkey/findvanilla.patch
@@ -0,0 +1,19 @@
+diff --git a/js/src/Makefile.in b/js/src/Makefile.in
+index a85e055..92ef441 100644
+--- a/js/src/Makefile.in
++++ b/js/src/Makefile.in
+@@ -580,14 +580,6 @@ check-valgrind::
+ 	$(check-sync-dirs) $(srcdir)/build $(MOZ_SYNC_BUILD_FILES)/build
+ endif
+ 
+-# The "find any vanilla new/new[] calls" script is tailored to Linux, so
+-# only run it there.  That should be enough to catch any such calls that
+-# creep in.
+-ifeq ($(OS_ARCH),Linux)
+-check::
+-	$(srcdir)/config/find_vanilla_new_calls $(LIBRARY)
+-endif
+-
+ ifdef ENABLE_TRACEJIT
+ ifndef WINCE
+ JITFLAGS = ,m,j,mj,mjp,am,amj,amjp,amd
diff --git a/pkgs/development/libraries/asio/default.nix b/pkgs/development/libraries/asio/default.nix
index b5ed6f30e34..699030b8fe5 100644
--- a/pkgs/development/libraries/asio/default.nix
+++ b/pkgs/development/libraries/asio/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, boost, openssl}:
 
 stdenv.mkDerivation rec {
-  name = "asio-1.10.2";
+  name = "asio-1.10.4";
   
   src = fetchurl {
     url = "mirror://sourceforge/asio/${name}.tar.bz2";
-    sha256 = "1lqxm3gc8rzzjq0m843l59ggbw32bih7smm5spry1j5khfc86p41";
+    sha256 = "0jminwr84wphwpph7j820cql7cbaqlj2zv4gfjk2imazpmlhsfri";
   };
 
   propagatedBuildInputs = [ boost ];
diff --git a/pkgs/development/libraries/box2d/2.0.1.nix b/pkgs/development/libraries/box2d/2.0.1.nix
index c15e27695ac..0d1f3bb14ee 100644
--- a/pkgs/development/libraries/box2d/2.0.1.nix
+++ b/pkgs/development/libraries/box2d/2.0.1.nix
@@ -72,6 +72,7 @@ rec {
     platforms = with a.lib.platforms;
       linux;
     license = "bsd";
+    branch = "2.0.1";
   };
   passthru = {
     updateInfo = {
diff --git a/pkgs/development/libraries/ccrtp/default.nix b/pkgs/development/libraries/ccrtp/default.nix
index 3e75cb45a73..ade48cb2288 100644
--- a/pkgs/development/libraries/ccrtp/default.nix
+++ b/pkgs/development/libraries/ccrtp/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, openssl, pkgconfig, libgcrypt, ucommon }:
 
 stdenv.mkDerivation {
-  name = "ccrtp-2.0.6";
+  name = "ccrtp-2.0.9";
 
   src = fetchurl {
-    url = mirror://gnu/ccrtp/ccrtp-2.0.6.tar.gz;
-    sha256 = "06rqwk2w5sikfb3l5bcpxszhq4g7ra840gqx1f011xrmhvclrzir";
+    url = mirror://gnu/ccrtp/ccrtp-2.0.9.tar.gz;
+    sha256 = "1prh2niwa4lzvskk12j4ckr7dv141dfh8yjmpkbhbnv4gmpifci0";
   };
 
   buildInputs = [ openssl pkgconfig libgcrypt ];
diff --git a/pkgs/development/libraries/celt/0.5.1.nix b/pkgs/development/libraries/celt/0.5.1.nix
index 0f42e7cd040..f489e95f5d4 100644
--- a/pkgs/development/libraries/celt/0.5.1.nix
+++ b/pkgs/development/libraries/celt/0.5.1.nix
@@ -37,6 +37,7 @@ rec {
     platforms = with a.lib.platforms;
       linux;
     license = "free";
+    branch = "0.5.1";
   };
   passthru = {
     updateInfo = {
diff --git a/pkgs/development/libraries/celt/0.7.nix b/pkgs/development/libraries/celt/0.7.nix
index 5c5dae866bb..35cfae9ebb1 100644
--- a/pkgs/development/libraries/celt/0.7.nix
+++ b/pkgs/development/libraries/celt/0.7.nix
@@ -37,6 +37,7 @@ rec {
     platforms = with a.lib.platforms;
       linux;
     license = "free";
+    branch = "0.7";
   };
   passthru = {
     updateInfo = {
diff --git a/pkgs/development/libraries/clearsilver/default.nix b/pkgs/development/libraries/clearsilver/default.nix
index 4095c1ae2f4..200bf034dc6 100644
--- a/pkgs/development/libraries/clearsilver/default.nix
+++ b/pkgs/development/libraries/clearsilver/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = http://www.clearsilver.net/downloads/clearsilver-0.10.3.tar.gz;
-    md5 = "ff4104b0e58bca1b61d528edbd902769";
+    sha256 = "1lhbbf5rrqxb44y5clga7iifcfrh8sfjwpj4phnr3qabk92wdn3i";
   };
 
   builder = ./builder.sh;
diff --git a/pkgs/development/libraries/concurrencykit/default.nix b/pkgs/development/libraries/concurrencykit/default.nix
index 0e584c0d499..276f1219444 100644
--- a/pkgs/development/libraries/concurrencykit/default.nix
+++ b/pkgs/development/libraries/concurrencykit/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name    = "concurrencykit-${version}";
-  version = "0.4.3";
+  version = "0.4.4";
 
   src = fetchurl {
     url    = "http://concurrencykit.org/releases/ck-${version}.tar.gz";
-    sha256 = "1fjdvbj6wazblg6qy0gdqs3kach2y2p6xrcvssmcvxr0nfyaadg2";
+    sha256 = "0m3gzv5l7hw3zwhndjjvwmkhh66lvgnk0mspa2s12r1hlzc91zi3";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/dclib/default.nix b/pkgs/development/libraries/dclib/default.nix
index a00fbff50b9..fb290cbcbeb 100644
--- a/pkgs/development/libraries/dclib/default.nix
+++ b/pkgs/development/libraries/dclib/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = ftp://ftp.debian.nl/pub/freebsd/ports/distfiles/dclib-0.3.7.tar.bz2;
-    md5 = "d35833414534bcac8ce2c8a62ce903a4";
+    sha256 = "02jdzm5hqzs1dv2rd596vgpcjaapm55pqqapz5m94l30v4q72rfc";
   };
 
   buildInputs = [libxml2 openssl bzip2];
diff --git a/pkgs/development/libraries/dlib/default.nix b/pkgs/development/libraries/dlib/default.nix
new file mode 100644
index 00000000000..94f74e516f1
--- /dev/null
+++ b/pkgs/development/libraries/dlib/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, fetchurl, cmake, x11 }:
+
+stdenv.mkDerivation rec {
+  version = "18.10";
+  name = "dlib-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/dclib/dlib/${name}.tar.bz2";
+    sha256 = "1g3v13azc29m5r7zqs3x0g731hny6spb66cxnra7f167z31ka3s7";
+  };
+
+  # The supplied CMakeLists.txt does not have any install targets.
+  sources_var = "\$\{sources\}";
+  headers_var = "\$\{hearders\}";
+  preConfigure = ''
+    cat << EOF > CMakeLists.txt
+    cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
+    project(dlib)
+
+    include_directories(./)
+
+    file(GLOB sources ./dlib/all/*.cpp)
+    file(GLOB headers ./dlib/*.h)
+
+    SET(LIBRARY_OUTPUT_PATH ".")
+    add_library(dlib "SHARED" dlib/all/source.cpp ${sources_var} ${headers_var})
+
+    install(TARGETS dlib DESTINATION lib)
+    install(DIRECTORY dlib/ DESTINATION include/dlib FILES_MATCHING PATTERN "*.h")
+    EOF
+  '';   
+
+  enableParallelBuilding = true;
+  buildInputs = [ cmake x11 ];
+  propagatedBuildInputs = [ x11 ];
+
+  meta = with stdenv.lib; {
+    description = "Dlib is a general purpose cross-platform C++ machine learning library.";
+    homepage = http://www.dlib.net;
+    license = stdenv.lib.licenses.boost;
+    maintainers = with maintainers; [ christopherpoole ];
+    platforms = stdenv.lib.platforms.all;
+  };
+}
+
diff --git a/pkgs/development/libraries/eigen/2.0.nix b/pkgs/development/libraries/eigen/2.0.nix
index 6317dfe5887..4ea9f068d39 100644
--- a/pkgs/development/libraries/eigen/2.0.nix
+++ b/pkgs/development/libraries/eigen/2.0.nix
@@ -19,5 +19,6 @@ stdenv.mkDerivation {
     license = licenses.lgpl3Plus;
     homepage = http://eigen.tuxfamily.org ;
     maintainers = with stdenv.lib.maintainers; [ sander urkud raskin ];
+    branch = "2";
   };
 }
diff --git a/pkgs/development/libraries/fox/default.nix b/pkgs/development/libraries/fox/default.nix
index 6d7d7a83879..dfd2c75184e 100644
--- a/pkgs/development/libraries/fox/default.nix
+++ b/pkgs/development/libraries/fox/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "ftp://ftp.fox-toolkit.org/pub/${name}.tar.gz";
-    md5 = "b5897e9c664967f5042e57070037ff18";
+    sha256 = "1jb9368xsin3ppdf6979n5s7in3s9klbxqbwcp0z8misjixl7nzg";
   };
 
   buildInputs = [ libpng x11 libjpeg libtiff zlib bzip2 libXcursor libXrandr libXft ];
diff --git a/pkgs/development/libraries/gdcm/default.nix b/pkgs/development/libraries/gdcm/default.nix
new file mode 100644
index 00000000000..e100b82ae9e
--- /dev/null
+++ b/pkgs/development/libraries/gdcm/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, cmake }:
+
+stdenv.mkDerivation rec {
+  version = "2.4.4";
+  name = "gdcm-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/gdcm/${name}.tar.bz2";
+    sha256 = "07svgp7c928sw712gq6rx4h0c6wp2kr1n8fmxjlzb031l51jzkf5";
+  };
+
+  dontUseCmakeBuildDir = true;
+  preConfigure = ''
+    cmakeDir=$PWD
+    mkdir ../build
+    cd ../build
+  '';
+
+  cmakeFlags = ''
+    -DGDCM_BUILD_APPLICATIONS=ON
+    -DGDCM_BUILD_SHARED_LIBS=ON
+  '';
+
+  enableParallelBuilding = true;
+  buildInputs = [ cmake ];
+  propagatedBuildInputs = [ ];
+
+  meta = {
+    description = "The grassroots cross-platform DICOM implementation.";
+    longDescription = ''
+      Grassroots DICOM (GDCM) is an implementation of the DICOM standard designed to be open source so that researchers may access clinical data directly.
+      GDCM includes a file format definition and a network communications protocol, both of which should be extended to provide a full set of tools for a researcher or small medical imaging vendor to interface with an existing medical database.
+    '';
+    homepage = http://gdcm.sourceforge.net/;
+    platforms = stdenv.lib.platforms.all;
+  };
+}
+
diff --git a/pkgs/development/libraries/geoip/default.nix b/pkgs/development/libraries/geoip/default.nix
index 2b4c291f7f5..99a566cf195 100644
--- a/pkgs/development/libraries/geoip/default.nix
+++ b/pkgs/development/libraries/geoip/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl }:
 
-let version = "1.6.0"; in
+let version = "1.6.2"; in
 
 stdenv.mkDerivation {
   name = "geoip-${version}";
@@ -15,5 +15,7 @@ stdenv.mkDerivation {
     maintainers = [ stdenv.lib.maintainers.raskin ];
     license = stdenv.lib.licenses.lgpl21;
     platforms = stdenv.lib.platforms.unix;
+    homepage = "http://geolite.maxmind.com/";
+    downloadPage = "http://geolite.maxmind.com/download/";
   };
 }
diff --git a/pkgs/development/libraries/glm/default.nix b/pkgs/development/libraries/glm/default.nix
index 010a2aee88e..a5b62c6b04e 100644
--- a/pkgs/development/libraries/glm/default.nix
+++ b/pkgs/development/libraries/glm/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, unzip }:
 
 stdenv.mkDerivation rec {
-  name = "glm-0.9.5.3";
+  name = "glm-0.9.5.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/ogl-math/${name}/${name}.zip";
-    sha256 = "0ndwaw2mp7pzcwwm4dghbv5qqax5a8c5plnwdgnpc9adm79gj1rl";
+    sha256 = "0v14xssysy3q1h2mga6rqlz722mwbis4rrx76zmvhjqh17qh4l62";
   };
 
   buildInputs = [ unzip ];
diff --git a/pkgs/development/libraries/granite/default.nix b/pkgs/development/libraries/granite/default.nix
new file mode 100644
index 00000000000..5a2ff5daa11
--- /dev/null
+++ b/pkgs/development/libraries/granite/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, perl, cmake, vala, pkgconfig, gobjectIntrospection, glib, gtk3, gnome3, gettext }:
+
+stdenv.mkDerivation rec {
+  majorVersion = "0.3";
+  minorVersion = "0";
+  name = "granite-${majorVersion}.${minorVersion}";
+  src = fetchurl {
+    url = "https://code.launchpad.net/granite/${majorVersion}/${majorVersion}/+download/${name}.tar.gz";
+    sha256 = "1laa109dz7kbd8zxddqw2p1b67yzva7cc5h3smqkj8a9jzbhv5fz";
+  };
+  cmakeFlags = "-DINTROSPECTION_GIRDIR=share/gir-1.0/ -DINTROSPECTION_TYPELIBDIR=lib/girepository-1.0";
+  buildInputs = [perl cmake vala pkgconfig gobjectIntrospection glib gtk3 gnome3.libgee gettext];
+  meta = {
+    description = "An extension to GTK+ used by elementary OS";
+    longDescription = "An extension to GTK+ that provides several useful widgets and classes to ease application development. Designed for elementary OS.";
+    homepage = https://launchpad.net/granite;
+    license = stdenv.lib.licenses.lgpl3;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.vozz ];
+  };
+}
diff --git a/pkgs/development/libraries/haskell/Boolean/default.nix b/pkgs/development/libraries/haskell/Boolean/default.nix
index d7a8474bd5b..137171b7750 100644
--- a/pkgs/development/libraries/haskell/Boolean/default.nix
+++ b/pkgs/development/libraries/haskell/Boolean/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "Boolean";
-  version = "0.2.2";
-  sha256 = "1awi9ff2gb9gddalzn2hgp8klvcsizicqpd7xb5fds5j3278qrdz";
+  version = "0.2.3";
+  sha256 = "1lsm06y7hgjp9qmlr6csf24x3wgna7sbf8dgh6sfl2rhs7fn8kgn";
   meta = {
     description = "Generalized booleans and numbers";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/ChasingBottoms/default.nix b/pkgs/development/libraries/haskell/ChasingBottoms/default.nix
index 715793c7e9a..829af010da7 100644
--- a/pkgs/development/libraries/haskell/ChasingBottoms/default.nix
+++ b/pkgs/development/libraries/haskell/ChasingBottoms/default.nix
@@ -9,6 +9,7 @@ cabal.mkDerivation (self: {
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ mtl QuickCheck random syb ];
+  jailbreak = true;
   meta = {
     description = "For testing partial and infinite values";
     license = self.stdenv.lib.licenses.mit;
diff --git a/pkgs/development/libraries/haskell/CouchDB/default.nix b/pkgs/development/libraries/haskell/CouchDB/default.nix
index 44a5d50edc5..18f095cd8b1 100644
--- a/pkgs/development/libraries/haskell/CouchDB/default.nix
+++ b/pkgs/development/libraries/haskell/CouchDB/default.nix
@@ -15,5 +15,6 @@ cabal.mkDerivation (self: {
     description = "CouchDB interface";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/DAV/default.nix b/pkgs/development/libraries/haskell/DAV/default.nix
index be383fd4143..b361ae045fb 100644
--- a/pkgs/development/libraries/haskell/DAV/default.nix
+++ b/pkgs/development/libraries/haskell/DAV/default.nix
@@ -2,20 +2,21 @@
 
 { cabal, caseInsensitive, dataDefault, either, errors, exceptions
 , httpClient, httpClientTls, httpTypes, lens, mtl, network
-, optparseApplicative, transformers, transformersBase, utf8String
-, xmlConduit, xmlHamlet
+, networkUri, optparseApplicative, transformers, transformersBase
+, utf8String, xmlConduit, xmlHamlet
 }:
 
 cabal.mkDerivation (self: {
   pname = "DAV";
-  version = "1.0.2";
-  sha256 = "0xbiq3q8w1cjnh71sfnincir8igvwig734r8schbsps993p2d24b";
+  version = "1.0.3";
+  sha256 = "1wrs3rdk4sarzi4w1pma8h751mjw5x1l8c6w30wv7fg0rmk2cayd";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
     caseInsensitive dataDefault either errors exceptions httpClient
-    httpClientTls httpTypes lens mtl network optparseApplicative
-    transformers transformersBase utf8String xmlConduit xmlHamlet
+    httpClientTls httpTypes lens mtl network networkUri
+    optparseApplicative transformers transformersBase utf8String
+    xmlConduit xmlHamlet
   ];
   meta = {
     homepage = "http://floss.scru.org/hDAV";
diff --git a/pkgs/development/libraries/haskell/Extra/default.nix b/pkgs/development/libraries/haskell/Extra/default.nix
index 0db01edcc61..aada08828b1 100644
--- a/pkgs/development/libraries/haskell/Extra/default.nix
+++ b/pkgs/development/libraries/haskell/Extra/default.nix
@@ -17,5 +17,6 @@ cabal.mkDerivation (self: {
     description = "A grab bag of modules";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/GLUtil/default.nix b/pkgs/development/libraries/haskell/GLUtil/default.nix
index ee99ccc4fee..0b7910a7e0f 100644
--- a/pkgs/development/libraries/haskell/GLUtil/default.nix
+++ b/pkgs/development/libraries/haskell/GLUtil/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "GLUtil";
-  version = "0.8.1";
-  sha256 = "026w6rsgs0vmjx9fj4x3r93rifdyjygb83spcwmch31a7qng6l7w";
+  version = "0.8.2";
+  sha256 = "0z8fi4fd0jrywg595cc67w8pqcn7pgy651hxb4zkqb3400n4jak3";
   buildDepends = [
     cpphs filepath JuicyPixels linear OpenGL OpenGLRaw transformers
     vector
diff --git a/pkgs/development/libraries/haskell/HSH/default.nix b/pkgs/development/libraries/haskell/HSH/default.nix
index bcc29781210..9bcd1f5a21b 100644
--- a/pkgs/development/libraries/haskell/HSH/default.nix
+++ b/pkgs/development/libraries/haskell/HSH/default.nix
@@ -1,22 +1,23 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
 { cabal, filepath, hslogger, MissingH, mtl, regexBase, regexCompat
-, regexPosix, fetchpatch
+, regexPosix
 }:
 
 cabal.mkDerivation (self: {
   pname = "HSH";
-  version = "2.1.0";
-  sha256 = "0gz2hzdvf0gqv33jihn67bvry38c6hkjapb1prxmb3w12lisr4l5";
+  version = "2.1.1";
+  sha256 = "14aijsafd8mkh46dy071haix16p31ppdn2s3r9kxdbjjas6qh13g";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
     filepath hslogger MissingH mtl regexBase regexCompat regexPosix
   ];
-  patches = [ (fetchpatch { url = "https://github.com/jgoerzen/hsh/pull/10.patch"; sha256 = "0ddb3vf8ipf37zg4hkqh0frff1a7sv9ils3lw6qd3irpbwna1hdz"; }) ];
   meta = {
     homepage = "http://software.complete.org/hsh";
     description = "Library to mix shell scripting with Haskell programs";
     license = "LGPL";
     platforms = self.ghc.meta.platforms;
-    maintainers = [ self.stdenv.lib.maintainers.andres ];
+    maintainers = with self.stdenv.lib.maintainers; [ andres ];
   };
 })
diff --git a/pkgs/development/libraries/haskell/HaTeX/default.nix b/pkgs/development/libraries/haskell/HaTeX/default.nix
index 3712dda87eb..370c371eb8c 100644
--- a/pkgs/development/libraries/haskell/HaTeX/default.nix
+++ b/pkgs/development/libraries/haskell/HaTeX/default.nix
@@ -6,12 +6,12 @@
 
 cabal.mkDerivation (self: {
   pname = "HaTeX";
-  version = "3.13.1.0";
-  sha256 = "1ciifdb7yd79lvwdcxj8dq98dfmm9pg25rx9rc2wjn2jnp8j85r7";
+  version = "3.14.0.0";
+  sha256 = "0vbwhj031ny2vkp5hjxihlmpxaqy1far2nmxfzl1bv6rx0sqfjbg";
   buildDepends = [
     matrix parsec QuickCheck text transformers wlPprintExtras
   ];
-  testDepends = [ QuickCheck tasty tastyQuickcheck ];
+  testDepends = [ QuickCheck tasty tastyQuickcheck text ];
   meta = {
     homepage = "http://daniel-diaz.github.io/projects/hatex";
     description = "The Haskell LaTeX library";
diff --git a/pkgs/development/libraries/haskell/HandsomeSoup/default.nix b/pkgs/development/libraries/haskell/HandsomeSoup/default.nix
index cbf5e87bccc..c5f1d1ee97a 100644
--- a/pkgs/development/libraries/haskell/HandsomeSoup/default.nix
+++ b/pkgs/development/libraries/haskell/HandsomeSoup/default.nix
@@ -16,5 +16,6 @@ cabal.mkDerivation (self: {
     description = "Work with HTML more easily in HXT";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/HaskellNet-SSL/default.nix b/pkgs/development/libraries/haskell/HaskellNet-SSL/default.nix
index d5cc7085538..f3d3e3a09b9 100644
--- a/pkgs/development/libraries/haskell/HaskellNet-SSL/default.nix
+++ b/pkgs/development/libraries/haskell/HaskellNet-SSL/default.nix
@@ -4,13 +4,14 @@
 
 cabal.mkDerivation (self: {
   pname = "HaskellNet-SSL";
-  version = "0.2.4";
-  sha256 = "0rwj69rz8i84qj6n1zd9fllp4333azfxppd7blzd486bczzkgkbb";
+  version = "0.2.5.1";
+  sha256 = "0qkc0bw0p201wi3v8ck348j8m32x9dn8lkf6r787sd1bxhrsd2z7";
   buildDepends = [ connection dataDefault HaskellNet network tls ];
   meta = {
     homepage = "https://github.com/dpwright/HaskellNet-SSL";
     description = "Helpers to connect to SSL/TLS mail servers with HaskellNet";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/HaskellNet/default.nix b/pkgs/development/libraries/haskell/HaskellNet/default.nix
index 940bdbd678d..284bdce9737 100644
--- a/pkgs/development/libraries/haskell/HaskellNet/default.nix
+++ b/pkgs/development/libraries/haskell/HaskellNet/default.nix
@@ -1,12 +1,14 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, base64String, Crypto, mimeMail, mtl, network, text }:
+{ cabal, base64String, cryptohash, mimeMail, mtl, network, text }:
 
 cabal.mkDerivation (self: {
   pname = "HaskellNet";
-  version = "0.3.1";
-  sha256 = "168w6y5rizszq1428amxbkhww65sy3b7czxpjyrzzq3dhjn517nr";
-  buildDepends = [ base64String Crypto mimeMail mtl network text ];
+  version = "0.4";
+  sha256 = "152ayk35czl8fi2mar1g6c5mi3pikvnpcy967prg97a9vy0ld1yp";
+  buildDepends = [
+    base64String cryptohash mimeMail mtl network text
+  ];
   meta = {
     homepage = "https://github.com/jtdaugherty/HaskellNet";
     description = "Client support for POP3, SMTP, and IMAP";
diff --git a/pkgs/development/libraries/haskell/MonadRandom/0.2.0.1.nix b/pkgs/development/libraries/haskell/MonadRandom/0.2.0.1.nix
index cc430e22090..41796adb963 100644
--- a/pkgs/development/libraries/haskell/MonadRandom/0.2.0.1.nix
+++ b/pkgs/development/libraries/haskell/MonadRandom/0.2.0.1.nix
@@ -11,5 +11,6 @@ cabal.mkDerivation (self: {
     description = "Random-number generation monad";
     license = "unknown";
     platforms = self.ghc.meta.platforms;
+    hydraPlatforms = self.stdenv.lib.platforms.none;
   };
 })
diff --git a/pkgs/development/libraries/haskell/NumInstances/default.nix b/pkgs/development/libraries/haskell/NumInstances/default.nix
index e5b918a5ad5..38fbbfdbfbf 100644
--- a/pkgs/development/libraries/haskell/NumInstances/default.nix
+++ b/pkgs/development/libraries/haskell/NumInstances/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "NumInstances";
-  version = "1.3";
-  sha256 = "0w1hls5azsg95c0v510xqgr8hs195y2rxzjc7hpjg8q44d4z78sh";
+  version = "1.4";
+  sha256 = "0ycnwn09izajv330l7a31mc0alifqmxjsn9qmfswwnbg6i4jmnyb";
   meta = {
     homepage = "https://github.com/conal/NumInstances";
     description = "Instances of numeric classes for functions and tuples";
diff --git a/pkgs/development/libraries/haskell/Thrift/default.nix b/pkgs/development/libraries/haskell/Thrift/default.nix
index 6e37fe2ca49..bbd5f45f9ca 100644
--- a/pkgs/development/libraries/haskell/Thrift/default.nix
+++ b/pkgs/development/libraries/haskell/Thrift/default.nix
@@ -12,5 +12,6 @@ cabal.mkDerivation (self: {
     description = "Haskell bindings for the Apache Thrift RPC system";
     license = "unknown";
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/WAVE/default.nix b/pkgs/development/libraries/haskell/WAVE/default.nix
new file mode 100644
index 00000000000..6082f5e76cf
--- /dev/null
+++ b/pkgs/development/libraries/haskell/WAVE/default.nix
@@ -0,0 +1,19 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, parseargs }:
+
+cabal.mkDerivation (self: {
+  pname = "WAVE";
+  version = "0.1.3";
+  sha256 = "1cgla9y1lwcsdad5qdspymd7s6skdw961fgzh02kvi7gjbrrcyi7";
+  isLibrary = true;
+  isExecutable = true;
+  buildDepends = [ parseargs ];
+  meta = {
+    homepage = "http://github.com/BartMassey/WAVE";
+    description = "WAVE audio file IO library";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/acid-state/default.nix b/pkgs/development/libraries/haskell/acid-state/default.nix
index c7067dd6602..ab2e682fdc8 100644
--- a/pkgs/development/libraries/haskell/acid-state/default.nix
+++ b/pkgs/development/libraries/haskell/acid-state/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "acid-state";
-  version = "0.12.2";
-  sha256 = "0hwi2254bj84djxmah23vy3xw8binh75fsn8ac6y89rwc8i35w1f";
+  version = "0.12.3";
+  sha256 = "099n8a5qxrjzhw0jgmshcpkvynkj2v4a8a6lwy9fvg586nhcy9j1";
   buildDepends = [
     cereal extensibleExceptions filepath mtl network safecopy stm
   ];
diff --git a/pkgs/development/libraries/haskell/aeson/0.8.0.0.nix b/pkgs/development/libraries/haskell/aeson/0.8.0.1.nix
index de9708f2546..32cc221d5b4 100644
--- a/pkgs/development/libraries/haskell/aeson/0.8.0.0.nix
+++ b/pkgs/development/libraries/haskell/aeson/0.8.0.1.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "aeson";
-  version = "0.8.0.0";
-  sha256 = "0p2x03wjawhav87jp57vwclra0gjwn1gqk74zgnji25ypwsvgkk4";
+  version = "0.8.0.1";
+  sha256 = "0363pzla3kjk2ckmm7j07hav3bgq31jkrya5jhl9dn0nv4l4slxk";
   buildDepends = [
     attoparsec blazeBuilder deepseq dlist hashable mtl scientific syb
     text time unorderedContainers vector
diff --git a/pkgs/development/libraries/haskell/ariadne/default.nix b/pkgs/development/libraries/haskell/ariadne/default.nix
index 758d1a90d3b..50beb4d3e64 100644
--- a/pkgs/development/libraries/haskell/ariadne/default.nix
+++ b/pkgs/development/libraries/haskell/ariadne/default.nix
@@ -20,5 +20,6 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
     maintainers = with self.stdenv.lib.maintainers; [ ocharles ];
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/auto-update/default.nix b/pkgs/development/libraries/haskell/auto-update/default.nix
index edfcbe4e342..9d2ccdfb11b 100644
--- a/pkgs/development/libraries/haskell/auto-update/default.nix
+++ b/pkgs/development/libraries/haskell/auto-update/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "auto-update";
-  version = "0.1.1.3";
-  sha256 = "06izsfd3xiragzac682vg3bmr6947y8s4yr2r7rip7qjvsja2yhy";
+  version = "0.1.1.5";
+  sha256 = "1gwx9k953nhw6n4d8a4jw3sfp51761s5qjsql73pr8i6gri0849h";
   meta = {
     homepage = "https://github.com/yesodweb/wai";
     description = "Efficiently run periodic, on-demand actions";
diff --git a/pkgs/development/libraries/haskell/base-prelude/default.nix b/pkgs/development/libraries/haskell/base-prelude/default.nix
index 1799fa6a6ba..fdbd2b85510 100644
--- a/pkgs/development/libraries/haskell/base-prelude/default.nix
+++ b/pkgs/development/libraries/haskell/base-prelude/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "base-prelude";
-  version = "0.1.4";
-  sha256 = "10xvzkzlmyrq0mi6056rl6hq4bga1k1c6671b1bxjhgzgqrzpjpz";
+  version = "0.1.6";
+  sha256 = "1lc8j3wfaqh42pqshlizkpr67ghkr1m90m1g9xiw8h36p8n72fcm";
   meta = {
     homepage = "https://github.com/nikita-volkov/base-prelude";
     description = "The most complete prelude formed from only the \"base\" package";
diff --git a/pkgs/development/libraries/haskell/binary/0.7.2.1.nix b/pkgs/development/libraries/haskell/binary/0.7.2.2.nix
index b8803868cd1..60eaf0e0031 100644
--- a/pkgs/development/libraries/haskell/binary/0.7.2.1.nix
+++ b/pkgs/development/libraries/haskell/binary/0.7.2.2.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "binary";
-  version = "0.7.2.1";
-  sha256 = "0s0idmcmribgajxxnxdvppnz62qyxwrj9iy34pi7nvm41gj6q5nz";
+  version = "0.7.2.2";
+  sha256 = "10z1b9axgfg9kb44b8sfxd5mak5qaqyjfwn4i21y37zgf7wadblr";
   testDepends = [
     Cabal filepath HUnit QuickCheck random testFramework
     testFrameworkQuickcheck2
diff --git a/pkgs/development/libraries/haskell/boomerang/default.nix b/pkgs/development/libraries/haskell/boomerang/default.nix
index 3747b2cc877..82d45baf88a 100644
--- a/pkgs/development/libraries/haskell/boomerang/default.nix
+++ b/pkgs/development/libraries/haskell/boomerang/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "boomerang";
-  version = "1.4.4";
-  sha256 = "0ik2wxcvz2y3bn3r2p9kzjiy78vjhxyz4fn3nkaz5wl3jmh4gydf";
+  version = "1.4.5";
+  sha256 = "03iaasyg2idvq25wzzjk2yr9lyql7bcgmfkycy1cy4ms5dg91k6q";
   buildDepends = [ mtl text ];
   meta = {
     description = "Library for invertible parsing and printing";
diff --git a/pkgs/development/libraries/haskell/bytestring-trie/default.nix b/pkgs/development/libraries/haskell/bytestring-trie/default.nix
index c8a4143e217..da84b55cc0f 100644
--- a/pkgs/development/libraries/haskell/bytestring-trie/default.nix
+++ b/pkgs/development/libraries/haskell/bytestring-trie/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "bytestring-trie";
-  version = "0.2.3";
-  sha256 = "1zb4s7fd951swc648szrpx0ldailmdinapgbcg1zajb5c5jq57ga";
+  version = "0.2.4";
+  sha256 = "1fv3xh52hqhzdbq78c3lrgx5vd49cabwp9ww5ki1888zlq29pyck";
   buildDepends = [ binary ];
   meta = {
     homepage = "http://code.haskell.org/~wren/";
diff --git a/pkgs/development/libraries/haskell/cairo/default.nix b/pkgs/development/libraries/haskell/cairo/default.nix
index b77e3166354..45981490749 100644
--- a/pkgs/development/libraries/haskell/cairo/default.nix
+++ b/pkgs/development/libraries/haskell/cairo/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cairo";
-  version = "0.13.0.0";
-  sha256 = "1sw1f50kmqln1mkvrr6g85b46dn0ipwnvyl13kxzhq5g581rra92";
+  version = "0.13.0.3";
+  sha256 = "0jlxgxsby8qscyfq517xlaib8xkp310gbjbmk9yyi7sd5bnmblh9";
   buildDepends = [ mtl text utf8String ];
   buildTools = [ gtk2hsBuildtools ];
   extraLibraries = [ cairo libc pkgconfig zlib ];
diff --git a/pkgs/development/libraries/haskell/cereal/default.nix b/pkgs/development/libraries/haskell/cereal/default.nix
index af77f37abdb..906222c3bbb 100644
--- a/pkgs/development/libraries/haskell/cereal/default.nix
+++ b/pkgs/development/libraries/haskell/cereal/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cereal";
-  version = "0.4.0.1";
-  sha256 = "12g23cbjxxgh3xzv6hvs093zpycl29h8fmc7kv6jx43ws4cxy2jv";
+  version = "0.4.1.0";
+  sha256 = "0m0iwjf9bds4nwk1rgr19rvjri4kncn37k51l1n9y869r104b8lb";
   meta = {
     description = "A binary serialization library";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/citeproc-hs/default.nix b/pkgs/development/libraries/haskell/citeproc-hs/default.nix
index bb95e920ef9..5f7cce6b060 100644
--- a/pkgs/development/libraries/haskell/citeproc-hs/default.nix
+++ b/pkgs/development/libraries/haskell/citeproc-hs/default.nix
@@ -18,5 +18,6 @@ cabal.mkDerivation (self: {
     description = "A Citation Style Language implementation in Haskell";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix b/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix
index b2a85e35699..d96166817c2 100644
--- a/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "classy-prelude-conduit";
-  version = "0.9.5";
-  sha256 = "1m26d463h5hxiyc4dm6fwbyjwzmd0bwl2blwpgp4wqnyvspz195m";
+  version = "0.10.0";
+  sha256 = "0ziggymy37iz68c2rjdjdzjsamnvn81r836a6xx2nhqjivmfmlav";
   buildDepends = [
     classyPrelude conduit conduitCombinators monadControl resourcet
     systemFileio transformers void
diff --git a/pkgs/development/libraries/haskell/classy-prelude/default.nix b/pkgs/development/libraries/haskell/classy-prelude/default.nix
index b3f94ea7bdf..ccd78417515 100644
--- a/pkgs/development/libraries/haskell/classy-prelude/default.nix
+++ b/pkgs/development/libraries/haskell/classy-prelude/default.nix
@@ -1,18 +1,18 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, basicPrelude, chunkedData, enclosedExceptions, exceptions
-, hashable, hspec, liftedBase, monoTraversable, mtl, primitive
-, QuickCheck, semigroups, stm, systemFilepath, text, time
-, transformers, unorderedContainers, vector, vectorInstances
+{ cabal, basicPrelude, bifunctors, chunkedData, enclosedExceptions
+, exceptions, hashable, hspec, liftedBase, monoTraversable, mtl
+, primitive, QuickCheck, semigroups, stm, systemFilepath, text
+, time, transformers, unorderedContainers, vector, vectorInstances
 }:
 
 cabal.mkDerivation (self: {
   pname = "classy-prelude";
-  version = "0.9.5";
-  sha256 = "1gd5z4gd62v3k59psmrj41ca6mly4fjqgf4l80smv89kc2s2w809";
+  version = "0.10.0";
+  sha256 = "007a1gs9wgfw7gkm4jyh0fndcnxwkffzdm5rgxw08f1g8s0yqwf3";
   buildDepends = [
-    basicPrelude chunkedData enclosedExceptions exceptions hashable
-    liftedBase monoTraversable mtl primitive semigroups stm
+    basicPrelude bifunctors chunkedData enclosedExceptions exceptions
+    hashable liftedBase monoTraversable mtl primitive semigroups stm
     systemFilepath text time transformers unorderedContainers vector
     vectorInstances
   ];
diff --git a/pkgs/development/libraries/haskell/clean-unions/default.nix b/pkgs/development/libraries/haskell/clean-unions/default.nix
new file mode 100644
index 00000000000..9ec71da8eec
--- /dev/null
+++ b/pkgs/development/libraries/haskell/clean-unions/default.nix
@@ -0,0 +1,16 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal }:
+
+cabal.mkDerivation (self: {
+  pname = "clean-unions";
+  version = "0.1.1";
+  sha256 = "1y4cj15s6gjcazwk0iycyc2qs7chrqcvchf4g5h4xnf2x8ld4i21";
+  meta = {
+    homepage = "https://github.com/fumieval/clean-unions";
+    description = "Open unions without need for Typeable";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/clientsession/default.nix b/pkgs/development/libraries/haskell/clientsession/default.nix
index cee91c51be0..bd06ff10a86 100644
--- a/pkgs/development/libraries/haskell/clientsession/default.nix
+++ b/pkgs/development/libraries/haskell/clientsession/default.nix
@@ -1,17 +1,19 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
 { cabal, base64Bytestring, cereal, cipherAes, cprngAes, cryptoApi
-, cryptoRandom, entropy, hspec, HUnit, QuickCheck, skein, tagged
-, transformers
+, cryptoRandom, entropy, hspec, HUnit, QuickCheck, setenv, skein
+, tagged, transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "clientsession";
-  version = "0.9.0.5";
-  sha256 = "0l11wpxr3cgd8q708ay7957mdzq7nhm7c6z3p9iwl0lp3pkcl810";
+  version = "0.9.1";
+  sha256 = "1hq4f5iq4xb9jilr6qprww9lql314vpfw5khwmizljry9cwd2gq7";
+  isLibrary = true;
+  isExecutable = true;
   buildDepends = [
     base64Bytestring cereal cipherAes cprngAes cryptoApi cryptoRandom
-    entropy skein tagged
+    entropy setenv skein tagged
   ];
   testDepends = [ cereal hspec HUnit QuickCheck transformers ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/clock/default.nix b/pkgs/development/libraries/haskell/clock/default.nix
index 60bea4fed83..e97195cb5fc 100644
--- a/pkgs/development/libraries/haskell/clock/default.nix
+++ b/pkgs/development/libraries/haskell/clock/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "clock";
-  version = "0.4.1.1";
-  sha256 = "0xbhx16sa0rwidaljp8lklb5ifhdc8cccbyznrpxqqwh8icm5pjp";
+  version = "0.4.1.3";
+  sha256 = "0wqhg8gb10lby01f0v4fl4yp23l4ilizywp5xnsbja03svnb4f0d";
   meta = {
     homepage = "http://corsis.github.com/clock/";
     description = "High-resolution clock functions: monotonic, realtime, cputime";
diff --git a/pkgs/development/libraries/haskell/cmdargs/default.nix b/pkgs/development/libraries/haskell/cmdargs/default.nix
index a3c7cd1773f..0f5cdf427eb 100644
--- a/pkgs/development/libraries/haskell/cmdargs/default.nix
+++ b/pkgs/development/libraries/haskell/cmdargs/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cmdargs";
-  version = "0.10.10";
-  sha256 = "17glliishfxc01ippgzb8v12i40id2b6l18rqp6wfygbb7f93rvv";
+  version = "0.10.11";
+  sha256 = "0wfw6gpqbd89wzq6gh11bc35m2wbaf2jnkf6gxhpml70jn6ca8nz";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ filepath transformers ];
diff --git a/pkgs/development/libraries/haskell/cmdtheline/default.nix b/pkgs/development/libraries/haskell/cmdtheline/default.nix
index 8943eacdd21..aa83ae1a0ec 100644
--- a/pkgs/development/libraries/haskell/cmdtheline/default.nix
+++ b/pkgs/development/libraries/haskell/cmdtheline/default.nix
@@ -1,13 +1,15 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
 { cabal, filepath, HUnit, parsec, testFramework, testFrameworkHunit
-, transformers
+, transformers, fetchpatch
 }:
 
 cabal.mkDerivation (self: {
   pname = "cmdtheline";
   version = "0.2.3";
   sha256 = "1jwbr34xgccjbz6nm58bdsg1vqyv87rh45yia5j36vlfbaclyb04";
+  doCheck = false;
+  patches = [ (fetchpatch { url = "https://github.com/eli-frey/cmdtheline/pull/29.patch"; sha256 = "089rfvvjc44wnhph2ricpbz4iifhyvm1qzg8wsd596v81gy0zvrr"; }) ];
   buildDepends = [ filepath parsec transformers ];
   testDepends = [
     filepath HUnit parsec testFramework testFrameworkHunit transformers
@@ -18,6 +20,5 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
     hydraPlatforms = self.stdenv.lib.platforms.none;
-    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/conduit-extra/default.nix b/pkgs/development/libraries/haskell/conduit-extra/default.nix
index 8443a4909fc..1bcdd8f25e7 100644
--- a/pkgs/development/libraries/haskell/conduit-extra/default.nix
+++ b/pkgs/development/libraries/haskell/conduit-extra/default.nix
@@ -18,6 +18,7 @@ cabal.mkDerivation (self: {
     async attoparsec blazeBuilder conduit exceptions hspec resourcet
     stm text transformers transformersBase
   ];
+  doCheck = false;
   meta = {
     homepage = "http://github.com/snoyberg/conduit";
     description = "Batteries included conduit: adapters for common libraries";
diff --git a/pkgs/development/libraries/haskell/conduit/default.nix b/pkgs/development/libraries/haskell/conduit/default.nix
index 5b82a2f26a0..f58293ec5e6 100644
--- a/pkgs/development/libraries/haskell/conduit/default.nix
+++ b/pkgs/development/libraries/haskell/conduit/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "conduit";
-  version = "1.2.0.2";
-  sha256 = "0gr4vqyvy3jdc1l7sinwr5dgmwzv7dq2z1npwvmbxz85bq89rmd9";
+  version = "1.2.1";
+  sha256 = "0pcnaqvavy289cmsp6mfapc350p9sq2fq8aq9lv5a256nxq2qffa";
   buildDepends = [
     exceptions liftedBase mmorph monadControl mtl resourcet
     transformers transformersBase void
diff --git a/pkgs/development/libraries/haskell/cookie/default.nix b/pkgs/development/libraries/haskell/cookie/default.nix
index 108fb48f939..abbafafa529 100644
--- a/pkgs/development/libraries/haskell/cookie/default.nix
+++ b/pkgs/development/libraries/haskell/cookie/default.nix
@@ -1,18 +1,17 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
 { cabal, blazeBuilder, dataDefault, deepseq, HUnit, QuickCheck
-, testFramework, testFrameworkHunit, testFrameworkQuickcheck2, text
-, time
+, tasty, tastyHunit, tastyQuickcheck, text, time
 }:
 
 cabal.mkDerivation (self: {
   pname = "cookie";
-  version = "0.4.1.3";
-  sha256 = "184ymp1pbi49fm4jl9s04dfyrgdbc9vlmqahqha4yncppr5s1sdw";
+  version = "0.4.1.4";
+  sha256 = "0axvljw34cjw47fxwxqql8rvjsyp9gxfbaijmysy5j10kx8s931d";
   buildDepends = [ blazeBuilder dataDefault deepseq text time ];
   testDepends = [
-    blazeBuilder HUnit QuickCheck testFramework testFrameworkHunit
-    testFrameworkQuickcheck2 text time
+    blazeBuilder HUnit QuickCheck tasty tastyHunit tastyQuickcheck text
+    time
   ];
   doCheck = self.stdenv.lib.versionOlder "7.8" self.ghc.version;
   meta = {
diff --git a/pkgs/development/libraries/haskell/criterion/default.nix b/pkgs/development/libraries/haskell/criterion/default.nix
index 5a5ce89f732..01ea0557565 100644
--- a/pkgs/development/libraries/haskell/criterion/default.nix
+++ b/pkgs/development/libraries/haskell/criterion/default.nix
@@ -9,8 +9,8 @@
 
 cabal.mkDerivation (self: {
   pname = "criterion";
-  version = "1.0.1.0";
-  sha256 = "1mp4rm6jd8g38yyhfrxk1xzhp6mxrwwns9kl6494ylsdpsv0v4ll";
+  version = "1.0.2.0";
+  sha256 = "02mcb49hiv0gijj5343gffdd3r8hjf4d52llv2gradaijz4zdqhx";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/derive/default.nix b/pkgs/development/libraries/haskell/derive/default.nix
index dbad9c538a9..5b8c5297316 100644
--- a/pkgs/development/libraries/haskell/derive/default.nix
+++ b/pkgs/development/libraries/haskell/derive/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "derive";
-  version = "2.5.16";
-  sha256 = "0vahwnb2hzdm990b2m139kbg9jkk4whcxjdfjvlpimqk72s27viy";
+  version = "2.5.18";
+  sha256 = "1jqng8v1d4rac8xmrpm7h1pkyr9pfwsbb0ap6pnwzpwz9fns9c3k";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/diagrams/cairo.nix b/pkgs/development/libraries/haskell/diagrams/cairo.nix
index cd42f175b96..33268b29592 100644
--- a/pkgs/development/libraries/haskell/diagrams/cairo.nix
+++ b/pkgs/development/libraries/haskell/diagrams/cairo.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "diagrams-cairo";
-  version = "1.2.0.2";
-  sha256 = "0qm1s56kg7l96p5cvmdxc0g8r8ibh7vpyavp64178mdy62b6xavh";
+  version = "1.2.0.3";
+  sha256 = "00x759n6jn8cpf49ma3mfs4v77g535cpjr5vcc81am37a3vq3ypk";
   buildDepends = [
     cairo colour dataDefaultClass diagramsCore diagramsLib filepath
     hashable JuicyPixels lens mtl optparseApplicative pango split
diff --git a/pkgs/development/libraries/haskell/diagrams/lib.nix b/pkgs/development/libraries/haskell/diagrams/lib.nix
index ea5b1aad27f..523911c2ea4 100644
--- a/pkgs/development/libraries/haskell/diagrams/lib.nix
+++ b/pkgs/development/libraries/haskell/diagrams/lib.nix
@@ -2,18 +2,18 @@
 
 { cabal, active, colour, dataDefaultClass, diagramsCore, dualTree
 , filepath, fingertree, hashable, intervals, JuicyPixels, lens
-, MemoTrie, monoidExtras, optparseApplicative, safe, semigroups
-, tagged, vectorSpace, vectorSpacePoints
+, MemoTrie, monoidExtras, optparseApplicative, semigroups, tagged
+, vectorSpace, vectorSpacePoints
 }:
 
 cabal.mkDerivation (self: {
   pname = "diagrams-lib";
-  version = "1.2.0.3";
-  sha256 = "1rgyv7yywmqk3s2cmv5s923421ybj6mnii7jgxri56jzw0agfyq7";
+  version = "1.2.0.4";
+  sha256 = "01gcbgxsnrcsysvpjhprym5ix10350x7l57f28nm0hbrfrsgidhz";
   buildDepends = [
     active colour dataDefaultClass diagramsCore dualTree filepath
     fingertree hashable intervals JuicyPixels lens MemoTrie
-    monoidExtras optparseApplicative safe semigroups tagged vectorSpace
+    monoidExtras optparseApplicative semigroups tagged vectorSpace
     vectorSpacePoints
   ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/diagrams/rasterific.nix b/pkgs/development/libraries/haskell/diagrams/rasterific.nix
index 6d20bcd2376..76427905617 100644
--- a/pkgs/development/libraries/haskell/diagrams/rasterific.nix
+++ b/pkgs/development/libraries/haskell/diagrams/rasterific.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "diagrams-rasterific";
-  version = "0.1.0.2";
-  sha256 = "16pwpa34hxf8qd7mf3zn4k7sr6p2pkvag3c77iwcs5qwqf5vhyf9";
+  version = "0.1.0.3";
+  sha256 = "0bscz7jkx1pwamfx5w90k19349qypzrlbd0in6kjpsw4nb58sy58";
   buildDepends = [
     dataDefaultClass diagramsCore diagramsLib filepath FontyFruity
     JuicyPixels lens mtl optparseApplicative Rasterific split
diff --git a/pkgs/development/libraries/haskell/direct-sqlite/default.nix b/pkgs/development/libraries/haskell/direct-sqlite/default.nix
index 07eca858972..c3be0f888ac 100644
--- a/pkgs/development/libraries/haskell/direct-sqlite/default.nix
+++ b/pkgs/development/libraries/haskell/direct-sqlite/default.nix
@@ -4,12 +4,12 @@
 
 cabal.mkDerivation (self: {
   pname = "direct-sqlite";
-  version = "2.3.13";
-  sha256 = "0d16jmls41cwyzg91fpd32dv8vvx1v3ilypv1wd7ya8j08fwfvdn";
+  version = "2.3.14";
+  sha256 = "0xxvr2wln54snkvs2r46fkkn7yhm6i2afgww40vnfqamg8g81x5w";
   buildDepends = [ text ];
   testDepends = [ base16Bytestring HUnit text ];
   meta = {
-    homepage = "http://ireneknapp.com/software/";
+    homepage = "https://github.com/IreneKnapp/direct-sqlite";
     description = "Low-level binding to SQLite3. Includes UTF8 and BLOB support.";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/distributed-process/default.nix b/pkgs/development/libraries/haskell/distributed-process/default.nix
index 21cebedefe4..24375cb277a 100644
--- a/pkgs/development/libraries/haskell/distributed-process/default.nix
+++ b/pkgs/development/libraries/haskell/distributed-process/default.nix
@@ -13,6 +13,7 @@ cabal.mkDerivation (self: {
     binary dataAccessor deepseq distributedStatic hashable mtl
     networkTransport random rank1dynamic stm syb time transformers
   ];
+  jailbreak = true;
   meta = {
     homepage = "http://haskell-distributed.github.com/";
     description = "Cloud Haskell: Erlang-style concurrency in Haskell";
diff --git a/pkgs/development/libraries/haskell/dsp/default.nix b/pkgs/development/libraries/haskell/dsp/default.nix
index 9b038d047f9..f0d64562d7c 100644
--- a/pkgs/development/libraries/haskell/dsp/default.nix
+++ b/pkgs/development/libraries/haskell/dsp/default.nix
@@ -9,6 +9,9 @@ cabal.mkDerivation (self: {
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ random ];
+  patchPhase = ''
+    sed -i -e 's|random.*<1.1,|random,|' dsp.cabal
+  '';
   meta = {
     homepage = "http://www.haskell.org/haskellwiki/DSP";
     description = "Haskell Digital Signal Processing";
diff --git a/pkgs/development/libraries/haskell/dynamic-state/default.nix b/pkgs/development/libraries/haskell/dynamic-state/default.nix
new file mode 100644
index 00000000000..21eb0fdab28
--- /dev/null
+++ b/pkgs/development/libraries/haskell/dynamic-state/default.nix
@@ -0,0 +1,18 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, binary, concreteTyperep, hashable, unorderedContainers }:
+
+cabal.mkDerivation (self: {
+  pname = "dynamic-state";
+  version = "0.1.1.0";
+  sha256 = "18dc6fbnyk3q7n7gvqrgy98qc2grq0algr2jnc1ai3vm9bqh2x8n";
+  buildDepends = [
+    binary concreteTyperep hashable unorderedContainers
+  ];
+  meta = {
+    description = "Optionally serializable dynamic state keyed by type";
+    license = self.stdenv.lib.licenses.gpl2;
+    platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/ekg-carbon/default.nix b/pkgs/development/libraries/haskell/ekg-carbon/default.nix
index 06daad66967..2339009a138 100644
--- a/pkgs/development/libraries/haskell/ekg-carbon/default.nix
+++ b/pkgs/development/libraries/haskell/ekg-carbon/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "ekg-carbon";
-  version = "1.0.1";
-  sha256 = "1slaykn1a6f09dzn78v2aqw8snmidycvaw5cfyr4f0ndd88vi77d";
+  version = "1.0.2";
+  sha256 = "0m8cv2hsn1745f7pj552rp9sjsyfh7fbgjw6k2ippqcbxmhqmf4i";
   buildDepends = [
     ekgCore network networkCarbon text time unorderedContainers vector
   ];
diff --git a/pkgs/development/libraries/haskell/ekg-core/default.nix b/pkgs/development/libraries/haskell/ekg-core/default.nix
index 2bdf088aea3..6e2189dbadb 100644
--- a/pkgs/development/libraries/haskell/ekg-core/default.nix
+++ b/pkgs/development/libraries/haskell/ekg-core/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "ekg-core";
-  version = "0.1.0.1";
-  sha256 = "1zha9r43nalxdw22s79mf89fwfzi8lq0q9ldhw7f6c63dnwxyjja";
+  version = "0.1.0.2";
+  sha256 = "0iipj2q4msawxlvzzikiy7jls22ncbx7v3ldi7y75d52cyl2lmpg";
   buildDepends = [ text unorderedContainers ];
   meta = {
     homepage = "https://github.com/tibbe/ekg-core";
diff --git a/pkgs/development/libraries/haskell/ekg/default.nix b/pkgs/development/libraries/haskell/ekg/default.nix
index 07c522b9818..4bf39315dad 100644
--- a/pkgs/development/libraries/haskell/ekg/default.nix
+++ b/pkgs/development/libraries/haskell/ekg/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "ekg";
-  version = "0.4.0.2";
-  sha256 = "0svw43dnlg93nyaxiq310sp5csbf0w68ipbhqkxm052yvc9k6fv9";
+  version = "0.4.0.3";
+  sha256 = "0fynng6r0aj25k4j8ba3fvq4a6kgijil4m9ygd99xq8c1cvj2zyy";
   buildDepends = [
     aeson ekgCore filepath network snapCore snapServer text time
     transformers unorderedContainers
diff --git a/pkgs/development/libraries/haskell/enclosed-exceptions/default.nix b/pkgs/development/libraries/haskell/enclosed-exceptions/default.nix
index 3470aab9b2b..a28c9fc4683 100644
--- a/pkgs/development/libraries/haskell/enclosed-exceptions/default.nix
+++ b/pkgs/development/libraries/haskell/enclosed-exceptions/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "enclosed-exceptions";
-  version = "1.0.0.2";
-  sha256 = "1jbgqqavkhz2x5br17bdhv17rcmyi7a5mxplakhgyyg73wkjq04h";
+  version = "1.0.1";
+  sha256 = "1kid1hi392h88a1am0jkm7dhwl3v78lw5wfcyhmh0x454yr3b6zz";
   buildDepends = [
     async deepseq liftedBase monadControl transformers transformersBase
   ];
diff --git a/pkgs/development/libraries/haskell/esqueleto/default.nix b/pkgs/development/libraries/haskell/esqueleto/default.nix
index c3b4850f5b2..e8d1059b699 100644
--- a/pkgs/development/libraries/haskell/esqueleto/default.nix
+++ b/pkgs/development/libraries/haskell/esqueleto/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "esqueleto";
-  version = "2.0.2";
-  sha256 = "1r8w3h36fhj77llcfgiq6ww634jymz8fpm86fm17arj7m7ll6rq3";
+  version = "2.1.0";
+  sha256 = "1qkxp12444wgf2hvhj3yw928sbd8y8rxpw90xpi2nx5jw5ws86qc";
   buildDepends = [
     conduit monadLogger persistent resourcet tagged text transformers
     unorderedContainers
diff --git a/pkgs/development/libraries/haskell/exception-mtl/default.nix b/pkgs/development/libraries/haskell/exception-mtl/default.nix
index d3d21aaf27a..49fb11535a1 100644
--- a/pkgs/development/libraries/haskell/exception-mtl/default.nix
+++ b/pkgs/development/libraries/haskell/exception-mtl/default.nix
@@ -4,11 +4,11 @@
 
 cabal.mkDerivation (self: {
   pname = "exception-mtl";
-  version = "0.3.0.4";
-  sha256 = "16airfs3z1qmx42qww22m21fryr8210m7ji5rgkl2amjvj4lllvc";
+  version = "0.3.0.5";
+  sha256 = "1rqrh1wbm67w9rbh1gg5zsavlsw9nfw0hnbs9q2djglh73pq3iqj";
   buildDepends = [ exceptionTransformers mtl transformers ];
   meta = {
-    homepage = "http://www.eecs.harvard.edu/~mainland/";
+    homepage = "http://www.cs.drexel.edu/~mainland/";
     description = "Exception monad transformer instances for mtl2 classes";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/exception-transformers/default.nix b/pkgs/development/libraries/haskell/exception-transformers/default.nix
index e6c778e981d..2e2f828cb30 100644
--- a/pkgs/development/libraries/haskell/exception-transformers/default.nix
+++ b/pkgs/development/libraries/haskell/exception-transformers/default.nix
@@ -1,15 +1,19 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, HUnit, stm, transformers }:
+{ cabal, HUnit, stm, testFramework, testFrameworkHunit
+, transformers
+}:
 
 cabal.mkDerivation (self: {
   pname = "exception-transformers";
-  version = "0.3.0.3";
-  sha256 = "0z3z5pppaqqbndd4fgv1czr8f9f4a8r86bwc3bcv88yf7y8cfbwz";
+  version = "0.3.0.4";
+  sha256 = "1m4mwgzynymdjvrrrvl90q468pgwik07yy2lsff9spxhcd43w2ra";
   buildDepends = [ stm transformers ];
-  testDepends = [ HUnit transformers ];
+  testDepends = [
+    HUnit testFramework testFrameworkHunit transformers
+  ];
   meta = {
-    homepage = "http://www.eecs.harvard.edu/~mainland/";
+    homepage = "http://www.cs.drexel.edu/~mainland/";
     description = "Type classes and monads for unchecked extensible exceptions";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/fay-base/default.nix b/pkgs/development/libraries/haskell/fay-base/default.nix
index 78f6b104c94..e978d5ec939 100644
--- a/pkgs/development/libraries/haskell/fay-base/default.nix
+++ b/pkgs/development/libraries/haskell/fay-base/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "fay-base";
-  version = "0.19.2";
-  sha256 = "08iv3097h877hxbmpmar1p526famm5pb1djq3qwla3bkqrzxgmf4";
+  version = "0.19.2.1";
+  sha256 = "19vzrdbd1c8wws4mccycpq70594qy2ka3mr5x5fsdya56ff4xgld";
   buildDepends = [ fay ];
   meta = {
     homepage = "https://github.com/faylang/fay-base";
diff --git a/pkgs/development/libraries/haskell/fay-text/default.nix b/pkgs/development/libraries/haskell/fay-text/default.nix
index 68bbe884e87..7f80072335a 100644
--- a/pkgs/development/libraries/haskell/fay-text/default.nix
+++ b/pkgs/development/libraries/haskell/fay-text/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "fay-text";
-  version = "0.3.0.2";
-  sha256 = "12hgamqbrflmnr3ri0ajvzf6al5nn4adcdmv6ag6h5mrsik2sklf";
+  version = "0.3.1";
+  sha256 = "0blr39vah0zd3i6clzzgmsfhxncwj8q6j4widk27iz3l27nlyin8";
   buildDepends = [ fay fayBase text ];
   meta = {
     homepage = "https://github.com/faylang/fay-text";
diff --git a/pkgs/development/libraries/haskell/fay/default.nix b/pkgs/development/libraries/haskell/fay/default.nix
index 90e3c5dadfc..fd1df306be7 100644
--- a/pkgs/development/libraries/haskell/fay/default.nix
+++ b/pkgs/development/libraries/haskell/fay/default.nix
@@ -9,8 +9,8 @@
 
 cabal.mkDerivation (self: {
   pname = "fay";
-  version = "0.20.2.0";
-  sha256 = "1xblfsd1rj38nlw0dl56zvvnad3l0bpsncv1k5vjs4h8cmwl1ik2";
+  version = "0.21.0.1";
+  sha256 = "0lrnn73xqgkgh5zd4ngvl0lyzqbx5kp52j14dj2xbkbxnnivwgl4";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/fb/default.nix b/pkgs/development/libraries/haskell/fb/default.nix
index b35f994caaa..0eb53c9165a 100644
--- a/pkgs/development/libraries/haskell/fb/default.nix
+++ b/pkgs/development/libraries/haskell/fb/default.nix
@@ -10,8 +10,8 @@
 
 cabal.mkDerivation (self: {
   pname = "fb";
-  version = "1.0.5";
-  sha256 = "1y4i6w659v4zm6kxz8fnzrwm0gjv7siqlh1wdsm03rcadkicyxmr";
+  version = "1.0.6";
+  sha256 = "16dwvh2xn14gpni0qpabqfifywrkdz1p0mmq6yyf3k19ix3xg9im";
   buildDepends = [
     aeson attoparsec base16Bytestring base64Bytestring cereal conduit
     conduitExtra cryptoApi cryptohash cryptohashCryptoapi dataDefault
diff --git a/pkgs/development/libraries/haskell/free-game/default.nix b/pkgs/development/libraries/haskell/free-game/default.nix
index ee47e6bb3f5..acd217f73f6 100644
--- a/pkgs/development/libraries/haskell/free-game/default.nix
+++ b/pkgs/development/libraries/haskell/free-game/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "free-game";
-  version = "1.1.78";
-  sha256 = "11f3ib4nx0madbx58gscaqwc1k5mxw70klrq7z7lac9w61phkws6";
+  version = "1.1.79";
+  sha256 = "0dlkkcbi7442cbl3ibzy234alaixh34hkc20wr7p75z47w1r5fbx";
   buildDepends = [
     boundingboxes colors controlBool filepath free freetype2 GLFWB
     hashable JuicyPixels JuicyPixelsUtil lens linear mtl OpenGL
diff --git a/pkgs/development/libraries/haskell/generic-aeson/default.nix b/pkgs/development/libraries/haskell/generic-aeson/default.nix
index 7cea462a1cb..47b2a7d26ad 100644
--- a/pkgs/development/libraries/haskell/generic-aeson/default.nix
+++ b/pkgs/development/libraries/haskell/generic-aeson/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "generic-aeson";
-  version = "0.2.0.0";
-  sha256 = "0w7bwmbjsskynyfisnhp4piikdw2jkr4zg24c9ipsp28szy8qsb9";
+  version = "0.2.0.1";
+  sha256 = "0k5zkfmwffdv4q0c9zgysq4654gjwnz1nbl37y8aq7g3rsfzfbf5";
   buildDepends = [
     aeson attoparsec genericDeriving mtl tagged text
     unorderedContainers vector
diff --git a/pkgs/development/libraries/haskell/ghc-heap-view/default.nix b/pkgs/development/libraries/haskell/ghc-heap-view/default.nix
index 704c820797e..a7032f5a250 100644
--- a/pkgs/development/libraries/haskell/ghc-heap-view/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-heap-view/default.nix
@@ -1,12 +1,13 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, binary, transformers }:
+{ cabal, binary, deepseq, transformers }:
 
 cabal.mkDerivation (self: {
   pname = "ghc-heap-view";
-  version = "0.5.1";
-  sha256 = "1qi7f3phj2j63x1wd2cvk36945cxd84s12zs03hlrn49wzx2pf1n";
+  version = "0.5.3";
+  sha256 = "1jcqi4gahxmhd61hl75wgb9dp99kxld68860jnd9x4hnp5cd33q0";
   buildDepends = [ binary transformers ];
+  testDepends = [ deepseq ];
   postInstall = ''
     ensureDir "$out/share/ghci"
     ln -s "$out/share/$pname-$version/ghci" "$out/share/ghci/$pname"
@@ -16,8 +17,5 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = with self.stdenv.lib.maintainers; [ andres ];
-    hydraPlatforms = self.stdenv.lib.platforms.none;
-    broken = self.stdenv.lib.versionOlder "7.7" self.ghc.version;
-
   };
 })
diff --git a/pkgs/development/libraries/haskell/ghc-mod/default.nix b/pkgs/development/libraries/haskell/ghc-mod/default.nix
index af4b76f7b78..6235dc71150 100644
--- a/pkgs/development/libraries/haskell/ghc-mod/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-mod/default.nix
@@ -1,21 +1,21 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, async, Cabal, convertible, deepseq, djinnGhc, doctest
-, emacs, filepath, ghcPaths, ghcSybUtils, haskellSrcExts, hlint
-, hspec, ioChoice, makeWrapper, monadControl, monadJournal, mtl
-, split, syb, text, time, transformers, transformersBase
+{ cabal, async, Cabal, convertible, dataDefault, deepseq, djinnGhc
+, doctest, emacs, filepath, ghcPaths, ghcSybUtils, haskellSrcExts
+, hlint, hspec, ioChoice, makeWrapper, monadControl, monadJournal
+, mtl, split, syb, text, time, transformers, transformersBase
 }:
 
 cabal.mkDerivation (self: {
   pname = "ghc-mod";
-  version = "5.1.0.2";
-  sha256 = "0jdni0n5qzz0ncaa3ja4b6vcfykbl7swiafak4wyvm9izssjh8ra";
+  version = "5.1.1.0";
+  sha256 = "0msx2x976ap4jx506mzp48sdigc29vq4ypjbxiyn30mjw52rg53w";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    async Cabal convertible deepseq djinnGhc filepath ghcPaths
-    ghcSybUtils haskellSrcExts hlint ioChoice monadControl monadJournal
-    mtl split syb text time transformers transformersBase
+    async Cabal convertible dataDefault deepseq djinnGhc filepath
+    ghcPaths ghcSybUtils haskellSrcExts hlint ioChoice monadControl
+    monadJournal mtl split syb text time transformers transformersBase
   ];
   testDepends = [
     Cabal convertible deepseq djinnGhc doctest filepath ghcPaths
diff --git a/pkgs/development/libraries/haskell/ghc-vis/default.nix b/pkgs/development/libraries/haskell/ghc-vis/default.nix
index 741523011ec..fadc69bae29 100644
--- a/pkgs/development/libraries/haskell/ghc-vis/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-vis/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "ghc-vis";
-  version = "0.7.2.3";
-  sha256 = "1gl059n85yxksnq8y7i1vrsjdg4al6himzpdmw95v61y59bbs6c2";
+  version = "0.7.2.5";
+  sha256 = "15dp34dvcqs3b0np1xpi3s6543svhgmxy1kzggw0rmflmq2whsd8";
   buildDepends = [
     cairo deepseq fgl ghcHeapView graphviz gtk mtl svgcairo text
     transformers xdot
@@ -22,6 +22,5 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = with self.stdenv.lib.maintainers; [ andres ];
-    hydraPlatforms = self.stdenv.lib.platforms.none;
   };
 })
diff --git a/pkgs/development/libraries/haskell/gio/default.nix b/pkgs/development/libraries/haskell/gio/default.nix
index 63468acf27f..443a15ff7a9 100644
--- a/pkgs/development/libraries/haskell/gio/default.nix
+++ b/pkgs/development/libraries/haskell/gio/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "gio";
-  version = "0.13.0.0";
-  sha256 = "05mycm6nrwwpjflcmm3w33b5nmm6fgyzwzrx1piqazvd1magwcyj";
+  version = "0.13.0.1";
+  sha256 = "03194npzv48flg6pba3m8c5gfmmy34z0545y84wa979z21fbv22m";
   buildDepends = [ glib mtl ];
   buildTools = [ gtk2hsBuildtools ];
   pkgconfigDepends = [ glib ];
diff --git a/pkgs/development/libraries/haskell/glib/default.nix b/pkgs/development/libraries/haskell/glib/default.nix
index 4a17862c966..57a0b05dcd7 100644
--- a/pkgs/development/libraries/haskell/glib/default.nix
+++ b/pkgs/development/libraries/haskell/glib/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "glib";
-  version = "0.13.0.1";
-  sha256 = "0xbv7y1lmy35k6h2cgav7mxvpywvwfw47jq7qkcjj8mmr2sizp8i";
+  version = "0.13.0.4";
+  sha256 = "1ckl6liw6x4hqirki1vcxrvdca0cf17kpxnngrfnxvndlwghly68";
   buildDepends = [ text utf8String ];
   buildTools = [ gtk2hsBuildtools ];
   extraLibraries = [ libc pkgconfig ];
diff --git a/pkgs/development/libraries/haskell/gtk/default.nix b/pkgs/development/libraries/haskell/gtk/default.nix
index bb667691677..03c814d359f 100644
--- a/pkgs/development/libraries/haskell/gtk/default.nix
+++ b/pkgs/development/libraries/haskell/gtk/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "gtk";
-  version = "0.13.0.0";
-  sha256 = "04xi1415i3qaiif9ha5wnmyzxxw8ix17zpvvfjn61nrxlk6p973m";
+  version = "0.13.0.2";
+  sha256 = "0m5gvs2zsm8y742yvfcd8h6qqihgjjyhhz8f4dxg589bhckv3amj";
   buildDepends = [ cairo gio glib mtl pango text ];
   buildTools = [ gtk2hsBuildtools ];
   extraLibraries = [ libc pkgconfig ];
diff --git a/pkgs/development/libraries/haskell/gtk2hs-buildtools/default.nix b/pkgs/development/libraries/haskell/gtk2hs-buildtools/default.nix
index 1fe97ad01aa..2081f7467d7 100644
--- a/pkgs/development/libraries/haskell/gtk2hs-buildtools/default.nix
+++ b/pkgs/development/libraries/haskell/gtk2hs-buildtools/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "gtk2hs-buildtools";
-  version = "0.13.0.1";
-  sha256 = "0ngdg44hxpyga9kwm70340c8jhsh9wl5rja3wx9mfx194idivaxa";
+  version = "0.13.0.2";
+  sha256 = "14yx2v2y3k0cvjsgknff9qbv0pfnbar4j1b1hpz9ygjhb8kd5kjl";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [ filepath hashtables random ];
diff --git a/pkgs/development/libraries/haskell/gtk3/default.nix b/pkgs/development/libraries/haskell/gtk3/default.nix
index 99d76c03c52..c6365eb8000 100644
--- a/pkgs/development/libraries/haskell/gtk3/default.nix
+++ b/pkgs/development/libraries/haskell/gtk3/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "gtk3";
-  version = "0.13.0.0";
-  sha256 = "0aq58gf6bcwnk085in0xilg7p8zyd2v079aqk1c47gjyrcg7p78f";
+  version = "0.13.0.2";
+  sha256 = "0j5df9xah5ya91x3d7cyy5zw7mkw3j2y7n0vv5s78w0adchaxzzl";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ cairo gio glib mtl pango text time transformers ];
diff --git a/pkgs/development/libraries/haskell/gtksourceview2/default.nix b/pkgs/development/libraries/haskell/gtksourceview2/default.nix
index 393c1f07682..cee7f9737fd 100644
--- a/pkgs/development/libraries/haskell/gtksourceview2/default.nix
+++ b/pkgs/development/libraries/haskell/gtksourceview2/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "gtksourceview2";
-  version = "0.13.0.0";
-  sha256 = "0md4dwg68cgq5qj80rjvsrckwn2ap9d1xp0hy8w1iiyii8dfqcnn";
+  version = "0.13.1.0";
+  sha256 = "1znmr694jxam9n5lgikrhf8wb4jwdml82a3mgnpfr482a8knndbn";
   buildDepends = [ glib gtk mtl text ];
   buildTools = [ gtk2hsBuildtools ];
   extraLibraries = [ libc pkgconfig ];
diff --git a/pkgs/development/libraries/haskell/hS3/default.nix b/pkgs/development/libraries/haskell/hS3/default.nix
index 65ba25d1d9a..5cbad954c31 100644
--- a/pkgs/development/libraries/haskell/hS3/default.nix
+++ b/pkgs/development/libraries/haskell/hS3/default.nix
@@ -1,18 +1,18 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, Crypto, dataenc, HTTP, hxt, MissingH, network, random
-, regexCompat, utf8String
+{ cabal, Crypto, dataenc, HTTP, hxt, MissingH, network, networkUri
+, random, regexCompat, utf8String
 }:
 
 cabal.mkDerivation (self: {
   pname = "hS3";
-  version = "0.5.8";
-  sha256 = "1wmrrmlz4qlhr75lixn385pjpvpq21aafgf0fw8jyfqgdyjkg7bm";
+  version = "0.5.9";
+  sha256 = "0nf71jb15gkkcrb0x83mmql6j55c6dnz3bl3yq1grphwn0jbmq3y";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    Crypto dataenc HTTP hxt MissingH network random regexCompat
-    utf8String
+    Crypto dataenc HTTP hxt MissingH network networkUri random
+    regexCompat utf8String
   ];
   meta = {
     homepage = "http://gregheartsfield.com/hS3/";
diff --git a/pkgs/development/libraries/haskell/happstack/happstack-lite.nix b/pkgs/development/libraries/haskell/happstack/happstack-lite.nix
index 610220cc09e..fa904e0434a 100644
--- a/pkgs/development/libraries/haskell/happstack/happstack-lite.nix
+++ b/pkgs/development/libraries/haskell/happstack/happstack-lite.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "happstack-lite";
-  version = "7.3.4";
-  sha256 = "06ndqfd4x49yi17kgiz5xr05l1k6sj5g1f6kir10wgsqhmd0q811";
+  version = "7.3.5";
+  sha256 = "1gkzkmg1ad5k9hb4gix2afq1k4j996qpp8mm1jzqk03a5njdpb4b";
   buildDepends = [ happstackServer mtl text ];
   meta = {
     homepage = "http://www.happstack.com/";
diff --git a/pkgs/development/libraries/haskell/happstack/happstack-server.nix b/pkgs/development/libraries/haskell/happstack/happstack-server.nix
index 1bc0b36f120..24b740736bf 100644
--- a/pkgs/development/libraries/haskell/happstack/happstack-server.nix
+++ b/pkgs/development/libraries/haskell/happstack/happstack-server.nix
@@ -9,8 +9,8 @@
 
 cabal.mkDerivation (self: {
   pname = "happstack-server";
-  version = "7.3.8";
-  sha256 = "11jy4r4ih6sndyga3fjg298f5ww8806180dm3fgzsm0xfsjw1ac2";
+  version = "7.3.9";
+  sha256 = "10js2kmxw5lyy1h5xyz7qx852d29cl48qxyvadc4bdad6w06gdlz";
   buildDepends = [
     base64Bytestring blazeHtml extensibleExceptions filepath hslogger
     html monadControl mtl network networkUri parsec sendfile syb
diff --git a/pkgs/development/libraries/haskell/haskell-names/default.nix b/pkgs/development/libraries/haskell/haskell-names/default.nix
index fb1a1b6e263..f8ec4d67a0b 100644
--- a/pkgs/development/libraries/haskell/haskell-names/default.nix
+++ b/pkgs/development/libraries/haskell/haskell-names/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "haskell-names";
-  version = "0.4";
-  sha256 = "02cbs3bwakm9bwh4yy242msh5hibxfr9dsc6a0nbpihj1fhbv6b4";
+  version = "0.4.1";
+  sha256 = "1zkfq54s7n17g77sqzfhhc4bmqwdwbynz0gzwyaf3m4nmz6lkfl8";
   buildDepends = [
     aeson Cabal dataLensLight filepath haskellPackages haskellSrcExts
     hseCpp mtl tagged transformers traverseWithClass typeEq uniplate
diff --git a/pkgs/development/libraries/haskell/haskell-packages/default.nix b/pkgs/development/libraries/haskell/haskell-packages/default.nix
index 0044d6aa052..a23c6691a66 100644
--- a/pkgs/development/libraries/haskell/haskell-packages/default.nix
+++ b/pkgs/development/libraries/haskell/haskell-packages/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "haskell-packages";
-  version = "0.2.4.2";
-  sha256 = "03qg6b6vy9c8j9k91jajkjhswcks64vcdd28606aac0bw68lkjkg";
+  version = "0.2.4.3";
+  sha256 = "0s1z5zzl53nmjnrlf1czri634h8fksbgkqvvz8hpwa60wsaf4dxn";
   buildDepends = [
     aeson Cabal deepseq filepath haskellSrcExts hseCpp mtl
     optparseApplicative tagged transformers transformersCompat
diff --git a/pkgs/development/libraries/haskell/haskell-src-exts/default.nix b/pkgs/development/libraries/haskell/haskell-src-exts/1.15.0.1.nix
index b8c0a78001b..93e07dede85 100644
--- a/pkgs/development/libraries/haskell/haskell-src-exts/default.nix
+++ b/pkgs/development/libraries/haskell/haskell-src-exts/1.15.0.1.nix
@@ -14,11 +14,11 @@ cabal.mkDerivation (self: {
     tastySmallcheck
   ];
   buildTools = [ happy ];
-  doCheck = false;
   meta = {
     homepage = "https://github.com/haskell-suite/haskell-src-exts";
     description = "Manipulating Haskell source: abstract syntax, lexer, parser, and pretty-printer";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    hydraPlatforms = self.stdenv.lib.platforms.none;
   };
 })
diff --git a/pkgs/development/libraries/haskell/haskell-src-exts/1.13.5.nix b/pkgs/development/libraries/haskell/haskell-src-exts/1.16.0.nix
index 1f9d3bf4d19..4e52ceb6c0d 100644
--- a/pkgs/development/libraries/haskell/haskell-src-exts/1.13.5.nix
+++ b/pkgs/development/libraries/haskell/haskell-src-exts/1.16.0.nix
@@ -1,19 +1,23 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, cpphs, happy }:
+{ cabal, cpphs, filepath, happy, mtl, smallcheck, syb, tasty
+, tastyGolden, tastySmallcheck
+}:
 
 cabal.mkDerivation (self: {
   pname = "haskell-src-exts";
-  version = "1.13.5";
-  sha256 = "03bzhfp7l9f5hh61qdrr83331nbfgj3jfsfylwmnmcknpisdqnkw";
+  version = "1.16.0";
+  sha256 = "15nhmwd2vfv14d4mc35alcjxg165a8jh0pgzinmx8aa8zbzvz5ha";
   buildDepends = [ cpphs ];
+  testDepends = [
+    filepath mtl smallcheck syb tasty tastyGolden tastySmallcheck
+  ];
   buildTools = [ happy ];
   doCheck = false;
   meta = {
-    homepage = "http://code.haskell.org/haskell-src-exts";
+    homepage = "https://github.com/haskell-suite/haskell-src-exts";
     description = "Manipulating Haskell source: abstract syntax, lexer, parser, and pretty-printer";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
-    hydraPlatforms = self.stdenv.lib.platforms.none;
   };
 })
diff --git a/pkgs/development/libraries/haskell/haskell-src-meta/default.nix b/pkgs/development/libraries/haskell/haskell-src-meta/default.nix
index cc6cc60bb18..e43c0430be7 100644
--- a/pkgs/development/libraries/haskell/haskell-src-meta/default.nix
+++ b/pkgs/development/libraries/haskell/haskell-src-meta/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "haskell-src-meta";
-  version = "0.6.0.7";
-  sha256 = "0cxqh35cd2j6ljsmgjisgm9pn26rj01x43mkn9jk6qs1fbqspb4d";
+  version = "0.6.0.8";
+  sha256 = "1fv228n9zbqa52aif7pkylrqgz2n63xhxly9f828i18xf02rmxnk";
   buildDepends = [ haskellSrcExts syb thOrphans uniplate ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/haskelldb/default.nix b/pkgs/development/libraries/haskell/haskelldb/default.nix
index ecb92c18493..d732a465580 100644
--- a/pkgs/development/libraries/haskell/haskelldb/default.nix
+++ b/pkgs/development/libraries/haskell/haskelldb/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "haskelldb";
-  version = "2.2.2";
-  sha256 = "1nwy05wsffagv62kbi8ahm6s591wal7cdl19p0fqi86qz05y9hkm";
+  version = "2.2.4";
+  sha256 = "0f8c9bz25wzsc65czv0chxk93w947824axl7p821fljlrykcm45y";
   buildDepends = [ mtl time ];
   meta = {
     homepage = "https://github.com/m4dc4p/haskelldb";
@@ -13,7 +13,5 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = with self.stdenv.lib.maintainers; [ ocharles ];
-    hydraPlatforms = self.stdenv.lib.platforms.none;
-    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/haskintex/default.nix b/pkgs/development/libraries/haskell/haskintex/default.nix
index d5a9a5ff3a2..c659d3966f0 100644
--- a/pkgs/development/libraries/haskell/haskintex/default.nix
+++ b/pkgs/development/libraries/haskell/haskintex/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "haskintex";
-  version = "0.5.0.1";
-  sha256 = "14x1n7x0dqcj14qkv0lmf2jcrswyjjjygqj5vdj6w29a8v9zr296";
+  version = "0.5.0.2";
+  sha256 = "1qfqslr8pxks3qmfarmscgvc0q8zn72prqyk5xhmfvkf6q35pmfn";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/haste-compiler/default.nix b/pkgs/development/libraries/haskell/haste-compiler/default.nix
index dfedd812a20..a6d9c6f8371 100644
--- a/pkgs/development/libraries/haskell/haste-compiler/default.nix
+++ b/pkgs/development/libraries/haskell/haste-compiler/default.nix
@@ -22,5 +22,6 @@ cabal.mkDerivation (self: {
     description = "Haskell To ECMAScript compiler";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/haste-perch/default.nix b/pkgs/development/libraries/haskell/haste-perch/default.nix
index aec315995c8..8b55299eab5 100644
--- a/pkgs/development/libraries/haskell/haste-perch/default.nix
+++ b/pkgs/development/libraries/haskell/haste-perch/default.nix
@@ -13,5 +13,6 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.gpl3;
     platforms = self.ghc.meta.platforms;
     maintainers = with self.stdenv.lib.maintainers; [ tomberek ];
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/heist/default.nix b/pkgs/development/libraries/haskell/heist/default.nix
index b1422f616c9..9927e65cfc3 100644
--- a/pkgs/development/libraries/haskell/heist/default.nix
+++ b/pkgs/development/libraries/haskell/heist/default.nix
@@ -1,19 +1,19 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
 { cabal, aeson, attoparsec, blazeBuilder, blazeHtml, directoryTree
-, dlist, errors, filepath, hashable, MonadCatchIOTransformers, mtl
-, random, text, time, transformers, unorderedContainers, vector
-, xmlhtml
+, dlist, errors, filepath, hashable, mapSyntax
+, MonadCatchIOTransformers, mtl, random, text, time, transformers
+, unorderedContainers, vector, xmlhtml
 }:
 
 cabal.mkDerivation (self: {
   pname = "heist";
-  version = "0.13.1.2";
-  sha256 = "0c80lf00n3iv55mw4p61bjx14gildvxnvfdaa755ghkg1wcd59s5";
+  version = "0.14.0.1";
+  sha256 = "1nhksdn95v35ymml3kgm70axjl4vkjfvj1wvlcm1a1frlnbk993w";
   buildDepends = [
     aeson attoparsec blazeBuilder blazeHtml directoryTree dlist errors
-    filepath hashable MonadCatchIOTransformers mtl random text time
-    transformers unorderedContainers vector xmlhtml
+    filepath hashable mapSyntax MonadCatchIOTransformers mtl random
+    text time transformers unorderedContainers vector xmlhtml
   ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/here/default.nix b/pkgs/development/libraries/haskell/here/default.nix
index 2179ad0d85f..a7a1527cd1d 100644
--- a/pkgs/development/libraries/haskell/here/default.nix
+++ b/pkgs/development/libraries/haskell/here/default.nix
@@ -1,20 +1,17 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
-# The file was later edited to add the state patch.
-# https://github.com/np/here/commit/3c16a4e4ce16c08904454972c0d9b43007d1c0cc
 
-{ cabal, haskellSrcMeta, mtl, parsec, fetchpatch }:
+{ cabal, haskellSrcMeta, mtl, parsec }:
 
 cabal.mkDerivation (self: {
   pname = "here";
-  version = "1.2.5";
-  sha256 = "0r7hjsvbx7vshbdhi60955mdfnq6arg5ihfz9f2zyilh4l5cyzwb";
+  version = "1.2.6";
+  sha256 = "1c7b0a5a42ki8ndvc2k35jnsj433f1nv1j40vviasxksm7acbwif";
   buildDepends = [ haskellSrcMeta mtl parsec ];
-  patches = [ (fetchpatch { url = "https://github.com/np/here/commit/3c16a4e4ce16c08904454972c0d9b43007d1c0cc.patch"; sha256 = "1qibwbcpnl1cg35zvvdd2k8nr6bgd36qbla3naim3g08qaapm82h"; }) ];
-  meta = with self.stdenv.lib; {
+  meta = {
     homepage = "https://github.com/tmhedberg/here";
     description = "Here docs & interpolated strings via quasiquotation";
-    license = licenses.bsd3;
+    license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
-    maintainers = with maintainers; [ edwtjo ];
+    maintainers = with self.stdenv.lib.maintainers; [ edwtjo ];
   };
 })
diff --git a/pkgs/development/libraries/haskell/hexpat/default.nix b/pkgs/development/libraries/haskell/hexpat/default.nix
index 9e2e6d93f83..63e92de9424 100644
--- a/pkgs/development/libraries/haskell/hexpat/default.nix
+++ b/pkgs/development/libraries/haskell/hexpat/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hexpat";
-  version = "0.20.6";
-  sha256 = "02ms6lchj6k0krqjk47bibfb0cbpbc16ip9f22c4rgp04qkzp60b";
+  version = "0.20.7";
+  sha256 = "03r5j54a250f01km6i8qja1h1k512ds2bp7r0yk2jpbbar2y7c08";
   buildDepends = [ deepseq List text transformers utf8String ];
   meta = {
     homepage = "http://haskell.org/haskellwiki/Hexpat/";
diff --git a/pkgs/development/libraries/haskell/hindent/default.nix b/pkgs/development/libraries/haskell/hindent/default.nix
index ca76bda7c34..dcaef42fd53 100644
--- a/pkgs/development/libraries/haskell/hindent/default.nix
+++ b/pkgs/development/libraries/haskell/hindent/default.nix
@@ -1,17 +1,22 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, dataDefault, haskellSrcExts, monadLoops, mtl, text }:
+{ cabal, dataDefault, haskellSrcExts, hspec, monadLoops, mtl, text
+}:
 
 cabal.mkDerivation (self: {
   pname = "hindent";
-  version = "3.4";
-  sha256 = "060l4dkqz4fma005yai6mdv2bdr2lp59z289j7rv1ygr6p8pqhci";
+  version = "3.8";
+  sha256 = "015madajwljh2an3djla0qdds8bg7kgcdn3xb30cdf6gb77mf1xv";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ dataDefault haskellSrcExts monadLoops mtl text ];
+  testDepends = [
+    dataDefault haskellSrcExts hspec monadLoops mtl text
+  ];
   meta = {
     description = "Extensible Haskell pretty printer";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/hit/default.nix b/pkgs/development/libraries/haskell/hit/default.nix
index bf92945d164..08ff35ca8aa 100644
--- a/pkgs/development/libraries/haskell/hit/default.nix
+++ b/pkgs/development/libraries/haskell/hit/default.nix
@@ -2,19 +2,19 @@
 
 { cabal, attoparsec, bytedump, cryptohash, hourglass, HUnit, mtl
 , parsec, patience, QuickCheck, random, systemFileio
-, systemFilepath, testFramework, testFrameworkQuickcheck2, vector
-, zlib, zlibBindings
+, systemFilepath, testFramework, testFrameworkQuickcheck2
+, unixCompat, vector, zlib, zlibBindings
 }:
 
 cabal.mkDerivation (self: {
   pname = "hit";
-  version = "0.6.1";
-  sha256 = "175i6gag596dy341jlr5sjj55qcaqgymrcr1czcaigsxsn5yx8b9";
+  version = "0.6.2";
+  sha256 = "07lfjbn48v8ykkyj15diy4a9kpgzc93gv0l1rdfcacl3f26a97hs";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
     attoparsec cryptohash hourglass mtl parsec patience random
-    systemFileio systemFilepath vector zlib zlibBindings
+    systemFileio systemFilepath unixCompat vector zlib zlibBindings
   ];
   testDepends = [
     bytedump hourglass HUnit QuickCheck testFramework
diff --git a/pkgs/development/libraries/haskell/hmatrix/default.nix b/pkgs/development/libraries/haskell/hmatrix/default.nix
index 7a335fefb34..cbb4a44655d 100644
--- a/pkgs/development/libraries/haskell/hmatrix/default.nix
+++ b/pkgs/development/libraries/haskell/hmatrix/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hmatrix";
-  version = "0.16.0.5";
-  sha256 = "12019yd4hxqryxsrppijff6w0wmqj2l5cssldh1lyv4dbjaaxb5y";
+  version = "0.16.0.6";
+  sha256 = "13xbz0dx153m6nc7lv522gihvav5n6a4kiavwsqwh27ql4zyind7";
   buildDepends = [
     binary deepseq random split storableComplex vector
   ];
diff --git a/pkgs/development/libraries/haskell/hoauth2/default.nix b/pkgs/development/libraries/haskell/hoauth2/default.nix
index e9b0d4bf260..6de6e25b4b6 100644
--- a/pkgs/development/libraries/haskell/hoauth2/default.nix
+++ b/pkgs/development/libraries/haskell/hoauth2/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hoauth2";
-  version = "0.4.1";
-  sha256 = "145lgy9bxx1xdljbkvi6s97n2z1k5fd0idp415r71ydw8h3i8ppx";
+  version = "0.4.2";
+  sha256 = "08vdrgzn1j02gn2j5apjhnv2lgp7i8xhvibqjcjf4l80spmja2h0";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/hoogle/default.nix b/pkgs/development/libraries/haskell/hoogle/default.nix
index bda89829d68..5b12f8d28c4 100644
--- a/pkgs/development/libraries/haskell/hoogle/default.nix
+++ b/pkgs/development/libraries/haskell/hoogle/default.nix
@@ -2,14 +2,15 @@
 
 { cabal, aeson, binary, blazeBuilder, Cabal, caseInsensitive
 , cmdargs, conduit, deepseq, filepath, haskellSrcExts, httpTypes
-, parsec, QuickCheck, random, resourcet, safe, shake, tagsoup, text
-, time, transformers, uniplate, vector, vectorAlgorithms, wai, warp
+, parsec, QuickCheck, random, resourcet, safe, shake, tagsoup
+, temporary, text, time, transformers, uniplate, vector
+, vectorAlgorithms, wai, warp
 }:
 
 cabal.mkDerivation (self: {
   pname = "hoogle";
-  version = "4.2.34";
-  sha256 = "0vldc7s3nq70jxmnxdzlfrlwg0pxw0lq1lcd53klj2ksjkqhm5jg";
+  version = "4.2.36";
+  sha256 = "1h65pl0jfki2pcrywak9mh3hfi3wziffhb2q0xp6r4v01536zifv";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
@@ -18,7 +19,7 @@ cabal.mkDerivation (self: {
     resourcet safe shake tagsoup text time transformers uniplate vector
     vectorAlgorithms wai warp
   ];
-  testDepends = [ filepath ];
+  testDepends = [ filepath temporary ];
   testTarget = "--test-option=--no-net";
   meta = {
     homepage = "http://www.haskell.org/hoogle/";
diff --git a/pkgs/development/libraries/haskell/hourglass/default.nix b/pkgs/development/libraries/haskell/hourglass/default.nix
index 5b11121a9ef..16b8adfa31d 100644
--- a/pkgs/development/libraries/haskell/hourglass/default.nix
+++ b/pkgs/development/libraries/haskell/hourglass/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hourglass";
-  version = "0.2.2";
-  sha256 = "015ipy9adi67nfddjsw9c0ihn0banghgawjli0lgrmiyjz01610c";
+  version = "0.2.5";
+  sha256 = "08nw9zqa0y09lw0c6qlh9pn8vr6h03mw1i7n7w0y3fv94az9vg9v";
   buildDepends = [ deepseq ];
   testDepends = [
     deepseq mtl tasty tastyHunit tastyQuickcheck time
diff --git a/pkgs/development/libraries/haskell/hplayground/default.nix b/pkgs/development/libraries/haskell/hplayground/default.nix
index ed116058e92..c4e9ddbe2aa 100644
--- a/pkgs/development/libraries/haskell/hplayground/default.nix
+++ b/pkgs/development/libraries/haskell/hplayground/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hplayground";
-  version = "0.1.0.5";
-  sha256 = "0hd4xmw4lfaaar7yxwhq4msg2qbn42q57rvaphl95pbr4x5a0h70";
+  version = "0.1.1.0";
+  sha256 = "03ya82lxhv7acakhl01835p3wvwr3z14jiww7wvj4bzlib8qsi8b";
   buildDepends = [
     dataDefault hasteCompiler hastePerch monadsTf transformers
   ];
@@ -17,5 +17,6 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = with self.stdenv.lib.maintainers; [ tomberek ];
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/hsimport/default.nix b/pkgs/development/libraries/haskell/hsimport/default.nix
index c9809d3eff0..068aed9ff89 100644
--- a/pkgs/development/libraries/haskell/hsimport/default.nix
+++ b/pkgs/development/libraries/haskell/hsimport/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hsimport";
-  version = "0.6";
-  sha256 = "07nhymn4kww1c5f9sjbmdg8ng08wbgmpvf5hws4qpwmfw1yfgdpn";
+  version = "0.6.2";
+  sha256 = "02v32gh5has3y8qk55cpdr0336n2hi33d5aw0ifpg84p89k8kr33";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/hspec-wai/default.nix b/pkgs/development/libraries/haskell/hspec-wai/default.nix
index 9cf37d4622c..cad0951b7c0 100644
--- a/pkgs/development/libraries/haskell/hspec-wai/default.nix
+++ b/pkgs/development/libraries/haskell/hspec-wai/default.nix
@@ -1,20 +1,18 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, aeson, aesonQq, caseInsensitive, hspec2, httpTypes
-, markdownUnlit, scotty, text, transformers, wai, waiExtra
+{ cabal, caseInsensitive, hspec2, httpTypes, text, transformers
+, wai, waiExtra
 }:
 
 cabal.mkDerivation (self: {
   pname = "hspec-wai";
-  version = "0.4.1";
-  sha256 = "1005qhzi561zc5kbdc55d3wjngdcal47him19fn5gk4389jdbln7";
+  version = "0.5.1";
+  sha256 = "0l2fgcxq9ca593kvi5a3g68m49wkdjrziczbk06hlb40x8vg0qw9";
   buildDepends = [
-    aeson aesonQq caseInsensitive hspec2 httpTypes text transformers
-    wai waiExtra
+    caseInsensitive hspec2 httpTypes text transformers wai waiExtra
   ];
   testDepends = [
-    aeson caseInsensitive hspec2 httpTypes markdownUnlit scotty text
-    transformers wai waiExtra
+    caseInsensitive hspec2 httpTypes text transformers wai waiExtra
   ];
   meta = {
     description = "Experimental Hspec support for testing WAI applications (depends on hspec2!)";
diff --git a/pkgs/development/libraries/haskell/http-conduit/default.nix b/pkgs/development/libraries/haskell/http-conduit/default.nix
index 11efa4968af..5f95b1fd1f9 100644
--- a/pkgs/development/libraries/haskell/http-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/http-conduit/default.nix
@@ -3,14 +3,14 @@
 { cabal, blazeBuilder, caseInsensitive, conduit, conduitExtra
 , connection, cookie, dataDefaultClass, hspec, httpClient
 , httpClientTls, httpTypes, HUnit, liftedBase, monadControl, mtl
-, network, networkConduit, resourcet, streamingCommons, text, time
-, transformers, utf8String, wai, waiConduit, warp, warpTls
+, network, resourcet, streamingCommons, text, time, transformers
+, utf8String, wai, waiConduit, warp, warpTls
 }:
 
 cabal.mkDerivation (self: {
   pname = "http-conduit";
-  version = "2.1.4.3";
-  sha256 = "0318k4k4w1zpifalfa7vb33sd8ksa8jdyaxs4843idmwsz3ahwgq";
+  version = "2.1.4.5";
+  sha256 = "0damsk83j52ndciybxiss0whd486i10ibawxj70z1c0h78f9wwrs";
   buildDepends = [
     conduit httpClient httpClientTls httpTypes liftedBase monadControl
     mtl resourcet transformers
@@ -18,8 +18,8 @@ cabal.mkDerivation (self: {
   testDepends = [
     blazeBuilder caseInsensitive conduit conduitExtra connection cookie
     dataDefaultClass hspec httpClient httpTypes HUnit liftedBase
-    network networkConduit streamingCommons text time transformers
-    utf8String wai waiConduit warp warpTls
+    network streamingCommons text time transformers utf8String wai
+    waiConduit warp warpTls
   ];
   doCheck = false;
   meta = {
diff --git a/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix b/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix
index c2316799a03..61f4d91d5cc 100644
--- a/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix
+++ b/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix
@@ -2,15 +2,14 @@
 
 { cabal, async, blazeBuilder, caseInsensitive, conduit
 , conduitExtra, dataDefaultClass, hspec, httpClient, httpConduit
-, httpTypes, liftedBase, monadControl, network, networkConduit
-, resourcet, streamingCommons, text, transformers, wai, waiLogger
-, warp, word8
+, httpTypes, liftedBase, monadControl, network, resourcet
+, streamingCommons, text, transformers, wai, waiLogger, warp, word8
 }:
 
 cabal.mkDerivation (self: {
   pname = "http-reverse-proxy";
-  version = "0.4.0.1";
-  sha256 = "0gygmykxsy6rs3xmwb24s5c3brmabdgxb1w0ak82vyvfvsnqxz1h";
+  version = "0.4.1.2";
+  sha256 = "1gggn5l08g7mxbka0h7h8w687y3awbm19395fi6wvis76isyz8wy";
   buildDepends = [
     async blazeBuilder caseInsensitive conduit conduitExtra
     dataDefaultClass httpClient httpTypes liftedBase monadControl
@@ -19,8 +18,7 @@ cabal.mkDerivation (self: {
   ];
   testDepends = [
     blazeBuilder conduit conduitExtra hspec httpConduit httpTypes
-    liftedBase network networkConduit resourcet streamingCommons
-    transformers wai warp
+    liftedBase network resourcet streamingCommons transformers wai warp
   ];
   doCheck = false;
   meta = {
diff --git a/pkgs/development/libraries/haskell/http-streams/default.nix b/pkgs/development/libraries/haskell/http-streams/default.nix
index c4d3686ceb9..ec993a8b2a5 100644
--- a/pkgs/development/libraries/haskell/http-streams/default.nix
+++ b/pkgs/development/libraries/haskell/http-streams/default.nix
@@ -3,26 +3,26 @@
 { cabal, aeson, aesonPretty, attoparsec, base64Bytestring
 , blazeBuilder, caseInsensitive, HsOpenSSL, hspec
 , hspecExpectations, httpCommon, HUnit, ioStreams
-, MonadCatchIOTransformers, mtl, network, opensslStreams, snapCore
-, snapServer, systemFileio, systemFilepath, text, transformers
-, unorderedContainers
+, MonadCatchIOTransformers, mtl, network, networkUri
+, opensslStreams, snapCore, snapServer, systemFileio
+, systemFilepath, text, transformers, unorderedContainers
 }:
 
 cabal.mkDerivation (self: {
   pname = "http-streams";
-  version = "0.7.2.2";
-  sha256 = "093ldljnabkmi67vj1qnvdlpjk1mpgqwrzdl9cq93v64sqbfwkjw";
+  version = "0.7.2.4";
+  sha256 = "1hs2d5qiq5vq6qjxxx061w1iigr05chkv28xvlvxfz0wc7nlipzz";
   buildDepends = [
     aeson attoparsec base64Bytestring blazeBuilder caseInsensitive
-    HsOpenSSL httpCommon ioStreams mtl network opensslStreams text
-    transformers unorderedContainers
+    HsOpenSSL httpCommon ioStreams mtl network networkUri
+    opensslStreams text transformers unorderedContainers
   ];
   testDepends = [
     aeson aesonPretty attoparsec base64Bytestring blazeBuilder
     caseInsensitive HsOpenSSL hspec hspecExpectations httpCommon HUnit
-    ioStreams MonadCatchIOTransformers mtl network opensslStreams
-    snapCore snapServer systemFileio systemFilepath text transformers
-    unorderedContainers
+    ioStreams MonadCatchIOTransformers mtl network networkUri
+    opensslStreams snapCore snapServer systemFileio systemFilepath text
+    transformers unorderedContainers
   ];
   jailbreak = true;
   doCheck = false;
diff --git a/pkgs/development/libraries/haskell/httpd-shed/default.nix b/pkgs/development/libraries/haskell/httpd-shed/default.nix
index bf5ad9217d3..4ae04b2c726 100644
--- a/pkgs/development/libraries/haskell/httpd-shed/default.nix
+++ b/pkgs/development/libraries/haskell/httpd-shed/default.nix
@@ -14,5 +14,6 @@ cabal.mkDerivation (self: {
     description = "A simple web-server with an interact style API";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/hxt/default.nix b/pkgs/development/libraries/haskell/hxt/default.nix
index 1ca367a96c9..28eaff157f1 100644
--- a/pkgs/development/libraries/haskell/hxt/default.nix
+++ b/pkgs/development/libraries/haskell/hxt/default.nix
@@ -1,7 +1,7 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
 { cabal, binary, deepseq, filepath, HUnit, hxtCharproperties
-, hxtRegexXmlschema, hxtUnicode, mtl, network, parsec
+, hxtRegexXmlschema, hxtUnicode, mtl, networkUri, parsec
 }:
 
 cabal.mkDerivation (self: {
@@ -10,9 +10,9 @@ cabal.mkDerivation (self: {
   sha256 = "1dgdq2l9k8v36iahmkxxjmmv955f9gv6lq09nsah9zcscsgm0v2i";
   buildDepends = [
     binary deepseq filepath HUnit hxtCharproperties hxtRegexXmlschema
-    hxtUnicode mtl network parsec
+    hxtUnicode mtl networkUri parsec
   ];
-  jailbreak = true;
+  configureFlags = "-fnetwork-uri";
   meta = {
     homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
     description = "A collection of tools for processing XML with Haskell";
diff --git a/pkgs/development/libraries/haskell/iCalendar/default.nix b/pkgs/development/libraries/haskell/iCalendar/default.nix
index 33a5ba4bea6..867474fdfb9 100644
--- a/pkgs/development/libraries/haskell/iCalendar/default.nix
+++ b/pkgs/development/libraries/haskell/iCalendar/default.nix
@@ -18,5 +18,6 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = with self.stdenv.lib.maintainers; [ ocharles ];
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/ieee754/default.nix b/pkgs/development/libraries/haskell/ieee754/default.nix
index 1dd734af610..de0ce49c83e 100644
--- a/pkgs/development/libraries/haskell/ieee754/default.nix
+++ b/pkgs/development/libraries/haskell/ieee754/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "ieee754";
-  version = "0.7.3";
-  sha256 = "0gq747h15inxbxbgmzmchb9a8p57rhv3bmj69idx5arh0d3whgv0";
+  version = "0.7.4";
+  sha256 = "1pxbkfa21mvc869n18nn7r29hcinxdbsnk68nlldzld8f6m13g1h";
   meta = {
     homepage = "http://github.com/patperry/hs-ieee754";
     description = "Utilities for dealing with IEEE floating point numbers";
diff --git a/pkgs/development/libraries/haskell/imm/default.nix b/pkgs/development/libraries/haskell/imm/default.nix
index 5529f27eb5e..20ab917dbfd 100644
--- a/pkgs/development/libraries/haskell/imm/default.nix
+++ b/pkgs/development/libraries/haskell/imm/default.nix
@@ -23,5 +23,6 @@ cabal.mkDerivation (self: {
     description = "Retrieve RSS/Atom feeds and write one mail per new item in a maildir";
     license = "unknown";
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/implicit/default.nix b/pkgs/development/libraries/haskell/implicit/default.nix
index a2fd8cd438e..81331833cc4 100644
--- a/pkgs/development/libraries/haskell/implicit/default.nix
+++ b/pkgs/development/libraries/haskell/implicit/default.nix
@@ -21,5 +21,6 @@ cabal.mkDerivation (self: {
     description = "Math-inspired programmatic 2&3D CAD: CSG, bevels, and shells; gcode export..";
     license = "GPL";
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/interpolate/default.nix b/pkgs/development/libraries/haskell/interpolate/default.nix
index 875759a17eb..cc62218a928 100644
--- a/pkgs/development/libraries/haskell/interpolate/default.nix
+++ b/pkgs/development/libraries/haskell/interpolate/default.nix
@@ -1,16 +1,16 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, doctest, haskellSrcMeta, hspec, QuickCheck
-, quickcheckInstances, text
+{ cabal, haskellSrcMeta, hspec, QuickCheck, quickcheckInstances
+, text
 }:
 
 cabal.mkDerivation (self: {
   pname = "interpolate";
-  version = "0.0.4";
-  sha256 = "0yr0pahb07r7p6d7hb4bqafa64a4jkd37bchr6vkan2zbffwcrcm";
+  version = "0.1.0";
+  sha256 = "0wlc10qd1bq3xj64a3yq2gzds9kas9zyylkm9kxd46gy35fns6id";
   buildDepends = [ haskellSrcMeta ];
   testDepends = [
-    doctest haskellSrcMeta hspec QuickCheck quickcheckInstances text
+    haskellSrcMeta hspec QuickCheck quickcheckInstances text
   ];
   meta = {
     description = "String interpolation done right";
diff --git a/pkgs/development/libraries/haskell/intervals/default.nix b/pkgs/development/libraries/haskell/intervals/default.nix
index 962f30de8a0..8c552654bac 100644
--- a/pkgs/development/libraries/haskell/intervals/default.nix
+++ b/pkgs/development/libraries/haskell/intervals/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "intervals";
-  version = "0.7";
-  sha256 = "00kwq57x72xi5kca7symb98nzs1j82r6bkgvr83aqpvq0ql9ka9d";
+  version = "0.7.0.1";
+  sha256 = "02qb44ga2yfsymkfixy3fdp943r2flwrsaqhb0pjddr3ixzm4ap9";
   buildDepends = [ distributive ];
   testDepends = [ doctest filepath ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/ipprint/default.nix b/pkgs/development/libraries/haskell/ipprint/default.nix
index d9037a8229b..c0f012f5747 100644
--- a/pkgs/development/libraries/haskell/ipprint/default.nix
+++ b/pkgs/development/libraries/haskell/ipprint/default.nix
@@ -11,5 +11,6 @@ cabal.mkDerivation (self: {
     description = "Tiny helper for pretty-printing values in ghci console";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/json-schema/default.nix b/pkgs/development/libraries/haskell/json-schema/default.nix
index 0c06cb107d5..39374b436ad 100644
--- a/pkgs/development/libraries/haskell/json-schema/default.nix
+++ b/pkgs/development/libraries/haskell/json-schema/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "json-schema";
-  version = "0.7.0.1";
-  sha256 = "1r8f0i3w2g5i5amqpvmi6ys3ax4rzpbvwnvwk9wy95bch3nlvsw0";
+  version = "0.7.0.2";
+  sha256 = "1yh5zq10d0lyn67p5n3q445rcm18rdagj6pi2ic7fpyh9bks2r12";
   buildDepends = [
     aeson genericAeson genericDeriving mtl scientific tagged text time
     unorderedContainers vector
diff --git a/pkgs/development/libraries/haskell/jwt/default.nix b/pkgs/development/libraries/haskell/jwt/default.nix
index d9e4ce8f0dd..27eb104f4df 100644
--- a/pkgs/development/libraries/haskell/jwt/default.nix
+++ b/pkgs/development/libraries/haskell/jwt/default.nix
@@ -1,23 +1,23 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
 { cabal, aeson, base64Bytestring, cryptohash, dataDefault
-, httpTypes, HUnit, network, QuickCheck, scientific, tasty
-, tastyHunit, tastyQuickcheck, tastyTh, text, time
+, httpTypes, HUnit, network, networkUri, QuickCheck, scientific
+, tasty, tastyHunit, tastyQuickcheck, tastyTh, text, time
 , unorderedContainers
 }:
 
 cabal.mkDerivation (self: {
   pname = "jwt";
-  version = "0.4.0";
-  sha256 = "0kfdrl795h7nyai1gk056kjbw2c5n3bc30aq9466pky5jv6ywlbz";
+  version = "0.4.2";
+  sha256 = "167qm37y5f3d05spr0z2jwkbm2sszz3khs6zd1p0az5q4nhq295w";
   buildDepends = [
     aeson base64Bytestring cryptohash dataDefault httpTypes network
-    scientific text time unorderedContainers
+    networkUri scientific text time unorderedContainers
   ];
   testDepends = [
     aeson base64Bytestring cryptohash dataDefault httpTypes HUnit
-    network QuickCheck scientific tasty tastyHunit tastyQuickcheck
-    tastyTh text time unorderedContainers
+    network networkUri QuickCheck scientific tasty tastyHunit
+    tastyQuickcheck tastyTh text time unorderedContainers
   ];
   meta = {
     homepage = "https://bitbucket.org/ssaasen/haskell-jwt";
diff --git a/pkgs/development/libraries/haskell/lambdabot-utils/default.nix b/pkgs/development/libraries/haskell/lambdabot-utils/default.nix
index c7261c4eed8..34cf827c027 100644
--- a/pkgs/development/libraries/haskell/lambdabot-utils/default.nix
+++ b/pkgs/development/libraries/haskell/lambdabot-utils/default.nix
@@ -17,5 +17,6 @@ cabal.mkDerivation (self: {
     description = "Utility libraries for the advanced IRC bot, Lambdabot";
     license = "GPL";
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/lambdabot/default.nix b/pkgs/development/libraries/haskell/lambdabot/default.nix
index b869c59d131..88cd164ae4e 100644
--- a/pkgs/development/libraries/haskell/lambdabot/default.nix
+++ b/pkgs/development/libraries/haskell/lambdabot/default.nix
@@ -31,6 +31,6 @@ cabal.mkDerivation (self: {
     license = "GPL";
     platforms = self.ghc.meta.platforms;
     hydraPlatforms = self.stdenv.lib.platforms.none;
-    broken = self.stdenv.lib.versionOlder "7.7" self.ghc.version;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/language-c-quote/default.nix b/pkgs/development/libraries/haskell/language-c-quote/default.nix
index d08a5c7fab9..03b1d62546b 100644
--- a/pkgs/development/libraries/haskell/language-c-quote/default.nix
+++ b/pkgs/development/libraries/haskell/language-c-quote/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "language-c-quote";
-  version = "0.8.0";
-  sha256 = "0k171hbwj108azhlwpnvkl0r4n0kg4yg2mxqvg8cpf47i9bigw5g";
+  version = "0.10.1.3";
+  sha256 = "0kbnqrplwb5w9jfljsrjxisnrnxbc0221hpznvq4m1ldx2mkrh1k";
   buildDepends = [
     exceptionMtl exceptionTransformers filepath haskellSrcMeta
     mainlandPretty mtl srcloc syb symbol
diff --git a/pkgs/development/libraries/haskell/leveldb-haskell/default.nix b/pkgs/development/libraries/haskell/leveldb-haskell/default.nix
index 0b721be2151..2e3ba003233 100644
--- a/pkgs/development/libraries/haskell/leveldb-haskell/default.nix
+++ b/pkgs/development/libraries/haskell/leveldb-haskell/default.nix
@@ -1,17 +1,22 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, async, dataDefault, filepath, leveldb, resourcet, snappy
+{ cabal, async, dataDefault, exceptions, filepath, leveldb, mtl
+, QuickCheck, resourcet, snappy, tasty, tastyQuickcheck, temporary
 , transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "leveldb-haskell";
-  version = "0.3.1";
-  sha256 = "09pyji49sdl60xicd32ra7v72qf0jkjhnvpsfr9k698is7lcq06d";
+  version = "0.6";
+  sha256 = "1r76dvn8scnjfdw1i5cj3s5s1nqf2yib4jdydjnr8p6c8yvpp3z5";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    async dataDefault filepath resourcet transformers
+    async dataDefault exceptions filepath resourcet transformers
+  ];
+  testDepends = [
+    dataDefault exceptions mtl QuickCheck tasty tastyQuickcheck
+    temporary transformers
   ];
   extraLibraries = [ leveldb snappy ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/libjenkins/default.nix b/pkgs/development/libraries/haskell/libjenkins/default.nix
index 0411cb93063..26a9bfdad2d 100644
--- a/pkgs/development/libraries/haskell/libjenkins/default.nix
+++ b/pkgs/development/libraries/haskell/libjenkins/default.nix
@@ -1,22 +1,25 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, async, conduit, doctest, filepath, free, hspec
+{ cabal, async, conduit, doctest, exceptions, filepath, free, hspec
 , hspecExpectationsLens, httpClient, httpConduit, httpTypes, lens
-, monadControl, network, resourcet, text, transformers, xmlConduit
+, monadControl, network, networkUri, resourcet, text, transformers
+, xmlConduit
 }:
 
 cabal.mkDerivation (self: {
   pname = "libjenkins";
-  version = "0.4.3.0";
-  sha256 = "18z1yaf1a1ncvflxzv96b35d44933yrmsmxv5dr87iyfry28qbnv";
+  version = "0.5.0";
+  sha256 = "010gid9r3kcajijg7x56c77l93vlbh7fy7akjrg7b73i4zy6jnl7";
   buildDepends = [
-    async conduit free httpClient httpConduit httpTypes lens
-    monadControl network resourcet text transformers xmlConduit
+    async conduit exceptions free httpClient httpConduit httpTypes lens
+    monadControl network networkUri resourcet text transformers
+    xmlConduit
   ];
   testDepends = [
-    async conduit doctest filepath free hspec hspecExpectationsLens
-    httpClient httpConduit httpTypes lens monadControl network
-    resourcet text transformers xmlConduit
+    async conduit doctest exceptions filepath free hspec
+    hspecExpectationsLens httpClient httpConduit httpTypes lens
+    monadControl network networkUri resourcet text transformers
+    xmlConduit
   ];
   jailbreak = true;
   doCheck = false;
diff --git a/pkgs/development/libraries/haskell/libmpd/0.8.0.5.nix b/pkgs/development/libraries/haskell/libmpd/0.8.0.5.nix
deleted file mode 100644
index f7f83cd973e..00000000000
--- a/pkgs/development/libraries/haskell/libmpd/0.8.0.5.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, attoparsec, dataDefault, filepath, hspec, HUnit, mtl
-, network, QuickCheck, text, time, utf8String
-}:
-
-cabal.mkDerivation (self: {
-  pname = "libmpd";
-  version = "0.8.0.5";
-  sha256 = "0jxd2xl9imfvb3dz7zqwzx392aw2cb2pl3drx5wkygbywbi5ijhh";
-  buildDepends = [
-    attoparsec dataDefault filepath mtl network text time utf8String
-  ];
-  testDepends = [
-    dataDefault hspec HUnit mtl network QuickCheck text time utf8String
-  ];
-  jailbreak = true;
-  doCheck = false;
-  meta = {
-    homepage = "http://github.com/joachifm/libmpd-haskell#readme";
-    description = "An MPD client library";
-    license = "LGPL";
-    platforms = self.ghc.meta.platforms;
-    hydraPlatforms = self.stdenv.lib.platforms.none;
-  };
-})
diff --git a/pkgs/development/libraries/haskell/libmpd/0.9.0.1.nix b/pkgs/development/libraries/haskell/libmpd/default.nix
index 6dc0aede069..6dc0aede069 100644
--- a/pkgs/development/libraries/haskell/libmpd/0.9.0.1.nix
+++ b/pkgs/development/libraries/haskell/libmpd/default.nix
diff --git a/pkgs/development/libraries/haskell/linux-inotify/default.nix b/pkgs/development/libraries/haskell/linux-inotify/default.nix
new file mode 100644
index 00000000000..2c5dc577f0f
--- /dev/null
+++ b/pkgs/development/libraries/haskell/linux-inotify/default.nix
@@ -0,0 +1,16 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, hashable }:
+
+cabal.mkDerivation (self: {
+  pname = "linux-inotify";
+  version = "0.2.0.1";
+  sha256 = "1970v1zkbp45amylmg79bbdfhk8kg6vzxjznd76gfl5kff2cv12r";
+  buildDepends = [ hashable ];
+  meta = {
+    description = "Thinner binding to the Linux Kernel's inotify interface";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ ocharles ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/lushtags/default.nix b/pkgs/development/libraries/haskell/lushtags/default.nix
index f7f8997480a..c3e90c84c56 100644
--- a/pkgs/development/libraries/haskell/lushtags/default.nix
+++ b/pkgs/development/libraries/haskell/lushtags/default.nix
@@ -9,11 +9,11 @@ cabal.mkDerivation (self: {
   isLibrary = false;
   isExecutable = true;
   buildDepends = [ haskellSrcExts text vector ];
-  jailbreak = true;
   meta = {
     homepage = "https://github.com/bitc/lushtags";
     description = "Create ctags compatible tags files for Haskell programs";
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/machines-directory/default.nix b/pkgs/development/libraries/haskell/machines-directory/default.nix
new file mode 100644
index 00000000000..dadae68668a
--- /dev/null
+++ b/pkgs/development/libraries/haskell/machines-directory/default.nix
@@ -0,0 +1,17 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, filepath, machines, machinesIo, transformers }:
+
+cabal.mkDerivation (self: {
+  pname = "machines-directory";
+  version = "0.0.0.1";
+  sha256 = "1npgh7f5czx6r3s05y48rs6xkrgpv3if38apwnbvi4ignmsfsvyx";
+  buildDepends = [ filepath machines machinesIo transformers ];
+  jailbreak = true;
+  meta = {
+    homepage = "http://github.com/aloiscochard/machines-io";
+    description = "Directory (system) utilities for the machines library";
+    license = self.stdenv.lib.licenses.asl20;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/machines-io/default.nix b/pkgs/development/libraries/haskell/machines-io/default.nix
new file mode 100644
index 00000000000..f66bfae6730
--- /dev/null
+++ b/pkgs/development/libraries/haskell/machines-io/default.nix
@@ -0,0 +1,17 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, chunkedData, machines, transformers }:
+
+cabal.mkDerivation (self: {
+  pname = "machines-io";
+  version = "0.1.0.0";
+  sha256 = "07ky1j9ihn493a8q2g1pc0ynam1mkzdi4hjs74kpfnlvl9x6ic7g";
+  buildDepends = [ chunkedData machines transformers ];
+  jailbreak = true;
+  meta = {
+    homepage = "http://github.com/aloiscochard/machines-io";
+    description = "IO utilities for the machines library";
+    license = self.stdenv.lib.licenses.asl20;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/machines/default.nix b/pkgs/development/libraries/haskell/machines/default.nix
index 1b391739c20..98a6248899b 100644
--- a/pkgs/development/libraries/haskell/machines/default.nix
+++ b/pkgs/development/libraries/haskell/machines/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "machines";
-  version = "0.2.5";
-  sha256 = "0745lhmfwq27nna517q7b82q59pda587wgh6840nw65syaj2qfhp";
+  version = "0.4";
+  sha256 = "00qs1hv1sc4278hlwjfv9ykbhxg4hxb0kqyrglagb42sn8j35kyz";
   buildDepends = [
     comonad free mtl pointed profunctors semigroups transformers void
   ];
diff --git a/pkgs/development/libraries/haskell/map-syntax/default.nix b/pkgs/development/libraries/haskell/map-syntax/default.nix
new file mode 100644
index 00000000000..52c42efd320
--- /dev/null
+++ b/pkgs/development/libraries/haskell/map-syntax/default.nix
@@ -0,0 +1,21 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, deepseq, HUnit, mtl, QuickCheck, testFramework
+, testFrameworkHunit, testFrameworkQuickcheck2, transformers
+}:
+
+cabal.mkDerivation (self: {
+  pname = "map-syntax";
+  version = "0.2";
+  sha256 = "02v1dvq86qzbfbwbza4myj3a6a6a5p059fi5m3g548hmqk3v2p1r";
+  buildDepends = [ mtl ];
+  testDepends = [
+    deepseq HUnit mtl QuickCheck testFramework testFrameworkHunit
+    testFrameworkQuickcheck2 transformers
+  ];
+  meta = {
+    description = "Syntax sugar for defining maps";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/monad-journal/default.nix b/pkgs/development/libraries/haskell/monad-journal/default.nix
index d65eecc6a30..73af49f4168 100644
--- a/pkgs/development/libraries/haskell/monad-journal/default.nix
+++ b/pkgs/development/libraries/haskell/monad-journal/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "monad-journal";
-  version = "0.4.0.2";
-  sha256 = "0biz564lgddzd6hygb7jd3rh8xa7qmzby4q3fyfa9fizmdcwf9j8";
+  version = "0.5";
+  sha256 = "1dr5l9pz1wij3ysp95pchlgw1zs12akgrm7rrr3bnv162c13vb9h";
   buildDepends = [
     either monadControl mtl transformers transformersBase
   ];
diff --git a/pkgs/development/libraries/haskell/monad-supply/default.nix b/pkgs/development/libraries/haskell/monad-supply/default.nix
index dc6c90bcd97..e8c598d3a30 100644
--- a/pkgs/development/libraries/haskell/monad-supply/default.nix
+++ b/pkgs/development/libraries/haskell/monad-supply/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "monad-supply";
-  version = "0.4";
-  sha256 = "0qvv9j55hw1lrfqnz1aric4mvg62c2vqaf5wirn69gvh74slqyj8";
+  version = "0.6";
+  sha256 = "1gg4r7fwaq2fa0lz8pz301mk3q16xpbs7qv54hhggxrv3i1h33ir";
   buildDepends = [ mtl ];
   meta = {
     description = "Stateful supply monad";
diff --git a/pkgs/development/libraries/haskell/monadloc-pp/default.nix b/pkgs/development/libraries/haskell/monadloc-pp/default.nix
index 13a8dfa3677..37855b13186 100644
--- a/pkgs/development/libraries/haskell/monadloc-pp/default.nix
+++ b/pkgs/development/libraries/haskell/monadloc-pp/default.nix
@@ -16,5 +16,6 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.publicDomain;
     platforms = self.ghc.meta.platforms;
     maintainers = with self.stdenv.lib.maintainers; [ tomberek ];
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/multiarg/default.nix b/pkgs/development/libraries/haskell/multiarg/default.nix
index 4c6ffcdaff6..f9912a6d013 100644
--- a/pkgs/development/libraries/haskell/multiarg/default.nix
+++ b/pkgs/development/libraries/haskell/multiarg/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "multiarg";
-  version = "0.26.0.0";
-  sha256 = "0fjzjr66yan62911kfndnr7xmy3waidh4cqazabk6yr1cznpsx8m";
+  version = "0.28.0.0";
+  sha256 = "1qy2xlxqhxlj9f5g7wf90vwch3qs1yz733f87irdmak0v4vxdkd5";
   buildDepends = [ bifunctors utf8String ];
   meta = {
     homepage = "https://github.com/massysett/multiarg";
diff --git a/pkgs/development/libraries/haskell/ncurses/default.nix b/pkgs/development/libraries/haskell/ncurses/default.nix
index f964af3c8b7..3a5cd89b926 100644
--- a/pkgs/development/libraries/haskell/ncurses/default.nix
+++ b/pkgs/development/libraries/haskell/ncurses/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "ncurses";
-  version = "0.2.10";
-  sha256 = "0qdw5dwi1w42nygvzyq8la7i917f0fz9qjw6ivgl2h1rjxc5j9cb";
+  version = "0.2.11";
+  sha256 = "08jr224i37jxrprka9c276sid6mw001m8r2krd6g8jscshwd5nzk";
   buildDepends = [ text transformers ];
   buildTools = [ c2hs ];
   extraLibraries = [ ncurses ];
@@ -15,7 +15,5 @@ cabal.mkDerivation (self: {
     description = "Modernised bindings to GNU ncurses";
     license = self.stdenv.lib.licenses.gpl3;
     platforms = self.ghc.meta.platforms;
-    hydraPlatforms = self.stdenv.lib.platforms.none;
-    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/network-carbon/default.nix b/pkgs/development/libraries/haskell/network-carbon/default.nix
index c12737a2edf..447e0590bc0 100644
--- a/pkgs/development/libraries/haskell/network-carbon/default.nix
+++ b/pkgs/development/libraries/haskell/network-carbon/default.nix
@@ -7,6 +7,7 @@ cabal.mkDerivation (self: {
   version = "1.0.1";
   sha256 = "1q3b7vw80yw6fkmpwgazy8ikhbwjmmqmm4fry8c9f8ckkpzahj2b";
   buildDepends = [ network text time vector ];
+  jailbreak = true;
   meta = {
     homepage = "http://github.com/ocharles/network-carbon";
     description = "A Haskell implementation of the Carbon protocol (part of the Graphite monitoring tools)";
diff --git a/pkgs/development/libraries/haskell/network-conduit-tls/default.nix b/pkgs/development/libraries/haskell/network-conduit-tls/default.nix
index 45d912da07a..256b6a6102a 100644
--- a/pkgs/development/libraries/haskell/network-conduit-tls/default.nix
+++ b/pkgs/development/libraries/haskell/network-conduit-tls/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "network-conduit-tls";
-  version = "1.1.0";
-  sha256 = "1q9wx7bvr4a65rkyfn2vd3h9bfpsvm9zcqqjhjsrgb91l6x5bdqi";
+  version = "1.1.0.1";
+  sha256 = "13axzdzcljv240nkrfpycj184ap94hn6zsk9mszp5k48rb3ddc8a";
   buildDepends = [
     conduit conduitExtra connection cprngAes dataDefault monadControl
     network streamingCommons systemFileio systemFilepath tls
diff --git a/pkgs/development/libraries/haskell/numeric-prelude/default.nix b/pkgs/development/libraries/haskell/numeric-prelude/default.nix
index 35840ba1716..003629d7852 100644
--- a/pkgs/development/libraries/haskell/numeric-prelude/default.nix
+++ b/pkgs/development/libraries/haskell/numeric-prelude/default.nix
@@ -14,6 +14,7 @@ cabal.mkDerivation (self: {
     deepseq nonNegative parsec QuickCheck random storableRecord
     utilityHt
   ];
+  jailbreak = true;
   meta = {
     homepage = "http://www.haskell.org/haskellwiki/Numeric_Prelude";
     description = "An experimental alternative hierarchy of numeric type classes";
diff --git a/pkgs/development/libraries/haskell/objective/default.nix b/pkgs/development/libraries/haskell/objective/default.nix
new file mode 100644
index 00000000000..9ed48a45e92
--- /dev/null
+++ b/pkgs/development/libraries/haskell/objective/default.nix
@@ -0,0 +1,17 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, cleanUnions, free, transformers }:
+
+cabal.mkDerivation (self: {
+  pname = "objective";
+  version = "0.4";
+  sha256 = "0zcls4b6i5b9yazy6d6fq2vpc6gbq16cqbycyc909bm7kkqzmb86";
+  buildDepends = [ cleanUnions free transformers ];
+  meta = {
+    homepage = "https://github.com/fumieval/objective";
+    description = "Extensible objects";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/oeis/default.nix b/pkgs/development/libraries/haskell/oeis/default.nix
index b58df3be314..b1b9bd5820f 100644
--- a/pkgs/development/libraries/haskell/oeis/default.nix
+++ b/pkgs/development/libraries/haskell/oeis/default.nix
@@ -1,20 +1,19 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, HTTP, HUnit, network, testFramework, testFrameworkHunit }:
+{ cabal, HTTP, HUnit, network, networkUri, testFramework
+, testFrameworkHunit
+}:
 
 cabal.mkDerivation (self: {
   pname = "oeis";
-  version = "0.3.5";
-  sha256 = "0r23mqbfvvvx6shzdclzfrqi8r95gxl93cih7ny7w7px3w5yc5x6";
-  buildDepends = [ HTTP network ];
+  version = "0.3.6";
+  sha256 = "1q7ywczm2d5inrjqgz3j8vfk5sj2yixvwdkzlfs2whd0gadbcfa0";
+  buildDepends = [ HTTP network networkUri ];
   testDepends = [ HUnit testFramework testFrameworkHunit ];
-  patchPhase = ''
-    sed -i -e 's|network *==.*|network|' oeis.cabal
-  '';
   meta = {
     description = "Interface to the Online Encyclopedia of Integer Sequences (OEIS)";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
-    maintainers = [ self.stdenv.lib.maintainers.andres ];
+    maintainers = with self.stdenv.lib.maintainers; [ andres ];
   };
 })
diff --git a/pkgs/development/libraries/haskell/oo-prototypes/default.nix b/pkgs/development/libraries/haskell/oo-prototypes/default.nix
new file mode 100644
index 00000000000..b9f011d3aa1
--- /dev/null
+++ b/pkgs/development/libraries/haskell/oo-prototypes/default.nix
@@ -0,0 +1,16 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal }:
+
+cabal.mkDerivation (self: {
+  pname = "oo-prototypes";
+  version = "0.1.0.0";
+  sha256 = "0xpm2adf47clhzpwd833w706mc5xfxwr2wp4aywigy11687f9bly";
+  meta = {
+    homepage = "https://github.com/yi-editor/oo-prototypes";
+    description = "Support for OO-like prototypes";
+    license = self.stdenv.lib.licenses.gpl2;
+    platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/optparse-applicative/0.10.0.nix b/pkgs/development/libraries/haskell/optparse-applicative/0.10.0.nix
index ff546c76eae..ea2dc95e364 100644
--- a/pkgs/development/libraries/haskell/optparse-applicative/0.10.0.nix
+++ b/pkgs/development/libraries/haskell/optparse-applicative/0.10.0.nix
@@ -13,5 +13,6 @@ cabal.mkDerivation (self: {
     description = "Utilities and combinators for parsing command line options";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    hydraPlatforms = self.stdenv.lib.platforms.none;
   };
 })
diff --git a/pkgs/development/libraries/haskell/optparse-applicative/0.11.0.1.nix b/pkgs/development/libraries/haskell/optparse-applicative/0.11.0.1.nix
new file mode 100644
index 00000000000..bef76ab73ee
--- /dev/null
+++ b/pkgs/development/libraries/haskell/optparse-applicative/0.11.0.1.nix
@@ -0,0 +1,17 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, ansiWlPprint, transformers, transformersCompat }:
+
+cabal.mkDerivation (self: {
+  pname = "optparse-applicative";
+  version = "0.11.0.1";
+  sha256 = "0jdzajj9w0dghv751m59l3imzm2x9lx9cqb6094mncnx8k6cf6f9";
+  buildDepends = [ ansiWlPprint transformers transformersCompat ];
+  jailbreak = true;
+  meta = {
+    homepage = "https://github.com/pcapriotti/optparse-applicative";
+    description = "Utilities and combinators for parsing command line options";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/pango/default.nix b/pkgs/development/libraries/haskell/pango/default.nix
index 907a9a2e032..11323122676 100644
--- a/pkgs/development/libraries/haskell/pango/default.nix
+++ b/pkgs/development/libraries/haskell/pango/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "pango";
-  version = "0.13.0.0";
-  sha256 = "0qrsivr6z8pp4ibg1vyzyg2fw0jzrshn6h6g6vff93awxzqq9rlw";
+  version = "0.13.0.2";
+  sha256 = "1f546k53j5ymb1321n31na0fpm69idx5l0nh9s75yallbij3gyfg";
   buildDepends = [ cairo glib mtl text ];
   buildTools = [ gtk2hsBuildtools ];
   extraLibraries = [ libc pkgconfig ];
diff --git a/pkgs/development/libraries/haskell/parallel-io/default.nix b/pkgs/development/libraries/haskell/parallel-io/default.nix
index b9f6eda669e..2bf50add862 100644
--- a/pkgs/development/libraries/haskell/parallel-io/default.nix
+++ b/pkgs/development/libraries/haskell/parallel-io/default.nix
@@ -9,6 +9,7 @@ cabal.mkDerivation (self: {
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ extensibleExceptions random ];
+  jailbreak = true;
   meta = {
     homepage = "http://batterseapower.github.com/parallel-io";
     description = "Combinators for executing IO actions in parallel on a thread pool";
diff --git a/pkgs/development/libraries/haskell/parsec/3.1.6.nix b/pkgs/development/libraries/haskell/parsec/3.1.7.nix
index 5a8d83622f5..f2258da9968 100644
--- a/pkgs/development/libraries/haskell/parsec/3.1.6.nix
+++ b/pkgs/development/libraries/haskell/parsec/3.1.7.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "parsec";
-  version = "3.1.6";
-  sha256 = "12k2gzy7fi83929mr2s4vj3ipfyg7l74v1cb2vbi4613qmq5wrw4";
+  version = "3.1.7";
+  sha256 = "12h7n367gaw9ifd19yd3ppi4j6kghf7rryacl0ips0fwlxw1x8wa";
   buildDepends = [ mtl text ];
   testDepends = [ HUnit testFramework testFrameworkHunit ];
   jailbreak = true;
diff --git a/pkgs/development/libraries/haskell/pdf-toolbox-content/default.nix b/pkgs/development/libraries/haskell/pdf-toolbox-content/default.nix
index f9f631827d8..5ca5ab95622 100644
--- a/pkgs/development/libraries/haskell/pdf-toolbox-content/default.nix
+++ b/pkgs/development/libraries/haskell/pdf-toolbox-content/default.nix
@@ -6,12 +6,13 @@
 
 cabal.mkDerivation (self: {
   pname = "pdf-toolbox-content";
-  version = "0.0.3.0";
-  sha256 = "0glcm6mrgg8ixzhp09kfkk3ra3qblvrp1wcsa2nhqlypg3ca8r3h";
+  version = "0.0.3.1";
+  sha256 = "08icj65l6hjl2r07ipr6c65n7ny771zq714bswhv2q0iwdigz1iz";
   buildDepends = [
     attoparsec base16Bytestring ioStreams pdfToolboxCore text
   ];
   meta = {
+    homepage = "https://github.com/Yuras/pdf-toolbox";
     description = "A collection of tools for processing PDF files";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/pdf-toolbox-core/default.nix b/pkgs/development/libraries/haskell/pdf-toolbox-core/default.nix
index bfccb645fbb..bc7b179a0da 100644
--- a/pkgs/development/libraries/haskell/pdf-toolbox-core/default.nix
+++ b/pkgs/development/libraries/haskell/pdf-toolbox-core/default.nix
@@ -1,14 +1,15 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, attoparsec, errors, ioStreams, transformers, zlibBindings
+{ cabal, attoparsec, errors, ioStreams, scientific, transformers
+, zlibBindings
 }:
 
 cabal.mkDerivation (self: {
   pname = "pdf-toolbox-core";
-  version = "0.0.2.1";
-  sha256 = "14jj6xprzh2k1njal0mgapkm3xivy8370p9kdjxha9gnwmc581df";
+  version = "0.0.3.0";
+  sha256 = "1d9c275gdr2byri6nbabh2ap6lnq0wnfqfqq76fnb0fj92ydmxc6";
   buildDepends = [
-    attoparsec errors ioStreams transformers zlibBindings
+    attoparsec errors ioStreams scientific transformers zlibBindings
   ];
   meta = {
     homepage = "https://github.com/Yuras/pdf-toolbox";
diff --git a/pkgs/development/libraries/haskell/pdf-toolbox-document/default.nix b/pkgs/development/libraries/haskell/pdf-toolbox-document/default.nix
index b62d3e92e5e..77615ed8665 100644
--- a/pkgs/development/libraries/haskell/pdf-toolbox-document/default.nix
+++ b/pkgs/development/libraries/haskell/pdf-toolbox-document/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "pdf-toolbox-document";
-  version = "0.0.3.0";
-  sha256 = "0y1kb2hf420jx6r81c431avgar32wzx2xr747akcs4rypf6w53fn";
+  version = "0.0.4.0";
+  sha256 = "1fjchlknkxxgy6rm2q4f9fhy53ip06kzvcv5876gxswdchi6kxwa";
   buildDepends = [
     cipherRc4 cryptohash ioStreams pdfToolboxContent pdfToolboxCore
     text transformers
diff --git a/pkgs/development/libraries/haskell/persistent-mysql/default.nix b/pkgs/development/libraries/haskell/persistent-mysql/default.nix
index dd895b937ce..55da0403a95 100644
--- a/pkgs/development/libraries/haskell/persistent-mysql/default.nix
+++ b/pkgs/development/libraries/haskell/persistent-mysql/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "persistent-mysql";
-  version = "2.0.5";
-  sha256 = "1zhva0wikp3d57fsz5phqwi0b3vbgnapf6bw46xmmrp8r21zsnk5";
+  version = "2.1";
+  sha256 = "0r4xxv1250ny7x3298mqcv2x5l8vp0ncn9k9js7yi2lj9gcijj6f";
   buildDepends = [
     aeson blazeBuilder conduit monadControl monadLogger mysql
     mysqlSimple persistent resourcet text transformers
diff --git a/pkgs/development/libraries/haskell/persistent-postgresql/default.nix b/pkgs/development/libraries/haskell/persistent-postgresql/default.nix
index 8a8b0989e72..1161017bbbf 100644
--- a/pkgs/development/libraries/haskell/persistent-postgresql/default.nix
+++ b/pkgs/development/libraries/haskell/persistent-postgresql/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "persistent-postgresql";
-  version = "2.0.5";
-  sha256 = "1awdxh354y2hxsiijwvc2x7ficrcwmg27ai2mi79a0b2ylrxc9pk";
+  version = "2.1";
+  sha256 = "0458z9n61wn8g55cp8a9061qgc99i5yp3wmwmf3x4p4vfkl5kw9c";
   buildDepends = [
     aeson blazeBuilder conduit monadControl monadLogger persistent
     postgresqlLibpq postgresqlSimple resourcet text time transformers
diff --git a/pkgs/development/libraries/haskell/persistent-sqlite/default.nix b/pkgs/development/libraries/haskell/persistent-sqlite/default.nix
index db5965d378f..fb8fd059aa7 100644
--- a/pkgs/development/libraries/haskell/persistent-sqlite/default.nix
+++ b/pkgs/development/libraries/haskell/persistent-sqlite/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "persistent-sqlite";
-  version = "2.0.5";
-  sha256 = "1x65pni93xgsbfwaknd9fgqccz0gbn1ky6k55l2ss5ab92apqy8i";
+  version = "2.1.0.1";
+  sha256 = "1l5iwyd8qi75ijjiznkp9i6b3rzs64bb1lph0syr0xi2arx18bxs";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/persistent-template/default.nix b/pkgs/development/libraries/haskell/persistent-template/default.nix
index 7060eddc17e..1c8f502ba7b 100644
--- a/pkgs/development/libraries/haskell/persistent-template/default.nix
+++ b/pkgs/development/libraries/haskell/persistent-template/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "persistent-template";
-  version = "2.0.5";
-  sha256 = "0mf18n07r2bvvf5448xq4pzylpprkbc1wb86339gaxnax321ipap";
+  version = "2.1";
+  sha256 = "0rj3yqm38kg7lvj9hi4c5yaypvxj6pwb47b0kg8h2hsa0rshhrdy";
   buildDepends = [
     aeson monadControl monadLogger pathPieces persistent tagged text
     transformers unorderedContainers
diff --git a/pkgs/development/libraries/haskell/persistent/default.nix b/pkgs/development/libraries/haskell/persistent/default.nix
index 588f6163b65..a8aca43f65d 100644
--- a/pkgs/development/libraries/haskell/persistent/default.nix
+++ b/pkgs/development/libraries/haskell/persistent/default.nix
@@ -9,8 +9,8 @@
 
 cabal.mkDerivation (self: {
   pname = "persistent";
-  version = "2.0.5.1";
-  sha256 = "14xzqr9f0ggqkakpq6badbrnwr6nhzq61ga7d2m0d0lni039vdax";
+  version = "2.1";
+  sha256 = "0ybjjya8q4kwnq6lksahpm0g8wzxwzfqxqmkrw18vw4fb7kry58k";
   buildDepends = [
     aeson attoparsec base64Bytestring blazeHtml blazeMarkup conduit
     exceptions fastLogger liftedBase monadControl monadLogger mtl
diff --git a/pkgs/development/libraries/haskell/pipes-zlib/default.nix b/pkgs/development/libraries/haskell/pipes-zlib/default.nix
index 58894ce6dd6..bbb555681e0 100644
--- a/pkgs/development/libraries/haskell/pipes-zlib/default.nix
+++ b/pkgs/development/libraries/haskell/pipes-zlib/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "pipes-zlib";
-  version = "0.4.1";
-  sha256 = "0wjx51d3inhsjzqf16l46mhh0mdsa8fk7x1vvp2apg9s6zfw624k";
+  version = "0.4.3";
+  sha256 = "04iiw0r1mnxl4myyp87wqhff6jm0g2246gwismi7jnwy7xmllsmc";
   buildDepends = [ pipes transformers zlib zlibBindings ];
   meta = {
     homepage = "https://github.com/k0001/pipes-zlib";
diff --git a/pkgs/development/libraries/haskell/pipes/default.nix b/pkgs/development/libraries/haskell/pipes/default.nix
index 50039d4466b..4dd93bc8e8b 100644
--- a/pkgs/development/libraries/haskell/pipes/default.nix
+++ b/pkgs/development/libraries/haskell/pipes/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "pipes";
-  version = "4.1.2";
-  sha256 = "0prxk4qjdcmxjdvpi1bwql0s3l1kwlaz9sydr9swa8bc8ams3a11";
+  version = "4.1.3";
+  sha256 = "188gwfw0v8v9rac9m00j453a4hr0n4dmjfn92r8zymxc8806mqaw";
   buildDepends = [ mmorph mtl transformers ];
   testDepends = [
     mtl QuickCheck testFramework testFrameworkQuickcheck2 transformers
diff --git a/pkgs/development/libraries/haskell/postgresql-simple/default.nix b/pkgs/development/libraries/haskell/postgresql-simple/default.nix
index f4d77d70560..0edfbaf702e 100644
--- a/pkgs/development/libraries/haskell/postgresql-simple/default.nix
+++ b/pkgs/development/libraries/haskell/postgresql-simple/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "postgresql-simple";
-  version = "0.4.4.1";
-  sha256 = "0lqvy8nc2izwlv7z0n12cknsrb2dkmla84bvjis5z9f63ngs2580";
+  version = "0.4.6.0";
+  sha256 = "16pipp806askv7a97d2nncws8kr29d09rvas17b3mhbly5nah2kr";
   buildDepends = [
     aeson attoparsec blazeBuilder blazeTextual hashable postgresqlLibpq
     scientific text time transformers uuid vector
diff --git a/pkgs/development/libraries/haskell/primitive/0.5.3.0.nix b/pkgs/development/libraries/haskell/primitive/0.5.3.0.nix
index 46d7fbbdcfb..4f6d728122c 100644
--- a/pkgs/development/libraries/haskell/primitive/0.5.3.0.nix
+++ b/pkgs/development/libraries/haskell/primitive/0.5.3.0.nix
@@ -11,5 +11,6 @@ cabal.mkDerivation (self: {
     description = "Primitive memory-related operations";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    hydraPlatforms = self.stdenv.lib.platforms.none;
   };
 })
diff --git a/pkgs/development/libraries/haskell/primitive/0.5.4.0.nix b/pkgs/development/libraries/haskell/primitive/0.5.4.0.nix
new file mode 100644
index 00000000000..08b081d227c
--- /dev/null
+++ b/pkgs/development/libraries/haskell/primitive/0.5.4.0.nix
@@ -0,0 +1,15 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal }:
+
+cabal.mkDerivation (self: {
+  pname = "primitive";
+  version = "0.5.4.0";
+  sha256 = "05gdgj383xdrdkhxh26imlvs8ji0z28ny38ms9snpvv5i8l2lg10";
+  meta = {
+    homepage = "https://github.com/haskell/primitive";
+    description = "Primitive memory-related operations";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/purescript/default.nix b/pkgs/development/libraries/haskell/purescript/default.nix
index 20739bc4515..09cfe0c78ab 100644
--- a/pkgs/development/libraries/haskell/purescript/default.nix
+++ b/pkgs/development/libraries/haskell/purescript/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "purescript";
-  version = "0.5.6.2";
-  sha256 = "1zb5jvgwldzvvw1ga125p5048rwkrb636kn7pcf070m615k9w055";
+  version = "0.5.6.3";
+  sha256 = "0f9jzv886dg9aphwaqgx17xk2j6j4v2n12y3yhkbs46icmlr8zxp";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
@@ -22,6 +22,5 @@ cabal.mkDerivation (self: {
     description = "PureScript Programming Language Compiler";
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
-    hydraPlatforms = self.stdenv.lib.platforms.none;
   };
 })
diff --git a/pkgs/development/libraries/haskell/pwstore-fast/default.nix b/pkgs/development/libraries/haskell/pwstore-fast/default.nix
index a59a9b2d2da..cca1e04bd4e 100644
--- a/pkgs/development/libraries/haskell/pwstore-fast/default.nix
+++ b/pkgs/development/libraries/haskell/pwstore-fast/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "pwstore-fast";
-  version = "2.4.3";
-  sha256 = "02dj297s04fxb4ys9nfdw6aap5zrwlryq515gky0c3af6ss2yiz7";
+  version = "2.4.4";
+  sha256 = "1cpvlwzg3qznhygrr78f75p65mnljd9v5cvnagfxjqppnrkay6bj";
   buildDepends = [
     base64Bytestring binary byteable cryptohash random
   ];
diff --git a/pkgs/development/libraries/haskell/random/1.0.1.3.nix b/pkgs/development/libraries/haskell/random/1.0.1.3.nix
index 26763deb10a..3939c439248 100644
--- a/pkgs/development/libraries/haskell/random/1.0.1.3.nix
+++ b/pkgs/development/libraries/haskell/random/1.0.1.3.nix
@@ -11,5 +11,6 @@ cabal.mkDerivation (self: {
     description = "random number library";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    hydraPlatforms = self.stdenv.lib.platforms.none;
   };
 })
diff --git a/pkgs/development/libraries/haskell/random/1.1.nix b/pkgs/development/libraries/haskell/random/1.1.nix
new file mode 100644
index 00000000000..5ff11eeefda
--- /dev/null
+++ b/pkgs/development/libraries/haskell/random/1.1.nix
@@ -0,0 +1,15 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, time }:
+
+cabal.mkDerivation (self: {
+  pname = "random";
+  version = "1.1";
+  sha256 = "0nis3lbkp8vfx8pkr6v7b7kr5m334bzb0fk9vxqklnp2aw8a865p";
+  buildDepends = [ time ];
+  meta = {
+    description = "random number library";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/rest-gen/default.nix b/pkgs/development/libraries/haskell/rest-gen/default.nix
index 229c3f5c7bf..708122b92f3 100644
--- a/pkgs/development/libraries/haskell/rest-gen/default.nix
+++ b/pkgs/development/libraries/haskell/rest-gen/default.nix
@@ -9,8 +9,8 @@
 
 cabal.mkDerivation (self: {
   pname = "rest-gen";
-  version = "0.16";
-  sha256 = "05qpj4zhihmb2cdgw3vx7ir0mqga1w6qidc4vwdjq6dy8d81sdmc";
+  version = "0.16.0.2";
+  sha256 = "0sh3sgv02x49pr02yb9jsd694g27xifnclrcc6npkkbkcvy9m7y7";
   buildDepends = [
     aeson blazeHtml Cabal codeBuilder fclabels filepath hashable
     haskellSrcExts hslogger HStringTemplate hxt jsonSchema restCore
diff --git a/pkgs/development/libraries/haskell/rethinkdb/default.nix b/pkgs/development/libraries/haskell/rethinkdb/default.nix
index affe39729f3..f0260034ade 100644
--- a/pkgs/development/libraries/haskell/rethinkdb/default.nix
+++ b/pkgs/development/libraries/haskell/rethinkdb/default.nix
@@ -1,24 +1,24 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, aeson, attoparsec, dataDefault, mtl, network
-, protocolBuffers, protocolBuffersDescriptor, text, time
-, unorderedContainers, utf8String, vector
+{ cabal, aeson, base64Bytestring, binary, dataDefault, doctest, mtl
+, network, scientific, text, time, unorderedContainers, utf8String
+, vector
 }:
 
 cabal.mkDerivation (self: {
   pname = "rethinkdb";
-  version = "1.8.0.5";
-  sha256 = "1s3mzbs0b2jdvs1gfdxb2fp2lw7978ja63411iz43yjd29d3pwzq";
+  version = "1.15.0.0";
+  sha256 = "0zswbz73c8h7h31ppw5251l6spn6y5ha3hm9hb90j04hjg8g235i";
   buildDepends = [
-    aeson attoparsec dataDefault mtl network protocolBuffers
-    protocolBuffersDescriptor text time unorderedContainers utf8String
-    vector
+    aeson base64Bytestring binary dataDefault mtl network scientific
+    text time unorderedContainers utf8String vector
   ];
+  testDepends = [ doctest ];
   meta = {
     homepage = "http://github.com/atnnn/haskell-rethinkdb";
-    description = "RethinkDB driver for Haskell";
+    description = "A driver for the RethinkDB database server";
     license = self.stdenv.lib.licenses.asl20;
     platforms = self.ghc.meta.platforms;
-    hydraPlatforms = self.stdenv.lib.platforms.none;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/sdl2/default.nix b/pkgs/development/libraries/haskell/sdl2/default.nix
index d60a69ae928..dc8ef033c02 100644
--- a/pkgs/development/libraries/haskell/sdl2/default.nix
+++ b/pkgs/development/libraries/haskell/sdl2/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "sdl2";
-  version = "1.1.1";
-  sha256 = "0kqs211ksp25pgkzy9rz8zcfi3pqrbl1zmbjh1vx8r2lkf79z1y5";
+  version = "1.1.2";
+  sha256 = "1viy6f8iqbw264hmsvfqjf8b27h8klyybywd5976yin6ianbqm2a";
   extraLibraries = [ SDL2 ];
   pkgconfigDepends = [ SDL2 ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/shell-conduit/default.nix b/pkgs/development/libraries/haskell/shell-conduit/default.nix
index 23ce1522254..bbac214625e 100644
--- a/pkgs/development/libraries/haskell/shell-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/shell-conduit/default.nix
@@ -1,16 +1,16 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, conduit, conduitExtra, controlMonadLoop, filepath
+{ cabal, async, conduit, conduitExtra, controlMonadLoop, filepath
 , monadControl, monadsTf, resourcet, semigroups, split, text, these
 , transformers, transformersBase
 }:
 
 cabal.mkDerivation (self: {
   pname = "shell-conduit";
-  version = "3.0";
-  sha256 = "07x920j52zjqh3lpfam5f1nhsgqbcgz458dbrwxsmsn3cnqf2qd6";
+  version = "4.2";
+  sha256 = "1ac1imsz1ffm0ldi29ylprgs4zh0qhn52ka17zn8f9301hfx9vhc";
   buildDepends = [
-    conduit conduitExtra controlMonadLoop filepath monadControl
+    async conduit conduitExtra controlMonadLoop filepath monadControl
     monadsTf resourcet semigroups split text these transformers
     transformersBase
   ];
diff --git a/pkgs/development/libraries/haskell/shelly/default.nix b/pkgs/development/libraries/haskell/shelly/default.nix
index 6deaa209dc8..10659c72266 100644
--- a/pkgs/development/libraries/haskell/shelly/default.nix
+++ b/pkgs/development/libraries/haskell/shelly/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "shelly";
-  version = "1.5.5";
-  sha256 = "1865f5z5wm2qf3ccws9jy8ps7n8slkmfgn0l2m9apja3q2jajqb1";
+  version = "1.5.6";
+  sha256 = "1vnn0s3i3n76286b7rc70qjzgkmfwllpg7w4zin627v6466pfpzl";
   buildDepends = [
     async enclosedExceptions exceptions liftedAsync liftedBase
     monadControl mtl systemFileio systemFilepath text time transformers
diff --git a/pkgs/development/libraries/haskell/simple-sendfile/default.nix b/pkgs/development/libraries/haskell/simple-sendfile/default.nix
index fc41353d357..d291aba9630 100644
--- a/pkgs/development/libraries/haskell/simple-sendfile/default.nix
+++ b/pkgs/development/libraries/haskell/simple-sendfile/default.nix
@@ -4,9 +4,9 @@
 
 cabal.mkDerivation (self: {
   pname = "simple-sendfile";
-  version = "0.2.17";
-  sha256 = "1xxzw916v5zwn8i5i61z6p1wa2rm95sa6ry9z3yg2b2ybpyagw5g";
-  buildDepends = [ network resourcet ];
+  version = "0.2.18";
+  sha256 = "1dc7c4bkcwzfhbm982svi9j6dzxxf0z6pjkdrs23m9bc9g8aly49";
+  buildDepends = [ network ];
   testDepends = [
     conduit conduitExtra hspec HUnit network resourcet
   ];
diff --git a/pkgs/development/libraries/haskell/snap-cors/default.nix b/pkgs/development/libraries/haskell/snap-cors/default.nix
index be9147d6c76..a81c6ec24ab 100644
--- a/pkgs/development/libraries/haskell/snap-cors/default.nix
+++ b/pkgs/development/libraries/haskell/snap-cors/default.nix
@@ -17,5 +17,6 @@ cabal.mkDerivation (self: {
     description = "Add CORS headers to Snap applications";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/snap-web-routes/default.nix b/pkgs/development/libraries/haskell/snap-web-routes/default.nix
index 71b8c3c49da..a8252a4f3f0 100644
--- a/pkgs/development/libraries/haskell/snap-web-routes/default.nix
+++ b/pkgs/development/libraries/haskell/snap-web-routes/default.nix
@@ -7,6 +7,7 @@ cabal.mkDerivation (self: {
   version = "0.5.0.0";
   sha256 = "1ml0b759k2n9bd2x4akz4dfyk8ywnpgrdlcymng4vhjxbzngnniv";
   buildDepends = [ heist mtl snap snapCore text webRoutes xmlhtml ];
+  jailbreak = true;
   meta = {
     homepage = "https://github.com/lukerandall/snap-web-routes";
     description = "Type safe URLs for Snap";
diff --git a/pkgs/development/libraries/haskell/snap/server.nix b/pkgs/development/libraries/haskell/snap/server.nix
index d2278f329f4..f42d838a52c 100644
--- a/pkgs/development/libraries/haskell/snap/server.nix
+++ b/pkgs/development/libraries/haskell/snap/server.nix
@@ -17,7 +17,7 @@ cabal.mkDerivation (self: {
   ];
   configureFlags = "-fopenssl";
   patchPhase = ''
-    sed -i -e 's|HsOpenSSL >= .*|HsOpenSSL|' snap-server.cabal
+    sed -i -e 's|HsOpenSSL >= .*|HsOpenSSL|' -e 's|network.*2.6,|network,|' snap-server.cabal
   '';
   meta = {
     homepage = "http://snapframework.com/";
diff --git a/pkgs/development/libraries/haskell/snap/snap.nix b/pkgs/development/libraries/haskell/snap/snap.nix
index aab1a7bf89b..c28ee69fb2c 100644
--- a/pkgs/development/libraries/haskell/snap/snap.nix
+++ b/pkgs/development/libraries/haskell/snap/snap.nix
@@ -10,8 +10,8 @@
 
 cabal.mkDerivation (self: {
   pname = "snap";
-  version = "0.13.2.9";
-  sha256 = "1iv29mbbm1xjfrq3ys7zpskjpcwx6k08zrnrs1yj62yg5aa6bnim";
+  version = "0.13.3.1";
+  sha256 = "016azx90gxjkhmncpnqvqrwsk9kbkz315z088wm7y67s97lpnr9c";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/snaplet-redis/default.nix b/pkgs/development/libraries/haskell/snaplet-redis/default.nix
index d6bfcd260ca..6bb589984ef 100644
--- a/pkgs/development/libraries/haskell/snaplet-redis/default.nix
+++ b/pkgs/development/libraries/haskell/snaplet-redis/default.nix
@@ -1,15 +1,15 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, configurator, hedis, lens, mtl, network, snap
+{ cabal, configurator, hedis, lens, mtl, network, snap, text
 , transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "snaplet-redis";
-  version = "0.1.3.3";
-  sha256 = "17w2b9cnri45m535hyszb1fickhhglid3zy5a4bbljmnwvi4y08l";
+  version = "0.1.4";
+  sha256 = "1xyff7hsafxjyiifm7fb2d43sscrzqrn3gxfdjzgrhf8b3ayi01y";
   buildDepends = [
-    configurator hedis lens mtl network snap transformers
+    configurator hedis lens mtl network snap text transformers
   ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/snaplet-stripe/default.nix b/pkgs/development/libraries/haskell/snaplet-stripe/default.nix
index 1024b2ac4ee..ecc2507a8ca 100644
--- a/pkgs/development/libraries/haskell/snaplet-stripe/default.nix
+++ b/pkgs/development/libraries/haskell/snaplet-stripe/default.nix
@@ -18,5 +18,6 @@ cabal.mkDerivation (self: {
     description = "Stripe snaplet for the Snap Framework";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/sodium/default.nix b/pkgs/development/libraries/haskell/sodium/default.nix
index f27c5d0e51c..0dbd0647a86 100644
--- a/pkgs/development/libraries/haskell/sodium/default.nix
+++ b/pkgs/development/libraries/haskell/sodium/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "sodium";
-  version = "0.10.0.2";
-  sha256 = "0rm1blh0br4gdnqb6ixvql6nrxzcjxjkwp4lmqmsisa2b68gbzqy";
+  version = "0.11.0.2";
+  sha256 = "0m3ig6nqkw0m6xh6ijgr2w06i4ydyfwx7rsbkrrxflichadm9r2g";
   buildDepends = [ mtl ];
   meta = {
     description = "Sodium Reactive Programming (FRP) System";
diff --git a/pkgs/development/libraries/haskell/srcloc/default.nix b/pkgs/development/libraries/haskell/srcloc/default.nix
index 087871bbc53..8d30afc77ad 100644
--- a/pkgs/development/libraries/haskell/srcloc/default.nix
+++ b/pkgs/development/libraries/haskell/srcloc/default.nix
@@ -4,10 +4,10 @@
 
 cabal.mkDerivation (self: {
   pname = "srcloc";
-  version = "0.4.0";
-  sha256 = "00af562n4m3nwlhl86x8rx7hhpnhwaijin61wk574pp47bh2jg0k";
+  version = "0.4.1";
+  sha256 = "0cd15d9dval7zi4li48yd6a3jk62861d4qxwvhxz4a98m63519cz";
   meta = {
-    homepage = "http://www.eecs.harvard.edu/~mainland/";
+    homepage = "http://www.cs.drexel.edu/~mainland/";
     description = "Data types for managing source code locations";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/state-plus/default.nix b/pkgs/development/libraries/haskell/state-plus/default.nix
new file mode 100644
index 00000000000..d35da29273e
--- /dev/null
+++ b/pkgs/development/libraries/haskell/state-plus/default.nix
@@ -0,0 +1,16 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, checkers, mtl, QuickCheck }:
+
+cabal.mkDerivation (self: {
+  pname = "state-plus";
+  version = "0.1.1";
+  sha256 = "09zc4rymzvpq12mgl59h069m418qr43myhsj8dlf62g477wyx4g1";
+  buildDepends = [ mtl ];
+  testDepends = [ checkers mtl QuickCheck ];
+  meta = {
+    description = "MonadPlus for StateT";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/string-conversions/default.nix b/pkgs/development/libraries/haskell/string-conversions/default.nix
index 5176cad03cd..9225bacbfe3 100644
--- a/pkgs/development/libraries/haskell/string-conversions/default.nix
+++ b/pkgs/development/libraries/haskell/string-conversions/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "string-conversions";
-  version = "0.3.0.2";
-  sha256 = "0jcm0vv0ll74zfc7s2l8qpqpbfnkv7ir9d1kg68m6b0f9sq0dgng";
+  version = "0.3.0.3";
+  sha256 = "0n2ifim9n5vm305r989lh5xlbd8qc6byip2nfavf6gd2bcscs84p";
   buildDepends = [ text utf8String ];
   meta = {
     description = "Simplifies dealing with different types for strings";
diff --git a/pkgs/development/libraries/haskell/stylish-haskell/default.nix b/pkgs/development/libraries/haskell/stylish-haskell/default.nix
index 9cc43e142a7..d739d11c17a 100644
--- a/pkgs/development/libraries/haskell/stylish-haskell/default.nix
+++ b/pkgs/development/libraries/haskell/stylish-haskell/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "stylish-haskell";
-  version = "0.5.10.2";
-  sha256 = "1r1vwn334jdsk6szynzz7w9jpbfqs3zs7wzlpwfigsyyrjy3bn3q";
+  version = "0.5.11.0";
+  sha256 = "1174gs5a2n6l2flyb2x93yiq7viwb52kbadw6jya6041xrpblckz";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/symbol/default.nix b/pkgs/development/libraries/haskell/symbol/default.nix
index 4451b2c3bdb..46a2979d775 100644
--- a/pkgs/development/libraries/haskell/symbol/default.nix
+++ b/pkgs/development/libraries/haskell/symbol/default.nix
@@ -1,12 +1,12 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, deepseq, syb }:
+{ cabal, deepseq }:
 
 cabal.mkDerivation (self: {
   pname = "symbol";
-  version = "0.2.1";
-  sha256 = "1g9rpz40v6wnmp671wvbbinzvvxkibdnny4i6ai28pn3sxa6fgkj";
-  buildDepends = [ deepseq syb ];
+  version = "0.2.4";
+  sha256 = "0cc8kdm68pirb0s7n46v0yvw5b718qf7qip40jkg5q3c3xsafx6h";
+  buildDepends = [ deepseq ];
   jailbreak = true;
   meta = {
     homepage = "http://www.cs.drexel.edu/~mainland/";
diff --git a/pkgs/development/libraries/haskell/tagsoup/default.nix b/pkgs/development/libraries/haskell/tagsoup/default.nix
index 35d004445fc..40ddd46ba54 100644
--- a/pkgs/development/libraries/haskell/tagsoup/default.nix
+++ b/pkgs/development/libraries/haskell/tagsoup/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tagsoup";
-  version = "0.13.2";
-  sha256 = "0q9r4vsdlib6dm0b387zg089b1410f0nspzigx2awqi2xqfsi0xz";
+  version = "0.13.3";
+  sha256 = "13b6zy6346r3cxhaivys84fnxarg8wbv7r2znazfjdkqil8n5a1j";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ text ];
diff --git a/pkgs/development/libraries/haskell/tasty-ant-xml/default.nix b/pkgs/development/libraries/haskell/tasty-ant-xml/default.nix
index 1fa30cf368d..499234cac14 100644
--- a/pkgs/development/libraries/haskell/tasty-ant-xml/default.nix
+++ b/pkgs/development/libraries/haskell/tasty-ant-xml/default.nix
@@ -1,15 +1,15 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, genericDeriving, mtl, reducers, stm, tagged, tasty
-, transformers, xml
+{ cabal, genericDeriving, mtl, stm, tagged, tasty, transformers
+, xml
 }:
 
 cabal.mkDerivation (self: {
   pname = "tasty-ant-xml";
-  version = "1.0.0.10";
-  sha256 = "1qjpgbsj8fh5w3l9zap3wsrf1cp8bmsl1adcxy5z2j8yi3rsljii";
+  version = "1.0.0.11";
+  sha256 = "0cia8n31pyyax7v02xgpznanzd5wd32kps0dzx5ky1bmgbi9w4am";
   buildDepends = [
-    genericDeriving mtl reducers stm tagged tasty transformers xml
+    genericDeriving mtl stm tagged tasty transformers xml
   ];
   meta = {
     homepage = "http://github.com/ocharles/tasty-ant-xml";
diff --git a/pkgs/development/libraries/haskell/tasty-hunit/default.nix b/pkgs/development/libraries/haskell/tasty-hunit/default.nix
index 067e6081818..edbdf8b9cd6 100644
--- a/pkgs/development/libraries/haskell/tasty-hunit/default.nix
+++ b/pkgs/development/libraries/haskell/tasty-hunit/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tasty-hunit";
-  version = "0.9";
-  sha256 = "1ivp9h34cdrahqy8i0y10fa0mqxa947dpbwvhr46sjja053asjxc";
+  version = "0.9.0.1";
+  sha256 = "0rhdjb4fakcbkz4cvmmf679zad9h5yr31i1g9xm1338p6xd4vwcb";
   buildDepends = [ tasty ];
   meta = {
     homepage = "http://documentup.com/feuerbach/tasty";
diff --git a/pkgs/development/libraries/haskell/tasty-quickcheck/default.nix b/pkgs/development/libraries/haskell/tasty-quickcheck/default.nix
index f4af3a19097..28a94fe0eda 100644
--- a/pkgs/development/libraries/haskell/tasty-quickcheck/default.nix
+++ b/pkgs/development/libraries/haskell/tasty-quickcheck/default.nix
@@ -4,10 +4,11 @@
 
 cabal.mkDerivation (self: {
   pname = "tasty-quickcheck";
-  version = "0.8.1";
-  sha256 = "1diqc5dmddrfc6i0zqkmlnnhsv8paqy2fdmbx8484qa4ylk5r6bs";
+  version = "0.8.2";
+  sha256 = "16fdzdlvivrkhpg9nbfz9gamvlpb25fgcxnshzg7i7hkrgzhbrji";
   buildDepends = [ QuickCheck tagged tasty ];
   meta = {
+    homepage = "http://documentup.com/feuerbach/tasty";
     description = "QuickCheck support for the Tasty test framework";
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/tasty-smallcheck/default.nix b/pkgs/development/libraries/haskell/tasty-smallcheck/default.nix
index ea1a37d5e9b..9bdf0c52895 100644
--- a/pkgs/development/libraries/haskell/tasty-smallcheck/default.nix
+++ b/pkgs/development/libraries/haskell/tasty-smallcheck/default.nix
@@ -4,11 +4,11 @@
 
 cabal.mkDerivation (self: {
   pname = "tasty-smallcheck";
-  version = "0.8";
-  sha256 = "0c4ccmhql118j4dlvy5cmrnma454b0rdv1wq2ds6xhpdhx20h1br";
+  version = "0.8.0.1";
+  sha256 = "0yckfbz8na8ccyw2911i3a4hd3fdncclk3ng5343hs5cylw6y4sm";
   buildDepends = [ async smallcheck tagged tasty ];
   meta = {
-    homepage = "https://github.com/feuerbach/tasty";
+    homepage = "http://documentup.com/feuerbach/tasty";
     description = "SmallCheck support for the Tasty test framework";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/tasty/default.nix b/pkgs/development/libraries/haskell/tasty/default.nix
index b0623377114..cd63c7dd478 100644
--- a/pkgs/development/libraries/haskell/tasty/default.nix
+++ b/pkgs/development/libraries/haskell/tasty/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tasty";
-  version = "0.10";
-  sha256 = "1va9rj6k0v8mdkqbgjvn5rcaf2zp785ihfr4b5j87xzaiw32m1l6";
+  version = "0.10.0.2";
+  sha256 = "0d2lmdrhdcmpay1yj613ckmjhwnrmaazcy3xhbc3fjlmd0rma44q";
   buildDepends = [
     ansiTerminal async deepseq mtl optparseApplicative regexTdfaRc stm
     tagged time unboundedDelays
diff --git a/pkgs/development/libraries/haskell/test-framework-th-prime/default.nix b/pkgs/development/libraries/haskell/test-framework-th-prime/default.nix
index f53c68e5e7f..a7881a7ebfc 100644
--- a/pkgs/development/libraries/haskell/test-framework-th-prime/default.nix
+++ b/pkgs/development/libraries/haskell/test-framework-th-prime/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "test-framework-th-prime";
-  version = "0.0.6";
-  sha256 = "11fk7sk644ky8f22imrfqk8yx07050vy9szha0pnkkjk9i3bqfcq";
+  version = "0.0.7";
+  sha256 = "056d66jk7gn0ghsb75f2kpspws0gs1w9vnw0ywpq6kbskv992v0p";
   buildDepends = [ cpphs haskellSrcExts testFramework ];
   meta = {
     description = "Template Haskell for test framework";
diff --git a/pkgs/development/libraries/haskell/test-simple/default.nix b/pkgs/development/libraries/haskell/test-simple/default.nix
new file mode 100644
index 00000000000..181c92147e3
--- /dev/null
+++ b/pkgs/development/libraries/haskell/test-simple/default.nix
@@ -0,0 +1,16 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, executablePath, mtl, QuickCheck, statePlus }:
+
+cabal.mkDerivation (self: {
+  pname = "test-simple";
+  version = "0.1.7";
+  sha256 = "1p9y15vv23j1qn3shxl2wqb8skh0n53vrb39qv1nvff9bclxldka";
+  buildDepends = [ mtl QuickCheck statePlus ];
+  testDepends = [ executablePath mtl QuickCheck ];
+  meta = {
+    description = "Simple Perl inspired testing";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/threepenny-gui/default.nix b/pkgs/development/libraries/haskell/threepenny-gui/default.nix
index fad37db7c9c..5586c28079b 100644
--- a/pkgs/development/libraries/haskell/threepenny-gui/default.nix
+++ b/pkgs/development/libraries/haskell/threepenny-gui/default.nix
@@ -1,7 +1,7 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
 { cabal, aeson, attoparsecEnumerator, dataDefault, deepseq
-, filepath, hashable, MonadCatchIOTransformers, network, safe
+, filepath, hashable, MonadCatchIOTransformers, networkUri, safe
 , snapCore, snapServer, stm, text, time, transformers
 , unorderedContainers, utf8String, vault, websockets
 , websocketsSnap
@@ -9,15 +9,15 @@
 
 cabal.mkDerivation (self: {
   pname = "threepenny-gui";
-  version = "0.4.2.0";
-  sha256 = "1746l90h9xkwnwxvfqsr93nax7ihv8lwc4kz203v13rrwckr7m8h";
+  version = "0.5.0.0";
+  sha256 = "0rr826k6p2hbp66qr12sci6km40krbi7lbs293r11jxi0ivj5drd";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
     aeson attoparsecEnumerator dataDefault deepseq filepath hashable
-    MonadCatchIOTransformers network safe snapCore snapServer stm text
-    time transformers unorderedContainers utf8String vault websockets
-    websocketsSnap
+    MonadCatchIOTransformers networkUri safe snapCore snapServer stm
+    text time transformers unorderedContainers utf8String vault
+    websockets websocketsSnap
   ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/thyme/default.nix b/pkgs/development/libraries/haskell/thyme/default.nix
index 18763701126..110f9f396c1 100644
--- a/pkgs/development/libraries/haskell/thyme/default.nix
+++ b/pkgs/development/libraries/haskell/thyme/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "thyme";
-  version = "0.3.5.2";
-  sha256 = "1vb5qn9m88y9738d9znim5lprb8z10am5yjaksdjl151li8apd6x";
+  version = "0.3.5.3";
+  sha256 = "1gfqj9rsjmc8gdg2qrzdnjnjdwdls55k061qh82ihwa6l7nfkjv1";
   buildDepends = [
     aeson attoparsec deepseq mtl profunctors QuickCheck random text
     time vector vectorSpace vectorThUnbox
diff --git a/pkgs/development/libraries/haskell/tostring/default.nix b/pkgs/development/libraries/haskell/tostring/default.nix
index 825361354d2..8b6623d4639 100644
--- a/pkgs/development/libraries/haskell/tostring/default.nix
+++ b/pkgs/development/libraries/haskell/tostring/default.nix
@@ -1,12 +1,12 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, text, utf8String }:
+{ cabal, caseInsensitive, text, utf8String }:
 
 cabal.mkDerivation (self: {
   pname = "tostring";
-  version = "0.2.0.2";
-  sha256 = "0gjc1576cb4cil55l2jki3y4zp8z6b1m04rf68f2fbc619wji5k6";
-  buildDepends = [ text utf8String ];
+  version = "0.2.1";
+  sha256 = "0lvfvjs1q6hndbchij3zn1xi6vb1v53r379jvyc2m92sqqcfnylw";
+  buildDepends = [ caseInsensitive text utf8String ];
   meta = {
     description = "The ToString class";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/trivia/default.nix b/pkgs/development/libraries/haskell/trivia/default.nix
new file mode 100644
index 00000000000..b32653032b5
--- /dev/null
+++ b/pkgs/development/libraries/haskell/trivia/default.nix
@@ -0,0 +1,17 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, comonad, distributive }:
+
+cabal.mkDerivation (self: {
+  pname = "trivia";
+  version = "0.0";
+  sha256 = "03xmzjqwk6492jmmbq6066ymsxb0wk0pmyf0c5f018nfps0g3i78";
+  buildDepends = [ comonad distributive ];
+  meta = {
+    homepage = "https://github.com/fumieval/trivia";
+    description = "The trivial monad and comonad";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/twitter-conduit/default.nix b/pkgs/development/libraries/haskell/twitter-conduit/default.nix
index 8720fb3f2be..6c43c5891c4 100644
--- a/pkgs/development/libraries/haskell/twitter-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/twitter-conduit/default.nix
@@ -9,8 +9,8 @@
 
 cabal.mkDerivation (self: {
   pname = "twitter-conduit";
-  version = "0.0.6";
-  sha256 = "1vm4wa3cdmyz2m45rnwkrjcx8wajc89395c28rz1q12hf856970j";
+  version = "0.0.7";
+  sha256 = "1xwfyhjkbdl19b7cpw12lgnjzqhpiqvfhag2l8zhks21yv0l3kg0";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/unix-time/default.nix b/pkgs/development/libraries/haskell/unix-time/default.nix
index 60f0f21b292..74bfb292775 100644
--- a/pkgs/development/libraries/haskell/unix-time/default.nix
+++ b/pkgs/development/libraries/haskell/unix-time/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "unix-time";
-  version = "0.3.3";
-  sha256 = "018wpr5d2kjv8syj97664sqh1v7ws1780qmlfxvrakj86z9k5i8x";
+  version = "0.3.4";
+  sha256 = "1bni03bzayg3vwj6mwcl4z41zixv8nida8jc3vkv41fr7mzb24g5";
   buildDepends = [ binary ];
   testDepends = [ doctest hspec QuickCheck time ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/unordered-containers/0.2.5.0.nix b/pkgs/development/libraries/haskell/unordered-containers/0.2.5.1.nix
index 70f00b68d42..07f1b8beb97 100644
--- a/pkgs/development/libraries/haskell/unordered-containers/0.2.5.0.nix
+++ b/pkgs/development/libraries/haskell/unordered-containers/0.2.5.1.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "unordered-containers";
-  version = "0.2.5.0";
-  sha256 = "0y85a9zg77h05c5ajchvfazg84ksvyi92r6bbmh09qzlf7mlb4bj";
+  version = "0.2.5.1";
+  sha256 = "06l1xv7vhpxly75saxdrbc6p2zlgz1az278arfkz4rgawfnphn3f";
   buildDepends = [ deepseq hashable ];
   testDepends = [
     ChasingBottoms hashable HUnit QuickCheck testFramework
diff --git a/pkgs/development/libraries/haskell/uri/default.nix b/pkgs/development/libraries/haskell/uri/default.nix
index 11276f2bc4a..633818d9518 100644
--- a/pkgs/development/libraries/haskell/uri/default.nix
+++ b/pkgs/development/libraries/haskell/uri/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "uri";
-  version = "0.1.6.2";
-  sha256 = "0f2ms8awm4x7pw8ms6in0mxspqmnhv8bxas0947rkrzc5m9k0h3s";
+  version = "0.1.6.3";
+  sha256 = "1dhmrn4mq3ia0iv3y2k5pw71a6677q3vdqqf2w4b3aksi6wna49j";
   buildDepends = [ parsec safe utf8String ];
   meta = {
     homepage = "http://gitorious.org/uri";
diff --git a/pkgs/development/libraries/haskell/urlencoded/default.nix b/pkgs/development/libraries/haskell/urlencoded/default.nix
index 74ae443f8a6..e60af0e3152 100644
--- a/pkgs/development/libraries/haskell/urlencoded/default.nix
+++ b/pkgs/development/libraries/haskell/urlencoded/default.nix
@@ -14,5 +14,6 @@ cabal.mkDerivation (self: {
     description = "Generate or process x-www-urlencoded data";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/vado/default.nix b/pkgs/development/libraries/haskell/vado/default.nix
index fc95d494e36..87f0ed126fa 100644
--- a/pkgs/development/libraries/haskell/vado/default.nix
+++ b/pkgs/development/libraries/haskell/vado/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "vado";
-  version = "0.0.2";
-  sha256 = "15kdqgpdy501g4hpldq44s7qgh4xchl6acnr95i5fj8ky4vgwfi0";
+  version = "0.0.3";
+  sha256 = "1s6fb19p3lc6g13ryh7bmxciv62v8m0ihvzrymsj0nn6jghiys5f";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ attoparsec filepath text ];
diff --git a/pkgs/development/libraries/haskell/validation/default.nix b/pkgs/development/libraries/haskell/validation/default.nix
new file mode 100644
index 00000000000..2ae7e9c66e5
--- /dev/null
+++ b/pkgs/development/libraries/haskell/validation/default.nix
@@ -0,0 +1,21 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, bifunctors, doctest, filepath, lens, QuickCheck
+, semigroupoids, semigroups, transformers
+}:
+
+cabal.mkDerivation (self: {
+  pname = "validation";
+  version = "0.4.1";
+  sha256 = "05mws9gqlqjmzcw6d3kclrh9dybchhp61qsfwg77h31n44j7w0mh";
+  buildDepends = [
+    bifunctors lens semigroupoids semigroups transformers
+  ];
+  testDepends = [ doctest filepath QuickCheck ];
+  meta = {
+    homepage = "https://github.com/tonymorris/validation";
+    description = "A data-type like Either but with an accumulating Applicative";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/vector/0.10.0.1.nix b/pkgs/development/libraries/haskell/vector/0.10.0.1.nix
index 0f48fbecf06..634116b3d9b 100644
--- a/pkgs/development/libraries/haskell/vector/0.10.0.1.nix
+++ b/pkgs/development/libraries/haskell/vector/0.10.0.1.nix
@@ -7,6 +7,7 @@ cabal.mkDerivation (self: {
   version = "0.10.0.1";
   sha256 = "1bq8am8qnpnsla315i21f1kikikalyz9ps1izxgpr9q1ic2lbsgc";
   buildDepends = [ deepseq primitive ];
+  configureFlags = "${self.stdenv.lib.optionalString self.stdenv.isi686 "--ghc-options=-msse2"}";
   meta = {
     homepage = "http://code.haskell.org/vector";
     description = "Efficient Arrays";
diff --git a/pkgs/development/libraries/haskell/vector/0.10.11.0.nix b/pkgs/development/libraries/haskell/vector/0.10.11.0.nix
index e93160ff6d0..6929594c62b 100644
--- a/pkgs/development/libraries/haskell/vector/0.10.11.0.nix
+++ b/pkgs/development/libraries/haskell/vector/0.10.11.0.nix
@@ -7,10 +7,12 @@ cabal.mkDerivation (self: {
   version = "0.10.11.0";
   sha256 = "0f5jks8q0287zgzlfg3x7akpahck6dm1c37hb8kk6qn51csx515j";
   buildDepends = [ deepseq primitive ];
+  configureFlags = "${self.stdenv.lib.optionalString self.stdenv.isi686 "--ghc-options=-msse2"}";
   meta = {
     homepage = "https://github.com/haskell/vector";
     description = "Efficient Arrays";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    hydraPlatforms = self.stdenv.lib.platforms.none;
   };
 })
diff --git a/pkgs/development/libraries/haskell/vector/0.10.12.1.nix b/pkgs/development/libraries/haskell/vector/0.10.12.1.nix
new file mode 100644
index 00000000000..e83a53b57a1
--- /dev/null
+++ b/pkgs/development/libraries/haskell/vector/0.10.12.1.nix
@@ -0,0 +1,23 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, deepseq, primitive, QuickCheck, random, testFramework
+, testFrameworkQuickcheck2, transformers
+}:
+
+cabal.mkDerivation (self: {
+  pname = "vector";
+  version = "0.10.12.1";
+  sha256 = "0m4m650yxv92dz8xgcjfkbhsl46hgnf02viwgdja5xmvg3aa8fcp";
+  buildDepends = [ deepseq primitive ];
+  testDepends = [
+    QuickCheck random testFramework testFrameworkQuickcheck2
+    transformers
+  ];
+  configureFlags = "${self.stdenv.lib.optionalString self.stdenv.isi686 "--ghc-options=-msse2"}";
+  meta = {
+    homepage = "https://github.com/haskell/vector";
+    description = "Efficient Arrays";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/vector/0.10.9.3.nix b/pkgs/development/libraries/haskell/vector/0.10.9.3.nix
index d07f27bee31..42796bea548 100644
--- a/pkgs/development/libraries/haskell/vector/0.10.9.3.nix
+++ b/pkgs/development/libraries/haskell/vector/0.10.9.3.nix
@@ -7,6 +7,7 @@ cabal.mkDerivation (self: {
   version = "0.10.9.3";
   sha256 = "08mlg0v7an6mm04skvxrgfndab0wikfs4glv7jj8ylxwc8959kdx";
   buildDepends = [ deepseq primitive ];
+  configureFlags = "${self.stdenv.lib.optionalString self.stdenv.isi686 "--ghc-options=-msse2"}";
   meta = {
     homepage = "https://github.com/haskell/vector";
     description = "Efficient Arrays";
diff --git a/pkgs/development/libraries/haskell/wai/default.nix b/pkgs/development/libraries/haskell/wai/default.nix
index 1c63b4ce596..2effc4fc83b 100644
--- a/pkgs/development/libraries/haskell/wai/default.nix
+++ b/pkgs/development/libraries/haskell/wai/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "wai";
-  version = "3.0.1.1";
-  sha256 = "04dka0mgqckzhvmz8m9gqvk5qq79g23q8wx40v42fwhkwwy7f8i0";
+  version = "3.0.2";
+  sha256 = "0k67yzr05d6vjwqamnzzggk1mlj9wabqrm26dqbrrc40jj3kddgw";
   buildDepends = [ blazeBuilder httpTypes network text vault ];
   testDepends = [ blazeBuilder hspec ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/warp-tls/default.nix b/pkgs/development/libraries/haskell/warp-tls/default.nix
index 4eca4c8c192..19ef6c4e7d9 100644
--- a/pkgs/development/libraries/haskell/warp-tls/default.nix
+++ b/pkgs/development/libraries/haskell/warp-tls/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "warp-tls";
-  version = "3.0.0";
-  sha256 = "14gm43a811v9h87ia2b9y9kynafrvq3yw89gswlj832469jx9sfw";
+  version = "3.0.0.1";
+  sha256 = "054xazykd2njwrjzxkz08nqf7fghgjzc7rg7qbl5pfpn9b2a4pls";
   buildDepends = [
     cprngAes dataDefaultClass network streamingCommons tls wai warp
   ];
diff --git a/pkgs/development/libraries/haskell/warp/default.nix b/pkgs/development/libraries/haskell/warp/default.nix
index bf53afbe8c8..abca63eaf1b 100644
--- a/pkgs/development/libraries/haskell/warp/default.nix
+++ b/pkgs/development/libraries/haskell/warp/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "warp";
-  version = "3.0.1.1";
-  sha256 = "1sgmcyk9ngys990287wsga3kk6wf29sj414w6jmv8a4sal202mqc";
+  version = "3.0.2.3";
+  sha256 = "16fwqd3nnw0bpa2a8ki0ynxif8a90qa20fvw5fmyngyvysl8g7qn";
   buildDepends = [
     autoUpdate blazeBuilder caseInsensitive hashable httpDate httpTypes
     network simpleSendfile streamingCommons text unixCompat void wai
diff --git a/pkgs/development/libraries/haskell/web-routes-boomerang/default.nix b/pkgs/development/libraries/haskell/web-routes-boomerang/default.nix
index bed9467a9d2..88f26878280 100644
--- a/pkgs/development/libraries/haskell/web-routes-boomerang/default.nix
+++ b/pkgs/development/libraries/haskell/web-routes-boomerang/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "web-routes-boomerang";
-  version = "0.28.2";
-  sha256 = "17237xq8nvy0c1mxzf7pad5kw0mrgbzazy0rflp382ig9q6ipd05";
+  version = "0.28.3";
+  sha256 = "0d3ccp4hbzjhqzqy901da8dpz23sylwg54xs5iyjhmqvw0v7ljpn";
   buildDepends = [ boomerang mtl parsec text webRoutes ];
   meta = {
     description = "Library for maintaining correctness and composability of URLs within an application";
diff --git a/pkgs/development/libraries/haskell/web-routes/default.nix b/pkgs/development/libraries/haskell/web-routes/default.nix
index 12f2212c8e3..b29d42dc961 100644
--- a/pkgs/development/libraries/haskell/web-routes/default.nix
+++ b/pkgs/development/libraries/haskell/web-routes/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "web-routes";
-  version = "0.27.6";
-  sha256 = "16jmiwnwmq9bkifk14dfs88a2kyy7rqybyq68ybrjq1x84x6pkkp";
+  version = "0.27.7";
+  sha256 = "0q6rl8vasbkq24jdfdq6jrjivcqqmdy34w8zw5zczmscpyjqf0zb";
   buildDepends = [
     blazeBuilder httpTypes mtl parsec split text utf8String
   ];
diff --git a/pkgs/development/libraries/haskell/webdriver/default.nix b/pkgs/development/libraries/haskell/webdriver/default.nix
index 1f73dda79ed..b7c1828c3e5 100644
--- a/pkgs/development/libraries/haskell/webdriver/default.nix
+++ b/pkgs/development/libraries/haskell/webdriver/default.nix
@@ -26,5 +26,6 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = with self.stdenv.lib.maintainers; [ aycanirican ];
+    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/webkit/default.nix b/pkgs/development/libraries/haskell/webkit/default.nix
index 0d47aeb7955..10cd225cee4 100644
--- a/pkgs/development/libraries/haskell/webkit/default.nix
+++ b/pkgs/development/libraries/haskell/webkit/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "webkit";
-  version = "0.13.0.0";
-  sha256 = "152rbb01fq9cxjxqm26s1qcv3nashzymkbjy52ql06y7s1n5i3q5";
+  version = "0.13.0.2";
+  sha256 = "1dagfc5v5ihg7hm8vkymg1jyhxqhlxb8f4bnbmjcv4sffbm9q14f";
   buildDepends = [ cairo glib gtk mtl pango text ];
   buildTools = [ gtk2hsBuildtools ];
   pkgconfigDepends = [ webkit ];
diff --git a/pkgs/development/libraries/haskell/websockets/default.nix b/pkgs/development/libraries/haskell/websockets/default.nix
index f4d056f6656..2b80e524d4a 100644
--- a/pkgs/development/libraries/haskell/websockets/default.nix
+++ b/pkgs/development/libraries/haskell/websockets/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "websockets";
-  version = "0.9.0.1";
-  sha256 = "0advbw1z0g53n8az34287fix16a457jv8z6s0g1l8lr4a8b74x0w";
+  version = "0.9.1.0";
+  sha256 = "18q2dax5d4qh7didr2jhsns07lsybab4v231wjxn6iiyf9f7f16i";
   buildDepends = [
     attoparsec base64Bytestring binary blazeBuilder caseInsensitive
     entropy mtl network random SHA text
diff --git a/pkgs/development/libraries/haskell/word-trie/default.nix b/pkgs/development/libraries/haskell/word-trie/default.nix
new file mode 100644
index 00000000000..f817254aa62
--- /dev/null
+++ b/pkgs/development/libraries/haskell/word-trie/default.nix
@@ -0,0 +1,18 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, binary, derive, hspec, QuickCheck }:
+
+cabal.mkDerivation (self: {
+  pname = "word-trie";
+  version = "0.2.0.4";
+  sha256 = "0qgljhl2pj54mhsan9w6gchf3l94rs2c5bi9f93q1nz55va1027f";
+  buildDepends = [ binary derive ];
+  testDepends = [ binary derive hspec QuickCheck ];
+  meta = {
+    homepage = "https://github.com/yi-editor/word-trie";
+    description = "Implementation of a finite trie over words";
+    license = self.stdenv.lib.licenses.gpl2;
+    platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/x509-system/default.nix b/pkgs/development/libraries/haskell/x509-system/default.nix
index b36b8c9cdfb..c50e83449bb 100644
--- a/pkgs/development/libraries/haskell/x509-system/default.nix
+++ b/pkgs/development/libraries/haskell/x509-system/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "x509-system";
-  version = "1.4.5";
-  sha256 = "0pwn624n6fagg9rw2p09x2k212rc8167jhqz6z5wf6m7y56ql28x";
+  version = "1.4.6";
+  sha256 = "0h462dgc0jf88yfd4nx9xpqx5kfzc3z6ps8akw13pfy92xdxj28c";
   buildDepends = [ filepath mtl pem time x509 x509Store ];
   meta = {
     homepage = "http://github.com/vincenthz/hs-certificate";
diff --git a/pkgs/development/libraries/haskell/x509/default.nix b/pkgs/development/libraries/haskell/x509/default.nix
index 71601c9306d..c49a0e75fcf 100644
--- a/pkgs/development/libraries/haskell/x509/default.nix
+++ b/pkgs/development/libraries/haskell/x509/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "x509";
-  version = "1.4.12";
-  sha256 = "0bfsmmngpvghbfljxa2gymf6hvsw04snw6fr2r6hpaw40njxfxxj";
+  version = "1.4.13";
+  sha256 = "1cl2ygk38jh803aplsg68q6njzb0wcd1syb182amxqn8jlwh8a7c";
   buildDepends = [
     asn1Encoding asn1Parse asn1Types cryptohash cryptoPubkeyTypes
     filepath mtl pem time
diff --git a/pkgs/development/libraries/haskell/xdot/default.nix b/pkgs/development/libraries/haskell/xdot/default.nix
index 445577c2309..297bc813030 100644
--- a/pkgs/development/libraries/haskell/xdot/default.nix
+++ b/pkgs/development/libraries/haskell/xdot/default.nix
@@ -4,8 +4,10 @@
 
 cabal.mkDerivation (self: {
   pname = "xdot";
-  version = "0.2.4.3";
-  sha256 = "0p6y3ng8nwi8sksy0881bs331asi73x816zd5v7qlg4v719s8jxg";
+  version = "0.2.4.4";
+  sha256 = "1bv2n1pzn58kqf9k5qbyzlkddhx2v2c9gc50c7q7yd7wxxpml7gi";
+  isLibrary = true;
+  isExecutable = true;
   buildDepends = [ cairo graphviz gtk mtl polyparse text ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/xml-conduit/default.nix b/pkgs/development/libraries/haskell/xml-conduit/default.nix
index ddd6129dd83..a6e0cdfa3b0 100644
--- a/pkgs/development/libraries/haskell/xml-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/xml-conduit/default.nix
@@ -1,19 +1,18 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, attoparsec, attoparsecConduit, blazeBuilder
-, blazeBuilderConduit, blazeHtml, blazeMarkup, conduit
+{ cabal, attoparsec, blazeBuilder, blazeHtml, blazeMarkup, conduit
 , conduitExtra, dataDefault, deepseq, hspec, HUnit, monadControl
 , resourcet, systemFilepath, text, transformers, xmlTypes
 }:
 
 cabal.mkDerivation (self: {
   pname = "xml-conduit";
-  version = "1.2.2";
-  sha256 = "0rya11zzkqkq9jspd3q75b50l0p42aq3ka77by0wan373hw4ydan";
+  version = "1.2.3";
+  sha256 = "1knwmvs9hczlknyi27hciy1xkn219s6niv3w7q0wkw6rxz2q555v";
   buildDepends = [
-    attoparsec attoparsecConduit blazeBuilder blazeBuilderConduit
-    blazeHtml blazeMarkup conduit conduitExtra dataDefault deepseq
-    monadControl resourcet systemFilepath text transformers xmlTypes
+    attoparsec blazeBuilder blazeHtml blazeMarkup conduit conduitExtra
+    dataDefault deepseq monadControl resourcet systemFilepath text
+    transformers xmlTypes
   ];
   testDepends = [
     blazeMarkup conduit hspec HUnit resourcet text transformers
diff --git a/pkgs/development/libraries/haskell/yaml/default.nix b/pkgs/development/libraries/haskell/yaml/default.nix
index 9173baa97ba..22222e1177c 100644
--- a/pkgs/development/libraries/haskell/yaml/default.nix
+++ b/pkgs/development/libraries/haskell/yaml/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yaml";
-  version = "0.8.9.1";
-  sha256 = "129pf4gg3mf2ljag8vxknnqxbrbx53hshzpaggndxjir72303njy";
+  version = "0.8.9.3";
+  sha256 = "0hpxmb7flb9xl5s5pf1g76lvm73fbnfs9fr37vlhdxcdqgih0m68";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/yesod-auth-hashdb/default.nix b/pkgs/development/libraries/haskell/yesod-auth-hashdb/default.nix
index a47f3bed59d..3ccab6ece5e 100644
--- a/pkgs/development/libraries/haskell/yesod-auth-hashdb/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-auth-hashdb/default.nix
@@ -1,16 +1,16 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, cryptohash, pwstoreFast, text, yesodAuth, yesodCore
-, yesodForm, yesodPersistent
+{ cabal, cryptohash, persistent, pwstoreFast, text, yesodAuth
+, yesodCore, yesodForm, yesodPersistent
 }:
 
 cabal.mkDerivation (self: {
   pname = "yesod-auth-hashdb";
-  version = "1.3.0.1";
-  sha256 = "0q78mw09g6b04zaz54s03222mh59nm604qh8gyw5kka06f93hk4q";
+  version = "1.4.0";
+  sha256 = "0z6gfm1dk03ap2ra7b9wd2jcsnfazcpk6vxcsx94vmb3a9jqx22l";
   buildDepends = [
-    cryptohash pwstoreFast text yesodAuth yesodCore yesodForm
-    yesodPersistent
+    cryptohash persistent pwstoreFast text yesodAuth yesodCore
+    yesodForm yesodPersistent
   ];
   meta = {
     homepage = "http://www.yesodweb.com/";
@@ -18,6 +18,5 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
     maintainers = with self.stdenv.lib.maintainers; [ ianwookim ];
-    broken = true;
   };
 })
diff --git a/pkgs/development/libraries/haskell/yesod-auth/default.nix b/pkgs/development/libraries/haskell/yesod-auth/default.nix
index f15d96df005..1b6b3ab076c 100644
--- a/pkgs/development/libraries/haskell/yesod-auth/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-auth/default.nix
@@ -1,27 +1,26 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, aeson, attoparsecConduit, authenticate, base16Bytestring
-, base64Bytestring, binary, blazeBuilder, blazeHtml, blazeMarkup
-, byteable, conduit, conduitExtra, cryptohash, dataDefault
-, emailValidate, fileEmbed, hamlet, httpClient, httpConduit
-, httpTypes, liftedBase, mimeMail, networkUri, persistent
-, persistentTemplate, random, resourcet, safe, shakespeare
-, shakespeareCss, shakespeareJs, text, time, transformers
-, unorderedContainers, wai, yesodCore, yesodForm, yesodPersistent
+{ cabal, aeson, authenticate, base16Bytestring, base64Bytestring
+, binary, blazeBuilder, blazeHtml, blazeMarkup, byteable, conduit
+, conduitExtra, cryptohash, dataDefault, emailValidate, fileEmbed
+, httpClient, httpConduit, httpTypes, liftedBase, mimeMail
+, networkUri, persistent, persistentTemplate, random, resourcet
+, safe, shakespeare, text, time, transformers, unorderedContainers
+, wai, yesodCore, yesodForm, yesodPersistent
 }:
 
 cabal.mkDerivation (self: {
   pname = "yesod-auth";
-  version = "1.3.4.6";
-  sha256 = "17lp99pinq72if527ml4sfqvvjn7kmkcc5jq1l9vsbfgqckmqcff";
+  version = "1.4.0.1";
+  sha256 = "1d5rimp6jnxi8j518g3hg74a4g90rvgfhnxpz2kj6881v85avvh3";
   buildDepends = [
-    aeson attoparsecConduit authenticate base16Bytestring
-    base64Bytestring binary blazeBuilder blazeHtml blazeMarkup byteable
-    conduit conduitExtra cryptohash dataDefault emailValidate fileEmbed
-    hamlet httpClient httpConduit httpTypes liftedBase mimeMail
-    networkUri persistent persistentTemplate random resourcet safe
-    shakespeare shakespeareCss shakespeareJs text time transformers
-    unorderedContainers wai yesodCore yesodForm yesodPersistent
+    aeson authenticate base16Bytestring base64Bytestring binary
+    blazeBuilder blazeHtml blazeMarkup byteable conduit conduitExtra
+    cryptohash dataDefault emailValidate fileEmbed httpClient
+    httpConduit httpTypes liftedBase mimeMail networkUri persistent
+    persistentTemplate random resourcet safe shakespeare text time
+    transformers unorderedContainers wai yesodCore yesodForm
+    yesodPersistent
   ];
   meta = {
     homepage = "http://www.yesodweb.com/";
diff --git a/pkgs/development/libraries/haskell/yesod-bin/default.nix b/pkgs/development/libraries/haskell/yesod-bin/default.nix
index 8a5d21a30aa..ffec55a1da4 100644
--- a/pkgs/development/libraries/haskell/yesod-bin/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-bin/default.nix
@@ -3,25 +3,23 @@
 { cabal, attoparsec, base64Bytestring, blazeBuilder, Cabal, conduit
 , conduitExtra, dataDefaultClass, fileEmbed, filepath, fsnotify
 , ghcPaths, httpConduit, httpReverseProxy, httpTypes, liftedBase
-, network, networkConduit, optparseApplicative, parsec
-, projectTemplate, resourcet, shakespeare, shakespeareCss
-, shakespeareJs, shakespeareText, split, streamingCommons
-, systemFileio, systemFilepath, tar, text, time, transformers
-, unixCompat, unorderedContainers, wai, waiExtra, warp, yaml, zlib
+, network, optparseApplicative, parsec, projectTemplate, resourcet
+, shakespeare, split, streamingCommons, systemFileio
+, systemFilepath, tar, text, time, transformers, unixCompat
+, unorderedContainers, wai, waiExtra, warp, yaml, zlib
 }:
 
 cabal.mkDerivation (self: {
   pname = "yesod-bin";
-  version = "1.2.13";
-  sha256 = "11378w4r48d41cdigcmrcqzrl70vxxqdwq3j1da6dbmdx7nksxfk";
+  version = "1.4.0.1";
+  sha256 = "062jr3g32rsljscq7bq9bgwwfx7vijx3cmhakwcxw17yh5405ks5";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [
     attoparsec base64Bytestring blazeBuilder Cabal conduit conduitExtra
     dataDefaultClass fileEmbed filepath fsnotify ghcPaths httpConduit
-    httpReverseProxy httpTypes liftedBase network networkConduit
-    optparseApplicative parsec projectTemplate resourcet shakespeare
-    shakespeareCss shakespeareJs shakespeareText split streamingCommons
+    httpReverseProxy httpTypes liftedBase network optparseApplicative
+    parsec projectTemplate resourcet shakespeare split streamingCommons
     systemFileio systemFilepath tar text time transformers unixCompat
     unorderedContainers wai waiExtra warp yaml zlib
   ];
diff --git a/pkgs/development/libraries/haskell/yesod-core/default.nix b/pkgs/development/libraries/haskell/yesod-core/default.nix
index e27f751e6b1..8c55c35181b 100644
--- a/pkgs/development/libraries/haskell/yesod-core/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-core/default.nix
@@ -1,34 +1,31 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, aeson, async, attoparsecConduit, blazeBuilder, blazeHtml
-, blazeMarkup, caseInsensitive, cereal, clientsession, conduit
-, conduitExtra, cookie, dataDefault, deepseq, exceptions
-, fastLogger, hamlet, hspec, httpTypes, HUnit, liftedBase
-, monadControl, monadLogger, mtl, network, networkConduit, parsec
-, pathPieces, QuickCheck, random, resourcet, safe, shakespeare
-, shakespeareCss, shakespeareI18n, shakespeareJs, streamingCommons
-, text, time, transformers, transformersBase, unixCompat, vector
-, wai, waiExtra, waiLogger, waiTest, warp, yesodRoutes
+{ cabal, aeson, async, blazeBuilder, blazeHtml, blazeMarkup
+, caseInsensitive, cereal, clientsession, conduit, conduitExtra
+, cookie, dataDefault, deepseq, exceptions, fastLogger, hspec
+, httpTypes, HUnit, liftedBase, monadControl, monadLogger, mtl
+, network, parsec, pathPieces, QuickCheck, random, resourcet, safe
+, shakespeare, streamingCommons, text, time, transformers
+, transformersBase, unixCompat, unorderedContainers, vector, wai
+, waiExtra, waiLogger, warp
 }:
 
 cabal.mkDerivation (self: {
   pname = "yesod-core";
-  version = "1.2.20.1";
-  sha256 = "188mfw9ag6287azb633xznwrbsavy5k12ycg2aahrxd84g6xjnan";
+  version = "1.4.2";
+  sha256 = "0qi1shmbsi8vkxzvyzqzgmdapnbfkkjvhkshkmr7rrdhkdbnkbxl";
   buildDepends = [
-    aeson attoparsecConduit blazeBuilder blazeHtml blazeMarkup
-    caseInsensitive cereal clientsession conduit conduitExtra cookie
-    dataDefault deepseq exceptions fastLogger hamlet httpTypes
-    liftedBase monadControl monadLogger mtl parsec pathPieces random
-    resourcet safe shakespeare shakespeareCss shakespeareI18n
-    shakespeareJs text time transformers transformersBase unixCompat
-    vector wai waiExtra waiLogger warp yesodRoutes
+    aeson blazeBuilder blazeHtml blazeMarkup caseInsensitive cereal
+    clientsession conduit conduitExtra cookie dataDefault deepseq
+    exceptions fastLogger httpTypes liftedBase monadControl monadLogger
+    mtl parsec pathPieces random resourcet safe shakespeare text time
+    transformers transformersBase unixCompat unorderedContainers vector
+    wai waiExtra waiLogger warp
   ];
   testDepends = [
-    async blazeBuilder conduit conduitExtra hamlet hspec httpTypes
-    HUnit liftedBase network networkConduit QuickCheck random resourcet
-    shakespeare shakespeareCss shakespeareJs streamingCommons text
-    transformers wai waiExtra waiTest
+    async blazeBuilder conduit conduitExtra hspec httpTypes HUnit
+    liftedBase network pathPieces QuickCheck random resourcet
+    shakespeare streamingCommons text transformers wai waiExtra
   ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/yesod-form/default.nix b/pkgs/development/libraries/haskell/yesod-form/default.nix
index d2e7b45e57e..45650de0df5 100644
--- a/pkgs/development/libraries/haskell/yesod-form/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-form/default.nix
@@ -1,21 +1,20 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
 { cabal, aeson, attoparsec, blazeBuilder, blazeHtml, blazeMarkup
-, byteable, dataDefault, emailValidate, hamlet, hspec, networkUri
-, persistent, resourcet, shakespeare, shakespeareCss, shakespeareJs
-, text, time, transformers, wai, xssSanitize, yesodCore
-, yesodPersistent
+, byteable, dataDefault, emailValidate, hspec, networkUri
+, persistent, resourcet, shakespeare, text, time, transformers, wai
+, xssSanitize, yesodCore, yesodPersistent
 }:
 
 cabal.mkDerivation (self: {
   pname = "yesod-form";
-  version = "1.3.16";
-  sha256 = "0dqmp0df0ahayvg4f4fvn6kwpr3b5d5qfzvk3vwk8bnivk6jrwj5";
+  version = "1.4.0.2";
+  sha256 = "1y2585pdph2vl42ig6fvzpyy1p3n4v1i1xqnlkb2cfsyssswh5d4";
   buildDepends = [
     aeson attoparsec blazeBuilder blazeHtml blazeMarkup byteable
-    dataDefault emailValidate hamlet networkUri persistent resourcet
-    shakespeare shakespeareCss shakespeareJs text time transformers wai
-    xssSanitize yesodCore yesodPersistent
+    dataDefault emailValidate networkUri persistent resourcet
+    shakespeare text time transformers wai xssSanitize yesodCore
+    yesodPersistent
   ];
   testDepends = [ hspec text time ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/yesod-persistent/default.nix b/pkgs/development/libraries/haskell/yesod-persistent/default.nix
index fdfd5527247..845fc1c18ff 100644
--- a/pkgs/development/libraries/haskell/yesod-persistent/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-persistent/default.nix
@@ -2,20 +2,20 @@
 
 { cabal, blazeBuilder, conduit, hspec, persistent, persistentSqlite
 , persistentTemplate, resourcePool, resourcet, text, transformers
-, waiExtra, waiTest, yesodCore
+, waiExtra, yesodCore
 }:
 
 cabal.mkDerivation (self: {
   pname = "yesod-persistent";
-  version = "1.2.3.1";
-  sha256 = "1mmy1l91ksjvwi2zr1wnb50vshs4pdri9rcaracwrnrmdpbmyy3s";
+  version = "1.4.0.1";
+  sha256 = "08648n6b4xhsqbvqh8vpsf3481hvzhrkyqbzs303s6fz683mn0zw";
   buildDepends = [
     blazeBuilder conduit persistent persistentTemplate resourcePool
     resourcet transformers yesodCore
   ];
   testDepends = [
     blazeBuilder conduit hspec persistent persistentSqlite text
-    waiExtra waiTest yesodCore
+    waiExtra yesodCore
   ];
   meta = {
     homepage = "http://www.yesodweb.com/";
diff --git a/pkgs/development/libraries/haskell/yesod-static/default.nix b/pkgs/development/libraries/haskell/yesod-static/default.nix
index 5ad4a27b66f..02ffd51b47b 100644
--- a/pkgs/development/libraries/haskell/yesod-static/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-static/default.nix
@@ -3,29 +3,29 @@
 { cabal, async, attoparsec, base64Bytestring, blazeBuilder
 , byteable, conduit, conduitExtra, cryptohash, cryptohashConduit
 , cssText, dataDefault, fileEmbed, filepath, hashable, hjsmin
-, hspec, httpTypes, HUnit, mimeTypes, resourcet, shakespeareCss
-, systemFileio, systemFilepath, text, transformers, unixCompat
-, unorderedContainers, wai, waiAppStatic, waiExtra, waiTest
-, yesodCore, yesodTest
+, hspec, httpTypes, HUnit, mimeTypes, resourcet, systemFileio
+, systemFilepath, text, transformers, unixCompat
+, unorderedContainers, wai, waiAppStatic, waiExtra, yesodCore
+, yesodTest
 }:
 
 cabal.mkDerivation (self: {
   pname = "yesod-static";
-  version = "1.2.4";
-  sha256 = "0r5bz1jmgjd7cmvhkp3ahgl610bssvgxxsvb626dvqz2vqc0061z";
+  version = "1.4.0.2";
+  sha256 = "0s5jx1hj6rsrsm36xzg8l21v5z2dbd6k63wihrz31rc3gan3wxj2";
   buildDepends = [
     async attoparsec base64Bytestring blazeBuilder byteable conduit
     conduitExtra cryptohash cryptohashConduit cssText dataDefault
     fileEmbed filepath hashable hjsmin httpTypes mimeTypes resourcet
-    shakespeareCss systemFileio systemFilepath text transformers
-    unixCompat unorderedContainers wai waiAppStatic yesodCore
+    systemFileio systemFilepath text transformers unixCompat
+    unorderedContainers wai waiAppStatic yesodCore
   ];
   testDepends = [
     async base64Bytestring byteable conduit conduitExtra cryptohash
     cryptohashConduit dataDefault fileEmbed filepath hjsmin hspec
-    httpTypes HUnit mimeTypes resourcet shakespeareCss systemFileio
-    systemFilepath text transformers unixCompat unorderedContainers wai
-    waiAppStatic waiExtra waiTest yesodCore yesodTest
+    httpTypes HUnit mimeTypes resourcet systemFileio systemFilepath
+    text transformers unixCompat unorderedContainers wai waiAppStatic
+    waiExtra yesodCore yesodTest
   ];
   doCheck = false;
   meta = {
diff --git a/pkgs/development/libraries/haskell/yesod-test/default.nix b/pkgs/development/libraries/haskell/yesod-test/default.nix
index f344e592962..75cde938219 100644
--- a/pkgs/development/libraries/haskell/yesod-test/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-test/default.nix
@@ -3,18 +3,18 @@
 { cabal, attoparsec, blazeBuilder, blazeHtml, blazeMarkup
 , caseInsensitive, cookie, hspec, htmlConduit, httpTypes, HUnit
 , monadControl, network, persistent, text, time, transformers, wai
-, waiExtra, waiTest, xmlConduit, xmlTypes, yesodCore, yesodForm
+, waiExtra, xmlConduit, xmlTypes, yesodCore, yesodForm
 }:
 
 cabal.mkDerivation (self: {
   pname = "yesod-test";
-  version = "1.2.6";
-  sha256 = "0509kd0qwwd83fnw2zr156l01h4hi4hd9lfkjx7dp8ky6506515f";
+  version = "1.4.0.3";
+  sha256 = "00rg8q5qwyp7aa409d8ir09vgbvwa9qxkgcjpwqa4lp3ncbpiw9j";
   buildDepends = [
     attoparsec blazeBuilder blazeHtml blazeMarkup caseInsensitive
     cookie hspec htmlConduit httpTypes HUnit monadControl network
-    persistent text time transformers wai waiExtra waiTest xmlConduit
-    xmlTypes yesodCore
+    persistent text time transformers wai waiExtra xmlConduit xmlTypes
+    yesodCore
   ];
   testDepends = [
     hspec htmlConduit HUnit text wai xmlConduit yesodCore yesodForm
diff --git a/pkgs/development/libraries/haskell/yesod/default.nix b/pkgs/development/libraries/haskell/yesod/default.nix
index 07d4ac958e6..1cc7f282f2a 100644
--- a/pkgs/development/libraries/haskell/yesod/default.nix
+++ b/pkgs/development/libraries/haskell/yesod/default.nix
@@ -1,8 +1,7 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
 { cabal, aeson, blazeHtml, blazeMarkup, conduitExtra, dataDefault
-, fastLogger, hamlet, monadControl, monadLogger, networkConduit
-, safe, shakespeare, shakespeareCss, shakespeareJs
+, fastLogger, monadControl, monadLogger, safe, shakespeare
 , streamingCommons, text, transformers, unorderedContainers, wai
 , waiExtra, warp, yaml, yesodAuth, yesodCore, yesodForm
 , yesodPersistent
@@ -10,14 +9,13 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod";
-  version = "1.2.6.1";
-  sha256 = "1xiqpbcjxisc4lic7ls03rz184d95vkh4kb3ampwbx463qbj9im2";
+  version = "1.4.0";
+  sha256 = "1h4jrzbf85malv3k1r4xxqp2y537naj1l284wazsrs2xikndwwn9";
   buildDepends = [
     aeson blazeHtml blazeMarkup conduitExtra dataDefault fastLogger
-    hamlet monadControl monadLogger networkConduit safe shakespeare
-    shakespeareCss shakespeareJs streamingCommons text transformers
-    unorderedContainers wai waiExtra warp yaml yesodAuth yesodCore
-    yesodForm yesodPersistent
+    monadControl monadLogger safe shakespeare streamingCommons text
+    transformers unorderedContainers wai waiExtra warp yaml yesodAuth
+    yesodCore yesodForm yesodPersistent
   ];
   meta = {
     homepage = "http://www.yesodweb.com/";
diff --git a/pkgs/applications/editors/yi/yi-contrib.nix b/pkgs/development/libraries/haskell/yi-contrib/default.nix
index 2678f0a0048..40c6dddc8cf 100644
--- a/pkgs/applications/editors/yi/yi-contrib.nix
+++ b/pkgs/development/libraries/haskell/yi-contrib/default.nix
@@ -1,21 +1,22 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, filepath, lens, mtl, split, time, transformersBase, yi }:
+{ cabal, filepath, lens, mtl, ooPrototypes, split, text, time
+, transformersBase, yi, yiLanguage, yiRope
+}:
 
 cabal.mkDerivation (self: {
   pname = "yi-contrib";
-  version = "0.8.2";
-  sha256 = "17rbgrra1ghlywiraadf16n7igxp1k8jqqmb0iw8sc15y7825qqm";
+  version = "0.10.1";
+  sha256 = "053hsahkxwg2mnf3h4j95gj18x5791dqqji43l310i4l7mliw91k";
   buildDepends = [
-    filepath lens mtl split time transformersBase yi
+    filepath lens mtl ooPrototypes split text time transformersBase yi
+    yiLanguage yiRope
   ];
   meta = {
     homepage = "http://haskell.org/haskellwiki/Yi";
     description = "Add-ons to Yi, the Haskell-Scriptable Editor";
-    license = "GPL";
-    broken = true;
+    license = self.stdenv.lib.licenses.gpl2;
     platforms = self.ghc.meta.platforms;
-    hydraPlatforms = self.stdenv.lib.platforms.none;
     maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
   };
 })
diff --git a/pkgs/development/libraries/haskell/yi-language/default.nix b/pkgs/development/libraries/haskell/yi-language/default.nix
new file mode 100644
index 00000000000..2c26e7345a1
--- /dev/null
+++ b/pkgs/development/libraries/haskell/yi-language/default.nix
@@ -0,0 +1,28 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, alex, binary, dataDefault, derive, filepath, hashable
+, hspec, lens, ooPrototypes, pointedlist, QuickCheck, regexBase
+, regexTdfa, transformersBase, unorderedContainers
+}:
+
+cabal.mkDerivation (self: {
+  pname = "yi-language";
+  version = "0.1.0.7";
+  sha256 = "1d6r5lvpngrhgyfam8hf675h9ylglhyzv11pabczbh8rz4jk40w1";
+  buildDepends = [
+    binary dataDefault derive hashable lens ooPrototypes pointedlist
+    regexBase regexTdfa transformersBase unorderedContainers
+  ];
+  testDepends = [
+    binary dataDefault derive filepath hashable hspec lens pointedlist
+    QuickCheck regexBase regexTdfa transformersBase unorderedContainers
+  ];
+  buildTools = [ alex ];
+  meta = {
+    homepage = "https://github.com/yi-editor/yi-language";
+    description = "Collection of language-related Yi libraries";
+    license = self.stdenv.lib.licenses.gpl2;
+    platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/yi-rope/default.nix b/pkgs/development/libraries/haskell/yi-rope/default.nix
new file mode 100644
index 00000000000..00db09fec70
--- /dev/null
+++ b/pkgs/development/libraries/haskell/yi-rope/default.nix
@@ -0,0 +1,19 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, binary, dataDefault, deepseq, fingertree, hspec
+, QuickCheck, quickcheckInstances, text
+}:
+
+cabal.mkDerivation (self: {
+  pname = "yi-rope";
+  version = "0.4.1.0";
+  sha256 = "11k0fl2m6m7idvanfrgvl3h068i6yj6rzxmwpjylz4vdqq618rcq";
+  buildDepends = [ binary dataDefault deepseq fingertree text ];
+  testDepends = [ hspec QuickCheck quickcheckInstances text ];
+  meta = {
+    description = "A rope data structure used by Yi";
+    license = self.stdenv.lib.licenses.gpl2;
+    platforms = self.ghc.meta.platforms;
+    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/yst/default.nix b/pkgs/development/libraries/haskell/yst/default.nix
index 2dadfcbfd68..ea3991eebe9 100644
--- a/pkgs/development/libraries/haskell/yst/default.nix
+++ b/pkgs/development/libraries/haskell/yst/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yst";
-  version = "0.4.1";
-  sha256 = "199awgpxn9131a7ijxvvbc4mi1yasnllbpj77k27brx00j87v3nq";
+  version = "0.4.1.1";
+  sha256 = "0i69pjzrxc330kfy3nvhzf59640h4p9w5lxpjlr31xbl7w1qqx12";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/zeromq4-haskell/default.nix b/pkgs/development/libraries/haskell/zeromq4-haskell/default.nix
index e4519c47358..4b7c333c07c 100644
--- a/pkgs/development/libraries/haskell/zeromq4-haskell/default.nix
+++ b/pkgs/development/libraries/haskell/zeromq4-haskell/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "zeromq4-haskell";
-  version = "0.6.1";
-  sha256 = "14ai6sp39qv6kmj33basnvvfqhzbiqxskv3crjwfdaxbijh23mif";
+  version = "0.6.2";
+  sha256 = "07dbsapzc4hqq9sg63v4wyjad13sqh9zsx3ckwc5hg5z6vknpafb";
   buildDepends = [ async exceptions semigroups transformers ];
   testDepends = [
     async QuickCheck tasty tastyHunit tastyQuickcheck
diff --git a/pkgs/development/libraries/http-parser/default.nix b/pkgs/development/libraries/http-parser/default.nix
index bb1f6b63084..9d5b11501fc 100644
--- a/pkgs/development/libraries/http-parser/default.nix
+++ b/pkgs/development/libraries/http-parser/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, gyp, utillinux, python, fixDarwinDylibNames }:
 
 let
-  version = "2.2.1";
+  version = "2.3";
 in stdenv.mkDerivation {
   name = "http-parser-${version}";
 
   src = fetchurl {
     url = "https://github.com/joyent/http-parser/archive/v${version}.tar.gz";
-    sha256 = "0p8wmchqsj9kwa8pg2is7v0h83q5lqns3vnm6sxrld7gaz979zh5";
+    sha256 = "1qnm466wp8zncr8na4xj2wndfzzfiahafhsaigj8cv35nx56pziv";
   };
 
   patches = [ ./build-shared.patch ];
diff --git a/pkgs/development/libraries/id3lib/default.nix b/pkgs/development/libraries/id3lib/default.nix
index 4d94624ce78..0ea1e96947e 100644
--- a/pkgs/development/libraries/id3lib/default.nix
+++ b/pkgs/development/libraries/id3lib/default.nix
@@ -9,6 +9,6 @@ stdenv.mkDerivation {
   
   src = fetchurl {
     url = mirror://sourceforge/id3lib/id3lib-3.8.3.tar.gz;
-    md5 = "19f27ddd2dda4b2d26a559a4f0f402a7";
+    sha256 = "0yfhqwk0w8q2hyv1jib1008jvzmwlpsxvc8qjllhna6p1hycqj97";
   };
 }
diff --git a/pkgs/development/libraries/imlib/default.nix b/pkgs/development/libraries/imlib/default.nix
index 27aaad7598a..d8193926fef 100644
--- a/pkgs/development/libraries/imlib/default.nix
+++ b/pkgs/development/libraries/imlib/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "imlib-1.9.15";
   src = fetchurl {
     url = http://tarballs.nixos.org/imlib-1.9.15.tar.gz;
-    md5 = "2a5561457e7f8b2e04d88f73508fd13a";
+    sha256 = "0ggjxyvgp4pxc0b88v40xj9daz90518ydnycw7qax011gxpr12d3";
   };
 
   configureFlags = "
diff --git a/pkgs/development/libraries/iso-codes/default.nix b/pkgs/development/libraries/iso-codes/default.nix
index 987e1a25d35..9477aca5973 100644
--- a/pkgs/development/libraries/iso-codes/default.nix
+++ b/pkgs/development/libraries/iso-codes/default.nix
@@ -1,10 +1,10 @@
 {stdenv, fetchurl, gettext, python, xz}:
 
 stdenv.mkDerivation rec {
-  name = "iso-codes-3.51";
+  name = "iso-codes-3.56";
   src = fetchurl {
     url = "http://pkg-isocodes.alioth.debian.org/downloads/${name}.tar.xz";
-    sha256 = "0zyp99l4m8cd6301x8zi3xxhziam6v0ic1h8qxb1l0mcjafzf8jj";
+    sha256 = "0vnfygd03jg21i7r238n450wy2hp354f3ank0v3k34zchbjydl2m";
   };
   patchPhase = ''
     for i in `find . -name \*.py`
diff --git a/pkgs/development/libraries/lcms2/default.nix b/pkgs/development/libraries/lcms2/default.nix
index 521118f3175..8bb015a6c5f 100644
--- a/pkgs/development/libraries/lcms2/default.nix
+++ b/pkgs/development/libraries/lcms2/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, libtiff, libjpeg, zlib}:
 
 stdenv.mkDerivation rec {
-  name = "lcms2-2.5";
+  name = "lcms2-2.6";
 
   src = fetchurl {
     url = "mirror://sourceforge/lcms/${name}.tar.gz";
-    sha256 = "0ax71bmscjzlpmg1r8vj3dypxf2jr7j9qfx5vc8j22j78hmpf9v7";
+    sha256 = "1c8lgq8gfs3nyplvbx9k8wzfj6r2bqi3f611vb1m8z3476454wji";
   };
 
   propagatedBuildInputs = [ libtiff libjpeg zlib ];
diff --git a/pkgs/development/libraries/ldns/default.nix b/pkgs/development/libraries/ldns/default.nix
index 8479551d28d..21c95066b33 100644
--- a/pkgs/development/libraries/ldns/default.nix
+++ b/pkgs/development/libraries/ldns/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, openssl, perl}:
 
 stdenv.mkDerivation rec {
-  name = "ldns-1.6.16";
+  name = "ldns-1.6.17";
 
   src = fetchurl {
     url = "http://www.nlnetlabs.nl/downloads/ldns/${name}.tar.gz";
-    sha256 = "15gn9m95r6sq2n55dw4r87p2aljb5lvy1w0y0br70wbr0p5zkci4";
+    sha256 = "1kf8pkwhcssvgzhh6ha1pjjiziwvwmfaali7kaafh6118mcy124b";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/libraries/libantlr3c/default.nix b/pkgs/development/libraries/libantlr3c/default.nix
new file mode 100644
index 00000000000..5f0b1ccd18e
--- /dev/null
+++ b/pkgs/development/libraries/libantlr3c/default.nix
@@ -0,0 +1,19 @@
+{stdenv, fetchurl}:
+
+stdenv.mkDerivation {
+  name = "libantlr3c-3.4";
+  src = fetchurl {
+    url = http://www.antlr3.org/download/C/libantlr3c-3.4.tar.gz;
+    sha256 ="0lpbnb4dq4azmsvlhp6khq1gy42kyqyjv8gww74g5lm2y6blm4fa";
+  };
+
+  configureFlags = if stdenv.is64bit then "--enable-64bit" else "";
+
+  meta = with stdenv.lib; {
+    description = "C runtime libraries of ANTLR v3";
+    homepage = http://www.antlr3.org/;
+    license = licenses.bsd3;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ vbgl ];
+  };
+}
diff --git a/pkgs/development/libraries/libbluray/default.nix b/pkgs/development/libraries/libbluray/default.nix
index 34352484738..b1a937c1a01 100644
--- a/pkgs/development/libraries/libbluray/default.nix
+++ b/pkgs/development/libraries/libbluray/default.nix
@@ -13,12 +13,12 @@ assert withFonts -> freetype != null;
 
 stdenv.mkDerivation rec {
   baseName = "libbluray";
-  version  = "0.6.0";
+  version  = "0.6.2";
   name = "${baseName}-${version}";
 
   src = fetchurl {
     url = "ftp://ftp.videolan.org/pub/videolan/${baseName}/${version}/${name}.tar.bz2";
-    sha256 = "0zsk16p7rxwbyizm87i7x2fcy3gwjfnlfd2gi2n17fv6gajvsyv2";
+    sha256 = "1l2wr9mwz5pikqxlxkjfw3rwz0l1j0n7x9hl80sfiqm1lk41194c";
   };
 
   nativeBuildInputs = with stdenv.lib;
diff --git a/pkgs/development/libraries/libbsd/default.nix b/pkgs/development/libraries/libbsd/default.nix
index 758f86e5f9a..bc88d8dc12c 100644
--- a/pkgs/development/libraries/libbsd/default.nix
+++ b/pkgs/development/libraries/libbsd/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl }:
 
-let name = "libbsd-0.3.0";
+let name = "libbsd-0.7.0";
 in stdenv.mkDerivation {
   inherit name;
 
   src = fetchurl {
-    url = "http://libbsd.freedesktop.org/releases/${name}.tar.gz";
-    sha256 = "fbf36ed40443e1d0d795adbae8d461952509e610c3ccf0866ae160b723f7fe38";
+    url = "http://libbsd.freedesktop.org/releases/${name}.tar.xz";
+    sha256 = "1fqhbi0vd6xjxazf633x388cc8qyn58l78704s0h6k63wlbhwfqg";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/libraries/libcdio/default.nix b/pkgs/development/libraries/libcdio/default.nix
index ac7b428bfb0..02dd10841c1 100644
--- a/pkgs/development/libraries/libcdio/default.nix
+++ b/pkgs/development/libraries/libcdio/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, libcddb, pkgconfig, ncurses, help2man }:
 
 stdenv.mkDerivation rec {
-  name = "libcdio-0.92";
+  name = "libcdio-0.93";
   
   src = fetchurl {
-    url = "mirror://gnu/libcdio/${name}.tar.gz";
-    sha256 = "1b9zngn8nnxb1yyngi1kwi73nahp4lsx59j17q1bahzz58svydik";
+    url = "mirror://gnu/libcdio/${name}.tar.bz2";
+    sha256 = "1a6x2c5bvpnkn7lhmxkjgz4axmh93m1clrlv41s1wzkc48lnc9zq";
   };
 
   buildInputs = [ libcddb pkgconfig ncurses help2man ];
diff --git a/pkgs/development/libraries/libdc1394/default.nix b/pkgs/development/libraries/libdc1394/default.nix
index bc5f6a1d7a0..afde4e260e8 100644
--- a/pkgs/development/libraries/libdc1394/default.nix
+++ b/pkgs/development/libraries/libdc1394/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libraw1394, libusb1 }:
 
 stdenv.mkDerivation rec {
-  name = "libdc1394-2.2.1";
+  name = "libdc1394-2.2.3";
 
   src = fetchurl {
     url = "mirror://sourceforge/libdc1394/${name}.tar.gz";
-    sha256 = "1wkcx4ff094qba1fwllmlr81i7xg7l8dzq7y7pvy3wlbpwd3634j";
+    sha256 = "1p9b4ciy97s04gmp7656cybr1zfd79hlw0ffhfb52m3zcn07h6aa";
   };
 
   buildInputs = [ libraw1394 libusb1 ];
diff --git a/pkgs/development/libraries/libdvdcss/default.nix b/pkgs/development/libraries/libdvdcss/default.nix
index 40fa337bd66..8632da12c73 100644
--- a/pkgs/development/libraries/libdvdcss/default.nix
+++ b/pkgs/development/libraries/libdvdcss/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl}:
 
 stdenv.mkDerivation {
-  name = "libdvdcss-1.2.13";
+  name = "libdvdcss-1.3.0";
   
   src = fetchurl {
-    url = http://download.videolan.org/pub/libdvdcss/1.2.13/libdvdcss-1.2.13.tar.bz2;
-    sha256 = "0b5s25awn2md4jr00rwg5siwvi3kivyaxkjgfxzzh7ggrykbpwc4";
+    url = http://download.videolan.org/pub/libdvdcss/1.3.0/libdvdcss-1.3.0.tar.bz2;
+    sha256 = "158k9zagmbk5bkbz96l6lwhh7xcgfcnzflkr4vblskhcab6llhbw";
   };
 
   meta = {
diff --git a/pkgs/development/libraries/libee/default.nix b/pkgs/development/libraries/libee/default.nix
index c3c73381acd..f3ea67ce93e 100644
--- a/pkgs/development/libraries/libee/default.nix
+++ b/pkgs/development/libraries/libee/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = http://www.libee.org/download/files/download/libee-0.4.1.tar.gz;
-    md5 = "7bbf4160876c12db6193c06e2badedb2";
+    sha256 = "09xhgzmsq0g3jsyj24vy67bhzk2fv971w5ixdkhfwgar70cw1nn0";
   };
 
   buildInputs = [pkgconfig libestr];
diff --git a/pkgs/development/libraries/libetpan/default.nix b/pkgs/development/libraries/libetpan/default.nix
new file mode 100644
index 00000000000..e628490f159
--- /dev/null
+++ b/pkgs/development/libraries/libetpan/default.nix
@@ -0,0 +1,24 @@
+{ autoconf, automake, fetchgit, libtool, stdenv, openssl }:
+
+let version = "1.5"; in
+
+stdenv.mkDerivation {
+  name = "libetpan-${version}";
+
+  meta = with stdenv.lib; {
+    description = "An efficient, portable library for different kinds of mail access: IMAP, SMTP, POP, and NNTP";
+    homepage = http://www.etpan.org/libetpan.html;
+    license = licenses.bsd3;
+    platforms = platforms.linux;
+  };
+
+  src = fetchgit {
+    url = "git://github.com/dinhviethoa/libetpan";
+    rev = "refs/tags/" + version;
+    sha256 = "bf9465121a0fb09418215ee3474a400ea5bc5ed05a6811a2978afe4905e140c9";
+  };
+
+  buildInputs = [ autoconf automake libtool openssl ];
+
+  configureScript = "./autogen.sh";
+}
diff --git a/pkgs/development/libraries/libevdev/default.nix b/pkgs/development/libraries/libevdev/default.nix
index 2776a3c0614..981dcd13a62 100644
--- a/pkgs/development/libraries/libevdev/default.nix
+++ b/pkgs/development/libraries/libevdev/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, python }:
 
 stdenv.mkDerivation rec {
-  name = "libevdev-1.2";
+  name = "libevdev-1.2.1";
 
   src = fetchurl {
     url = "http://www.freedesktop.org/software/libevdev/${name}.tar.xz";
-    sha256 = "0h54ym5rsmicl4gx7gcdaifpyndakbl38c5dcxgr27f0cy0635a1";
+    sha256 = "0f0yvfg9bwl5xgpcz4kj37l5awcd4l9c78ghxiq3w32gwaz25ibw";
   };
 
   buildInputs = [ python ];
diff --git a/pkgs/development/libraries/libgdiplus/giflib.patch b/pkgs/development/libraries/libgdiplus/giflib.patch
index b1135f47f3a..7b90d9863fd 100644
--- a/pkgs/development/libraries/libgdiplus/giflib.patch
+++ b/pkgs/development/libraries/libgdiplus/giflib.patch
@@ -1,8 +1,7 @@
-diff --git a/src/gifcodec.c b/src/gifcodec.c
-index 8dee0eb..564beed 100644
+diff -Naur libgdiplus-2.10.9-orig/src/gifcodec.c libgdiplus-2.10.9/src/gifcodec.c
 --- src/gifcodec.c
 +++ src/gifcodec.c
-@@ -39,8 +39,10 @@ GUID gdip_gif_image_format_guid = {0xb96b3cb0U, 0x0728U, 0x11d3U, {0x9d, 0x7b, 0
+@@ -39,8 +39,10 @@
  
  #include "gifcodec.h"
  
@@ -13,7 +12,7 @@ index 8dee0eb..564beed 100644
  
  /* Data structure used for callback */
  typedef struct
-@@ -105,7 +107,7 @@ gdip_gif_inputfunc (GifFileType *gif, GifByteType *data, int len)
+@@ -105,7 +107,7 @@
  */
  
  static int
@@ -22,7 +21,7 @@ index 8dee0eb..564beed 100644
  {
  	ExtensionBlock	*ep;
  
-@@ -129,7 +131,7 @@ AddExtensionBlockMono(SavedImage *New, int Len, BYTE ExtData[])
+@@ -129,7 +131,7 @@
  
  	if (ExtData) {
  		memcpy(ep->Bytes, ExtData, Len);
@@ -31,7 +30,7 @@ index 8dee0eb..564beed 100644
  	}
  
  	return (GIF_OK);
-@@ -232,20 +234,20 @@ DGifSlurpMono(GifFileType * GifFile, SavedImage *TrailingExtensions)
+@@ -232,20 +234,20 @@
  			}
  
  			case EXTENSION_RECORD_TYPE: {
@@ -55,7 +54,7 @@ index 8dee0eb..564beed 100644
  				}
  				break;
  			}
-@@ -303,12 +305,19 @@ gdip_load_gif_image (void *stream, GpImage **image, BOOL from_file)
+@@ -303,12 +305,19 @@
  	result = NULL;
  	loop_counter = FALSE;
  
@@ -76,7 +75,25 @@ index 8dee0eb..564beed 100644
  	if (gif == NULL) {
  		goto error;
  	}
-@@ -660,11 +669,22 @@ gdip_save_gif_image (void *stream, GpImage *image, BOOL from_file)
+@@ -581,7 +590,7 @@
+ 	}
+ 
+ 	FreeExtensionMono(&global_extensions);
+-	DGifCloseFile (gif);
++	DGifCloseFile (gif, NULL);
+ 
+ 	*image = result;
+ 	return Ok;
+@@ -597,7 +606,7 @@
+ 
+ 	if (gif != NULL) {
+ 		FreeExtensionMono (&global_extensions);
+-		DGifCloseFile (gif);
++		DGifCloseFile (gif, NULL);
+ 	}
+ 
+ 	*image = NULL;
+@@ -660,11 +669,22 @@
  		return InvalidParameter;
  	}
  
@@ -99,7 +116,7 @@ index 8dee0eb..564beed 100644
  		
  	if (!fp) {
  		return FileNotFound;
-@@ -848,8 +868,15 @@ gdip_save_gif_image (void *stream, GpImage *image, BOOL from_file)
+@@ -848,8 +868,15 @@
  						Buffer[0] = 1;
  						Buffer[1] = ptr[0];
  						Buffer[2] = ptr[1];
@@ -115,3 +132,12 @@ index 8dee0eb..564beed 100644
  					}
  				}
  
+@@ -923,7 +950,7 @@
+ 		}
+ 	}
+ 
+-	EGifCloseFile (fp);	
++	EGifCloseFile (fp, NULL);	
+ 	
+ 	return Ok;
+
diff --git a/pkgs/development/libraries/libibverbs/default.nix b/pkgs/development/libraries/libibverbs/default.nix
new file mode 100644
index 00000000000..cef34fe6db8
--- /dev/null
+++ b/pkgs/development/libraries/libibverbs/default.nix
@@ -0,0 +1,17 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "libibverbs-1.1.8";
+
+  src = fetchurl {
+    url = "https://www.openfabrics.org/downloads/verbs/${name}.tar.gz";
+    sha256 = "13w2j5lrrqxxxvhpxbqb70x7wy0h8g329inzgfrvqv8ykrknwxkw";
+  };
+
+  meta = with stdenv.lib; {
+    homepage = https://www.openfabrics.org/;
+    license = licenses.bsd2;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ wkennington ];
+  };
+}
diff --git a/pkgs/development/libraries/liblastfm/default.nix b/pkgs/development/libraries/liblastfm/default.nix
index 701b4df3cd8..ad578ac272b 100644
--- a/pkgs/development/libraries/liblastfm/default.nix
+++ b/pkgs/development/libraries/liblastfm/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, qt4, pkgconfig, libsamplerate, fftwSinglePrec, which, cmake }:
 
-let version = "1.0.8"; in
+let version = "1.0.9"; in
 
 stdenv.mkDerivation rec {
   name = "liblastfm-${version}";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
   src = fetchurl {
     url = "https://github.com/lastfm/liblastfm/tarball/${version}";
     name = "${name}.tar.gz";
-    sha256 = "17jjhsgbwrzh09i0wcqsnmxzyrqy1png5ixpnx6rbqmhp54a3jn3";
+    sha256 = "09qiaxsxw6g2m7mvkffpfsi5wis8nl1x4lgnk0sa30859z54iw53";
   };
 
   prefixKey = "--prefix ";
diff --git a/pkgs/development/libraries/libmtp/default.nix b/pkgs/development/libraries/libmtp/default.nix
index 10bc9e5eebf..938c995e755 100644
--- a/pkgs/development/libraries/libmtp/default.nix
+++ b/pkgs/development/libraries/libmtp/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, pkgconfig, libusb1 }:
 
 stdenv.mkDerivation rec {
-  name = "libmtp-1.1.6";
+  name = "libmtp-1.1.8";
 
   propagatedBuildInputs = [ libusb1 ];
   buildInputs = [ pkgconfig ];
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://sourceforge/libmtp/${name}.tar.gz";
-    sha256 = "02nbf1cigxmv9sak201f4m5c1d21q6avgzjlxd941plimy1iq71s";
+    sha256 = "10i2vnj8r6hyd61xgyhmxbsissq971g50fhm1h6mc3m4d99qg7iz";
   };
 
   meta = {
diff --git a/pkgs/development/libraries/libmusicbrainz/default.nix b/pkgs/development/libraries/libmusicbrainz/default.nix
index 714870fab16..99c253cdb35 100644
--- a/pkgs/development/libraries/libmusicbrainz/default.nix
+++ b/pkgs/development/libraries/libmusicbrainz/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "ftp://ftp.musicbrainz.org/pub/musicbrainz/${name}.tar.gz";
-    md5 = "f4824d0a75bdeeef1e45cc88de7bb58a";
+    sha256 = "1i9qly13bwwmgj68vma766hgvsd1m75236haqsp9zgh5znlmkm3z";
   };
 
   meta = {
diff --git a/pkgs/development/libraries/libofx/default.nix b/pkgs/development/libraries/libofx/default.nix
index 2dce6db1bf2..c17045d5e4b 100644
--- a/pkgs/development/libraries/libofx/default.nix
+++ b/pkgs/development/libraries/libofx/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, opensp, pkgconfig, libxml2, curl }:
         
 stdenv.mkDerivation rec {
-  name = "libofx-0.9.9";
+  name = "libofx-0.9.10";
 
   src = fetchurl {
     url = "mirror://sourceforge/libofx/${name}.tar.gz";
-    sha256 = "08vvfj1rq0drcdfchrgb5zp05a2xl3a5aapsfgj0gqy3rp2qivwl";
+    sha256 = "15gnbh4mszfxk70srdcjkdykk7dbhzqxi3pxgh48a9zg8i4nmqjl";
   };
 
   configureFlags = [ "--with-opensp-includes=${opensp}/include/OpenSP" ];
diff --git a/pkgs/development/libraries/libowfat/default.nix b/pkgs/development/libraries/libowfat/default.nix
new file mode 100644
index 00000000000..aaa1abacab8
--- /dev/null
+++ b/pkgs/development/libraries/libowfat/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "libowfat-0.29";
+
+  src = fetchurl {
+    url = "http://dl.fefe.de/${name}.tar.bz2";
+    sha256 = "09v4phf1d4y617fdqwn214jmkialf7xqcsyx3rzk7x5ysvpbvbab";
+  };
+
+  makeFlags = "prefix=$(out)";
+  
+  meta = with stdenv.lib; {
+    homepage = http://www.fefe.de/libowfat/;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/libraries/libpcap/default.nix b/pkgs/development/libraries/libpcap/default.nix
index 11eccb0a0e3..77b0d3975c0 100644
--- a/pkgs/development/libraries/libpcap/default.nix
+++ b/pkgs/development/libraries/libpcap/default.nix
@@ -10,14 +10,15 @@ stdenv.mkDerivation rec {
   
   nativeBuildInputs = [ flex bison ];
   
-  configureFlags = "--with-pcap=linux";
+  # Apparently, 32 bit systems need this forced? Not verified if still needed.
+  configureFlags = stdenv.lib.optionals (stdenv.system == "i686-linux") "--with-pcap=linux";
 
   preInstall = ''mkdir -p $out/bin'';
   
   crossAttrs = {
     # Stripping hurts in static libraries
     dontStrip = true;
-    configureFlags = [ "--with-pcap=linux" "ac_cv_linux_vers=2" ];
+    configureFlags = configureFlags ++ [ "ac_cv_linux_vers=2" ];
   };
 
   meta = {
diff --git a/pkgs/development/libraries/libqb/default.nix b/pkgs/development/libraries/libqb/default.nix
new file mode 100644
index 00000000000..a3b549e83b4
--- /dev/null
+++ b/pkgs/development/libraries/libqb/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, pkgconfig }:
+
+stdenv.mkDerivation rec{
+  name = "libqb-0.16.0";
+
+  src = fetchurl {
+    url = "https://fedorahosted.org/releases/q/u/quarterback/${name}.tar.xz";
+    sha256 = "0j3zl5g5nnx98jb16p89q8w61har3gbvnlnmma8yj31xngps3kdq";
+  };
+
+  buildInputs = [ pkgconfig ];
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/clusterlabs/libqb;
+    description = "a library providing high performance logging, tracing, ipc, and poll";
+    license = licenses.lgpl21;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ wkennington ];
+  };
+}
diff --git a/pkgs/development/libraries/librdmacm/default.nix b/pkgs/development/libraries/librdmacm/default.nix
new file mode 100644
index 00000000000..0f5500478b4
--- /dev/null
+++ b/pkgs/development/libraries/librdmacm/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl, libibverbs }:
+
+stdenv.mkDerivation rec {
+  name = "librdmacm-1.0.19.1";
+
+  src = fetchurl {
+    url = "https://www.openfabrics.org/downloads/rdmacm/${name}.tar.gz";
+    sha256 = "0aq9x2aq62j9qn5yqifp4f2y7w2l35571ns260bwd2c60jf5fjlm";
+  };
+
+  buildInputs = [ libibverbs ];
+
+  meta = with stdenv.lib; {
+    homepage = https://www.openfabrics.org/;
+    platforms = platforms.unix;
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ wkennington ];
+  };
+}
diff --git a/pkgs/development/libraries/libsieve/default.nix b/pkgs/development/libraries/libsieve/default.nix
new file mode 100644
index 00000000000..32fec68ad01
--- /dev/null
+++ b/pkgs/development/libraries/libsieve/default.nix
@@ -0,0 +1,16 @@
+{stdenv, fetchurl}:
+stdenv.mkDerivation rec {
+  version = "2.3.1";
+  name = "libsieve-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/downloads/sodabrew/libsieve/libsieve-${version}.tar.gz";
+    sha256 = "1gllhl9hbmc86dq3k98d4kjs5bwk0p2rlk7ywqj3fjn7jw6mbhcj";
+  };
+
+  meta = with stdenv.lib; {
+    description = "An interpreter for RFC 3028 Sieve and various extensions";
+    homepage = "http://sodabrew.com/libsieve/";
+    license = licenses.lgpl21;
+  };
+}
diff --git a/pkgs/development/libraries/libstatgrab/default.nix b/pkgs/development/libraries/libstatgrab/default.nix
new file mode 100644
index 00000000000..36327327b4d
--- /dev/null
+++ b/pkgs/development/libraries/libstatgrab/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "libstatgrab-0.91";
+
+  src = fetchurl {
+    url = "http://ftp.i-scream.org/pub/i-scream/libstatgrab/${name}.tar.gz";
+    sha256 = "1azinx2yzs442ycwq6p15skl3mscmqj7fd5hq7fckhjp92735s83";
+  };
+
+  meta = with stdenv.lib; {
+    homepage = http://www.i-scream.org/libstatgrab/;
+    description = "a library that provides cross platforms access to statistics about the running system";
+    license = licenses.gpl2;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ wkennington ];
+  };
+}
diff --git a/pkgs/development/libraries/libtoxcore/default.nix b/pkgs/development/libraries/libtoxcore/default.nix
index f6bdbdb3c75..da6c61b064e 100644
--- a/pkgs/development/libraries/libtoxcore/default.nix
+++ b/pkgs/development/libraries/libtoxcore/default.nix
@@ -37,13 +37,14 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     autoconf libtool automake libsodium ncurses
-    libconfig pkgconfig
+    check libconfig pkgconfig
   ] ++ stdenv.lib.optionals (!stdenv.isArm) [
     libopus
   ];
 
   propagatedBuildInputs = stdenv.lib.optionals (!stdenv.isArm) [ libvpx ];
 
+  # Some tests fail in the Sheevaplug due to timeout
   doCheck = !stdenv.isArm;
 
   meta = {
diff --git a/pkgs/development/libraries/libusb/default.nix b/pkgs/development/libraries/libusb/default.nix
index 64ef4ed66b6..ac06b4893f1 100644
--- a/pkgs/development/libraries/libusb/default.nix
+++ b/pkgs/development/libraries/libusb/default.nix
@@ -11,6 +11,6 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = mirror://sourceforge/libusb/libusb-0.1.12.tar.gz;
-    md5 = "caf182cbc7565dac0fd72155919672e6";
+    sha256 = "0i4bacxkyr7xyqxbmb00ypkrv4swkgm0mghbzjsnw6blvvczgxip";
   };
 }
diff --git a/pkgs/development/libraries/libvirt-glib/default.nix b/pkgs/development/libraries/libvirt-glib/default.nix
index afce119e396..09d2e9dfc43 100644
--- a/pkgs/development/libraries/libvirt-glib/default.nix
+++ b/pkgs/development/libraries/libvirt-glib/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "libvirt-glib-0.1.8";
+  name = "libvirt-glib-0.1.9";
 
   src = fetchurl {
     url = "http://libvirt.org/sources/glib/${name}.tar.gz";
-    sha256 = "0ld7g9vlpdzx8rm90i8y1gnpygkn20x5z12gvsgms7dy5nala3ns";
+    sha256 = "0n59hp0kwn80z9136g2n7pwkrlhlsxksr6gy4w7783d71qk3cfq5";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/libvirt/default.nix b/pkgs/development/libraries/libvirt/default.nix
index a4c8c167b39..deba645a39b 100644
--- a/pkgs/development/libraries/libvirt/default.nix
+++ b/pkgs/development/libraries/libvirt/default.nix
@@ -2,16 +2,19 @@
 , iproute, iptables, readline, lvm2, utillinux, udev, libpciaccess, gettext
 , libtasn1, ebtables, libgcrypt, yajl, makeWrapper, pmutils, libcap_ng
 , dnsmasq, libnl
+, pythonPackages
 }:
 
-let version = "1.2.7"; in
+let version = "1.2.9"; in
+
+assert version == pythonPackages.libvirt.version;
 
 stdenv.mkDerivation rec {
   name = "libvirt-${version}";
 
   src = fetchurl {
     url = "http://libvirt.org/sources/${name}.tar.gz";
-    sha256 = "1z6yfzzbf9rvqjq1my7x1br73g8dz8kij3khpb4x520ip8n4dyrx";
+    sha256 = "1i4ggs50dipz1hm0qlk6kak1n3klll8sx9fnffmvjlgla9d1m4wm";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/libyubikey/default.nix b/pkgs/development/libraries/libyubikey/default.nix
index 25c2117b059..106106c0915 100644
--- a/pkgs/development/libraries/libyubikey/default.nix
+++ b/pkgs/development/libraries/libyubikey/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec
 {
-  version = "1.11";
+  version = "1.12";
   name = "libyubikey-${version}";
 
   src = fetchurl
   {
     url = "http://opensource.yubico.com/yubico-c/releases/${name}.tar.gz";
-    sha256 = "19pm4rqsnm9r0n5j26bqkxa1jpimdavzcvg5g7p416vkjhxc6lw9";
+    sha256 = "1f0plzmr1gwry4rfgq9q70v6qwqny009hac289ad5m6sj7vqflxr";
   };
 
   meta =
diff --git a/pkgs/development/libraries/loudmouth/default.nix b/pkgs/development/libraries/loudmouth/default.nix
index ae9f3fc6c18..5c67aaa4c19 100644
--- a/pkgs/development/libraries/loudmouth/default.nix
+++ b/pkgs/development/libraries/loudmouth/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/loudmouth/1.4/${name}.tar.bz2";
-    md5 = "55339ca42494690c3942ee1465a96937";
+    sha256 = "1qr9z73i33y49pbpq6zy7q537g0iyc8sm56rjf0ylwcv01fkzacm";
   };
 
   patches = [ ./glib-2.32.patch ];
diff --git a/pkgs/development/libraries/martyr/default.nix b/pkgs/development/libraries/martyr/default.nix
index 2d37a2506c4..7fbd44b3fa4 100644
--- a/pkgs/development/libraries/martyr/default.nix
+++ b/pkgs/development/libraries/martyr/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
 	builder = ./builder.sh;
 	src = fetchurl {
 		url = "mirror://sourceforge/martyr/martyr-0.3.9.tar.gz";
-		md5 = "b716a6aaabd5622b65d6126438766260";
+		sha256 = "1ks8j413bcby345kmq1i7av8kwjvz5vxdn1zpv0p7ywxq54i4z59";
 	};
 	inherit stdenv apacheAnt;
 }
diff --git a/pkgs/development/libraries/nss/default.nix b/pkgs/development/libraries/nss/default.nix
index 630d1890409..7e34db24221 100644
--- a/pkgs/development/libraries/nss/default.nix
+++ b/pkgs/development/libraries/nss/default.nix
@@ -11,11 +11,11 @@ let
 
 in stdenv.mkDerivation rec {
   name = "nss-${version}";
-  version = "3.16.5";
+  version = "3.17.2";
 
   src = fetchurl {
-    url = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_16_5_RTM/src/${name}.tar.gz";
-    sha256 = "e744b9fb2a6291d7eaf1b3f0157082f4214984db33f896e4adf3141340d64196";
+    url = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_17_2_RTM/src/${name}.tar.gz";
+    sha256 = "134929e44e44b968a4883f4ee513a71ae45d55b486cee41ee8e26c3cc84dab8b";
   };
 
   buildInputs = [ nspr perl zlib sqlite ];
@@ -25,7 +25,7 @@ in stdenv.mkDerivation rec {
   '';
 
   patches =
-    [ ./nss-3.15-gentoo-fixups.patch
+    [ ./nss-3.17-gentoo-fixups.patch
       # Based on http://patch-tracker.debian.org/patch/series/dl/nss/2:3.15.4-1/85_security_load.patch
       ./85_security_load.patch
     ];
diff --git a/pkgs/development/libraries/nss/nss-3.15-gentoo-fixups.patch b/pkgs/development/libraries/nss/nss-3.17-gentoo-fixups.patch
index b3e35b1d2d1..26b488acb5d 100644
--- a/pkgs/development/libraries/nss/nss-3.15-gentoo-fixups.patch
+++ b/pkgs/development/libraries/nss/nss-3.17-gentoo-fixups.patch
@@ -1,5 +1,5 @@
---- a/nss/config/Makefile
-+++ b/nss/config/Makefile
+--- nss-3.17.1/nss/config/Makefile
++++ nss-3.17.1/nss/config/Makefile
 @@ -0,0 +1,40 @@
 +CORE_DEPTH = ..
 +DEPTH      = ..
@@ -41,8 +41,8 @@
 +
 +dummy: all export libs
 +
---- a/nss/config/nss-config.in
-+++ b/nss/config/nss-config.in
+--- nss-3.17.1/nss/config/nss-config.in
++++ nss-3.17.1/nss/config/nss-config.in
 @@ -0,0 +1,145 @@
 +#!/bin/sh
 +
@@ -189,8 +189,8 @@
 +      echo $libdirs
 +fi      
 +
---- a/nss/config/nss.pc.in
-+++ b/nss/config/nss.pc.in
+--- nss-3.17.1/nss/config/nss.pc.in
++++ nss-3.17.1/nss/config/nss.pc.in
 @@ -0,0 +1,12 @@
 +prefix=@prefix@
 +exec_prefix=@exec_prefix@
@@ -204,8 +204,8 @@
 +Libs: -lssl3 -lsmime3 -lnss3 -lnssutil3
 +Cflags: -I${includedir}
 +
---- a/nss/Makefile
-+++ b/nss/Makefile
+--- nss-3.17.1/nss/Makefile
++++ nss-3.17.1/nss/Makefile
 @@ -44,7 +44,7 @@
  # (7) Execute "local" rules. (OPTIONAL).                              #
  #######################################################################
@@ -215,7 +215,7 @@
  
  nss_clean_all: clobber_nspr clobber
  
-@@ -103,12 +103,6 @@
+@@ -109,12 +109,6 @@
  	--with-dist-prefix='$(NSPR_PREFIX)' \
  	--with-dist-includedir='$(NSPR_PREFIX)/include'
  
@@ -228,11 +228,14 @@
  build_docs:
  	$(MAKE) -C $(CORE_DEPTH)/doc
  
---- a/nss/manifest.mn
-+++ b/nss/manifest.mn
-@@ -10,4 +10,4 @@
+--- nss-3.17.1/nss/manifest.mn
++++ nss-3.17.1/nss/manifest.mn
+@@ -10,7 +10,7 @@
  
  RELEASE = nss
  
 -DIRS = coreconf lib cmd
 +DIRS = coreconf lib cmd config
+ 
+ ifdef NSS_BUILD_GTESTS
+ DIRS += external_tests
diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix
index 396eaa88fbf..29656f7ef88 100644
--- a/pkgs/development/libraries/openssl/default.nix
+++ b/pkgs/development/libraries/openssl/default.nix
@@ -2,7 +2,7 @@
 , withCryptodev ? false, cryptodevHeaders }:
 
 let
-  name = "openssl-1.0.1i";
+  name = "openssl-1.0.1j";
 
   opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ]
     (throw "openssl needs its platform name cross building" null)
@@ -45,7 +45,7 @@ stdenv.mkDerivation {
       "http://www.openssl.org/source/${name}.tar.gz"
       "http://openssl.linux-mirror.org/source/${name}.tar.gz"
     ];
-    sha256 = "1izwv1wzqdw8aqnvb70jcqpqp0rvkcm22w5c1dm9l1kpr939y5rw";
+    sha256 = "1wzdaiix40lz0rsyf51qv0wiq4ywp29j5ni0xzl06vxsi63wlq0v";
   };
 
   patches = patchesCross false;
diff --git a/pkgs/development/libraries/phonon-backend-gstreamer/default.nix b/pkgs/development/libraries/phonon-backend-gstreamer/default.nix
index 419978a1011..844c2e58009 100644
--- a/pkgs/development/libraries/phonon-backend-gstreamer/default.nix
+++ b/pkgs/development/libraries/phonon-backend-gstreamer/default.nix
@@ -2,7 +2,7 @@
 , gst_plugins_base }:
 
 let
-  version = "4.7.0";
+  version = "4.7.2";
   pname = "phonon-backend-gstreamer";
 in
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://kde/stable/phonon/${pname}/${version}/src/${name}.tar.xz";
-    sha256 = "0zg7hnaywk9wpcvzgskx2334cgfz09ii77pvasrn00ikcqqnnxrs";
+    sha256 = "1cfjk450aajr8hfhnfq7zbmryprxiwr9ha5x585dsh7mja82mdw0";
   };
 
   buildInputs = [ phonon qt4 gstreamer gst_plugins_base ];
diff --git a/pkgs/development/libraries/phonon-backend-vlc/default.nix b/pkgs/development/libraries/phonon-backend-vlc/default.nix
index 060f4c45a48..8a196463639 100644
--- a/pkgs/development/libraries/phonon-backend-vlc/default.nix
+++ b/pkgs/development/libraries/phonon-backend-vlc/default.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "phonon-backend-vlc";
-  v = "0.7.0";
+  v = "0.7.2";
   vlc_ = vlc.override { inherit qt4; }; #Force using the same qt version
 in
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://kde/stable/phonon/${pname}/${v}/src/${pname}-${v}.tar.xz";
-    sha256 = "1rhzc3d188l6ygxgfxwikscj71pyy0nchzikvkkq465r9ajavdgd";
+    sha256 = "1acmbn8pmmq16gcz825dlzaf3haj6avp1bmcxzpkjd1fvxh86y0a";
   };
 
   nativeBuildInputs = [ cmake pkgconfig automoc4 xz ];
diff --git a/pkgs/development/libraries/phonon/default.nix b/pkgs/development/libraries/phonon/default.nix
index b29deae9260..7fd99ab0244 100644
--- a/pkgs/development/libraries/phonon/default.nix
+++ b/pkgs/development/libraries/phonon/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, cmake, automoc4, qt4, pulseaudio }:
 
 let
-  v = "4.7.1";
+  v = "4.7.2";
 in
 
 stdenv.mkDerivation rec {
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://kde/stable/phonon/${v}/${name}.tar.xz";
-    sha256 = "0pdpj7xnalr511zx12akxg6smz7x5gybkpliclb5f5dcxqnq1xsg";
+    sha256 = "1ghidabmi6vnnmz8q272qi259nb8bbqlbayqk52ln98fs8s9g7l1";
   };
 
   buildInputs = [ qt4 pulseaudio ];
diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix
index b8af18f8dd6..c29da1438f3 100644
--- a/pkgs/development/libraries/poppler/default.nix
+++ b/pkgs/development/libraries/poppler/default.nix
@@ -4,8 +4,8 @@
 }:
 
 let
-  version = "0.26.4"; # even major numbers are stable
-  sha256 = "0raw35nkd6mkp0pk1gdr385nvrhsxvflcf3glln1srfnb8m51pky";
+  version = "0.26.5"; # even major numbers are stable
+  sha256 = "1vni6kqpcx4jy9q8mhhxphfjych76xxmgs3jyg8yacbl6gxfazfy";
 
   qtcairo_patches =
     let qtcairo = fetchgit { # the version for poppler-0.24
diff --git a/pkgs/development/libraries/sqlite/default.nix b/pkgs/development/libraries/sqlite/default.nix
index ec392e71531..c204dbf6e65 100644
--- a/pkgs/development/libraries/sqlite/default.nix
+++ b/pkgs/development/libraries/sqlite/default.nix
@@ -21,5 +21,6 @@ stdenv.mkDerivation {
     homepage = http://www.sqlite.org/;
     description = "A self-contained, serverless, zero-configuration, transactional SQL database engine";
     platforms = stdenv.lib.platforms.unix;
+    maintainers = [ stdenv.lib.maintainers.eelco ];
   };
 }
diff --git a/pkgs/development/libraries/talloc/default.nix b/pkgs/development/libraries/talloc/default.nix
index 15e89d9210a..55ae69e6e64 100644
--- a/pkgs/development/libraries/talloc/default.nix
+++ b/pkgs/development/libraries/talloc/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://samba.org/ftp/talloc/${name}.tar.gz";
-    md5 = "c6e736540145ca58cb3dcb42f91cf57b";
+    sha256 = "1d694zyi451a5zr03l5yv0n8yccyr3r8pmzga17xaaaz80khb0av";
   };
 
   configureFlags = "--enable-talloc-compat1 --enable-largefile";
diff --git a/pkgs/development/libraries/thrift/default.nix b/pkgs/development/libraries/thrift/default.nix
index f8c437f2b0f..29b0c1a9b29 100644
--- a/pkgs/development/libraries/thrift/default.nix
+++ b/pkgs/development/libraries/thrift/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   patches = [ ./yylex.patch ];
 
   # Workaround to make the python wrapper not drop this package:
-  # pythonFull.override { extraLibs = [ thrift ]; }
+  # pythonFullBuildEnv.override { extraLibs = [ thrift ]; }
   pythonPath = [];
 
   buildInputs = [
@@ -35,7 +35,7 @@ stdenv.mkDerivation {
     description = "Library for scalable cross-language services";
     homepage = http://thrift.apache.org/;
     license = licenses.asl20;
-    platforms = platforms.linux;
+    platforms = platforms.linux ++ platforms.darwin;
     maintainers = [ maintainers.bjornfor ];
   };
 }
diff --git a/pkgs/development/libraries/wxGTK-3.0/default.nix b/pkgs/development/libraries/wxGTK-3.0/default.nix
index faa17c08363..9e9bf9c83dd 100644
--- a/pkgs/development/libraries/wxGTK-3.0/default.nix
+++ b/pkgs/development/libraries/wxGTK-3.0/default.nix
@@ -8,14 +8,14 @@ assert withMesa -> mesa != null;
 with stdenv.lib;
 
 let
-  version = "3.0.1";
+  version = "3.0.2";
 in
 stdenv.mkDerivation {
   name = "wxwidgets-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/wxwindows/wxWidgets-${version}.tar.bz2";
-    sha256 = "1xf5s8cnq6xr0r6l0y9cn1pjg961xbycl4afhjrqzbsnxiwinrxx";
+    sha256 = "0paq27brw4lv8kspxh9iklpa415mxi8zc117vbbbhfjgapf7js1l";
   };
 
   buildInputs =
diff --git a/pkgs/development/libraries/xmlsec/default.nix b/pkgs/development/libraries/xmlsec/default.nix
index 80f4e2fc860..3fba451c711 100644
--- a/pkgs/development/libraries/xmlsec/default.nix
+++ b/pkgs/development/libraries/xmlsec/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, libxml2, gnutls, libxslt, pkgconfig, libgcrypt, libtool }:
 
 let
-  version = "1.2.19";
+  version = "1.2.20";
 in
 stdenv.mkDerivation rec {
   name = "xmlsec-${version}";
 
   src = fetchurl {
     url = "http://www.aleksey.com/xmlsec/download/xmlsec1-${version}.tar.gz";
-    sha256 = "1h5ar0h8n0l8isgic82w00cwfpw7i9wxw17kbdb6q3yvzb4zgj1g";
+    sha256 = "01bkbv2y3x8d1sf4dcln1x3y2jyj391s3208d9a2ndhglly5j89j";
   };
 
   buildInputs = [ libxml2 gnutls libxslt pkgconfig libgcrypt libtool ];
diff --git a/pkgs/development/lisp-modules/lisp-packages.nix b/pkgs/development/lisp-modules/lisp-packages.nix
index 14c996fa05a..d9359da0a6a 100644
--- a/pkgs/development/lisp-modules/lisp-packages.nix
+++ b/pkgs/development/lisp-modules/lisp-packages.nix
@@ -44,8 +44,6 @@ let lispPackages = rec {
     };
   };
 
-  stumpwm = callPackage ./stumpwm {};
-
   alexandria = buildLispPackage rec {
     baseName = "alexandria";
     version = "git-20131029";
diff --git a/pkgs/development/lisp-modules/stumpwm/default.nix b/pkgs/development/lisp-modules/stumpwm/default.nix
deleted file mode 100644
index ae0dab1ec9d..00000000000
--- a/pkgs/development/lisp-modules/stumpwm/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{pkgs, nixLib, clwrapper, cl-ppcre, clx, buildLispPackage}:
-buildLispPackage rec {
-  baseName = "stumpwm";
-  version = "2013-09";
-  src = pkgs.fetchgit {
-    url = "https://github.com/sabetts/stumpwm";
-    sha256 = "0dd69myssfn2bsdx3xdp65mjrvs9x81dl3y3659pyf1avnjlir7h";
-    rev = "565ef58f04f59e1667ec1da4087f1a43a32cd67f";
-  };
-  description = "Tiling window manager for X11";
-  deps = [cl-ppcre clx];
-  buildInputs = with pkgs; [texinfo4 autoconf which makeWrapper];
-  meta = {
-    maintainers = [nixLib.maintainers.raskin];
-    platforms = nixLib.platforms.linux;
-  };
-  overrides = x: {
-    preConfigure = ''
-      ${x.deployConfigScript}
-      export CL_SOURCE_REGISTRY="$CL_SOURCE_REGISTRY:$PWD/"
-      ./autogen.sh
-      configureFlags=" --with-lisp=$NIX_LISP --with-$NIX_LISP=$(which common-lisp.sh) --with-contrib-dir=$out/lib/common-lisp/stumpwm/contrib/"
-    '';
-    installPhase = with pkgs; x.installPhase + ''
-      make install
-
-      if [ "$NIX_LISP" = "sbcl" ]; then
-        wrapProgram "$out"/bin/stumpwm --set SBCL_HOME "${clwrapper.lisp}/lib/sbcl"
-      fi;
-
-      mv $out/lib/common-lisp/stumpwm/contrib/stumpish $out/bin/stumpish
-      wrapProgram "$out"/bin/stumpish --prefix PATH : "${xlibs.xprop}/bin:${coreutils}/bin:${gnugrep}/bin:${gnused}/bin:${rlwrap}/bin:${ncurses}/bin"
-    '';
-    postInstall = ''false'';
-  };
-}
diff --git a/pkgs/development/mobile/androidenv/androidndk.nix b/pkgs/development/mobile/androidenv/androidndk.nix
index 2b3bb333948..11448265575 100644
--- a/pkgs/development/mobile/androidenv/androidndk.nix
+++ b/pkgs/development/mobile/androidenv/androidndk.nix
@@ -7,11 +7,11 @@ stdenv.mkDerivation rec {
   src = if stdenv.system == "i686-linux"
     then fetchurl {
       url = "http://dl.google.com/android/ndk/${name}-linux-x86.tar.bz2";
-      md5 = "6c1d7d99f55f0c17ecbcf81ba0eb201f";
+      sha256 = "0lrxx8rclmda72dynh0qjr6xpcnv5vs3gc96jcia37h8mmn2xv6m";
     }
     else if stdenv.system == "x86_64-linux" then fetchurl {
       url = "http://dl.google.com/android/ndk/${name}-linux-x86_64.tar.bz2";
-      md5 = "c7c775ab3342965408d20fd18e71aa45";
+      sha256 = "16miwrnf3c7x7rlpmssmjx9kybmapsjyamjyivhabb2wm21x3q8l";
     }
     else throw "platform not ${stdenv.system} supported!";
 
diff --git a/pkgs/development/mobile/titaniumenv/build-app.nix b/pkgs/development/mobile/titaniumenv/build-app.nix
index fa959035a9e..e3e07b2edbe 100644
--- a/pkgs/development/mobile/titaniumenv/build-app.nix
+++ b/pkgs/development/mobile/titaniumenv/build-app.nix
@@ -1,7 +1,7 @@
-{stdenv, androidsdk, titaniumsdk, titanium, xcodewrapper, jdk, python, which}:
+{stdenv, androidsdk, titaniumsdk, titanium, xcodewrapper, jdk, python, which, xcodeBaseDir}:
 { name, src, target, androidPlatformVersions ? [ "8" ], androidAbiVersions ? [ "armeabi" "armeabi-v7a" ], tiVersion ? null
 , release ? false, androidKeyStore ? null, androidKeyAlias ? null, androidKeyStorePassword ? null
-, iosMobileProvisioningProfile ? null, iosCertificateName ? null, iosCertificate ? null, iosCertificatePassword ? null
+, iosMobileProvisioningProfile ? null, iosCertificateName ? null, iosCertificate ? null, iosCertificatePassword ? null, iosVersion ? "8.0"
 , enableWirelessDistribution ? false, installURL ? null
 }:
 
@@ -49,6 +49,13 @@ stdenv.mkDerivation {
         ''
           titanium config --config-file $TMPDIR/config.json --no-colors android.sdkPath ${androidsdkComposition}/libexec/android-sdk-*
           
+          # Add zipalign to PATH to make Ti 3.1 builds still work
+          for i in $(find -L ${androidsdkComposition}/libexec/android-sdk-*/build-tools -name zipalign)
+          do
+              export PATH=$(dirname $i):$PATH
+              break
+          done
+          
           ${if release then
             ''titanium build --config-file $TMPDIR/config.json --no-colors --force --platform android --target dist-playstore --keystore ${androidKeyStore} --alias ${androidKeyAlias} --password ${androidKeyStorePassword} --output-dir $out''
           else
@@ -94,12 +101,15 @@ stdenv.mkDerivation {
               cat > $HOME/.titanium/auth_session.json <<EOF
               { "loggedIn": true }
               EOF
-            
+              
+              # Configure the path to Xcode
+              titanium --config-file $TMPDIR/config.json --no-colors config paths.xcode ${xcodeBaseDir}
+              
               # Set the SDK to our copy
               titanium --config-file $TMPDIR/config.json --no-colors config sdk.defaultInstallLocation $TMPDIR/titaniumsdk
             
               # Do the actual build
-              titanium build --config-file $TMPDIR/config.json --force --no-colors --platform ios --target dist-adhoc --pp-uuid $provisioningId --distribution-name "${iosCertificateName}" --keychain $HOME/Library/Keychains/$keychainName --device-family universal --output-dir $out
+              titanium build --config-file $TMPDIR/config.json --force --no-colors --platform ios --target dist-adhoc --pp-uuid $provisioningId --distribution-name "${iosCertificateName}" --keychain $HOME/Library/Keychains/$keychainName --device-family universal --ios-version ${iosVersion} --output-dir $out
             
               # Remove our generated keychain
             
@@ -115,7 +125,10 @@ stdenv.mkDerivation {
               cp -av * $out
               cd $out
             
-              titanium build --config-file $TMPDIR/config.json --force --no-colors --platform ios --target simulator --build-only --device-family universal --output-dir $out
+              # Configure the path to Xcode
+              titanium --config-file $TMPDIR/config.json --no-colors config paths.xcode ${xcodeBaseDir}
+              
+              titanium build --config-file $TMPDIR/config.json --force --no-colors --platform ios --target simulator --build-only --device-family universal --ios-version ${iosVersion} --output-dir $out
           ''}
         ''
 
diff --git a/pkgs/development/mobile/titaniumenv/default.nix b/pkgs/development/mobile/titaniumenv/default.nix
index 6c71116b5e8..34e14b67c00 100644
--- a/pkgs/development/mobile/titaniumenv/default.nix
+++ b/pkgs/development/mobile/titaniumenv/default.nix
@@ -1,4 +1,4 @@
-{pkgs, pkgs_i686, xcodeVersion ? "5.0", tiVersion ? "3.2.3.GA"}:
+{pkgs, pkgs_i686, xcodeVersion ? "6.0.1", xcodeBaseDir ? "/Applications/Xcode.app", tiVersion ? "3.4.0.GA"}:
 
 let
   # We have to use Oracle's JDK. On Darwin, just simply expose the host system's
@@ -25,12 +25,14 @@ rec {
 
   xcodeenv = if pkgs.stdenv.system == "x86_64-darwin" then pkgs.xcodeenv.override {
     version = xcodeVersion;
+    inherit xcodeBaseDir;
   } else null;
   
   titaniumsdk = let
     titaniumSdkFile = if tiVersion == "3.1.4.GA" then ./titaniumsdk-3.1.nix
       else if tiVersion == "3.2.3.GA" then ./titaniumsdk-3.2.nix
       else if tiVersion == "3.3.0.GA" then ./titaniumsdk-3.3.nix
+      else if tiVersion == "3.4.0.GA" then ./titaniumsdk-3.4.nix
       else throw "Titanium version not supported: "+tiVersion;
     in
     import titaniumSdkFile {
@@ -45,6 +47,6 @@ rec {
     inherit (pkgs.nodePackages) titanium;
     inherit (androidenv) androidsdk;
     inherit (xcodeenv) xcodewrapper;
-    inherit titaniumsdk;
+    inherit titaniumsdk xcodeBaseDir;
   };
 }
diff --git a/pkgs/development/mobile/titaniumenv/examples/default.nix b/pkgs/development/mobile/titaniumenv/examples/default.nix
index d595db40817..a2cc690267c 100644
--- a/pkgs/development/mobile/titaniumenv/examples/default.nix
+++ b/pkgs/development/mobile/titaniumenv/examples/default.nix
@@ -1,7 +1,8 @@
 { nixpkgs ? <nixpkgs>
 , systems ? [ "x86_64-linux" "x86_64-darwin" ]
-, xcodeVersion ? "5.0"
-, tiVersion ? "3.2.3.GA"
+, xcodeVersion ? "6.0.1"
+, xcodeBaseDir ? "/Applications/Xcode.app"
+, tiVersion ? "3.4.0.GA"
 , rename ? false
 , newBundleId ? "com.example.kitchensink", iosMobileProvisioningProfile ? null, iosCertificate ? null, iosCertificateName ? "Example", iosCertificatePassword ? ""
 , allowUnfree ? false
@@ -18,7 +19,7 @@ rec {
   in
   import ./kitchensink {
     inherit (pkgs) fetchgit;
-    titaniumenv = pkgs.titaniumenv.override { inherit xcodeVersion tiVersion; };
+    titaniumenv = pkgs.titaniumenv.override { inherit xcodeVersion xcodeBaseDir tiVersion; };
     inherit tiVersion;
     target = "android";
   });
@@ -29,7 +30,7 @@ rec {
   in
   import ./kitchensink {
     inherit (pkgs) fetchgit;
-    titaniumenv = pkgs.titaniumenv.override { inherit xcodeVersion tiVersion; };
+    titaniumenv = pkgs.titaniumenv.override { inherit xcodeVersion xcodeBaseDir tiVersion; };
     inherit tiVersion;
     target = "android";
     release = true;
@@ -60,23 +61,16 @@ rec {
   rec {
   kitchensink_ios_development = import ./kitchensink {
     inherit (pkgs) fetchgit;
-    titaniumenv = pkgs.titaniumenv.override { inherit xcodeVersion tiVersion; };
+    titaniumenv = pkgs.titaniumenv.override { inherit xcodeVersion xcodeBaseDir tiVersion; };
     inherit tiVersion;
     target = "iphone";
   };
 
-  simulate_kitchensink_iphone = import ./simulate-kitchensink {
+  simulate_kitchensink = import ./simulate-kitchensink {
     inherit (pkgs) stdenv;
-    xcodeenv = pkgs.xcodeenv.override { version = xcodeVersion; };
+    xcodeenv = pkgs.xcodeenv.override { version = xcodeVersion; inherit xcodeBaseDir; };
     kitchensink = kitchensink_ios_development;
-    device = "iPhone";
-  };
-  
-  simulate_kitchensink_ipad = import ./simulate-kitchensink {
-    inherit (pkgs) stdenv;
-    xcodeenv = pkgs.xcodeenv.override { version = xcodeVersion; };
-    kitchensink = kitchensink_ios_development;
-    device = "iPad";
+    bundleId = if rename then newBundleId else "com.appcelerator.kitchensink";
   };
 } else {}) // (if rename then
   let
@@ -85,7 +79,7 @@ rec {
   {
     kitchensink_ipa = import ./kitchensink {
       inherit (pkgs) stdenv fetchgit;
-      titaniumenv = pkgs.titaniumenv.override { inherit xcodeVersion tiVersion; };
+      titaniumenv = pkgs.titaniumenv.override { inherit xcodeVersion xcodeBaseDir tiVersion; };
       target = "iphone";
       inherit tiVersion;
       release = true;
diff --git a/pkgs/development/mobile/titaniumenv/examples/simulate-kitchensink/default.nix b/pkgs/development/mobile/titaniumenv/examples/simulate-kitchensink/default.nix
index a5ab8d59a74..15a86e338de 100644
--- a/pkgs/development/mobile/titaniumenv/examples/simulate-kitchensink/default.nix
+++ b/pkgs/development/mobile/titaniumenv/examples/simulate-kitchensink/default.nix
@@ -1,9 +1,7 @@
-{stdenv, xcodeenv, kitchensink, device}:
+{stdenv, xcodeenv, kitchensink, bundleId}:
 
 xcodeenv.simulateApp {
-  name = "simulate-${kitchensink.name}-${stdenv.lib.replaceChars [" " "(" ")"] ["_" "" ""] device}";
-  appName = "KitchenSink";
-  app = kitchensink;
-  inherit device;
-  baseDir = "build/iphone/build/Debug-iphonesimulator";
+  name = "simulate-${kitchensink.name}";
+  inherit bundleId;
+  app = "${kitchensink}/build/iphone/build/Debug-iphonesimulator";
 }
diff --git a/pkgs/development/mobile/titaniumenv/titaniumsdk-3.1.nix b/pkgs/development/mobile/titaniumenv/titaniumsdk-3.1.nix
index fa01dadc775..50346ac5115 100644
--- a/pkgs/development/mobile/titaniumenv/titaniumsdk-3.1.nix
+++ b/pkgs/development/mobile/titaniumenv/titaniumsdk-3.1.nix
@@ -53,8 +53,10 @@ stdenv.mkDerivation {
       ''
       else ""}
     
-    # Wrap builder script
+    # Fix zipalign compatibility issue with newer Android SDKs
+    sed -i -e 's|zipalign = self.sdk.get_zipalign()|zipalign = "zipalign"|' builder.py
     
+    # Wrap builder script
     mv builder.py .builder.py
     cat > builder.py <<EOF
     #!${python}/bin/python
diff --git a/pkgs/development/mobile/titaniumenv/titaniumsdk-3.4.nix b/pkgs/development/mobile/titaniumenv/titaniumsdk-3.4.nix
new file mode 100644
index 00000000000..1baf57a94cf
--- /dev/null
+++ b/pkgs/development/mobile/titaniumenv/titaniumsdk-3.4.nix
@@ -0,0 +1,77 @@
+{stdenv, fetchurl, unzip, makeWrapper, python, jdk}:
+
+stdenv.mkDerivation {
+  name = "mobilesdk-3.4.0.GA";
+  src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") then fetchurl {
+    url = http://builds.appcelerator.com/mobile/3.4.0/mobilesdk-3.4.0.GA-linux.zip;
+    sha1 = "c281a3a3f3af35adc95fc00dcd525b84516c2083";
+  }
+  else if stdenv.system == "x86_64-darwin" then fetchurl {
+    url = http://builds.appcelerator.com/mobile/3.4.0/mobilesdk-3.4.0.GA-osx.zip;
+    sha1 = "2f10426462e5f8e487be83c8038f2934d5079f0d";
+  }
+  else throw "Platform: ${stdenv.system} not supported!";
+  
+  buildInputs = [ unzip makeWrapper ];
+  
+  buildCommand = ''
+    mkdir -p $out
+    cd $out
+    yes y | unzip $src
+    
+    # Fix shebang header for python scripts
+    
+    find . -name \*.py | while read i
+    do
+        sed -i -e "s|#!/usr/bin/env python|#!${python}/bin/python|" $i
+    done
+   
+    # Rename ugly version number
+    cd mobilesdk/*
+    cd 3.4.0.GA
+    
+    # Zip files do not support timestamps lower than 1980. We have to apply a few work-arounds to cope with that
+    # Yes, I know it's nasty :-)
+    
+    cd android
+    
+    sed -i -f ${./fixtiverify.sed} builder.py
+    sed -i -f ${./fixtiprofiler.sed} builder.py
+    sed -i -f ${./fixso.sed} builder.py
+    sed -i -f ${./fixnativelibs.sed} builder.py
+    
+    # Patch some executables
+    
+    ${if stdenv.system == "i686-linux" then
+      ''
+        patchelf --set-interpreter ${stdenv.gcc.libc}/lib/ld-linux.so.2 titanium_prep.linux32
+      ''
+      else if stdenv.system == "x86_64-linux" then
+      ''
+        patchelf --set-interpreter ${stdenv.gcc.libc}/lib/ld-linux-x86-64.so.2 titanium_prep.linux64
+      ''
+      else ""}
+    
+    # Wrap builder script
+    
+    mv builder.py .builder.py
+    cat > builder.py <<EOF
+    #!${python}/bin/python
+    
+    import os, sys
+    
+    os.environ['PYTHONPATH'] = '$(echo ${python.modules.sqlite3}/lib/python*/site-packages)'
+    os.environ['JAVA_HOME'] = '${if stdenv.system == "x86_64-darwin" then jdk else "${jdk}/lib/openjdk"}'
+    
+    os.execv('$(pwd)/.builder.py', sys.argv)
+    EOF
+    
+    chmod +x builder.py
+    
+  '' + stdenv.lib.optionalString (stdenv.system == "x86_64-darwin") ''
+    # 'ditto' utility is needed to copy stuff to the Xcode organizer. Dirty, but this allows it to work.
+    sed -i -e "s|ditto|/usr/bin/ditto|g" $out/mobilesdk/osx/*/iphone/builder.py
+    
+    sed -i -e "s|--xcode|--xcode '+process.env['NIX_TITANIUM_WORKAROUND']+'|" $out/mobilesdk/osx/*/iphone/cli/commands/_build.js
+  '';
+}
diff --git a/pkgs/development/mobile/xcodeenv/default.nix b/pkgs/development/mobile/xcodeenv/default.nix
index 0d221a8952b..341b06d9822 100644
--- a/pkgs/development/mobile/xcodeenv/default.nix
+++ b/pkgs/development/mobile/xcodeenv/default.nix
@@ -1,4 +1,4 @@
-{stdenv, version ? "5.0", xcodeBaseDir ? "/Applications/Xcode.app"}:
+{stdenv, version ? "6.0.1", xcodeBaseDir ? "/Applications/Xcode.app"}:
 
 rec {
   xcodewrapper = import ./xcodewrapper.nix {
diff --git a/pkgs/development/mobile/xcodeenv/simulate-app.nix b/pkgs/development/mobile/xcodeenv/simulate-app.nix
index c999497d8c0..645bcd69da0 100644
--- a/pkgs/development/mobile/xcodeenv/simulate-app.nix
+++ b/pkgs/development/mobile/xcodeenv/simulate-app.nix
@@ -1,22 +1,47 @@
 {stdenv, xcodewrapper}:
-{ name, appName ? null, app
-, device ? "iPhone", baseDir ? ""
-, sdkVersion ? "7.0"
-}:
+{name, bundleId, app}:
 
-let
-  _appName = if appName == null then name else appName;
-in
 stdenv.mkDerivation {
   name = stdenv.lib.replaceChars [" "] [""] name;
   buildCommand = ''
     mkdir -p $out/bin
     cat > $out/bin/run-test-simulator << "EOF"
     #! ${stdenv.shell} -e
-
-    cd "${app}/${baseDir}/${_appName}.app"
-    "$(readlink "${xcodewrapper}/bin/iPhone Simulator")" -SimulateApplication './${_appName}' -SimulateDevice '${device}' -currentSDKRoot "$(readlink "${xcodewrapper}/SDKs")/iPhoneSimulator${sdkVersion}.sdk"
+    
+    if [ "$1" = "" ]
+    then
+        # Show the user the possibile UDIDs and let him pick one, if none is provided as a command-line parameter
+        xcrun simctl list
+        
+        echo "Please provide a UDID of a simulator:"
+        read udid
+    else
+        # If a parameter has been provided, consider that a device UDID an use that
+        udid="$1"
+    fi
+    
+    # Open the simulator instance
+    open -a "$(readlink "${xcodewrapper}/bin/iOS Simulator")" --args -CurrentDeviceUDID $udid
+    
+    # Copy the app and restore the write permissions
+    appTmpDir=$(mktemp -d -t appTmpDir)
+    cp -r "$(echo ${app}/*.app)" $appTmpDir
+    chmod -R 755 "$(echo $appTmpDir/*.app)"
+    
+    # Wait for the simulator to start
+    echo "Press enter when the simulator is started..."
+    read
+    
+    # Install the app
+    xcrun simctl install $udid "$(echo $appTmpDir/*.app)"
+    
+    # Remove the app tempdir
+    rm -Rf $appTmpDir
+    
+    # Launch the app in the simulator
+    xcrun simctl launch $udid "${bundleId}"
     EOF
+
     chmod +x $out/bin/run-test-simulator
   '';
 }
diff --git a/pkgs/development/mobile/xcodeenv/xcodewrapper.nix b/pkgs/development/mobile/xcodeenv/xcodewrapper.nix
index 4545ea8dae1..4be204d5dc5 100644
--- a/pkgs/development/mobile/xcodeenv/xcodewrapper.nix
+++ b/pkgs/development/mobile/xcodeenv/xcodewrapper.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
     ln -s /usr/bin/codesign
     ln -s "${xcodeBaseDir}/Contents/Developer/usr/bin/xcodebuild"
     ln -s "${xcodeBaseDir}/Contents/Developer/usr/bin/xcrun"
-    ln -s "${xcodeBaseDir}/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator.app/Contents/MacOS/iPhone Simulator"
+    ln -s "${xcodeBaseDir}/Contents/Developer/Applications/iOS Simulator.app/Contents/MacOS/iOS Simulator"
 
     cd ..
     ln -s "${xcodeBaseDir}/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs"
diff --git a/pkgs/development/ocaml-modules/calendar/default.nix b/pkgs/development/ocaml-modules/calendar/default.nix
index 6af7ce25077..48aaf972503 100644
--- a/pkgs/development/ocaml-modules/calendar/default.nix
+++ b/pkgs/development/ocaml-modules/calendar/default.nix
@@ -1,9 +1,9 @@
 {stdenv, fetchurl, ocaml, findlib}:
 
 stdenv.mkDerivation {
-  name = "ocaml-calendar-2.03.2";
+  name = "ocaml-calendar-2.5";
   src = fetchurl {
-    url = https://forge.ocamlcore.org/frs/download.php/915/calendar-2.03.2.tar.gz;
+    url = https://forge.ocamlcore.org/frs/download.php/915/calendar-2.5.tar.bz2;
     sha256 = "04pvhwb664g3s644c7v7419a3kvf5s3pynkhmk5j59dvlfm1yf0f";
     };
 
diff --git a/pkgs/development/ocaml-modules/camlimages/default.nix b/pkgs/development/ocaml-modules/camlimages/default.nix
index ff344ef6f32..e3ab1d37b15 100644
--- a/pkgs/development/ocaml-modules/camlimages/default.nix
+++ b/pkgs/development/ocaml-modules/camlimages/default.nix
@@ -1,7 +1,6 @@
 {stdenv, fetchurl, omake, ocaml, omake_rc1, libtiff, libjpeg, libpng, giflib, findlib, libXpm, freetype, graphicsmagick, ghostscript }:
 
 let
-  ocaml_version = (builtins.parseDrvName ocaml.name).version;
   pname = "camlimages";
   version = "4.0.1";
 in
@@ -14,9 +13,9 @@ stdenv.mkDerivation {
     sha256 = "b40237c1505487049799a7af296eb3996b3fa08eab94415546f46d61355747c4";
   };
 
-  buildInputs = [ocaml omake_rc1 findlib graphicsmagick ghostscript libtiff libjpeg libpng giflib freetype libXpm ];
+  buildInputs = [ocaml omake_rc1 findlib graphicsmagick ghostscript ];
 
-  propagatedbuildInputs = [libtiff libjpeg libpng giflib freetype libXpm ];
+  propagatedBuildInputs = [libtiff libjpeg libpng giflib freetype libXpm ];
 
   createFindlibDestdir = true;
 
@@ -32,12 +31,10 @@ stdenv.mkDerivation {
     omake install
   '';
 
-  #makeFlags = "BINDIR=$(out)/bin  MANDIR=$(out)/usr/share/man/man1 DYPGENLIBDIR=$(out)/lib/ocaml/${ocaml_version}/site-lib";
-
-  meta = {
-    homepage = http://cristal.inria.fr/camlimages;
-    description = "Image manipulation library";
-    license = stdenv.lib.licenses.gpl2;
-#    maintainers = [ stdenv.lib.maintainers.roconnor ];
+  meta = with stdenv.lib; {
+    homepage = https://bitbucket.org/camlspotter/camlimages;
+    description = "OCaml image processing library";
+    license = licenses.lgpl2;
+    maintainers = [ maintainers.vbgl ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/http/default.nix b/pkgs/development/ocaml-modules/http/default.nix
index 8b611c65a41..59da5473ab1 100644
--- a/pkgs/development/ocaml-modules/http/default.nix
+++ b/pkgs/development/ocaml-modules/http/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, ocaml_pcre, ocamlnet, ocaml, findlib}:
+{stdenv, fetchurl, ocaml_pcre, ocamlnet, ocaml, findlib, camlp4}:
 
 let
   ocaml_version = (builtins.parseDrvName ocaml.name).version;
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
     sha256 = "070xw033r4pk6f4l0wcknm75y9qm4mp622a4cgzmcfhm58v6kssn";
   };
 
-  buildInputs = [ocaml_pcre ocamlnet ocaml findlib];
+  buildInputs = [ocaml_pcre ocamlnet ocaml findlib camlp4];
 
   createFindlibDestdir = true;
 
@@ -30,10 +30,10 @@ stdenv.mkDerivation {
     make all opt
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = "http://upsilon.cc/~zack/hacking/software/ocaml-http/";
     description = "do it yourself (OCaml) HTTP daemon";
-    license = stdenv.lib.licenses.lgpl2;
-    maintainers = [ stdenv.lib.maintainers.roconnor ];
+    license = licenses.lgpl2;
+    maintainers = with maintainers; [ roconnor vbgl ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/lablgl/META.patch b/pkgs/development/ocaml-modules/lablgl/META.patch
new file mode 100644
index 00000000000..bf5b2184ac0
--- /dev/null
+++ b/pkgs/development/ocaml-modules/lablgl/META.patch
@@ -0,0 +1,18 @@
+diff -r 562eb6ecb8ca META
+--- a/META	Wed Oct 01 20:09:24 2014 +0100
++++ b/META	Wed Oct 01 20:22:15 2014 +0100
+@@ -1,6 +1,5 @@
+-description "Bindings for OpenGL"
++description="Bindings for OpenGL"
+ version="1.05"
+-directory="+lablGL"
+ archive(byte) = "lablgl.cma"
+ archive(native) = "lablgl.cmxa"
+ 
+@@ -16,4 +15,4 @@
+   requires = "lablgl"
+   archive(byte) = "lablglut.cma"
+   archive(native) = "lablglut.cmxa"
+-)
+\ No newline at end of file
++)
diff --git a/pkgs/development/ocaml-modules/lablgl/default.nix b/pkgs/development/ocaml-modules/lablgl/default.nix
index 7cefe26746f..115f66ab983 100644
--- a/pkgs/development/ocaml-modules/lablgl/default.nix
+++ b/pkgs/development/ocaml-modules/lablgl/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, ocaml, lablgtk, findlib, mesa, freeglut } :
+{stdenv, fetchurl, ocaml, lablgtk, findlib, mesa, freeglut, camlp4 } :
 
 let
   ocaml_version = (builtins.parseDrvName ocaml.name).version;
@@ -14,9 +14,10 @@ stdenv.mkDerivation {
     sha256 = "0qabydd219i4ak7hxgc67496qnnscpnydya2m4ijn3cpbgih7zyq";
   };
 
-  buildInputs = [ocaml findlib lablgtk mesa freeglut ];
+  buildInputs = [ocaml findlib lablgtk freeglut camlp4];
+  propagatedBuildInputs = [ mesa ];
 
-  patches = [ ./Makefile.config.patch ];
+  patches = [ ./Makefile.config.patch ./META.patch ];
 
   preConfigure = ''
     substituteInPlace Makefile.config \
@@ -35,10 +36,10 @@ stdenv.mkDerivation {
     cp ./META $out/lib/ocaml/${ocaml_version}/site-lib/lablgl
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://wwwfun.kurims.kyoto-u.ac.jp/soft/lsl/lablgl.html;
     description = "OpenGL bindings for ocaml";
-    license = stdenv.lib.licenses.gpl2;
-    maintainers = [ stdenv.lib.maintainers.pSub ];
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ pSub vbgl ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/lablgtk/default.nix b/pkgs/development/ocaml-modules/lablgtk/default.nix
index 7499be9c5dd..19b0bf63ee3 100644
--- a/pkgs/development/ocaml-modules/lablgtk/default.nix
+++ b/pkgs/development/ocaml-modules/lablgtk/default.nix
@@ -3,16 +3,16 @@
 let
   ocaml_version = (builtins.parseDrvName ocaml.name).version;
   pname = "lablgtk";
-  version = "2.16.0";
+  version = "2.18.2";
 in
 
 assert stdenv.lib.versionAtLeast ocaml_version "3.12";
 
-stdenv.mkDerivation (rec {
+stdenv.mkDerivation {
   name = "${pname}-${version}";
   src = fetchurl {
-    url = "https://forge.ocamlcore.org/frs/download.php/979/${name}.tar.gz";
-    sha256 = "a0ea9752eb257dadcfc2914408fff339d4c34357802f02c63329dd41b777de2f";
+    url = https://forge.ocamlcore.org/frs/download.php/1456/lablgtk-2.18.2.tar.gz;
+    sha256 = "0f9rs4av0v7p5k8hifcq4b49xx8jmmfch3sdk9pij8a8jfgwxvfy";
   };
 
   buildInputs = [ocaml findlib pkgconfig gtk libgnomecanvas libglade gtksourceview camlp4];
@@ -25,14 +25,13 @@ stdenv.mkDerivation (rec {
     export OCAMLPATH=$out/lib/ocaml/${ocaml_version}/site-lib/:$OCAMLPATH
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     platforms = ocaml.meta.platforms;
-    maintainers = [
-      stdenv.lib.maintainers.z77z
-      stdenv.lib.maintainers.roconnor
+    maintainers = with maintainers; [
+      z77z roconnor vbgl
     ];
-    homepage = http://wwwfun.kurims.kyoto-u.ac.jp/soft/lsl/lablgtk.html;
-    description = "LablGTK is is an Objective Caml interface to gtk+";
-    license = stdenv.lib.licenses.lgpl21Plus;
+    homepage = http://lablgtk.forge.ocamlcore.org/;
+    description = "An OCaml interface to gtk+";
+    license = licenses.lgpl21Plus;
   };
-})
+}
diff --git a/pkgs/development/ocaml-modules/macaque/default.nix b/pkgs/development/ocaml-modules/macaque/default.nix
new file mode 100644
index 00000000000..f2d13ad1f13
--- /dev/null
+++ b/pkgs/development/ocaml-modules/macaque/default.nix
@@ -0,0 +1,22 @@
+{stdenv, fetchurl, ocaml, findlib, pgocaml, camlp4}:
+
+stdenv.mkDerivation {
+  name = "ocaml-macaque-0.7.1";
+  src = fetchurl {
+    url = https://github.com/ocsigen/macaque/archive/0.7.1.tar.gz;
+    sha256 = "0wnq3pgpcrfpivr8j7p827rhag6hdx0yr0bdvma0hw1g30vwf9qa";
+  };
+
+  buildInputs = [ ocaml findlib camlp4 ];
+  propagatedBuildInputs = [ pgocaml ];
+
+  createFindlibDestdir = true;
+
+  meta = with stdenv.lib; {
+    description = "Macros for Caml Queries";
+    homepage = https://github.com/ocsigen/macaque;
+    license = licenses.lgpl2;
+    platforms = ocaml.meta.platforms;
+    maintainers = with maintainers; [ vbgl ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/odn/default.nix b/pkgs/development/ocaml-modules/odn/default.nix
index 5f72afcf766..bfffb67d4b0 100644
--- a/pkgs/development/ocaml-modules/odn/default.nix
+++ b/pkgs/development/ocaml-modules/odn/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, ocaml, findlib, ocaml_typeconv, ounit}:
+{stdenv, fetchurl, ocaml, findlib, ocaml_typeconv, ounit, camlp4}:
 
 stdenv.mkDerivation {
   name = "ocaml-data-notation-0.0.11";
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
     sha256 = "09a8zdyifpc2nl4hdvg9206142y31cq95ajgij011s1qcg3z93lj";
   };
 
-  buildInputs = [ocaml findlib ocaml_typeconv ounit];
+  buildInputs = [ocaml findlib ocaml_typeconv ounit camlp4];
 
   createFindlibDestdir = true;
 
@@ -16,13 +16,13 @@ stdenv.mkDerivation {
   buildPhase     = "ocaml setup.ml -build";
   installPhase   = "ocaml setup.ml -install";
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Store data using OCaml notation";
     homepage = https://forge.ocamlcore.org/projects/odn/;
-    license = stdenv.lib.licenses.lgpl21;
+    license = licenses.lgpl21;
     platforms = ocaml.meta.platforms;
-    maintainers = with stdenv.lib.maintainers; [
-      z77z
+    maintainers = with maintainers; [
+      vbgl z77z
     ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/pgocaml/default.nix b/pkgs/development/ocaml-modules/pgocaml/default.nix
new file mode 100644
index 00000000000..f1166d1c324
--- /dev/null
+++ b/pkgs/development/ocaml-modules/pgocaml/default.nix
@@ -0,0 +1,22 @@
+{stdenv, fetchurl, ocaml, findlib, camlp4, calendar, csv, ocaml_pcre}:
+
+stdenv.mkDerivation {
+  name = "ocaml-pgocaml-2.1";
+  src = fetchurl {
+    url = http://forge.ocamlcore.org/frs/download.php/1413/pgocaml-2.1.tgz;
+    sha256 = "0m7whlmhm7z58pfaarvkyiwaylmrz05aj6fr773zd9xlv07ljiym";
+  };
+
+  buildInputs = [ocaml findlib camlp4];
+  propagatedBuildInputs = [calendar csv ocaml_pcre];
+
+  createFindlibDestdir = true;
+
+  meta = with stdenv.lib; {
+    description = "An interface to PostgreSQL databases for OCaml applications";
+    homepage = http://pgocaml.forge.ocamlcore.org/;
+    license = licenses.lgpl2;
+    platforms = ocaml.meta.platforms;
+    maintainers = with maintainers; [ vbgl ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/reactivedata/default.nix b/pkgs/development/ocaml-modules/reactivedata/default.nix
new file mode 100644
index 00000000000..eecae885302
--- /dev/null
+++ b/pkgs/development/ocaml-modules/reactivedata/default.nix
@@ -0,0 +1,34 @@
+{stdenv, fetchurl, ocaml, findlib, ocaml_react, opam}:
+
+let
+  ocamlVersion = stdenv.lib.getVersion ocaml;
+in
+
+assert stdenv.lib.versionAtLeast ocamlVersion "3.11";
+
+stdenv.mkDerivation {
+  name = "ocaml-reactiveData-0.1";
+  src = fetchurl {
+    url = https://github.com/hhugo/reactiveData/archive/0.1.tar.gz;
+    sha256 = "056y9in6j6rpggdf8apailvs1m30wxizpyyrj08xyfxgv91mhxgw";
+  };
+
+  buildInputs = [ocaml findlib opam];
+  propagatedBuildInputs = [ocaml_react];
+
+  buildPhase = "ocaml pkg/build.ml native=true native-dynlink=true";
+
+  installPhase = ''
+    opam-installer --script --prefix=$out reactiveData.install > install.sh
+    sed -i s!lib/reactiveData!lib/ocaml/${ocamlVersion}/site-lib/reactiveData! install.sh
+    sh install.sh
+  '';
+
+  meta = with stdenv.lib; {
+    description = "An OCaml module for functional reactive programming (FRP) based on React";
+    homepage = https://github.com/hhugo/reactiveData;
+    license = licenses.lgpl21;
+    platforms = ocaml.meta.platforms;
+    maintainers = with maintainers; [ vbgl ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/ssl/default.nix b/pkgs/development/ocaml-modules/ssl/default.nix
index 9a495002f1d..ad75b4a3dac 100644
--- a/pkgs/development/ocaml-modules/ssl/default.nix
+++ b/pkgs/development/ocaml-modules/ssl/default.nix
@@ -2,7 +2,7 @@
 
 let
   ocaml_version = (builtins.parseDrvName ocaml.name).version;
-  version = "0.4.4";
+  version = "0.4.7";
 in
 
 stdenv.mkDerivation {
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://debian/pool/main/o/ocaml-ssl/ocaml-ssl_${version}.orig.tar.gz";
-    sha256 = "1m45d0bd4ndxswaa1symp6c1npzjmm9pz0nf7w0q15gflqhba5ch";
+    sha256 = "0i0j89b10n3xmmawcq4qfwa42133pddw4x5nysmsnpd15srv5gp9";
   };
 
   buildInputs = [which openssl ocaml findlib];
diff --git a/pkgs/development/ocaml-modules/zarith/default.nix b/pkgs/development/ocaml-modules/zarith/default.nix
index 10ac88bcb90..2f679da977d 100644
--- a/pkgs/development/ocaml-modules/zarith/default.nix
+++ b/pkgs/development/ocaml-modules/zarith/default.nix
@@ -3,13 +3,16 @@
 let
   ocaml_version = (builtins.parseDrvName ocaml.name).version;
 in
+
+assert stdenv.lib.versionAtLeast ocaml_version "3.12.1";
+
 stdenv.mkDerivation rec {
   name = "zarith-${version}";
-  version = "1.2.1";
+  version = "1.3";
 
   src = fetchurl {
-    url = "http://forge.ocamlcore.org/frs/download.php/1199/${name}.tgz";
-    sha256 = "0i21bsx41br0jgw8xmlpnky5zamzqkpbykrq0z53z7ar77602s4i";
+    url = http://forge.ocamlcore.org/frs/download.php/1471/zarith-1.3.tgz;
+    sha256 = "1mx3nxcn5h33qhx4gbg0hgvvydwlwdvdhqcnvfwnmf9jy3b8frll";
   };
 
   buildInputs = [ ocaml findlib pkgconfig gmp perl ];
@@ -22,11 +25,11 @@ stdenv.mkDerivation rec {
   '';
   preInstall = "mkdir -p $out/lib/ocaml/${ocaml_version}/site-lib";
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "fast, arbitrary precision OCaml integers";
     homepage    = "http://forge.ocamlcore.org/projects/zarith";
-    license     = stdenv.lib.licenses.lgpl2;
+    license     = licenses.lgpl2;
     platforms   = ocaml.meta.platforms;
-    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+    maintainers = with maintainers; [ thoughtpolice vbgl ];
   };
 }
diff --git a/pkgs/development/pharo/vm/default.nix b/pkgs/development/pharo/vm/default.nix
index 62c282949aa..8eb44095e08 100644
--- a/pkgs/development/pharo/vm/default.nix
+++ b/pkgs/development/pharo/vm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, cmake, bash, unzip, glibc, openssl, gcc, mesa, freetype, xlibs, alsaLib }:
+{ stdenv, fetchurl, cmake, bash, unzip, glibc, openssl, gcc, mesa, freetype, xlibs, alsaLib, cairo }:
 
 stdenv.mkDerivation rec {
 
@@ -76,7 +76,7 @@ stdenv.mkDerivation rec {
     unzip ${sources30Zip} -d $prefix/lib/pharo-vm/
   '';
 
-  buildInputs = [ bash unzip cmake glibc openssl gcc mesa freetype xlibs.libX11 xlibs.libICE xlibs.libSM alsaLib ];
+  buildInputs = [ bash unzip cmake glibc openssl gcc mesa freetype xlibs.libX11 xlibs.libICE xlibs.libSM alsaLib cairo ];
 
   meta = {
     description = "Clean and innovative Smalltalk-inspired environment";
@@ -98,4 +98,4 @@ stdenv.mkDerivation rec {
     maintainers = [ stdenv.lib.maintainers.DamienCassou ];
     platforms = stdenv.lib.platforms.mesaPlatforms;
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/pure-modules/pure-gsl/default.nix b/pkgs/development/pure-modules/pure-gsl/default.nix
new file mode 100644
index 00000000000..bbad1e380d5
--- /dev/null
+++ b/pkgs/development/pure-modules/pure-gsl/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchurl, pure, pkgconfig, gsl }:
+
+stdenv.mkDerivation {
+  name = "pure-gsl-0.12";
+  src = fetchurl {
+    url = https://bitbucket.org/purelang/pure-lang/downloads/pure-gsl-0.12.tar.gz;
+    sha256 = "06bdd873d5417d90ca35093056a060b77365123ed24c3ac583cd3922d4c78a75";
+  };
+
+  buildInputs = [ pkgconfig ];
+  propagatedBuildInputs = [ pure gsl ];
+
+  installPhase = ''
+    mkdir -p $out/lib/pure/gsl
+    install gsl.pure gsl$(pkg-config pure --variable DLL) $out/lib/pure
+    install gsl/*.pure $out/lib/pure/gsl
+  '';
+
+  setupHook = ./setup-hook.sh;
+
+  meta = {
+    description = "GNU Scientific Library interface for Pure";
+    homepage = http://puredocs.bitbucket.org/pure-gsl.html;
+    license = stdenv.lib.licenses.gpl3Plus;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = with stdenv.lib.maintainers; [ asppsa ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/pure-modules/pure-gsl/setup-hook.sh b/pkgs/development/pure-modules/pure-gsl/setup-hook.sh
new file mode 100644
index 00000000000..efaa2211ae6
--- /dev/null
+++ b/pkgs/development/pure-modules/pure-gsl/setup-hook.sh
@@ -0,0 +1,2 @@
+addToSearchPath PURE_INCLUDE $1/lib/pure
+addToSearchPath PURE_LIBRARY $1/lib/pure
diff --git a/pkgs/development/tools/gnulib/default.nix b/pkgs/development/tools/gnulib/default.nix
index 2e5701375a4..b1692407e1d 100644
--- a/pkgs/development/tools/gnulib/default.nix
+++ b/pkgs/development/tools/gnulib/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchgit }:
 
 stdenv.mkDerivation {
-  name = "gnulib-0.1-83-g8008cac";
+  name = "gnulib-0.1-228-gb155b06";
 
   src = fetchgit {
     url = "http://git.savannah.gnu.org/r/gnulib.git";
-    rev = "8008cac0568ee76a4a9b7002f839e1abbad78af6";
-    sha256 = "1w8wh5ljh1qpssnj2lxizf45ggd7fgk5ggwhrnzjxxhn9m7rdvwm";
+    rev = "b155b0649814b20e635a2db305696710fa1037ce";
+    sha256 = "06r0cpm97k82hx6qqm9nbwyp5mr8g9qqdiw2ak2pndymc66v233l";
   };
 
   buildPhase = ":";
diff --git a/pkgs/development/tools/golint/default.nix b/pkgs/development/tools/golint/default.nix
new file mode 100644
index 00000000000..9e82580018f
--- /dev/null
+++ b/pkgs/development/tools/golint/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  name = "golint";
+
+  src = import ./deps.nix {
+    inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub;
+  };
+
+  buildInputs = [ go ];
+
+  buildPhase = ''
+    export GOPATH=$src
+    go build -v -o lint github.com/golang/lint/golint
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    mv lint $out/bin/golint
+  '';
+
+  meta = with lib; {
+    description = "Linter for Go source code.";
+    homepage = https://github.com/golang/lint;
+    license = licenses.mit;
+    maintainers = with maintainers; [ offline ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/tools/golint/deps.nix b/pkgs/development/tools/golint/deps.nix
new file mode 100644
index 00000000000..47b8ade2298
--- /dev/null
+++ b/pkgs/development/tools/golint/deps.nix
@@ -0,0 +1,27 @@
+{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
+
+let
+  goDeps = [
+    {
+      root = "github.com/golang/lint";
+      src = fetchFromGitHub {
+        owner = "golang";
+        repo = "lint";
+        rev = "8ca23475bcb43213a55dd8210b69363f6b0e09c1";
+        sha256 = "16wbykik6dw3x9s7iqi4ln8kvzsh3g621wb8mk4nfldw7lyqp3cs";
+      };
+    }
+  ];
+
+in
+
+stdenv.mkDerivation rec {
+  name = "go-deps";
+
+  buildCommand =
+    lib.concatStrings
+      (map (dep: ''
+              mkdir -p $out/src/`dirname ${dep.root}`
+              ln -s ${dep.src} $out/src/${dep.root}
+            '') goDeps);
+}
diff --git a/pkgs/development/tools/gotags/default.nix b/pkgs/development/tools/gotags/default.nix
new file mode 100644
index 00000000000..5fec8c181a8
--- /dev/null
+++ b/pkgs/development/tools/gotags/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  name = "gotags";
+
+  src = import ./deps.nix {
+    inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub;
+  };
+
+  buildInputs = [ go ];
+
+  buildPhase = ''
+    export GOPATH=$src
+    go build -v -o gotags github.com/jstemmer/gotags
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    mv gotags $out/bin
+  '';
+
+  meta = with lib; {
+    description = "Ctags-compatible tag generator for Go";
+    homepage = https://github.com/nsf/gotags;
+    license = licenses.mit;
+    maintainers = with maintainers; [ offline ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/tools/gotags/deps.nix b/pkgs/development/tools/gotags/deps.nix
new file mode 100644
index 00000000000..97e77bdd977
--- /dev/null
+++ b/pkgs/development/tools/gotags/deps.nix
@@ -0,0 +1,27 @@
+{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
+
+let
+  goDeps = [
+    {
+      root = "github.com/jstemmer/gotags";
+      src = fetchFromGitHub {
+        owner = "jstemmer";
+        repo = "gotags";
+        rev = "a60c6a1b171faedc44354bd437d965e5e3bdc220";
+        sha256 = "1drbypby0isdmkq44jmlv59k3jrwvq2jciaccxx2qc2nnx444fkq";
+      };
+    }
+  ];
+
+in
+
+stdenv.mkDerivation rec {
+  name = "go-deps";
+
+  buildCommand =
+    lib.concatStrings
+      (map (dep: ''
+              mkdir -p $out/src/`dirname ${dep.root}`
+              ln -s ${dep.src} $out/src/${dep.root}
+            '') goDeps);
+}
diff --git a/pkgs/development/tools/haskell/BNFC/default.nix b/pkgs/development/tools/haskell/BNFC/default.nix
index 4acc8f38f17..4a2ed055cf8 100644
--- a/pkgs/development/tools/haskell/BNFC/default.nix
+++ b/pkgs/development/tools/haskell/BNFC/default.nix
@@ -1,18 +1,18 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, alex, deepseq, filepath, happy, hspec, HUnit, mtl
+{ cabal, alex, deepseq, doctest, filepath, happy, hspec, HUnit, mtl
 , QuickCheck, temporary
 }:
 
 cabal.mkDerivation (self: {
   pname = "BNFC";
-  version = "2.7.0.1";
-  sha256 = "18009jrpd5kcaz06j4ksay4c7c65m4zrc7jrp3rjx81bs6gkrwk1";
+  version = "2.7.1";
+  sha256 = "1n9l64wzga3i7ifh2k5rwhxp60gb0av5fszygw5mvr31r64cf4fp";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ deepseq filepath mtl ];
   testDepends = [
-    deepseq filepath hspec HUnit mtl QuickCheck temporary
+    deepseq doctest filepath hspec HUnit mtl QuickCheck temporary
   ];
   buildTools = [ alex happy ];
   meta = {
diff --git a/pkgs/development/tools/haskell/PastePipe/default.nix b/pkgs/development/tools/haskell/PastePipe/default.nix
index ce1c8a27c54..92d985ecc6e 100644
--- a/pkgs/development/tools/haskell/PastePipe/default.nix
+++ b/pkgs/development/tools/haskell/PastePipe/default.nix
@@ -1,18 +1,18 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, cmdargs, HTTP, network }:
+{ cabal, cmdargs, HTTP, network, networkUri }:
 
 cabal.mkDerivation (self: {
   pname = "PastePipe";
-  version = "1.5";
-  sha256 = "1jqfk6d22vi0vrwx0whjkh4pxwagr4hmi79bid6bffn72c7ygm8f";
+  version = "1.6";
+  sha256 = "08rsq2j3gy98a69pjldvbhawmnzxgld7abh9kszrb0kpjmd9sgc4";
   isLibrary = true;
   isExecutable = true;
-  buildDepends = [ cmdargs HTTP network ];
+  buildDepends = [ cmdargs HTTP network networkUri ];
   meta = {
-    homepage = "http://github.com/creswick/pastepipe";
+    homepage = "http://github.com/Fuuzetsu/pastepipe";
     description = "CLI for pasting to lpaste.net";
-    license = "GPL";
+    license = self.stdenv.lib.licenses.gpl3;
     platforms = self.ghc.meta.platforms;
     maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
   };
diff --git a/pkgs/development/tools/haskell/SourceGraph/default.nix b/pkgs/development/tools/haskell/SourceGraph/default.nix
index abfd386c82a..0ce5872d26a 100644
--- a/pkgs/development/tools/haskell/SourceGraph/default.nix
+++ b/pkgs/development/tools/haskell/SourceGraph/default.nix
@@ -18,5 +18,6 @@ cabal.mkDerivation (self: {
     description = "Static code analysis using graph-theoretic techniques";
     license = "GPL";
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/tools/haskell/cabal-db/default.nix b/pkgs/development/tools/haskell/cabal-db/default.nix
index 234c158cf90..215be2d4363 100644
--- a/pkgs/development/tools/haskell/cabal-db/default.nix
+++ b/pkgs/development/tools/haskell/cabal-db/default.nix
@@ -18,5 +18,6 @@ cabal.mkDerivation (self: {
     description = "query tools for the local cabal database (revdeps, graph, info, search-by, license, bounds)";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/tools/haskell/cabal2nix/default.nix b/pkgs/development/tools/haskell/cabal2nix/default.nix
index 07ba2a4a09e..044ebfad434 100644
--- a/pkgs/development/tools/haskell/cabal2nix/default.nix
+++ b/pkgs/development/tools/haskell/cabal2nix/default.nix
@@ -14,7 +14,7 @@ cabal.mkDerivation (self: {
     Cabal filepath hackageDb mtl regexPosix transformers
   ];
   testDepends = [ doctest ];
-  doCheck = self.stdenv.lib.versionOlder "7.6" self.ghc.version;
+  doCheck = self.stdenv.lib.versionOlder "7.8" self.ghc.version;
   meta = {
     homepage = "http://github.com/NixOS/cabal2nix";
     description = "Convert Cabal files into Nix build instructions";
diff --git a/pkgs/development/tools/haskell/codex/default.nix b/pkgs/development/tools/haskell/codex/default.nix
index b3c1ba9fa66..902faca957f 100644
--- a/pkgs/development/tools/haskell/codex/default.nix
+++ b/pkgs/development/tools/haskell/codex/default.nix
@@ -1,18 +1,20 @@
 # This file was auto-generated by cabal2nix. Please do NOT edit manually!
 
-{ cabal, Cabal, downloadCurl, either, filepath, hackageDb, MissingH
-, monadLoops, tar, text, transformers, yaml, zlib
+{ cabal, Cabal, downloadCurl, either, filepath, hackageDb, machines
+, machinesDirectory, MissingH, monadLoops, monoTraversable, tar
+, text, transformers, yaml, zlib
 }:
 
 cabal.mkDerivation (self: {
   pname = "codex";
-  version = "0.1.0.5";
-  sha256 = "0hlx72dan9qvwrpp6rkyr6y9zk2lafa15va098w38r7658jymfy0";
+  version = "0.2.0.2";
+  sha256 = "0an043cmsxc296i90pv19d8xdl7fg2fvf026lx4rly7bwskzn99x";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    Cabal downloadCurl either filepath hackageDb MissingH monadLoops
-    tar text transformers yaml zlib
+    Cabal downloadCurl either filepath hackageDb machines
+    machinesDirectory MissingH monadLoops monoTraversable tar text
+    transformers yaml zlib
   ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/tools/haskell/hlint/default.nix b/pkgs/development/tools/haskell/hlint/default.nix
index 92a33602a1f..de09d232b6c 100644
--- a/pkgs/development/tools/haskell/hlint/default.nix
+++ b/pkgs/development/tools/haskell/hlint/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hlint";
-  version = "1.9.4";
-  sha256 = "0vqdkrhzxi99py9zrk01cz3hayfbp757rh1c1sgz00a1gf1pyz8m";
+  version = "1.9.9";
+  sha256 = "193ls1pfycdl8ifq09y2acbhy2hjb2p8f79gjn13ziaycgfz9ygr";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/tools/haskell/hsb2hs/default.nix b/pkgs/development/tools/haskell/hsb2hs/default.nix
new file mode 100644
index 00000000000..9efebdf1db7
--- /dev/null
+++ b/pkgs/development/tools/haskell/hsb2hs/default.nix
@@ -0,0 +1,17 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, filepath, preprocessorTools }:
+
+cabal.mkDerivation (self: {
+  pname = "hsb2hs";
+  version = "0.2";
+  sha256 = "013n3l80449wxmbfmcidg8mdjk4nkxv7s3jcbfy5g4jps6gsg1fx";
+  isLibrary = false;
+  isExecutable = true;
+  buildDepends = [ filepath preprocessorTools ];
+  meta = {
+    description = "Preprocesses a file, adding blobs from files as string literals";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/tools/haskell/hscope/default.nix b/pkgs/development/tools/haskell/hscope/default.nix
index 981e6120444..529ad2ef47e 100644
--- a/pkgs/development/tools/haskell/hscope/default.nix
+++ b/pkgs/development/tools/haskell/hscope/default.nix
@@ -20,5 +20,6 @@ cabal.mkDerivation (self: {
     description = "cscope like browser for Haskell code";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    broken = true;
   };
 })
diff --git a/pkgs/development/tools/haskell/ihaskell/default.nix b/pkgs/development/tools/haskell/ihaskell/default.nix
index f6505384128..a9b1347517f 100644
--- a/pkgs/development/tools/haskell/ihaskell/default.nix
+++ b/pkgs/development/tools/haskell/ihaskell/default.nix
@@ -39,6 +39,7 @@ cabal.mkDerivation (self: {
   postInstall = ''
     patchShebangs .
   '';
+  jailbreak = true;
   meta = with self.stdenv.lib; {
     homepage = "http://gibiansky.github.io/IHaskell/";
     description = "A Haskell backend kernel for the IPython project";
diff --git a/pkgs/development/tools/haskell/pointfree/default.nix b/pkgs/development/tools/haskell/pointfree/default.nix
index 166105f22b6..4eb911ebd62 100644
--- a/pkgs/development/tools/haskell/pointfree/default.nix
+++ b/pkgs/development/tools/haskell/pointfree/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "pointfree";
-  version = "1.0.4.7";
-  sha256 = "0jwql0ka01cr53ayjc4dpaci11i7r1y3b9gcbh3rlamb1mnfcqvl";
+  version = "1.0.4.8";
+  sha256 = "0nb3mqp6zwnnq6fs27xhcqv4w8h6sr5k01hldkqnkgwz0yyy7ljy";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [ haskellSrcExts transformers ];
diff --git a/pkgs/development/tools/haskell/timeplot/default.nix b/pkgs/development/tools/haskell/timeplot/default.nix
index a07383778ed..bcc7b7c35d6 100644
--- a/pkgs/development/tools/haskell/timeplot/default.nix
+++ b/pkgs/development/tools/haskell/timeplot/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "timeplot";
-  version = "1.0.25";
-  sha256 = "14zyzr53gpp0i7wx49zzdrndqdhsw3q4z3w5hdl8c4m541pr25fw";
+  version = "1.0.27";
+  sha256 = "072bxa0pfxyia4xvj0w0h8v3yfk05bbq5j905sj6jf9apjr9h558";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [
@@ -20,7 +20,5 @@ cabal.mkDerivation (self: {
     description = "A tool for visualizing time series from log files";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
-    hydraPlatforms = self.stdenv.lib.platforms.none;
-    broken = true;
   };
 })
diff --git a/pkgs/development/tools/jq/default.nix b/pkgs/development/tools/jq/default.nix
index 8194ffc22a8..76e74d7623e 100644
--- a/pkgs/development/tools/jq/default.nix
+++ b/pkgs/development/tools/jq/default.nix
@@ -28,6 +28,6 @@ stdenv.mkDerivation {
     description = ''A lightweight and flexible command-line JSON processor'';
     license = stdenv.lib.licenses.mit ;
     maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
+    platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
   };
 }
diff --git a/pkgs/development/tools/misc/ddd/default.nix b/pkgs/development/tools/misc/ddd/default.nix
index 91150255bda..a57840827c1 100644
--- a/pkgs/development/tools/misc/ddd/default.nix
+++ b/pkgs/development/tools/misc/ddd/default.nix
@@ -7,12 +7,14 @@ stdenv.mkDerivation rec {
     sha256 = "0p5nx387857w3v2jbgvps2p6mlm0chajcdw5sfrddcglsxkwvmis";
   };
   buildInputs = [lesstif ncurses libX11 libXt];
-	configureFlags = "--with-x";
+  configureFlags = "--with-x";
 
   patches = [ ./gcc44.patch ];
-	meta = {
-	  homepage = http://www.gnu.org/software/ddd;
-		description = "Graphical front-end for command-line debuggers";
-		license = stdenv.lib.licenses.gpl2;
-	};
+
+  meta = {
+    homepage = http://www.gnu.org/software/ddd;
+    description = "Graphical front-end for command-line debuggers";
+    license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.linux;
+  };
 }
diff --git a/pkgs/development/tools/misc/epm/default.nix b/pkgs/development/tools/misc/epm/default.nix
index 23b781902e7..9d84011e365 100644
--- a/pkgs/development/tools/misc/epm/default.nix
+++ b/pkgs/development/tools/misc/epm/default.nix
@@ -1,17 +1,21 @@
 {stdenv, fetchurl, rpm}:
 
-stdenv.mkDerivation {
-  name = "epm-4.1";
+stdenv.mkDerivation rec {
+  name = "epm-${version}";
+  version = "4.2";
 
   src = fetchurl {
-    url = http://ftp.rz.tu-bs.de/pub/mirror/ftp.easysw.com/ftp/pub/epm/4.1/epm-4.1-source.tar.bz2;
-    sha256 = "18xq1h9hx410x28bfccabydrqb1c0dqnq62qa17wc3846rwf234n";
+    url = "http://www.msweet.org/files/project2/epm-4.2-source.tar.bz2";
+    sha256 = "13imglm1fgd7p5y9lc0xsl6x4cdjsk5lnan5sn8f7m4jwbx8kik6";
   };
 
-  buildInputs = [rpm];
+  buildInputs = [ rpm ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "The ESP Package Manager generates distribution archives for a variety of platforms";
-    homepage = http://www.easysw.com/epm/index.php;
+    homepage = http://www.msweet.org/projects.php?Z2;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ pSub ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/tools/misc/help2man/default.nix b/pkgs/development/tools/misc/help2man/default.nix
index caf9dc489b5..e93d844db23 100644
--- a/pkgs/development/tools/misc/help2man/default.nix
+++ b/pkgs/development/tools/misc/help2man/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, perl, gettext, LocaleGettext, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "help2man-1.46.3";
+  name = "help2man-1.46.4";
 
   src = fetchurl {
     url = "mirror://gnu/help2man/${name}.tar.xz";
-    sha256 = "0hi94a6ai96yw0v8xgjzpp5c6jr33ifmbn2mkp7wz7rgmwxxqsd6";
+    sha256 = "0csn7jx7nhlrflalw1992p3l5afawlpdyjdff2q5bk5hadgz3rqs";
   };
 
   buildInputs = [ makeWrapper perl gettext LocaleGettext ];
diff --git a/pkgs/development/tools/misc/hydra/default.nix b/pkgs/development/tools/misc/hydra/default.nix
deleted file mode 100644
index 0940bcca191..00000000000
--- a/pkgs/development/tools/misc/hydra/default.nix
+++ /dev/null
@@ -1,73 +0,0 @@
-{ stdenv, fetchurl, nix, perlPackages, perl, makeWrapper, libtool
-, unzip, nukeReferences, pkgconfig, boehmgc, libxslt, sqlite
-, subversion, openssh, coreutils, findutils, gzip, bzip2, lzma
-, gnutar, git, mercurial, gnused, graphviz, rpm, dpkg, cdrkit
-}:
-
-let
-
-  perldeps = with perlPackages; 
-    [ CatalystDevel
-      CatalystPluginSessionStoreFastMmap
-      CatalystPluginStackTrace
-      CatalystPluginAuthorizationRoles
-      CatalystAuthenticationStoreDBIxClass
-      CatalystViewTT
-      CatalystEngineHTTPPrefork
-      CatalystViewDownload
-      XMLSimple
-      IPCRun
-      IOCompress
-      Readonly
-      DBDPg
-      EmailSender
-      TextTable
-      NetTwitterLite
-      PadWalker
-      DataDump
-      JSONXS
-      DateTime
-      DigestSHA1
-      CryptRandPasswd
-      nixPerl
-    ];
-
-  version = "0.1pre27592"; 
-
-in
-
-stdenv.mkDerivation {
-  name = "hydra-${version}";
-
-  src = fetchurl {
-    url = http://hydra.nixos.org/build/1142240/download/2/hydra-0.1pre27592.tar.gz;
-    sha256 = "0197bcfkabqqv7611fh9kjabfm0nfci8kanfaa59hqwf3h6fmpwz";
-  };
-
-  configureFlags = "--with-nix=${nix}";
-
-  buildInputs = [ perl makeWrapper libtool nix unzip nukeReferences pkgconfig boehmgc ] ++ perldeps ;
-
-  hydraPath = stdenv.lib.concatStringsSep ":" (map (p: "${p}/bin") ( [
-    libxslt sqlite subversion openssh nix coreutils findutils
-    gzip bzip2 lzma gnutar unzip git mercurial gnused graphviz
-    rpm dpkg cdrkit]));
-
-  postInstall = ''
-    for i in "$out/bin/"*; do
-        wrapProgram $i \
-            --prefix PERL5LIB ':' $out/libexec/hydra/lib:$PERL5LIB \
-            --prefix PATH ':' $out/bin:$hydraPath \
-            --set HYDRA_RELEASE ${version} \
-            --set HYDRA_HOME $out/libexec/hydra \
-            --set NIX_RELEASE ${nix.name}
-    done
-  '';
-
-  meta = {
-    description = "Hydra, the Nix-based continuous integration system";
-    homepage = http://nixos.org/hydra/;
-    license = stdenv.lib.licenses.gpl3Plus;
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/development/tools/misc/intel-gpu-tools/default.nix b/pkgs/development/tools/misc/intel-gpu-tools/default.nix
index 14bfe74821d..a27b2318b95 100644
--- a/pkgs/development/tools/misc/intel-gpu-tools/default.nix
+++ b/pkgs/development/tools/misc/intel-gpu-tools/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, libdrm, libpciaccess, cairo, dri2proto, udev, libX11, libXext, libXv, libXrandr, glib, bison }:
 
 stdenv.mkDerivation rec {
-  name = "intel-gpu-tools-1.7";
+  name = "intel-gpu-tools-1.8";
 
   src = fetchurl {
     url = "http://xorg.freedesktop.org/archive/individual/app/${name}.tar.bz2";
-    sha256 = "0yi0024kr1xzglkkhyjpxr081bmwvdakb61az6wiidfrpd1j6q92";
+    sha256 = "0n9pzwjzx4xiffcy3nkc7q7689sid2ry8m9xx4vgxxspr8ds3qpz";
   };
 
   configureFlags = [ "--disable-tests" ];
diff --git a/pkgs/development/tools/misc/kibana/default.nix b/pkgs/development/tools/misc/kibana/default.nix
index 42e5c2209f1..dab04861d9f 100644
--- a/pkgs/development/tools/misc/kibana/default.nix
+++ b/pkgs/development/tools/misc/kibana/default.nix
@@ -1,29 +1,28 @@
-{ stdenv, fetchurl, unzip, conf ? null }:
+{ stdenv, fetchurl, conf ? null }:
 
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "kibana-${version}";
-  version = "3.1.0";
+  version = "3.1.1";
 
   src = fetchurl {
-    url = "https://download.elasticsearch.org/kibana/kibana/${name}.zip";
-    sha256 = "05i97zi08rxwx951hgs92fbhk6cchpvdlikrfz07v1dpn787xz8j";
+    url = "https://download.elasticsearch.org/kibana/kibana/${name}.tar.gz";
+    sha256 = "195x6zq9x16nlh2akvn6z0kp8qnba4vq90yrysiafgv8dmw34p5b";
   };
 
-  buildInputs = [ unzip ];
-
   phases = ["unpackPhase" "installPhase"];
+
   installPhase = ''
-    mkdir -p $out && cp -R * $out
-    ${optionalString (conf!=null) ''cp ${conf} $out/config.js''}
+    mkdir -p $out
+    mv * $out/
+    ${optionalString (conf != null) "cp ${conf} $out/config.js"}
   '';
 
   meta = {
     description = "Visualize logs and time-stamped data";
     homepage = http://www.elasticsearch.org/overview/kibana;
     license = licenses.asl20;
-
-    maintainers = [ maintainers.offline ];
+    maintainers = with maintainers; [ offline rickynils ];
   };
 }
diff --git a/pkgs/development/tools/misc/lttng-tools/default.nix b/pkgs/development/tools/misc/lttng-tools/default.nix
index 5758500d86f..800947e788a 100644
--- a/pkgs/development/tools/misc/lttng-tools/default.nix
+++ b/pkgs/development/tools/misc/lttng-tools/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, popt, libuuid, liburcu, lttng-ust, kmod }:
+{ stdenv, fetchurl, popt, libuuid, liburcu, lttng-ust, kmod, libxml2 }:
 
 stdenv.mkDerivation rec {
-  name = "lttng-tools-2.4.1";
+  name = "lttng-tools-2.5.0";
 
   src = fetchurl {
     url = "https://lttng.org/files/lttng-tools/${name}.tar.bz2";
-    sha256 = "1v9f7a3c2shwgn4g759bblgr27h9ql9sfq71r1mbkf8rd235g2jr";
+    sha256 = "19qw3v8z5kz9ls988sc1d8yczl9i1d5c6vmzna8wz790szwvin6s";
   };
 
-  buildInputs = [ popt libuuid liburcu lttng-ust ];
+  buildInputs = [ popt libuuid liburcu lttng-ust libxml2 ];
 
   prePatch = ''
     sed -e "s|/sbin/modprobe|${kmod}/sbin/modprobe|g" \
diff --git a/pkgs/development/tools/misc/lttng-ust/default.nix b/pkgs/development/tools/misc/lttng-ust/default.nix
index 0cba211f28b..3c47966ac5c 100644
--- a/pkgs/development/tools/misc/lttng-ust/default.nix
+++ b/pkgs/development/tools/misc/lttng-ust/default.nix
@@ -12,11 +12,11 @@
 # Debian builds with std.h (systemtap).
 
 stdenv.mkDerivation rec {
-  name = "lttng-ust-2.4.1";
+  name = "lttng-ust-2.5.0";
 
   src = fetchurl {
     url = "https://lttng.org/files/lttng-ust/${name}.tar.bz2";
-    sha256 = "1nx9b1haiylajzjy03wgfcy85nwg578c6gy8ip55y8cabjrw0hp1";
+    sha256 = "1an3ymk6hy86gp4z4py93mdyb9q8f74hq2hixbnyccr8l60vpl6w";
   };
 
   buildInputs = [ liburcu ];
diff --git a/pkgs/development/tools/ocaml/findlib/default.nix b/pkgs/development/tools/ocaml/findlib/default.nix
index cfbabad72cc..a9673be26ee 100644
--- a/pkgs/development/tools/ocaml/findlib/default.nix
+++ b/pkgs/development/tools/ocaml/findlib/default.nix
@@ -5,11 +5,11 @@ let
 in
 
 stdenv.mkDerivation {
-  name = "ocaml-findlib-1.4.1";
+  name = "ocaml-findlib-1.5.3";
 
   src = fetchurl {
-    url = http://download.camlcity.org/download/findlib-1.4.1.tar.gz;
-    sha256 = "0cdbr716r5686zvf86b9zm5ikdz0dw727m67b1f4rjjisp5v2zyf";
+    url = http://download.camlcity.org/download/findlib-1.5.3.tar.gz;
+    sha256 = "1kw2siv4pc8q060m9xpgxvjs07ic1kiphyxmkwcz6nyb91p8286r";
   };
 
   buildInputs = [m4 ncurses ocaml];
diff --git a/pkgs/development/tools/ocaml/findlib/install_topfind.patch b/pkgs/development/tools/ocaml/findlib/install_topfind.patch
index 4729885bcef..f152feaaecf 100644
--- a/pkgs/development/tools/ocaml/findlib/install_topfind.patch
+++ b/pkgs/development/tools/ocaml/findlib/install_topfind.patch
@@ -1,12 +1,11 @@
---- findlib-1.3.3/src/findlib/Makefile
-+++ findlib-1.3.3/src/findlib/Makefile
-@@ -82,7 +82,7 @@ clean:
+--- findlib-1.5.3/src/findlib/Makefile	2014-09-16 13:21:46.000000000 +0200
++++ findlib-1.5.3/src/findlib/Makefile.new	2014-10-01 14:30:54.141082521 +0200
+@@ -89,7 +89,7 @@
  install: all
  	mkdir -p "$(prefix)$(OCAML_SITELIB)/$(NAME)"
  	mkdir -p "$(prefix)$(OCAMLFIND_BIN)"
 -	test $(INSTALL_TOPFIND) -eq 0 || cp topfind "$(prefix)$(OCAML_CORE_STDLIB)"
 +	test $(INSTALL_TOPFIND) -eq 0 || cp topfind "$(prefix)$(OCAML_SITELIB)"
- 	files=`$(TOP)/tools/collect_files $(TOP)/Makefile.config findlib.cmi findlib.mli findlib.cma topfind.cmi topfind.mli fl_package_base.mli fl_package_base.cmi fl_metascanner.mli fl_metascanner.cmi fl_metatoken.cmi findlib_top.cma findlib.cmxa findlib.a META` && \
+ 	files=`$(TOP)/tools/collect_files $(TOP)/Makefile.config findlib.cmi findlib.mli findlib.cma topfind.cmi topfind.mli fl_package_base.mli fl_package_base.cmi fl_metascanner.mli fl_metascanner.cmi fl_metatoken.cmi findlib_top.cma findlib.cmxa findlib.a findlib.cmxs META` && \
  	cp $$files "$(prefix)$(OCAML_SITELIB)/$(NAME)"
  	f="ocamlfind$(EXEC_SUFFIX)"; { test -f ocamlfind_opt$(EXEC_SUFFIX) && f="ocamlfind_opt$(EXEC_SUFFIX)"; }; \
-
diff --git a/pkgs/development/tools/ocaml/oasis/default.nix b/pkgs/development/tools/ocaml/oasis/default.nix
index a5260b499c4..3f172e6aaf2 100644
--- a/pkgs/development/tools/ocaml/oasis/default.nix
+++ b/pkgs/development/tools/ocaml/oasis/default.nix
@@ -1,11 +1,11 @@
-{stdenv, fetchurl, ocaml, findlib, ocaml_data_notation, ocaml_typeconv,
+{stdenv, fetchurl, ocaml, findlib, ocaml_data_notation, ocaml_typeconv, camlp4,
  ocamlmod, ocamlify, ounit, expect}:
 
 stdenv.mkDerivation {
-  name = "ocaml-oasis-0.4.1";
+  name = "ocaml-oasis-0.4.4";
 
   src = fetchurl {
-    url = http://forge.ocamlcore.org/frs/download.php/1355/oasis-0.4.1.tar.gz;
+    url = http://forge.ocamlcore.org/frs/download.php/1355/oasis-0.4.4.tar.bz2;
     sha256 = "1lsnw9f1jh6106kphxg40qp0sia6cbkbb9ahs5y6ifnfkmllkjhj";
   };
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
 
   buildInputs =
     [
-      ocaml findlib ocaml_typeconv ocamlmod ocamlify ounit
+      ocaml findlib ocaml_typeconv ocamlmod ocamlify ounit camlp4
     ];
 
   propagatedBuildInputs = [ ocaml_data_notation ];
@@ -22,13 +22,13 @@ stdenv.mkDerivation {
   buildPhase     = "ocaml setup.ml -build";
   installPhase   = "ocaml setup.ml -install";
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://oasis.forge.ocamlcore.org/;
     description = "Configure, build and install system for OCaml projects";
-    license = stdenv.lib.licenses.lgpl21;
+    license = licenses.lgpl21;
     platforms = ocaml.meta.platforms;
-    maintainers = with stdenv.lib.maintainers; [
-      z77z
+    maintainers = with maintainers; [
+      vbgl z77z
     ];
   };
 }
diff --git a/pkgs/development/tools/ocaml/utop/default.nix b/pkgs/development/tools/ocaml/utop/default.nix
index 1b99c4d4d43..10025ff8a96 100644
--- a/pkgs/development/tools/ocaml/utop/default.nix
+++ b/pkgs/development/tools/ocaml/utop/default.nix
@@ -3,12 +3,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.14";
+  version = "1.15";
   name = "utop-${version}";
 
   src = fetchurl {
-    url = https://github.com/diml/utop/archive/1.14.tar.gz;
-    sha256 = "17dqinvdrpba2fjs7sl6gxs47rrx6j8a5bbjhc7flp6bdls898zk";
+    url = https://github.com/diml/utop/archive/1.15.tar.gz;
+    sha256 = "106v0x6sa2x10zgmjf73mpzws7xiqanxswivd00iqnpc0bcpkmrr";
   };
 
   buildInputs = [ ocaml findlib makeWrapper];
diff --git a/pkgs/development/tools/parsing/re2c/default.nix b/pkgs/development/tools/parsing/re2c/default.nix
index 5ff4f8ec9db..4176182ab62 100644
--- a/pkgs/development/tools/parsing/re2c/default.nix
+++ b/pkgs/development/tools/parsing/re2c/default.nix
@@ -1,12 +1,12 @@
-{stdenv, fetchurl }:
+{ stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
   name = "re2c-${version}";
-  version = "0.13.7.4";
+  version = "0.13.7.5";
 
   src = fetchurl {
     url    = "mirror://sourceforge/re2c/re2c/${version}/${name}.tar.gz";
-    sha256 = "0j42s2gpz0rgiadwyb7ksqgc7i02l0q2qnmiyaj5f1w5rfa2c7yy";
+    sha256 = "0qdly4493d4p6jif0anf79c8h6ylc34aw622zk4n8icyax8gv2nm";
   };
 
   meta = {
diff --git a/pkgs/games/chocolate-doom/default.nix b/pkgs/games/chocolate-doom/default.nix
index 157d1b42af6..bd8d926769e 100644
--- a/pkgs/games/chocolate-doom/default.nix
+++ b/pkgs/games/chocolate-doom/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
     url = https://github.com/chocolate-doom/chocolate-doom/archive/chocolate-doom-2.0.0.tar.gz;
     sha256 = "1n9lkx97h987bq8z586jgissdhs07xyfr0xfdk7m2wpw4yhw10k1";
   };
-  buildInputs = [ autoconf autoconf automake pkgconfig SDL SDL_mixer SDL_net ];
+  buildInputs = [ autoconf automake pkgconfig SDL SDL_mixer SDL_net ];
   patchPhase = ''
     sed -e 's#/games#/bin#g' -i src{,/setup}/Makefile.am
     ./autogen.sh --prefix=$out
diff --git a/pkgs/games/chocolate-doom/master.nix b/pkgs/games/chocolate-doom/master.nix
index f0dc62aaaae..3681a6781d8 100644
--- a/pkgs/games/chocolate-doom/master.nix
+++ b/pkgs/games/chocolate-doom/master.nix
@@ -1,13 +1,13 @@
 { stdenv, autoconf, automake, pkgconfig, SDL, SDL_mixer, SDL_net, git, fetchgit }:
 
 stdenv.mkDerivation rec {
-  name = "chocolate-doom-20140902";
+  name = "chocolate-doom-20141008";
   src = fetchgit {
     url = git://github.com/fragglet/chocolate-doom.git;
-    rev = "204814c7bb16a8ad45435a15328072681978ea57";
-    sha256 = "1xcdxpkgb9dk3zwqf4xcr3qn7dh5rx6hmniky67imbvi1h74p587";
+    rev = "63e1c884911f9e3382936f84a388e941b29343e6";
+    sha256 = "1855a70widf1ni7lrfvp3hwxs1fhg1v5l738ckai88xpbak8i14m";
   };
-  buildInputs = [ autoconf autoconf automake pkgconfig SDL SDL_mixer SDL_net git ];
+  buildInputs = [ autoconf automake pkgconfig SDL SDL_mixer SDL_net git ];
   patchPhase = ''
     sed -e 's#/games#/bin#g' -i src{,/setup}/Makefile.am
     ./autogen.sh --prefix=$out
diff --git a/pkgs/games/hedgewars/default.nix b/pkgs/games/hedgewars/default.nix
new file mode 100644
index 00000000000..3dbc86a7378
--- /dev/null
+++ b/pkgs/games/hedgewars/default.nix
@@ -0,0 +1,69 @@
+{ SDL_image, SDL_ttf, SDL_net, fpc, qt4 , ghc, ffmpeg, freeglut, network, vector
+, stdenv, makeWrapper, fetchurl, cmake, pkgconfig, lua5_1, SDL, SDL_mixer
+, utf8String, bytestringShow, hslogger, random, dataenc, zlib, libpng, mesa
+}:
+
+stdenv.mkDerivation rec {
+  version = "0.9.20.5";
+  name = "hedgewars-${version}";
+  src = fetchurl {
+    url = "http://download.gna.org/hedgewars/hedgewars-src-${version}.tar.bz2";
+    sha256 = "1k5dq14s9pshrqlz8vnix237bcapfif4k3rc4yj4cmwdx1pqkl56";
+  };
+
+  buildInputs = [
+    SDL_ttf SDL_net network vector utf8String bytestringShow hslogger random
+    cmake pkgconfig lua5_1 SDL SDL_mixer SDL_image fpc qt4 ghc ffmpeg freeglut
+    dataenc makeWrapper
+  ];
+
+  patches = [ ./fix-ghc-7.8-build-failure.diff ];
+
+  preBuild = ''
+    export NIX_LDFLAGS="$NIX_LDFLAGS -rpath ${SDL_image}/lib
+                                     -rpath ${SDL_mixer}/lib
+                                     -rpath ${SDL_net}/lib
+                                     -rpath ${SDL_ttf}/lib
+                                     -rpath ${SDL}/lib
+                                     -rpath ${libpng}/lib
+                                     -rpath ${lua5_1}/lib
+                                     -rpath ${mesa}/lib
+                                     -rpath ${zlib}/lib
+                                     "
+  '';
+
+  postInstall = ''
+    wrapProgram $out/bin/hwengine --prefix LD_LIBRARY_PATH : $LD_LIBRARY_PATH:${mesa}/lib/:${freeglut}/lib
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Turn-based strategy artillery game similiar to Worms";
+    homepage = http://hedgewars.org/;
+    license = licenses.gpl2;
+    longDescription = ''
+       Each player controls a team of several hedgehogs. During the course of
+       the game, players take turns with one of their hedgehogs. They then use
+       whatever tools and weapons are available to attack and kill the
+       opponents' hedgehogs, thereby winning the game. Hedgehogs may move
+       around the terrain in a variety of ways, normally by walking and jumping
+       but also by using particular tools such as the "Rope" or "Parachute", to
+       move to otherwise inaccessible areas. Each turn is time-limited to
+       ensure that players do not hold up the game with excessive thinking or
+       moving.
+
+       A large variety of tools and weapons are available for players during
+       the game: Grenade, Cluster Bomb, Bazooka, UFO, Homing Bee, Shotgun,
+       Desert Eagle, Fire Punch, Baseball Bat, Dynamite, Mine, Rope, Pneumatic
+       pick, Parachute. Most weapons, when used, cause explosions that deform
+       the terrain, removing circular chunks. The landscape is an island
+       floating on a body of water, or a restricted cave with water at the
+       bottom. A hedgehog dies when it enters the water (either by falling off
+       the island, or through a hole in the bottom of it), it is thrown off
+       either side of the arena or when its health is reduced, typically from
+       contact with explosions, to zero (the damage dealt to the attacked
+       hedgehog or hedgehogs after a player's or CPU turn is shown only when
+       all movement on the battlefield has ceased).'';
+    maintainers = maintainers.kragniz;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/games/hedgewars/fix-ghc-7.8-build-failure.diff b/pkgs/games/hedgewars/fix-ghc-7.8-build-failure.diff
new file mode 100644
index 00000000000..7974c6797fc
--- /dev/null
+++ b/pkgs/games/hedgewars/fix-ghc-7.8-build-failure.diff
@@ -0,0 +1,16 @@
+## fix-ghc-7.8-build-failure.diff [diff]
+diff --git a/gameServer/Actions.hs b/gameServer/Actions.hs
+index 2cebe4f..355ee26 100644
+--- a/gameServer/Actions.hs
++++ b/gameServer/Actions.hs
+@@ -562,7 +562,7 @@ processAction (AddClient cl) = do
+     si <- gets serverInfo
+     newClId <- io $ do
+         ci <- addClient rnc cl
+-        _ <- Exception.mask (forkIO . clientRecvLoop (clientSocket cl) (coreChan si) (sendChan cl) ci)
++        _ <- Exception.mask (\x -> forkIO $ clientRecvLoop (clientSocket cl) (coreChan si) (sendChan cl) ci x)
+ 
+         infoM "Clients" (show ci ++ ": New client. Time: " ++ show (connectTime cl))
+ 
+
+
diff --git a/pkgs/games/keen4/default.nix b/pkgs/games/keen4/default.nix
index 4d6189603a9..562df3ac1b6 100644
--- a/pkgs/games/keen4/default.nix
+++ b/pkgs/games/keen4/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
 
   dist = fetchurl {
     url = http://tarballs.nixos.org/keen4.zip;
-    md5 = "ffcdd9e3bce224d92797166bc3f56f1c";
+    sha256 = "12rnc9ksl7v6l8wsxvr26ylkafzq80dbsa7yafzw9pqc8pafkhx1";
   };
 
   buildInputs = [unzip];
diff --git a/pkgs/games/megaglest/default.nix b/pkgs/games/megaglest/default.nix
new file mode 100644
index 00000000000..29841797148
--- /dev/null
+++ b/pkgs/games/megaglest/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchgit, cmake, git, curl, SDL, xercesc, openal, lua
+, libjpeg, wxGTK, cppunit, ftgl, glew, libogg, libvorbis, buildEnv, libpng
+, fontconfig, freetype, xlibs, makeWrapper, bash, which, gnome3, mesa_glu
+, mesa_drivers }:
+let
+  version = "3.9.2";
+  lib-env = buildEnv {
+    name = "megaglest-lib-env";
+    paths = [ SDL xlibs.libSM xlibs.libICE xlibs.libX11 xlibs.libXext
+      xercesc openal libvorbis lua libjpeg libpng curl fontconfig ftgl freetype
+      stdenv.gcc.gcc glew mesa_glu mesa_drivers wxGTK ];
+  };
+  path-env = buildEnv {
+    name = "megaglest-path-env";
+    paths = [ bash which gnome3.zenity ];
+  };
+in
+stdenv.mkDerivation {
+  name = "megaglest-${version}";
+
+  src = fetchgit {
+    url = "git://github.com/MegaGlest/megaglest-source";
+    rev = "refs/tags/${version}";
+    sha256 = "0jdgcpsv16vdxkwym7pw764pggifn4g98f3dzg615xl9h4wkymm0";
+  };
+
+  buildInputs = [ cmake git curl SDL xercesc openal lua libjpeg wxGTK
+    cppunit ftgl glew libogg libvorbis makeWrapper mesa_glu mesa_drivers ];
+
+  configurePhase = ''
+    cmake -DCMAKE_INSTALL_PREFIX=$out -DBUILD_MEGAGLEST_TESTS=ON
+  '';
+
+  postInstall =  ''
+    for i in $out/bin/*; do
+      wrapProgram $i \
+        --prefix LD_LIBRARY_PATH ":" "${lib-env}/lib" \
+        --prefix PATH ":" "${path-env}/bin"
+    done
+  '';
+
+  meta = {
+    description = "MegaGlest is an entertaining free (freeware and free software) and open source cross-platform 3D real-time strategy (RTS) game";
+    license = stdenv.lib.licenses.gpl3;
+    homepage = "http://megaglest.org/";
+    maintainers = [ stdenv.lib.maintainers.matejc ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/games/quake3/demo/default.nix b/pkgs/games/quake3/demo/default.nix
index 99c07a9a7e0..a25a7caa8c1 100644
--- a/pkgs/games/quake3/demo/default.nix
+++ b/pkgs/games/quake3/demo/default.nix
@@ -7,13 +7,13 @@ stdenv.mkDerivation {
   # This is needed for pak0.pk3.
   demo = fetchurl {
     url = http://tarballs.nixos.org/linuxq3ademo-1.11-6.x86.gz.sh;
-    md5 = "484610c1ce34272223a52ec331c99d5d";
+    sha256 = "1v54a1hx1bczk9hgn9qhx8vixsy7xn7wj2pylhfjsybfkgvf7pk4";
   };
 
   # This is needed for the additional pak?.pk3 files.
   update = fetchurl {
     url = http://tarballs.nixos.org/linuxq3apoint-1.31.x86.run;
-    md5 = "2620b9eefb6d0775f766b6570870157a";
+    sha256 = "1kp689452zb8jhd67ghisz2055pqxy9awz4vi0hq5qmp7xrp1x58";
   };
 
   # Don't rebuild if the inputs change, since the output is guaranteed
diff --git a/pkgs/games/tibia/default.nix b/pkgs/games/tibia/default.nix
index f175894dfe7..51f6fdf0eee 100644
--- a/pkgs/games/tibia/default.nix
+++ b/pkgs/games/tibia/default.nix
@@ -3,11 +3,11 @@
 with stdenv.lib;
 assert stdenv.isi686;
 stdenv.mkDerivation {
-  name = "tibia-10.57";
+  name = "tibia-10.59";
 
   src = fetchurl {
-    url = http://static.tibia.com/download/tibia1057.tgz;
-    sha256 = "1bhfrz66n1cvvy11ybr3yfn3i3vr98nnp3q11gssk8nby5bqm2fi";
+    url = http://static.tibia.com/download/tibia1059.tgz;
+    sha256 = "0g9f4g7d461yj47rsiv5fpvh4wry9rsx4j6q1jajq4liv5xdlhl7";
   };
 
   shell = stdenv.shell;
diff --git a/pkgs/games/ut2004demo/default.nix b/pkgs/games/ut2004demo/default.nix
index 04efc0049dd..a828d22ca0b 100644
--- a/pkgs/games/ut2004demo/default.nix
+++ b/pkgs/games/ut2004demo/default.nix
@@ -8,7 +8,7 @@ let {
     name = "ut2004-demo-3120";
     src = fetchurl {
       url = http://ftp.gameaholic.com/pub/demos/ut2004-lnx-demo-3120.run.bz2;
-      md5 = "da200b043add9d083f6aa7581e6829f0";
+      sha256 = "1lravfkb1gsallqqird5dcbz42vwjg36m1qk76nmmnyyyghwqnli";
     };
     builder = ./builder.sh;
   };
diff --git a/pkgs/misc/apulse/default.nix b/pkgs/misc/apulse/default.nix
new file mode 100644
index 00000000000..9ca2cee4796
--- /dev/null
+++ b/pkgs/misc/apulse/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, alsaLib, cmake, pkgconfig, glib }:
+
+stdenv.mkDerivation rec {
+  name = "apulse-${version}";
+  version = "0.1.2";
+
+  src = fetchurl {
+    url = "https://github.com/i-rinat/apulse/archive/v${version}.tar.gz";
+    sha256 = "02906a8iwwjzzkjvhqqai2yd1636cgz9vl69vwq0vkv2v6cn21ky";
+  };
+
+  buildInputs =
+    [ alsaLib cmake pkgconfig glib ];
+
+  meta = with stdenv.lib; {
+    description = "PulseAudio emulation for ALSA.";
+    homepage = "https://github.com/i-rinat/apulse";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.jagajaga ];
+  };
+}
diff --git a/pkgs/misc/beep/default.nix b/pkgs/misc/beep/default.nix
index b5e4adfa0b9..2fc09c498e3 100644
--- a/pkgs/misc/beep/default.nix
+++ b/pkgs/misc/beep/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation {
   name = "beep-1.3";
   src = fetchurl {
     url = http://www.johnath.com/beep/beep-1.3.tar.gz;
-    md5 = "49c340ceb95dbda3f97b2daafac7892a";
+    sha256 = "0bgch6jq5cahakk3kbr9549iysf2dik09afixxy5brbxk1xfzb2r";
   };
 
   makeFlags = "INSTALL_DIR=\${out}/bin/ MAN_DIR=\${out}/man/man1/";
diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix
index bb1f60ed5db..c332dc02154 100644
--- a/pkgs/misc/cups/default.nix
+++ b/pkgs/misc/cups/default.nix
@@ -9,8 +9,8 @@ stdenv.mkDerivation {
   passthru = { inherit version; };
 
   src = fetchurl {
-    url = "http://ftp.easysw.com/pub/cups/${version}/cups-${version}-source.tar.bz2";
-    md5 = "de3006e5cf1ee78a9c6145ce62c4e982";
+    url = "https://www.cups.org/software/${version}/cups-${version}-source.tar.bz2";
+    sha256 = "1rfhlv9b37120d6shngvyrcp99vh4a3lwdkrfanv3sjqid7068w0";
   };
 
   buildInputs = [ pkgconfig zlib libjpeg libpng libtiff libusb ]
diff --git a/pkgs/misc/emulators/atari800/default.nix b/pkgs/misc/emulators/atari800/default.nix
index 5b1576bd97c..c2a4c7d3d8b 100644
--- a/pkgs/misc/emulators/atari800/default.nix
+++ b/pkgs/misc/emulators/atari800/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
   };
   rom = fetchurl {
     url = mirror://sourceforge/atari800/xf25.zip;
-    md5 = "4dc3b6b4313e9596c4d474785a37b94d";
+    sha256 = "12jbawxs04i0wm3910n7f3phsybdp8nndxc0xlsnzp8k0k8hmblq";
   };
   buildInputs = [unzip zlib SDL];
   configureFlags = "--target=sdl";
diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix
index db412eb883d..a371e5ab771 100644
--- a/pkgs/misc/emulators/retroarch/cores.nix
+++ b/pkgs/misc/emulators/retroarch/cores.nix
@@ -9,7 +9,7 @@ let
   stdenv.lib.makeOverridable stdenv.mkDerivation rec {
 
     name = "libretro-${core}-${version}";
-    version = "20140902";
+    version = "20141009";
     inherit src;
 
     buildInputs = [ makeWrapper retroarch zlib ] ++ a.extraBuildInputs or [];
@@ -53,8 +53,8 @@ in
     core = "4do";
     src = fetchRetro {
       repo = core + "-libretro";
-      rev = "961812bc421f3fbfd83ea211783bb511a0b6d31c";
-      sha256 = "0217iq8sj8gn161c3mj632csl1da8ir2ffxxdillpcddv6ppsayl";
+      rev = "700e5c2b28252ed7d3fb086ab016b3b964a5030a";
+      sha256 = "0wxiapbp6i3r9ir75xgmah0jhrfvy9jgqr6i22grgmnga1qv5pcf";
     };
     description = "Port of 4DO/libfreedo to libretro";
   }).override {
@@ -65,30 +65,32 @@ in
     core = "bsnes-mercury";
     src = fetchRetro {
       repo = core;
-      rev = "cc44e91bfba6f7b3d1d3d51a9fa28b39a579f5e0";
-      sha256 = "0nzwjrbfvzywsimrvp4vbpj7zxf9iwpghd9z7f9f1q027l0vj42f";
+      rev = "5fa7c035a604cd207c5833af0fdd55d7cf68acb0";
+      sha256 = "19drxpspid0y3wi3zp3ls4jlhx1ndqmr51jici7w2vsajk9x9dyg";
     };
     description = "Fork of bsnes with HLE DSP emulation restored";
   }).override {
     buildPhase = "make && cd out";
   };
 
-  desmume = mkLibRetroCore rec {
+  desmume = (mkLibRetroCore rec {
     core = "desmume";
     src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "1dd58e4a9fa375b6909cd8718165a429d4b8bd6d";
-      sha256 = "137bw9316qxm8s6p0bzyvk39dv5b5bn60fgllmyj9z5y8x5lrc9l";
+      repo = core;
+      rev = "57bbabfe71fb8e131fa14ab1504f1959937b8ce5";
+      sha256 = "19kbl361ggzhmmc5alsfwq9gcl0zc9zhz0nx562l6k2lj7fwwr0g";
     };
     description = "libretro wrapper for desmume NDS emulator";
+  }).override {
+    configurePhase = "cd desmume";
   };
 
   fceumm = mkLibRetroCore rec {
     core = "fceumm";
     src = fetchRetro {
       repo = "libretro-" + core;
-      rev = "17e081541c9d36d0658e7139afa5b085aa0316c9";
-      sha256 = "0cn74z976rgjh7hf0yb1sdjlm347157893s2z397rgjvks8xssb0";
+      rev = "1b27f5abafa4ace43badebea82a8374be3a5a96b";
+      sha256 = "04v0in7nazmkfsbvl0wn5klnz4f8rpjsar1v3c07j2qrma42k60w";
     };
     description = "FCEUmm libretro port";
   };
@@ -97,8 +99,8 @@ in
     core = "fba";
     src = fetchRetro {
       repo = core + "-libretro";
-      rev = "da6355526a9b02a642447994414baababe904c1e";
-      sha256 = "14kba506m9dnldmkpq3vgw416pm7cgc167hgm3f0l59ylp2592ff";
+      rev = "21a78df085a0d964828c5c0940c03e656e2ad808";
+      sha256 = "01ycszinral19ni22a3x8afiz23y9xw6idzx9a22xnc6zqvj0fjm";
     };
     description = "Port of Final Burn Alpha to libretro";
   }).override {
@@ -113,8 +115,8 @@ in
     core = "gambatte";
     src = fetchRetro {
       repo = core + "-libretro";
-      rev = "267a4e09bf8f0877483abdffde6295f29d7235ee";
-      sha256 = "1swx3mjb6qmlg6grcakhl17vrmy4vdvimxkv5gbv6gnj5riya4vl";
+      rev = "6f3c97d86483368ec446b6b08ae21b1cb644312c";
+      sha256 = "19kbisbl5lqxfsaff4knp2rrl17af21c1kgccxhgp5liqnqk92k5";
     };
     description = "Gambatte libretro port";
   }).override {
@@ -125,8 +127,8 @@ in
     core = "genesis-plus-gx";
     src = fetchRetro {
       repo = "Genesis-Plus-GX";
-      rev = "c0015e27e3ae607ea0490b2accfe31097ef3cbce";
-      sha256 = "1k4b5wib7nqzk53qwvhkh4a70gc4pq7vkrpvmfzp5f2c4vrbw1i7";
+      rev = "d634da83d29d39d293c1aba3c14f6259e13e525e";
+      sha256 = "0mhn2h2wr2kh5rgda5rj7xkmg4b6glg4rnd0f1ak6rp3sh8dfhv1";
     };
     description = "Enhanced Genesis Plus libretro port";
   };
@@ -135,8 +137,8 @@ in
     core = "mupen64plus";
     src = fetchRetro {
       repo = core + "-libretro";
-      rev = "2251b3aba2a5bb233ff49dd9b6472f2c0feb9b83";
-      sha256 = "04g93kj6n5vddbzfb30d8n711kg0yxfnl5v567aa854misn6gfxd";
+      rev = "021ab383e2ac44533e9babd3e7f5fed97a988225";
+      sha256 = "13hph19b24bbp9d6s8zm4a939dhy96n2fbkcknmsp473kfnm9mf6";
     };
     description = "Libretro port of Mupen64 Plus, GL only";
 
@@ -145,12 +147,24 @@ in
     buildPhase = "make WITH_DYNAREC=${if stdenv.system == "x86_64-linux" then "x86_64" else "x86"}";
   };
 
+  nestopia = (mkLibRetroCore rec {
+    core = "nestopia";
+    src = fetchRetro {
+      repo = core;
+      rev = "3468f3c16c80935e8c4078a5771e9379a981989c";
+      sha256 = "1k9kd25z4hyna48gwxb8rkm9q402xzhw18wmgbzkf8y6zqxn50j0";
+    };
+    description = "nestopia undead libretro port";
+  }).override {
+    buildPhase = "cd libretro && make";
+  };
+
   picodrive = (mkLibRetroCore rec {
     core = "picodrive";
     src = fetchRetro {
       repo = core;
-      rev = "d84817550ac064fbba7ee718fb3baeda7d5546da";
-      sha256 = "17zh9m2v7h1cifzz8dcwqm4wn94zyhz6g85gf0aw6xylxahza627";
+      rev = "3f4b091194d29dd90a3cb88fd6520f677ffece65";
+      sha256 = "0jb89g5xmq7nzx4gm1mam1hym20fcyzp95k9as0k2gnwxrd4ymxv";
     };
     description = "Fast MegaDrive/MegaCD/32X emulator";
 
@@ -164,8 +178,8 @@ in
     core = "prboom";
     src = fetchRetro {
       repo = "libretro-" + core;
-      rev = "de2f0a0fab1a73a28cd501fdb9291ffc7dc357f5";
-      sha256 = "01gxa6hh9vijic2n44q1lndhdyw0kdpmajabs0nizn7bni51b29c";
+      rev = "7c5e74a8f8a973278d46604f2816aae538e9cce7";
+      sha256 = "1mkxc7zcyc2nj7spsrasbnz6k182g8i1snahbbwj4qi41db6cjc9";
     };
     description = "Prboom libretro port";
   }).override {
@@ -176,13 +190,25 @@ in
     core = "ppsspp";
     src = fetchRetro {
       repo = "libretro-" + core;
-      rev = "6ee828171218b26e124c5e8fa7877e6ee1d5ff79";
-      sha256 = "1559d4k3h0a2dv3684j4w924p2dg8z2j1fwhy7w9mhb5z4kddjhk";
+      rev = "af5050be6b421e08be42d4edf0015693ceba1f06";
+      sha256 = "0h4crdq6n6npbv6sidp3bgz5g2z3ws6ikg37f0amshh3rj36p7q0";
     };
     description = "ppsspp libretro port";
 
     extraBuildInputs = [ mesa ffmpeg ];
-  }).override{
+  }).override {
+    buildPhase = "cd libretro && make";
+  };
+
+  quicknes = (mkLibRetroCore rec {
+    core = "quicknes";
+    src = fetchRetro {
+      repo = "QuickNES_Core";
+      rev = "3e8935cc937d3bf64dc44b63cef5d584ec2673fa";
+      sha256 = "003hrxkskrkqv5h39p4gd9mg2k3ki5l1cmm0kxq7c454yliljjxc";
+    };
+    description = "QuickNES libretro port";
+  }).override {
     buildPhase = "cd libretro && make";
   };
 
@@ -190,22 +216,34 @@ in
     core = "scummvm";
     src = fetchRetro {
       repo = core;
-      rev = "c00247171ba8201614e85556c638b8825dc9f225";
-      sha256 = "1wir3x928b37va6gn14bmwsydkpk4afma5hppmbivw4qp8mj25pa";
+      rev = "0a703f6546c5a0d8ef835aa624681f7877c36df6";
+      sha256 = "1v1a6zvc1sjvvnvcarcmdym7qwyqyvl4b6ianjgzbpaxwmw457g0";
     };
     description = "Libretro port of ScummVM";
 
     extraBuildInputs = [ fluidsynth libjpeg libvorbis mesa SDL ];
   }).override {
-    buildPhase = "cd backends/platform/libretro/build/;make";
+    buildPhase = "cd backends/platform/libretro/build && make";
+  };
+
+  snes9x = (mkLibRetroCore rec {
+    core = "snes9x";
+    src = fetchRetro {
+      repo = core;
+      rev = "0724786eb2ed1436946a2e2b42c77cddf8412a63";
+      sha256 = "15wnq12mkfz766dzafhlmmh8a8b463ybssj84fhijj8c1x75scd1";
+    };
+    description = " Port of SNES9x git to libretro";
+  }).override {
+    buildPhase = "cd libretro && make";
   };
 
   snes9x-next = mkLibRetroCore rec {
     core = "snes9x-next";
     src = fetchRetro {
       repo = core;
-      rev = "461d92be09e1857d215f51aeea448a8e180bbfdd";
-      sha256 = "0ci453qsyrv3brmy2szngis2xyvxilcv9yhc2qjz285mirg6fj57";
+      rev = "c701a1e4357bc80e46cae5bdfa0d359bcbce23ad";
+      sha256 = "0410dj7rxcadvyghc1yqwqidn1g3scm52i3gb9d8haymg9q1zbjs";
     };
     description = "Optimized port/rewrite of SNES9x 1.52+ to Libretro";
   };
@@ -214,22 +252,33 @@ in
     core = "stella";
     src = fetchRetro {
       repo = core + "-libretro";
-      rev = "c7ee7ca7e8a29c986f49306c75832972f5749f72";
-      sha256 = "15wy9h3a2qk66lh8x40b3a9il0zkdflqil1h51zjmhq2zzsq8p95";
+      rev = "394ef8c10b8057fe3f92ff9d7c73886ae2eefec2";
+      sha256 = "1a5m157fqpspi2zafmqhcd6864dvfpwh44d4n47ngswp6ii9bq0f";
     };
     description = "Port of Stella to libretro";
   }).override {
     buildPhase = "make";
   };
 
+  vba-m = (mkLibRetroCore rec {
+    core = "vbam";
+    src = fetchRetro {
+      repo = core + "-libretro";
+      rev = "26a030ce01a6473d35bac2a6db4f0a360989d72f";
+      sha256 = "065gljk2nijnjg2c2zbnpg25s5zam7x0z8lq7kbz9zb87sp73ha1";
+    };
+    description = "vanilla VBA-M libretro port";
+  }).override {
+    buildPhase = "cd src/libretro && make";
+  };
+
   vba-next = mkLibRetroCore rec {
     core = "vba-next";
     src = fetchRetro {
       repo = core;
-      rev = "fb095107f83df5f93b8ba4833eaf43901f42c0c0";
-      sha256 = "0fvq1dfll27vjbmyh4qsp2nw166jsd91sjmf1sl84z56ab3q3iw8";
+      rev = "136fe2020e941f27036754dd0524bfec750025dc";
+      sha256 = "17bvx2wp2r5lkgffvqrirhgic1bfy39m7c1v74z245hg6z1jvqcf";
     };
-    description = "VBA-M libretro port";
+    description = "VBA-M libretro port with modifications for speed";
   };
-
 }
\ No newline at end of file
diff --git a/pkgs/misc/emulators/retroarch/default.nix b/pkgs/misc/emulators/retroarch/default.nix
index d110f2b789e..616fab44d6f 100644
--- a/pkgs/misc/emulators/retroarch/default.nix
+++ b/pkgs/misc/emulators/retroarch/default.nix
@@ -1,31 +1,31 @@
-{ stdenv, fetchgit, pkgconfig, which
-, SDL, mesa, alsaLib
-, libXxf86vm, libXinerama, libXv
-}:
+{ stdenv, fetchgit, pkgconfig, ffmpeg, mesa, nvidia_cg_toolkit
+, freetype, libxml2, libv4l, coreutils, python34, which, udev, alsaLib
+, libX11, libXext, libXxf86vm, libXdmcp, SDL, pulseaudio ? null }:
 
 stdenv.mkDerivation rec {
-  name = "retroarch-bare-0.9.9.7";
+  name = "retroarch-bare-${version}";
+  version = "20141009";
 
   src = fetchgit {
-    url = "https://github.com/libretro/RetroArch.git";
-    rev = "ea0c4880556e0f9d1fe8253ddc713bc743b00e1b";
-    sha256 = "1jhyh7f8ijy67fxslxqsp8pjl2lwayjljp06hp4n5cn33yajpbd7";
+    url = git://github.com/libretro/RetroArch.git;
+    rev = "72f26dfb49f236294c52eb9cb4c9d5c15da4837a";
+    sha256 = "0dn9fh1frnbxykhw3q229ck50a800p8r4va8nssfcdxh8cys385w";
   };
 
-  buildInputs = [
-    pkgconfig which SDL mesa alsaLib
-    libXxf86vm libXinerama libXv
-  ];
+  buildInputs = [ pkgconfig ffmpeg mesa nvidia_cg_toolkit freetype libxml2 libv4l coreutils
+                  python34 which udev alsaLib libX11 libXext libXxf86vm libXdmcp SDL pulseaudio ];
 
-  preConfigure = ''
-    configureFlags="--global-config-dir=$out/etc"
+  patchPhase = ''
+    export GLOBAL_CONFIG_DIR=$out/etc
+    sed -e 's#/bin/true#${coreutils}/bin/true#' -i qb/qb.libs.sh
   '';
 
-  meta = {
-    description = "Modular multi-system game/emulator system";
-    homepage = "http://www.libretro.com/";
-    license = stdenv.lib.licenses.gpl3Plus;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ iyzsong ];
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    homepage = http://libretro.org/;
+    description = "Multi-platform emulator frontend for libretro cores";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ MP2E ];
   };
 }
diff --git a/pkgs/misc/emulators/retroarch/master.nix b/pkgs/misc/emulators/retroarch/master.nix
deleted file mode 100644
index 2efb43e5d5e..00000000000
--- a/pkgs/misc/emulators/retroarch/master.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ stdenv, fetchgit, pkgconfig, ffmpeg, mesa, nvidia_cg_toolkit
-, freetype, libxml2, libv4l, coreutils, python34, which, udev, alsaLib
-, libX11, libXext, libXxf86vm, libXdmcp, SDL, pulseaudio ? null }:
-
-stdenv.mkDerivation rec {
-  name = "retroarch-bare-${version}";
-  version = "20140902";
-
-  src = fetchgit {
-    url = git://github.com/libretro/RetroArch.git;
-    rev = "0856091296c2e47409f36e13007805d71db69483";
-    sha256 = "152dfp6jd7yzvasqrqw4ydjbdcwq4khisia2dax3gydvxkq87nl4";
-  };
-
-  buildInputs = [ pkgconfig ffmpeg mesa nvidia_cg_toolkit freetype libxml2 libv4l coreutils
-                  python34 which udev alsaLib libX11 libXext libXxf86vm libXdmcp SDL pulseaudio ];
-
-  patchPhase = ''
-    export GLOBAL_CONFIG_DIR=$out/etc
-    sed -e 's#/bin/true#${coreutils}/bin/true#' -i qb/qb.libs.sh
-  '';
-
-  enableParallelBuilding = true;
-
-  meta = with stdenv.lib; {
-    homepage = http://libretro.org/;
-    description = "Multi-platform emulator frontend for libretro cores";
-    license = licenses.gpl3;
-    maintainers = with maintainers; [ MP2E ];
-  };
-}
diff --git a/pkgs/misc/lilypond/default.nix b/pkgs/misc/lilypond/default.nix
index 3f1c1a9a57b..3dd3f4378de 100644
--- a/pkgs/misc/lilypond/default.nix
+++ b/pkgs/misc/lilypond/default.nix
@@ -5,7 +5,7 @@
 }:
 
 stdenv.mkDerivation rec{
-  majorVersion="2.16";
+  majorVersion="2.18";
   minorVersion="2";
   version="${majorVersion}.${minorVersion}";
   name = "lilypond-${version}";
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec{
 
   src = fetchurl {
     url = "http://download.linuxaudio.org/lilypond/sources/v${majorVersion}/lilypond-${version}.tar.gz";
-    sha256 = "1jx11bk3rk3w7bnh0829yy280627ywsvwg6fhdm0fqwkiz7jchqz";
+    sha256 = "01xs9x2wjj7w9appaaqdhk15r1xvvdbz9qwahzhppfmhclvp779j";
   };
 
   preConfigure=''
diff --git a/pkgs/misc/sails/default.nix b/pkgs/misc/sails/default.nix
new file mode 100644
index 00000000000..ab68dc69015
--- /dev/null
+++ b/pkgs/misc/sails/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, cmake, pkgconfig, gtk3, librsvg }:
+
+stdenv.mkDerivation rec {
+  version = "0.1.1";
+  name = "sails-${version}";
+  src = fetchurl {
+    url = "https://github.com/kragniz/sails/archive/v${version}.tar.gz";
+    sha256 = "0k55ib6cb78filgq3yrdib69qrzsny0209bq6h0v1yigry0sa62v";
+  };
+
+  buildInputs = [ cmake pkgconfig gtk3 librsvg ];
+
+  meta = with stdenv.lib; {
+    description = "Simulator for autonomous sailing boats";
+    homepage = https://github.com/kragniz/sails;
+    license = licenses.gpl3;
+    longDescription = ''
+      Sails is a simulator designed to test the AI of autonomous sailing
+      robots. It emulates the basic physics of sailing a small single sail
+      boat'';
+    maintainers = maintainers.kragniz;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/misc/screensavers/rss-glx/default.nix b/pkgs/misc/screensavers/rss-glx/default.nix
index bc1504ab2e9..a41fe5afb9e 100644
--- a/pkgs/misc/screensavers/rss-glx/default.nix
+++ b/pkgs/misc/screensavers/rss-glx/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   
   src = fetchurl {
     url = mirror://sourceforge/rss-glx/rss-glx_0.8.1.tar.bz2;
-    md5 = "a2bdf0e10ee4e89c8975f313c5c0ba6f";
+    sha256 = "1fs2xavyf9i6vcdmdnpyi9rbnrg05ldd49bvlcwpn5igv2g400yg";
   };
 
   buildInputs = [x11 mesa pkgconfig imagemagick libtiff bzip2];
diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix
index 8dd17c074a7..7177f10e3a2 100644
--- a/pkgs/misc/vim-plugins/default.nix
+++ b/pkgs/misc/vim-plugins/default.nix
@@ -141,6 +141,8 @@ in rec
     # TODO: support llvm based C completion, See README of git repository
     installPhase = ":";
 
+    path = "YouCompleteMe";
+
     meta = {
       description = "fastest non utf-8 aware word and C completion engine for Vim";
       homepage = http://github.com/Valloric/YouCompleteMe;
@@ -323,7 +325,7 @@ in rec
   };
 
   vimproc = simpleDerivation rec {
-    version = "7788b5f934bc7460c1e9134b51fe5690b21de83c";
+    version = "21a79bf4edca3ae97555df3fc729d208c7e19b9c";
     name    = "vimproc-${version}";
 
     meta = with stdenv.lib; {
@@ -338,7 +340,7 @@ in rec
     src = fetchgit {
       url = "https://github.com/Shougo/vimproc.vim.git";
       rev = "${version}";
-      sha256 = "0ahmnzccf5rv8rwg7b6pfgxh8pcmq955aznjv64slyh0mjqmh6jl";
+      sha256 = "16mlrhmd1hq4rgg7bl9gajhb4nmn1x8jxfaxfwiy2bm1phgljgq0";
      };
 
     buildInputs = [ which ];
@@ -573,6 +575,7 @@ in rec
       rev = "0c4e94281e57c475752e799adc261f7d5e4ab124";
       sha256 = "f6a085f7b8198747fae3fff0bc38e4d030e5c97aaeb84958fbf96fa658bbe862";
      };
+    patches = [ (fetchurl { url = "https://github.com/eagletmt/ghcmod-vim/pull/57.diff"; md5 = "cafbb9f725afbba26b52b6c3344ee89a"; }) ];
     path = "ghcmod";
   };
 
diff --git a/pkgs/os-specific/linux/batman-adv/default.nix b/pkgs/os-specific/linux/batman-adv/default.nix
index f7b2a984e40..8407f270f48 100644
--- a/pkgs/os-specific/linux/batman-adv/default.nix
+++ b/pkgs/os-specific/linux/batman-adv/default.nix
@@ -1,5 +1,7 @@
 { stdenv, fetchurl, kernel }:
 
+assert stdenv.lib.versionOlder kernel.version "3.17";
+
 let base = "batman-adv-2014.3.0"; in
 
 stdenv.mkDerivation rec {
diff --git a/pkgs/os-specific/linux/broadcom-sta/default.nix b/pkgs/os-specific/linux/broadcom-sta/default.nix
index 1ed13c2e450..1f0674c9bca 100644
--- a/pkgs/os-specific/linux/broadcom-sta/default.nix
+++ b/pkgs/os-specific/linux/broadcom-sta/default.nix
@@ -1,25 +1,25 @@
 { stdenv, fetchurl, kernel }:
 let
-  version = "6_30_223_141";
+  version = "6.30.223.248";
 in
 stdenv.mkDerivation {
   name = "broadcom-sta-${version}-${kernel.version}";
 
   src = if stdenv.system == "i686-linux" then (
     fetchurl {
-      url = "http://www.broadcom.com/docs/linux_sta/hybrid-v35-nodebug-pcoem-${version}.tar.gz";
-      sha256 = "19wra62dpm0x0byksh871yxr128b4v13kzkzqv56igjfpzv36z6m";
+      url = http://www.broadcom.com/docs/linux_sta/hybrid-v35-nodebug-pcoem-6_30_223_248.tar.gz;
+      sha256 = "1bd13pq5hj4yzp32rx71sg1i5wkzdsg1s32xsywb48lw88x595mi";
     } ) else (
     fetchurl {
-      url = "http://www.broadcom.com/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-${version}.tar.gz";
-      sha256 = "0jlvch7d3khmmg5kp80x4ka33hidj8yykqjcqq6j56z2g6wb4dsz";
+      url = http://www.broadcom.com/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-6_30_223_248.tar.gz;
+      sha256 = "08ihbhwnqpnazskw9rlrk0alanp4x70kl8bsy2vg962iq334r69x";
     }
   );
 
   patches = [
-    ./linux-recent.patch
     ./license.patch
     ./cfg80211_ibss_joined-channel-parameter.patch
+    ./netdev-3.17.patch
   ];
 
   makeFlags = "KBASE=${kernel.dev}/lib/modules/${kernel.modDirVersion}";
diff --git a/pkgs/os-specific/linux/broadcom-sta/linux-recent.patch b/pkgs/os-specific/linux/broadcom-sta/linux-recent.patch
deleted file mode 100644
index 97a331a2bd7..00000000000
--- a/pkgs/os-specific/linux/broadcom-sta/linux-recent.patch
+++ /dev/null
@@ -1,126 +0,0 @@
---- a/src/wl/sys/wl_linux.c	2013-08-01 08:52:22.000000000 +0200
-+++ b/src/wl/sys/wl_linux.c	2013-09-13 14:25:36.463020788 +0200
-@@ -910,7 +910,11 @@
- 	pci_set_drvdata(pdev, NULL);
- }
- 
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 8, 0)
- static struct pci_driver wl_pci_driver = {
-+#else
-+static struct pci_driver wl_pci_driver __refdata = {
-+#endif
- 	name:		"wl",
- 	probe:		wl_pci_probe,
- 	suspend:	wl_suspend,
-@@ -3235,7 +3239,7 @@
- void
- wl_tkip_printstats(wl_info_t *wl, bool group_key)
- {
--#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 14)
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 14) && LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
- 	char debug_buf[512];
- 	int idx;
- 	if (wl->tkipmodops) {
-@@ -3408,6 +3412,7 @@
- 	return 0;
- }
- 
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
- static int
- wl_proc_read(char *buffer, char **start, off_t offset, int length, int *eof, void *data)
- {
-@@ -3462,19 +3467,90 @@
- 	return length;
- }
- 
-+#else
-+
-+static int
-+wl_proc_read(struct seq_file *seq, void *offset)
-+{
-+	wl_info_t * wl = (wl_info_t *)seq->private;
-+	int bcmerror, to_user;
-+
-+	WL_LOCK(wl);
-+	bcmerror = wlc_ioctl(wl->wlc, WLC_GET_MONITOR, &to_user, sizeof(int), NULL);
-+	WL_UNLOCK(wl);
-+
-+	seq_printf(seq, "%d\n", to_user);
-+	return bcmerror;
-+}
-+
-+static ssize_t wl_proc_write(struct file *file, const char __user *buff,
-+			     size_t length, loff_t *ppos)
-+{
-+	struct seq_file *seq = file->private_data;
-+	wl_info_t * wl = (wl_info_t *)seq->private;
-+	int bcmerror, from_user = 0;
-+
-+	if (length != 1) {
-+		WL_ERROR(("%s: Invalid data length\n", __FUNCTION__));
-+		return -EIO;
-+	}
-+
-+	if (copy_from_user(&from_user, buff, 1)) {
-+		WL_ERROR(("%s: copy from user failed\n", __FUNCTION__));
-+		return -EFAULT;
-+	}
-+
-+	if (from_user >= 0x30)
-+		from_user -= 0x30;
-+
-+	WL_LOCK(wl);
-+	bcmerror = wlc_ioctl(wl->wlc, WLC_SET_MONITOR, &from_user, sizeof(int), NULL);
-+	WL_UNLOCK(wl);
-+
-+	if (bcmerror < 0) {
-+		WL_ERROR(("%s: SET_MONITOR failed with %d\n", __FUNCTION__, bcmerror));
-+		return -EIO;
-+	}
-+	*ppos += length;
-+	return length;
-+}
-+
-+static int wl_proc_open(struct inode *inode, struct file *file)
-+{
-+	return single_open(file, wl_proc_read, PDE_DATA(inode));
-+}
-+
-+static const struct file_operations wl_proc_fops = {
-+	.owner = THIS_MODULE,
-+	.open = wl_proc_open,
-+	.read = seq_read,
-+	.write = wl_proc_write,
-+	.llseek = seq_lseek,
-+	.release = single_release,
-+};
-+#endif
-+
- static int
- wl_reg_proc_entry(wl_info_t *wl)
- {
- 	char tmp[32];
- 	sprintf(tmp, "%s%d", HYBRID_PROC, wl->pub->unit);
--	if ((wl->proc_entry = create_proc_entry(tmp, 0644, NULL)) == NULL) {
-+
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
-+	wl->proc_entry = create_proc_entry(tmp, 0644, NULL);
-+	if (wl->proc_entry) {
-+		wl->proc_entry->read_proc = wl_proc_read;
-+		wl->proc_entry->write_proc = wl_proc_write;
-+		wl->proc_entry->data = wl;
-+	} 
-+#else
-+	wl->proc_entry = proc_create_data(tmp, 0644, NULL, &wl_proc_fops, wl);
-+#endif
-+	if (!wl->proc_entry) {
- 		WL_ERROR(("%s: create_proc_entry %s failed\n", __FUNCTION__, tmp));
- 		ASSERT(0);
- 		return -1;
- 	}
--	wl->proc_entry->read_proc = wl_proc_read;
--	wl->proc_entry->write_proc = wl_proc_write;
--	wl->proc_entry->data = wl;
- 	return 0;
- }
- #ifdef WLOFFLD
diff --git a/pkgs/os-specific/linux/broadcom-sta/netdev-3.17.patch b/pkgs/os-specific/linux/broadcom-sta/netdev-3.17.patch
new file mode 100644
index 00000000000..5a33cef7370
--- /dev/null
+++ b/pkgs/os-specific/linux/broadcom-sta/netdev-3.17.patch
@@ -0,0 +1,15 @@
+diff -Naur a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c
+--- a/src/wl/sys/wl_linux.c	2014-06-26 06:42:08.000000000 -0400
++++ b/src/wl/sys/wl_linux.c	2014-10-13 12:00:04.446122588 -0400
+@@ -1307,7 +1307,11 @@
+ 	dev->priv = priv_link;
+ #else
+ 
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 17, 0)
++	dev = alloc_netdev(sizeof(priv_link_t), intf_name, NET_NAME_UNKNOWN, ether_setup);
++#else
+ 	dev = alloc_netdev(sizeof(priv_link_t), intf_name, ether_setup);
++#endif
+ 	if (!dev) {
+ 		WL_ERROR(("wl%d: %s: alloc_netdev failed\n",
+ 			(wl->pub)?wl->pub->unit:wlif->subunit, __FUNCTION__));
diff --git a/pkgs/os-specific/linux/hostapd/default.nix b/pkgs/os-specific/linux/hostapd/default.nix
index a8988f0a452..f8081127d51 100644
--- a/pkgs/os-specific/linux/hostapd/default.nix
+++ b/pkgs/os-specific/linux/hostapd/default.nix
@@ -2,11 +2,11 @@
 stdenv.mkDerivation rec {
 
   name = "hostapd-${version}";
-  version = "2.1";
+  version = "2.3";
 
   src = fetchurl {
     url = "http://hostap.epitest.fi/releases/${name}.tar.gz";
-    sha256 = "121gpcs1ws7m2v8jk091jhmz3pm2xmhwkv96gqkyb4k0bgsi0waw";
+    sha256 = "1pxlkfj1r2k5lxph2x9l02jrn652b3whcfh6l604rbbghxv2nk69";
   };
 
   buildInputs = [ libnl openssl pkgconfig ];
diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix
index 52d003a2970..50bc1319198 100644
--- a/pkgs/os-specific/linux/kernel/patches.nix
+++ b/pkgs/os-specific/linux/kernel/patches.nix
@@ -60,17 +60,17 @@ rec {
   };
 
   grsecurity_stable = grsecPatch
-    { kversion  = "3.14.19";
-      revision  = "201409282024";
+    { kversion  = "3.14.20";
+      revision  = "201410062037";
       branch    = "stable";
-      sha256    = "05xjfllw6kx6y2cs0pwvlp5cpspqb7nf7kgfzk2z5gd04vc8ywqm";
+      sha256    = "0vs5s7xlnsrs5w59vhi57xhsnx3fryqfpvdgsfg2rxqnc1a5b3sp";
     };
 
   grsecurity_unstable = grsecPatch
-    { kversion  = "3.16.3";
-      revision  = "201409282025";
+    { kversion  = "3.16.4";
+      revision  = "201410062041";
       branch    = "test";
-      sha256    = "14vzg513xkqa71hp9drs2z9smamhxh87fxxyfjdbi3k93cbvkk22";
+      sha256    = "17g993gwjbj10gp2in534ycsv5hwggi5hrbqrsar1lm95m3d6pbc";
     };
 
   grsec_fix_path =
diff --git a/pkgs/os-specific/linux/lockdep/default.nix b/pkgs/os-specific/linux/lockdep/default.nix
index 1554715a613..6fa59e4ae5f 100644
--- a/pkgs/os-specific/linux/lockdep/default.nix
+++ b/pkgs/os-specific/linux/lockdep/default.nix
@@ -2,11 +2,12 @@
 
 stdenv.mkDerivation rec {
   name    = "lockdep-${version}";
-  version = "3.16.1";
+  version = "3.17";
+  fullver = "3.17.0"; # The library ver is 3.17.0, but the kernel is 3.17
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
-    sha256 = "0wbxqlmk7w9047ir51dsz6vi7ww0hpycgrb43mk2a189xaldsdxy";
+    sha256 = "0lb2yyh3j932789jq4gxx9xshgy6rfdnl3lm8yr43kaz7k4kw5gm";
   };
 
   preConfigure = "cd tools/lib/lockdep";
@@ -16,7 +17,7 @@ stdenv.mkDerivation rec {
     cp -R include/liblockdep $out/include
     make install DESTDIR=$out prefix=""
 
-    substituteInPlace $out/bin/lockdep --replace "./liblockdep.so" "$out/lib/liblockdep.so.$version"
+    substituteInPlace $out/bin/lockdep --replace "./liblockdep.so" "$out/lib/liblockdep.so.$fullver"
   '';
 
   meta = {
diff --git a/pkgs/os-specific/linux/lttng-modules/default.nix b/pkgs/os-specific/linux/lttng-modules/default.nix
index 4794cd8f96c..a520db33426 100644
--- a/pkgs/os-specific/linux/lttng-modules/default.nix
+++ b/pkgs/os-specific/linux/lttng-modules/default.nix
@@ -1,16 +1,19 @@
-{ stdenv, fetchurl, kernel }:
+{ stdenv, fetchgit, kernel }:
+
+assert stdenv.lib.versionAtLeast kernel.version "3.4";  # fails on 3.2
 
 stdenv.mkDerivation rec {
-  pname = "lttng-modules-2.4.1";
+  pname = "lttng-modules-${version}";
   name = "${pname}-${kernel.version}";
+  # Support for linux 3.16 and 3.17 was added just after the 2.5.0 release
+  version = "2.5.0-58-gbf2ba31"; # "git describe bf2ba318fff"
 
-  src = fetchurl {
-    url = "https://lttng.org/files/lttng-modules/${pname}.tar.bz2";
-    sha256 = "1qn1qm8lwqw9ri9wfkf6k3d58gl9rwffmpbpkwx21v1fw95zi92k";
+  src = fetchgit {
+    url = "https://github.com/lttng/lttng-modules.git";
+    sha256 = "0x70xp463g208rdz5b9b0wdwr2v8px1bwa589knvp4j7zi8d2gj9";
+    rev = "bf2ba318fff";
   };
 
-  patches = [ ./lttng-fix-build-error-on-linux-3.2.patch ];
-
   preConfigure = ''
     export KERNELDIR="${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
     export INSTALL_MOD_PATH="$out"
@@ -26,7 +29,6 @@ stdenv.mkDerivation rec {
     # TODO license = with licenses; [ lgpl21 gpl2 mit ];
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
-    broken = true;
   };
 
 }
diff --git a/pkgs/os-specific/linux/lttng-modules/lttng-fix-build-error-on-linux-3.2.patch b/pkgs/os-specific/linux/lttng-modules/lttng-fix-build-error-on-linux-3.2.patch
deleted file mode 100644
index dfe6d21be84..00000000000
--- a/pkgs/os-specific/linux/lttng-modules/lttng-fix-build-error-on-linux-3.2.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-When building against linux 3.2, we get this build error:
-
-  building /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/lttng-probe-ext3.o
-    CC [M]  /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/lttng-probe-ext3.o
-  In file included from /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/../instrumentation/events/lttng-module/../../../probes/lttng-events.h:759:0,
-                   from /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/../instrumentation/events/lttng-module/../../../probes/define_trace.h:148,
-                   from /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/../instrumentation/events/lttng-module/ext3.h:868,
-                   from /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/lttng-probe-ext3.c:48:
-  /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/../instrumentation/events/lttng-module/../../../probes/../instrumentation/events/lttng-module/ext3.h: In function '__event_probe__ext3__page_op':
-  /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/../instrumentation/events/lttng-module/../../../probes/../instrumentation/events/lttng-module/ext3.h:240:1: error: dereferencing pointer to incomplete type
-  /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/../instrumentation/events/lttng-module/../../../probes/../instrumentation/events/lttng-module/ext3.h:240:1: error: dereferencing pointer to incomplete type
-  /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/../instrumentation/events/lttng-module/../../../probes/../instrumentation/events/lttng-module/ext3.h:240:1: error: dereferencing pointer to incomplete type
-  /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/../instrumentation/events/lttng-module/../../../probes/../instrumentation/events/lttng-module/ext3.h: In function '__event_probe__ext3_invalidatepage':
-  /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/../instrumentation/events/lttng-module/../../../probes/../instrumentation/events/lttng-module/ext3.h:298:1: error: dereferencing pointer to incomplete type
-  /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/../instrumentation/events/lttng-module/../../../probes/../instrumentation/events/lttng-module/ext3.h:298:1: error: dereferencing pointer to incomplete type
-  /tmp/nix-build-lttng-modules-2.2.0.drv-0/lttng-modules-2.2.0/probes/../instrumentation/events/lttng-module/../../../probes/../instrumentation/events/lttng-module/ext3.h:298:1: error: dereferencing pointer to incomplete type
-
-because a check for existing ext3/*h files in the kernel build tree is skipped
-for linux < 3.4. Fix it by extending the ext3_dep_check thing to also be run
-when building against linux >= 3.2 (not only linux >= 3.4).
-
-diff -uNr lttng-modules-2.2.0.orig/probes/Makefile lttng-modules-2.2.0/probes/Makefile
---- lttng-modules-2.2.0.orig/probes/Makefile	2013-06-19 03:22:44.000000000 +0200
-+++ lttng-modules-2.2.0/probes/Makefile	2013-07-06 13:22:15.902957717 +0200
-@@ -59,7 +59,7 @@
- ext3_dep_check = $(wildcard $(ext3_dep))
- ext3 = $(shell \
- 	if [ $(VERSION) -ge 3 -a $(PATCHLEVEL) -ge 1 ] ; then \
--		if [ $(VERSION) -ge 3 -a $(PATCHLEVEL) -ge 4 -a \
-+		if [ $(VERSION) -ge 3 -a $(PATCHLEVEL) -ge 2 -a \
- 			-z "$(ext3_dep_check)" ] ; then \
- 			echo "warn" ; \
- 			exit ; \
diff --git a/pkgs/os-specific/linux/lxc/default.nix b/pkgs/os-specific/linux/lxc/default.nix
index 12305687c29..7827dc228b1 100644
--- a/pkgs/os-specific/linux/lxc/default.nix
+++ b/pkgs/os-specific/linux/lxc/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "lxc-1.0.3";
+  name = "lxc-1.0.6";
 
   src = fetchurl {
     url = "http://github.com/lxc/lxc/archive/${name}.tar.gz";
-    sha256 = "04k45jgj2i501yhm467s1a1yk7h7q0fjhspys158w1a2m1hari4z";
+    sha256 = "075i5h136b3dnf8nk6mpailz6i18yv1zcsj0jdpr9kg2i6d1ksia";
   };
 
   buildInputs = [ libcap apparmor perl docbook2x gnutls autoreconfHook pkgconfig ];
diff --git a/pkgs/os-specific/linux/netatop/default.nix b/pkgs/os-specific/linux/netatop/default.nix
index c77faa6a9e7..3d6b6faccca 100644
--- a/pkgs/os-specific/linux/netatop/default.nix
+++ b/pkgs/os-specific/linux/netatop/default.nix
@@ -1,5 +1,7 @@
 { stdenv, fetchurl, kernel, zlib }:
 
+assert stdenv.lib.versionOlder kernel.version "3.17";
+
 stdenv.mkDerivation {
   name = "netatop-${kernel.version}-0.3";
 
diff --git a/pkgs/os-specific/linux/pam_ldap/default.nix b/pkgs/os-specific/linux/pam_ldap/default.nix
index 2be869e73e3..1eee7dbdac2 100644
--- a/pkgs/os-specific/linux/pam_ldap/default.nix
+++ b/pkgs/os-specific/linux/pam_ldap/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
    
   src = fetchurl {
     url = "http://www.padl.com/download/${name}.tar.gz";
-    md5 = "c0ad81e9d9712ddc6599a6e7a1688778";
+    sha256 = "1l0mlwvas9dnsfcgbszbzq3bzhdkibn1c3x15fczq3i82faf5g5a";
   };
 
   preInstall = "
diff --git a/pkgs/os-specific/linux/procps-ng/default.nix b/pkgs/os-specific/linux/procps-ng/default.nix
index cd8a8eaec13..241d605ec13 100644
--- a/pkgs/os-specific/linux/procps-ng/default.nix
+++ b/pkgs/os-specific/linux/procps-ng/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, ncurses }:
 
 stdenv.mkDerivation {
-  name = "procps-3.3.9";
+  name = "procps-3.3.10";
 
   src = fetchurl {
-    url = mirror://sourceforge/procps-ng/procps-ng-3.3.9.tar.xz;
-    sha256 = "0qw69v7wx8hilwylyk9455k3h1xg8sc13vxh0pvdss7rml7wpw00";
+    url = mirror://sourceforge/procps-ng/procps-ng-3.3.10.tar.xz;
+    sha256 = "013z4rzy3p5m1zp6mmynpblv0c6zlcn91pw4k2vymz2djyc6ybm0";
   };
 
   buildInputs = [ ncurses ];
diff --git a/pkgs/os-specific/linux/spl/default.nix b/pkgs/os-specific/linux/spl/default.nix
index 944fb6ff554..7f1dad248e6 100644
--- a/pkgs/os-specific/linux/spl/default.nix
+++ b/pkgs/os-specific/linux/spl/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation {
     sha256 = "1qqzyj2if5wai4jiwml4i8s6v8k7hbi7jmiph800lhkk5j8s72l9";
   };
 
-  patches = [ ./install_prefix.patch ./const.patch ];
+  patches = [ ./install_prefix.patch ./const.patch ./kernel-3.16.patch ./kernel-3.17.patch ];
 
   buildInputs = [ perl autoconf automake libtool ];
 
diff --git a/pkgs/os-specific/linux/spl/git.nix b/pkgs/os-specific/linux/spl/git.nix
index d3ed285ccfe..93629495164 100644
--- a/pkgs/os-specific/linux/spl/git.nix
+++ b/pkgs/os-specific/linux/spl/git.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
     sha256 = "0mcivbddms8kbapbs9x6achqyvh5i6h1rd2b3jm8g5yjn0flc5gl";
   };
 
-  patches = [ ./install_prefix.patch ./const.patch ];
+  patches = [ ./install_prefix.patch ./const.patch ./kernel-3.16.patch ./kernel-3.17.patch ];
 
   buildInputs = [ perl autoconf automake libtool ];
 
diff --git a/pkgs/os-specific/linux/spl/kernel-3.16.patch b/pkgs/os-specific/linux/spl/kernel-3.16.patch
new file mode 100644
index 00000000000..25641c7a384
--- /dev/null
+++ b/pkgs/os-specific/linux/spl/kernel-3.16.patch
@@ -0,0 +1,34 @@
+From e3020723dc43af2bc22af0d68571a61daf9b44d0 Mon Sep 17 00:00:00 2001
+From: Turbo Fredriksson <turbo@bayour.com>
+Date: Sun, 14 Sep 2014 15:47:22 +0000
+Subject: [PATCH] Linux 3.16 compat: smp_mb__after_clear_bit()
+
+The smp_mb__{before,after}_clear_bit functions have been renamed
+smp_mb__{before,after}_atomic.  Rather than adding a compatibility
+function to handle this the code has been updated to use smp_wmb().
+
+This has the advantage of being a stable functionally equivalent
+interface.  On many architectures smp_mb__after_clear_bit() expands
+to smp_wmb().  Others might be able to do something slightly more
+efficient but this will be safe and correct on all of them.
+
+Signed-off-by: Turbo Fredriksson <turbo@bayour.com>
+Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
+Closes #386
+---
+ module/spl/spl-kmem.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/module/spl/spl-kmem.c b/module/spl/spl-kmem.c
+index 6de513e..79954eb 100644
+--- a/module/spl/spl-kmem.c
++++ b/module/spl/spl-kmem.c
+@@ -2365,7 +2365,7 @@ spl_kmem_cache_reap_now(spl_kmem_cache_t *skc, int count)
+ 
+ 	spl_slab_reclaim(skc, count, 1);
+ 	clear_bit(KMC_BIT_REAPING, &skc->skc_flags);
+-	smp_mb__after_clear_bit();
++	smp_wmb();
+ 	wake_up_bit(&skc->skc_flags, KMC_BIT_REAPING);
+ out:
+ 	atomic_dec(&skc->skc_ref);
diff --git a/pkgs/os-specific/linux/spl/kernel-3.17.patch b/pkgs/os-specific/linux/spl/kernel-3.17.patch
new file mode 100644
index 00000000000..f5ce2c8805d
--- /dev/null
+++ b/pkgs/os-specific/linux/spl/kernel-3.17.patch
@@ -0,0 +1,175 @@
+From 2fc44f66ec9b83069593d87cf311069458c0d5ae Mon Sep 17 00:00:00 2001
+From: Ned Bass <bass6@llnl.gov>
+Date: Fri, 8 Aug 2014 17:41:22 -0700
+Subject: [PATCH] Linux 3.17 compat: remove wait_on_bit action function
+
+Linux kernel 3.17 removes the action function argument from
+wait_on_bit().  Add autoconf test and compatibility macro to support
+the new interface.
+
+The former "wait_on_bit" interface required an 'action' function to
+be provided which does the actual waiting. There were over 20 such
+functions in the kernel, many of them identical, though most cases
+can be satisfied by one of just two functions: one which uses
+io_schedule() and one which just uses schedule().  This API change
+was made to consolidate all of those redundant wait functions.
+
+References: torvalds/linux@7431620
+
+Signed-off-by: Ned Bass <bass6@llnl.gov>
+Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
+Closes #378
+---
+ config/spl-build.m4         | 26 ++++++++++++++++++++++++++
+ include/linux/Makefile.am   |  1 +
+ include/linux/wait_compat.h | 45 +++++++++++++++++++++++++++++++++++++++++++++
+ include/sys/types.h         |  1 +
+ module/spl/spl-kmem.c       | 11 ++---------
+ 5 files changed, 75 insertions(+), 9 deletions(-)
+ create mode 100644 include/linux/wait_compat.h
+
+diff --git a/config/spl-build.m4 b/config/spl-build.m4
+index eef5233..2514d8c 100644
+--- a/config/spl-build.m4
++++ b/config/spl-build.m4
+@@ -94,6 +94,7 @@ AC_DEFUN([SPL_AC_CONFIG_KERNEL], [
+ 	SPL_AC_2ARGS_VFS_GETATTR
+ 	SPL_AC_USLEEP_RANGE
+ 	SPL_AC_KMEM_CACHE_ALLOCFLAGS
++	SPL_AC_WAIT_ON_BIT
+ ])
+ 
+ AC_DEFUN([SPL_AC_MODULE_SYMVERS], [
+@@ -2570,3 +2571,28 @@ AC_DEFUN([SPL_AC_KMEM_CACHE_ALLOCFLAGS], [
+ 		])
+ 	])
+ ])
++
++dnl #
++dnl # 3.17 API change,
++dnl # wait_on_bit() no longer requires an action argument. The former
++dnl # "wait_on_bit" interface required an 'action' function to be provided
++dnl # which does the actual waiting. There were over 20 such functions in the
++dnl # kernel, many of them identical, though most cases can be satisfied by one
++dnl # of just two functions: one which uses io_schedule() and one which just
++dnl # uses schedule().  This API change was made to consolidate all of those
++dnl # redundant wait functions.
++dnl #
++AC_DEFUN([SPL_AC_WAIT_ON_BIT], [
++	AC_MSG_CHECKING([whether wait_on_bit() takes an action])
++	SPL_LINUX_TRY_COMPILE([
++		#include <linux/wait.h>
++	],[
++		int (*action)(void *) = NULL;
++		wait_on_bit(NULL, 0, action, 0);
++	],[
++		AC_MSG_RESULT(yes)
++		AC_DEFINE(HAVE_WAIT_ON_BIT_ACTION, 1, [yes])
++	],[
++		AC_MSG_RESULT(no)
++	])
++])
+diff --git a/include/linux/Makefile.am b/include/linux/Makefile.am
+index 59f2ec5..ec7023d 100644
+--- a/include/linux/Makefile.am
++++ b/include/linux/Makefile.am
+@@ -17,6 +17,7 @@ KERNEL_H = \
+ 	$(top_srcdir)/include/linux/sysctl_compat.h \
+ 	$(top_srcdir)/include/linux/time_compat.h \
+ 	$(top_srcdir)/include/linux/uaccess_compat.h \
++	$(top_srcdir)/include/linux/wait_compat.h \
+ 	$(top_srcdir)/include/linux/zlib_compat.h
+ 
+ USER_H =
+diff --git a/include/linux/wait_compat.h b/include/linux/wait_compat.h
+new file mode 100644
+index 0000000..66f9a9a
+--- /dev/null
++++ b/include/linux/wait_compat.h
+@@ -0,0 +1,45 @@
++/*****************************************************************************\
++ *  Copyright (C) 2007-2014 Lawrence Livermore National Security, LLC.
++ *  Copyright (C) 2007 The Regents of the University of California.
++ *  Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
++ *  Written by Brian Behlendorf <behlendorf1@llnl.gov>.
++ *  UCRL-CODE-235197
++ *
++ *  This file is part of the SPL, Solaris Porting Layer.
++ *  For details, see <http://zfsonlinux.org/>.
++ *
++ *  The SPL is free software; you can redistribute it and/or modify it
++ *  under the terms of the GNU General Public License as published by the
++ *  Free Software Foundation; either version 2 of the License, or (at your
++ *  option) any later version.
++ *
++ *  The SPL is distributed in the hope that it will be useful, but WITHOUT
++ *  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
++ *  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
++ *  for more details.
++ *
++ *  You should have received a copy of the GNU General Public License along
++ *  with the SPL.  If not, see <http://www.gnu.org/licenses/>.
++\*****************************************************************************/
++
++#ifndef _SPL_WAIT_COMPAT_H
++#define _SPL_WAIT_COMPAT_H
++
++
++#ifndef HAVE_WAIT_ON_BIT_ACTION
++#  define spl_wait_on_bit(word, bit, mode) wait_on_bit(word, bit, mode)
++#else
++
++static inline int
++spl_bit_wait(void *word)
++{
++        schedule();
++        return 0;
++}
++
++#define spl_wait_on_bit(word, bit, mode)			\
++	wait_on_bit(word, bit, spl_bit_wait, mode)
++
++#endif /* HAVE_WAIT_ON_BIT_ACTION */
++
++#endif /* SPL_WAIT_COMPAT_H */
+diff --git a/include/sys/types.h b/include/sys/types.h
+index decb6bb..fcec0fa 100644
+--- a/include/sys/types.h
++++ b/include/sys/types.h
+@@ -43,6 +43,7 @@
+ #include <linux/zlib_compat.h>
+ #include <linux/mm_compat.h>
+ #include <linux/delay.h>
++#include <linux/wait_compat.h>
+ 
+ #ifndef HAVE_UINTPTR_T
+ typedef unsigned long			uintptr_t;
+diff --git a/module/spl/spl-kmem.c b/module/spl/spl-kmem.c
+index 0a9d775..6de513e 100644
+--- a/module/spl/spl-kmem.c
++++ b/module/spl/spl-kmem.c
+@@ -1900,13 +1900,6 @@ spl_cache_grow_wait(spl_kmem_cache_t *skc)
+ 	return !test_bit(KMC_BIT_GROWING, &skc->skc_flags);
+ }
+ 
+-static int
+-spl_cache_reclaim_wait(void *word)
+-{
+-	schedule();
+-	return 0;
+-}
+-
+ /*
+  * No available objects on any slabs, create a new slab.  Note that this
+  * functionality is disabled for KMC_SLAB caches which are backed by the
+@@ -1928,8 +1921,8 @@ spl_cache_grow(spl_kmem_cache_t *skc, int flags, void **obj)
+ 	 * then return so the local magazine can be rechecked for new objects.
+ 	 */
+ 	if (test_bit(KMC_BIT_REAPING, &skc->skc_flags)) {
+-		rc = wait_on_bit(&skc->skc_flags, KMC_BIT_REAPING,
+-		    spl_cache_reclaim_wait, TASK_UNINTERRUPTIBLE);
++		rc = spl_wait_on_bit(&skc->skc_flags, KMC_BIT_REAPING,
++		    TASK_UNINTERRUPTIBLE);
+ 		SRETURN(rc ? rc : -EAGAIN);
+ 	}
+ 
diff --git a/pkgs/os-specific/linux/sysstat/default.nix b/pkgs/os-specific/linux/sysstat/default.nix
index 7944f612fb0..69940ceb132 100644
--- a/pkgs/os-specific/linux/sysstat/default.nix
+++ b/pkgs/os-specific/linux/sysstat/default.nix
@@ -15,14 +15,8 @@ stdenv.mkDerivation rec {
     export PATH_CHKCONFIG=/no-such-program
     export BZIP=${bzip2}/bin/bzip2
     export SYSTEMCTL=systemctl
-    makeFlagsArray=(SYSCONFIG_DIR=$out/etc CHOWN=true IGNORE_MAN_GROUP=y CHOWN=true)
-    installFlagsArray=(SA_DIR=$TMPDIR/dummy)
-    # Note: --enable-install-cron actually installs systemd units.
-    configureFlagsArray+=(--with-systemdsystemunitdir=$out/lib/systemd/system --enable-install-cron)
-  '';
-
-  preInstall = ''
-    mkdir -p $out/lib/systemd/system
+    makeFlagsArray=(DESTDIR=$out SYSCONFIG_DIR=$out/etc IGNORE_MAN_GROUP=y CHOWN=true)
+    installTargets="install_base install_nls install_man"
   '';
 
   meta = {
diff --git a/pkgs/os-specific/linux/udisks/1-default.nix b/pkgs/os-specific/linux/udisks/1-default.nix
index 09731d54ab7..780eeb68d1d 100644
--- a/pkgs/os-specific/linux/udisks/1-default.nix
+++ b/pkgs/os-specific/linux/udisks/1-default.nix
@@ -3,14 +3,19 @@
 , libxslt, docbook_xsl, utillinux }:
 
 stdenv.mkDerivation rec {
-  name = "udisks-1.0.4";
+  name = "udisks-1.0.5";
 
   src = fetchurl {
     url = "http://hal.freedesktop.org/releases/${name}.tar.gz";
-    sha256 = "1xgqifddwaavmjc8c30i0mdffyirsld7c6qhfyjw7f9khwv8jjw5";
+    sha256 = "0wbg3jrv8limdgvcygf4dqin3y6d30y9pcmmk711vq571vmq5v7j";
   };
 
-  patches = [ ./purity.patch ./no-pci-db.patch ./cve-2014-0004.patch ];
+  patches = [ ./purity.patch ./no-pci-db.patch ];
+
+  preConfigure =
+    ''
+      configureFlagsArray+=(--with-systemdsystemunitdir=$out/lib/systemd/system)
+    '';
 
   postPatch =
     ''
diff --git a/pkgs/os-specific/linux/upstart/default.nix b/pkgs/os-specific/linux/upstart/default.nix
index 6ad255caef4..1b3366f86f8 100644
--- a/pkgs/os-specific/linux/upstart/default.nix
+++ b/pkgs/os-specific/linux/upstart/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
   
   src = fetchurl {
     url = "http://upstart.ubuntu.com/download/${version}/${name}.tar.gz";
-    md5 = "870920a75f8c13f3a3af4c35916805ac";
+    sha256 = "01w4ab6nlisz5blb0an1sxjkndwikr7sjp0cmz4lg00g3n7gahmx";
   };
 
   buildInputs = [ pkgconfig dbus libnih ];
diff --git a/pkgs/os-specific/linux/wpa_supplicant/default.nix b/pkgs/os-specific/linux/wpa_supplicant/default.nix
index 937f65089e9..988242e3c42 100644
--- a/pkgs/os-specific/linux/wpa_supplicant/default.nix
+++ b/pkgs/os-specific/linux/wpa_supplicant/default.nix
@@ -5,13 +5,13 @@
 assert readlineSupport -> readline != null;
 
 stdenv.mkDerivation rec {
-  version = "2.2";
+  version = "2.3";
 
   name = "wpa_supplicant-${version}";
 
   src = fetchurl {
     url = "http://hostap.epitest.fi/releases/${name}.tar.gz";
-    sha256 = "1vf8jc4yyksbxf86narvsli3vxfbm8nbnim2mdp66nd6d3yvin70";
+    sha256 = "0skvkl6c10ls4s48b2wmf47h9j1y40nlzxnzn8hyaw2j0prmpapa";
   };
 
   extraConfig =
@@ -31,6 +31,7 @@ stdenv.mkDerivation rec {
     echo "$extraConfig" >> .config
     cat .config
     substituteInPlace Makefile --replace /usr/local $out
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$(echo "${libnl}"/include/libnl*/)"
   '';
 
   buildInputs = [ openssl dbus_libs libnl ]
@@ -38,7 +39,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
 
-  patches = [ ./libnl.patch ];
+  patches = [];
 
   postInstall = ''
     mkdir -p $out/share/man/man5 $out/share/man/man8
diff --git a/pkgs/os-specific/linux/wpa_supplicant/libnl.patch b/pkgs/os-specific/linux/wpa_supplicant/libnl.patch
deleted file mode 100644
index 477f8dd55f6..00000000000
--- a/pkgs/os-specific/linux/wpa_supplicant/libnl.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -up wpa_supplicant-1.0-rc2/src/drivers/drivers.mak.foo wpa_supplicant-1.0-rc2/src/drivers/drivers.mak
---- wpa_supplicant-1.0-rc2/src/drivers/drivers.mak.foo	2012-03-02 16:11:43.176448714 -0600
-+++ wpa_supplicant-1.0-rc2/src/drivers/drivers.mak	2012-03-02 16:12:29.759866341 -0600
-@@ -48,7 +48,7 @@ NEED_RFKILL=y
- ifdef CONFIG_LIBNL32
-   DRV_LIBS += -lnl-3
-   DRV_LIBS += -lnl-genl-3
--  DRV_CFLAGS += -DCONFIG_LIBNL20 -I/usr/include/libnl3
-+  DRV_CFLAGS += -DCONFIG_LIBNL20 `pkg-config --cflags libnl-3.0`
- else
-   ifdef CONFIG_LIBNL_TINY
-     DRV_LIBS += -lnl-tiny
-
diff --git a/pkgs/servers/corosync/default.nix b/pkgs/servers/corosync/default.nix
new file mode 100644
index 00000000000..cd87e053055
--- /dev/null
+++ b/pkgs/servers/corosync/default.nix
@@ -0,0 +1,50 @@
+{ stdenv, fetchurl, makeWrapper, pkgconfig, nss, nspr, libqb
+, dbus ? null
+, librdmacm ? null, libibverbs ? null
+, libstatgrab ? null
+, net_snmp ? null
+}:
+
+with stdenv.lib;
+stdenv.mkDerivation rec {
+  name = "corosync-2.3.4";
+
+  src = fetchurl {
+    url = "http://build.clusterlabs.org/corosync/releases/${name}.tar.gz";
+    sha256 = "1m276b060fjghr93hdzfag81whi5ph65dc2ka8ln1igm3kxr7bix";
+  };
+
+  buildInputs = [
+    makeWrapper pkgconfig nss nspr libqb
+    dbus librdmacm libibverbs libstatgrab net_snmp
+  ];
+
+  # Remove when rdma libraries gain pkgconfig support
+  ibverbs_CFLAGS = optionalString (libibverbs != null)
+    "-I${libibverbs}/include/infiniband";
+  ibverbs_LIBS = optionalString (libibverbs != null) "-libverbs";
+  rdmacm_CFLAGS = optionalString (librdmacm != null)
+    "-I${librdmacm}/include/rdma";
+  rdmacm_LIBS = optionalString (librdmacm != null) "-lrdmacm";
+
+  configureFlags = [
+    "--enable-watchdog"
+    "--enable-qdevices"
+  ] ++ optional (dbus != null) "--enable-dbus"
+    ++ optional (librdmacm != null && libibverbs != null) "--enable-rdma"
+    ++ optional (libstatgrab != null) "--enable-monitoring"
+    ++ optional (net_snmp != null) "--enable-snmp";
+
+  postInstall = ''
+    wrapProgram $out/bin/corosync-blackbox \
+      --prefix PATH ":" "$out/sbin:${libqb}/sbin"
+  '';
+
+  meta = {
+    homepage = http://corosync.org/;
+    description = "a Group Communication System with features for implementing high availability within applications.";
+    license = licenses.bsd3;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ wkennington ];
+  };
+}
diff --git a/pkgs/servers/gpsd/default.nix b/pkgs/servers/gpsd/default.nix
index 62fbd3337f7..17325ccb291 100644
--- a/pkgs/servers/gpsd/default.nix
+++ b/pkgs/servers/gpsd/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
   buildPhase = ''
     patchShebangs .
     mkdir -p "$out"
-    sed -e "s|python_lib_dir = .*|python_lib_dir = \"$out/lib/${pythonFull.python.libPrefix}/site-packages\"|" -i SConstruct
+    sed -e "s|python_lib_dir = .*|python_lib_dir = \"$out/lib/${pythonFull.libPrefix}/site-packages\"|" -i SConstruct
     scons prefix="$out" leapfetch=no gpsd_user=${gpsdUser} gpsd_group=${gpsdGroup} \
         systemd=yes udevdir="$out/lib/udev" chrpath=no
   '';
diff --git a/pkgs/servers/http/jetty/default.nix b/pkgs/servers/http/jetty/default.nix
index d9166382be3..f691f362bb2 100644
--- a/pkgs/servers/http/jetty/default.nix
+++ b/pkgs/servers/http/jetty/default.nix
@@ -8,6 +8,6 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = mirror://sourceforge/jetty/jetty-5.1.4.zip;
-    md5 = "5d16bb1ea4a62dff93c0b7f7de00430f";
+    sha256 = "1lzvsrlybrf3zzzv4hi2v82qzpkfkib3xbwwlya8c08gf0360mrk";
   };
 }
diff --git a/pkgs/servers/http/thttpd/default.nix b/pkgs/servers/http/thttpd/default.nix
index 0bb3d96b37b..53a7f916c9a 100644
--- a/pkgs/servers/http/thttpd/default.nix
+++ b/pkgs/servers/http/thttpd/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "thttpd-${version}";
-  version = "2.25b";
+  version = "2.26";
 
   src = fetchurl {
     url = "http://acme.com/software/thttpd/${name}.tar.gz";
-    sha256 = "0q13sfkh6amn5wk0ccbmxq3mnhlm8g5pnyk910fa5xngn449nw87";
+    sha256 = "1dybhpyfrly0m285cdn9jah397bqzylrwzi26gin2h451z3gdcqm";
   };
 
   prePatch = ''
diff --git a/pkgs/servers/mail/dovecot/2.2.x.nix b/pkgs/servers/mail/dovecot/2.2.x.nix
index 0c12b6ba3db..ebae8a9b072 100644
--- a/pkgs/servers/mail/dovecot/2.2.x.nix
+++ b/pkgs/servers/mail/dovecot/2.2.x.nix
@@ -2,14 +2,14 @@
 , inotifyTools, clucene_core_2, sqlite }:
 
 stdenv.mkDerivation rec {
-  name = "dovecot-2.2.13";
+  name = "dovecot-2.2.14";
 
   buildInputs = [perl openssl bzip2 zlib openldap clucene_core_2 sqlite]
     ++ stdenv.lib.optionals (stdenv.isLinux) [ systemd pam inotifyTools ];
 
   src = fetchurl {
     url = "http://dovecot.org/releases/2.2/${name}.tar.gz";
-    sha256 = "1klxbnlgqvq4v2inp18yv3x04xp0vf8nr67ci1k3yww1mb9g6g0k";
+    sha256 = "1w7bd2yhzk4jg1b5946r84yx10jrj7scr0zyl4li21660nhhzb38";
   };
 
   preConfigure = ''
diff --git a/pkgs/servers/memcached/default.nix b/pkgs/servers/memcached/default.nix
index b45bef0cce8..74033be8cf8 100644
--- a/pkgs/servers/memcached/default.nix
+++ b/pkgs/servers/memcached/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, cyrus_sasl, libevent}:
 
 stdenv.mkDerivation rec {
-  name = "memcached-1.4.17";
+  name = "memcached-1.4.20";
 
   src = fetchurl {
     url = "http://memcached.org/files/${name}.tar.gz";
-    sha1 = "2b4fc706d39579cf355e3358cfd27b44d40bd79c";
+    sha256 = "0620llasj8xgffk6hk2ml15z0c5i34455wwg60i1a2zdir023l95";
   };
 
   buildInputs = [cyrus_sasl libevent];
diff --git a/pkgs/servers/monitoring/net-snmp/default.nix b/pkgs/servers/monitoring/net-snmp/default.nix
index 30317d25cff..9e3ebc3795d 100644
--- a/pkgs/servers/monitoring/net-snmp/default.nix
+++ b/pkgs/servers/monitoring/net-snmp/default.nix
@@ -26,7 +26,8 @@ stdenv.mkDerivation rec {
       "--with-persistent-directory=/var/lib/net-snmp"
     ];
 
-  buildInputs = [ autoreconfHook file openssl perl unzip ];
+  buildInputs = [ autoreconfHook file perl unzip ];
+  propagatedBuildInputs = [ openssl ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/servers/mpd/default.nix b/pkgs/servers/mpd/default.nix
index c8a6434cac3..1621a494c7a 100644
--- a/pkgs/servers/mpd/default.nix
+++ b/pkgs/servers/mpd/default.nix
@@ -27,10 +27,10 @@ let
   mkFlag = c: f: if c then "--enable-${f}" else "--disable-${f}";
 
 in stdenv.mkDerivation rec {
-  name = "mpd-0.18.12";
+  name = "mpd-0.18.16";
   src = fetchurl {
-    url    = "http://www.musicpd.org/download/mpd/stable/${name}.tar.gz";
-    sha256 = "09qphjcpqcs2jn5d8ga1skhif2mj5qk1ix9li76z2gyq3lf0rpz6";
+    url    = "http://www.musicpd.org/download/mpd/0.18/${name}.tar.gz";
+    sha256 = "0xpmc70ccp0s2s10vsi4hkijiv497dy42a7g225y77axp5ncf364";
   };
 
   buildInputs = [ pkgconfig glib ]
@@ -92,7 +92,7 @@ in stdenv.mkDerivation rec {
     description = "A flexible, powerful daemon for playing music";
     homepage    = http://mpd.wikia.com/wiki/Music_Player_Daemon_Wiki;
     license     = licenses.gpl2;
-    maintainers = with maintainers; [ astsmtl ];
+    maintainers = with maintainers; [ astsmtl fuuzetsu ];
     platforms   = platforms.unix;
 
     longDescription = ''
diff --git a/pkgs/servers/nosql/redis/default.nix b/pkgs/servers/nosql/redis/default.nix
index 1a44aa6a804..e733ef3d009 100644
--- a/pkgs/servers/nosql/redis/default.nix
+++ b/pkgs/servers/nosql/redis/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "redis-2.8.9";
+  name = "redis-2.8.17";
 
   src = fetchurl {
     url = "http://download.redis.io/releases/${name}.tar.gz";
-    sha256 = "7834c37f2ff186c46aef8e4a066dfbf1d6772a285aa31c19c58162f264f1007f";
+    sha256 = "19rnwapbsvfhd9pwdjdshrpqimf1ms0pzakvgnjrywkijmiwrisk";
   };
 
   makeFlags = "PREFIX=$(out)";
diff --git a/pkgs/servers/openafs-client/I5558c64760e4cad2bd3dc648067d81020afc69b6.patch b/pkgs/servers/openafs-client/I5558c64760e4cad2bd3dc648067d81020afc69b6.patch
new file mode 100644
index 00000000000..d8f922aba37
--- /dev/null
+++ b/pkgs/servers/openafs-client/I5558c64760e4cad2bd3dc648067d81020afc69b6.patch
@@ -0,0 +1,48 @@
+From: Marc Dionne <marc.dionne@your-file-system.com>
+Date: Thu, 25 Sep 2014 10:52:12 +0000 (-0300)
+Subject: Linux 3.17: Deal with d_splice_alias errors
+X-Git-Url: http://git.openafs.org/?p=openafs.git;a=commitdiff_plain;h=af7f1d59135526ea584a4403b6400106dc92a992;hp=880401913d6190054bb0511093606a206b16326c
+
+Linux 3.17: Deal with d_splice_alias errors
+
+In 3.17 the logic in d_splice_alias has changed.  Of interest to
+us is the fact that it will now return an EIO error if it finds
+an existing connected directory for the dentry, where it would
+previously have added a new alias for it.  As a result the end
+user can get EIO errors when accessing any file in a volume
+if the volume was first accessed through a different path (ex:
+RO path vs RW path).
+
+This commit just restores the old behaviour, adding the directory
+alias manually in the error case, which is what older versions
+of d_splice_alias used to do.
+
+Change-Id: I5558c64760e4cad2bd3dc648067d81020afc69b6
+---
+
+diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c
+index e03187f..0cdd9e0 100644
+--- a/src/afs/LINUX/osi_vnodeops.c
++++ b/src/afs/LINUX/osi_vnodeops.c
+@@ -1593,9 +1593,18 @@ afs_linux_lookup(struct inode *dip, struct dentry *dp)
+     /* It's ok for the file to not be found. That's noted by the caller by
+      * seeing that the dp->d_inode field is NULL.
+      */
+-    if (!code || code == ENOENT)
+-	return newdp;
+-    else 
++    if (!code || code == ENOENT) {
++	/*
++	 * d_splice_alias can return an error (EIO) if there is an existing
++	 * connected directory alias for this dentry.
++	 */
++	if (!IS_ERR(newdp))
++	    return newdp;
++	else {
++	    d_add(dp, ip);
++	    return NULL;
++	}
++    } else
+ 	return ERR_PTR(afs_convert_code(code));
+ }
+ 
diff --git a/pkgs/servers/openafs-client/If1fd9d27f795dee4b5aa2152dd09e0540d643a69.patch b/pkgs/servers/openafs-client/If1fd9d27f795dee4b5aa2152dd09e0540d643a69.patch
new file mode 100644
index 00000000000..f8844915f85
--- /dev/null
+++ b/pkgs/servers/openafs-client/If1fd9d27f795dee4b5aa2152dd09e0540d643a69.patch
@@ -0,0 +1,55 @@
+From 880401913d6190054bb0511093606a206b16326c Mon Sep 17 00:00:00 2001
+From: Marc Dionne <marc.dionne@your-file-system.com>
+Date: Tue, 9 Sep 2014 10:39:55 -0300
+Subject: [PATCH] Linux 3.17: No more typedef for ctl_table
+
+The typedef has been removed so we need to use the structure
+directly.
+
+Note that the API for register_sysctl_table has also changed
+with 3.17, but it reverted back to a form that existed
+before and the configure tests handle it correctly.
+
+Change-Id: If1fd9d27f795dee4b5aa2152dd09e0540d643a69
+---
+ src/afs/LINUX/osi_sysctl.c |    4 ++--
+ src/cf/linux-test4.m4      |    2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/afs/LINUX/osi_sysctl.c b/src/afs/LINUX/osi_sysctl.c
+index a8f7fac..834e8ad 100644
+--- a/src/afs/LINUX/osi_sysctl.c
++++ b/src/afs/LINUX/osi_sysctl.c
+@@ -34,7 +34,7 @@ extern afs_int32 afs_pct2;
+ #ifdef CONFIG_SYSCTL
+ static struct ctl_table_header *afs_sysctl = NULL;
+ 
+-static ctl_table afs_sysctl_table[] = {
++static struct ctl_table afs_sysctl_table[] = {
+     {
+ #if defined(STRUCT_CTL_TABLE_HAS_CTL_NAME)
+ #if defined(CTL_UNNUMBERED)
+@@ -234,7 +234,7 @@ static ctl_table afs_sysctl_table[] = {
+     {0}
+ };
+ 
+-static ctl_table fs_sysctl_table[] = {
++static struct ctl_table fs_sysctl_table[] = {
+     {
+ #if defined(STRUCT_CTL_TABLE_HAS_CTL_NAME)
+ #if defined(CTL_UNNUMBERED)
+diff --git a/src/cf/linux-test4.m4 b/src/cf/linux-test4.m4
+index dad91d9..228b491 100644
+--- a/src/cf/linux-test4.m4
++++ b/src/cf/linux-test4.m4
+@@ -395,7 +395,7 @@ AC_DEFUN([LINUX_REGISTER_SYSCTL_TABLE_NOFLAG], [
+   AC_CHECK_LINUX_BUILD([whether register_sysctl_table has an insert_at_head argument],
+ 		       [ac_cv_linux_register_sysctl_table_noflag],
+ 		       [#include <linux/sysctl.h>],
+-		       [ctl_table *t; register_sysctl_table (t);],
++		       [struct ctl_table *t; register_sysctl_table (t);],
+ 		       [REGISTER_SYSCTL_TABLE_NOFLAG],
+ 		       [define if register_sysctl_table has no insert_at head flag],
+ 		       [])
+-- 
+1.7.1
diff --git a/pkgs/servers/openafs-client/default.nix b/pkgs/servers/openafs-client/default.nix
index 4b5eb80b974..4f4ec5cbc06 100644
--- a/pkgs/servers/openafs-client/default.nix
+++ b/pkgs/servers/openafs-client/default.nix
@@ -14,6 +14,8 @@ stdenv.mkDerivation {
   patches = [ 
    ./f3c0f74186f4a323ffc5f125d961fe384d396cac.patch
    ./ae86b07f827d6f3e2032a412f5f6cb3951a27d2d.patch
+   ./I5558c64760e4cad2bd3dc648067d81020afc69b6.patch
+   ./If1fd9d27f795dee4b5aa2152dd09e0540d643a69.patch
   ];
 
   buildInputs = [ autoconf automake flex yacc ncurses perl which ];
diff --git a/pkgs/servers/search/elasticsearch/default.nix b/pkgs/servers/search/elasticsearch/default.nix
index 1cac6642484..29ffee2f73a 100644
--- a/pkgs/servers/search/elasticsearch/default.nix
+++ b/pkgs/servers/search/elasticsearch/default.nix
@@ -3,11 +3,11 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "elasticsearch-1.3.2";
+  name = "elasticsearch-1.3.4";
 
   src = fetchurl {
     url = "https://download.elasticsearch.org/elasticsearch/elasticsearch/${name}.tar.gz";
-    sha256 = "191fk7pbsxvihwj86b935d5b9n55h6q9gnpql68vfzjgvfjd09bm";
+    sha256 = "0c6klwag17npmr1f0zv4syn0d9ir3zm595x3vb42ni4b72f65bqq";
   };
 
   patches = [ ./es-home.patch ];
diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix
index 0efdd542fa4..04f82022373 100644
--- a/pkgs/servers/sql/mariadb/default.nix
+++ b/pkgs/servers/sql/mariadb/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "mariadb-${version}";
-  version = "10.0.13";
+  version = "10.0.14";
 
   src = fetchurl {
     url    = "https://downloads.mariadb.org/interstitial/mariadb-${version}/source/mariadb-${version}.tar.gz";
-    sha256 = "039wz89vs03a27anpshj5xaqknm7cqi7mrypvwingqkq26ns0mhs";
+    sha256 = "07g3w841q8qw0mwi6grk65a2iky9x3axpxkb4c2a72i7pd7cl3mc";
   };
 
   buildInputs = [ cmake ncurses openssl bison boost libxml2 judy libevent groff ]
diff --git a/pkgs/servers/sql/postgresql/8.4.x.nix b/pkgs/servers/sql/postgresql/8.4.x.nix
index 4807052478c..b4611a4bb10 100644
--- a/pkgs/servers/sql/postgresql/8.4.x.nix
+++ b/pkgs/servers/sql/postgresql/8.4.x.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, zlib, ncurses, readline }:
 
-let version = "8.4.21"; in
+let version = "8.4.22"; in
 
 stdenv.mkDerivation rec {
   name = "postgresql-${version}";
 
   src = fetchurl {
     url = "mirror://postgresql/source/v${version}/${name}.tar.bz2";
-    sha256 = "388f67e59f2a16c27e84f50656f5d755adf3d0a883138366d091aa0c727c1e2c";
+    sha256 = "09iqr9sldiq7jz1rdnywp2wv36lxy5m8kch3vpchd1s4fz75c7aw";
   };
 
   buildInputs = [ zlib ncurses readline ];
diff --git a/pkgs/servers/xmpp/prosody/default.nix b/pkgs/servers/xmpp/prosody/default.nix
new file mode 100644
index 00000000000..d8d44ec8a4c
--- /dev/null
+++ b/pkgs/servers/xmpp/prosody/default.nix
@@ -0,0 +1,52 @@
+{ stdenv, fetchurl, lua5, luasocket, luasec, luaexpat, luafilesystem, luabitop, libidn, openssl, makeWrapper, fetchhg }:
+
+let
+  libs        = [ luasocket luasec luaexpat luafilesystem luabitop ];
+  getPath     = lib : type : "${lib}/lib/lua/${lua5.luaversion}/?.${type};${lib}/share/lua/${lua5.luaversion}/?.${type}";
+  getLuaPath  = lib : getPath lib "lua";
+  getLuaCPath = lib : getPath lib "so";
+  luaPath     = stdenv.lib.concatStringsSep ";" (map getLuaPath  libs);
+  luaCPath    = stdenv.lib.concatStringsSep ";" (map getLuaCPath libs);
+in
+
+stdenv.mkDerivation rec {
+  version = "0.9.5";
+  name = "prosody-${version}";
+  src = fetchurl {
+    url = "http://prosody.im/downloads/source/${name}.tar.gz";
+    sha256 = "1gcvmdsyx3fjiqybgkp8vr847p9rlfz42lywxpph3jc14yh63z3n";
+  };
+
+  communityModules = fetchhg {
+    url = "http://prosody-modules.googlecode.com/hg/";
+    rev = "4b55110b0aa8";
+    sha256 = "0010x2rl9f9ihy2nwqan2jdlz25433srj2zna1xh10490mc28hij";
+  };
+
+  buildInputs = [ lua5 luasocket luasec luaexpat luabitop libidn openssl makeWrapper ];
+
+  configureFlags = [
+    "--ostype=linux"
+    "--with-lua-include=${lua5}/include"
+    "--with-lua=${lua5}"
+  ];
+
+  postInstall = ''
+      cp $communityModules/mod_websocket/mod_websocket.lua $out/lib/prosody/modules/
+      wrapProgram $out/bin/prosody \
+        --set LUA_PATH '"${luaPath};"' \
+        --set LUA_CPATH '"${luaCPath};"'
+      wrapProgram $out/bin/prosodyctl \
+        --add-flags '--config "/etc/prosody/prosody.cfg.lua"' \
+        --set LUA_PATH '"${luaPath};"' \
+        --set LUA_CPATH '"${luaCPath};"'
+    '';
+
+  meta = {
+    description = "Open-source XMPP application server written in Lua";
+    license = stdenv.lib.licenses.mit;
+    homepage = http://www.prosody.im;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.flosse ];
+  };
+}
diff --git a/pkgs/shells/fish/default.nix b/pkgs/shells/fish/default.nix
index 03ecc290d14..d165f2f386a 100644
--- a/pkgs/shells/fish/default.nix
+++ b/pkgs/shells/fish/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "fish-${version}";
-  version = "2.1.0";
+  version = "2.1.1";
 
   src = fetchurl {
     url = "http://fishshell.com/files/${version}/${name}.tar.gz";
-    sha256 = "0i7h3hx8iszli3d4kphw79sz9m07f2lc2c9hr9smdps5s7wpllmg";
+    sha256 = "b7e4d3c3d55fc3859edcb20462fcf0d14ab26e920eddcd503072e8105284d924";
   };
 
   buildInputs = [ ncurses ];
diff --git a/pkgs/shells/zsh/default.nix b/pkgs/shells/zsh/default.nix
index 349d1719e56..9887e8f1b6f 100644
--- a/pkgs/shells/zsh/default.nix
+++ b/pkgs/shells/zsh/default.nix
@@ -2,11 +2,11 @@
 
 let
 
-  version = "5.0.6";
+  version = "5.0.7";
 
   documentation = fetchurl {
     url = "mirror://sourceforge/zsh/zsh-${version}-doc.tar.bz2";
-    sha256 = "1mngi85q56szzlrdzv60vg7wl03lih8vlnl800gwr0i6d1laawxj";
+    sha256 = "1wgw16r7z6k3mbr94mwfc8f13yc4ds2d9qk41hvsiv6rm5dnds23";
   };
 
 in
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://sourceforge/zsh/zsh-${version}.tar.bz2";
-    sha256 = "0ic86y35v82d87ixjzdb6zrnzf002b7gn573jnva6cqm2jdm1jl4";
+    sha256 = "1cq4cz7ngvmbg399dva3g6njcz5d92gprmyi2swqc0klh7g2fkjl";
   };
 
   buildInputs = [ ncurses coreutils pcre ];
diff --git a/pkgs/tools/X11/xmacro/default.nix b/pkgs/tools/X11/xmacro/default.nix
index 12bb2903107..ca010063cb1 100644
--- a/pkgs/tools/X11/xmacro/default.nix
+++ b/pkgs/tools/X11/xmacro/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = mirror://sourceforge/xmacro/xmacro-pre0.3-20000911.tar.gz;
-    md5 = "d2956b82f3d5380e58a75ccc721fb746";
+    sha256 = "04gzgxhp8bx98zrcvmsm7mn72r9g9588skbf64cqvkp4yz6kfqhb";
   };
 
   preBuild = ''
diff --git a/pkgs/tools/archivers/atool/default.nix b/pkgs/tools/archivers/atool/default.nix
index 1db7a7a42eb..7e2934a8f88 100644
--- a/pkgs/tools/archivers/atool/default.nix
+++ b/pkgs/tools/archivers/atool/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, perl}:
+{stdenv, fetchurl, perl, bash}:
 
 stdenv.mkDerivation rec {
   name = "atool-0.39.0";
@@ -8,6 +8,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ perl ];
+  configureScript = "${bash}/bin/bash configure";
 
   meta = {
     homepage = http://www.nongnu.org/atool;
diff --git a/pkgs/tools/archivers/cromfs/default.nix b/pkgs/tools/archivers/cromfs/default.nix
index fdba02d12b7..342c975fa1f 100644
--- a/pkgs/tools/archivers/cromfs/default.nix
+++ b/pkgs/tools/archivers/cromfs/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, fuse, perl }:
 
 stdenv.mkDerivation rec {
-  name = "cromfs-1.5.10.1";
+  name = "cromfs-1.5.10.2";
   
   src = fetchurl {
     url = "http://bisqwit.iki.fi/src/arch/${name}.tar.bz2";
-    sha256 = "0fg6vnbxr5jk4gqj31yqc9fj1gp3bj955qhxav28nvc6sbql7ac2";
+    sha256 = "0xy2x1ws1qqfp7hfj6yzm80zhrxzmhn0w2yns77im1lmd2h18817";
   };
 
   patchPhase = ''sed -i 's@/bin/bash@/bin/sh@g' configure'';
diff --git a/pkgs/tools/audio/mpdcron/default.nix b/pkgs/tools/audio/mpdcron/default.nix
index 61553566d6c..6a59fc49a95 100644
--- a/pkgs/tools/audio/mpdcron/default.nix
+++ b/pkgs/tools/audio/mpdcron/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchgit, autoconf, automake, libtool, pkgconfig, glib, libdaemon
-, mpd_clientlib, curl, sqlite, ruby, rubyLibs, libnotify }:
+, mpd_clientlib, curl, sqlite, ruby, rubyLibs, libnotify, haskellPackages }:
 
 stdenv.mkDerivation rec {
   version = "20130809";
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ autoconf automake libtool pkgconfig glib libdaemon
+    [ autoconf automake libtool pkgconfig glib libdaemon haskellPackages.pandoc
       mpd_clientlib curl sqlite ruby rubyLibs.nokogiri libnotify ];
 
   preConfigure = ''
diff --git a/pkgs/tools/bluetooth/obexd/default.nix b/pkgs/tools/bluetooth/obexd/default.nix
index 47db0877dd2..f900a81caa0 100644
--- a/pkgs/tools/bluetooth/obexd/default.nix
+++ b/pkgs/tools/bluetooth/obexd/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, glib, dbus, openobex, bluez, libical }:
    
 stdenv.mkDerivation rec {
-  name = "obexd-0.47";
+  name = "obexd-0.48";
    
   src = fetchurl {
-    url = "mirror://kernel/linux/bluetooth/${name}.tar.gz";
-    sha256 = "15zw008098qr5az9y1c010yv8gkw1f6hi3mnfcvpmwxwh23kfh4i";
+    url = "mirror://kernel/linux/bluetooth/${name}.tar.bz2";
+    sha256 = "1i20dnibvnq9lnkkhajr5xx3kxlwf9q5c4jm19kyb0q1klzgzlb8";
   };
 
   buildInputs = [ glib dbus.libs openobex bluez libical ];
diff --git a/pkgs/tools/cd-dvd/xorriso/default.nix b/pkgs/tools/cd-dvd/xorriso/default.nix
index 218ea9a1e7f..c5595fab2e0 100644
--- a/pkgs/tools/cd-dvd/xorriso/default.nix
+++ b/pkgs/tools/cd-dvd/xorriso/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, libcdio, zlib, bzip2, readline, acl, attr }:
 
 stdenv.mkDerivation rec {
-  name = "xorriso-1.3.4";
+  name = "xorriso-1.3.8";
 
   src = fetchurl {
     url = "mirror://gnu/xorriso/${name}.tar.gz";
-    sha256 = "0wvxbvkpdydcbmqi9xz7nv8cna6vp9726ahmmxxyx56cz4xifr4x";
+    sha256 = "0zhhj9lr9z7hnb2alac54mc28w1l0mbanphhpmy3ylsi8rih84lh";
   };
 
   doCheck = true;
diff --git a/pkgs/tools/compression/gzip/default.nix b/pkgs/tools/compression/gzip/default.nix
index cc304d9aa1e..196fce0d98a 100644
--- a/pkgs/tools/compression/gzip/default.nix
+++ b/pkgs/tools/compression/gzip/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, less }:
+{ stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
   name = "gzip-1.6";
diff --git a/pkgs/tools/compression/lzip/default.nix b/pkgs/tools/compression/lzip/default.nix
index 2c6907fa373..b3d407c98ef 100644
--- a/pkgs/tools/compression/lzip/default.nix
+++ b/pkgs/tools/compression/lzip/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, texinfo }:
 
 stdenv.mkDerivation rec {
-  name = "lzip-1.15";
+  name = "lzip-1.16";
 
   buildInputs = [ texinfo ];
 
   src = fetchurl {
     url = "mirror://savannah/lzip/${name}.tar.gz";
-    sha256 = "1dh5vmj5apizfawnsm50y7z064yx7cz3313przph16gwd3dgrlvw";
+    sha256 = "0l9724rw1l3hg2ldr3n7ihqich4m9nc6y7l302bvdj4jmxdw530j";
   };
 
   configureFlags = "CPPFLAGS=-DNDEBUG CFLAGS=-O3 CXXFLAGS=-O3";
diff --git a/pkgs/tools/compression/zdelta/default.nix b/pkgs/tools/compression/zdelta/default.nix
index a07deac4148..db47cf71910 100644
--- a/pkgs/tools/compression/zdelta/default.nix
+++ b/pkgs/tools/compression/zdelta/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   builder = ./builder.sh;
   src = fetchurl {
     url = "${meta.homepage}/downloads/${name}.tar.gz";
-    md5 = "c69583a64f42f69a39e297d0d27d77e5";
+    sha256 = "0k6y0r9kv5qiglnr2j4a0yvfynjkvm0pyv8ly28j0pr3w6rbxrh3";
   };
 
   meta = {
diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix
index c68eaab14d1..7edf0f37e05 100644
--- a/pkgs/tools/filesystems/ceph/default.nix
+++ b/pkgs/tools/filesystems/ceph/default.nix
@@ -14,18 +14,15 @@ let
 in
 stdenv.mkDerivation rec {
   name="ceph-${version}";
-  version="0.85";
+  version="0.86";
 
   src = fetchgit {
     url = "git://github.com/ceph/ceph.git";
-    rev = "refs/tags/v0.85";
-    sha256 = "0g98cgrs3gfsc8azg3k0n61bgna2w906qm69j4qbjkb61l83ld1z";
+    rev = "refs/tags/v${version}";
+    sha256 = "19bl96z97kvsrliwid4g6dl7s3i0nw5z9nmg964i7jdwlsl98cfj";
   };
 
-  patches = [
-    ./0001-Cleanup-boost-optionals.patch # Remove in 0.86
-    ./0001-Makefile-env-Don-t-force-sbin.patch
-  ];
+  patches = [ ./0001-Makefile-env-Don-t-force-sbin.patch ];
 
   nativeBuildInputs = [ autoconf automake makeWrapper pkgconfig libtool which ];
   buildInputs = [
diff --git a/pkgs/tools/filesystems/squashfs/default.nix b/pkgs/tools/filesystems/squashfs/default.nix
index bec5592ccae..facaac8cea7 100644
--- a/pkgs/tools/filesystems/squashfs/default.nix
+++ b/pkgs/tools/filesystems/squashfs/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, zlib, xz }:
 
 stdenv.mkDerivation rec {
-  name = "squashfs-4.2";
+  name = "squashfs-4.3";
 
   src = fetchurl {
-    url = mirror://sourceforge/squashfs/squashfs4.2.tar.gz;
-    sha256 = "15if08j0pl5hmnz9pwshwrp4fjp0jsm9larjxmjvdnr2m5d1kq6r";
+    url = mirror://sourceforge/squashfs/squashfs4.3.tar.gz;
+    sha256 = "1xpklm0y43nd9i6jw43y2xh5zvlmj9ar2rvknh0bh7kv8c95aq0d";
   };
 
   buildInputs = [ zlib xz ];
diff --git a/pkgs/tools/graphics/graphviz/2.0.nix b/pkgs/tools/graphics/graphviz/2.0.nix
index 07fbbc967d9..fcc06871ef1 100644
--- a/pkgs/tools/graphics/graphviz/2.0.nix
+++ b/pkgs/tools/graphics/graphviz/2.0.nix
@@ -27,5 +27,6 @@ stdenv.mkDerivation rec {
   meta = {
     description = "A program for visualising graphs";
     homepage = http://www.graphviz.org/;
+    branch = "2.0";
   };
 }
diff --git a/pkgs/tools/graphics/graphviz/2.32.nix b/pkgs/tools/graphics/graphviz/2.32.nix
index 0a86a892417..80179539701 100644
--- a/pkgs/tools/graphics/graphviz/2.32.nix
+++ b/pkgs/tools/graphics/graphviz/2.32.nix
@@ -57,5 +57,6 @@ stdenv.mkDerivation rec {
     hydraPlatforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
     maintainers = with stdenv.lib.maintainers; [ simons bjornfor raskin ];
     inherit version;
+    branch = "2.32";
   };
 }
diff --git a/pkgs/tools/graphics/logstalgia/default.nix b/pkgs/tools/graphics/logstalgia/default.nix
index 9ab36b582eb..25a2f60c48f 100644
--- a/pkgs/tools/graphics/logstalgia/default.nix
+++ b/pkgs/tools/graphics/logstalgia/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   name = "logstalgia-${version}";
-  version = "1.0.5";
+  version = "1.0.6";
 
   src = fetchurl {
     url = "https://github.com/acaudwell/Logstalgia/releases/download/${name}/${name}.tar.gz";
-    sha256 = "0hm4fcakz05j95kb9f14qpspb31xi07paka390dz3g5k980hm9sc";
+    sha256 = "0d2zhn0q26rv2nb3hdbg0mb69l66g8pkys5is6rb0r6f5is986x8";
   };
 
   buildInputs = [ glew SDL ftgl pkgconfig libpng libjpeg pcre SDL_image mesa boost
diff --git a/pkgs/tools/graphics/optipng/default.nix b/pkgs/tools/graphics/optipng/default.nix
index 1984ab7b1de..bc1f86e3661 100644
--- a/pkgs/tools/graphics/optipng/default.nix
+++ b/pkgs/tools/graphics/optipng/default.nix
@@ -5,11 +5,11 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "optipng-0.7.4";
+  name = "optipng-0.7.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/optipng/${name}.tar.gz";
-    sha256 = "1zrphbz17rhhfl1l95q5s979rrhifbwczl2xj1fdrnq5jid5s2sj";
+    sha256 = "17b197437z5wn29llpwklk7ihgx8bhc913gvjf4zyb81idwlprbl";
   };
 
   buildInputs = [ libpng ];
diff --git a/pkgs/tools/graphics/transfig/default.nix b/pkgs/tools/graphics/transfig/default.nix
index cf3722bbf1f..f540029cbc7 100644
--- a/pkgs/tools/graphics/transfig/default.nix
+++ b/pkgs/tools/graphics/transfig/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   builder = ./builder.sh;
   src = fetchurl {
     url = ftp://ftp.tex.ac.uk/pub/archive/graphics/transfig/transfig.3.2.4.tar.gz;
-    md5 = "742de0f7a3cae74d247bbd0c70dd9dd7";
+    sha256 = "0429snhp5acbz61pvblwlrwv8nxr6gf12p37f9xxwrkqv4ir7dd4";
   };
 
   buildInputs = [zlib libjpeg libpng imake];
diff --git a/pkgs/tools/misc/colord/default.nix b/pkgs/tools/misc/colord/default.nix
index 71ec1276c7c..9f91a1acc60 100644
--- a/pkgs/tools/misc/colord/default.nix
+++ b/pkgs/tools/misc/colord/default.nix
@@ -3,11 +3,11 @@
 , automake, autoconf, libtool, gtk_doc, which, gobjectIntrospection }:
 
 stdenv.mkDerivation rec {
-  name = "colord-1.1.7";
+  name = "colord-1.2.3";
 
   src = fetchurl {
     url = "http://www.freedesktop.org/software/colord/releases/${name}.tar.xz";
-    sha256 = "295395526ee0be30917ae9c352e68bfeb20c7fc266a605725bef969f20547f44";
+    sha256 = "1z3l6hb3b08fixfra6m887a2j3lvhib6vp798ik16jfh375gr490";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/misc/datamash/default.nix b/pkgs/tools/misc/datamash/default.nix
new file mode 100644
index 00000000000..dabf843fc83
--- /dev/null
+++ b/pkgs/tools/misc/datamash/default.nix
@@ -0,0 +1,18 @@
+{stdenv, fetchurl}:
+
+stdenv.mkDerivation rec {
+  name = "datamash-${version}";
+  version = "1.0.6";
+
+  src = fetchurl {
+    url = "http://ftp.gnu.org/gnu/datamash/${name}.tar.gz";
+    sha256 = "0154c25c45b5506b6d618ca8e18d0ef093dac47946ac0df464fb21e77b504118";
+  };
+
+  meta = {
+    description = "GNU datamash";
+    homepage = http://www.gnu.org/software/datamash/;
+    platforms = stdenv.lib.platforms.all;
+  };
+
+}
diff --git a/pkgs/tools/misc/dbacl/default.nix b/pkgs/tools/misc/dbacl/default.nix
index f433db68a64..fd0f647bf5d 100644
--- a/pkgs/tools/misc/dbacl/default.nix
+++ b/pkgs/tools/misc/dbacl/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "dbacl-1.14";
   src = fetchurl {
     url = "http://www.lbreyer.com/gpl/${name}.tar.gz";
-    md5 = "85bfd88bc20f326dc0f31e794948e21c";
+    sha256 = "0224g6x71hyvy7jikfxmgcwww1r5lvk0jx36cva319cb9nmrbrq7";
   };
 
   meta = {
diff --git a/pkgs/tools/misc/getopt/default.nix b/pkgs/tools/misc/getopt/default.nix
index 41bc2ffc99d..d181388f6c7 100644
--- a/pkgs/tools/misc/getopt/default.nix
+++ b/pkgs/tools/misc/getopt/default.nix
@@ -5,6 +5,6 @@ stdenv.mkDerivation {
   builder = ./builder.sh;
   src = fetchurl {
     url = http://tarballs.nixos.org/getopt-1.1.4.tar.gz;
-    md5 = "02188ca68da27c4175d6e9f3da732101";
+    sha256 = "1arvjfzw6p310zbgv629w5hkyslrj44imf3r3s2r4ry2jfcks221";
   };
 }
diff --git a/pkgs/tools/misc/grub/default.nix b/pkgs/tools/misc/grub/default.nix
index 4f4931e004f..ae437b3c3e7 100644
--- a/pkgs/tools/misc/grub/default.nix
+++ b/pkgs/tools/misc/grub/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = ftp://alpha.gnu.org/gnu/grub/grub-0.97.tar.gz;
-    md5 = "cd3f3eb54446be6003156158d51f4884";
+    sha256 = "02r6b52r0nsp6ryqfiqchnl7r1d9smm80sqx24494gmx5p8ia7af";
   };
 
   # Lots of patches from Gentoo, in particular splash screen support
diff --git a/pkgs/tools/misc/gummiboot/default.nix b/pkgs/tools/misc/gummiboot/default.nix
index 2d0b0015f9d..37655020062 100644
--- a/pkgs/tools/misc/gummiboot/default.nix
+++ b/pkgs/tools/misc/gummiboot/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = http://pkgs.fedoraproject.org/repo/pkgs/gummiboot/gummiboot-45.tar.xz/5d4957390e959cb9f325b87712ddd3f1/gummiboot-45.tar.xz;
-    md5 = "5d4957390e959cb9f325b87712ddd3f1";
+    sha256 = "15227d6abi90vg7rs234fm13af511nsd6dv87c3jvsjhgb9ib0hm";
   };
 
   meta = {
diff --git a/pkgs/tools/misc/ised/default.nix b/pkgs/tools/misc/ised/default.nix
index 96acc6c8ab9..7d0963c2bb0 100644
--- a/pkgs/tools/misc/ised/default.nix
+++ b/pkgs/tools/misc/ised/default.nix
@@ -1,42 +1,17 @@
-x@{builderDefsPackage
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
+{ stdenv, fetchurl }:
 
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="ised";
-    version = "2.6.0";
-    name="${baseName}-${version}";
-    url="mirror://sourceforge/project/ised/${name}.tar.bz2";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
+stdenv.mkDerivation rec {
+  name = "ised-${version}";
+  version = "2.6.0";
+  src = fetchurl {
+    url = "mirror://sourceforge/project/ised/${name}.tar.bz2";
     sha256 = "0rf9brqkrad8f3czpfc1bxq9ybv3nxci9276wdxas033c82cqkjs";
   };
 
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doConfigure" "doMakeInstall"];
-      
   meta = {
     description = "A numeric sequence editor";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    license = a.lib.licenses.gpl3Plus;
-    inherit version;
+    maintainers = with stdenv.lib.maintainers; [ raskin ];
+    platforms = with stdenv.lib.platforms; linux;
+    license = stdenv.lib.licenses.gpl3Plus;
   };
-}) x
-
+}
diff --git a/pkgs/tools/misc/lbdb/default.nix b/pkgs/tools/misc/lbdb/default.nix
index 6d03b09c588..39987a3b605 100644
--- a/pkgs/tools/misc/lbdb/default.nix
+++ b/pkgs/tools/misc/lbdb/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
   name = "lbdb-${version}";
   src = fetchurl {
     url = "http://www.spinnaker.de/debian/lbdb_${version}.tar.gz";
-    md5 = "a8e65f1400c90818ff324dc4fd67eba2";
+    sha256 = "1279ssfrh4cqrjzq5q47xbdlw5qx3aazxjshi86ljm4cw6xxvgar";
   };
 
   buildInputs = [ perl ] ++ stdenv.lib.optional (!stdenv.isDarwin) finger_bsd;
diff --git a/pkgs/tools/misc/less/default.nix b/pkgs/tools/misc/less/default.nix
index 48e31246426..615063bbbcc 100644
--- a/pkgs/tools/misc/less/default.nix
+++ b/pkgs/tools/misc/less/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, ncurses }:
 
 stdenv.mkDerivation rec {
-  name = "less-468";
+  name = "less-470";
 
   src = fetchurl {
     url = "http://www.greenwoodsoftware.com/less/${name}.tar.gz";
-    sha256 = "1s36hppwcrvf2csw5xyjrbkyyfgshqp5vfg32ms480hdn76bbs28";
+    sha256 = "1vw6bp9wkr2ymvhmf0ikrv8m1zm5ww78s48ny7ks0zjf2i8xr4gi";
   };
 
   # Look for ‘sysless’ in /etc.
diff --git a/pkgs/tools/misc/logstash/contrib.nix b/pkgs/tools/misc/logstash/contrib.nix
new file mode 100644
index 00000000000..c019803f903
--- /dev/null
+++ b/pkgs/tools/misc/logstash/contrib.nix
@@ -0,0 +1,31 @@
+{ stdenv, lib, fetchzip }:
+
+# Note that plugins are supposed to be installed as:
+#   $path/logstash/{inputs,codecs,filters,outputs}/*.rb 
+stdenv.mkDerivation rec {
+  version = "1.4.2";
+  name = "logstash-contrib-${version}";
+
+  src = fetchzip {
+   url = "http://download.elasticsearch.org/logstash/logstash/logstash-contrib-${version}.tar.gz";
+   sha256 = "1yj8sf3b526gixh3c6zhgkfpg4f0c72p1lzhfhdx8b3lw7zjkj0k";
+  };
+
+  dontBuild    = true;
+  dontPatchELF = true;
+  dontStrip    = true;
+  dontPatchShebangs = true;
+
+  installPhase = ''
+    mkdir -p $out/logstash
+    cp -r lib/* $out
+  '';
+
+  meta = with lib; {
+    description = "Community-maintained logstash plugins";
+    homepage    = https://github.com/elasticsearch/logstash-contrib;
+    license     = stdenv.lib.licenses.asl20;
+    platforms   = stdenv.lib.platforms.unix;
+    maintainers = with maintainers; [ cstrahan ];
+  };
+}
diff --git a/pkgs/tools/misc/mssys/default.nix b/pkgs/tools/misc/mssys/default.nix
index 6d3634ea7af..3e37009c723 100644
--- a/pkgs/tools/misc/mssys/default.nix
+++ b/pkgs/tools/misc/mssys/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   
   src = fetchurl {
     url = mirror://sourceforge/ms-sys/ms-sys-2.1.3.tgz;
-    md5 = "6fad0a69ac89440ad4f696dbbbf11497";
+    sha256 = "05djdqp7gqfrfb4czrmbgxgd8qr0h3781gzqvsp3qhfx6ay37z0p";
   };
 
   buildInputs = [gettext];
diff --git a/pkgs/tools/misc/pastebinit/default.nix b/pkgs/tools/misc/pastebinit/default.nix
index cf41de29c50..b8b90333c00 100644
--- a/pkgs/tools/misc/pastebinit/default.nix
+++ b/pkgs/tools/misc/pastebinit/default.nix
@@ -6,7 +6,7 @@ python3Packages.buildPythonPackage rec {
 
   src = fetchurl {
     url = "https://launchpad.net/pastebinit/trunk/${version}/+download/${name}.tar.bz2";
-    md5 = "b771872a9483cf92be90a3e4420fd3c9";
+    sha256 = "1rl854izwn1fpaaib6zj7a1a9bis8n7w4zfxcapgfffj37zj0dy2";
   };
 
   configurePhase = "export DETERMINISTIC_BUILD=1";
diff --git a/pkgs/tools/misc/screen/default.nix b/pkgs/tools/misc/screen/default.nix
index 6e3f8edbb9c..daf9d344400 100644
--- a/pkgs/tools/misc/screen/default.nix
+++ b/pkgs/tools/misc/screen/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
   };
 
   preConfigure = ''
-    configureFlags="--enable-telnet --enable-pam --infodir=$out/share/info --mandir=$out/share/man --with-sys-screenrc=/etc/screenrc"
+    configureFlags="--enable-telnet --enable-pam --infodir=$out/share/info --mandir=$out/share/man --with-sys-screenrc=/etc/screenrc --enable-colors256"
     sed -i -e "s|/usr/local|/non-existent|g" -e "s|/usr|/non-existent|g" configure Makefile.in */Makefile.in
   '';
 
diff --git a/pkgs/tools/misc/units/default.nix b/pkgs/tools/misc/units/default.nix
index 84f0f63bd25..85d3049b270 100644
--- a/pkgs/tools/misc/units/default.nix
+++ b/pkgs/tools/misc/units/default.nix
@@ -1,10 +1,10 @@
 {stdenv, fetchurl}:
 stdenv.mkDerivation {
-  name = "units-2.10";
+  name = "units-2.11";
 
   src = fetchurl {
-    url = mirror://gnu/units/units-2.10.tar.gz;
-    sha256 = "0fa4bk5aqyis5zisz6l8mqqk76njj6zgx3pbrjp5kvraz1dz78lc";
+    url = mirror://gnu/units/units-2.11.tar.gz;
+    sha256 = "1gjs3wc212aaiq4r76hx9nl1h3fa39n0ljwl9420d6ixl3rdmdjk";
   };
 
   meta = {
diff --git a/pkgs/tools/misc/venus/default.nix b/pkgs/tools/misc/venus/default.nix
index b7f2be179c4..4206f468ec7 100644
--- a/pkgs/tools/misc/venus/default.nix
+++ b/pkgs/tools/misc/venus/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
   checkPhase = "python runtests.py";
 
-  buildInputs = [ python python.modules.bsddb python.modules.ssl libxslt
+  buildInputs = [ python python.modules.bsddb libxslt
     libxml2 pythonPackages.genshi pythonPackages.lxml makeWrapper ];
 
   installPhase = ''
diff --git a/pkgs/tools/networking/autossh/default.nix b/pkgs/tools/networking/autossh/default.nix
index 94c466612ef..8c85d99f217 100644
--- a/pkgs/tools/networking/autossh/default.nix
+++ b/pkgs/tools/networking/autossh/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, openssh}:
 
 stdenv.mkDerivation {
-  name = "autossh-1.4c";
+  name = "autossh-1.4d";
   
   src = fetchurl {
-    url = "http://www.harding.motd.ca/autossh/autossh-1.4c.tgz";
-    sha256 = "07gxqxfsk24msd0py0hirvmlblh9iyxkcrq86bwbsils81mbmjkg";
+    url = "http://www.harding.motd.ca/autossh/autossh-1.4d.tgz";
+    sha256 = "05nwvqfyk0kbalwabj4z3xx11i0qdqg6xadzk17ckr5xb3j8y000";
   };
   
   buildInputs = [ openssh ];
diff --git a/pkgs/tools/networking/cutter/default.nix b/pkgs/tools/networking/cutter/default.nix
index 5d383f07210..ad7d2540406 100644
--- a/pkgs/tools/networking/cutter/default.nix
+++ b/pkgs/tools/networking/cutter/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://www.digitage.co.uk/digitage/files/cutter/${name}.tgz";
-    md5 = "50093db9b64277643969ee75b83ebbd1";
+    sha256 = "05cn22wi70l9ybhmzw0sy3fd6xxz0lq49fws4zxzm2i0qb3zmx2d";
   };
 
   installPhase = ''
diff --git a/pkgs/tools/networking/gvpe/default.nix b/pkgs/tools/networking/gvpe/default.nix
index 7fdb548e7b0..952771318be 100644
--- a/pkgs/tools/networking/gvpe/default.nix
+++ b/pkgs/tools/networking/gvpe/default.nix
@@ -2,7 +2,7 @@ a :
 let 
   s = import ./src-for-default.nix;
   buildInputs = with a; [
-    openssl gmp
+    openssl gmp zlib
   ];
 in
 rec {
diff --git a/pkgs/tools/networking/gvpe/src-for-default.nix b/pkgs/tools/networking/gvpe/src-for-default.nix
index 88264c5d771..3db30de0bdd 100644
--- a/pkgs/tools/networking/gvpe/src-for-default.nix
+++ b/pkgs/tools/networking/gvpe/src-for-default.nix
@@ -1,9 +1,9 @@
 rec {
-   version="2.24";
-   name="gvpe-2.24";
-   hash="1szwia7n24fx9n40yvmdidna55b97459ccq6d2c4863q4pfkqpjy";
-   url="mirror://gnu/gvpe/gvpe-${version}.tar.gz";
-   advertisedUrl="http://ftp.gnu.org/gnu/gvpe/gvpe-2.24.tar.gz";
+   version="2.25";
+   name="gvpe-2.25";
+   hash="1gsipcysvsk80gvyn9jnk9g0xg4ng9yd5zp066jnmpgs52d2vhvk";
+   url="http://ftp.gnu.org/gnu/gvpe/gvpe-${version}.tar.gz";
+   advertisedUrl="http://ftp.gnu.org/gnu/gvpe/gvpe-2.25.tar.gz";
   
   
 }
diff --git a/pkgs/tools/networking/inadyn/default.nix b/pkgs/tools/networking/inadyn/default.nix
index ce90bed3010..a821684e5b4 100644
--- a/pkgs/tools/networking/inadyn/default.nix
+++ b/pkgs/tools/networking/inadyn/default.nix
@@ -1,17 +1,22 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, gnutls }:
 
-stdenv.mkDerivation rec {
-  name = "inadyn-1.98.1";
+let
+  ver = "1.99.10";
+in
+stdenv.mkDerivation {
+  name = "inadyn-${ver}";
 
   src = fetchurl {
-    url = "https://github.com/downloads/troglobit/inadyn/${name}.tar.bz2";
-    sha256 = "1qkwmln9ccqbs5cldwximi1maapvzkm7mssxgff71n981d8ad83j";
+    url = "https://github.com/troglobit/inadyn/archive/${ver}.tar.gz";
+    sha256 = "0m3qnnq99siwf1ybcvbzdawk68lxf61vd13fw1f2ssl2m07hfxg3";
   };
 
   preConfigure = ''
     export makeFlags=prefix=$out
   '';
 
+  buildInputs = [ gnutls ];
+
   meta = {
     homepage = http://inadyn.sourceforge.net/;
     description = "Free dynamic DNS client";
diff --git a/pkgs/tools/networking/lftp/default.nix b/pkgs/tools/networking/lftp/default.nix
index 51ab3478ac9..4a491d8ad04 100644
--- a/pkgs/tools/networking/lftp/default.nix
+++ b/pkgs/tools/networking/lftp/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, gnutls, pkgconfig, readline, zlib }:
 
 stdenv.mkDerivation rec {
-  name = "lftp-4.5.2";
+  name = "lftp-4.5.5";
 
   src = fetchurl {
-    url = "http://lftp.yar.ru/ftp/${name}.tar.gz";
-    sha256 = "106llhq9lgvdxlf4r1p94r66fcy5ywfdfvins4dfn9irg0k5gzyv";
+    url = "http://lftp.yar.ru/ftp/${name}.tar.bz2";
+    sha256 = "11885mj0xk5b1mnvf63s33874x7fcg87bszsyalxwsab4yfplam3";
   };
 
   patches = [ ./no-gets.patch ];
diff --git a/pkgs/tools/networking/mailsend/default.nix b/pkgs/tools/networking/mailsend/default.nix
new file mode 100644
index 00000000000..a2579c55930
--- /dev/null
+++ b/pkgs/tools/networking/mailsend/default.nix
@@ -0,0 +1,34 @@
+{stdenv, fetchurl, openssl}:
+let
+  s = # Generated upstream information
+  rec {
+    baseName="mailsend";
+    version="1.17b15";
+    name="${baseName}-${version}";
+    hash="0sxjrv9yn2xyjak9si0gw2zalsrfqqcvz0indq9ap5fyalj1pjvk";
+    url="https://github.com/muquit/mailsend/archive/1.17b15.tar.gz";
+    sha256="0sxjrv9yn2xyjak9si0gw2zalsrfqqcvz0indq9ap5fyalj1pjvk";
+  };
+  buildInputs = [
+    openssl
+  ];
+in
+stdenv.mkDerivation {
+  inherit (s) name version;
+  inherit buildInputs;
+  src = fetchurl {
+    inherit (s) url sha256;
+  };
+  configureFlags = [
+    "--with-openssl=${openssl}"
+  ];
+  meta = {
+    inherit (s) version;
+    description = ''CLI email sending tool'';
+    license = stdenv.lib.licenses.bsd3 ;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+    homepage = "https://github.com/muquit/mailsend";
+    downloadPage = "https://github.com/muquit/mailsend/releases";
+  };
+}
diff --git a/pkgs/tools/networking/mailsend/default.upstream b/pkgs/tools/networking/mailsend/default.upstream
new file mode 100644
index 00000000000..3d9862a3de2
--- /dev/null
+++ b/pkgs/tools/networking/mailsend/default.upstream
@@ -0,0 +1,3 @@
+url "https://github.com/muquit/mailsend/releases"
+ensure_choice
+version '.*/([0-9][0-9.a-z]*)[.]tar[.].*' '\1'
diff --git a/pkgs/tools/networking/netcat-openbsd/default.nix b/pkgs/tools/networking/netcat-openbsd/default.nix
index c7bbf3892d2..8619eb79847 100644
--- a/pkgs/tools/networking/netcat-openbsd/default.nix
+++ b/pkgs/tools/networking/netcat-openbsd/default.nix
@@ -7,11 +7,11 @@ stdenv.mkDerivation rec {
   srcs = [
     (fetchurl {
       url = "mirror://debian/pool/main/n/netcat-openbsd/netcat-openbsd_1.105.orig.tar.gz";
-      md5 = "7e67b22f1ad41a1b7effbb59ff28fca1";
+      sha256 = "07i1vcz8ycnfwsvz356rqmim8akfh8yhjzmhc5mqf5hmdkk3yra0";
     })
     (fetchurl {
       url = "mirror://debian/pool/main/n/netcat-openbsd/netcat-openbsd_1.105-7.debian.tar.gz";
-      md5 = "e914f8eb7eda5c75c679dd77787ac76b";
+      sha256 = "0qxkhbwcifrps34s5mzzg79cmkvz3f96gphd3pl978pygwr5krzf";
     })
   ];
 
diff --git a/pkgs/tools/networking/netcat/default.nix b/pkgs/tools/networking/netcat/default.nix
index 94ae6ea0630..5ad5540438c 100644
--- a/pkgs/tools/networking/netcat/default.nix
+++ b/pkgs/tools/networking/netcat/default.nix
@@ -4,6 +4,6 @@ stdenv.mkDerivation {
   name = "netcat-gnu-0.7.1";
   src = fetchurl {
     url = mirror://sourceforge/netcat/netcat-0.7.1.tar.bz2;
-    md5 = "0a29eff1736ddb5effd0b1ec1f6fe0ef";
+    sha256 = "1frjcdkhkpzk0f84hx6hmw5l0ynpmji8vcbaxg8h5k2svyxz0nmm";
   };
 }
diff --git a/pkgs/tools/networking/p2p/azureus/default.nix b/pkgs/tools/networking/p2p/azureus/default.nix
index ffa360f3de4..246a32f134c 100644
--- a/pkgs/tools/networking/p2p/azureus/default.nix
+++ b/pkgs/tools/networking/p2p/azureus/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   builder = ./builder.sh;
   src = fetchurl {
     url = http://tarballs.nixos.org/Azureus2.3.0.6.jar;
-    md5 = "84f85b144cdc574338c2c84d659ca620";
+    sha256 = "1hwrh3n0b0jbpsdk15zrs7pw175418phhmg6pn4xi1bvilxq1wrd";
   };
 #  buildInputs = [unzip];
   inherit jdk swt;
diff --git a/pkgs/tools/networking/p2p/libtorrent/git.nix b/pkgs/tools/networking/p2p/libtorrent/git.nix
new file mode 100644
index 00000000000..9a46740de51
--- /dev/null
+++ b/pkgs/tools/networking/p2p/libtorrent/git.nix
@@ -0,0 +1,28 @@
+{ stdenv, autoconf, automake, cppunit, fetchFromGitHub, pkgconfig, openssl, libsigcxx, libtool, zlib }:
+
+stdenv.mkDerivation {
+  name = "libtorrent-git";
+
+  src = fetchFromGitHub rec {
+    owner = "rakshasa";
+    repo = "libtorrent";
+    rev = "c60d2b9475804e41649356fa0301e9f770798f8d";
+    sha256 = "1x78g5yd4q0ksdsw91awz2a1ax8zyfy5b53gbbil4fpjy96vb577";
+  };
+  
+  buildInputs = [ autoconf automake cppunit pkgconfig openssl libsigcxx libtool zlib ];
+
+  configureFlags = "--disable-dependency-tracking --enable-aligned";
+
+  preConfigure = ''
+    ./autogen.sh
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "http://libtorrent.rakshasa.no/";
+    description = "A BitTorrent library written in C++ for *nix, with a focus on high performance and good code";
+    license = licenses.gpl2;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ codyopel ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/tools/networking/p2p/rtorrent/git.nix b/pkgs/tools/networking/p2p/rtorrent/git.nix
new file mode 100644
index 00000000000..6320a75f726
--- /dev/null
+++ b/pkgs/tools/networking/p2p/rtorrent/git.nix
@@ -0,0 +1,63 @@
+{ stdenv, autoconf, automake, cppunit, curl, fetchFromGitHub
+, fetchurl, libsigcxx, libtool, libtorrent-git, ncurses, openssl
+, pkgconfig, zlib, xmlrpc_c
+, colorSupport ? false
+}:
+
+# NOTICE: changes since 0.9.4 break the current configuration syntax, an
+# example configuration file using the latest changes can be found at
+# https://github.com/codyopel/dotfiles/blob/master/dotfiles/rtorrent.rc
+
+stdenv.mkDerivation {
+  name = "rtorrent-git";
+
+  src = fetchFromGitHub {
+    owner = "rakshasa";
+    repo = "rtorrent";
+    rev = "7537a3c2a91d0915f1c4c89b01cd583629dc5fd4";
+    sha256 = "1xnyjjff575jfq9c542yq3rr9q03z5x6xbg84d000wkjphbq7h7q";
+  };
+
+  buildInputs = [
+    autoconf
+    automake
+    cppunit
+    libtorrent-git
+    ncurses
+    pkgconfig
+    libsigcxx
+    libtool
+    curl
+    zlib
+    openssl
+    xmlrpc_c
+  ];
+
+  configureFlags = "--with-xmlrpc-c";
+
+  # Optional patch adds support for custom configurable colors
+  # https://github.com/Chlorm/chlorm_overlay/blob/master/net-p2p/rtorrent/README.md
+
+  patches = stdenv.lib.optional colorSupport (fetchurl {
+    url = "https://gist.githubusercontent.com/codyopel/a816c2993f8013b5f4d6/raw/b952b32da1dcf14c61820dfcf7df00bc8918fec4/rtorrent-color.patch";
+    sha256 = "00gcl7yq6261rrfzpz2k8bd7mffwya0ifji1xqcvhfw50syk8965";
+  });
+
+  preConfigure = ''
+    ./autogen.sh
+  '';
+
+  # postInstall = ''
+  #   mkdir -p $out/share/man/man1 $out/share/rtorrent
+  #   mv doc/rtorrent.1 $out/share/man/man1/rtorrent.1
+  #   mv doc/rtorrent.rc $out/share/rtorrent/rtorrent.rc
+  # '';
+
+  meta = with stdenv.lib; {
+    homepage = "http://libtorrent.rakshasa.no/";
+    description = "An ncurses client for libtorrent, ideal for use with screen or dtach";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ codyopel ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/tools/networking/p2p/seeks/default.nix b/pkgs/tools/networking/p2p/seeks/default.nix
index 8c707e2fcc7..91dcf1bbd00 100644
--- a/pkgs/tools/networking/p2p/seeks/default.nix
+++ b/pkgs/tools/networking/p2p/seeks/default.nix
@@ -1,28 +1,44 @@
-{ fetchurl, stdenv, zlib, docbook2x, pcre, curl, libxml2, libevent, perl
-, pkgconfig, protobuf, tokyocabinet, tokyotyrant, opencv
+{ fetchgit, stdenv, zlib, docbook2x, pcre, curl, libxml2, libevent, perl
+, pkgconfig, protobuf, tokyocabinet, tokyotyrant, opencv, autoconf, automake
+, libtool, seeks_confDir ? ""
 }:
 
-let version = "0.4.1"; in
 stdenv.mkDerivation {
-  name = "seeks-${version}";
+  name = "seeks-0.4.1";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/seeks/hippy/seeks-${version}.tar.gz";
-    sha256 = "1ppbbjw1zffxxhyvy64xwsff9xlw9wigqb7qwq5iw5mhbblz545q";
+  src = fetchgit {
+    url = "git://github.com/beniz/seeks.git";
+    rev = "1168b3a2f3111c3fca31dd961135194c3e8df5fd";
+    sha256 = "159k9fk1ry8cybrq38jxm1qyxks9hlkfz624hzwxlzah6xb2j8a4";
   };
 
   buildInputs =
     [ zlib docbook2x pcre curl libxml2 libevent perl pkgconfig
-      protobuf tokyocabinet tokyotyrant opencv
+      protobuf tokyocabinet tokyotyrant opencv autoconf automake libtool
     ];
 
   configureFlags =
     [ # Enable the built-in web server providing a web search interface.
-      # See <http://www.seeks-project.info/wiki/index.php/Seeks_On_Web>.
       "--enable-httpserv-plugin=yes"
       "--with-libevent=${libevent}"
     ];
 
+  preConfigure = ''
+    ./autogen.sh
+  '';
+
+  postInstall = stdenv.lib.optionalString (seeks_confDir != "") ''
+    ln -svf ${seeks_confDir}/config $out/etc/seeks/config
+    ln -svf ${seeks_confDir}/cf-config $out/etc/seeks/cf-config
+    ln -svf ${seeks_confDir}/httpserv-config $out/etc/seeks/httpserv-config
+    ln -svf ${seeks_confDir}/img-websearch-config $out/etc/seeks/img-websearch-config
+    ln -svf ${seeks_confDir}/lsh-config $out/etc/seeks/lsh-config
+    ln -svf ${seeks_confDir}/query-capture-config $out/etc/seeks/query-capture-config
+    ln -svf ${seeks_confDir}/udb-service-config $out/etc/seeks/udb-service-config
+    ln -svf ${seeks_confDir}/uri-capture-config $out/etc/seeks/uri-capture-config
+    ln -svf ${seeks_confDir}/websearch-config $out/etc/seeks/websearch-config
+  '';
+
   # FIXME: Test suite needs <https://code.google.com/p/googletest/>.
   doCheck = false;
 
@@ -44,8 +60,10 @@ stdenv.mkDerivation {
 
     homepage = http://www.seeks-project.info/;
 
-    maintainers = [ stdenv.lib.maintainers.ludo ];
+    maintainers = [
+      stdenv.lib.maintainers.ludo
+      stdenv.lib.maintainers.matejc
+    ];
     platforms = stdenv.lib.platforms.gnu;  # arbitrary choice
-    hydraPlatforms = [];
   };
 }
diff --git a/pkgs/tools/networking/par2cmdline/default.nix b/pkgs/tools/networking/par2cmdline/default.nix
index c94ab37f1ea..bb5bee8868f 100644
--- a/pkgs/tools/networking/par2cmdline/default.nix
+++ b/pkgs/tools/networking/par2cmdline/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   
   src = fetchurl {
     url = mirror://sourceforge/parchive/par2cmdline-0.4.tar.gz;
-    md5 = "1551b63e57e3c232254dc62073b723a9";
+    sha256 = "0xznx4vgf9nd0ijm2xi2zrb42wb891ypa948z54q5jkvrzdvfcly";
   };
 
   patches = [
diff --git a/pkgs/tools/networking/plasma-nm/default.nix b/pkgs/tools/networking/plasma-nm/default.nix
index 42c5ab3973a..5d07e6c26ec 100644
--- a/pkgs/tools/networking/plasma-nm/default.nix
+++ b/pkgs/tools/networking/plasma-nm/default.nix
@@ -2,15 +2,15 @@
 
 let
   pname = "plasma-nm";
-  version = "0.9.3.3";
+  version = "0.9.3.4";
   name = "${pname}-${version}";
 in
 stdenv.mkDerivation {
   inherit name;
 
   src = fetchurl {
-    url = "mirror://kde/unstable/${pname}/${name}.tar.xz";
-    sha256 = "099cbe86eb989c4fda8cdcc0f8721dc3350cc6735c3f50bcdd94661e5930e326";
+    url = "mirror://kde/stable/${pname}/${name}.tar.xz";
+    sha256 = "0xj14isvjq8ll70b6q66n8adm8ff4j9ng195ndk2gmavjf6bb751";
   };
 
   buildInputs = [
@@ -27,6 +27,6 @@ stdenv.mkDerivation {
     description = "Plasma applet written in QML for managing network connections";
     license = licenses.lgpl21;
     inherit (kdelibs.meta) platforms;
-    maintainers = [ maintainers.jgeerds ];
+    maintainers = with maintainers; [ jgeerds ];
   };
 }
diff --git a/pkgs/tools/networking/strongswan/default.nix b/pkgs/tools/networking/strongswan/default.nix
index 9358b9aaa2f..391fd883364 100644
--- a/pkgs/tools/networking/strongswan/default.nix
+++ b/pkgs/tools/networking/strongswan/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ gmp autoreconfHook gettext pkgconfig ];
 
-  configureFlags = [ "--enable-swanctl" ];
+  configureFlags = [ "--enable-swanctl" "--enable-cmd" ];
 
   meta = {
     maintainers = [ stdenv.lib.maintainers.shlevy ];
diff --git a/pkgs/tools/networking/stunnel/default.nix b/pkgs/tools/networking/stunnel/default.nix
index 15bd74ea387..039f9bc0913 100644
--- a/pkgs/tools/networking/stunnel/default.nix
+++ b/pkgs/tools/networking/stunnel/default.nix
@@ -2,11 +2,12 @@
 
 stdenv.mkDerivation rec {
   name    = "stunnel-${version}";
-  version = "5.03";
+  version = "5.05";
 
   src = fetchurl {
     url    = "http://www.stunnel.org/downloads/${name}.tar.gz";
-    sha256 = "00yx7r46rad3yhdqfwk4grqs87wc6fiq055i91pnwxgscsa3c7ls";
+    # SHA256 provided by upstream.
+    sha256 = "c7e1653345150db7e48d00e1129cf571c7c85de8e7e1aa70b21cf1d76b1e31ef";
   };
 
   buildInputs = [ openssl ];
diff --git a/pkgs/tools/networking/tcpdump/default.nix b/pkgs/tools/networking/tcpdump/default.nix
index 2db270c3f66..6744fb7c551 100644
--- a/pkgs/tools/networking/tcpdump/default.nix
+++ b/pkgs/tools/networking/tcpdump/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libpcap, enableStatic ? false }:
 
 stdenv.mkDerivation rec {
-  name = "tcpdump-4.5.1";
+  name = "tcpdump-4.6.2";
 
   src = fetchurl {
     url = "http://www.tcpdump.org/release/${name}.tar.gz";
-    sha256 = "15hb7zkzd66nag102qbv100hcnf7frglbkylmr8adwr8f5jkkaql";
+    sha256 = "1f701387jyxq7rjhv4hiig3b3g55m4b4403rd0zncv1sx3cf8kjj";
   };
 
   buildInputs = [ libpcap ];
diff --git a/pkgs/tools/networking/traceroute/default.nix b/pkgs/tools/networking/traceroute/default.nix
index 3300d12ebfa..0762254b706 100644
--- a/pkgs/tools/networking/traceroute/default.nix
+++ b/pkgs/tools/networking/traceroute/default.nix
@@ -20,6 +20,6 @@ stdenv.mkDerivation rec {
     description = "Tracks the route taken by packets over an IP network";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ maintainers.koral ];
-    platforms = platforms.all;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/package-management/cabal-install/1.16.0.2.nix b/pkgs/tools/package-management/cabal-install/1.16.0.2.nix
index 84dc12d3145..d4a709ab13b 100644
--- a/pkgs/tools/package-management/cabal-install/1.16.0.2.nix
+++ b/pkgs/tools/package-management/cabal-install/1.16.0.2.nix
@@ -15,6 +15,9 @@ cabal.mkDerivation (self: {
     mkdir $out/etc
     mv bash-completion $out/etc/bash_completion.d
   '';
+  patchPhase = ''
+    sed -i -e 's|random .*1.1,|random,|' cabal-install.cabal
+  '';
   meta = {
     homepage = "http://www.haskell.org/cabal/";
     description = "The command-line interface for Cabal and Hackage";
diff --git a/pkgs/tools/package-management/cabal-install/1.18.0.3.nix b/pkgs/tools/package-management/cabal-install/1.18.0.3.nix
index 52db3a6faf4..e391d80420d 100644
--- a/pkgs/tools/package-management/cabal-install/1.18.0.3.nix
+++ b/pkgs/tools/package-management/cabal-install/1.18.0.3.nix
@@ -22,6 +22,9 @@ cabal.mkDerivation (self: {
     mkdir $out/etc
     mv bash-completion $out/etc/bash_completion.d
   '';
+  patchPhase = ''
+    sed -i -e 's|random .*1.1,|random,|' cabal-install.cabal
+  '';
   meta = {
     homepage = "http://www.haskell.org/cabal/";
     description = "The command-line interface for Cabal and Hackage";
diff --git a/pkgs/tools/package-management/cabal-install/1.20.0.3.nix b/pkgs/tools/package-management/cabal-install/1.20.0.3.nix
index 8c136dc9dbb..1a18222ed6b 100644
--- a/pkgs/tools/package-management/cabal-install/1.20.0.3.nix
+++ b/pkgs/tools/package-management/cabal-install/1.20.0.3.nix
@@ -22,6 +22,9 @@ cabal.mkDerivation (self: {
     mkdir $out/etc
     mv bash-completion $out/etc/bash_completion.d
   '';
+  patchPhase = ''
+    sed -i -e 's|random .*1.1,|random,|' cabal-install.cabal
+  '';
   meta = {
     homepage = "http://www.haskell.org/cabal/";
     description = "The command-line interface for Cabal and Hackage";
diff --git a/pkgs/tools/security/apg/default.nix b/pkgs/tools/security/apg/default.nix
index 2190a1ffbe6..24d88517b6a 100644
--- a/pkgs/tools/security/apg/default.nix
+++ b/pkgs/tools/security/apg/default.nix
@@ -1,9 +1,9 @@
 { stdenv, fetchurl }:
 stdenv.mkDerivation rec {
-  name = "apg-2.2.3";
+  name = "apg-2.3.0b";
   src = fetchurl {
     url = "http://www.adel.nursat.kz/apg/download/${name}.tar.gz";
-    sha256 = "1fkxpaifv925i385krsyslrig42ksws5y19hfq5asn1rwv6zmjb9";
+    sha256 = "14lbq81xrcsmpk1b9qmqyz7n6ypf08zcxvcvp6f7ybcyf0lj1rfi";
   };
   configurePhase = ''
     substituteInPlace Makefile --replace /usr/local "$out"
diff --git a/pkgs/tools/security/gnupg1/default.nix b/pkgs/tools/security/gnupg1/default.nix
index 53f784396a7..3675c8bc390 100644
--- a/pkgs/tools/security/gnupg1/default.nix
+++ b/pkgs/tools/security/gnupg1/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, readline, bzip2 }:
 
 stdenv.mkDerivation rec {
-  name = "gnupg-1.4.17";
+  name = "gnupg-1.4.18";
 
   src = fetchurl {
     url = "mirror://gnupg/gnupg/${name}.tar.bz2";
-    sha256 = "0nvv1bd8v13gh2m1429azws7ks0ix9y1yv87ak9k9i1dsqcrvpg6";
+    sha256 = "1233bppjvdpbbl425ii6l7xvgy0879ghhnmwrph5b6c4g3dgvddp";
   };
 
   buildInputs = [ readline bzip2 ];
diff --git a/pkgs/tools/security/mkrand/default.nix b/pkgs/tools/security/mkrand/default.nix
new file mode 100644
index 00000000000..5d1cfdd4023
--- /dev/null
+++ b/pkgs/tools/security/mkrand/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "mkrand-0.1.0";
+
+  src = fetchurl {
+    url = "https://github.com/mknight-tag/MKRAND/releases/download/v0.1.0/mkrand-0.1.0.tar.gz";
+    sha256 = "1irwyv2j5c3606k3qbq77yrd65y27rcq3jdlp295rz875q8iq9fs";
+  };
+
+  doCheck = true;
+
+  meta = {
+    description = "A Digital Random Bit Generator";
+    longDescription = "MKRAND is a utility for generating random information.";
+    homepage = https://github.com/mknight-tag/MKRAND/;
+    license = stdenv.lib.licenses.mit;
+    platforms = stdenv.lib.platforms.all;
+  };
+  }
diff --git a/pkgs/tools/security/p0f/default.nix b/pkgs/tools/security/p0f/default.nix
index 377639ce2e6..117f1e016ac 100644
--- a/pkgs/tools/security/p0f/default.nix
+++ b/pkgs/tools/security/p0f/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name    = "p0f-${version}";
-  version = "3.06b";
+  version = "3.07b";
 
   src = fetchurl {
     url    = "http://lcamtuf.coredump.cx/p0f3/releases/${name}.tgz";
-    sha256 = "1rydqvr78a3rjp9iwfbw4bs7jfb4p22962makdgw8yjmw8dr6lfi";
+    sha256 = "18hbkwvh8maswhka0cyq0rwznz8yacnf4h1jmvb8krz0695rmz2w";
   };
 
   buildInputs = [ libpcap ];
diff --git a/pkgs/tools/security/ssdeep/default.nix b/pkgs/tools/security/ssdeep/default.nix
index c5c47441704..fd97a6e618d 100644
--- a/pkgs/tools/security/ssdeep/default.nix
+++ b/pkgs/tools/security/ssdeep/default.nix
@@ -2,17 +2,13 @@
 
 stdenv.mkDerivation rec {
   name    = "ssdeep-${version}";
-  version = "2.10";
+  version = "2.11";
 
   src = fetchurl {
     url    = "mirror://sourceforge/ssdeep/${name}.tar.gz";
-    sha256 = "1p7dgchq8hgadnxz5qh95ay17k5j74l4qyd15wspc54lb603p2av";
+    sha256 = "1izzkvrng4cc2p8gxp3w32k1v60l2yaq2y2hkifgq9s1yh30xk42";
   };
 
-  postFixup = stdenv.lib.optionalString stdenv.isLinux ''
-    patchelf --set-rpath "$(patchelf --print-rpath $out/bin/ssdeep):$out/lib" $out/bin/ssdeep
-  '';
-
   meta = {
     description = "A program for calculating fuzzy hashes";
     homepage    = "http://www.ssdeep.sf.net";
diff --git a/pkgs/tools/security/sudo/default.nix b/pkgs/tools/security/sudo/default.nix
index 167c369e3bb..1448aa93c7d 100644
--- a/pkgs/tools/security/sudo/default.nix
+++ b/pkgs/tools/security/sudo/default.nix
@@ -3,14 +3,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "sudo-1.8.10p3";
+  name = "sudo-1.8.11";
 
   src = fetchurl {
     urls =
       [ "ftp://ftp.sudo.ws/pub/sudo/${name}.tar.gz"
         "ftp://ftp.sudo.ws/pub/sudo/OLD/${name}.tar.gz"
       ];
-    sha256 = "002l6h27pnhb77b65frhazbhknsxvrsnkpi43j7i0qw1lrgi7nkf";
+    sha256 = "0if82pvmz7m3qkj3sc9yy8mpcd7lmbn0mhrgnd1zpszvnpkps5x3";
   };
 
   configureFlags = [
diff --git a/pkgs/tools/security/thc-hydra/default.nix b/pkgs/tools/security/thc-hydra/default.nix
index 71f7d25155f..8b65b27b66b 100644
--- a/pkgs/tools/security/thc-hydra/default.nix
+++ b/pkgs/tools/security/thc-hydra/default.nix
@@ -3,10 +3,11 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "hydra-7.5";
+  name = "thc-hydra-${version}";
+  version = "7.5";
 
   src = fetchurl {
-    url = "http://www.thc.org/releases/${name}.tar.gz";
+    url = "http://www.thc.org/releases/hydra-${version}.tar.gz";
     sha256 = "1dhavbn2mcm6c2c1qw29ipbpmczax3vhhlxzwn49c8cq471yg4vj";
   };
 
diff --git a/pkgs/tools/security/trousers/default.nix b/pkgs/tools/security/trousers/default.nix
index fe797291f9e..70f11c39d6f 100644
--- a/pkgs/tools/security/trousers/default.nix
+++ b/pkgs/tools/security/trousers/default.nix
@@ -1,23 +1,19 @@
 { stdenv, fetchurl, openssl }:
 
-let
-  ver_maj = "0.3.11";
-  ver_min = "2";
-in
 stdenv.mkDerivation rec {
-  name = "trousers-${ver_maj}.${ver_min}";
+  name = "trousers-${version}";
+  version = "0.3.13";
 
   src = fetchurl {
-    url = "mirror://sourceforge/trousers/trousers/${ver_maj}/${name}.tar.gz";
-    sha256 = "1m9qi4452jr5yy4y9zyfi5ndwam5krq7ny8z2q3f91v1hcjgk5la";
+    url = "mirror://sourceforge/trousers/trousers/${version}/${name}.tar.gz";
+    sha256 = "1lvnla1c1ig2w3xvvrqg2w9qm7a1ygzy1j2gg8j7p8c87i58x45v";
   };
 
   buildInputs = [ openssl ];
 
-  patches = [ # ./double-installed-man-page.patch
-              ./disable-install-rule.patch
-              ./allow-non-tss-config-file-owner.patch
-            ];
+  patches = [ ./allow-non-tss-config-file-owner.patch ];
+
+  configureFlags = [ "--disable-usercheck" ];
 
   NIX_CFLAGS_COMPILE = "-DALLOW_NON_TSS_CONFIG_FILE";
   NIX_LDFLAGS = "-lgcc_s";
diff --git a/pkgs/tools/security/trousers/disable-install-rule.patch b/pkgs/tools/security/trousers/disable-install-rule.patch
deleted file mode 100644
index 698beac9ffd..00000000000
--- a/pkgs/tools/security/trousers/disable-install-rule.patch
+++ /dev/null
@@ -1,27 +0,0 @@
---- trousers-0.3.11/dist/Makefile.in	2013-08-14 06:49:37.597558787 +0200
-+++ trousers-0.3.11/dist/Makefile.in	2013-08-14 06:50:07.134510774 +0200
-@@ -363,16 +363,16 @@
- 	uninstall uninstall-am uninstall-hook
- 
- install: install-exec-hook
--	if test ! -e ${DESTDIR}/@sysconfdir@/tcsd.conf; then mkdir -p ${DESTDIR}/@sysconfdir@ && cp tcsd.conf ${DESTDIR}/@sysconfdir@; fi
--	/bin/chown tss:tss ${DESTDIR}/@sysconfdir@/tcsd.conf || true
--	/bin/chmod 0600 ${DESTDIR}/@sysconfdir@/tcsd.conf
-+#	echo if test ! -e ${DESTDIR}/@sysconfdir@/tcsd.conf; then mkdir -p ${DESTDIR}/@sysconfdir@ && cp tcsd.conf ${DESTDIR}/@sysconfdir@; fi
-+	echo /bin/chown tss:tss ${DESTDIR}/@sysconfdir@/tcsd.conf || true
-+	echo /bin/chmod 0600 ${DESTDIR}/@sysconfdir@/tcsd.conf
- 
- install-exec-hook:
--	/usr/sbin/groupadd tss || true
--	/usr/sbin/useradd -r tss -g tss || true
--	/bin/sh -c 'if [ ! -e ${DESTDIR}/@localstatedir@/lib/tpm ];then mkdir -p ${DESTDIR}/@localstatedir@/lib/tpm; fi'
--	/bin/chown tss:tss ${DESTDIR}/@localstatedir@/lib/tpm || true
--	/bin/chmod 0700 ${DESTDIR}/@localstatedir@/lib/tpm
-+	echo /usr/sbin/groupadd tss || true
-+	echo /usr/sbin/useradd -r tss -g tss || true
-+	echo /bin/sh -c 'if [ ! -e ${DESTDIR}/@localstatedir@/lib/tpm ];then mkdir -p ${DESTDIR}/@localstatedir@/lib/tpm; fi'
-+	echo /bin/chown tss:tss ${DESTDIR}/@localstatedir@/lib/tpm || true
-+	echo /bin/chmod 0700 ${DESTDIR}/@localstatedir@/lib/tpm
- 
- uninstall-hook:
- 	/usr/sbin/userdel tss || true
diff --git a/pkgs/tools/security/trousers/double-installed-man-page.patch b/pkgs/tools/security/trousers/double-installed-man-page.patch
deleted file mode 100644
index 6b40716120e..00000000000
--- a/pkgs/tools/security/trousers/double-installed-man-page.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- trousers-0.3.11/man/man3/Makefile.am	2013-08-14 04:57:47.018494495 +0200
-+++ trousers-0.3.11/man/man3/Makefile.am	2013-08-14 04:58:10.353453471 +0200
-@@ -75,7 +75,6 @@
- 	    Tspi_TPM_TakeOwnership.3 \
- 	    Tspi_TPM_GetAuditDigest.3 \
- 	    Tspi_TPM_OwnerGetSRKPubKey.3 \
--	    Tspi_TPM_Quote.3 \
- 	    Tspi_TPM_CMKSetRestrictions.3
- if TSS_BUILD_DAA
- man3_MANS += Tspi_DAA_IssueCredential.3 \
---- trousers-0.3.11/man/man3/Makefile.in	2013-08-14 05:06:25.029490899 +0200
-+++ trousers-0.3.11/man/man3/Makefile.in	2013-08-14 05:06:43.153457942 +0200
-@@ -243,7 +243,7 @@
- 	Tspi_TPM_PcrExtend.3 Tspi_TPM_Quote.3 Tspi_TPM_SelfTestFull.3 \
- 	Tspi_TPM_SetStatus.3 Tspi_TPM_StirRandom.3 \
- 	Tspi_TPM_TakeOwnership.3 Tspi_TPM_GetAuditDigest.3 \
--	Tspi_TPM_OwnerGetSRKPubKey.3 Tspi_TPM_Quote.3 \
-+	Tspi_TPM_OwnerGetSRKPubKey.3 \
- 	Tspi_TPM_CMKSetRestrictions.3 $(am__append_1)
- EXTRA_DIST = $(man3_MANS)
- all: all-am
---- trousers-0.3.11/man/man3/Makefile	2013-08-14 05:07:05.686414845 +0200
-+++ trousers-0.3.11/man/man3/Makefile	2013-08-14 05:07:23.233381327 +0200
-@@ -243,7 +243,7 @@
- 	Tspi_TPM_PcrExtend.3 Tspi_TPM_Quote.3 Tspi_TPM_SelfTestFull.3 \
- 	Tspi_TPM_SetStatus.3 Tspi_TPM_StirRandom.3 \
- 	Tspi_TPM_TakeOwnership.3 Tspi_TPM_GetAuditDigest.3 \
--	Tspi_TPM_OwnerGetSRKPubKey.3 Tspi_TPM_Quote.3 \
-+	Tspi_TPM_OwnerGetSRKPubKey.3 \
- 	Tspi_TPM_CMKSetRestrictions.3 $(am__append_1)
- EXTRA_DIST = $(man3_MANS)
- all: all-am
diff --git a/pkgs/tools/system/ansible/default.nix b/pkgs/tools/system/ansible/default.nix
index 4491bf7e484..fd17cef8f1c 100644
--- a/pkgs/tools/system/ansible/default.nix
+++ b/pkgs/tools/system/ansible/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, pythonPackages, python }:
 
 pythonPackages.buildPythonPackage rec {
-  version = "1.7.1";
+  version = "1.7.2";
   name = "ansible-${version}";
   namePrefix = "";
 
   src = fetchurl {
     url = "http://releases.ansible.com/ansible/ansible-${version}.tar.gz";
-    sha1 = "4f4be4d45f28f52e4ab0c063efb66c7b9f482a51";
+    sha256 = "1b4qhh6a8z18q7lfa7laxb3p0f7sacvv7nlbr2lix0vznhbffz51";
   };
 
   prePatch = ''
diff --git a/pkgs/tools/system/cron/default.nix b/pkgs/tools/system/cron/default.nix
index 0cf29a67b9d..e465b16b614 100644
--- a/pkgs/tools/system/cron/default.nix
+++ b/pkgs/tools/system/cron/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "cron-4.1";
   src = fetchurl {
     url = ftp://ftp.isc.org/isc/cron/cron_4.1.shar;
-    md5 = "5e1be9dbde66295821ac7899f2e1f561";
+    sha256 = "16n3dras4b1jh7g958nz1k54pl9pg5fwb3fvjln8z67varvq6if4";
   };
 
   unpackCmd = "(mkdir cron && cd cron && sh $curSrc)";
diff --git a/pkgs/tools/system/fakechroot/default.nix b/pkgs/tools/system/fakechroot/default.nix
index a652a1e84ef..5827a11714d 100644
--- a/pkgs/tools/system/fakechroot/default.nix
+++ b/pkgs/tools/system/fakechroot/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/dex4er/fakechroot/archive/${version}.tar.gz";
-    md5 = "e614f62972efa4654fc780ae7e4affad";
+    sha256 = "0z4cxj4lb8cfb63sw82dbc31hf082fv3hshbmhk49cqkc0f673q3";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/system/ipmitool/default.nix b/pkgs/tools/system/ipmitool/default.nix
index 6fa374ebe55..027017247b7 100644
--- a/pkgs/tools/system/ipmitool/default.nix
+++ b/pkgs/tools/system/ipmitool/default.nix
@@ -2,14 +2,14 @@
 
 let
   pkgname = "ipmitool";
-  version = "1.8.13";
+  version = "1.8.14";
 in
 stdenv.mkDerivation {
   name = "${pkgname}-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pkgname}/${pkgname}-${version}.tar.gz";
-    sha256 = "0drkfa1spqh1vlzrx7jwm3cw1qar46a9xvqsgycn92ylgsr395n1";
+    sha256 = "1avlb0lwqncd28hp6p5w3rkcnhgy84rgv1jdgkyy0gzqhx2wx6zy";
   };
 
   buildInputs = [ openssl ];
diff --git a/pkgs/tools/system/proot/default.nix b/pkgs/tools/system/proot/default.nix
new file mode 100644
index 00000000000..3eaa85e41ea
--- /dev/null
+++ b/pkgs/tools/system/proot/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchgit, talloc }:
+
+stdenv.mkDerivation rec {
+  name = "proot-${version}";
+  version = "4.0.3";
+
+  src = fetchgit {
+    url = "git://github.com/cedric-vincent/proot.git";
+    rev = "refs/tags/v${version}";
+    sha256 = "95a52b2fa47b2891eb2c6b6b0e14d42f6d48f6fd5181e359b007831f1a046e84";
+  };
+
+  buildInputs = [ talloc ];
+
+  preBuild = ''
+    substituteInPlace GNUmakefile --replace "/usr/local" "$out"
+  '';
+
+  sourceRoot = "git-export/src";
+
+  meta = with stdenv.lib; {
+    homepage = http://proot.me;
+    description = "User-space implementation of chroot, mount --bind and binfmt_misc";
+    platforms = platforms.linux;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.ianwookim ];
+  };
+}
+
diff --git a/pkgs/tools/system/runit/Makefile.patch b/pkgs/tools/system/runit/Makefile.patch
new file mode 100644
index 00000000000..43257728e92
--- /dev/null
+++ b/pkgs/tools/system/runit/Makefile.patch
@@ -0,0 +1,11 @@
+diff -ur admin.orig/runit-2.1.2/src/Makefile admin/runit-2.1.2/src/Makefile
+--- admin.orig/runit-2.1.2/src/Makefile	2014-08-10 20:22:35.000000000 +0200
++++ admin/runit-2.1.2/src/Makefile	2014-10-15 13:04:02.892937939 +0200
+@@ -234,7 +234,6 @@
+ 
+ hasshsgr.h: chkshsgr choose compile hasshsgr.h1 hasshsgr.h2 load \
+ tryshsgr.c warn-shsgr
+-	./chkshsgr || ( cat warn-shsgr; exit 1 )
+ 	./choose clr tryshsgr hasshsgr.h1 hasshsgr.h2 > hasshsgr.h
+ 
+ haswaitp.h: choose compile haswaitp.h1 haswaitp.h2 load trywaitp.c
diff --git a/pkgs/tools/system/runit/default.nix b/pkgs/tools/system/runit/default.nix
new file mode 100644
index 00000000000..28a0fa52d27
--- /dev/null
+++ b/pkgs/tools/system/runit/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "runit-${version}";
+  version = "2.1.2";
+
+  src = fetchurl {
+    url = "http://smarden.org/runit/${name}.tar.gz";
+    sha256 = "065s8w62r6chjjs6m9hapcagy33m75nlnxb69vg0f4ngn061dl3g";
+  };
+
+  phases = [ "unpackPhase" "patchPhase" "buildPhase" "checkPhase" "installPhase" ];
+
+  patches = [ ./Makefile.patch ];
+
+  buildPhase = ''
+    cd ${name}
+    make -C 'src'
+  '';
+
+  checkPhase = ''
+    make -C 'src' check
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    for f in $(cat package/commands); do
+      mv src/$f $out/bin/
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "UNIX init scheme with service supervision";
+    license = licenses.bsd3;
+    homePage = "http://smarden.org/runit";
+    maintainers = with maintainers; [ rickynils ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/system/smartmontools/default.nix b/pkgs/tools/system/smartmontools/default.nix
index 0290d1961ce..87f19640f7f 100644
--- a/pkgs/tools/system/smartmontools/default.nix
+++ b/pkgs/tools/system/smartmontools/default.nix
@@ -9,11 +9,11 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  name = "smartmontools-6.2";
+  name = "smartmontools-6.3";
 
   src = fetchurl {
     url = "mirror://sourceforge/smartmontools/${name}.tar.gz";
-    sha256 = "0nq6jvfh8nqwfrvp6fb6qs2rdydi3i9xgpi7p7vb83xvg42ncvs8";
+    sha256 = "06gy71jh2d3gcfmlbbrsqw7215knkfq59q3j6qdxfrar39fhcxx7";
   };
 
   patchPhase = ''
diff --git a/pkgs/tools/text/discount/default.nix b/pkgs/tools/text/discount/default.nix
new file mode 100644
index 00000000000..ff846ac0933
--- /dev/null
+++ b/pkgs/tools/text/discount/default.nix
@@ -0,0 +1,19 @@
+{stdenv, fetchurl}:
+stdenv.mkDerivation rec {
+  version = "2.1.6";
+  name = "discount-${version}";
+
+  src = fetchurl {
+    url = "http://www.pell.portland.or.us/~orc/Code/discount/discount-${version}.tar.bz2";
+    sha256 = "15h726m5yalq15hkxxfw4bxwd6wkwkan5q7s80pgi1z32ygb4avh";
+  };
+  patches = ./fix-configure-path.patch;
+  configureScript = "./configure.sh";
+
+  meta = with stdenv.lib; {
+    description = "Implementation of Markdown markup language in C";
+    homepage = "http://www.pell.portland.or.us/~orc/Code/discount/";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.shell ];
+  };
+}
diff --git a/pkgs/tools/text/discount/fix-configure-path.patch b/pkgs/tools/text/discount/fix-configure-path.patch
new file mode 100644
index 00000000000..045b369b4b6
--- /dev/null
+++ b/pkgs/tools/text/discount/fix-configure-path.patch
@@ -0,0 +1,12 @@
+diff -rupN discount-2.1.6-original/configure.inc discount-2.1.6/configure.inc
+--- discount-2.1.6-original/configure.inc	2014-10-10 15:34:24.158325345 +0100
++++ discount-2.1.6/configure.inc	2014-10-10 15:34:33.553325321 +0100
+@@ -32,7 +32,7 @@
+ # this preamble code is executed when this file is sourced and it picks
+ # interesting things off the command line.
+ #
+-ac_default_path="/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin"
++ac_default_path=$PATH
+ 
+ ac_standard="--src=DIR		where the source lives (.)
+ --prefix=DIR		where to install the final product (/usr/local)
diff --git a/pkgs/tools/text/gist/default.nix b/pkgs/tools/text/gist/default.nix
new file mode 100644
index 00000000000..1ac9901a8e1
--- /dev/null
+++ b/pkgs/tools/text/gist/default.nix
@@ -0,0 +1,32 @@
+{ stdenv
+, fetchurl
+, makeWrapper
+, ruby
+, rake
+}:
+
+let version = "v4.3.0";
+in stdenv.mkDerivation rec {
+  name = "gist-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/defunkt/gist/archive/${version}.tar.gz";
+    sha256 = "92b91ffe07cc51ca8576b091e7123b851ee0d7d2d3f0e21d18b19d8bd8f9aa47";
+  };
+
+  buildInputs = [ rake makeWrapper ];
+
+  installPhase = ''
+    rake install prefix=$out
+
+    wrapProgram $out/bin/gist \
+      --prefix PATH : ${ruby}/bin \
+  '';
+
+  meta = {
+    homepage = "http://defunkt.io/gist/";
+    description = "upload code to https://gist.github.com (or github enterprise)";
+    platforms = stdenv.lib.platforms.all;
+    license = stdenv.lib.licenses.mit;
+  };
+}
diff --git a/pkgs/tools/text/peco/default.nix b/pkgs/tools/text/peco/default.nix
index be49ba50920..619e1f8d9b1 100644
--- a/pkgs/tools/text/peco/default.nix
+++ b/pkgs/tools/text/peco/default.nix
@@ -3,27 +3,27 @@
 let
   go-flags = fetchgit {
     url = "git://github.com/jessevdk/go-flags";
-    rev = "4f0ca1e2d1349e9662b633ea1b8b8d48e8a32533";
-    sha256 = "5f22f4c5a0529ff0da8e507462ad910bb73c513fde49d58dd4baf7332787ca3d";
+    rev = "ef51ed2000ee1721c7153e958511907b844b4a9c";
+    sha256 = "1abzc7ksglicaz6g6nry006vwvflsidvyzyig85pi3p852z6sc2j";
   };
   go-runewidth = fetchgit {
     url = "git://github.com/mattn/go-runewidth";
-    rev = "36f63b8223e701c16f36010094fb6e84ffbaf8e0";
-    sha256 = "718e9e04659441744b8d43bd3d7e806836194cf322962712a6e019311d407ecf";
+    rev = "63c378b851290989b19ca955468386485f118c65";
+    sha256 = "1z5mhfrpqdssn3603vwd95w69z28igwq96lh7b9rrdcx440i822d";
   };
   termbox-go = fetchgit {
     url = "git://github.com/nsf/termbox-go";
-    rev = "4e63c3a917c197694cb4fef6c55582500b3741e3";
-    sha256 = "00ecc0dcf0919a42ea06fe3bd93480a17241160c434ff3872b6f5e418eb18069";
+    rev = "bb19a81afd4bc2729799d1fedb19f7bd7ee284cf";
+    sha256 = "1zc8pb594l16yipis6xg2ra84bg315p63wqxa5abyam1y0333sn0";
   };
 in stdenv.mkDerivation rec {
   name = "peco-${version}";
-  version = "0.2.3";
+  version = "0.2.10";
 
   src = fetchgit {
     url = "git://github.com/peco/peco";
-    rev = "b8e0c8f37d3eed68e64c931b0edb77728f3723f9";
-    sha256 = "f178e01ab0536770b17eddcefd863e68c2d65b527b5da1fc3fb9efb19c12635f";
+    rev = "4952013023ae1d92c10d826e6970c5a68959678d";
+    sha256 = "02fwmxhaydx9m6q146amq1aw44abzisskkblmv1sjxrm37x81l31";
   };
 
   buildInputs = [ go ];
diff --git a/pkgs/tools/text/xml/xmlstarlet/default.nix b/pkgs/tools/text/xml/xmlstarlet/default.nix
index aea3ab2bd96..74f7e08900a 100644
--- a/pkgs/tools/text/xml/xmlstarlet/default.nix
+++ b/pkgs/tools/text/xml/xmlstarlet/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, libxml2, libxslt }:
 
 stdenv.mkDerivation rec {
-  name = "xmlstarlet-1.5.0";
+  name = "xmlstarlet-1.6.1";
   
   src = fetchurl {
     url = "mirror://sourceforge/xmlstar/${name}.tar.gz";
-    sha256 = "1fmvqvzrzyfcg53j39sdz01v7klzyhd011m3y9br54525q2fvd27";
+    sha256 = "1jp737nvfcf6wyb54fla868yrr39kcbijijmjpyk4lrpyg23in0m";
   };
 
   buildInputs = [ pkgconfig libxml2 libxslt ];
diff --git a/pkgs/tools/text/xml/xpf/default.nix b/pkgs/tools/text/xml/xpf/default.nix
index 3ff89294ab1..e1957333b3f 100644
--- a/pkgs/tools/text/xml/xpf/default.nix
+++ b/pkgs/tools/text/xml/xpf/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation {
   
   src = fetchurl {
     url = http://tarballs.nixos.org/xpf-0.2.tar.gz;
-    md5 = "d92658828139e1495e052d0cfe25d312";
+    sha256 = "0ljx91w68rnh4871c0xlq2whlmhqz8dr39wcdczfjjpniqz1fmpz";
   };
   
   buildInputs = [python libxml2];
diff --git a/pkgs/tools/typesetting/tex/texlive/beamer.nix b/pkgs/tools/typesetting/tex/texlive/beamer.nix
index 8afaf7b5f3e..f19d185572d 100644
--- a/pkgs/tools/typesetting/tex/texlive/beamer.nix
+++ b/pkgs/tools/typesetting/tex/texlive/beamer.nix
@@ -20,6 +20,6 @@ rec {
 
   meta = {
     description = "Extra components for TeXLive: beamer class";
-    maintainers = [ stdenv.lib.maintainers.mornfall ];
+    maintainers = [ stdenv.lib.maintainers.mornfall stdenv.lib.maintainers.jwiegley ];
   };
 }
diff --git a/pkgs/tools/typesetting/tex/texlive/default.nix b/pkgs/tools/typesetting/tex/texlive/default.nix
index beb6a7f3a68..dc821fe6660 100644
--- a/pkgs/tools/typesetting/tex/texlive/default.nix
+++ b/pkgs/tools/typesetting/tex/texlive/default.nix
@@ -1,20 +1,20 @@
 args : with args;
 rec {
   src = fetchurl {
-    url = mirror://debian/pool/main/t/texlive-bin/texlive-bin_2014.20140528.34243.orig.tar.xz;
-    sha256 = "0nh8hfayyf60nm4z8zyclrbc3792c62azgsvrwxnl28iq223200s";
+    url = mirror://debian/pool/main/t/texlive-bin/texlive-bin_2014.20140926.35254.orig.tar.xz;
+    sha256 = "1c39x059jhn5jsy6i9j3akjbkm1kmmzssy1jyi1aw20rl2vp86w3";
   };
 
-  texmfVersion = "2014.20140821";
+  texmfVersion = "2014.20140927";
   texmfSrc = fetchurl {
     url = "mirror://debian/pool/main/t/texlive-base/texlive-base_${texmfVersion}.orig.tar.xz";
-    sha256 = "02qkzlhb381sybs970fgpc94nhx4jm0l3j5pv8z48l11415lvm9b";
+    sha256 = "1g4nzr9rgmw8i0i82svmkwjy2kvbyrc8jgnk2f3cl2wsx7sfrydy";
   };
 
-  langTexmfVersion = "2014.20140821";
+  langTexmfVersion = "2014.20140927";
   langTexmfSrc = fetchurl {
     url = "mirror://debian/pool/main/t/texlive-lang/texlive-lang_${langTexmfVersion}.orig.tar.xz";
-    sha256 = "075avhhhhzw5pbd19q659rn23rws15b5hv7nv0grd93vn3vfwdcy";
+    sha256 = "1ckm8yra96m44n708dc1kgq4xrzi7ginxpsb73ijbwzbjy1yqzwg";
   };
 
   passthru = { inherit texmfSrc langTexmfSrc; };
@@ -115,7 +115,8 @@ rec {
   buildInputs = [ zlib bzip2 ncurses libpng flex bison libX11 libICE xproto
     freetype t1lib gd libXaw icu ghostscript ed libXt libXpm libXmu libXext
     xextproto perl libSM ruby expat curl libjpeg python fontconfig xz pkgconfig
-    poppler libpaper graphite2 lesstif zziplib harfbuzz texinfo potrace ]
+    poppler libpaper graphite2 lesstif zziplib harfbuzz texinfo potrace gmp mpfr
+    xpdf ]
     ++ stdenv.lib.optionals stdenv.isDarwin [ makeWrapper ]
     ;
 
@@ -145,7 +146,7 @@ rec {
     description = "A TeX distribution";
     homepage    = http://www.tug.org/texlive;
     license     = stdenv.lib.licenses.gpl2;
-    maintainers = with maintainers; [ lovek323 raskin ];
+    maintainers = with maintainers; [ lovek323 raskin jwiegley ];
     platforms   = platforms.unix;
   };
 }
diff --git a/pkgs/tools/typesetting/tex/texlive/extra.nix b/pkgs/tools/typesetting/tex/texlive/extra.nix
index f47fedd927d..2c19783beb7 100644
--- a/pkgs/tools/typesetting/tex/texlive/extra.nix
+++ b/pkgs/tools/typesetting/tex/texlive/extra.nix
@@ -1,11 +1,11 @@
 args: with args;
 rec {
   name    = "texlive-extra-2014";
-  version = "2014.20140821";
+  version = "2014.20140927";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/t/texlive-extra/texlive-extra_${version}.orig.tar.xz";
-    sha256 = "1y3w8bgp85s90ng2y5dw9chrrvvdf7ibb6ynss8kycvgc0y4m6b3";
+    sha256 = "0chbl20dh61ld7nq9aiay7hi371l6285c2caqz18br29ifh8jicd";
   };
 
   buildInputs = [texLive xz];
@@ -18,7 +18,7 @@ rec {
 
   meta = {
     description = "Extra components for TeXLive";
-    maintainers = [ args.lib.maintainers.raskin ];
+    maintainers = [ args.lib.maintainers.raskin args.lib.maintainers.jwiegley ];
 
     # Actually, arch-independent..
     hydraPlatforms = [];
diff --git a/pkgs/tools/typesetting/xmlroff/default.nix b/pkgs/tools/typesetting/xmlroff/default.nix
index cbbeecc96d3..1545b626a7f 100644
--- a/pkgs/tools/typesetting/xmlroff/default.nix
+++ b/pkgs/tools/typesetting/xmlroff/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
   name = "xmlroff-0.3.98";
   src = fetchurl {
     url = mirror://sourceforge/xmlroff/xmlroff-0.3.98.tar.gz;
-    md5 = "6c1d05b6480e98870751bf9102ea68e2";
+    sha256 = "0pg7zc8ri0xzmdk30vnyd84wy8yn973h1bnrvibv71q44s6xhwp2";
   };
 
   buildInputs = [
diff --git a/pkgs/tools/video/vnc2flv/default.nix b/pkgs/tools/video/vnc2flv/default.nix
index f2f77bd84cd..55f54e2cf3d 100644
--- a/pkgs/tools/video/vnc2flv/default.nix
+++ b/pkgs/tools/video/vnc2flv/default.nix
@@ -6,7 +6,7 @@ pythonPackages.buildPythonPackage rec {
 
   src = fetchurl {
     url = "http://pypi.python.org/packages/source/v/vnc2flv/${name}.tar.gz";
-    md5 = "8492e46496e187b49fe5569b5639804e";
+    sha256 = "14d4nm8yim0bm0nd3wyj7z4zdsg5zk3d9bhhvwdc36x03r8d0sbq";
   };
 
   # error: invalid command 'test'
diff --git a/pkgs/tools/virtualization/euca2ools/default.nix b/pkgs/tools/virtualization/euca2ools/default.nix
index ae488b0f359..84dc7c3c071 100644
--- a/pkgs/tools/virtualization/euca2ools/default.nix
+++ b/pkgs/tools/virtualization/euca2ools/default.nix
@@ -10,7 +10,7 @@ pythonPackages.buildPythonPackage rec {
     sha256 = "caef5a3e2c9b515fd815034b5b7304acc878a0b9777ae4208dc033b0bf39da2b";
   };
 
-  pythonPath = [ pythonPackages.boto pythonPackages.m2crypto pythonPackages.ssl ];
+  pythonPath = [ pythonPackages.boto pythonPackages.m2crypto ];
 
   doCheck = false;
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index f9ed31f4ca1..0a245e363ac 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -476,6 +476,8 @@ let
 
   apt-offline = callPackage ../tools/misc/apt-offline { };
 
+  apulse = callPackage ../misc/apulse { };
+
   archivemount = callPackage ../tools/filesystems/archivemount { };
 
   arandr = callPackage ../tools/X11/arandr { };
@@ -649,6 +651,8 @@ let
 
   consul_ui = consul.ui;
 
+  corosync = callPackage ../servers/corosync { };
+
   chntpw = callPackage ../tools/security/chntpw { };
 
   coprthr = callPackage ../development/libraries/coprthr {
@@ -659,8 +663,12 @@ let
 
   cv = callPackage ../tools/misc/cv { };
 
+  datamash = callPackage ../tools/misc/datamash { };
+
   direnv = callPackage ../tools/misc/direnv { };
 
+  discount = callPackage ../tools/text/discount { };
+
   ditaa = callPackage ../tools/graphics/ditaa { };
 
   dlx = callPackage ../misc/emulators/dlx { };
@@ -675,6 +683,8 @@ let
 
   fop = callPackage ../tools/typesetting/fop { };
 
+  gist = callPackage ../tools/text/gist { };
+
   mcrl = callPackage ../tools/misc/mcrl { };
 
   mcrl2 = callPackage ../tools/misc/mcrl2 { };
@@ -1152,7 +1162,7 @@ let
   freeipmi = callPackage ../tools/system/freeipmi {};
 
   freetalk = callPackage ../applications/networking/instant-messengers/freetalk {
-    guile = guile_1_8;
+    automake = automake114x;
   };
 
   freetds = callPackage ../development/libraries/freetds { };
@@ -1336,7 +1346,7 @@ let
   gupnptools = callPackage ../tools/networking/gupnp-tools {};
 
   gvpe = builderDefsPackage ../tools/networking/gvpe {
-    inherit openssl gmp nettools iproute;
+    inherit openssl gmp nettools iproute zlib;
   };
 
   gvolicon = callPackage ../tools/audio/gvolicon {};
@@ -1393,13 +1403,6 @@ let
 
   httptunnel = callPackage ../tools/networking/httptunnel { };
 
-  # FIXME: This Hydra snapshot is outdated and depends on the `nixPerl',
-  # which no longer exists.
-  #
-  # hydra = callPackage ../development/tools/misc/hydra {
-  #   nix = nixUnstable;
-  # };
-
   iasl = callPackage ../development/compilers/iasl { };
 
   icecast = callPackage ../servers/icecast { };
@@ -1492,6 +1495,8 @@ let
 
   logstash = callPackage ../tools/misc/logstash { };
 
+  logstash-contrib = callPackage ../tools/misc/logstash/contrib.nix { };
+
   logstash-forwarder = callPackage ../tools/misc/logstash-forwarder { };
 
   kippo = callPackage ../servers/kippo { };
@@ -1542,12 +1547,20 @@ let
 
   libshout = callPackage ../development/libraries/libshout { };
 
+  libqb = callPackage ../development/libraries/libqb { };
+
   libqmi = callPackage ../development/libraries/libqmi { };
 
   libmbim = callPackage ../development/libraries/libmbim { };
 
   libtorrent = callPackage ../tools/networking/p2p/libtorrent { };
 
+  libtorrent-git = callPackage ../tools/networking/p2p/libtorrent/git.nix { };
+
+  libibverbs = callPackage ../development/libraries/libibverbs { };
+
+  librdmacm = callPackage ../development/libraries/librdmacm { };
+
   logcheck = callPackage ../tools/system/logcheck {
     inherit (perlPackages) mimeConstruct;
   };
@@ -1580,6 +1593,8 @@ let
 
   maildrop = callPackage ../tools/networking/maildrop { };
 
+  mailsend = callPackage ../tools/networking/mailsend { };
+
   mailpile = callPackage ../applications/networking/mailreaders/mailpile { };
 
   mailutils = callPackage ../tools/networking/mailutils {
@@ -1649,6 +1664,8 @@ let
 
   mkpasswd = callPackage ../tools/security/mkpasswd { };
 
+  mkrand = callPackage ../tools/security/mkrand { };
+
   mktemp = callPackage ../tools/security/mktemp { };
 
   mktorrent = callPackage ../tools/misc/mktorrent { };
@@ -1849,7 +1866,7 @@ let
   openobex = callPackage ../tools/bluetooth/openobex { };
 
   openopc = callPackage ../tools/misc/openopc {
-    pythonFull = python27Full.override {
+    pythonFull = python27FullBuildEnv.override {
       extraLibs = [ python27Packages.pyro3 ];
     };
   };
@@ -1876,6 +1893,8 @@ let
 
   spCompat = callPackage ../tools/text/sgml/opensp/compat.nix { };
 
+  opentracker = callPackage ../applications/networking/p2p/opentracker { };
+
   openvpn = callPackage ../tools/networking/openvpn { };
 
   openvpn_learnaddress = callPackage ../tools/networking/openvpn/openvpn_learnaddress.nix { };
@@ -2079,6 +2098,8 @@ let
 
   privateer = callPackage ../games/privateer { };
 
+  redmine = callPackage ../applications/version-management/redmine { };
+
   rtmpdump = callPackage ../tools/video/rtmpdump { };
 
   reaverwps = callPackage ../tools/networking/reaver-wps {};
@@ -2143,6 +2164,8 @@ let
 
   rtorrent = callPackage ../tools/networking/p2p/rtorrent { };
 
+  rtorrent-git = callPackage ../tools/networking/p2p/rtorrent/git.nix { };
+
   rubber = callPackage ../tools/typesetting/rubber { };
 
   rxp = callPackage ../tools/text/xml/rxp { };
@@ -2207,6 +2230,8 @@ let
 
   siege = callPackage ../tools/networking/siege {};
 
+  sigil = callPackage ../applications/editors/sigil { };
+
   silc_client = callPackage ../applications/networking/instant-messengers/silc-client { };
 
   silc_server = callPackage ../servers/silc-server { };
@@ -2804,7 +2829,10 @@ let
   cryptol1 = lowPrio (callPackage ../development/compilers/cryptol/1.8.x.nix {});
   cryptol2 = with haskellPackages_ghc763; callPackage ../development/compilers/cryptol/2.0.x.nix {
     Cabal = Cabal_1_18_1_3;
-    cabalInstall = cabalInstall_1_18_0_3;
+    cabalInstall = cabalInstall_1_18_0_3.override {
+      network = network_2_5_0_0;
+      HTTP = HTTP.override { network = network_2_5_0_0; };
+    };
     process = process_1_2_0_0;
   };
 
@@ -3196,6 +3224,7 @@ let
   icedtea7_jdk = callPackage ../development/compilers/icedtea rec {
     jdk = openjdk;
     jdkPath = "${openjdk}/lib/openjdk";
+    giflib = giflib_5_0;
   } // { outputs = [ "out" ]; };
 
   icedtea7_jre = (lib.setName "icedtea7-${lib.getVersion pkgs.icedtea7_jdk.jre}" (lib.addMetaAttrs
@@ -3467,6 +3496,8 @@ let
 
     lambdaTerm = callPackage ../development/ocaml-modules/lambda-term { };
 
+    macaque = callPackage ../development/ocaml-modules/macaque { };
+
     menhir = callPackage ../development/ocaml-modules/menhir { };
 
     merlin = callPackage ../development/tools/ocaml/merlin { };
@@ -3509,7 +3540,10 @@ let
       inherit pcre;
     };
 
+    pgocaml = callPackage ../development/ocaml-modules/pgocaml {};
+
     ocaml_react = callPackage ../development/ocaml-modules/react { };
+    reactivedata = callPackage ../development/ocaml-modules/reactivedata {};
 
     ocamlsdl= callPackage ../development/ocaml-modules/ocamlsdl { };
 
@@ -3789,7 +3823,6 @@ let
   lua = lua5;
 
   lua51Packages = recurseIntoAttrs (callPackage ./lua-packages.nix { lua = lua5_1; });
-
   lua52Packages = recurseIntoAttrs (callPackage ./lua-packages.nix { lua = lua5_2; });
 
   luaPackages = lua52Packages;
@@ -3880,9 +3913,11 @@ let
   polyml = callPackage ../development/compilers/polyml { };
 
   pure = callPackage ../development/interpreters/pure {
-    llvm = llvm_33 ;
+    llvm = llvm_34 ;
   };
 
+  pure-gsl = callPackage ../development/pure-modules/pure-gsl { };
+
   python = python2;
   python2 = python27;
   python3 = python34;
@@ -3892,9 +3927,6 @@ let
   python2Packages = python27Packages;
   python3Packages = python34Packages;
 
-  pythonFull = python2Full;
-  python2Full = python27Full;
-
   python26 = callPackage ../development/interpreters/python/2.6 { db = db47; };
   python27 = callPackage ../development/interpreters/python/2.7 { };
   python32 = callPackage ../development/interpreters/python/3.2 { };
@@ -3903,18 +3935,24 @@ let
 
   pypy = callPackage ../development/interpreters/pypy/2.4 { };
 
-  python26Full = callPackage ../development/interpreters/python/wrapper.nix {
-    extraLibs = [];
-    postBuild = "";
-    python = python26;
+  pythonFull = python2Full;
+  python2Full = python27Full;
+  python26Full = python26.override {
+    includeModules = true;
+  };
+  python27Full = python27.override {
+    includeModules = true;
+  };
+  python26FullBuildEnv = callPackage ../development/interpreters/python/wrapper.nix {
+    python = python26Full;
     inherit (python26Packages) recursivePthLoader;
   };
-  python27Full = callPackage ../development/interpreters/python/wrapper.nix {
-    extraLibs = [];
-    postBuild = "";
-    python = python27;
+  python27FullBuildEnv = callPackage ../development/interpreters/python/wrapper.nix {
+    python = python27Full;
     inherit (python27Packages) recursivePthLoader;
   };
+  pythonFullBuildEnv = python2FullBuildEnv;
+  python2FullBuildEnv = python27FullBuildEnv;
 
   python2nix = callPackage ../tools/package-management/python2nix { };
 
@@ -3926,6 +3964,8 @@ let
 
   pypi2nix = python27Packages.pypi2nix;
 
+  svg2tikz = python27Packages.svg2tikz;
+
   pyrex = pyrex095;
 
   pyrex095 = callPackage ../development/interpreters/pyrex/0.9.5.nix { };
@@ -4804,6 +4844,8 @@ let
 
   directfb = callPackage ../development/libraries/directfb { };
 
+  dlib = callPackage ../development/libraries/dlib { };
+
   dotconf = callPackage ../development/libraries/dotconf { };
 
   dssi = callPackage ../development/libraries/dssi {};
@@ -4967,6 +5009,8 @@ let
 
   gdal = callPackage ../development/libraries/gdal { };
 
+  gdcm = callPackage ../development/libraries/gdcm { };
+
   ggz_base_libs = callPackage ../development/libraries/ggz_base_libs {};
 
   giblib = callPackage ../development/libraries/giblib { };
@@ -5184,6 +5228,8 @@ let
       else stdenv;
   };
 
+  granite = callPackage ../development/libraries/granite { };
+
   gtk2 = callPackage ../development/libraries/gtk+/2.x.nix {
     cupsSupport = config.gtk2.cups or stdenv.isLinux;
   };
@@ -5363,6 +5409,8 @@ let
     usePulseAudio = config.pulseaudio or true;
   };
 
+  libantlr3c = callPackage ../development/libraries/libantlr3c {};
+
   libarchive = callPackage ../development/libraries/libarchive { };
 
   libass = callPackage ../development/libraries/libass { };
@@ -5482,6 +5530,8 @@ let
 
   libelf = callPackage ../development/libraries/libelf { };
 
+  libetpan = callPackage ../development/libraries/libetpan { };
+
   libfm = callPackage ../development/libraries/libfm { };
   libfm-extra = callPackage ../development/libraries/libfm {
     extraOnly = true;
@@ -5636,6 +5686,8 @@ let
 
   libsamplerate = callPackage ../development/libraries/libsamplerate { };
 
+  libsieve = callPackage ../development/libraries/libsieve { };
+
   libspectre = callPackage ../development/libraries/libspectre { };
 
   libgsf = callPackage ../development/libraries/libgsf { };
@@ -5846,6 +5898,8 @@ let
 
   libspatialite = callPackage ../development/libraries/libspatialite { };
 
+  libstatgrab = callPackage ../development/libraries/libstatgrab { };
+
   libtar = callPackage ../development/libraries/libtar { };
 
   libtasn1 = callPackage ../development/libraries/libtasn1 { };
@@ -5881,7 +5935,7 @@ let
 
   libupnp = callPackage ../development/libraries/pupnp { };
 
-  giflib = giflib_5_0;
+  giflib = giflib_5_1;
   giflib_4_1 = callPackage ../development/libraries/giflib/4.1.nix { };
   giflib_5_0 = callPackage ../development/libraries/giflib/5.0.nix { };
   giflib_5_1 = callPackage ../development/libraries/giflib/5.1.nix { };
@@ -6074,6 +6128,9 @@ let
 
   miro = callPackage ../applications/video/miro {
     inherit (pythonPackages) pywebkitgtk pysqlite pycurl mutagen;
+    avahi = avahi.override {
+      withLibdnssdCompat = true;
+    };
   };
 
   mkvtoolnix = callPackage ../applications/video/mkvtoolnix { };
@@ -6971,34 +7028,34 @@ let
   # Therefore we do not recurse into attributes here, in contrast to
   # python27Packages. `nix-env -iA python26Packages.nose` works
   # regardless.
-  python26Packages = import ./python-packages.nix {
-    inherit pkgs;
+  python26Packages = callPackage ./python-packages.nix {
     python = python26;
+    self = python26Packages;
   };
 
-  python27Packages = lib.hiPrioSet (recurseIntoAttrs (import ./python-packages.nix {
-    inherit pkgs;
+  python27Packages = lib.hiPrioSet (recurseIntoAttrs (callPackage ./python-packages.nix {
     python = python27;
+    self = python27Packages;
   }));
 
-  python32Packages = import ./python-packages.nix {
-    inherit pkgs;
+  python32Packages = callPackage ./python-packages.nix {
     python = python32;
+    self = python32Packages;
   };
 
-  python33Packages = recurseIntoAttrs (import ./python-packages.nix {
-    inherit pkgs;
+  python33Packages = recurseIntoAttrs (callPackage ./python-packages.nix {
     python = python33;
+    self = python33Packages;
   });
 
-  python34Packages = recurseIntoAttrs (import ./python-packages.nix {
-    inherit pkgs;
+  python34Packages = recurseIntoAttrs (callPackage ./python-packages.nix {
     python = python34;
+    self = python34Packages;
   });
 
-  pypyPackages = recurseIntoAttrs (import ./python-packages.nix {
-    inherit pkgs;
+  pypyPackages = recurseIntoAttrs (callPackage ./python-packages.nix {
     python = pypy;
+    self = pypyPackages;
   });
 
   foursuite = callPackage ../development/python-modules/4suite { };
@@ -7167,6 +7224,12 @@ let
     erlang = erlangR16;
   };
 
+  prosody = recurseIntoAttrs (
+    callPackage ../servers/xmpp/prosody {
+      lua5 = lua5_1;
+      inherit (lua51Packages) luasocket luasec luaexpat luafilesystem luabitop;
+  });
+
   elasticmq = callPackage ../servers/elasticmq { };
 
   etcdctl = callPackage ../development/tools/etcdctl { };
@@ -7956,7 +8019,7 @@ let
 
   # The current default kernel / kernel modules.
   linux = linuxPackages.kernel;
-  linuxPackages = linuxPackages_3_12;
+  linuxPackages = linuxPackages_3_14;
 
   # Update this when adding the newest kernel major version!
   linux_latest = pkgs.linux_3_17;
@@ -8067,6 +8130,10 @@ let
 
   gocode = callPackage ../development/tools/gocode { };
 
+  gotags = callPackage ../development/tools/gotags { };
+
+  golint = callPackage ../development/tools/golint { };
+
   gogoclient = callPackage ../os-specific/linux/gogoclient { };
 
   nss_ldap = callPackage ../os-specific/linux/nss_ldap { };
@@ -8752,6 +8819,10 @@ let
 
   cinelerra = callPackage ../applications/video/cinelerra { };
 
+  clawsMail = callPackage ../applications/networking/mailreaders/claws-mail {
+    enableNetworkManager = config.networking.networkmanager.enable or false;
+  };
+
   clipit = callPackage ../applications/misc/clipit { };
 
   cmplayer = callPackage ../applications/video/cmplayer {
@@ -9104,6 +9175,8 @@ let
 
   fribid = callPackage ../applications/networking/browsers/mozilla-plugins/fribid { };
 
+  fritzing = callPackage ../applications/science/electronics/fritzing { };
+
   fvwm = callPackage ../applications/window-managers/fvwm { };
 
   geany = callPackage ../applications/editors/geany { };
@@ -9574,6 +9647,8 @@ let
     inherit (gnome) libglade;
   };
 
+  libowfat = callPackage ../development/libraries/libowfat { };
+
   librecad = callPackage ../applications/misc/librecad { };
 
   librecad2 = callPackage ../applications/misc/librecad/2.0.nix { };
@@ -9827,6 +9902,8 @@ let
 
   smplayer = callPackage ../applications/video/smplayer { };
 
+  smtube = callPackage ../applications/video/smtube {};
+
   sup = with rubyLibs; callPackage ../applications/networking/mailreaders/sup {
     ruby = ruby_1_9_3.override {
       cursesSupport = true;
@@ -10121,9 +10198,7 @@ let
 
   seafile-client = callPackage ../applications/networking/seafile-client { };
 
-  seeks = callPackage ../tools/networking/p2p/seeks {
-    opencv = opencv_2_1;
-  };
+  seeks = callPackage ../tools/networking/p2p/seeks { };
 
   seg3d = callPackage ../applications/graphics/seg3d {
     wxGTK = wxGTK28.override { unicode = false; };
@@ -10233,7 +10308,8 @@ let
 
   stp = callPackage ../applications/science/logic/stp {};
 
-  stumpwm = lispPackages.stumpwm;
+  stumpwm = callPackage ../applications/window-managers/stumpwm {};
+  stumpwmContrib = callPackage ../applications/window-managers/stumpwm/contrib.nix {};
 
   sublime = callPackage ../applications/editors/sublime { };
 
@@ -10279,6 +10355,8 @@ let
 
   tabbed = callPackage ../applications/window-managers/tabbed { };
 
+  tagainijisho = callPackage ../applications/office/tagainijisho {};
+
   tahoelafs = callPackage ../tools/networking/p2p/tahoe-lafs {
     inherit (pythonPackages) twisted foolscap simplejson nevow zfec
       pycryptopp sqlite3 darcsver setuptoolsTrial setuptoolsDarcs
@@ -10591,13 +10669,17 @@ let
       ++ optional (cfg.enableGambatte or false) gambatte
       ++ optional (cfg.enableGenesisPlusGX or false) genesis-plus-gx
       ++ optional (cfg.enableMupen64Plus or false) mupen64plus
+      ++ optional (cfg.enableNestopia or false) nestopia
       ++ optional (cfg.enablePicodrive or false) picodrive
       ++ optional (cfg.enablePrboom or false) prboom
       ++ optional (cfg.enablePPSSPP or false) ppsspp
+      ++ optional (cfg.enableQuickNES or false) quicknes
       ++ optional (cfg.enableScummVM or false) scummvm
+      ++ optional (cfg.enableSnes9x or false) snes9x
       ++ optional (cfg.enableSnes9xNext or false) snes9x-next
       ++ optional (cfg.enableStella or false) stella
       ++ optional (cfg.enableVbaNext or false) vba-next
+      ++ optional (cfg.enableVbaM or false) vba-m
       );
 
   wrapRetroArch = { retroarch }: import ../misc/emulators/retroarch/wrapper.nix {
@@ -10610,6 +10692,7 @@ let
     plugins = let inherit (lib) optional; in with xbmcPlugins;
       ([]
       ++ optional (config.xbmc.enableAdvancedLauncher or false) advanced-launcher
+      ++ optional (config.xbmc.enableGenesis or false) genesis
       ++ optional (config.xbmc.enableSVTPlay or false) svtplay
       );
   };
@@ -10924,6 +11007,12 @@ let
 
   gtypist = callPackage ../games/gtypist { };
 
+  hedgewars = callPackage ../games/hedgewars {
+    inherit (haskellPackages) ghc network vector utf8String bytestringShow
+      random hslogger dataenc;
+    SDL = SDL_pulseaudio;
+  };
+
   hexen = callPackage ../games/hexen { };
 
   icbm3d = callPackage ../games/icbm3d { };
@@ -10946,6 +11035,8 @@ let
 
   mars = callPackage ../games/mars { };
 
+  megaglest = callPackage ../games/megaglest {};
+
   micropolis = callPackage ../games/micropolis { };
 
   mnemosyne = callPackage ../games/mnemosyne {
@@ -11212,15 +11303,7 @@ let
 
   kakasi = callPackage ../tools/text/kakasi { };
 
-  kde4 = recurseIntoAttrs pkgs.kde412;
-
-  kde4_next = recurseIntoAttrs( lib.lowPrioSet pkgs.kde414 );
-
-  kde412 = kdePackagesFor (pkgs.kde412 // {
-      eigen = eigen2;
-      libusb = libusb1;
-      libcanberra = libcanberra_kde;
-    }) ../desktops/kde-4.12;
+  kde4 = recurseIntoAttrs pkgs.kde414;
 
   kde414 = kdePackagesFor (pkgs.kde414 // {
       libusb = libusb1;
@@ -11241,8 +11324,6 @@ let
 
       recurseForRelease = true;
 
-      akunambol = callPackage ../applications/networking/sync/akunambol { };
-
       amarok = callPackage ../applications/audio/amarok { };
 
       bangarang = callPackage ../applications/video/bangarang { };
@@ -11377,6 +11458,11 @@ let
       kwooty = callPackage ../applications/networking/newsreaders/kwooty { };
     };
 
+  pantheon = recurseIntoAttrs rec {
+    callPackage = newScope pkgs.pantheon;
+    pantheon-terminal = callPackage ../desktops/pantheon/apps/pantheon-terminal { };
+  };
+
   redshift = callPackage ../applications/misc/redshift {
     inherit (xorg) libX11 libXrandr libxcb randrproto libXxf86vm
       xf86vidmodeproto;
@@ -11533,17 +11619,32 @@ let
 
   mkCoqPackages_8_4 = self: let callPackage = newScope self; in {
 
+    bedrock = callPackage ../development/coq-modules/bedrock {};
+
     containers = callPackage ../development/coq-modules/containers {};
 
+    coqExtLib = callPackage ../development/coq-modules/coq-ext-lib {};
+
+    domains = callPackage ../development/coq-modules/domains {};
+
+    heq = callPackage ../development/coq-modules/heq {};
+
     mathcomp = callPackage ../development/coq-modules/mathcomp {};
 
+    paco = callPackage ../development/coq-modules/paco {};
+
     ssreflect = callPackage ../development/coq-modules/ssreflect {};
 
+    tlc = callPackage ../development/coq-modules/tlc {};
+
+    ynot = callPackage ../development/coq-modules/ynot {};
+
   };
 
   coqPackages = recurseIntoAttrs (mkCoqPackages_8_4 coqPackages);
 
   cvc3 = callPackage ../applications/science/logic/cvc3 {};
+  cvc4 = callPackage ../applications/science/logic/cvc4 {};
 
   ekrhyper = callPackage ../applications/science/logic/ekrhyper {};
 
@@ -11741,22 +11842,22 @@ let
   ### SCIENCE / PHYSICS
 
   geant4 = callPackage ../development/libraries/physics/geant4 {
-    enableMultiThreading = true; 
+    enableMultiThreading = true;
     enableG3toG4         = false;
     enableInventor       = false;
     enableGDML           = false;
     enableQT             = false;
     enableXM             = false;
-    enableOpenGLX11      = true; 
+    enableOpenGLX11      = true;
     enableRaytracerX11   = false;
 
-    # Optional system packages, otherwise internal GEANT4 packages are used. 
-    clhep = null; 
+    # Optional system packages, otherwise internal GEANT4 packages are used.
+    clhep = null;
     expat = expat;
-    zlib  = null; 
+    zlib  = null;
 
     # For enableGDML.
-    xercesc = null; 
+    xercesc = null;
 
     # For enableQT.
     qt = null; # qt4SDK or qt5SDK
@@ -11956,18 +12057,20 @@ let
 
   retroarchBare = callPackage ../misc/emulators/retroarch { };
 
-  retroarchBareMaster = callPackage ../misc/emulators/retroarch/master.nix { };
-
-  retroarch = wrapRetroArch { retroarch = retroarchBareMaster; };
+  retroarch = wrapRetroArch { retroarch = retroarchBare; };
 
   libretro = recurseIntoAttrs (callPackage ../misc/emulators/retroarch/cores.nix {
-    retroarch = retroarchBareMaster;
+    retroarch = retroarchBare;
   });
 
   rssglx = callPackage ../misc/screensavers/rss-glx { };
 
+  runit = callPackage ../tools/system/runit { };
+
   xlockmore = callPackage ../misc/screensavers/xlockmore { };
 
+  sails = callPackage ../misc/sails { };
+
   samsungUnifiedLinuxDriver = import ../misc/cups/drivers/samsung {
     inherit fetchurl stdenv;
     inherit cups ghostscript glibc patchelf;
@@ -12022,7 +12125,7 @@ let
     inherit builderDefs zlib bzip2 ncurses libpng ed lesstif ruby potrace
       gd t1lib freetype icu perl expat curl xz pkgconfig zziplib texinfo
       libjpeg bison python fontconfig flex poppler libpaper graphite2
-      makeWrapper;
+      makeWrapper gmp mpfr xpdf;
     inherit (xlibs) libXaw libX11 xproto libXt libXpm
       libXmu libXext xextproto libSM libICE;
     ghostscript = ghostscriptX;
diff --git a/pkgs/top-level/haskell-defaults.nix b/pkgs/top-level/haskell-defaults.nix
index 4fcab8e9d6d..d37eedb6c9e 100644
--- a/pkgs/top-level/haskell-defaults.nix
+++ b/pkgs/top-level/haskell-defaults.nix
@@ -35,22 +35,27 @@
       };
     };
     attoparsec = self.attoparsec_0_11_3_1;
-    binaryConduit = super.binaryConduit.override { binary = self.binary_0_7_2_1; };
-    bson = super.bson.override { dataBinaryIeee754 = self.dataBinaryIeee754.override { binary = self.binary_0_7_2_1; }; };
+    binaryConduit = super.binaryConduit.override { binary = self.binary_0_7_2_2; };
+    bson = super.bson.override { dataBinaryIeee754 = self.dataBinaryIeee754.override { binary = self.binary_0_7_2_2; }; };
+    cabal2nix = super.cabal2nix.override { hackageDb = super.hackageDb.override { Cabal = self.Cabal_1_18_1_3; }; };
+    cabalInstall_1_16_0_2 = super.cabalInstall_1_16_0_2.override {
+      HTTP = self.HTTP.override { network = self.network_2_5_0_0; };
+      network = self.network_2_5_0_0;
+    };
     criterion = super.criterion.override {
       statistics = self.statistics.override {
-        vectorBinaryInstances = self.vectorBinaryInstances.override { binary = self.binary_0_7_2_1; };
+        vectorBinaryInstances = self.vectorBinaryInstances.override { binary = self.binary_0_7_2_2; };
       };
     };
-    Elm = super.Elm.override { pandoc = self.pandoc.override { zipArchive = self.zipArchive.override { binary = self.binary_0_7_2_1; }; }; };
+    Elm = super.Elm.override { pandoc = self.pandoc.override { zipArchive = self.zipArchive.override { binary = self.binary_0_7_2_2; }; }; };
     gloss = null;                       # requires base >= 4.7
     haddock = self.haddock_2_13_2;
     modularArithmetic = null;           # requires base >= 4.7
-    pipesBinary = super.pipesBinary.override { binary = self.binary_0_7_2_1; };
-    rank1dynamic = super.rank1dynamic.override { binary = self.binary_0_7_2_1; };
-    distributedStatic = super.distributedStatic.override { binary = self.binary_0_7_2_1; };
-    networkTransport = super.networkTransport.override { binary = self.binary_0_7_2_1; };
-    distributedProcess = super.distributedProcess.override { binary = self.binary_0_7_2_1; };
+    pipesBinary = super.pipesBinary.override { binary = self.binary_0_7_2_2; };
+    rank1dynamic = super.rank1dynamic.override { binary = self.binary_0_7_2_2; };
+    distributedStatic = super.distributedStatic.override { binary = self.binary_0_7_2_2; };
+    networkTransport = super.networkTransport.override { binary = self.binary_0_7_2_2; };
+    distributedProcess = super.distributedProcess.override { binary = self.binary_0_7_2_2; };
     scientific = self.scientific_0_2_0_2;
     singletons = null;                  # requires base >= 4.7
     transformers = self.transformers_0_3_0_0; # core packagen in ghc > 7.6.x
@@ -67,6 +72,7 @@
     hackageDb = super.hackageDb.override { Cabal = self.Cabal_1_16_0_3; };
     haddock = self.haddock_2_11_0;
     haskeline = super.haskeline.override { cabal = self.cabal.override { Cabal = self.Cabal_1_16_0_3; }; };
+    primitive = self.primitive_0_5_3_0; # later versions don't compile
     random = self.random_1_0_1_1;       # requires base >= 4.6.x
     shelly = self.shelly_0_15_4_1;
   };
@@ -80,7 +86,7 @@
   };
 
   ghc704Prefs = self : super : ghc722Prefs self super // {
-    binary = self.binary_0_7_2_1;       # core package in ghc >= 7.2.2
+    binary = self.binary_0_7_2_2;       # core package in ghc >= 7.2.2
     caseInsensitive = super.caseInsensitive; # undo the override from ghc 7.2.2
     haddock = self.haddock_2_9_2.override { alex = self.alex_2_3_5; };
     HsSyck = self.HsSyck_0_51;
@@ -111,6 +117,7 @@
     syb = null;                         # core package in ghc < 7
     tagged = super.tagged.override { cabal = self.cabal.override { Cabal = self.Cabal_1_16_0_3; }; };
     temporary = null;                   # none of our versions compile
+    vector = super.vector_0_10_9_3;
     vectorAlgorithms = super.vectorAlgorithms.override { cabal = self.cabal.override { Cabal = self.Cabal_1_16_0_3; }; };
   };
 
@@ -118,7 +125,8 @@
     alex = self.alex_2_3_5.override { cabal = self.cabal.override { Cabal = self.Cabal_1_16_0_3; }; };
     async = null;                       # none of our versions compile
     attoparsec = null;                  # none of our versions compile
-    binary = super.binary_0_7_2_1.override { cabal = self.cabal.override { Cabal = self.Cabal_1_16_0_3; }; };
+    binary = super.binary_0_7_2_2.override { cabal = self.cabal.override { Cabal = self.Cabal_1_16_0_3; }; };
+    cabalInstall_1_16_0_2 = super.cabalInstall_1_16_0_2;
     caseInsensitive = super.caseInsensitive.override { cabal = self.cabal.override { Cabal = self.Cabal_1_16_0_3; }; };
     GLUT = self.GLUT_2_2_2_1;
     haddock = self.haddock_2_4_2;
@@ -138,6 +146,7 @@
     systemFileio = super.systemFileio.override { cabal = self.cabal.override { Cabal = self.Cabal_1_16_0_3; }; };
     tar = super.tar.override { cabal = self.cabal.override { Cabal = self.Cabal_1_16_0_3; }; };
     text = self.text_0_11_2_3.override { cabal = self.cabal.override { Cabal = self.Cabal_1_16_0_3; }; };
+    tfRandom = null;                    # does not compile
     time = self.time_1_1_2_4.override { cabal = self.cabal.override { Cabal = self.Cabal_1_16_0_3; }; };
     zlib = super.zlib.override { cabal = self.cabal.override { Cabal = self.Cabal_1_16_0_3; }; };
  };
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 6e49451e6f6..3d3d2408eef 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -143,8 +143,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   aeson_0_7_0_4 = callPackage ../development/libraries/haskell/aeson/0.7.0.4.nix { blazeBuilder = null; };
   aeson_0_7_0_6 = callPackage ../development/libraries/haskell/aeson/0.7.0.6.nix { blazeBuilder = null; };
-  aeson_0_8_0_0 = callPackage ../development/libraries/haskell/aeson/0.8.0.0.nix { blazeBuilder = null; };
-  aeson = self.aeson_0_8_0_0;
+  aeson_0_8_0_1 = callPackage ../development/libraries/haskell/aeson/0.8.0.1.nix { blazeBuilder = null; };
+  aeson = self.aeson_0_8_0_1;
 
   aesonPretty = callPackage ../development/libraries/haskell/aeson-pretty {};
 
@@ -246,7 +246,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
   bimap = callPackage ../development/libraries/haskell/bimap {};
 
   binary_0_6_1_0 = callPackage ../development/libraries/haskell/binary/0.6.1.0.nix {};
-  binary_0_7_2_1 = callPackage ../development/libraries/haskell/binary/0.7.2.1.nix {};
+  binary_0_7_2_2 = callPackage ../development/libraries/haskell/binary/0.7.2.2.nix {};
   binary = null;                # core package since ghc >= 7.2.x
 
   binaryConduit = callPackage ../development/libraries/haskell/binary-conduit {};
@@ -435,6 +435,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   clay = callPackage ../development/libraries/haskell/clay {};
 
+  cleanUnions = callPackage ../development/libraries/haskell/clean-unions {};
+
   clientsession = callPackage ../development/libraries/haskell/clientsession {};
 
   clock = callPackage ../development/libraries/haskell/clock {};
@@ -463,9 +465,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   compactStringFix = callPackage ../development/libraries/haskell/compact-string-fix {};
 
-  compdata = if (pkgs.stdenv.lib.versionOlder "7.8" ghc.version)
-               then callPackage ../development/libraries/haskell/compdata {}
-               else null;
+  compdata = callPackage ../development/libraries/haskell/compdata {};
 
   compdataParam = callPackage ../development/libraries/haskell/compdata-param {};
 
@@ -868,7 +868,9 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   freeGame = callPackage ../development/libraries/haskell/free-game {};
 
-  fsnotify = callPackage ../development/libraries/haskell/fsnotify {};
+  fsnotify = callPackage ../development/libraries/haskell/fsnotify {
+    hinotify = if pkgs.stdenv.isLinux then self.hinotify else self.hfsevents;
+  };
 
   freetype2 = callPackage ../development/libraries/haskell/freetype2 {};
 
@@ -1088,7 +1090,9 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
   haskellSrc_1_0_1_6 = callPackage ../development/libraries/haskell/haskell-src/1.0.1.6.nix {};
   haskellSrc = self.haskellSrc_1_0_1_6;
 
-  haskellSrcExts = callPackage ../development/libraries/haskell/haskell-src-exts {};
+  haskellSrcExts_1_15_0_1 = callPackage ../development/libraries/haskell/haskell-src-exts/1.15.0.1.nix {};
+  haskellSrcExts_1_16_0 = callPackage ../development/libraries/haskell/haskell-src-exts/1.16.0.nix {};
+  haskellSrcExts = self.haskellSrcExts_1_16_0;
 
   haskellSrcMeta = callPackage ../development/libraries/haskell/haskell-src-meta {};
 
@@ -1164,9 +1168,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   haxl = callPackage ../development/libraries/haskell/haxl {};
 
-  haxr = callPackage ../development/libraries/haskell/haxr {
-    HTTP = self.HTTP.override { network = self.network_2_6_0_2; };
-  };
+  haxr = callPackage ../development/libraries/haskell/haxr {};
 
   haxr_th = callPackage ../development/libraries/haskell/haxr-th {};
 
@@ -1257,8 +1259,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   hsdns = callPackage ../development/libraries/haskell/hsdns {};
 
-  hsemail = if (pkgs.stdenv.lib.versionOlder ghc.version "7") then null else
-    callPackage ../development/libraries/haskell/hsemail {};
+  hsemail = callPackage ../development/libraries/haskell/hsemail {};
 
   hslua = callPackage ../development/libraries/haskell/hslua {
     lua = pkgs.lua5_1;
@@ -1360,9 +1361,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   imm = callPackage ../development/libraries/haskell/imm {};
 
-  implicit = callPackage ../development/libraries/haskell/implicit {
-    optparseApplicative = self.optparseApplicative_0_9_1_1;
-  };
+  implicit = callPackage ../development/libraries/haskell/implicit {};
 
   indents = callPackage ../development/libraries/haskell/indents {};
 
@@ -1505,11 +1504,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   libjenkins = callPackage ../development/libraries/haskell/libjenkins {};
 
-  libmpd_0_8_0_5 = callPackage ../development/libraries/haskell/libmpd/0.8.0.5.nix {};
-
-  libmpd_0_9_0_1 = callPackage ../development/libraries/haskell/libmpd/0.9.0.1.nix {};
-
-  libmpd = self.libmpd_0_9_0_1;
+  libmpd = callPackage ../development/libraries/haskell/libmpd {};
 
   liblastfm = callPackage ../development/libraries/haskell/liblastfm {};
 
@@ -1525,6 +1520,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   linear = callPackage ../development/libraries/haskell/linear {};
 
+  linuxInotify = callPackage ../development/libraries/haskell/linux-inotify {};
+
   List = callPackage ../development/libraries/haskell/List {};
 
   lists = callPackage ../development/libraries/haskell/lists {};
@@ -1573,8 +1570,14 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   machines = callPackage ../development/libraries/haskell/machines {};
 
+  machinesDirectory = callPackage ../development/libraries/haskell/machines-directory {};
+
+  machinesIo = callPackage ../development/libraries/haskell/machines-io {};
+
   managed = callPackage ../development/libraries/haskell/managed {};
 
+  mapSyntax = callPackage ../development/libraries/haskell/map-syntax {};
+
   markdown = callPackage ../development/libraries/haskell/markdown {};
 
   markdownUnlit = callPackage ../development/libraries/haskell/markdown-unlit {};
@@ -1610,7 +1613,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
   minioperational = callPackage ../development/libraries/haskell/minioperational {};
 
   miniutter = callPackage ../development/libraries/haskell/miniutter {
-    binary = self.binary_0_7_2_1;
+    binary = self.binary_0_7_2_2;
   };
 
   mimeMail = callPackage ../development/libraries/haskell/mime-mail {};
@@ -1754,7 +1757,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
   network_2_4_1_2 = callPackage ../development/libraries/haskell/network/2.4.1.2.nix {};
   network_2_5_0_0 = callPackage ../development/libraries/haskell/network/2.5.0.0.nix {};
   network_2_6_0_2 = callPackage ../development/libraries/haskell/network/2.6.0.2.nix {};
-  network = self.network_2_5_0_0;
+  network = self.network_2_6_0_2;
 
   networkCarbon = callPackage ../development/libraries/haskell/network-carbon {};
 
@@ -1799,6 +1802,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   OneTuple = callPackage ../development/libraries/haskell/OneTuple {};
 
+  objective = callPackage ../development/libraries/haskell/objective {};
+
   ObjectName = callPackage ../development/libraries/haskell/ObjectName {};
 
   oeis = callPackage ../development/libraries/haskell/oeis {};
@@ -1827,9 +1832,10 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   options = callPackage ../development/libraries/haskell/options {};
 
-  optparseApplicative_0_9_1_1 = callPackage ../development/libraries/haskell/optparse-applicative/0.9.1.1.nix {};
+  #optparseApplicative_0_9_1_1 = callPackage ../development/libraries/haskell/optparse-applicative/0.9.1.1.nix {};
   optparseApplicative_0_10_0 = callPackage ../development/libraries/haskell/optparse-applicative/0.10.0.nix {};
-  optparseApplicative = self.optparseApplicative_0_10_0;
+  optparseApplicative_0_11_0_1 = callPackage ../development/libraries/haskell/optparse-applicative/0.11.0.1.nix {};
+  optparseApplicative = self.optparseApplicative_0_11_0_1;
 
   pathPieces = callPackage ../development/libraries/haskell/path-pieces {};
 
@@ -1862,8 +1868,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
   parsec_3_1_1   = callPackage ../development/libraries/haskell/parsec/3.1.1.nix {};
   parsec_3_1_2   = callPackage ../development/libraries/haskell/parsec/3.1.2.nix {};
   parsec_3_1_3   = callPackage ../development/libraries/haskell/parsec/3.1.3.nix {};
-  parsec_3_1_6   = callPackage ../development/libraries/haskell/parsec/3.1.6.nix {};
-  parsec = self.parsec_3_1_6;
+  parsec_3_1_7   = callPackage ../development/libraries/haskell/parsec/3.1.7.nix {};
+  parsec = self.parsec_3_1_7;
 
   parsers = callPackage ../development/libraries/haskell/parsers {};
 
@@ -1994,7 +2000,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
   primitive_0_5_0_1 = callPackage ../development/libraries/haskell/primitive/0.5.0.1.nix {};
   primitive_0_5_2_1 = callPackage ../development/libraries/haskell/primitive/0.5.2.1.nix {};
   primitive_0_5_3_0 = callPackage ../development/libraries/haskell/primitive/0.5.3.0.nix {};
-  primitive = self.primitive_0_5_3_0;
+  primitive_0_5_4_0 = callPackage ../development/libraries/haskell/primitive/0.5.4.0.nix {};
+  primitive = self.primitive_0_5_4_0;
 
   probability = callPackage ../development/libraries/haskell/probability {};
 
@@ -2054,7 +2061,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   random_1_0_1_1 = callPackage ../development/libraries/haskell/random/1.0.1.1.nix {};
   random_1_0_1_3 = callPackage ../development/libraries/haskell/random/1.0.1.3.nix {};
-  random = self.random_1_0_1_3;
+  random_1_1 = callPackage ../development/libraries/haskell/random/1.1.nix {};
+  random = self.random_1_1;
 
   randomFu = callPackage ../development/libraries/haskell/random-fu {};
 
@@ -2274,7 +2282,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   snapCore = callPackage ../development/libraries/haskell/snap/core.nix {};
 
-  snapCORS = callPackage ../development/libraries/haskell/snap-cors {};
+  snapCors = callPackage ../development/libraries/haskell/snap-cors {};
 
   snapLoaderDynamic = callPackage ../development/libraries/haskell/snap/loader-dynamic.nix {};
 
@@ -2302,6 +2310,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   srcloc = callPackage ../development/libraries/haskell/srcloc {};
 
+  statePlus = callPackage ../development/libraries/haskell/state-plus {};
+
   stateref = callPackage ../development/libraries/haskell/stateref {};
 
   statestack = callPackage ../development/libraries/haskell/statestack {};
@@ -2534,6 +2544,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   testingFeat = callPackage ../development/libraries/haskell/testing-feat {};
 
+  testSimple = callPackage ../development/libraries/haskell/test-simple {};
+
   texmath = callPackage ../development/libraries/haskell/texmath {};
 
   text_0_11_0_5 = callPackage ../development/libraries/haskell/text/0.11.0.5.nix {};
@@ -2551,8 +2563,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   textStreamDecode = callPackage ../development/libraries/haskell/text-stream-decode {};
 
-  tfRandom = if (pkgs.stdenv.lib.versionOlder ghc.version "7") then null else
-    callPackage ../development/libraries/haskell/tf-random {};
+  tfRandom = callPackage ../development/libraries/haskell/tf-random {};
 
   these = callPackage ../development/libraries/haskell/these {};
 
@@ -2619,6 +2630,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   trifecta = callPackage ../development/libraries/haskell/trifecta {};
 
+  trivia = callPackage ../development/libraries/haskell/trivia {};
+
   tuple = callPackage ../development/libraries/haskell/tuple {};
 
   twitterConduit = callPackage ../development/libraries/haskell/twitter-conduit {};
@@ -2669,8 +2682,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   unorderedContainers_0_2_3_0 = callPackage ../development/libraries/haskell/unordered-containers/0.2.3.0.nix {};
   unorderedContainers_0_2_4_0 = callPackage ../development/libraries/haskell/unordered-containers/0.2.4.0.nix {};
-  unorderedContainers_0_2_5_0 = callPackage ../development/libraries/haskell/unordered-containers/0.2.5.0.nix {};
-  unorderedContainers = self.unorderedContainers_0_2_5_0;
+  unorderedContainers_0_2_5_1 = callPackage ../development/libraries/haskell/unordered-containers/0.2.5.1.nix {};
+  unorderedContainers = self.unorderedContainers_0_2_5_1;
 
   uri = callPackage ../development/libraries/haskell/uri {};
 
@@ -2721,7 +2734,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
   vector_0_10_0_1  = callPackage ../development/libraries/haskell/vector/0.10.0.1.nix {};
   vector_0_10_9_3  = callPackage ../development/libraries/haskell/vector/0.10.9.3.nix {};
   vector_0_10_11_0  = callPackage ../development/libraries/haskell/vector/0.10.11.0.nix {};
-  vector = self.vector_0_10_11_0;
+  vector_0_10_12_1  = callPackage ../development/libraries/haskell/vector/0.10.12.1.nix {};
+  vector = self.vector_0_10_12_1;
 
   vectorAlgorithms = callPackage ../development/libraries/haskell/vector-algorithms {};
 
@@ -2771,6 +2785,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   warpTls = callPackage ../development/libraries/haskell/warp-tls {};
 
+  WAVE = callPackage ../development/libraries/haskell/WAVE {};
+
   wcwidth = callPackage ../development/libraries/haskell/wcwidth {};
 
   webdriver = callPackage ../development/libraries/haskell/webdriver {};
@@ -2935,7 +2951,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   # Compilers.
 
-  Agda = callPackage ../development/compilers/agda {};
+  Agda = callPackage ../development/compilers/agda { haskellSrcExts = self.haskellSrcExts_1_15_0_1; };
 
   uhc = callPackage ../development/compilers/uhc {};
 
@@ -2957,9 +2973,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   BNFC = callPackage ../development/tools/haskell/BNFC {};
 
-  cake3 = callPackage ../development/tools/haskell/cake3 {
-    optparseApplicative = self.optparseApplicative_0_9_1_1;
-  };
+  cake3 = callPackage ../development/tools/haskell/cake3 {};
 
   cpphs = callPackage ../development/tools/misc/cpphs {};
 
@@ -3006,6 +3020,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   hp2anyManager = callPackage ../development/tools/haskell/hp2any-manager {};
 
+  hsb2hs = callPackage ../development/tools/haskell/hsb2hs {};
+
   hscolour = callPackage ../development/tools/haskell/hscolour {};
   hscolourBootstrap = self.hscolour.override {
     cabal = self.cabal.override {
@@ -3045,6 +3061,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
     llvmGeneral = self.llvmGeneral_3_3_8_2;
     llvmGeneralPure = self.llvmGeneralPure_3_3_8_2;
     languageJava = self.languageJava_0_2_6;
+    optparseApplicative = self.optparseApplicative_0_10_0;
   };
 
   idris = callPackage ../development/compilers/idris/wrapper.nix {};
@@ -3055,17 +3072,11 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   taffybar = callPackage ../applications/misc/taffybar {};
 
-  yi = callPackage ../applications/editors/yi/yi.nix {
-    vty = self.vty_4_7_5;
-  };
-
-  yiContrib = callPackage ../applications/editors/yi/yi-contrib.nix {};
+  validation = callPackage ../development/libraries/haskell/validation {};
 
   xlsx = callPackage ../development/libraries/haskell/xlsx {};
 
-  xmobar = callPackage ../applications/misc/xmobar {
-    libmpd = self.libmpd_0_8_0_5;
-  };
+  xmobar = callPackage ../applications/misc/xmobar {};
 
   xmonad = callPackage ../applications/window-managers/xmonad {};
 
@@ -3073,6 +3084,28 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   xmonadExtras = callPackage ../applications/window-managers/xmonad/xmonad-extras.nix {};
 
+  # Yi packages
+
+  dynamicState = callPackage ../development/libraries/haskell/dynamic-state {};
+
+  ooPrototypes = callPackage ../development/libraries/haskell/oo-prototypes {};
+
+  wordTrie = callPackage ../development/libraries/haskell/word-trie {};
+
+  # You should prefer ‘yiCustom’ over ‘yi’ unless you never plan to
+  # use any external libraries in your config.
+  yi = callPackage ../applications/editors/yi/yi.nix { };
+
+  yiContrib = callPackage ../development/libraries/haskell/yi-contrib {};
+
+  yiCustom = callPackage ../applications/editors/yi/yi-custom.nix {
+    extraPackages = [];
+  };
+
+  yiLanguage = callPackage ../development/libraries/haskell/yi-language {};
+
+  yiRope = callPackage ../development/libraries/haskell/yi-rope {};
+
   # Tools.
 
   cabalDb = callPackage ../development/tools/haskell/cabal-db {};
@@ -3133,7 +3166,10 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
   cabalInstall_0_14_0 = callPackage ../tools/package-management/cabal-install/0.14.0.nix {};
   cabalInstall_1_16_0_2 = callPackage ../tools/package-management/cabal-install/1.16.0.2.nix { Cabal = self.Cabal_1_16_0_3; };
   cabalInstall_1_18_0_3 = callPackage ../tools/package-management/cabal-install/1.18.0.3.nix { Cabal = self.Cabal_1_18_1_3; };
-  cabalInstall_1_20_0_3 = callPackage ../tools/package-management/cabal-install/1.20.0.3.nix { Cabal = self.Cabal_1_20_0_2; };
+  cabalInstall_1_20_0_3 = callPackage ../tools/package-management/cabal-install/1.20.0.3.nix {
+    HTTP = self.HTTP.override { network = self.network_2_5_0_0; };
+    Cabal = self.Cabal_1_20_0_2;
+  };
   cabalInstall = self.cabalInstall_1_20_0_3;
 
   codex = callPackage ../development/tools/haskell/codex {};
@@ -3175,7 +3211,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   LambdaHack = callPackage ../games/LambdaHack {
     vectorBinaryInstances = self.vectorBinaryInstances.override {
-      binary = self.binary_0_7_2_1; # the miniutter build input requires this version
+      binary = self.binary_0_7_2_2; # the miniutter build input requires this version
     };
   };
 
diff --git a/pkgs/top-level/lua-packages.nix b/pkgs/top-level/lua-packages.nix
index 8a44a997c07..19cb2b6e24f 100644
--- a/pkgs/top-level/lua-packages.nix
+++ b/pkgs/top-level/lua-packages.nix
@@ -5,15 +5,15 @@
    for each package in a separate file: the call to the function would
    be almost as must code as the function itself. */
 
-{ fetchurl, stdenv, lua, callPackage, unzip, zziplib,
-pcre, oniguruma, gnulib, tre, glibc,
-sqlite }:
+{ fetchurl, stdenv, lua, callPackage, unzip, zziplib
+, pcre, oniguruma, gnulib, tre, glibc, sqlite, openssl, expat
+}:
 
 let
- isLua51 = lua.luaversion == "5.1";
- isLua52 = lua.luaversion == "5.2";
- self = _self;
- _self = with self; {
+  isLua51 = lua.luaversion == "5.1";
+  isLua52 = lua.luaversion == "5.2";
+  self = _self;
+  _self = with self; {
   inherit (stdenv.lib) maintainers;
 
   #define build lua package function
@@ -23,7 +23,57 @@ let
     inherit lua;
   };
 
-  luafilesystem = buildLuaPackage {
+  luabitop = buildLuaPackage rec {
+    version = "1.0.2";
+    name = "bitop-${version}";
+    src = fetchurl {
+      url = "http://bitop.luajit.org/download/LuaBitOp-${version}.tar.gz";
+      sha256 = "16fffbrgfcw40kskh2bn9q7m3gajffwd2f35rafynlnd7llwj1qj";
+    };
+
+    preBuild = ''
+      makeFlagsArray=(
+        INCLUDES="-I${lua}/include"
+        LUA="${lua}/bin/lua");
+    '';
+
+    installPhase = ''
+      mkdir -p $out/lib/lua/${lua.luaversion}
+      install -p bit.so $out/lib/lua/${lua.luaversion}
+    '';
+
+    meta = {
+      homepage = "http://bitop.luajit.org";
+      maintainers = with maintainers; [ flosse ];
+    };
+  };
+
+  luaexpat = buildLuaPackage rec {
+    version = "1.3.0";
+    name = "expat-${version}";
+    isLibrary = true;
+    src = fetchurl {
+      url = "https://matthewwild.co.uk/projects/luaexpat/luaexpat-${version}.tar.gz";
+      sha256 = "1hvxqngn0wf5642i5p3vcyhg3pmp102k63s9ry4jqyyqc1wkjq6h";
+    };
+
+    buildInputs = [ expat ];
+
+    preBuild = ''
+      makeFlagsArray=(
+        LUA_LDIR="$out/share/lua/${lua.luaversion}"
+        LUA_INC="-I${lua}/include" LUA_CDIR="$out/lib/lua/${lua.luaversion}"
+        EXPAT_INC="-I${expat}/include");
+    '';
+
+    meta = {
+      homepage = "http://matthewwild.co.uk/projects/luaexpat";
+      hydraPlatforms = stdenv.lib.platforms.linux;
+      maintainers = [ stdenv.lib.maintainers.flosse ];
+    };
+  };
+
+  luafilesystem = buildLuaPackage rec {
     name = "filesystem-1.6.2";
     src = fetchurl {
       url = "https://github.com/keplerproject/luafilesystem/archive/v1_6_2.tar.gz";
@@ -36,18 +86,44 @@ let
     };
   };
 
+  luasec = buildLuaPackage rec {
+    version = "0.5";
+    name = "sec-${version}";
+    src = fetchurl {
+      url = "https://github.com/brunoos/luasec/archive/luasec-${version}.tar.gz";
+      sha256 = "08rm12cr1gjdnbv2jpk7xykby9l292qmz2v0dfdlgb4jfj7mk034";
+    };
+
+    buildInputs = [ openssl ];
+
+    preBuild = ''
+      makeFlagsArray=(
+        linux
+        LUAPATH="$out/lib/lua/${lua.luaversion}"
+        LUACPATH="$out/lib/lua/${lua.luaversion}"
+        INC_PATH="-I${lua}/include"
+        LIB_PATH="-L$out/lib");
+    '';
+
+    meta = {
+      homepage = "https://github.com/brunoos/luasec";
+      hydraPlatforms = stdenv.lib.platforms.linux;
+      maintainers = [ stdenv.lib.maintainers.flosse ];
+    };
+  };
+
   luasocket = buildLuaPackage rec {
     name = "socket-${version}";
     version = "2.0.2";
     src = fetchurl {
-        url = "http://files.luaforge.net/releases/luasocket/luasocket/luasocket-${version}/luasocket-${version}.tar.gz";
-        sha256 = "19ichkbc4rxv00ggz8gyf29jibvc2wq9pqjik0ll326rrxswgnag";
+      url = "http://files.luaforge.net/releases/luasocket/luasocket/luasocket-${version}/luasocket-${version}.tar.gz";
+      sha256 = "19ichkbc4rxv00ggz8gyf29jibvc2wq9pqjik0ll326rrxswgnag";
     };
     disabled = isLua52;
     patchPhase = ''
-        sed -e "s,^INSTALL_TOP_SHARE.*,INSTALL_TOP_SHARE=$out/share/lua/${lua.luaversion}," \
-            -e "s,^INSTALL_TOP_LIB.*,INSTALL_TOP_LIB=$out/lib/lua/${lua.luaversion}," \
-            -i config
+      sed -e "s,^INSTALL_TOP_SHARE.*,INSTALL_TOP_SHARE=$out/share/lua/${lua.luaversion}," \
+          -e "s,^INSTALL_TOP_LIB.*,INSTALL_TOP_LIB=$out/lib/lua/${lua.luaversion}," \
+          -i config
     '';
     meta = {
       homepage = "http://w3.impa.br/~diego/software/luasocket/";
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 452144e0087..8b80e5a3c71 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -205,6 +205,20 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  Appperlbrew = buildPerlPackage {
+    name = "App-perlbrew-0.71";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/G/GU/GUGOD/App-perlbrew-0.71.tar.gz;
+      sha256 = "5e5de7c4d5235556f6cd5c5e56751fb2d73821ef58390e457db4253542224a09";
+    };
+    buildInputs = [ pkgs.curl IOAll PathClass TestException TestNoWarnings TestOutput TestSpec ];
+    propagatedBuildInputs = [ CPANPerlReleases CaptureTiny DevelPatchPerl locallib ];
+    meta = {
+      description = "Manage perl installations in your $HOME";
+      license = "mit";
+    };
+  };
+
   ArrayCompare = buildPerlPackage {
     name = "Array-Compare-1.18";
     src = fetchurl {
@@ -229,7 +243,7 @@ let self = _self // overrides; _self = with self; {
     name = "Archive-Zip-1.16";
     src = fetchurl {
       url = http://tarballs.nixos.org/Archive-Zip-1.16.tar.gz;
-      md5 = "e28dff400d07b1659d659d8dde7071f1";
+      sha256 = "1ghgs64by3ybjlb0bj65kxysb03k72i7iwmw63g41bj175l44ima";
     };
   };
 
@@ -1683,6 +1697,19 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  CPANPerlReleases = buildPerlPackage {
+    name = "CPAN-Perl-Releases-1.94";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/B/BI/BINGOS/CPAN-Perl-Releases-1.94.tar.gz;
+      sha256 = "ebc70640541f5b6d1191ba7bf958d369d9e21be0908ac812663047290b95fdf2";
+    };
+    meta = {
+      homepage = https://github.com/bingos/cpan-perl-releases;
+      description = "Mapping Perl releases on CPAN to the location of the tarballs";
+      license = "perl";
+    };
+  };
+
   CPANUploader = buildPerlPackage {
     name = "CPAN-Uploader-0.103006";
     src = fetchurl {
@@ -2335,6 +2362,20 @@ let self = _self // overrides; _self = with self; {
     propagatedBuildInputs = [ IOCaptureOutput ];
   };
 
+  DevelPatchPerl = buildPerlPackage {
+    name = "Devel-PatchPerl-1.28";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/B/BI/BINGOS/Devel-PatchPerl-1.28.tar.gz;
+      sha256 = "03085cd6a8b565a4f789c838e8208a8377e0d1aeb7f5becc3b0d3219409d6b82";
+    };
+    propagatedBuildInputs = [ Filepushd ];
+    meta = {
+      homepage = https://github.com/bingos/devel-patchperl;
+      description = "Patch perl source a la Devel::PPPort's buildperl.pl";
+      license = "perl";
+    };
+  };
+
   DevelSizeMe = buildPerlPackage {
     name = "Devel-SizeMe-0.19";
     src = fetchurl {
@@ -4973,6 +5014,18 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  locallib = buildPerlPackage {
+    name = "local-lib-2.000014";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/H/HA/HAARG/local-lib-2.000014.tar.gz;
+      sha256 = "ae63356ab780c5a3aa46287b48daea748a3dd021d9b52dff8bf480b43787fa2b";
+    };
+    meta = {
+      description = "Create and use a local lib/ for perl modules with PERL5LIB";
+      license = "perl";
+    };
+  };
+
   LockFileSimple = buildPerlPackage rec {
     name = "LockFile-Simple-0.208";
     src = fetchurl {
@@ -8851,6 +8904,19 @@ let self = _self // overrides; _self = with self; {
 
   TestSimple = null;
 
+  TestSpec = buildPerlPackage {
+    name = "Test-Spec-0.47";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/P/PH/PHILIP/Test-Spec-0.47.tar.gz;
+      sha256 = "e425c0b9efa3c7e21496d31a607d072a63e31988c3d298a8c1fd7d145cc0681e";
+    };
+    propagatedBuildInputs = [ PackageStash TestDeep TestTrap TieIxHash ];
+    meta = {
+      description = "Write tests in a declarative specification style";
+      license = "perl";
+    };
+  };
+
   TestSubCalls = buildPerlPackage rec {
     name = "Test-SubCalls-1.09";
     src = fetchurl {
diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix
index 700547450ec..ab5057010a3 100644
--- a/pkgs/top-level/php-packages.nix
+++ b/pkgs/top-level/php-packages.nix
@@ -64,7 +64,7 @@ let self = with self; {
 
     src = pkgs.fetchurl {
       url = "http://xcache.lighttpd.net/pub/Releases/${version}/${name}.tar.bz2";
-      md5 = "e5816d47d52be200b959bf69a673ff74";
+      sha256 = "1saysvzwkfmcyg53za4j7qnranxd6871spjzfpclhdlqm043xbw6";
     };
 
     configureFlags = [
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 9613fe5f83f..3f61c164569 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -1,4 +1,4 @@
-{ pkgs, python }:
+{ pkgs, stdenv, python, self }:
 
 with pkgs.lib;
 
@@ -10,6 +10,10 @@ let
   isPyPy = python.executable == "pypy";
   isPy3k = strings.substring 0 1 python.majorVersion == "3";
 
+  callPackage = pkgs.newScope self;
+
+  buildPythonPackage = makeOverridable (callPackage ../development/python-modules/generic { });
+
   # Unique python version identifier
   pythonName =
     if isPy26 then "python26" else
@@ -23,33 +27,27 @@ let
     sqlite3 = null;
     curses = null;
     curses_panel = null;
-    ssl = null;
     crypt = null;
   };
 
+  # glibcLocales doesn't build on Darwin
+  localePath = optionalString (! stdenv.isDarwin) "${pkgs.glibcLocales}/lib/locale/locale-archive";
+
   pythonPackages = modules // import ./python-packages-generated.nix {
     inherit pkgs python;
     inherit (pkgs) stdenv fetchurl;
     self = pythonPackages;
   }
 # Python packages for all python versions
-// rec {
+// {
 
-  inherit python isPy26 isPy27 isPy33 isPy34 isPyPy isPy3k pythonName;
-  inherit (pkgs) fetchurl fetchsvn fetchgit stdenv unzip;
+  inherit python isPy26 isPy27 isPy33 isPy34 isPyPy isPy3k pythonName buildPythonPackage;
 
   # helpers
 
-  # glibcLocales doesn't build on Darwin
-  localePath = optionalString (! stdenv.isDarwin) "${pkgs.glibcLocales}/lib/locale/locale-archive";
-
-  callPackage = pkgs.newScope pythonPackages;
-
   # global distutils config used by buildPythonPackage
   distutils-cfg = callPackage ../development/python-modules/distutils-cfg { };
 
-  buildPythonPackage = makeOverridable (callPackage ../development/python-modules/generic { });
-
   wrapPython = pkgs.makeSetupHook
     { deps = pkgs.makeWrapper;
       substitutions.libPrefix = python.libPrefix;
@@ -82,7 +80,7 @@ let
       maintainer  = with maintainers; [ iyzsong ];
     };
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/d/discid/${name}.tar.gz";
       md5 = "2ad2141452dd10b03ad96ccdad075235";
     };
@@ -97,11 +95,10 @@ let
     hdf5 = pkgs.hdf5.override { mpi = null; };
   };
 
-  h5py-mpi = h5py.override {
+  h5py-mpi = self.h5py.override {
     mpiSupport = true;
     mpi = pkgs.openmpi;
     hdf5 = pkgs.hdf5.override { mpi = pkgs.openmpi; enableShared = true; };
-    inherit mpi4py;
   };
 
   ipython = callPackage ../shells/ipython {
@@ -110,7 +107,7 @@ let
     pylabSupport = !pkgs.stdenv.isDarwin; # cups is not supported on darwin
   };
 
-  ipythonLight = lowPrio (ipython.override {
+  ipythonLight = lowPrio (self.ipython.override {
     qtconsoleSupport = false;
     pylabSupport = false;
     pylabQtSupport = false;
@@ -124,7 +121,7 @@ let
 
   # This is used for NixOps to make sure we won't break it with the next major
   # version of nixpart.
-  nixpart0 = nixpart;
+  nixpart0 = self.nixpart;
 
   pitz = callPackage ../applications/misc/pitz { };
 
@@ -139,17 +136,17 @@ let
 
   pygtk = callPackage ../development/python-modules/pygtk { libglade = null; };
 
-  pyGtkGlade = pygtk.override {
+  pyGtkGlade = self.pygtk.override {
     libglade = pkgs.gnome.libglade;
   };
 
   pyqt4 = callPackage ../development/python-modules/pyqt/4.x.nix {
-    pythonDBus = dbus;
+    pythonDBus = self.dbus;
   };
 
   pyqt5 = callPackage ../development/python-modules/pyqt/5.x.nix {
-    sip = sip_4_16;
-    pythonDBus = dbus;
+    sip = self.sip_4_16;
+    pythonDBus = self.dbus;
   };
 
   sip = callPackage ../development/python-modules/sip { };
@@ -165,12 +162,12 @@ let
   aafigure = buildPythonPackage rec {
     name = "aafigure-0.5";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/a/aafigure/${name}.tar.gz";
       md5 = "5322888a21eb0bb2e749fbf98eddf574";
     };
 
-    propagatedBuildInputs = [ pillow ];
+    propagatedBuildInputs = with self; [ pillow ];
 
     # error: invalid command 'test'
     doCheck = false;
@@ -195,14 +192,14 @@ let
   actdiag = buildPythonPackage rec {
     name = "actdiag-0.5.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/a/actdiag/${name}.tar.gz";
       md5 = "171c47bc1f70e5fadfffd9df0c3157be";
     };
 
-    buildInputs = [ pep8 nose unittest2 docutils ];
+    buildInputs = with self; [ pep8 nose unittest2 docutils ];
 
-    propagatedBuildInputs = [ blockdiag ];
+    propagatedBuildInputs = with self; [ blockdiag ];
 
     # One test fails:
     #   UnicodeEncodeError: 'ascii' codec can't encode character u'\u3042' in position 0: ordinal not in range(128)
@@ -222,18 +219,18 @@ let
     rev = "9744c18c4d6b0a3e7f57b01e5fe145a60fc82a47";
     name = "afew-1.0_${rev}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/teythoon/afew/tarball/${rev}";
       name = "${name}.tar.bz";
       sha256 = "1qyban022aji2hl91dh0j3xa6ikkxl5argc6w71yp2x8b02kp3mf";
     };
 
-    buildInputs = [ pkgs.dbacl ];
+    buildInputs = with self; [ pkgs.dbacl ];
 
-    propagatedBuildInputs = [
-      pythonPackages.notmuch
-      pythonPackages.chardet
-    ] ++ optional (!isPy3k) pythonPackages.subprocess32;
+    propagatedBuildInputs = with self; [
+      self.notmuch
+      self.chardet
+    ] ++ optional (!isPy3k) self.subprocess32;
 
     doCheck = false;
 
@@ -257,13 +254,13 @@ let
   alembic = buildPythonPackage rec {
     name = "alembic-0.6.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/a/alembic/${name}.tar.gz";
       md5 = "71e4a8f6849e1527abfc4ea33d51f37c";
     };
 
-    buildInputs = [ nose mock ];
-    propagatedBuildInputs = [ Mako sqlalchemy9 ];
+    buildInputs = with self; [ nose mock ];
+    propagatedBuildInputs = with self; [ Mako sqlalchemy9 ];
 
     meta = {
       homepage = http://bitbucket.org/zzzeek/alembic;
@@ -276,42 +273,42 @@ let
   almir = buildPythonPackage rec {
     name = "almir-0.1.8";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/a/almir/${name}.zip";
       md5 = "9a1f3c72a039622ca72b74be7a1cd37e";
     };
 
-    buildInputs = [
+    buildInputs = with self; [
       pkgs.which
-      pythonPackages.coverage
-      pythonPackages.mock
-      pythonPackages.tissue
-      pythonPackages.unittest2
-      pythonPackages.webtest
+      self.coverage
+      self.mock
+      self.tissue
+      self.unittest2
+      self.webtest
     ];
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       pkgs.makeWrapper
       pkgs.bacula
-      pythonPackages.colander
-      pythonPackages.deform
-      pythonPackages.deform_bootstrap
-      pythonPackages.docutils
-      pythonPackages.nose
-      pythonPackages.mysql_connector_repackaged
-      pythonPackages.pg8000
-      pythonPackages.pyramid
-      pythonPackages.pyramid_beaker
-      pythonPackages.pyramid_exclog
-      pythonPackages.pyramid_jinja2
-      pythonPackages.pyramid_tm
-      pythonPackages.pytz
-      pythonPackages.sqlalchemy
-      pythonPackages.transaction
-      pythonPackages.waitress
-      pythonPackages.webhelpers
-      pythonPackages.zope_sqlalchemy
-      pythonPackages.psycopg2
+      self.colander
+      self.deform
+      self.deform_bootstrap
+      self.docutils
+      self.nose
+      self.mysql_connector_repackaged
+      self.pg8000
+      self.pyramid
+      self.pyramid_beaker
+      self.pyramid_exclog
+      self.pyramid_jinja2
+      self.pyramid_tm
+      self.pytz
+      self.sqlalchemy
+      self.transaction
+      self.waitress
+      self.webhelpers
+      self.zope_sqlalchemy
+      self.psycopg2
     ];
 
     postInstall = ''
@@ -329,7 +326,7 @@ let
     rev = "fa4ddf000dc2ac4933852b210901b649634a5f86";
     name = "alot-0.3.5_${rev}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/pazz/alot/tarball/${rev}";
       name = "${name}.tar.bz";
       sha256 = "0h11lqyxg0xbkc9y1xqjvd0kmfm5pdwnmv9chmlsi1614dxn08n0";
@@ -339,12 +336,12 @@ let
     doCheck = false;
 
     propagatedBuildInputs =
-      [ pythonPackages.notmuch
-        pythonPackages.urwid
-        pythonPackages.twisted
-        pythonPackages.magic
-        pythonPackages.configobj
-        pythonPackages.pygpgme
+      [ self.notmuch
+        self.urwid
+        self.twisted
+        self.magic
+        self.configobj
+        self.pygpgme
       ];
 
     postInstall = ''
@@ -364,12 +361,12 @@ let
     name = "anyjson-0.3.3";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/a/anyjson/${name}.tar.gz";
       md5 = "2ea28d6ec311aeeebaf993cb3008b27c";
     };
 
-    buildInputs = [ pythonPackages.nose ];
+    buildInputs = with self; [ self.nose ];
 
     meta = {
       homepage = http://pypi.python.org/pypi/anyjson/;
@@ -381,7 +378,7 @@ let
   amqplib = buildPythonPackage rec {
     name = "amqplib-0.6.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://py-amqplib.googlecode.com/files/${name}.tgz";
       sha1 = "f124e5e4a6644bf6d1734032a01ac44db1b25a29";
     };
@@ -400,12 +397,12 @@ let
     name = "apsw-3.7.6.2-r1";
     disabled = isPyPy;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://apsw.googlecode.com/files/${name}.zip";
       sha1 = "fa4aec08e59fa5964197f59ba42408d64031675b";
     };
 
-    buildInputs = [ pkgs.sqlite ];
+    buildInputs = with self; [ pkgs.sqlite ];
 
     # python: double free or corruption (fasttop): 0x0000000002fd4660 ***
     doCheck = false;
@@ -420,9 +417,9 @@ let
   apscheduler = buildPythonPackage rec {
     name = "APScheduler-2.1.2";
 
-    propagatedBuildInputs = with pythonPackages; [ futures tzlocal six pytest mock];
+    propagatedBuildInputs = with self; [ futures tzlocal six pytest mock];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/A/APScheduler/APScheduler-2.1.2.tar.gz";
       md5 = "6862959d460c16ef325d63e1fc3a6684";
     };
@@ -438,7 +435,7 @@ let
   area53 = buildPythonPackage (rec {
     name = "Area53-0.94";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/A/Area53/${name}.tar.gz";
       sha256 = "0v9b7f8b6v21y410anx5sr52k2ac8jrzdf19q6m6p0zsdsf9vr42";
     };
@@ -446,7 +443,7 @@ let
     # error: invalid command 'test'
     doCheck = false;
 
-    propagatedBuildInputs = [ pythonPackages.boto ];
+    propagatedBuildInputs = with self; [ self.boto ];
 
   });
 
@@ -454,7 +451,7 @@ let
     name = "arrow-${version}";
     version = "0.4.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://pypi.python.org/packages/source/a/arrow/${name}.tar.gz";
       sha256 = "1sdr4gyjgvz86yr0ll0i11mgy8l1slndr7f0ngam87rpy78gp052";
     };
@@ -473,10 +470,10 @@ let
     disabled = isPy3k;
     meta.maintainers = [ stdenv.lib.maintainers.mornfall ];
 
-    buildInputs = [ pkgs.zlib ];
+    buildInputs = with self; [ pkgs.zlib ];
     doCheck = false;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/a/async/${name}.tar.gz";
       sha256 = "1lfmjm8apy9qpnpbq8g641fd01qxh9jlya5g2d6z60vf8p04rla1";
     };
@@ -485,7 +482,7 @@ let
   argparse = buildPythonPackage (rec {
     name = "argparse-1.2.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://argparse.googlecode.com/files/${name}.tar.gz";
       sha256 = "192174mys40m0bwk6l5jlfnzps0xi81sxm34cqms6dc3c454pbyx";
     };
@@ -512,23 +509,23 @@ let
   });
 
   astroid = buildPythonPackage (rec {
-    name = "astroid-1.1.1";
-    propagatedBuildInputs = [ logilab_common ];
-    src = fetchurl {
-      url = "https://pypi.python.org/packages/source/a/astroid/${name}.tar.gz";
-      sha256 = "1x7103mlzndgg66yas6xrfwkwpihcq4bi9m8py1fjnhz8p5ka1vq";
+    name = "astroid-1.2.1";
+    propagatedBuildInputs = with self; [ logilab_common ];
+    src = pkgs.fetchurl {
+      url = "https://pypi.python.org/packages/source/a/astroid/${name}.zip";
+      md5 = "337017c82a28c97741797493fb2c980f";
     };
   });
 
   autopep8 = buildPythonPackage (rec {
     name = "autopep8-1.0.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/a/autopep8/${name}.tar.gz";
       md5 = "7c16d385cf9ad7c1d7fbcfcea2588a56";
     };
 
-    propagatedBuildInputs = [ pep8 ];
+    propagatedBuildInputs = with self; [ pep8 ];
 
     # One test fails:
     # FAIL: test_recursive_should_not_crash_on_unicode_filename (test.test_autopep8.CommandLineTests)
@@ -548,7 +545,7 @@ let
 
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/a/avro/${name}.tar.gz";
       md5 = "7f4893205e5ad69ac86f6b44efb7df72";
     };
@@ -564,7 +561,7 @@ let
 
     disabled = (!isPy3k);
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/a/avro3k/${name}.tar.gz";
       sha256 = "15ahl0irwwj558s964abdxg4vp6iwlabri7klsm2am6q5r0ngsky";
     };
@@ -577,10 +574,10 @@ let
     };
   }));
 
-  backports_ssl_match_hostname_3_4_0_2 = pythonPackages.buildPythonPackage rec {
+  backports_ssl_match_hostname_3_4_0_2 = self.buildPythonPackage rec {
     name = "backports.ssl_match_hostname-3.4.0.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/b/backports.ssl_match_hostname/backports.ssl_match_hostname-3.4.0.2.tar.gz";
       md5 = "788214f20214c64631f0859dc79f23c6";
     };
@@ -595,7 +592,7 @@ let
     version = "0.1.9";
     name = "batinfo-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/b/batinfo/${name}.tar.gz";
       sha256 = "0ppzbh8lii16xfq5piczn82hwps1fnbq9rbwwl3rdpdx0n86l560";
     };
@@ -612,12 +609,12 @@ let
   bcdoc = buildPythonPackage rec {
     name = "bcdoc-0.12.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/b/bcdoc/bcdoc-0.12.1.tar.gz";
       md5 = "7c8617347c294ea4d36ec73fb5b2c26e";
     };
 
-    buildInputs = [ pythonPackages.docutils pythonPackages.six ];
+    buildInputs = with self; [ self.docutils self.six ];
 
     meta = {
       homepage = https://github.com/botocore/bcdoc;
@@ -630,7 +627,7 @@ let
     name = "beautifulsoup-3.2.1";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://www.crummy.com/software/BeautifulSoup/download/3.x/BeautifulSoup-3.2.1.tar.gz";
       sha256 = "1nshbcpdn0jpcj51x0spzjp519pkmqz0n0748j7dgpz70zlqbfpm";
     };
@@ -648,7 +645,7 @@ let
   beautifulsoup4 = buildPythonPackage (rec {
     name = "beautifulsoup4-4.1.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/b/beautifulsoup4/${name}.tar.gz";
       md5 = "f1481ed77336de77a2d8e5b061b6ad62";
     };
@@ -670,17 +667,17 @@ let
 
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/B/Beaker/${name}.tar.gz";
       md5 = "c2e102870ed4c53104dec48ceadf8e9d";
     };
 
     buildInputs =
-      [ pythonPackages.sqlalchemy
-        pythonPackages.pycryptopp
-        pythonPackages.nose
-        pythonPackages.mock
-        pythonPackages.webtest
+      [ self.sqlalchemy
+        self.pycryptopp
+        self.nose
+        self.mock
+        self.webtest
       ];
 
     # http://hydra.nixos.org/build/4511591/log/raw
@@ -699,14 +696,14 @@ let
   bedup = buildPythonPackage rec {
     name = "bedup-20140413";
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = "https://github.com/g2p/bedup.git";
       rev = "5189e166145b8954ac41883f81ef3c3b50dc96ab";
       sha256 = "e61768fa19934bd176799f90bda3ea9f49a5def21fa2523a8e47df8a48e730e9";
     };
 
-    buildInputs = [ pkgs.btrfsProgs ];
-    propagatedBuildInputs = with pkgs; [ contextlib2 sqlalchemy9 pyxdg pycparser alembic ]
+    buildInputs = with self; [ pkgs.btrfsProgs ];
+    propagatedBuildInputs = with self; [ contextlib2 sqlalchemy9 pyxdg pycparser alembic ]
       ++ optionals (!isPyPy) [ cffi ];
 
     meta = {
@@ -728,7 +725,7 @@ let
   beets = buildPythonPackage rec {
     name = "beets-1.3.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/b/beets/${name}.tar.gz";
       md5 = "59615a54b3ac3983159e77ff9dda373e";
     };
@@ -737,20 +734,20 @@ let
     preConfigure = "export HOME=$TMPDIR";
 
     propagatedBuildInputs =
-      [ pythonPackages.pyyaml
-        pythonPackages.unidecode
-        pythonPackages.mutagen
-        pythonPackages.munkres
-        pythonPackages.musicbrainzngs
-        pythonPackages.enum34
-        pythonPackages.pylast
-        pythonPackages.rarfile
-        pythonPackages.flask
+      [ self.pyyaml
+        self.unidecode
+        self.mutagen
+        self.munkres
+        self.musicbrainzngs
+        self.enum34
+        self.pylast
+        self.rarfile
+        self.flask
         modules.sqlite3
         modules.readline
       ];
 
-    buildInputs = with pythonPackages; [ mock pyechonest six responses nose ];
+    buildInputs = with self; [ mock pyechonest six responses nose ];
 
     # 10 tests are failing
     doCheck = false;
@@ -763,26 +760,70 @@ let
     };
   };
 
-  responses = pythonPackages.buildPythonPackage rec {
+  circus = buildPythonPackage rec {
+    name = "circus-0.11.1";
+
+    src = pkgs.fetchurl {
+      url = "https://pypi.python.org/packages/source/c/circus/${name}.tar.gz";
+      md5 = "5c07cdbe9bb4a9b82e52737ad590617b";
+    };
+
+    doCheck = false; # weird error
+
+    propagatedBuildInputs = with self; [ iowait psutil pyzmq tornado mock ];
+  };
+
+  cvxopt = buildPythonPackage rec {
+    name = "${pname}-${version}";
+    pname = "cvxopt";
+    version = "1.1.7";
+    disabled = isPyPy;
+    src = pkgs.fetchurl {
+      url = "https://pypi.python.org/packages/source/c/${pname}/${name}.tar.gz";
+      sha256 = "f856ea2e9e2947abc1a6557625cc6b0e45228984f397a90c420b2f468dc4cb97";
+    };
+    doCheck = false;
+    buildInputs = with pkgs; [ liblapack blas ];
+    meta = with stdenv.lib; {
+      homepage = "http://cvxopt.org/";
+      description = "Python Software for Convex Optimization";
+      maintainers = with maintainers; [ edwtjo ];
+      licsense = licenses.gpl3Plus;
+    };
+  };
+
+  iowait = buildPythonPackage rec {
+    name = "iowait-0.2";
+
+    src = pkgs.fetchurl {
+      url = "https://pypi.python.org/packages/source/i/iowait/${name}.tar.gz";
+      md5 = "f49ca7766fe4a67e03a731e575614f87";
+    };
+
+    meta = with stdenv.lib; {
+      description = "Platform-independent module for I/O completion events";
+      homepage = https://launchpad.net/python-iowait;
+    };
+  };
+
+  responses = self.buildPythonPackage rec {
     name = "responses-0.2.2";
 
-    propagatedBuildInputs = with pythonPackages; [ requests mock six pytest flake8 ];
+    propagatedBuildInputs = with self; [ requests mock six pytest flake8 ];
 
     doCheck = false;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/r/responses/responses-0.2.2.tar.gz";
       md5 = "5d79fd425cf8d858dfc8afa6475395d3";
     };
 
   };
 
-  rarfile = pythonPackages.buildPythonPackage rec {
+  rarfile = self.buildPythonPackage rec {
     name = "rarfile-2.6";
 
-    propagatedBuildInputs = with pythonPackages; [  ];
-
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/r/rarfile/rarfile-2.6.tar.gz";
       md5 = "50ce3f3fdb9196a00059a5ea7b3739fd";
     };
@@ -793,12 +834,10 @@ let
     };
   };
 
-  pyechonest = pythonPackages.buildPythonPackage rec {
+  pyechonest = self.buildPythonPackage rec {
     name = "pyechonest-8.0.2";
 
-    propagatedBuildInputs = with pythonPackages; [  ];
-
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pyechonest/pyechonest-8.0.2.tar.gz";
       md5 = "5586fe8ece7af4e24f71ea740185127e";
     };
@@ -813,12 +852,12 @@ let
   bitbucket_api = buildPythonPackage rec {
     name = "bitbucket-api-0.4.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/b/bitbucket-api/${name}.tar.gz";
       md5 = "6f3cee3586c4aad9c0b2e04fce9704fb";
     };
 
-    propagatedBuildInputs = [ requests_oauth2 nose sh ];
+    propagatedBuildInputs = with self; [ requests_oauth2 nose sh ];
 
     doCheck = false;
 
@@ -831,12 +870,12 @@ let
 
   bitbucket-cli = buildPythonPackage rec {
     name = "bitbucket-cli-0.4.1";
-    src = fetchurl {
+    src = pkgs.fetchurl {
        url = "https://pypi.python.org/packages/source/b/bitbucket-cli/${name}.tar.gz";
        md5 = "79cdbdc6c95dfa313d12cbdef406c9f2";
     };
 
-    pythonPath = [ requests ];
+    pythonPath = [ self.requests ];
 
     meta = with stdenv.lib; {
       description = "Bitbucket command line interface";
@@ -849,7 +888,7 @@ let
   bitstring = buildPythonPackage rec {
     name = "bitstring-3.1.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://python-bitstring.googlecode.com/files/${name}.zip";
       sha256 = "1i1p3rkj4ad108f23xyib34r4rcy571gy65paml6fk77knh0k66p";
     };
@@ -871,7 +910,7 @@ let
     name = "blinker-${version}";
     version = "1.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/b/blinker/${name}.tar.gz";
       md5 = "66e9688f2d287593a0e698cd8a5fbc57";
     };
@@ -887,14 +926,14 @@ let
   blockdiag = buildPythonPackage rec {
     name = "blockdiag-1.3.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/b/blockdiag/${name}.tar.gz";
       md5 = "602a8750f312eeee84d6d138055dfae7";
     };
 
-    buildInputs = [ pep8 nose unittest2 docutils ];
+    buildInputs = with self; [ pep8 nose unittest2 docutils ];
 
-    propagatedBuildInputs = [ pillow webcolors funcparserlib ];
+    propagatedBuildInputs = with self; [ pillow webcolors funcparserlib ];
 
     # One test fails:
     #   ...
@@ -913,12 +952,12 @@ let
 
   bpython = buildPythonPackage rec {
      name = "bpython-0.12";
-     src = fetchurl {
+     src = pkgs.fetchurl {
        url = "http://www.bpython-interpreter.org/releases/bpython-0.12.tar.gz";
        sha256 = "1ilf58qq7sazmcgg4f1wswbhcn2gb8qbbrpgm6gf0j2lbm60gabl";
      };
 
-     propagatedBuildInputs = [ modules.curses pygments ];
+     propagatedBuildInputs = with self; [ modules.curses pygments ];
      doCheck = false;
 
      meta = {
@@ -935,7 +974,7 @@ let
     name = "boto-${version}";
     version = "2.32.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/boto/boto/archive/${version}.tar.gz";
       sha256 = "0bl5y7m0m84rz4q7hx783kxpj1n9wcm7dhv54bnx8cnanyd13cxn";
     };
@@ -963,15 +1002,15 @@ let
     version = "0.33.0";
     name = "botocore-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/b/botocore/${name}.tar.gz";
       md5 = "6743c73a2e148abaa9c487a6e2ee53a3";
     };
 
     propagatedBuildInputs =
-      [ pythonPackages.dateutil
-        pythonPackages.requests
-        pythonPackages.jmespath
+      [ self.dateutil
+        self.requests
+        self.jmespath
       ];
 
     meta = {
@@ -988,12 +1027,12 @@ let
     version = "0.12.7";
     name = "bottle-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/b/bottle/${name}.tar.gz";
       sha256 = "0wr0gfz0bqlzhxk691x0xnf80b8v5pnl3jpnbgs1m9bcy28j3sp3";
     };
 
-    propagatedBuildInputs = [ setuptools ];
+    propagatedBuildInputs = with self; [ setuptools ];
 
     meta = with stdenv.lib; {
       homepage = http://bottlepy.org;
@@ -1008,12 +1047,12 @@ let
   # bugz = buildPythonPackage (rec {
   #   name = "bugz-0.9.3";
   #
-  #   src = fetchgit {
+  #   src = pkgs.fetchgit {
   #     url = "https://github.com/williamh/pybugz.git";
   #     rev = "refs/tags/0.9.3";
   #   };
   #
-  #   propagatedBuildInputs = [ pythonPackages.argparse modules.ssl ];
+  #   propagatedBuildInputs = with self; [ self.argparse ];
   #
   #   doCheck = false;
   #
@@ -1024,19 +1063,19 @@ let
   # });
 
 
-  buildout = zc_buildout;
-  buildout152 = zc_buildout152;
+  buildout = self.zc_buildout;
+  buildout152 = self.zc_buildout152;
 
   # A patched version of buildout, useful for buildout based development on Nix
   zc_buildout_nix = callPackage ../development/python-modules/buildout-nix { };
 
-  zc_recipe_egg = zc_recipe_egg_buildout171;
-  zc_buildout = zc_buildout171;
-  zc_buildout2 = zc_buildout221;
+  zc_recipe_egg = self.zc_recipe_egg_buildout171;
+  zc_buildout = self.zc_buildout171;
+  zc_buildout2 = self.zc_buildout221;
   zc_buildout221 = buildPythonPackage rec {
     name = "zc.buildout-2.2.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zc.buildout/${name}.tar.gz";
       md5 = "476a06eed08506925c700109119b6e41";
     };
@@ -1054,7 +1093,7 @@ let
 
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zc.buildout/${name}.tar.gz";
       md5 = "8834a21586bf2be53dc412002241a996";
     };
@@ -1072,7 +1111,7 @@ let
 
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zc.buildout/${name}.tar.gz";
       md5 = "87f7b3f8d13926c806242fd5f6fe36f7";
     };
@@ -1095,21 +1134,21 @@ let
     inherit version;
     name = "zc.recipe.egg-${version}";
 
-    buildInputs = [ buildout ];
+    buildInputs = with self; [ buildout ];
     doCheck = false;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       inherit md5;
       url = "https://pypi.python.org/packages/source/z/zc.recipe.egg/zc.recipe.egg-${version}.tar.gz";
     };
   };
-  zc_recipe_egg_buildout171 = zc_recipe_egg_fun {
-    buildout = zc_buildout171;
+  zc_recipe_egg_buildout171 = self.zc_recipe_egg_fun {
+    buildout = self.zc_buildout171;
     version = "1.3.2";
     md5 = "1cb6af73f527490dde461d3614a36475";
   };
-  zc_recipe_egg_buildout2 = zc_recipe_egg_fun {
-    buildout = zc_buildout2;
+  zc_recipe_egg_buildout2 = self.zc_recipe_egg_fun {
+    buildout = self.zc_buildout2;
     version = "2.0.1";
     md5 = "5e81e9d4cc6200f5b1abcf7c653dd9e3";
   };
@@ -1118,7 +1157,7 @@ let
     name = "bunch-1.0.1";
     meta.maintainers = [ stdenv.lib.maintainers.mornfall ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/b/bunch/${name}.tar.gz";
       sha256 = "1akalx2pd1fjlvrq69plvcx783ppslvikqdm93z2sdybq07pmish";
     };
@@ -1129,12 +1168,12 @@ let
   cairocffi = buildPythonPackage rec {
     name = "cairocffi-0.5.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/c/cairocffi/${name}.tar.gz";
       md5 = "e3fa4002583bfaa88b156e1af9c75bde";
     };
 
-    propagatedBuildInputs = [ cffi ];
+    propagatedBuildInputs = with self; [ cffi ];
 
     meta = {
       homepage = https://github.com/SimonSapin/cairocffi;
@@ -1147,16 +1186,16 @@ let
   carrot = buildPythonPackage rec {
     name = "carrot-0.10.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/c/carrot/${name}.tar.gz";
       md5 = "530a0614de3a669314c3acd4995c54d5";
     };
 
-    buildInputs = [ pythonPackages.nose ];
+    buildInputs = with self; [ self.nose ];
 
     propagatedBuildInputs =
-      [ pythonPackages.amqplib
-        pythonPackages.anyjson
+      [ self.amqplib
+        self.anyjson
       ];
 
     doCheck = false; # depends on the network
@@ -1171,7 +1210,7 @@ let
     name = "certifi-${version}";
     version = "14.05.14";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/c/certifi/${name}.tar.gz";
       sha256 = "0s8vxzfz6s4m6fvxc7z25k9j35w0rh6jkw3wwcd1az1mssncn6qy";
     };
@@ -1186,12 +1225,12 @@ let
 
   characteristic = buildPythonPackage rec {
     name = "characteristic-14.1.0";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/c/characteristic/${name}.tar.gz";
       md5 = "68ea7e28997fc57d3631791ec0567a05";
     };
 
-    buildInputs = [ pythonPackages.pytest ];
+    buildInputs = with self; [ self.pytest ];
 
     meta = {
       description = "Python attributes without boilerplate";
@@ -1205,12 +1244,12 @@ let
     name = "cheetah-${version}";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/C/Cheetah/Cheetah-${version}.tar.gz";
       md5 = "853917116e731afbc8c8a43c37e6ddba";
     };
 
-    propagatedBuildInputs = [ pythonPackages.markdown ];
+    propagatedBuildInputs = with self; [ self.markdown ];
 
     meta = {
       homepage = http://www.cheetahtemplate.org/;
@@ -1223,7 +1262,7 @@ let
     name = "cherrypy-${version}";
     version = "3.2.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://download.cherrypy.org/cherrypy/${version}/CherryPy-${version}.tar.gz";
       sha256 = "14dn129h69wj0h8yr0bjwbrk8kygl6mkfnxc5m3fxhlm4xb8hnnw";
     };
@@ -1240,7 +1279,7 @@ let
 
   click = buildPythonPackage {
     name = "click-2.1";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://pypi.python.org/packages/source/c/click/click-2.1.tar.gz;
       md5 = "0ba97ba09af82c56e2d35f3412d0aa6e";
     };
@@ -1255,12 +1294,12 @@ let
   clepy = buildPythonPackage rec {
     name = "clepy-0.3.20";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/c/clepy/${name}.tar.gz";
       sha256 = "16vibfxms5z4ld8gbkra6dkhqm2cc3jnn0fwp7mw70nlwxnmm51c";
     };
 
-    buildInputs = [ pythonPackages.mock pythonPackages.nose pythonPackages.decorator ];
+    buildInputs = with self; [ self.mock self.nose self.decorator ];
 
     meta = {
       homepage = http://code.google.com/p/clepy/;
@@ -1273,7 +1312,7 @@ let
     name = "clientform-0.2.10";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/C/ClientForm/ClientForm-0.2.10.tar.gz";
       sha256 = "0dydh3i1sx7rrj6d0gj375wkjpiivm7jjlsimw6hmwv4ck7yf1wm";
     };
@@ -1292,7 +1331,7 @@ let
     version = "2.3";
     name    = "cogapp-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://pypi.python.org/packages/source/c/cogapp/${name}.tar.gz";
       sha256 = "0gzmzbsk54r1qa6wd0yg4zzdxvn2f19ciprr2acldxaknzrpllnn";
     };
@@ -1313,12 +1352,12 @@ let
   colorama = buildPythonPackage rec {
     name = "colorama-0.2.5";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/c/colorama/colorama-0.2.5.tar.gz";
       md5 = "308c6e38917bdbfc4d3b0783c614897d";
     };
 
-    propagatedBuildInputs = [ pythonPackages.clientform ];
+    propagatedBuildInputs = with self; [ self.clientform ];
 
     doCheck = false;
 
@@ -1333,18 +1372,18 @@ let
   coilmq = buildPythonPackage (rec {
     name = "coilmq-0.6.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/C/CoilMQ/CoilMQ-0.6.1.tar.gz";
       md5 = "5f39727415b837abd02651eeb2721749";
     };
 
-    propagatedBuildInputs = [ pythonPackages.stompclient ];
+    propagatedBuildInputs = with self; [ self.stompclient ];
 
     preConfigure = ''
       sed -i '/distribute/d' setup.py
     '';
 
-    buildInputs = [ pythonPackages.coverage pythonPackages.sqlalchemy ];
+    buildInputs = with self; [ self.coverage self.sqlalchemy ];
 
     # ValueError: Could not parse auth file:
     # /tmp/nix-build-.../CoilMQ-0.6.1/coilmq/tests/resources/auth.ini
@@ -1361,12 +1400,12 @@ let
   colander = buildPythonPackage rec {
     name = "colander-1.0b1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/c/colander/${name}.tar.gz";
       md5 = "89f2cf4b5c87d43f7917d6a0d4872e6a";
     };
 
-    propagatedBuildInputs = [ pythonPackages.translationstring ];
+    propagatedBuildInputs = with self; [ self.translationstring ];
 
     meta = {
       maintainers = [
@@ -1381,13 +1420,13 @@ let
   ColanderAlchemy = buildPythonPackage rec {
     name = "ColanderAlchemy-0.2.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/C/ColanderAlchemy/${name}.tar.gz";
       md5 = "b054837bd2753cbf15f7d5028cba421b";
     };
 
-    buildInputs = [ unittest2 ];
-    propagatedBuildInputs = [ colander sqlalchemy9 ];
+    buildInputs = with self; [ unittest2 ];
+    propagatedBuildInputs = with self; [ colander sqlalchemy9 ];
 
     # string: argument name cannot be overridden via info kwarg.
     doCheck = false;
@@ -1403,7 +1442,7 @@ let
   configobj = buildPythonPackage (rec {
     name = "configobj-5.0.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/c/configobj/${name}.tar.gz";
       md5 = "e472a3a1c2a67bb0ec9b5d54c13a47d6";
     };
@@ -1411,7 +1450,7 @@ let
     # error: invalid command 'test'
     doCheck = false;
 
-    propagatedBuildInputs = [ six ];
+    propagatedBuildInputs = with self; [ six ];
 
     meta = {
       description = "Config file reading, writing and validation.";
@@ -1426,12 +1465,12 @@ let
     version = "1.1.fb10";
     name = "configshell-fb-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/agrover/configshell-fb/archive/v${version}.tar.gz";
       sha256 = "1dd87xvm98nk3jzybb041gjdahi2z9b53pwqhyxcfj4a91y82ndy";
     };
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       pyparsing
       modules.readline
       urwid
@@ -1448,12 +1487,12 @@ let
   construct = buildPythonPackage rec {
     name = "construct-2.5.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/c/construct/${name}.tar.gz";
       sha256 = "08qksl87vr6g2wjxwsyrjh4w6v8bfmcgrcgln7irqvw5vv7qgqss";
     };
 
-    propagatedBuildInputs = [ six ];
+    propagatedBuildInputs = with self; [ six ];
 
     meta = with stdenv.lib; {
       description = "Powerful declarative parser (and builder) for binary data";
@@ -1468,7 +1507,7 @@ let
   contextlib2 = buildPythonPackage rec {
     name = "contextlib2-0.4.0";
 
-    src = fetchurl rec {
+    src = pkgs.fetchurl rec {
       url = "https://pypi.python.org/packages/source/c/contextlib2/${name}.tar.gz";
       md5 = "ea687207db25f65552061db4a2c6727d";
     };
@@ -1477,7 +1516,7 @@ let
   coverage = buildPythonPackage rec {
     name = "coverage-3.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/c/coverage/${name}.tar.gz";
       md5 = "67d4e393f4c6a5ffc18605409d2aa1ac";
     };
@@ -1491,27 +1530,27 @@ let
 
   covCore = buildPythonPackage rec {
     name = "cov-core-1.7";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/c/cov-core/cov-core-1.7.tar.gz";
       md5 = "59c1e22e636633e10120beacbf45b28c";
     };
     meta = {
       description = "plugin core for use by pytest-cov, nose-cov and nose2-cov";
     };
-    propagatedBuildInputs = [ pythonPackages.coverage ];
+    propagatedBuildInputs = with self; [ self.coverage ];
   };
 
   cython = buildPythonPackage rec {
     name = "Cython-0.20.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://www.cython.org/release/${name}.tar.gz";
       sha256 = "0v3nc9z5ynnnjdgcgkyy5g9wazmkjv53nnpjal1v3mr199s6799i";
     };
 
     setupPyBuildFlags = ["--build-base=$out"];
 
-    buildInputs = [ pkgs.pkgconfig ];
+    buildInputs = with self; [ pkgs.pkgconfig ];
 
     meta = {
       description = "An interpreter to help writing C extensions for Python 2";
@@ -1522,10 +1561,10 @@ let
   cryptacular = buildPythonPackage rec {
     name = "cryptacular-1.4.1";
 
-    buildInputs = [ coverage nose ];
-    propagatedBuildInputs = [ pbkdf2 modules.crypt ];
+    buildInputs = with self; [ coverage nose ];
+    propagatedBuildInputs = with self; [ pbkdf2 modules.crypt ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/c/cryptacular/${name}.tar.gz";
       md5 = "fe12232ac660185186dd8057d8ca7b0e";
     };
@@ -1538,12 +1577,12 @@ let
     };
   };
 
-  detox = pythonPackages.buildPythonPackage rec {
+  detox = self.buildPythonPackage rec {
     name = "detox-0.9.3";
 
-    propagatedBuildInputs = with pythonPackages; [ tox py eventlet ];
+    propagatedBuildInputs = with self; [ tox py eventlet ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/d/detox/detox-0.9.3.tar.gz";
       md5 = "b52588ec61cd4c2d33e419677a5eac8c";
     };
@@ -1558,7 +1597,7 @@ let
   pbkdf2 = buildPythonPackage rec {
     name = "pbkdf2-1.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pbkdf2/${name}.tar.gz";
       md5 = "40cda566f61420490206597243dd869f";
     };
@@ -1574,12 +1613,12 @@ let
   bcrypt = buildPythonPackage rec {
     name = "bcrypt-1.0.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/b/bcrypt/${name}.tar.gz";
       md5 = "c5df008669d17dd6eeb5e2042d5e136f";
     };
 
-    buildInputs = [ pycparser mock pytest py ] ++ optionals (!isPyPy) [ cffi ];
+    buildInputs = with self; [ pycparser mock pytest py ] ++ optionals (!isPyPy) [ cffi ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
@@ -1589,12 +1628,12 @@ let
   cffi = buildPythonPackage rec {
     name = "cffi-0.7.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/c/cffi/${name}.tar.gz";
       md5 = "d329f5cb2053fd31dafc02e2c9ef0299";
     };
 
-    propagatedBuildInputs = [ pkgs.libffi pycparser ];
+    propagatedBuildInputs = with self; [ pkgs.libffi pycparser ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
@@ -1604,13 +1643,13 @@ let
   pycollada = buildPythonPackage rec {
     name = "pycollada-0.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pycollada/${name}.tar.gz";
       md5 = "5d0f00c035491b945cdccdfd8a698ad2";
     };
 
     # pycollada-0.4 needs python-dateutil==1.5
-    buildInputs = [ dateutil_1_5 numpy ];
+    buildInputs = with self; [ dateutil_1_5 numpy ];
 
     # Some tests fail because they refer to test data files that don't exist
     # (upstream packaging issue)
@@ -1628,7 +1667,7 @@ let
   pycparser = buildPythonPackage rec {
     name = "pycparser-2.10";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pycparser/${name}.tar.gz";
       md5 = "d87aed98c8a9f386aa56d365fe4d515f";
     };
@@ -1644,7 +1683,7 @@ let
   pytest = buildPythonPackage rec {
     name = "pytest-2.6.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pytest/${name}.tar.gz";
       md5 = "0a1735fb1d481ef3864f34678607ba85";
     };
@@ -1654,11 +1693,11 @@ let
       rm testing/test_argcomplete.py
     '';
 
-    propagatedBuildInputs = [ py ]
+    propagatedBuildInputs = with self; [ py ]
       ++ (optional isPy26 argparse)
       ++ stdenv.lib.optional
         pkgs.config.pythonPackages.pytest.selenium or false
-        pythonPackages.selenium;
+        self.selenium;
 
     meta = with stdenv.lib; {
       maintainers = with maintainers; [ iElectric lovek323 madjar ];
@@ -1669,13 +1708,13 @@ let
   pytest_xdist = buildPythonPackage rec {
     name = "pytest-xdist-1.8";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pytest-xdist/pytest-xdist-1.8.zip";
       md5 = "9c0b8efe9d43b460f8cf049fa46ce14d";
     };
 
-    buildInputs = [ pytest ];
-    propagatedBuildInputs = [ execnet ];
+    buildInputs = with self; [ pytest ];
+    propagatedBuildInputs = with self; [ execnet ];
 
     meta = {
       description = "py.test xdist plugin for distributed testing and loop-on-failing modes";
@@ -1685,7 +1724,7 @@ let
 
   cssselect = buildPythonPackage rec {
     name = "cssselect-0.7.1";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/c/cssselect/cssselect-0.7.1.tar.gz";
       md5 = "c6c5e9a2e7ca226ce03f6f67a771379c";
     };
@@ -1696,12 +1735,12 @@ let
   cssutils = buildPythonPackage (rec {
     name = "cssutils-0.9.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = http://pypi.python.org/packages/source/c/cssutils/cssutils-0.9.9.zip;
       sha256 = "139yfm9yz9k33kgqw4khsljs10rkhhxyywbq9i82bh2r31cil1pp";
     };
 
-    buildInputs = [ pythonPackages.mock ];
+    buildInputs = with self; [ self.mock ];
 
     # couple of failing tests
     doCheck = false;
@@ -1719,12 +1758,12 @@ let
     name = "darcsver-1.7.4";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/d/darcsver/${name}.tar.gz";
       sha256 = "1yb1c3jxqvy4r3qiwvnb86qi5plw6018h15r3yk5ji3nk54qdcb6";
     };
 
-    buildInputs = [ pythonPackages.mock ];
+    buildInputs = with self; [ self.mock ];
 
     # Note: We don't actually need to provide Darcs as a build input.
     # Darcsver will DTRT when Darcs isn't available.  See news.gmane.org
@@ -1747,12 +1786,12 @@ let
   dateutil = buildPythonPackage (rec {
     name = "dateutil-2.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/python-dateutil/python-${name}.tar.gz";
       sha256 = "0s74ad6r789810s10dxgvaf48ni6adac2icrdad34zxygqq6bj7f";
     };
 
-    propagatedBuildInputs = [ pythonPackages.six ];
+    propagatedBuildInputs = with self; [ self.six ];
 
     meta = {
       description = "Powerful extensions to the standard datetime module";
@@ -1765,12 +1804,12 @@ let
   dateutil_1_5 = buildPythonPackage (rec {
     name = "dateutil-1.5";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/python-dateutil/python-${name}.tar.gz";
       sha256 = "02dhw57jf5kjcp7ng1if7vdrbnlpb9yjmz7wygwwvf3gni4766bg";
     };
 
-    propagatedBuildInputs = [ pythonPackages.six ];
+    propagatedBuildInputs = with self; [ self.six ];
 
     meta = {
       description = "Powerful extensions to the standard datetime module";
@@ -1783,7 +1822,7 @@ let
   decorator = buildPythonPackage rec {
     name = "decorator-3.4.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/d/decorator/${name}.tar.gz";
       md5 = "1e8756f719d746e2fc0dd28b41251356";
     };
@@ -1797,22 +1836,22 @@ let
   deform = buildPythonPackage rec {
     name = "deform-0.9.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/d/deform/${name}.tar.gz";
       sha256 = "0ympsjhxz5v8h4hi1mv811h064221bh26d68l9hv1x6m7sxbxpd0";
     };
 
-    buildInputs = [] ++ optional isPy26 unittest2;
+    buildInputs = with self; [] ++ optional isPy26 unittest2;
 
     propagatedBuildInputs =
-      [ pythonPackages.beautifulsoup4
-        pythonPackages.peppercorn
-        pythonPackages.colander
-        pythonPackages.translationstring
-        pythonPackages.chameleon
-        pythonPackages.zope_deprecation
-        pythonPackages.coverage
-        pythonPackages.nose
+      [ self.beautifulsoup4
+        self.peppercorn
+        self.colander
+        self.translationstring
+        self.chameleon
+        self.zope_deprecation
+        self.coverage
+        self.nose
       ];
 
     meta = {
@@ -1827,22 +1866,22 @@ let
   deform2 = buildPythonPackage rec {
     name = "deform-2.0a2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/d/deform/${name}.tar.gz";
       sha256 = "1gfaf1d8zp0mp4h229srlffxdp86w1nni9g4aqsshxysr23x591z";
     };
 
-    buildInputs = [] ++ optional isPy26 unittest2;
+    buildInputs = with self; [] ++ optional isPy26 unittest2;
 
     propagatedBuildInputs =
-      [ pythonPackages.beautifulsoup4
-        pythonPackages.peppercorn
-        pythonPackages.colander
-        pythonPackages.translationstring
-        pythonPackages.chameleon
-        pythonPackages.zope_deprecation
-        pythonPackages.coverage
-        pythonPackages.nose
+      [ self.beautifulsoup4
+        self.peppercorn
+        self.colander
+        self.translationstring
+        self.chameleon
+        self.zope_deprecation
+        self.coverage
+        self.nose
       ];
 
     meta = {
@@ -1858,12 +1897,12 @@ let
   deform_bootstrap = buildPythonPackage rec {
     name = "deform_bootstrap-0.2.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/d/deform_bootstrap/${name}.tar.gz";
       sha256 = "1hgq3vqsfqdmlyahnlc40w13viawhpzqf4jzigsggdb41x545fda";
     };
 
-    propagatedBuildInputs = [ deform ];
+    propagatedBuildInputs = with self; [ deform ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
@@ -1875,7 +1914,7 @@ let
   demjson = buildPythonPackage rec {
     name = "demjson-1.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/d/demjson/${name}.tar.gz";
       sha256 = "0abf7wqqq7rk1sycy47ayn5p93yy7gjq50cb2z69wmik1qqrr60x";
     };
@@ -1896,12 +1935,12 @@ let
     };
   };
 
-  derpconf = pythonPackages.buildPythonPackage rec {
+  derpconf = self.buildPythonPackage rec {
     name = "derpconf-0.4.9";
 
-    propagatedBuildInputs = [ six ];
+    propagatedBuildInputs = with self; [ six ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/d/derpconf/${name}.tar.gz";
       md5 = "a164807d7bf0c4adf1de781305f29b82";
     };
@@ -1916,12 +1955,12 @@ let
   docker = buildPythonPackage rec {
     name = "docker-py-0.4.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/d/docker-py/${name}.tar.gz";
       md5 = "21ab8fd729105487e6423b654d6c0860";
     };
 
-    propagatedBuildInputs = [ six requests websocket_client ];
+    propagatedBuildInputs = with self; [ six requests websocket_client ];
 
     # Version conflict
     doCheck = false;
@@ -1937,9 +1976,9 @@ let
   dogpile_cache = buildPythonPackage rec {
     name = "dogpile.cache-0.5.4";
 
-    propagatedBuildInputs = [ dogpile_core ];
+    propagatedBuildInputs = with self; [ dogpile_core ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/d/dogpile.cache/dogpile.cache-0.5.4.tar.gz";
       md5 = "513b77ba1bd0c31bb15dd9dd0d8471af";
     };
@@ -1956,7 +1995,7 @@ let
   dogpile_core = buildPythonPackage rec {
     name = "dogpile.core-0.4.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/d/dogpile.core/dogpile.core-0.4.1.tar.gz";
       md5 = "01cb19f52bba3e95c9b560f39341f045";
     };
@@ -1973,7 +2012,7 @@ let
   dotfiles = buildPythonPackage rec {
     name = "dotfiles-0.6.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/d/dotfiles/${name}.tar.gz";
       md5 = "95a0792eb92a8fc0db8a7e59389470fe";
     };
@@ -1991,7 +2030,7 @@ let
     name = "dpkt-1.8";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://dpkt.googlecode.com/files/${name}.tar.gz";
       sha256 = "01q5prynymaqyfsfi2296xncicdpid2hs3yyasim8iigvkwy4vf5";
     };
@@ -2011,7 +2050,7 @@ let
   urllib3 = buildPythonPackage rec {
     name = "urllib3-1.8";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/u/urllib3/${name}.tar.gz";
       sha256 = "0pdigfxkq8mhzxxsn6isx8c4h9azqywr1k18yanwyxyj8cdzm28s";
     };
@@ -2024,7 +2063,7 @@ let
       nosetests --cover-min-percentage 70
     '';
 
-    buildInputs = [ coverage tornado mock nose ];
+    buildInputs = with self; [ coverage tornado mock nose ];
 
     meta = with stdenv.lib; {
       description = "A Python library for Dropbox's HTTP-based Core and Datastore APIs";
@@ -2038,12 +2077,12 @@ let
     name = "dropbox-2.0.0";
     doCheck = !isPy3k; # failures with hash randomization
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/d/dropbox/${name}.zip";
       sha256 = "1bi2z1lql6ryylfflmizhqn98ab55777vn7n5krhqz40pdcjilkx";
     };
 
-    propagatedBuildInputs = [ urllib3 mock setuptools ];
+    propagatedBuildInputs = with self; [ urllib3 mock setuptools ];
 
     meta = with stdenv.lib; {
       description = "A Python library for Dropbox's HTTP-based Core and Datastore APIs";
@@ -2058,12 +2097,12 @@ let
     name = "evdev-${version}";
     disabled = isPy34;  # see http://bugs.python.org/issue21121
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/e/evdev/${name}.tar.gz";
       sha256 = "0w8ib3ab4mpfc1rvd335l8xkd41qbh3iyb0vfiiapgcfvqk74aq7";
     };
 
-    buildInputs = [ pkgs.linuxHeaders ];
+    buildInputs = with self; [ pkgs.linuxHeaders ];
 
     patchPhase = "sed -e 's#/usr/include/linux/input.h#${pkgs.linuxHeaders}/include/linux/input.h#' -i setup.py";
 
@@ -2084,12 +2123,12 @@ let
     name    = "eyeD3-${version}";
     disabled = isPyPy;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://eyed3.nicfit.net/releases/${name}.tgz";
       sha256 = "001hzgqqnf2ig432mq78jsxidpky2rl2ilm28xwjp32vzphycf51";
     };
 
-    buildInputs = [ paver ];
+    buildInputs = with self; [ paver ];
 
     postInstall = ''
       for prog in "$out/bin/"*; do
@@ -2117,7 +2156,7 @@ let
   execnet = buildPythonPackage rec {
     name = "execnet-1.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/e/execnet/${name}.zip";
       md5 = "be885ccd9612966bb81839670d2da099";
     };
@@ -2135,7 +2174,7 @@ let
 
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/f/facebook-sdk/facebook-sdk-0.4.0.tar.gz";
       md5 = "ac9f38e197e54b8ba9f3a61988cc33b7";
     };
@@ -2150,11 +2189,11 @@ let
   faker = buildPythonPackage rec {
     name = "faker-0.0.4";
     disabled = isPy3k;
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://pypi.python.org/packages/source/F/Faker/Faker-0.0.4.tar.gz;
       sha256 = "09q5jna3j8di0gw5yjx0dvlndkrk2x9vvqzwyfsvg3nlp8h38js1";
     };
-    buildInputs = [ nose ];
+    buildInputs = with self; [ nose ];
     meta = with stdenv.lib; {
       description = "A Python library for generating fake user data.";
       homepage    = http://pypi.python.org/pypi/Faker;
@@ -2166,7 +2205,7 @@ let
 
   fake_factory = buildPythonPackage rec {
     name = "fake-factory-0.2";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://pypi.python.org/packages/source/f/fake-factory/fake-factory-0.2.tar.gz;
       sha256 = "0qdmk8p4anrj9mf95dh9v7bkhv1pz69hvhlw380kj4iz7b44b6zn";
     };
@@ -2182,26 +2221,26 @@ let
   fabric = buildPythonPackage rec {
     name = "fabric-${version}";
     version = "1.9.1";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/F/Fabric/Fabric-${version}.tar.gz";
       sha256 = "103mzf0l15kyvw5nmf7bsdrqg6y3wpyxmkyl2h9lk7jxb5gdc9s1";
     };
     disabled = isPy3k;
     doCheck = (!isPyPy);  # https://github.com/fabric/fabric/issues/11891
-    propagatedBuildInputs = [ paramiko pycrypto ];
-    buildInputs = [ fudge nose ];
+    propagatedBuildInputs = with self; [ paramiko pycrypto ];
+    buildInputs = with self; [ fudge nose ];
   };
 
   fedora_cert = stdenv.mkDerivation (rec {
     name = "fedora-cert-0.5.9.2";
     meta.maintainers = [ stdenv.lib.maintainers.mornfall ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://fedorahosted.org/releases/f/e/fedora-packager/fedora-packager-0.5.9.2.tar.bz2";
       sha256 = "105swvzshgn3g6bjwk67xd8pslnhpxwa63mdsw6cl4c7cjp2blx9";
     };
 
-    propagatedBuildInputs = [ python python_fedora wrapPython ];
+    propagatedBuildInputs = with self; [ python python_fedora wrapPython ];
     postInstall = "mv $out/bin/fedpkg $out/bin/fedora-cert-fedpkg";
     doCheck = false;
 
@@ -2212,30 +2251,30 @@ let
     name = "fedpkg-1.14";
     meta.maintainers = [ stdenv.lib.maintainers.mornfall ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://fedorahosted.org/releases/f/e/fedpkg/fedpkg-1.14.tar.bz2";
       sha256 = "0rj60525f2sv34g5llafnkmpvbwrfbmfajxjc14ldwzymp8clc02";
     };
 
     patches = [ ../development/python-modules/fedpkg-buildfix.diff ];
-    propagatedBuildInputs = [ rpkg offtrac urlgrabber fedora_cert ];
+    propagatedBuildInputs = with self; [ rpkg offtrac urlgrabber fedora_cert ];
   });
 
   fudge = buildPythonPackage rec {
     name = "fudge-0.9.4";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://pypi.python.org/packages/source/f/fudge/fudge-0.9.4.tar.gz;
       sha256 = "03sj2x6mpzm48swpa4hnn1gi6yilgniyjfg1ylz95wm1ijggi33w";
     };
-    buildInputs = [ nose nosejs ];
-    propagatedBuildInputs = [ sphinx ];
+    buildInputs = with self; [ nose nosejs ];
+    propagatedBuildInputs = with self; [ sphinx ];
   };
 
 
   funcparserlib = buildPythonPackage rec {
     name = "funcparserlib-0.3.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/f/funcparserlib/${name}.tar.gz";
       md5 = "3aba546bdad5d0826596910551ce37c0";
     };
@@ -2251,9 +2290,9 @@ let
   singledispatch = buildPythonPackage rec {
     name = "singledispatch-3.4.0.3";
 
-    propagatedBuildInputs = [ six ];
+    propagatedBuildInputs = with self; [ six ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/s/singledispatch/${name}.tar.gz";
       md5 = "af2fc6a3d6cc5a02d0bf54d909785fcb";
     };
@@ -2267,7 +2306,7 @@ let
     name = "gcutil-1.15.0";
     meta.maintainers = [ stdenv.lib.maintainers.phreedom ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://dl.google.com/dl/cloudsdk/release/artifacts/gcutil-1.15.0.tar.gz;
       sha256 = "12c98ivhjr01iz6lkga574xm8p0bsil6arydvpblyw8sjkgim5sq";
     };
@@ -2276,7 +2315,7 @@ let
       substituteInPlace setup.py --replace "httplib2==0.8" "httplib2"
     '';
 
-    propagatedBuildInputs = [ gflags iso8601_0_1_4 ipaddr httplib2 google_apputils google_api_python_client ];
+    propagatedBuildInputs = with self; [ gflags iso8601_0_1_4 ipaddr httplib2 google_apputils google_api_python_client ];
   };
 
   gitdb = buildPythonPackage rec {
@@ -2284,25 +2323,25 @@ let
     meta.maintainers = [ stdenv.lib.maintainers.mornfall ];
     doCheck = false;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/g/gitdb/${name}.tar.gz";
       sha256 = "10rpmmlln59aq44cd5vkb77hslak5pa1rbmigg6ski5f1nn2spfy";
     };
 
-    propagatedBuildInputs = [ smmap async ];
+    propagatedBuildInputs = with self; [ smmap async ];
   };
 
   GitPython = buildPythonPackage rec {
     name = "GitPython-0.3.2";
     meta.maintainers = [ stdenv.lib.maintainers.mornfall ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/G/GitPython/GitPython-0.3.2.RC1.tar.gz";
       sha256 = "1q4lc2ps12l517mmrxc8iq6gxyhj6d77bnk1p7mxf38d99l8crzx";
     };
 
-    buildInputs = [ nose ];
-    propagatedBuildInputs = [ gitdb ];
+    buildInputs = with self; [ nose ];
+    propagatedBuildInputs = with self; [ gitdb ];
   };
 
   googlecl = buildPythonPackage rec {
@@ -2310,7 +2349,7 @@ let
     name    = "googlecl-${version}";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://googlecl.googlecode.com/files/${name}.tar.gz";
       sha256 = "0nnf7xkr780wivr5xnchfcrahlzy9bi2dxcs1w1bh1014jql0iha";
     };
@@ -2323,7 +2362,7 @@ let
       platforms   = platforms.unix;
     };
 
-    propagatedBuildInputs = [ gdata ];
+    propagatedBuildInputs = with self; [ gdata ];
   };
 
   gtimelog = buildPythonPackage rec {
@@ -2332,7 +2371,7 @@ let
 
     disabled = isPy26;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/gtimelog/gtimelog/archive/${version}.tar.gz";
       sha256 = "0qk8fv8cszzqpdi3wl9vvkym1jil502ycn6sic4jrxckw5s9jsfj";
     };
@@ -2343,7 +2382,7 @@ let
     '';
 
     # TODO: AppIndicator
-    propagatedBuildInputs = [ pkgs.gobjectIntrospection pygobject3 pkgs.makeWrapper pkgs.gtk3 ];
+    propagatedBuildInputs = with self; [ pkgs.gobjectIntrospection pygobject3 pkgs.makeWrapper pkgs.gtk3 ];
 
     checkPhase = ''
       substituteInPlace runtests --replace "/usr/bin/env python" "${python}/bin/${python.executable}"
@@ -2369,7 +2408,7 @@ let
   itsdangerous = buildPythonPackage rec {
     name = "itsdangerous-0.24";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/i/itsdangerous/${name}.tar.gz";
       sha256 = "06856q6x675ly542ig0plbqcyab6ksfzijlyf1hzhgg3sgwgrcyb";
     };
@@ -2385,12 +2424,12 @@ let
 
     disabled = isPyPy; # doesn't find setuptools
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/dbohdan/jsonwatch/archive/v0.2.0.tar.gz";
       sha256 = "04b616ef97b9d8c3887004995420e52b72a4e0480a92dbf60aa6c50317261e06";
     };
 
-    propagatedBuildInputs = [ six ];
+    propagatedBuildInputs = with self; [ six ];
 
     meta = {
       description = "Like watch -d but for JSON";
@@ -2411,18 +2450,18 @@ let
   logilab_astng = buildPythonPackage rec {
     name = "logilab-astng-0.24.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://download.logilab.org/pub/astng/${name}.tar.gz";
       sha256 = "0np4wpxyha7013vkkrdy54dvnil67gzi871lg60z8lap0l5h67wn";
     };
 
-    propagatedBuildInputs = [ logilab_common ];
+    propagatedBuildInputs = with self; [ logilab_common ];
   };
 
 
   logster = buildPythonPackage {
     name = "logster-7475c53822";
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = git://github.com/etsy/logster;
       rev = "7475c53822";
       sha256 = "1ls007qmziwb50c5iikxhqin0xbn673gbd25m5k09861435cknvr";
@@ -2434,14 +2473,14 @@ let
     version = "1.2.2";
     name    = "Paver-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://pypi.python.org/packages/source/P/Paver/Paver-${version}.tar.gz";
       sha256 = "0lix9d33ndb3yk56sm1zlj80fbmxp0w60yk0d9pr2xqxiwi88sqy";
     };
 
-    buildInputs = [ cogapp mock virtualenv ];
+    buildInputs = with self; [ cogapp mock virtualenv ];
 
-    propagatedBuildInputs = [ nose ];
+    propagatedBuildInputs = with self; [ nose ];
 
     # the tests do not pass
     doCheck = false;
@@ -2458,7 +2497,7 @@ let
   peppercorn = buildPythonPackage rec {
     name = "peppercorn-0.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/peppercorn/${name}.tar.gz";
       md5 = "464d6f2342eaf704dfb52046c1f5c320";
     };
@@ -2475,12 +2514,12 @@ let
   pew = buildPythonPackage rec {
     name = "pew-0.1.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pew/${name}.tar.gz";
       md5 = "90a82400074b50a9e73c3045ed9ac217";
     };
 
-    propagatedBuildInputs = [ virtualenv virtualenv-clone ];
+    propagatedBuildInputs = with self; [ virtualenv virtualenv-clone ];
 
     meta = with stdenv.lib; {
       description = "Tools to manage multiple virtualenvs written in pure python, a virtualenvwrapper rewrite";
@@ -2493,12 +2532,12 @@ let
   pudb = buildPythonPackage rec {
     name = "pudb-2013.3.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pudb/${name}.tar.gz";
       md5 = "063030763bf914166a0b2bc8c011143b";
     };
 
-    propagatedBuildInputs = [ pythonPackages.pygments pythonPackages.urwid ];
+    propagatedBuildInputs = with self; [ self.pygments self.urwid ];
 
     meta = with stdenv.lib; {
       description = "A full-screen, console-based Python debugger";
@@ -2511,7 +2550,7 @@ let
   pyramid = buildPythonPackage rec {
     name = "pyramid-1.5.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyramid/${name}.tar.gz";
       md5 = "8a1ab3b773d8e22437828f7df22852c1";
     };
@@ -2521,7 +2560,7 @@ let
       rm pyramid/tests/test_response.py
     '';
 
-    buildInputs = [
+    buildInputs = with self; [
       docutils
       virtualenv
       webtest
@@ -2529,7 +2568,7 @@ let
       zope_interface
     ] ++ optional isPy26 unittest2;
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       paste_deploy
       repoze_lru
       repoze_sphinx_autointerface
@@ -2553,12 +2592,12 @@ let
   pyramid_beaker = buildPythonPackage rec {
     name = "pyramid_beaker-0.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyramid_beaker/${name}.tar.gz";
       md5 = "acb863517a98b90b5f29648ce55dd563";
     };
 
-    propagatedBuildInputs = [ beaker pyramid ];
+    propagatedBuildInputs = with self; [ beaker pyramid ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
@@ -2575,7 +2614,7 @@ let
       md5 = "5bb5938356dfd13fce06e095f132e137";
     };
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       chameleon
       pyramid
       zope_interface
@@ -2591,13 +2630,13 @@ let
   pyramid_jinja2 = buildPythonPackage rec {
     name = "pyramid_jinja2-1.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyramid_jinja2/${name}.zip";
       md5 = "a6728117cad24749ddb39d2827cd9033";
     };
 
-    buildInputs = [ webtest ];
-    propagatedBuildInputs = [ jinja2 pyramid ];
+    buildInputs = with self; [ webtest ];
+    propagatedBuildInputs = with self; [ jinja2 pyramid ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
@@ -2609,38 +2648,38 @@ let
   pyramid_debugtoolbar = buildPythonPackage rec {
     name = "pyramid_debugtoolbar-1.0.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyramid_debugtoolbar/${name}.tar.gz";
       sha256 = "1vnzg1qnnyisv7znxg7pasayfyr3nz7rrs5nqr4fmdgwj9q2pyv0";
     };
 
-    buildInputs = [ ];
-    propagatedBuildInputs = [ pyramid pyramid_mako ];
+    buildInputs = with self; [ ];
+    propagatedBuildInputs = with self; [ pyramid pyramid_mako ];
   };
 
 
   pyramid_mako = buildPythonPackage rec {
     name = "pyramid_mako-0.3.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyramid_mako/${name}.tar.gz";
       sha256 = "00811djmsc4rz20kpy2paam05fbx6dmrv2i5jf90f6xp6zw4isy6";
     };
 
-    buildInputs = [ webtest ];
-    propagatedBuildInputs = [ pyramid Mako ];
+    buildInputs = with self; [ webtest ];
+    propagatedBuildInputs = with self; [ pyramid Mako ];
   };
 
 
   pyramid_exclog = buildPythonPackage rec {
     name = "pyramid_exclog-0.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyramid_exclog/${name}.tar.gz";
       md5 = "05df86758b0d30ee6f8339ff36cef7a0";
     };
 
-    propagatedBuildInputs = [ pyramid ];
+    propagatedBuildInputs = with self; [ pyramid ];
 
     meta = {
       maintainers = [
@@ -2655,7 +2694,7 @@ let
   pyramid_tm = buildPythonPackage rec {
     name = "pyramid_tm-0.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyramid_tm/${name}.tar.gz";
       md5 = "6dc917d262c69366630c542bd21859a3";
     };
@@ -2663,7 +2702,7 @@ let
     # tests are failing in version 0.7 but are fixed in trunk
     doCheck = false;
 
-    propagatedBuildInputs = [ transaction pyramid ];
+    propagatedBuildInputs = with self; [ transaction pyramid ];
     meta = {
       maintainers = [
         stdenv.lib.maintainers.garbas
@@ -2679,12 +2718,12 @@ let
     name = "pyramid_multiauth-${version}";
     version = "0.3.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pyramid_multiauth/${name}.tar.gz";
       md5 = "044e423abc4fb76937ac0c21c1205e9c";
     };
 
-    propagatedBuildInputs = [ pyramid ];
+    propagatedBuildInputs = with self; [ pyramid ];
 
     meta = with stdenv.lib; {
       description = "Authentication policy for Pyramid that proxies to a stack of other authentication policies";
@@ -2697,12 +2736,12 @@ let
     namePrefix = "";
     version = "0.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/R/Radicale/Radicale-${version}.tar.gz";
       sha256 = "77bf813fd26f0d359c1a7b7bcce9b842b4503c5516989a4a0a4f648e299e41f7";
     };
 
-    propagatedBuildInputs = with pythonPackages; [
+    propagatedBuildInputs = with self; [
       flup
       ldap
       sqlalchemy
@@ -2728,7 +2767,7 @@ let
   raven = buildPythonPackage rec {
     name = "raven-3.4.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/r/raven/${name}.tar.gz";
       md5 = "6a9264133bf646149ffb9118d81445be";
     };
@@ -2746,12 +2785,12 @@ let
   hypatia = buildPythonPackage rec {
     name = "hypatia-0.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/h/hypatia/${name}.tar.gz";
       md5 = "d74c6dda31ff459a39fa5da9e98f2425";
     };
 
-    buildInputs = [ zope_interface zodb ];
+    buildInputs = with self; [ zope_interface zodb ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
@@ -2762,12 +2801,12 @@ let
   zope_copy = buildPythonPackage rec {
     name = "zope.copy-4.0.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.copy/${name}.zip";
       md5 = "36aa2c96dec4cfeea57f54da2b733eb9";
     };
 
-    buildInputs = [ zope_interface zope_location zope_schema ];
+    buildInputs = with self; [ zope_interface zope_location zope_schema ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
@@ -2778,12 +2817,12 @@ let
   statsd = buildPythonPackage rec {
     name = "statsd-2.0.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/statsd/${name}.tar.gz";
       md5 = "476ef5b9004f6e2cb25c7da440bb53d0";
     };
 
-    buildInputs = [ ];
+    buildInputs = with self; [ ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
@@ -2794,7 +2833,7 @@ let
   pyramid_zodbconn = buildPythonPackage rec {
     name = "pyramid_zodbconn-0.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyramid_zodbconn/${name}.tar.gz";
       md5 = "3c7746a227fbcda3e138ab8bfab7700b";
     };
@@ -2802,8 +2841,8 @@ let
     # should be fixed in next release
     doCheck = false;
 
-    buildInputs = [ pyramid mock ];
-    propagatedBuildInputs = [ zodb zodburi ];
+    buildInputs = with self; [ pyramid mock ];
+    propagatedBuildInputs = with self; [ zodb zodburi ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
@@ -2814,13 +2853,13 @@ let
   pyramid_mailer = buildPythonPackage rec {
     name = "pyramid_mailer-0.13";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyramid_mailer/${name}.tar.gz";
       md5 = "43800c7c894097a23140da58e3638c93";
     };
 
-    buildInputs = [ pyramid transaction ];
-    propagatedBuildInputs = [ repoze_sendmail ];
+    buildInputs = with self; [ pyramid transaction ];
+    propagatedBuildInputs = with self; [ repoze_sendmail ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
@@ -2830,7 +2869,7 @@ let
   pyrtlsdr = buildPythonPackage rec {
     name = "pyrtlsdr-0.2.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyrtlsdr/${name}.zip";
       md5 = "646336675a00d38e6f54e77a17011b95";
     };
@@ -2852,12 +2891,12 @@ let
   repoze_sendmail = buildPythonPackage rec {
     name = "repoze.sendmail-4.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/r/repoze.sendmail/${name}.tar.gz";
       md5 = "81d15f1f03cc67d6f56f2091c594ef57";
     };
 
-    buildInputs = [ transaction ];
+    buildInputs = with self; [ transaction ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
@@ -2868,24 +2907,24 @@ let
   zodburi = buildPythonPackage rec {
     name = "zodburi-2.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zodburi/${name}.tar.gz";
       md5 = "7876893829c2f784506c80d49f861b67";
     };
 
-    buildInputs = [ zodb mock ZEO ];
+    buildInputs = with self; [ zodb mock ZEO ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
     };
   };
 
-  ZEO = pythonPackages.buildPythonPackage rec {
+  ZEO = self.buildPythonPackage rec {
     name = "ZEO-4.0.0";
 
-    propagatedBuildInputs = [ random2 zodb six transaction persistent zc_lockfile zconfig zdaemon zope_interface ];
+    propagatedBuildInputs = with self; [ random2 zodb six transaction persistent zc_lockfile zconfig zdaemon zope_interface ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/Z/ZEO/${name}.tar.gz";
       md5 = "494d8320549185097ba4a6b6b76017d6";
     };
@@ -2895,12 +2934,12 @@ let
     };
   };
 
-  random2 = pythonPackages.buildPythonPackage rec {
+  random2 = self.buildPythonPackage rec {
     name = "random2-1.0.1";
 
     doCheck = !isPyPy;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/r/random2/${name}.zip";
       md5 = "48a0a86fe00e447212d0095de8cf3e21";
     };
@@ -2912,15 +2951,15 @@ let
     rev = "089818bc61c3dc5eca023254e37a280b041ea8cc";
     name = "substanced-${rev}";
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       inherit rev;
       url = "https://github.com/Pylons/substanced.git";
       sha256 = "17s7sdvydw9a9d2d36c70lq962ryny3dv9nzdxqpfvwiry9iy3jx";
     };
 
-    buildInputs = [ mock ];
+    buildInputs = with self; [ mock ];
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       pyramid
       pytz
       zodb
@@ -2950,7 +2989,7 @@ let
   repoze_lru = buildPythonPackage rec {
     name = "repoze.lru-0.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/r/repoze.lru/${name}.tar.gz";
       md5 = "2c3b64b17a8e18b405f55d46173e14dd";
     };
@@ -2969,12 +3008,12 @@ let
   repoze_sphinx_autointerface = buildPythonPackage rec {
     name = "repoze.sphinx.autointerface-0.7.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/r/repoze.sphinx.autointerface/${name}.tar.gz";
       md5 = "f2fee996ae28dc16eb48f1a3e8f64801";
     };
 
-    propagatedBuildInputs = [ zope_interface sphinx ];
+    propagatedBuildInputs = with self; [ zope_interface sphinx ];
 
     meta = {
       maintainers = [ stdenv.lib.maintainers.iElectric ];
@@ -2987,7 +3026,7 @@ let
     version = "0.3a";
     name = "rtmidi-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://chrisarndt.de/projects/python-rtmidi/download/python-${name}.tar.bz2";
       sha256 = "0d2if633m3kbiricd5hgn1csccd8xab6lnab1bq9prdr9ks9i8h6";
     };
@@ -2996,7 +3035,7 @@ let
       sed -i "/use_setuptools/d" setup.py
     '';
 
-    buildInputs = [ pkgs.alsaLib pkgs.jack2 ];
+    buildInputs = with self; [ pkgs.alsaLib pkgs.jack2 ];
 
     meta = with stdenv.lib; {
       description = "A Python wrapper for the RtMidi C++ library written with Cython";
@@ -3009,9 +3048,9 @@ let
   zope_tales = buildPythonPackage rec {
     name = "zope.tales-4.0.2";
 
-    propagatedBuildInputs = [ zope_interface six zope_testrunner ];
+    propagatedBuildInputs = with self; [ zope_interface six zope_testrunner ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/z/zope.tales/${name}.zip";
       md5 = "902b03a5f9774f6e2decf3f06d18a09d";
     };
@@ -3021,12 +3060,12 @@ let
   zope_deprecation = buildPythonPackage rec {
     name = "zope.deprecation-3.5.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.deprecation/${name}.tar.gz";
       md5 = "836cfea5fad548cd5a0d9af1300ec05e";
     };
 
-    buildInputs = [ zope_testing ];
+    buildInputs = with self; [ zope_testing ];
 
     meta = {
       maintainers = [
@@ -3041,7 +3080,7 @@ let
   venusian = buildPythonPackage rec {
     name = "venusian-1.0a7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/v/venusian/${name}.tar.gz";
       md5 = "6f67506dd3cf77116f1c01682a6c3f27";
     };
@@ -3062,12 +3101,12 @@ let
   chameleon = buildPythonPackage rec {
     name = "Chameleon-2.15";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/C/Chameleon/${name}.tar.gz";
       md5 = "0214647152fcfcb9ce357624f8f9f203";
     };
 
-    buildInputs = [] ++ optionals isPy26 [ ordereddict unittest2 ];
+    buildInputs = with self; [] ++ optionals isPy26 [ ordereddict unittest2 ];
 
     # TODO: https://github.com/malthe/chameleon/issues/139
     doCheck = false;
@@ -3084,7 +3123,7 @@ let
   distutils_extra = buildPythonPackage rec {
     name = "distutils-extra-2.26";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://launchpad.net/python-distutils-extra/trunk/2.26/+download/python-${name}.tar.gz";
       md5 = "7caded30a45907b5cdb10ac4182846eb";
     };
@@ -3098,13 +3137,13 @@ let
   deluge = buildPythonPackage rec {
     name = "deluge-1.3.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://download.deluge-torrent.org/source/${name}.tar.bz2";
       sha256 = "07m5lgkqymlh0810bk2f5l0k83n51xb3gszj11sr509jgbnxjnmm";
     };
 
-    propagatedBuildInputs = with pkgs; [
-      pyGtkGlade libtorrentRasterbar twisted Mako chardet pyxdg pyopenssl modules.curses
+    propagatedBuildInputs = with self; [
+      pyGtkGlade pkgs.libtorrentRasterbar twisted Mako chardet pyxdg pkgs.pyopenssl modules.curses
     ];
 
     postInstall = ''
@@ -3125,7 +3164,7 @@ let
   pyxdg = buildPythonPackage rec {
     name = "pyxdg-0.25";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyxdg/${name}.tar.gz";
       md5 = "bedcdb3a0ed85986d40044c87f23477c";
     };
@@ -3144,7 +3183,7 @@ let
   chardet = buildPythonPackage rec {
     name = "chardet-2.1.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/c/chardet/${name}.tar.gz";
       md5 = "295367fd210d20f3febda615a88e1ef0";
     };
@@ -3157,13 +3196,13 @@ let
     };
   };
 
-  django = django_1_6;
+  django = self.django_1_6;
 
   django_1_6 = buildPythonPackage rec {
     name = "Django-${version}";
     version = "1.6.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://www.djangoproject.com/m/releases/1.6/${name}.tar.gz";
       sha256 = "143yp984n8a2bs1dflxjp1s7skmji0cwkw05s9ikbfikwmabsv2k";
     };
@@ -3181,7 +3220,7 @@ let
     name = "Django-${version}";
     version = "1.5.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://www.djangoproject.com/m/releases/1.5/${name}.tar.gz";
       sha256 = "1lm0pa6m9f4cd6pv239lqj32z1snf8xjbvlbh8bqihs6a1f51kj7";
     };
@@ -3199,7 +3238,7 @@ let
     name = "Django-${version}";
     version = "1.4.14";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://www.djangoproject.com/m/releases/1.4/${name}.tar.gz";
       sha256 = "173ci9ml2vs1z2x51wahssfn8mrmhd02varmg9kibm8z460svvc1";
     };
@@ -3216,7 +3255,7 @@ let
   django_1_3 = buildPythonPackage rec {
     name = "Django-1.3.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://www.djangoproject.com/m/releases/1.3/${name}.tar.gz";
       sha256 = "12pv8y2x3fhrcrjayfm6z40r57iwchfi5r19ajs8q8z78i3z8l7f";
     };
@@ -3235,12 +3274,12 @@ let
     name = "django_evolution-0.6.9";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://downloads.reviewboard.org/releases/django-evolution/${name}.tar.gz";
       md5 = "c0d7d10bc41898c88b14d434c48766ff";
     };
 
-    propagatedBuildInputs = [ django_1_5 ];
+    propagatedBuildInputs = with self; [ django_1_5 ];
 
     meta = {
       description = "A database schema evolution tool for the Django web framework";
@@ -3252,7 +3291,7 @@ let
   django_tagging = buildPythonPackage rec {
     name = "django-tagging-0.3.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/d/django-tagging/${name}.tar.gz";
       md5 = "a0855f2b044db15f3f8a025fa1016ddf";
     };
@@ -3260,7 +3299,7 @@ let
     # error: invalid command 'test'
     doCheck = false;
 
-    propagatedBuildInputs = [ django_1_3 ];
+    propagatedBuildInputs = with self; [ django_1_3 ];
 
     meta = {
       description = "A generic tagging application for Django projects";
@@ -3272,12 +3311,12 @@ let
   djblets = buildPythonPackage rec {
     name = "Djblets-0.6.28";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://downloads.reviewboard.org/releases/Djblets/0.6/${name}.tar.gz";
       sha256 = "11fsi911cqkjgv9j7646ljc2fgxsdfyq44kzmv01xhysm50fn6xx";
     };
 
-    propagatedBuildInputs = [ pil django_1_3 feedparser ];
+    propagatedBuildInputs = with self; [ pil django_1_3 feedparser ];
 
     meta = {
       description = "A collection of useful extensions for Django";
@@ -3290,13 +3329,13 @@ let
     name = "dulwich-${version}";
     version = "0.9.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/d/dulwich/${name}.tar.gz";
       sha256 = "1wq083g9b1xsk89kb0wwpi4mxy63x6760vn9x5sk1fx36h27prqj";
     };
 
     # Only test dependencies
-    buildInputs = [ pkgs.git gevent geventhttpclient mock fastimport ];
+    buildInputs = with self; [ pkgs.git gevent geventhttpclient mock fastimport ];
 
     meta = with stdenv.lib; {
       description = "Simple Python implementation of the Git file formats and protocols.";
@@ -3311,12 +3350,12 @@ let
     name = "hg-git-${version}";
     version = "0.6.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/h/hg-git/${name}.tar.gz";
       sha256 = "136kz4w377ldcjdg865azi8aym0xnxzxl3rycnflgay26ar1309s";
     };
 
-    propagatedBuildInputs = [ pkgs.mercurial dulwich ];
+    propagatedBuildInputs = with self; [ pkgs.mercurial dulwich ];
 
     meta = with stdenv.lib; {
       description = "Push and pull from a Git server using Mercurial.";
@@ -3329,7 +3368,7 @@ let
   docutils = buildPythonPackage rec {
     name = "docutils-0.11";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "mirror://sourceforge/docutils/${name}.tar.gz";
       sha256 = "1jbybs5a396nrjy9m13pgvsxdwaj7jw7nsawkhl4fi1nvxm1dx4s";
     };
@@ -3346,7 +3385,7 @@ let
   doxypy = buildPythonPackage rec {
     name = "doxypy-0.4.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://code.foosel.org/files/${name}.tar.gz";
       sha256 = "1afmb30zmy7942b53qa5vd3js883wwqqls35n8xfb3rnj0qnll8g";
     };
@@ -3363,7 +3402,7 @@ let
   dtopt = buildPythonPackage rec {
     name = "dtopt-0.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/d/dtopt/${name}.tar.gz";
       md5 = "9a41317149e926fcc408086aedee6bab";
     };
@@ -3377,15 +3416,15 @@ let
 
   ecdsa = buildPythonPackage rec {
     name = "ecdsa-${version}";
-    version = "0.10";
+    version = "0.11";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/e/ecdsa/${name}.tar.gz";
-      md5 = "e95941b3bcbf1726472bb724d7478551";
+      md5 = "8ef586fe4dbb156697d756900cb41d7c";
     };
 
     # Only needed for tests
-    buildInputs = [ pkgs.openssl ];
+    buildInputs = with self; [ pkgs.openssl ];
 
     meta = {
       description = "ECDSA cryptographic signature library";
@@ -3398,12 +3437,11 @@ let
 
   elpy = buildPythonPackage rec {
     name = "elpy-1.0.1";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/e/elpy/elpy-1.0.1.tar.gz";
       md5 = "5453f085f7871ed8fc11d51f0b68c785";
     };
-    buildInputs = [  ];
-    propagatedBuildInputs = [ flake8 ];
+    propagatedBuildInputs = with self; [ flake8 ];
 
     doCheck = false; # there are no tests
 
@@ -3418,16 +3456,16 @@ let
     name = "enum-0.4.4";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/e/enum/${name}.tar.gz";
       md5 = "ce75c7c3c86741175a84456cc5bd531e";
     };
 
     doCheck = !isPyPy;
 
-    buildInputs = [ ];
+    buildInputs = with self; [ ];
 
-    propagatedBuildInputs = [ ];
+    propagatedBuildInputs = with self; [ ];
 
     meta = {
       homepage = http://pypi.python.org/pypi/enum/;
@@ -3438,7 +3476,7 @@ let
   enum34 = buildPythonPackage rec {
     name = "enum34-1.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/e/enum34/${name}.tar.gz";
       md5 = "9d57f5454c70c11707998ea26c1b0a7c";
     };
@@ -3447,12 +3485,12 @@ let
 
   epc = buildPythonPackage rec {
     name = "epc-0.0.3";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/e/epc/${name}.tar.gz";
       md5 = "04a93c0cd32b496969ead09f414dac74";
     };
 
-    propagatedBuildInputs = [ sexpdata ];
+    propagatedBuildInputs = with self; [ sexpdata ];
     doCheck = false;
 
     meta = {
@@ -3465,14 +3503,14 @@ let
   eventlet = buildPythonPackage rec {
     name = "eventlet-0.15.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/e/eventlet/${name}.tar.gz";
       md5 = "7155780824bb6344651a573838416f21";
     };
 
-    buildInputs = [ nose httplib2  ];
+    buildInputs = with self; [ nose httplib2  ];
 
-    propagatedBuildInputs = optionals (!isPyPy) [ greenlet ];
+    propagatedBuildInputs = optionals (!isPyPy) [ self.greenlet ];
 
     PYTHON_EGG_CACHE = "`pwd`/.egg-cache";
 
@@ -3488,7 +3526,7 @@ let
     name = "fastimport-${version}";
     version = "0.9.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/f/fastimport/${name}.tar.gz";
       sha256 = "0k8x7552ypx9rc14vbsvg2lc6z0r8pv9laah28pdwyynbq10825d";
     };
@@ -3504,7 +3542,7 @@ let
   feedgenerator = buildPythonPackage (rec {
     name = "feedgenerator-1.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/f/feedgenerator/${name}.tar.gz";
       md5 = "92978492871342ad64e8ae0ccfcf200c";
     };
@@ -3514,7 +3552,7 @@ let
       export LC_ALL="en_US.UTF-8"
     '';
 
-    propagatedBuildInputs = [ six pytz ];
+    propagatedBuildInputs = with self; [ six pytz ];
 
     meta = {
       homepage = https://github.com/dmdm/feedgenerator-py3k.git;
@@ -3525,7 +3563,7 @@ let
   feedparser = buildPythonPackage (rec {
     name = "feedparser-5.1.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/f/feedparser/${name}.tar.gz";
       md5 = "f2253de78085a1d5738f626fcc1d8f71";
     };
@@ -3542,13 +3580,13 @@ let
   flake8 = buildPythonPackage (rec {
     name = "flake8-2.1.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/f/flake8/${name}.tar.gz";
       md5 = "cf326cfb88a1db6c5b29a3a6d9efb257";
     };
 
-    buildInputs = [ nose mock ];
-    propagatedBuildInputs = [ pyflakes pep8 mccabe ];
+    buildInputs = with self; [ nose mock ];
+    propagatedBuildInputs = with self; [ pyflakes pep8 mccabe ];
 
     # 3 failing tests
     #doCheck = false;
@@ -3565,12 +3603,12 @@ let
   flask = buildPythonPackage {
     name = "flask-0.10.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/F/Flask/Flask-0.10.1.tar.gz";
       md5 = "378670fe456957eb3c27ddaef60b2b24";
     };
 
-    propagatedBuildInputs = [ werkzeug jinja2 ];
+    propagatedBuildInputs = with self; [ werkzeug jinja2 ];
 
     meta = {
       homepage = http://flask.pocoo.org/;
@@ -3582,12 +3620,12 @@ let
   flask_cache = buildPythonPackage rec {
     name = "Flask-Cache-0.13.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/F/Flask-Cache/${name}.tar.gz";
       md5 = "ab82a9cd0844891ccdb54fbb93fd6c59";
     };
 
-    propagatedBuildInputs = [ werkzeug flask ];
+    propagatedBuildInputs = with self; [ werkzeug flask ];
 
     meta = {
       homepage = https://github.com/thadeusb/flask-cache;
@@ -3600,22 +3638,22 @@ let
     name = "FlexGet-1.2.161";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/F/FlexGet/${name}.tar.gz";
       md5 = "f7533e7b1df49cc8027fc4a2cde0290d";
     };
 
-    buildInputs = [ nose ];
+    buildInputs = with self; [ nose ];
     # dateutil dependency: requirement is dateutil !=2.0 and != 2.2,
     # dateutil_1_5 is used as it's supported, but a newer version could be used
-    propagatedBuildInputs = [ paver feedparser sqlalchemy pyyaml rpyc
+    propagatedBuildInputs = with self; [ paver feedparser sqlalchemy pyyaml rpyc
 	    beautifulsoup4 html5lib pyrss2gen pynzb progressbar jinja2 flask
 	    cherrypy requests dateutil_1_5 jsonschema python_tvrage tmdb3 ]
 	# enable deluge and transmission plugin support, if they're installed
 	++ stdenv.lib.optional (pkgs.config.pythonPackages.deluge or false)
 	    pythonpackages.deluge
 	++ stdenv.lib.optional (pkgs.transmission != null)
-	    pythonPackages.transmissionrpc;
+	    self.transmissionrpc;
 
     meta = {
       homepage = http://flexget.com/;
@@ -3629,14 +3667,14 @@ let
     version = "0.4.1";
     name = "tvrage-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/python-tvrage/python-tvrage-${version}.tar.gz";
       md5 = "cdfec252158c5047b626861900186dfb";
     };
 
     # has mostly networking dependent tests
     doCheck = false;
-    propagatedBuildInputs = [ beautifulsoup ];
+    propagatedBuildInputs = with self; [ beautifulsoup ];
 
     meta = {
       homepage = https://github.com/ckreutzer/python-tvrage;
@@ -3650,12 +3688,12 @@ let
     version = "2.4.0";
     name = "jsonschema-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/j/jsonschema/jsonschema-${version}.tar.gz";
       md5 = "661f85c3d23094afbb9ac3c0673840bf";
     };
 
-    buildInputs = [ nose mock ];
+    buildInputs = with self; [ nose mock ];
 
     patchPhase = ''
       substituteInPlace jsonschema/tests/test_jsonschema_test_suite.py --replace "python" "${python}/bin/${python.executable}"
@@ -3677,7 +3715,7 @@ let
     name = "flup-1.0.2";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://www.saddi.com/software/flup/dist/${name}.tar.gz";
       sha256 = "1nbx174g40l1z3a8arw72qz05a1qxi3didp9wm7kvkn1bxx33bab";
     };
@@ -3692,12 +3730,12 @@ let
   foolscap = buildPythonPackage (rec {
     name = "foolscap-0.6.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://foolscap.lothar.com/releases/${name}.tar.gz";
       sha256 = "16cddyk5is0gjfn0ia5n2l4lhdzvbjzlx6sfpy7ddjd3d3fq7ckl";
     };
 
-    propagatedBuildInputs = [ twisted pkgs.pyopenssl ];
+    propagatedBuildInputs = with self; [ twisted pkgs.pyopenssl ];
 
     meta = {
       homepage = http://foolscap.lothar.com/;
@@ -3721,7 +3759,7 @@ let
   fs = buildPythonPackage rec {
     name = "fs-0.5.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://pypi.python.org/packages/source/f/fs/${name}.tar.gz";
       sha256 = "144f4yn2nvnxh2vrnmiabpwx3s637np0d1j1w95zym790d66shir";
     };
@@ -3744,12 +3782,12 @@ let
     name = "${baseName}-${version}";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "mirror://sourceforge/fuse/fuse-python-${version}.tar.gz";
       sha256 = "06rmp1ap6flh64m81j0n3a357ij2vj9zwcvvw0p31y6hz1id9shi";
     };
 
-    buildInputs = [ pkgs.pkgconfig pkgs.fuse ];
+    buildInputs = with self; [ pkgs.pkgconfig pkgs.fuse ];
 
     meta = {
       description = "Python bindings for FUSE.";
@@ -3760,9 +3798,8 @@ let
   futures = buildPythonPackage rec {
     name = "futures-2.1.6";
 
-    propagatedBuildInputs = with pythonPackages; [  ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/f/futures/futures-2.1.6.tar.gz";
       md5 = "cfab9ac3cd55d6c7ddd0546a9f22f453";
     };
@@ -3777,7 +3814,7 @@ let
   gcovr = buildPythonPackage rec {
     name = "gcovr-2.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/g/gcovr/${name}.tar.gz";
       md5 = "672db629469882b93c40016aebff50ac";
     };
@@ -3791,7 +3828,7 @@ let
   genshi = buildPythonPackage {
     name = "genshi-0.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = http://ftp.edgewall.com/pub/genshi/Genshi-0.7.tar.gz;
       sha256 = "0lkkbp6fbwzv0zda5iqc21rr7rdldkwh3hfabfjl9i4bwq14858x";
     };
@@ -3800,7 +3837,7 @@ let
     # FAIL: test_sanitize_remove_src_javascript (genshi.filters.tests.html.HTMLSanitizerTestCase)
     doCheck = false;
 
-    buildInputs = [ pkgs.setuptools ];
+    buildInputs = with self; [ pkgs.setuptools ];
 
     meta = {
       description = "Python components for parsing HTML, XML and other textual content";
@@ -3819,13 +3856,13 @@ let
     name = "gevent-1.0.1";
     disabled = isPy3k || isPyPy;  # see https://github.com/surfly/gevent/issues/248
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/g/gevent/${name}.tar.gz";
       sha256 = "0hyzfb0gcx9pm5c2igan8y57hqy2wixrwvdjwsaivxsqs0ay49s6";
     };
 
-    buildInputs = [ pkgs.libev ];
-    propagatedBuildInputs = optionals (!isPyPy) [ greenlet ];
+    buildInputs = with self; [ pkgs.libev ];
+    propagatedBuildInputs = optionals (!isPyPy) [ self.greenlet ];
 
     meta = with stdenv.lib; {
       description = "Coroutine-based networking library";
@@ -3840,12 +3877,12 @@ let
     name = "geventhttpclient-${version}";
     version = "1.1.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/g/geventhttpclient/${name}.tar.gz";
       sha256 = "1k7s4dnkmcfqqkmbqi0vvb2ns53r9cl2652mq20bgg65zj26j2l6";
     };
 
-    propagatedBuildInputs = [ gevent certifi backports_ssl_match_hostname_3_4_0_2 ];
+    propagatedBuildInputs = with self; [ gevent certifi backports_ssl_match_hostname_3_4_0_2 ];
 
     meta = with stdenv.lib; {
       homepage = http://github.com/gwik/geventhttpclient;
@@ -3858,37 +3895,37 @@ let
   gevent-socketio = buildPythonPackage rec {
     name = "gevent-socketio-0.3.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/g/gevent-socketio/${name}.tar.gz";
       sha256 = "1zra86hg2l1jcpl9nsnqagy3nl3akws8bvrbpgdxk15x7ywllfak";
     };
 
-    buildInputs = [ versiontools gevent-websocket mock pytest ];
-    propagatedBuildInputs = [ gevent ];
+    buildInputs = with self; [ versiontools gevent-websocket mock pytest ];
+    propagatedBuildInputs = with self; [ gevent ];
 
   };
 
   gevent-websocket = buildPythonPackage rec {
     name = "gevent-websocket-0.9.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/g/gevent-websocket/${name}.tar.gz";
       sha256 = "07rqwfpbv13mk6gg8mf0bmvcf6siyffjpgai1xd8ky7r801j4xb4";
     };
 
-    propagatedBuildInputs = [ gevent ];
+    propagatedBuildInputs = with self; [ gevent ];
 
   };
 
   genzshcomp = buildPythonPackage {
     name = "genzshcomp-0.5.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/g/genzshcomp/genzshcomp-0.5.1.tar.gz";
       md5 = "7a954f1835875002e9044fe55ed1b488";
     };
 
-    buildInputs = [ pkgs.setuptools ] ++ (optional isPy26 argparse);
+    buildInputs = with self; [ pkgs.setuptools ] ++ (optional isPy26 argparse);
 
     meta = {
       description = "automatically generated zsh completion function for Python's option parser modules";
@@ -3900,7 +3937,7 @@ let
   gflags = buildPythonPackage rec {
     name = "gflags-2.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://python-gflags.googlecode.com/files/python-${name}.tar.gz";
       sha256 = "1mkc7315bpmh39vbn0jq237jpw34zsrjr1sck98xi36bg8hnc41i";
     };
@@ -3915,17 +3952,17 @@ let
   glance = buildPythonPackage rec {
     name = "glance-0.1.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/g/glance/${name}.tar.gz";
       md5 = "e733713ccd23e4a6253386a47971cfb5";
     };
 
-    buildInputs = [ nose mox ];
+    buildInputs = with self; [ nose mox ];
 
     # tests fail for python2.6
     doCheck = python.majorVersion != "2.6";
 
-    propagatedBuildInputs = [ gflags sqlalchemy webob routes eventlet ];
+    propagatedBuildInputs = with self; [ gflags sqlalchemy webob routes eventlet ];
 
     PYTHON_EGG_CACHE = "`pwd`/.egg-cache";
 
@@ -3949,8 +3986,8 @@ let
 
     doCheck = false;
 
-    buildInputs = [ unittest2 ];
-    propagatedBuildInputs = [ modules.curses modules.curses_panel psutil setuptools bottle batinfo pkgs.hddtemp pysnmp ];
+    buildInputs = with self; [ unittest2 ];
+    propagatedBuildInputs = with self; [ modules.curses modules.curses_panel psutil setuptools bottle batinfo pkgs.hddtemp pysnmp ];
 
     preConfigure = ''
       sed -i 's/data_files\.append((conf_path/data_files.append(("etc\/glances"/' setup.py;
@@ -3966,12 +4003,12 @@ let
     name = "goobook-1.5";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://pypi.python.org/packages/source/g/goobook/${name}.tar.gz";
       sha256 = "05vpriy391l5i05ckl5ja5bswqyvl3rwrbmks9pi46w1813j7p5z";
     };
 
-    buildInputs = [ six ];
+    buildInputs = with self; [ six ];
 
     preConfigure = ''
       sed -i '/distribute/d' setup.py
@@ -3985,18 +4022,18 @@ let
       platforms   = platforms.unix;
     };
 
-    propagatedBuildInputs = [ gdata hcs_utils keyring simplejson ];
+    propagatedBuildInputs = with self; [ gdata hcs_utils keyring simplejson ];
   };
 
   google_api_python_client = buildPythonPackage rec {
     name = "google-api-python-client-1.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://google-api-python-client.googlecode.com/files/google-api-python-client-1.2.tar.gz";
       sha256 = "0xd619w71xk4ldmikxqhaaqn985rc2hy4ljgwfp50jb39afg7crw";
     };
 
-    propagatedBuildInputs = [ httplib2 ];
+    propagatedBuildInputs = with self; [ httplib2 ];
 
     meta = with stdenv.lib; {
       description = "The core Python library for accessing Google APIs";
@@ -4010,12 +4047,12 @@ let
     name = "google-apputils-0.4.0";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = http://pypi.python.org/packages/source/g/google-apputils/google-apputils-0.4.0.tar.gz;
       sha256 = "18wlivnqxvx1wsw177lckpl32nmr6cq7f5nhk8r72fvjy8wynq5j";
     };
 
-    propagatedBuildInputs = [ pytz gflags dateutil_1_5 mox ];
+    propagatedBuildInputs = with self; [ pytz gflags dateutil_1_5 mox ];
 
     meta = with stdenv.lib; {
       description = "Google Application Utilities for Python";
@@ -4027,7 +4064,7 @@ let
     name = "greenlet-0.4.3";
     disabled = isPyPy;  # builtin for pypy
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/g/greenlet/${name}.zip";
       md5 = "a5e467a5876c415cd357c1ab9027e06c";
     };
@@ -4043,7 +4080,7 @@ let
     rev = "1977";
     name = "gyp-r${rev}";
 
-    src = fetchsvn {
+    src = pkgs.fetchsvn {
       url = "http://gyp.googlecode.com/svn/trunk";
       inherit rev;
       sha256 = "0vnr75yd3bidysiwl9lljvf1dv6v9m9xqdnx0hdgyl92w689n9j8";
@@ -4063,12 +4100,12 @@ let
   gunicorn = buildPythonPackage rec {
     name = "gunicorn-19.1.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/g/gunicorn/${name}.tar.gz";
       md5 = "3d759bec3c46a680ff010775258c4c56";
     };
 
-    buildInputs = [ pytest ];
+    buildInputs = with self; [ pytest ];
 
     meta = {
       homepage = http://pypi.python.org/pypi/gunicorn;
@@ -4079,7 +4116,7 @@ let
   hcs_utils = buildPythonPackage rec {
     name = "hcs_utils-1.5";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://pypi.python.org/packages/source/h/hcs_utils/${name}.tar.gz";
       sha256 = "1d2za9crkgzildx610w3zif2i8phcqhh6n8nzg3yvy2mg0s18mkl";
     };
@@ -4089,7 +4126,7 @@ let
       export LC_ALL="en_US.UTF-8"
     '';
 
-    buildInputs = [ six ];
+    buildInputs = with self; [ six ];
 
     meta = with stdenv.lib; {
       description = "Library collecting some useful snippets";
@@ -4105,7 +4142,7 @@ let
     name = "hetzner-${version}";
     version = "0.7.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/RedMoonStudios/hetzner/archive/"
           + "v${version}.tar.gz";
       sha256 = "07jnrgy9fkh1hwgsa8491ljz9spazmifqsg92m3xnamja1536qfl";
@@ -4126,13 +4163,13 @@ let
   htmllaundry = buildPythonPackage rec {
     name = "htmllaundry-2.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/h/htmllaundry/${name}.tar.gz";
       md5 = "6db6909de76c4b259e65d90b5debdbda";
     };
 
-    buildInputs = [ nose ];
-    propagatedBuildInputs = [ six lxml ];
+    buildInputs = with self; [ nose ];
+    propagatedBuildInputs = with self; [ six lxml ];
 
     # some tests fail, probably because of changes in lxml
     # not relevant for me, if releavnt for you, fix it...
@@ -4148,7 +4185,7 @@ let
   html5lib = buildPythonPackage (rec {
     name = "html5lib-0.95";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/h/html5lib/${name}.tar.gz";
       md5 = "fe607f9917d81763e842f818f23464ee";
     };
@@ -4165,12 +4202,12 @@ let
     name = "http_signature-0.1.4";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/h/http_signature/${name}.tar.gz";
       md5 = "015061846254bd5d8c5dbc2913985153";
     };
 
-    propagatedBuildInputs = [pycrypto];
+    propagatedBuildInputs = with self; [pycrypto];
 
     meta = {
       homepage = https://github.com/atl/py-http-signature;
@@ -4182,12 +4219,12 @@ let
   httpbin = buildPythonPackage rec {
     name = "httpbin-0.2.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/h/httpbin/${name}.tar.gz";
       md5 = "9b2bb2fab45f5fa839e9a776a64d6089";
     };
 
-    propagatedBuildInputs = [ flask markupsafe decorator itsdangerous six ];
+    propagatedBuildInputs = with self; [ flask markupsafe decorator itsdangerous six ];
 
     meta = {
       homepage = https://github.com/kennethreitz/httpbin;
@@ -4200,7 +4237,7 @@ let
   httplib2 = buildPythonPackage rec {
     name = "httplib2-0.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/h/httplib2/${name}.tar.gz";
       sha256 = "1asi5wpncnc6ki3bz33mhb9xh2lrkb24y4qng8bmqnczdmm8rsir";
     };
@@ -4219,14 +4256,14 @@ let
     disabled = isPy3k;
     doCheck = !isPyPy;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/h/httpretty/${name}.tar.gz";
       md5 = "50b02560a49fe928c90c53a49791f621";
     };
 
-    buildInputs = [ tornado requests httplib2 sure nose coverage ];
+    buildInputs = with self; [ tornado requests httplib2 sure nose coverage ];
 
-    propagatedBuildInputs = [ urllib3 ];
+    propagatedBuildInputs = with self; [ urllib3 ];
 
     postPatch = ''
       sed -i -e 's/==.*$//' *requirements.txt
@@ -4249,7 +4286,7 @@ let
 
   importlib = if isPy26 then (buildPythonPackage {
     name = "importlib-1.0.2";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/i/importlib/importlib-1.0.2.tar.gz";
       md5 = "4aa23397da8bd7c7426864e88e4db7e1";
     };
@@ -4259,14 +4296,14 @@ let
   influxdb = buildPythonPackage rec {
     name = "influxdb-0.1.12";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/i/influxdb/${name}.tar.gz";
       md5 = "6c975058ccc4df41dad8d8234c52d754";
     };
 
     # ImportError: No module named tests
     doCheck = false;
-    propagatedBuildInputs = [ requests ];
+    propagatedBuildInputs = with self; [ requests ];
 
     meta = {
       description = "Python client for InfluxDB";
@@ -4279,12 +4316,12 @@ let
     version = "0.6.1";
     name = "iptools-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/i/iptools/iptools-${version}.tar.gz";
       md5 = "aed4045638fd40c16f8d9bb04606f700";
     };
 
-    buildInputs = [ nose ];
+    buildInputs = with self; [ nose ];
 
     meta = {
       description = "Utilities for manipulating IP addresses including a class that can be used to include CIDR network blocks in Django's INTERNAL_IPS setting.";
@@ -4297,7 +4334,7 @@ let
     version = "0.74";
     name = "ipy-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/I/IPy/IPy-${version}.tar.gz";
       md5 = "f4f7ddc7c5e55a47222a5cc6c0a87b6d";
     };
@@ -4316,7 +4353,7 @@ let
     name = "ipaddr-2.1.10";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/i/ipaddr/${name}.tar.gz";
       sha256 = "18ycwkfk3ypb1yd09wg20r7j7zq2a73d7j6j10qpgra7a7abzhyj";
     };
@@ -4331,25 +4368,25 @@ let
   ipdb = buildPythonPackage rec {
     name = "ipdb-0.8";
     disabled = isPyPy;  # setupterm: could not find terminfo database
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/i/ipdb/${name}.zip";
       md5 = "96dca0712efa01aa5eaf6b22071dd3ed";
     };
-    propagatedBuildInputs = [ pythonPackages.ipythonLight ];
+    propagatedBuildInputs = with self; [ self.ipythonLight ];
   };
 
   ipdbplugin = buildPythonPackage {
     name = "ipdbplugin-1.4";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/i/ipdbplugin/ipdbplugin-1.4.tar.gz";
       md5 = "f9a41512e5d901ea0fa199c3f648bba7";
     };
-    propagatedBuildInputs = [ pythonPackages.nose pythonPackages.ipythonLight ];
+    propagatedBuildInputs = with self; [ self.nose self.ipythonLight ];
   };
 
   iso8601_0_1_4 = buildPythonPackage {
     name = "iso8601-0.1.4";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://pypi.python.org/packages/source/i/iso8601/iso8601-0.1.4.tar.gz;
       sha256 = "03gnjxpfq0wwimqnsvz32xcngq0hrdqryn3zm8qh95hnnggwqa3s";
     };
@@ -4364,7 +4401,7 @@ let
   jedi = buildPythonPackage (rec {
     name = "jedi-0.8.0-final0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/j/jedi/${name}.tar.gz";
       sha256 = "0jnhwh0b1hy5cssi3n5a4j7z9pgpcckyv5s52ba4jnq5bwgdpbcf";
     };
@@ -4380,12 +4417,12 @@ let
   jinja2 = buildPythonPackage rec {
     name = "Jinja2-2.7.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/J/Jinja2/${name}.tar.gz";
       sha256 = "12scn3zmmj76rzyc0axjzf6dsazyj9xgp0l46q41rjhxm23s1h2w";
     };
 
-    propagatedBuildInputs = [ pythonPackages.markupsafe ];
+    propagatedBuildInputs = with self; [ self.markupsafe ];
 
     meta = {
       homepage = http://jinja.pocoo.org/;
@@ -4403,12 +4440,12 @@ let
   jmespath = buildPythonPackage rec {
     name = "jmespath-0.2.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/j/jmespath/jmespath-0.2.1.tar.gz";
       md5 = "7800775aa12c6303f9ad597b6a8fa03c";
     };
 
-    propagatedBuildInputs = [ ply ];
+    propagatedBuildInputs = with self; [ ply ];
 
     meta = {
       homepage = "https://github.com/boto/jmespath";
@@ -4420,12 +4457,12 @@ let
   keyring = buildPythonPackage rec {
     name = "keyring-3.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://pypi.python.org/packages/source/k/keyring/${name}.zip";
       sha256 = "1flccphpyrb8y8dra2fq2s2v3fg615d77kjjmzl0gmiidabkkdqf";
     };
 
-    buildInputs =
+    buildInputs = with self;
       [ fs gdata python_keyczar mock pyasn1 pycrypto pytest six ];
 
     meta = with stdenv.lib; {
@@ -4443,7 +4480,7 @@ let
 
     meta.maintainers = [ stdenv.lib.maintainers.mornfall ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/k/kitchen/kitchen-1.1.1.tar.gz";
       sha256 = "0ki840hjk1q19w6icv0dj2jxb00966nwy9b1jib0dgdspj00yrr5";
     };
@@ -4453,7 +4490,7 @@ let
     name = "pylast-${version}";
     version = "0.5.11";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pylast/${name}.tar.gz";
       md5 = "506cf1b13020b3ed2f3c845ea0c9830e";
     };
@@ -4472,14 +4509,14 @@ let
   libcloud = buildPythonPackage (rec {
     name = "libcloud-0.14.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://pypi.python.org/packages/source/a/apache-libcloud/apache-libcloud-0.14.1.tar.bz2;
       sha256 = "1l6190pjv54c7y8pzr089ij727qv7bqhhaznr2mkvimgr1wzsql5";
     };
 
-    buildInputs = [  mock ];
+    buildInputs = with self; [ mock ];
 
-    propagatedBuildInputs = [ pycrypto ];
+    propagatedBuildInputs = with self; [ pycrypto ];
     preConfigure = "cp libcloud/test/secrets.py-dist libcloud/test/secrets.py";
 
     # failing tests for 26 and 27
@@ -4495,14 +4532,14 @@ let
   limnoria = buildPythonPackage (rec {
     name = "limnoria-20130327";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://pypi.python.org/packages/source/l/limnoria/limnoria-2013-06-01T10:32:51+0200.tar.gz;
       name = "limnoria-2013-06-01.tar.gz";
       sha256 = "1i8q9zzf43sr3n1q4h6h1z8nz31g4aa8dq94ywvfbh7hklmchq6n";
     };
 
-    buildInputs = [ pkgs.git ];
-    propagatedBuildInputs = [ modules.sqlite3 ];
+    buildInputs = with self; [ pkgs.git ];
+    propagatedBuildInputs = with self; [ modules.sqlite3 ];
 
     doCheck = false;
 
@@ -4519,12 +4556,12 @@ let
     name = "linode-${version}";
     version = "0.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/l/linode/linode-${version}.tar.gz";
       md5 = "03a306575cf274719b3206ecee0bda9e";
     };
 
-    propagatedBuildInputs = [ requests2 ];
+    propagatedBuildInputs = with self; [ requests2 ];
 
     meta = with stdenv.lib; {
       homepage = "https://github.com/ghickman/linode";
@@ -4538,7 +4575,7 @@ let
   lockfile = buildPythonPackage rec {
     name = "lockfile-0.9.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pylockfile.googlecode.com/files/${name}.tar.gz";
       sha1 = "1eebaee375641c9f29aeb21768f917dd2b985752";
     };
@@ -4555,23 +4592,23 @@ let
   logilab_common = buildPythonPackage rec {
     name = "logilab-common-0.61.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://download.logilab.org/pub/common/${name}.tar.gz";
       sha256 = "09apsrcvjliawbxmfrmi1l8hlbaj87mb7n4lrlivy5maxs6yg4hd";
     };
 
-    propagatedBuildInputs = [ unittest2 ];
+    propagatedBuildInputs = with self; [ unittest2 ];
   };
 
   lxml = buildPythonPackage ( rec {
     name = "lxml-3.3.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/l/lxml/${name}.tar.gz";
       md5 = "a804b36864c483fe7abdd7f493a0c379";
     };
 
-    buildInputs = [ pkgs.libxml2 pkgs.libxslt ];
+    buildInputs = with self; [ pkgs.libxml2 pkgs.libxslt ];
 
     meta = {
       description = "Pythonic binding for the libxml2 and libxslt libraries";
@@ -4584,12 +4621,12 @@ let
   python_magic = buildPythonPackage rec {
     name = "python-magic-0.4.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/python-magic/${name}.tar.gz";
       md5 = "07e7a0fea78dd81ed609414c3484df58";
     };
 
-    propagatedBuildInputs = [ pkgs.file ];
+    propagatedBuildInputs = with self; [ pkgs.file ];
 
     patchPhase = ''
       substituteInPlace magic.py --replace "ctypes.CDLL(dll)" "ctypes.CDLL('${pkgs.file}/lib/libmagic.so')"
@@ -4614,7 +4651,7 @@ let
     src = pkgs.file.src;
 
     patches = [ ../tools/misc/file/python.patch ];
-    buildInputs = [ python pkgs.file ];
+    buildInputs = with self; [ python pkgs.file ];
 
     preConfigure = "cd python";
 
@@ -4629,12 +4666,12 @@ let
     version = "0.21.1";
     name = "m2crypto-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-${version}.tar.gz";
       md5 = "f93d8462ff7646397a9f77a2fe602d17";
     };
 
-    buildInputs = [ pkgs.swig pkgs.openssl ];
+    buildInputs = with self; [ pkgs.swig pkgs.openssl ];
 
     preBuild = "${python}/bin/${python.executable} setup.py build_ext --openssl=${pkgs.openssl}";
 
@@ -4650,13 +4687,13 @@ let
   Mako = buildPythonPackage rec {
     name = "Mako-0.9.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/M/Mako/${name}.tar.gz";
       md5 = "fe3f394ef714776d09ec6133923736a7";
     };
 
-    buildInputs = [ markupsafe nose ];
-    propagatedBuildInputs = [ markupsafe ];
+    buildInputs = with self; [ markupsafe nose ];
+    propagatedBuildInputs = with self; [ markupsafe ];
 
     meta = {
       description = "Super-fast templating language.";
@@ -4670,7 +4707,7 @@ let
   markupsafe = buildPythonPackage rec {
     name = "markupsafe-0.15";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/M/MarkupSafe/${name}.tar.gz";
       md5 = "4e7c4d965fe5e033fa2d7bb7746bb186";
     };
@@ -4687,12 +4724,12 @@ let
     name = "manuel-${version}";
     version = "1.8.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/m/manuel/${name}.tar.gz";
       sha256 = "1diyj6a8bvz2cdf9m0g2bbx9z2yjjnn3ylbg1zinpcjj6vldfx59";
     };
 
-    propagatedBuildInputs = [ six zope_testing ];
+    propagatedBuildInputs = with self; [ six zope_testing ];
 
     meta = {
       description = "A documentation builder";
@@ -4705,7 +4742,7 @@ let
     version = "2.3.1";
     name = "markdown-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/M/Markdown/Markdown-${version}.tar.gz";
       sha256 = "147j9hznv2r187a86d28glmg3pckfrdp0nz9yh7s1aqpawwdkszz";
     };
@@ -4722,15 +4759,15 @@ let
   matplotlib = buildPythonPackage rec {
     name = "matplotlib-1.3.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "mirror://sourceforge/matplotlib/${name}.tar.gz";
       sha256 = "0smgpn7lwbn02nbyhawyn0n6r3pb65zk501f21bjgavnjjfnf5pa";
     };
 
-    buildInputs = [ python pkgs.which pkgs.ghostscript ] ++
+    buildInputs = with self; [ python pkgs.which pkgs.ghostscript ] ++
         (if stdenv.isDarwin then [ pkgs.clangStdenv ] else [ pkgs.stdenv ]);
 
-    propagatedBuildInputs =
+    propagatedBuildInputs = with self;
       [ dateutil nose numpy pyparsing tornado pkgs.freetype pkgs.libpng pkgs.pkgconfig
       ];
 
@@ -4746,12 +4783,12 @@ let
   mccabe = buildPythonPackage (rec {
     name = "mccabe-0.2.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/m/mccabe/${name}.tar.gz";
       md5 = "5a3f3fa6a4bad126c88aaaa7dab682f5";
     };
 
-    buildInputs = [ ];
+    buildInputs = with self; [ ];
 
     meta = {
       description = "McCabe checker, plugin for flake8";
@@ -4766,12 +4803,12 @@ let
     name = "mechanize-0.1.11";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://wwwsearch.sourceforge.net/mechanize/src/${name}.tar.gz";
       sha256 = "1h62mwy4iz09jqz17nrb9j8y0djd500zdfqwrz9xmdwqzqwixkj2";
     };
 
-    propagatedBuildInputs = [ clientform ];
+    propagatedBuildInputs = with self; [ clientform ];
 
     meta = {
       description = "Stateful programmatic web browsing in Python";
@@ -4786,7 +4823,7 @@ let
   meld3 = buildPythonPackage rec {
     name = "meld3-1.0.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://pypi.python.org/packages/source/m/meld3/meld3-1.0.0.tar.gz;
       md5 = "ca270506dd4ecb20ae26fa72fbd9b0be";
     };
@@ -4803,10 +4840,10 @@ let
   memcached = buildPythonPackage rec {
     name = "memcached-1.51";
 
-    src = if isPy3k then fetchurl {
+    src = if isPy3k then pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/python3-memcached/python3-${name}.tar.gz";
       sha256 = "0na8b369q8fivh3y0nvzbvhh3lgvxiyyv9xp93cnkvwfsr8mkgkw";
-    } else fetchurl {
+    } else pkgs.fetchurl {
       url = "http://ftp.tummy.com/pub/python-memcached/old-releases/python-${name}.tar.gz";
       sha256 = "124s98m6hvxj6x90d7aynsjfz878zli771q96ns767r2mbqn7192";
     };
@@ -4821,7 +4858,7 @@ let
   memory_profiler = buildPythonPackage rec {
     name = "memory_profiler-0.27";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/m/memory_profiler/memory_profiler-0.27.tar.gz";
       md5 = "212c0d7452dbaffb6b09474ac07b0668";
     };
@@ -4839,12 +4876,12 @@ let
     version = "1.2.8";
     name = "minimock-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://bitbucket.org/jab/minimock/get/${version}.zip";
       sha256 = "c88fa8a7120623f23990a7f086a9657f6ced09025a55e3be8649a30b4945441a";
     };
 
-    buildInputs = [ nose ];
+    buildInputs = with self; [ nose ];
 
     checkPhase = "./test";
 
@@ -4856,11 +4893,11 @@ let
 
   rainbowstream = buildPythonPackage rec {
     name = "rainbowstream-${version}";
-    version = "0.9.5";
+    version = "1.1.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://pypi.python.org/packages/source/r/rainbowstream/${name}.tar.gz";
-      sha256 = "0v79xiihgsfjipxkzzi92l8y1f8vxxachpv71gyzyhxdsl2zfj57";
+      sha256 = "04i2a8a5k6n6lgfpa9bzzbkhvywgd4bn3qlspl97pn8ply9kgszm";
     };
 
     doCheck = false;
@@ -4870,9 +4907,16 @@ let
       export LC_ALL="en_US.UTF-8"
     '';
 
-    buildInputs = [
+    postInstall = ''
+      for prog in "$out/bin/"*; do
+        wrapProgram "$prog" \
+          --prefix PYTHONPATH : "$PYTHONPATH"
+      done
+    '';
+
+    buildInputs = with self; [
       pkgs.libjpeg pkgs.freetype pkgs.zlib
-      pillow twitter pyfiglet requests arrow dateutil modules.readline
+      pillow twitter pyfiglet requests arrow dateutil modules.readline pysocks
     ];
 
     meta = {
@@ -4887,12 +4931,12 @@ let
     baseName = "mitmproxy";
     name = "${baseName}-${meta.version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "${meta.homepage}/download/${name}.tar.gz";
       sha256 = "0mpyw8iw4l4jv175qlbn0rrlgiz1k79m44jncbdxfj8ddvvvyz2j";
     };
 
-    buildInputs = [
+    buildInputs = with self; [
       pkgs.pyopenssl pyasn1 urwid pil lxml flask protobuf netlib
     ];
 
@@ -4916,12 +4960,12 @@ let
   mock = buildPythonPackage (rec {
     name = "mock-1.0.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/m/mock/${name}.tar.gz";
       md5 = "c3971991738caa55ec7c356bbc154ee2";
     };
 
-    buildInputs = [ unittest2 ];
+    buildInputs = with self; [ unittest2 ];
 
     meta = {
       description = "Mock objects for Python";
@@ -4937,7 +4981,7 @@ let
     disabled = isPy3k;
     ver = "1.9.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://static.moinmo.in/files/moin-${ver}.tar.gz";
       sha256 = "f4ba1b5c956bd96d2a61e27e68d297aa63d1afbc80d5740e139dcdf0affb4db5";
     };
@@ -4954,13 +4998,13 @@ let
   moretools = buildPythonPackage rec {
     name = "moretools-0.1a41";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/m/moretools/${name}.tar.gz";
       sha256 = "1n442wprbl3cmg08233m1sr3g4z0i8hv9g6bhch7kzdmbl21399f";
     };
 
-    buildInputs = [ six pathpy setuptools ];
-    propagatedBuildInputs = [ decorator ];
+    buildInputs = with self; [ six pathpy setuptools ];
+    propagatedBuildInputs = with self; [ decorator ];
 
     meta = with stdenv.lib; {
       description = "Many more basic tools for python 2/3 extending itertools, functools, operator and collections";
@@ -4974,7 +5018,7 @@ let
   mox = buildPythonPackage rec {
     name = "mox-0.5.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pymox.googlecode.com/files/${name}.tar.gz";
       sha1 = "b71aeaacf31898c3b38d8b9ca5bcc0664499c0de";
     };
@@ -4992,7 +5036,7 @@ let
   mpmath = buildPythonPackage rec {
     name = "mpmath-0.17";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://mpmath.googlecode.com/files/${name}.tar.gz";
       sha256 = "1blgzwq4irzaf8abb4z0d2r48903n9zxf51fhnv3gv09bgxjqzxh";
     };
@@ -5015,7 +5059,7 @@ let
 
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/python-mpd/python-mpd-0.3.0.tar.gz";
       md5 = "5b3849b131e2fb12f251434597d65635";
     };
@@ -5031,7 +5075,7 @@ let
     name = "mrbob-${version}";
     version = "0.1.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/m/mr.bob/mr.bob-${version}.zip";
       md5 = "84a117c9a75b86842b0fa5f5c9c767f3";
     };
@@ -5042,7 +5086,7 @@ let
       export LC_ALL="en_US.UTF-8"
     '';
 
-    propagatedBuildInputs = [ argparse jinja2 six modules.readline ] ++
+    propagatedBuildInputs = with self; [ argparse jinja2 six modules.readline ] ++
                             (optionals isPy26 [ importlib ordereddict ]);
 
     meta = {
@@ -5055,7 +5099,7 @@ let
   munkres = buildPythonPackage rec {
     name = "munkres-1.0.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/m/munkres/${name}.tar.gz";
       md5 = "d7ba3b8c5001578ae229a2d5a655872f";
     };
@@ -5075,7 +5119,7 @@ let
   musicbrainzngs = buildPythonPackage rec {
     name = "musicbrainzngs-0.5";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/m/musicbrainzngs/${name}.tar.gz";
       md5 = "9e17a181af72d04a291c9a960bc73d44";
     };
@@ -5097,7 +5141,7 @@ let
   mutagen = buildPythonPackage (rec {
     name = "mutagen-1.23";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/m/mutagen/${name}.tar.gz";
       sha256 = "12f70aaf5ggdzll76bhhkn64b27xy9s1acx417dbsaqnnbis8s76";
     };
@@ -5117,7 +5161,7 @@ let
     name = "muttils-1.3";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = http://www.blacktrash.org/hg/muttils/archive/8bb26094df06.tar.bz2;
       sha256 = "1a4kxa0fpgg6rdj5p4kggfn8xpniqh8v5kbiaqc6wids02m7kag6";
     };
@@ -5141,14 +5185,14 @@ let
     # plenty of failing tests
     doCheck = false;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = mirror://sourceforge/mysql-python/MySQL-python-1.2.3.tar.gz;
       sha256 = "0vkyg9dmj29hzk7fy77f42p7bfj28skyzsjsjry4wqr3z6xnzrkx";
     };
 
-    buildInputs = [ nose ];
+    buildInputs = with self; [ nose ];
 
-    propagatedBuildInputs = [ pkgs.mysql pkgs.zlib ];
+    propagatedBuildInputs = with self; [ pkgs.mysql pkgs.zlib ];
 
     meta = {
       description = "MySQL database binding for Python";
@@ -5161,7 +5205,7 @@ let
   mysql_connector_repackaged = buildPythonPackage rec {
     name = "mysql-connector-repackaged-0.3.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/m/mysql-connector-repackaged/${name}.tar.gz";
       md5 = "0b17ad1cb3fe763fd44487cb97cf45b2";
     };
@@ -5180,7 +5224,7 @@ let
     name = "namebench-1.0.5";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://namebench.googlecode.com/files/${name}.tgz";
       sha256 = "6cbde35ce94d1f31e7d48f5d8eec13238b4dbc505675a33f1e183e600c1482c3";
     };
@@ -5213,12 +5257,12 @@ let
 
 
   nbxmpp = buildPythonPackage rec {
-    name = "nbxmpp-0.5";
+    name = "nbxmpp-0.5.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       name = "${name}.tar.gz";
-      url = "https://python-nbxmpp.gajim.org/downloads/5";
-      sha256 = "0y270c9v4i9n58p4ghlm18h50qcfichmfkgcpqd3bypx4fkmdx90";
+      url = "https://python-nbxmpp.gajim.org/downloads/6";
+      sha256 = "0agr0ikfdmna5rjvm7lm0mx52cdwqp5b2xbx3inagp70whmdv219";
     };
 
     meta = {
@@ -5232,7 +5276,7 @@ let
   netaddr = buildPythonPackage rec {
     name = "netaddr-0.7.5";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/downloads/drkjam/netaddr/${name}.tar.gz";
       sha256 = "0ssxic389rdc79zkz8dxcjpqdi5qs80h12khkag410cl9cwk11f2";
     };
@@ -5250,7 +5294,7 @@ let
     version = "0.10.4";
     name = "netifaces-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/n/netifaces/${name}.tar.gz";
       sha256 = "1plw237a4zib4z8s62g0mrs8gm3kjfrp5sxh6bbk9nl3rdls2mln";
     };
@@ -5266,13 +5310,13 @@ let
     name = "${baseName}-${meta.version}";
     disabled = (!isPy27);
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/cortesi/netlib/archive/v${meta.version}.tar.gz";
       name = "${name}.tar.gz";
       sha256 = "1x2n126b7fal64fb5fzkp4by7ym0iswn3w9mh6pm4c1vjdpnk592";
     };
 
-    buildInputs = [
+    buildInputs = with self; [
       pkgs.pyopenssl pyasn1
     ];
 
@@ -5290,13 +5334,13 @@ let
     name = "nevow-${version}";
     version = "0.10.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/N/Nevow/Nevow-${version}.tar.gz";
       sha256 = "90631f68f626c8934984908d3df15e7c198939d36be7ead1305479dfc67ff6d0";
       name = "${name}.tar.gz";
     };
 
-    propagatedBuildInputs = [ twisted ];
+    propagatedBuildInputs = with self; [ twisted ];
 
     postInstall = "twistd --help > /dev/null";
 
@@ -5331,12 +5375,12 @@ let
     version = "1.3.4";
     name = "nose-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/n/nose/${name}.tar.gz";
       sha256 = "00qymfgwg4iam4xi0w9bnv7lcb3fypq1hzfafzgs1rfmwaj67g3n";
     };
 
-    buildInputs = [ coverage ];
+    buildInputs = with self; [ coverage ];
 
     doCheck = false;  # lot's of transient errors, too much hassle
     checkPhase = if python.is_py3k or false then ''
@@ -5355,12 +5399,12 @@ let
     version = "0.4";
     name = "nose-selecttests-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/n/nose-selecttests/${name}.zip";
       sha256 = "0lgrfgp3sq8xi8d9grrg0z8jsyk0wl8a3rxw31hb7vdncin5b7n5";
     };
 
-    propagatedBuildInputs = [ nose ];
+    propagatedBuildInputs = with self; [ nose ];
 
     meta = {
       description = "Simple nose plugin that enables developers to run subset of collected tests to spare some waiting time for better things";
@@ -5370,32 +5414,32 @@ let
 
   nose2 = if isPy26 then null else (buildPythonPackage rec {
     name = "nose2-0.4.5";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/n/nose2/${name}.tar.gz";
       md5 = "d7e51c848227488e3cc0424faf5511cd";
     };
     meta = {
       description = "nose2 is the next generation of nicer testing for Python";
     };
-    propagatedBuildInputs = [ six ];
+    propagatedBuildInputs = with self; [ six ];
     # AttributeError: 'module' object has no attribute 'collector'
     doCheck = false;
   });
 
   nosejs = buildPythonPackage {
     name = "nosejs-0.9.4";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://pypi.python.org/packages/source/N/NoseJS/NoseJS-0.9.4.tar.gz;
       sha256 = "0qrhkd3sga56qf6k0sqyhwfcladwi05gl6aqmr0xriiq1sgva5dy";
     };
-    buildInputs = [ nose ];
+    buildInputs = with self; [ nose ];
   };
 
   nose-cprof = buildPythonPackage rec {
     name = "nose-cprof-0.1-0";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/n/nose-cprof/${name}.tar.gz";
       md5 = "5db27c3b8f01915335ae6fc5fd3afd44";
     };
@@ -5404,19 +5448,19 @@ let
       description = "A python nose plugin to profile using cProfile rather than the default Hotshot profiler.";
     };
 
-    buildInputs = [ nose ];
+    buildInputs = with self; [ nose ];
   };
 
 
   notify = pkgs.stdenv.mkDerivation (rec {
     name = "python-notify-0.1.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = http://www.galago-project.org/files/releases/source/notify-python/notify-python-0.1.1.tar.bz2;
       sha256 = "1kh4spwgqxm534qlzzf2ijchckvs0pwjxl1irhicjmlg7mybnfvx";
     };
 
-    patches = singleton (fetchurl {
+    patches = singleton (pkgs.fetchurl {
       name = "libnotify07.patch";
       url = "http://pkgs.fedoraproject.org/cgit/notify-python.git/plain/"
           + "libnotify07.patch?id2=289573d50ae4838a1658d573d2c9f4c75e86db0c";
@@ -5424,11 +5468,11 @@ let
     });
 
     postPatch = ''
-      sed -i -e '/^PYGTK_CODEGEN/s|=.*|="${pygtk}/bin/pygtk-codegen-2.0"|' \
+      sed -i -e '/^PYGTK_CODEGEN/s|=.*|="${self.pygtk}/bin/pygtk-codegen-2.0"|' \
         configure
     '';
 
-    buildInputs = [ python pkgs.pkgconfig pkgs.libnotify pygobject pygtk pkgs.glib pkgs.gtk pkgs.dbus_glib ];
+    buildInputs = with self; [ python pkgs.pkgconfig pkgs.libnotify pygobject pygtk pkgs.glib pkgs.gtk pkgs.dbus_glib ];
 
     postInstall = "cd $out/lib/python*/site-packages && ln -s gtk-*/pynotify .";
 
@@ -5445,7 +5489,7 @@ let
 
     sourceRoot = "${pkgs.notmuch.name}/bindings/python";
 
-    buildInputs = [ python pkgs.notmuch ];
+    buildInputs = with self; [ python pkgs.notmuch ];
 
     meta = {
       description = "A Python wrapper around notmuch";
@@ -5458,13 +5502,13 @@ let
     version = "2.4";
     name = "numexpr-${version}";
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = https://github.com/pydata/numexpr.git;
       rev = "606cc9a110711e947d35ac2770749c00dab184c8";
       sha256 = "1gxgkg7ncgjhnifn444iha5nrjhyr8sr6w5yp204186a1ysz858g";
     };
 
-    propagatedBuildInputs = with pkgs; [ numpy ];
+    propagatedBuildInputs = with self; [ numpy ];
 
     # Run the test suite.
     # It requires the build path to be in the python search path.
@@ -5495,7 +5539,7 @@ let
   numpy = buildPythonPackage ( rec {
     name = "numpy-1.8.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "mirror://sourceforge/numpy/${name}.tar.gz";
       sha256 = "1gcxlk3mf43pzpxvbw8kcfg173g4105j9szsfc1kxwablail6myf";
     };
@@ -5516,8 +5560,8 @@ let
     # error: invalid command 'test'
     doCheck = false;
 
-    buildInputs = [ pkgs.gfortran ];
-    propagatedBuildInputs = [ pkgs.liblapack pkgs.blas ];
+    buildInputs = with self; [ pkgs.gfortran ];
+    propagatedBuildInputs = with self; [ pkgs.liblapack pkgs.blas ];
 
     meta = {
       description = "Scientific tools for Python";
@@ -5529,14 +5573,14 @@ let
   nwdiag = buildPythonPackage rec {
     name = "nwdiag-1.0.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/n/nwdiag/${name}.tar.gz";
       md5 = "d81581a028840f8f7362ab21bf73e941";
     };
 
-    buildInputs = [ pep8 nose unittest2 docutils ];
+    buildInputs = with self; [ pep8 nose unittest2 docutils ];
 
-    propagatedBuildInputs = [ blockdiag ];
+    propagatedBuildInputs = with self; [ blockdiag ];
 
     # tests fail
     doCheck = false;
@@ -5555,13 +5599,13 @@ let
     name = "livestreamer-${version}";
     disabled = isPyPy;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/chrippa/livestreamer/archive/v${version}.tar.gz";
       sha256 = "0f1m51wax4q17ida4h0ckyakmlchf36kbhfa9qs6bpxc6xqqbry0";
     };
 
-    buildInputs = [ pkgs.makeWrapper ];
-    propagatedBuildInputs = [ requests2 pkgs.rtmpdump pycrypto singledispatch futures ];
+    buildInputs = with self; [ pkgs.makeWrapper ];
+    propagatedBuildInputs = with self; [ requests2 pkgs.rtmpdump pycrypto singledispatch futures ];
     postInstall = ''
       wrapProgram $out/bin/livestreamer --prefix PATH : ${pkgs.rtmpdump}/bin
     '';
@@ -5580,14 +5624,14 @@ let
     name = "oauth2-1.5.211";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/o/oauth2/oauth2-1.5.211.tar.gz";
       sha256 = "82a38f674da1fa496c0fc4df714cbb058540bed72a30c50a2e344b0d984c4d21";
     };
 
-    propagatedBuildInputs = [ httplib2 ];
+    propagatedBuildInputs = with self; [ httplib2 ];
 
-    buildInputs = [ mock coverage ];
+    buildInputs = with self; [ mock coverage ];
 
     # ServerNotFoundError: Unable to find the server at oauth-sandbox.sevengoslings.net
     doCheck = false;
@@ -5605,14 +5649,14 @@ let
   oauthlib = buildPythonPackage rec {
     name = "oauthlib-0.5.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/o/oauthlib/${name}.tar.gz";
       md5 = "d12c507de33403ebdf290fbffdb98213";
     };
 
-    buildInputs = [ mock nose unittest2 ];
+    buildInputs = with self; [ mock nose unittest2 ];
 
-    propagatedBuildInputs = [ pycrypto ];
+    propagatedBuildInputs = with self; [ pycrypto ];
 
     meta = {
       homepage = https://github.com/idan/oauthlib;
@@ -5623,13 +5667,13 @@ let
 
   obfsproxy = buildPythonPackage ( rec {
     name = "obfsproxy-0.2.2";
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = https://git.torproject.org/pluggable-transports/obfsproxy.git;
       rev = "3c4e843a30c430aec1de03e0e09ef654072efc03";
       sha256 = "8fd1e63a37bc42add7609d97d50ecd81da81881bcf7015a9e2958531dbf39018";
     };
 
-    propagatedBuildInputs = [ pyptlib argparse twisted pycrypto ];
+    propagatedBuildInputs = with self; [ pyptlib argparse twisted pycrypto ];
 
     meta = {
       description = "a pluggable transport proxy";
@@ -5641,7 +5685,7 @@ let
     name = "offtrac-0.1.0";
     meta.maintainers = [ stdenv.lib.maintainers.mornfall ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/o/offtrac/${name}.tar.gz";
       sha256 = "06vd010pa1z7lyfj1na30iqzffr4kzj2k2sba09spik7drlvvl56";
     };
@@ -5672,7 +5716,7 @@ let
 
   ordereddict = if isPy26 then (buildPythonPackage {
     name = "ordereddict-1.1";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/o/ordereddict/ordereddict-1.1.tar.gz";
       md5 = "a0ed854ee442051b249bfad0f638bbec";
     };
@@ -5682,7 +5726,7 @@ let
   ply = buildPythonPackage (rec {
     name = "ply-3.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://www.dabeaz.com/ply/${name}.tar.gz";
       sha256 = "0sslnbpws847r1j1f41fjpn76w0asywfqgxwzyjrvmmxnw8myhxg";
     };
@@ -5716,7 +5760,7 @@ let
     name = "osc-0.133+git";
     disabled = isPy3k;
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = git://gitorious.org/opensuse/osc.git;
       rev = "6cd541967ee2fca0b89e81470f18b97a3ffc23ce";
       sha256 = "a39ce0e321e40e9758bf7b9128d316c71b35b80eabc84f13df492083bb6f1cc6";
@@ -5726,20 +5770,20 @@ let
     doCheck = false;
     postInstall = "ln -s $out/bin/osc-wrapper.py $out/bin/osc";
 
-    propagatedBuildInputs = [ pythonPackages.m2crypto ];
+    propagatedBuildInputs = with self; [ self.m2crypto ];
 
   });
 
   pandas = buildPythonPackage rec {
     name = "pandas-0.14.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pandas/${name}.tar.gz";
       sha256 = "f7997debca756c4dd5ccdf5a010dfe3d1c7dac98ee706b715d994cf7c9d35528";
     };
 
-    buildInputs = [ nose ];
-    propagatedBuildInputs = [ dateutil numpy pytz modules.sqlite3 ];
+    buildInputs = with self; [ nose ];
+    propagatedBuildInputs = with self; [ dateutil numpy pytz modules.sqlite3 ];
 
     # Tests require networking to pass
     doCheck = false;
@@ -5754,19 +5798,19 @@ let
   };
 
   paramiko = buildPythonPackage rec {
-    name = "paramiko-1.14.0";
+    name = "paramiko-1.15.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/paramiko/${name}.tar.gz";
-      md5 = "e26324fd398af68ad506fe98853835c3";
+      md5 = "48c274c3f9b1282932567b21f6acf3b5";
     };
 
-    propagatedBuildInputs = [ pycrypto ecdsa ];
-
-    # tests failures since 1.14.0 release..
-    doCheck = false;
+    propagatedBuildInputs = with self; [ pycrypto ecdsa ];
 
-    checkPhase = "${python}/bin/${python.executable} test.py";
+    doCheck = !isPyPy;
+    checkPhase = ''
+      ${python}/bin/${python.executable} test.py --no-sftp --no-big-file
+    '';
 
     meta = {
       homepage = "https://github.com/paramiko/paramiko/";
@@ -5788,12 +5832,12 @@ let
     name = "paste-1.7.5.1";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = http://pypi.python.org/packages/source/P/Paste/Paste-1.7.5.1.tar.gz;
       md5 = "7ea5fabed7dca48eb46dc613c4b6c4ed";
     };
 
-    buildInputs = [ nose ];
+    buildInputs = with self; [ nose ];
 
     doCheck = false; # some files required by the test seem to be missing
 
@@ -5808,12 +5852,12 @@ let
     version = "1.5.2";
     name = "paste-deploy-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/P/PasteDeploy/PasteDeploy-${version}.tar.gz";
       md5 = "352b7205c78c8de4987578d19431af3b";
     };
 
-    buildInputs = [ nose ];
+    buildInputs = with self; [ nose ];
 
     meta = {
       description = "Load, configure, and compose WSGI applications and servers";
@@ -5825,7 +5869,7 @@ let
   pathpy = buildPythonPackage rec {
     name = "path.py-5.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/path.py/${name}.zip";
       sha256 = "0n1kpbbm1dg5f484yzxr7gb3ak6vjp92j70nw3bgjzsj9fh26afq";
     };
@@ -5841,12 +5885,12 @@ let
   paypalrestsdk = buildPythonPackage rec {
     name = "paypalrestsdk-0.7.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/paypalrestsdk/${name}.tar.gz";
       sha256 = "117kfipzfahf9ysv414bh1mmm5cc9ck5zb6rhpslx1f8gk3frvd6";
     };
 
-    propagatedBuildInputs = [ httplib2 ];
+    propagatedBuildInputs = with self; [ httplib2 ];
 
     meta = {
       homepage = https://developer.paypal.com/;
@@ -5858,7 +5902,7 @@ let
   pbr = buildPythonPackage rec {
     name = "pbr-0.9.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pbr/${name}.tar.gz";
       sha256 = "e5a57c434b1faa509a00bf458d2c7af965199d9cced3d05a547bff9880f7e8cb";
     };
@@ -5868,7 +5912,7 @@ let
 
     doCheck = false;
 
-    buildInputs = [ pip ];
+    buildInputs = with self; [ pip ];
 
     meta = {
       description = "Python Build Reasonableness";
@@ -5881,7 +5925,7 @@ let
     name = "pelican-${version}";
     version = "3.4.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pelican/${name}.tar.gz";
       md5 = "8e57bdd075503903125b14621b1e533d";
     };
@@ -5895,7 +5939,7 @@ let
     #buildInputs = [nose mock];
     doCheck = false;
 
-    propagatedBuildInputs = [jinja2 pygments docutils pytz unidecode six dateutil feedgenerator blinker pillow beautifulsoup4];
+    propagatedBuildInputs = with self; [jinja2 pygments docutils pytz unidecode six dateutil feedgenerator blinker pillow beautifulsoup4];
 
     meta = {
       homepage = http://getpelican.com/;
@@ -5909,7 +5953,7 @@ let
     name = "pep8-${version}";
     version = "1.5.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pep8/${name}.tar.gz";
       md5 = "f6adbdd69365ecca20513c709f9b7c93";
     };
@@ -5926,7 +5970,7 @@ let
   pexpect = buildPythonPackage {
     name = "pexpect-2.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "mirror://sourceforge/pexpect/pexpect-2.3.tar.gz";
       sha256 = "0x8bfjjqygriry1iyygm5048ykl5qpbpzqfp6i8dhkslm3ryf5fk";
     };
@@ -5961,12 +6005,12 @@ let
   pg8000 = buildPythonPackage rec {
     name = "pg8000-1.9.14";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pg8000/${name}.tar.gz";
       sha256 = "1vandvfaf1m3a1fbc7nbm6syfqr9bazhzsnmai0jpjkbmb349izs";
     };
 
-    propagatedBuildInputs = [ pytz ];
+    propagatedBuildInputs = with self; [ pytz ];
 
     meta = {
       maintainers = [
@@ -5980,36 +6024,36 @@ let
   pip = buildPythonPackage rec {
     version = "1.5.6";
     name = "pip-${version}";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pip/pip-${version}.tar.gz";
       md5 = "01026f87978932060cc86c1dc527903e";
     };
-    buildInputs = [ mock scripttest virtualenv pytest ];
+    buildInputs = with self; [ mock scripttest virtualenv pytest ];
   };
 
 
   pika = buildPythonPackage {
     name = "pika-0.9.12";
     disabled = isPy3k;
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://pypi.python.org/packages/source/p/pika/pika-0.9.12.tar.gz;
       md5 = "7174fc7cc5570314fa3cfaa729106482";
     };
-    buildInputs = [ nose mock pyyaml ];
+    buildInputs = with self; [ nose mock pyyaml ];
 
-    propagatedBuildInputs = [ unittest2 ];
+    propagatedBuildInputs = with self; [ unittest2 ];
   };
 
   pil = buildPythonPackage rec {
     name = "PIL-${version}";
     version = "1.1.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://effbot.org/downloads/Imaging-${version}.tar.gz";
       sha256 = "04aj80jhfbmxqzvmq40zfi4z3cw6vi01m3wkk6diz3lc971cfnw9";
     };
 
-    buildInputs = [ python pkgs.libjpeg pkgs.zlib pkgs.freetype ];
+    buildInputs = with self; [ python pkgs.libjpeg pkgs.zlib pkgs.freetype ];
 
     disabled = isPy3k;
     doCheck = true;
@@ -6043,12 +6087,12 @@ let
   pillow = buildPythonPackage rec {
     name = "Pillow-2.3.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/P/Pillow/${name}.zip";
       md5 = "56b6614499aacb7d6b5983c4914daea7";
     };
 
-    buildInputs = [ pkgs.freetype pkgs.libjpeg pkgs.zlib pkgs.libtiff pkgs.libwebp ];
+    buildInputs = with self; [ pkgs.freetype pkgs.libjpeg pkgs.zlib pkgs.libtiff pkgs.libwebp ];
 
     # NOTE: we use LCMS_ROOT as WEBP root since there is not other setting for webp.
     preConfigure = ''
@@ -6083,9 +6127,9 @@ let
   plumbum = buildPythonPackage rec {
     name = "plumbum-1.4.2";
 
-    buildInputs = [ pythonPackages.six ];
+    buildInputs = with self; [ self.six ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/plumbum/${name}.tar.gz";
       md5 = "38b526af9012a5282ae91dfe372cefd3";
     };
@@ -6096,7 +6140,7 @@ let
     name = "polib-${version}";
     version = "1.0.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://bitbucket.org/izi/polib/downloads/${name}.tar.gz";
       sha256 = "16klwlswfbgmkzrra80fgzhic9447pk3mnr75r2fkz72bkvpcclb";
     };
@@ -6116,13 +6160,13 @@ let
     rev  = "db80fc95ed01d2c559c4bdc7da8514ed3cc7fcd9";
     name = "powerline-beta_${rev}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://github.com/Lokaltog/powerline/tarball/${rev}";
       name   = "${name}.tar.bz";
       sha256 = "1csd4vasy0avwfxrpdr61plj6k1nzf36f6qvd9kl15s3lnspsfaz";
     };
 
-    propagatedBuildInputs = [ pkgs.git pkgs.mercurial pkgs.bazaar pythonPackages.psutil pythonPackages.pygit2 ];
+    propagatedBuildInputs = with self; [ pkgs.git pkgs.mercurial pkgs.bazaar self.psutil self.pygit2 ];
 
     # error: This is still beta and some tests still fail
     doCheck = false;
@@ -6156,7 +6200,7 @@ let
   prettytable = buildPythonPackage rec {
     name = "prettytable-0.7.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/P/PrettyTable/${name}.tar.bz2";
       sha1 = "ad346a18d92c1d95f2295397c7a8a4f489e48851";
     };
@@ -6176,7 +6220,7 @@ let
   protobuf = buildPythonPackage rec {
     inherit (pkgs.protobuf) name src;
 
-    propagatedBuildInputs = [ pkgs.protobuf google_apputils  ];
+    propagatedBuildInputs = with self; [ pkgs.protobuf google_apputils  ];
     sourceRoot = "${name}/python";
 
 
@@ -6191,7 +6235,7 @@ let
     name = "psutil-${version}";
     version = "2.1.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/psutil/${name}.tar.gz";
       sha256 = "14smqj57yjrm6hjz5n2annkgv0kmxckdhqvfx784f4d4lr52m0dz";
     };
@@ -6213,12 +6257,12 @@ let
     # error: invalid command 'test'
     doCheck = false;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/psycopg2/${name}.tar.gz";
       sha256 = "02h33barxigsczpympnwa0yvw9hgdv8d63bxm5x251ri26xz6b9s";
     };
 
-    propagatedBuildInputs = [ pkgs.postgresql ];
+    propagatedBuildInputs = with self; [ pkgs.postgresql ];
 
     meta = {
       description = "PostgreSQL database adapter for the Python programming language";
@@ -6231,7 +6275,7 @@ let
     name = "publicsuffix-${version}";
     version = "1.0.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/publicsuffix/${name}.tar.gz";
       md5 = "f86babf56f6e58b564d3853adebcf37a";
     };
@@ -6247,7 +6291,7 @@ let
   py = buildPythonPackage rec {
     name = "py-1.4.24";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/py/${name}.tar.gz";
       md5 = "8f32ee0cd1e01472a255fe1d28d81217";
     };
@@ -6257,7 +6301,7 @@ let
   pyasn1 = buildPythonPackage ({
     name = "pyasn1-0.1.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "mirror://sourceforge/pyasn1/0.1.7/pyasn1-0.1.7.tar.gz";
       sha256 = "1aqy21fb564gmnkw2fbkn55c40diyx3z0ixh4savvxikqm9ivy74";
     };
@@ -6275,12 +6319,12 @@ let
     name = "python-pyaudio-${version}";
     version = "0.2.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://people.csail.mit.edu/hubert/pyaudio/packages/pyaudio-${version}.tar.gz";
       md5 = "623809778f3d70254a25492bae63b575";
     };
 
-    buildInputs = [ python pkgs.portaudio ];
+    buildInputs = with self; [ python pkgs.portaudio ];
 
     buildPhase = if stdenv.isDarwin then ''
       PORTAUDIO_PATH="${pkgs.portaudio}" ${python}/bin/${python.executable} setup.py build --static-link
@@ -6301,7 +6345,7 @@ let
   pygit2 = buildPythonPackage rec {
     name = "pygit2-0.21.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pygit2/${name}.tar.gz";
       sha256 = "0lya4v91d4y5fwrb55n8m8avgmz0l81jml2spvx6r7j1czcx3zic";
     };
@@ -6310,7 +6354,7 @@ let
       export DYLD_LIBRARY_PATH="${pkgs.libgit2}/lib"
     '' else "" );
 
-    propagatedBuildInputs = [ pkgs.libgit2 ] ++ optionals (!isPyPy) [ cffi ];
+    propagatedBuildInputs = with self; [ pkgs.libgit2 ] ++ optionals (!isPyPy) [ cffi ];
 
     preCheck = ''
       # disable tests that require networking
@@ -6330,12 +6374,12 @@ let
   Babel = buildPythonPackage (rec {
     name = "Babel-1.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/B/Babel/${name}.tar.gz";
       sha256 = "0bnin777lc53nxd1hp3apq410jj5wx92n08h7h4izpl4f4sx00lz";
     };
 
-    propagatedBuildInputs = [ pytz ];
+    propagatedBuildInputs = with self; [ pytz ];
 
     meta = {
       homepage = http://babel.edgewall.org;
@@ -6351,7 +6395,7 @@ let
     name = "pyblock-${version}";
     version = "0.53";
 
-    src = fetchurl rec {
+    src = pkgs.fetchurl rec {
       url = "http://pkgs.fedoraproject.org/repo/pkgs/python-pyblock/"
           + "${name}.tar.bz2/${md5}/${name}.tar.bz2";
       md5 = "f6d33a8362dee358517d0a9e2ebdd044";
@@ -6362,7 +6406,7 @@ let
              -e 's/-Werror *//' -e 's|/usr/|'"$out"'/|' Makefile
     '';
 
-    buildInputs = [ python pkgs.lvm2 pkgs.dmraid ];
+    buildInputs = with self; [ python pkgs.lvm2 pkgs.dmraid ];
 
     makeFlags = [
       "USESELINUX=0"
@@ -6377,9 +6421,9 @@ let
 
   pycapnp = buildPythonPackage rec {
     name = "pycapnp-0.4.4";
-    homepage = "http://jparyani.github.io/pycapnp/index.html";
+    disabled = isPyPy || isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pycapnp/${name}.tar.gz";
       sha256 = "33b2b79438bb9bf37097966e1c90403c34ab49be1eb647ee251b62f362ee3537";
     };
@@ -6395,6 +6439,7 @@ let
       maintainers = with maintainers; [ cstrahan ];
       license = stdenv.lib.licenses.bsd2;
       platforms = stdenv.lib.platforms.all;
+      homepage = "http://jparyani.github.io/pycapnp/index.html";
     };
   };
 
@@ -6403,7 +6448,7 @@ let
     name = "pycryptopp-0.6.0.1206569328141510525648634803928199668821045408958";
     disabled = isPy3k || isPyPy;  # see https://bitbucket.org/pypy/pypy/issue/1190/
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pycryptopp/${name}.tar.gz";
       sha256 = "0n90h1yg7bfvlbhnc54xb6dbqm286ykaksyg04kxlhyjgf8mhq8i";
     };
@@ -6412,7 +6457,7 @@ let
     # in the pycryptopp distribution.
     preConfigure = "export PYCRYPTOPP_DISABLE_EMBEDDED_CRYPTOPP=1";
 
-    buildInputs = [ setuptoolsDarcs darcsver pkgs.cryptopp ];
+    buildInputs = with self; [ setuptoolsDarcs darcsver pkgs.cryptopp ];
 
     meta = {
       homepage = http://allmydata.org/trac/pycryptopp;
@@ -6431,12 +6476,12 @@ let
     name = "pycurl-7.19.5";
     disabled = isPyPy; # https://github.com/pycurl/pycurl/issues/208
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pycurl.sourceforge.net/download/${name}.tar.gz";
       sha256 = "0hqsap82zklhi5fxhc69kxrwzb0g9566f7sdpz7f9gyxkmyam839";
     };
 
-    propagatedBuildInputs = [ pkgs.curl pkgs.openssl ];
+    propagatedBuildInputs = with self; [ pkgs.curl pkgs.openssl ];
 
     # error: invalid command 'test'
     doCheck = false;
@@ -6458,7 +6503,7 @@ let
     name = "pycurl2-7.20.0";
     disabled = isPy3k;
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = "https://github.com/Lispython/pycurl.git";
       rev = "0f00109950b883d680bd85dc6e8a9c731a7d0d13";
       sha256 = "0mhg7f9y5zl0m2xgz3rf1yqjd6l8n0qhfk7bpf36r44jfnhj75ld";
@@ -6467,7 +6512,7 @@ let
     # error: (6, "Couldn't resolve host 'h.wrttn.me'")
     doCheck = false;
 
-    buildInputs = [ pkgs.curl simplejson unittest2 nose ];
+    buildInputs = with self; [ pkgs.curl simplejson unittest2 nose ];
 
     meta = {
       homepage = https://pypi.python.org/pypi/pycurl2;
@@ -6481,11 +6526,11 @@ let
     name = "pydot-1.0.2";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pydot/${name}.tar.gz";
       md5 = "cd739651ae5e1063a89f7efd5a9ec72b";
     };
-    propagatedBuildInputs = [pyparsing pkgs.graphviz];
+    propagatedBuildInputs = with self; [pyparsing pkgs.graphviz];
     meta = {
       homepage = http://code.google.com/p/pydot/;
       description = "pydot allows to easily create both directed and non directed graphs from Python.";
@@ -6495,11 +6540,11 @@ let
   pyfeed = buildPythonPackage rec {
     url = "http://www.blarg.net/%7Esteveha/pyfeed-0.7.4.tar.gz";
     name = stdenv.lib.nameFromURL url ".tar";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       inherit url;
       sha256 = "1h4msq573m7wm46h3cqlx4rsn99f0l11rhdqgf50lv17j8a8vvy1";
     };
-    propagatedBuildInputs = [xe];
+    propagatedBuildInputs = with self; [xe];
 
     # error: invalid command 'test'
     doCheck = false;
@@ -6512,11 +6557,11 @@ let
 
   pyfiglet = buildPythonPackage rec {
     name = "pyfiglet-${version}";
-    version = "0.7.1";
+    version = "0.7.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://pypi.python.org/packages/source/p/pyfiglet/${name}.tar.gz";
-      sha256 = "14lgwg47gnnad7sfkmmwhknwysbfmr74c9b2a6d9wgjmydycc6ka";
+      sha256 = "0v8a18wvaqnb1jksyv5dc5n6zj0vrkyhz0ivmm8gfwpa0ky6n68y";
     };
 
     doCheck = false;
@@ -6531,12 +6576,12 @@ let
   pyflakes = buildPythonPackage rec {
     name = "pyflakes-0.8.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyflakes/${name}.tar.gz";
       md5 = "905fe91ad14b912807e8fdc2ac2e2c23";
     };
 
-    buildInputs = [ unittest2 ];
+    buildInputs = with self; [ unittest2 ];
 
     doCheck = !isPyPy;
 
@@ -6551,7 +6596,7 @@ let
   pyglet = buildPythonPackage rec {
     name = "pyglet-1.1.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pyglet.googlecode.com/files/${name}.tar.gz";
       sha256 = "048n20d606i3njnzhajadnznnfm8pwchs43hxs50da9p79g2m6qx";
     };
@@ -6574,7 +6619,7 @@ let
   pygments = buildPythonPackage rec {
     name = "Pygments-1.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/P/Pygments/${name}.tar.gz";
       md5 = "a18feedf6ffd0b0cc8c8b0fbdb2027b1";
     };
@@ -6591,7 +6636,7 @@ let
     name = "pygpgme-${version}";
     disabled = isPyPy;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://launchpad.net/pygpgme/trunk/${version}/+download/${name}.tar.gz";
       sha256 = "5fd887c407015296a8fd3f4b867fe0fcca3179de97ccde90449853a3dfb802e1";
     };
@@ -6599,7 +6644,7 @@ let
     # error: invalid command 'test'
     doCheck = false;
 
-    propagatedBuildInputs = [ pkgs.gpgme ];
+    propagatedBuildInputs = with self; [ pkgs.gpgme ];
 
     meta = {
       homepage = "https://launchpad.net/pygpgme";
@@ -6614,13 +6659,13 @@ let
     name = "python-pyinotify-${version}";
     version = "0.9.3";
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = "git://github.com/seb-m/pyinotify.git";
       rev = "refs/tags/${version}";
       sha256 = "d38ce95e4af00391e58246a8d7fe42bdb51d63054b09809600b2faef2a803472";
     };
 
-    buildInputs = [ python ];
+    buildInputs = with self; [ python ];
 
     installPhase = ''
       ${python}/bin/${python.executable} setup.py install --prefix=$out
@@ -6638,7 +6683,7 @@ let
     name = "pykickstart-${version}";
     version = "1.99.39";
 
-    src = fetchurl rec {
+    src = pkgs.fetchurl rec {
       url = "http://pkgs.fedoraproject.org/repo/pkgs/pykickstart/"
           + "${name}.tar.gz/${md5}/${name}.tar.gz";
       md5 = "d249f60aa89b1b4facd63f776925116d";
@@ -6649,7 +6694,7 @@ let
                  key=lambda m: m.__name__)/" tests/baseclass.py
     '';
 
-    propagatedBuildInputs = [ urlgrabber ];
+    propagatedBuildInputs = with self; [ urlgrabber ];
 
     checkPhase = ''
       export PYTHONPATH="$PYTHONPATH:."
@@ -6668,12 +6713,12 @@ let
     name = "pyodbc-3.0.7";
     disabled = isPyPy;  # use pypypdbc instead
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pyodbc.googlecode.com/files/${name}.zip";
       sha256 = "0ldkm8xws91j7zbvpqb413hvdz8r66bslr451q3qc0xi8cnmydfq";
     };
 
-    buildInputs = [ pkgs.libiodbc ];
+    buildInputs = with self; [ pkgs.libiodbc ];
 
     meta = with stdenv.lib; {
       description = "Python ODBC module to connect to almost any database";
@@ -6688,7 +6733,7 @@ let
   pyparsing = buildPythonPackage rec {
     name = "pyparsing-2.0.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyparsing/${name}.tar.gz";
       sha256 = "1r742rjbagf2i166k2w0r192adfw7l9lnsqz7wh4mflf00zws1q0";
     };
@@ -6708,7 +6753,7 @@ let
     version = "3.10";
     disabled = isPyPy;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://fedorahosted.org/releases/p/y/pyparted/${name}.tar.gz";
       sha256 = "17wq4invmv1nfazaksf59ymqyvgv3i8h4q03ry2az0s9lldyg3dv";
     };
@@ -6728,9 +6773,9 @@ let
       PATH="${pkgs.parted}/sbin:$PATH"
     '';
 
-    buildInputs = [ pkgs.pkgconfig ];
+    buildInputs = with self; [ pkgs.pkgconfig ];
 
-    propagatedBuildInputs = [ pkgs.parted ];
+    propagatedBuildInputs = with self; [ pkgs.parted ];
 
     checkPhase = ''
       patchShebangs Makefile
@@ -6749,7 +6794,7 @@ let
   pyptlib = buildPythonPackage (rec {
     name = "pyptlib-${version}";
     version = "0.0.3";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pyptlib/pyptlib-${version}.tar.gz";
       sha256 = "0mklak456jqifx57j9jmpb69h3ybxc880qk86pg4g8jk0i14pxh3";
     };
@@ -6763,12 +6808,12 @@ let
     name = "pyqtgraph-${version}";
     version = "0.9.8";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pyqtgraph/${name}.tar.gz";
       sha256 = "1fnhj26d9qrqqmjx092m1qspclh3mia3vag7rji5wciw0plpszi5";
     };
 
-    propagatedBuildInputs = [ scipy numpy pyqt4 pyopengl ];
+    propagatedBuildInputs = with self; [ scipy numpy pyqt4 pyopengl ];
 
     meta = with stdenv.lib; {
       description = "Scientific Graphics and GUI Library for Python";
@@ -6783,7 +6828,7 @@ let
     name = "Pyro-3.16";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/P/Pyro/${name}.tar.gz";
       md5 = "59d4d3f4a8786776c9d7f9051b8f1a69";
     };
@@ -6800,7 +6845,7 @@ let
   pyrss2gen = buildPythonPackage (rec {
     name = "PyRSS2Gen-1.0.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/P/PyRSS2Gen/${name}.tar.gz";
       md5 = "eae2bc6412c5679c287ecc1a59588f75";
     };
@@ -6817,12 +6862,12 @@ let
     version = "4.2.5";
     name = "pysnmp-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pysnmp/${name}.tar.gz";
       sha256 = "0zq7yx8732ad9dxpxqgpqyixj7kfwbvf402q7l5njkv0kbcnavn4";
     };
 
-    propagatedBuildInputs = [ pyasn1 pycrypto ];
+    propagatedBuildInputs = with self; [ pyasn1 pycrypto ];
 
     meta = with stdenv.lib; {
       homepage = http://pysnmp.sf.net;
@@ -6833,22 +6878,40 @@ let
     };
   };
 
+  pysocks = buildPythonPackage rec {
+    name = "pysocks-${version}";
+    version = "1.5.0";
+
+    src = pkgs.fetchurl {
+      url    = "https://pypi.python.org/packages/source/P/PySocks/PySocks-${version}.tar.gz";
+      sha256 = "10wq5311qrnk8rvzsh6gwzxi7h51pgvzw3d7s1mb39fsvf0vyjdk";
+    };
+
+    doCheck = false;
+
+    meta = {
+      description = "SOCKS module for Python";
+      license     = licenses.bsd3;
+      maintainers = [ maintainers.thoughtpolice ];
+    };
+  };
+
   python_fedora = buildPythonPackage (rec {
     name = "python-fedora-0.3.33";
     meta.maintainers = [ stdenv.lib.maintainers.mornfall ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://fedorahosted.org/releases/p/y/python-fedora/${name}.tar.gz";
       sha256 = "1g05bh7d5d0gzrlnhpnca7jpqbgs2rgnlzzbvzzxmdbmlkqi3mws";
     };
-    propagatedBuildInputs = [ kitchen requests bunch paver ];
+    propagatedBuildInputs = with self; [ kitchen requests bunch paver ];
     doCheck = false;
   });
 
   python_keyczar = buildPythonPackage rec {
     name = "python-keyczar-0.71c";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://pypi.python.org/packages/source/p/python-keyczar/${name}.tar.gz";
       sha256 = "18mhiwqq6vp65ykmi8x3i5l3gvrvrrr8z2kv11z1rpixmyr7sw1p";
     };
@@ -6861,14 +6924,14 @@ let
       platforms   = platforms.unix;
     };
 
-    buildInputs = [ pyasn1 pycrypto ];
+    buildInputs = with self; [ pyasn1 pycrypto ];
   };
 
   pyudev = buildPythonPackage rec {
     name = "pyudev-${version}";
     version = "0.16.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pyudev/${name}.tar.gz";
       md5 = "4034de584b6d9efcbfc590a047c63285";
     };
@@ -6879,7 +6942,7 @@ let
       }' pyudev/_libudev.py
     '';
 
-    propagatedBuildInputs = [ pkgs.udev ];
+    propagatedBuildInputs = with self; [ pkgs.udev ];
 
     meta = {
       homepage = "http://pyudev.readthedocs.org/";
@@ -6893,7 +6956,7 @@ let
   pynzb = buildPythonPackage (rec {
     name = "pynzb-0.1.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pynzb/${name}.tar.gz";
       md5 = "63c74a36348ac28aa99732dcb8be8c59";
     };
@@ -6909,7 +6972,7 @@ let
   progressbar = buildPythonPackage (rec {
     name = "progressbar-2.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/progressbar/${name}.tar.gz";
       md5 = "8ea4e2c17a8ec9e7d153767c5f2a7b28";
     };
@@ -6929,20 +6992,20 @@ let
     name = "ldap-2.4.15";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/python-ldap/python-${name}.tar.gz";
       sha256 = "0w0nn5yj0nbbkvpbqgfni56v7sjx6jf6s6zvp9zmahyrvqrsrg1h";
     };
 
     NIX_CFLAGS_COMPILE = "-I${pkgs.cyrus_sasl}/include/sasl";
-    propagatedBuildInputs = [pkgs.openldap pkgs.cyrus_sasl pkgs.openssl];
+    propagatedBuildInputs = with self; [pkgs.openldap pkgs.cyrus_sasl pkgs.openssl];
   };
 
 
   pylibacl = buildPythonPackage (rec {
     name = "pylibacl-0.5.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/downloads/iustin/pylibacl/${name}.tar.gz";
       sha256 = "1idks7j9bn62xzsaxkvhl7bdq6ws8kv8aa0wahfh7724qlbbcf1k";
     };
@@ -6951,7 +7014,7 @@ let
     # IOError: [Errno 0] Error
     doCheck = false;
 
-    buildInputs = [ pkgs.acl ];
+    buildInputs = with self; [ pkgs.acl ];
 
     meta = {
       description = "A Python extension module for POSIX ACLs. It can be used to query, list, add, and remove ACLs from files and directories under operating systems that support them.";
@@ -6964,13 +7027,13 @@ let
     version = "0.25";
     name = "Pymacs-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/pinard/Pymacs/tarball/v${version}";
       name = "${name}.tar.gz";
       sha256 = "1hmy76c5igm95rqbld7gvk0az24smvc8hplfwx2f5rhn6frj3p2i";
     };
 
-    buildInputs = [ python ];
+    buildInputs = with self; [ python ];
 
     patchPhase = ''
       sed -e "s@ install@ install --prefix=$out@g" -i Makefile
@@ -6990,7 +7053,7 @@ let
       buildPythonPackage {
         name = "pyopengl-${version}";
 
-        src = fetchurl {
+        src = pkgs.fetchurl {
           url = "http://pypi.python.org/packages/source/P/PyOpenGL/PyOpenGL-${version}.tar.gz";
           sha256 = "9ef93bbea2c193898341f574e281c3ca0dfe87c53aa25fbec4b03581f6d1ba03";
         };
@@ -7024,18 +7087,18 @@ let
   pyquery = buildPythonPackage rec {
     name = "pyquery-1.2.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyquery/${name}.tar.gz";
       md5 = "268f08258738d21bc1920d7522f2a63b";
     };
 
-    propagatedBuildInputs = [ cssselect lxml ];
+    propagatedBuildInputs = with self; [ cssselect lxml ];
   };
 
   pyrax = buildPythonPackage rec {
     name = "pyrax-1.8.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyrax/${name}.tar.gz";
       sha256 = "0hvim60bhgfj91m7pp8jfmb49f087xqlgkqa505zw28r7yl0hcfp";
     };
@@ -7054,7 +7117,7 @@ let
     name = "pyreport-0.3.4c";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyreport/${name}.tar.gz";
       md5 = "3076164a7079891d149a23f9435581db";
     };
@@ -7073,7 +7136,7 @@ let
   pyserial = buildPythonPackage rec {
     name = "pyserial-2.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyserial/${name}.tar.gz";
       sha256 = "3542ec0838793e61d6224e27ff05e8ce4ba5a5c5cc4ec5c6a3e8d49247985477";
     };
@@ -7090,7 +7153,7 @@ let
   pysphere = buildPythonPackage rec {
     name = "pysphere-0.1.8";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pysphere.googlecode.com/files/${name}.zip";
       md5 = "c57cba33626ac4b1e3d1974923d59232";
     };
@@ -7106,7 +7169,7 @@ let
     name = "pysqlite-2.6.3";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pysqlite/${name}.tar.gz";
       sha256 = "13djzgnbi71znjjyaw4nybg6smilgszcid646j5qav7mdchkb77y";
     };
@@ -7114,7 +7177,7 @@ let
     # Since the `.egg' file is zipped, the `NEEDED' of the `.so' files
     # it contains is not taken into account.  Thus, we must explicitly make
     # it a propagated input.
-    propagatedBuildInputs = [ pkgs.sqlite ];
+    propagatedBuildInputs = with self; [ pkgs.sqlite ];
 
     patchPhase = ''
       substituteInPlace "setup.cfg"                                     \
@@ -7160,12 +7223,12 @@ let
   pysvn = pkgs.stdenv.mkDerivation {
     name = "pysvn-1.7.8";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pysvn.barrys-emacs.org/source_kits/pysvn-1.7.8.tar.gz";
       sha256 = "1qk7af0laby1f79bd07l9p0dxn5xmcmfwlcb9l1hk29zwwq6x4v0";
     };
 
-    buildInputs = [ python pkgs.subversion pkgs.apr pkgs.aprutil pkgs.expat pkgs.neon pkgs.openssl ]
+    buildInputs = with self; [ python pkgs.subversion pkgs.apr pkgs.aprutil pkgs.expat pkgs.neon pkgs.openssl ]
       ++ (if stdenv.isLinux then [pkgs.e2fsprogs] else []);
 
     # There seems to be no way to pass that path to configure.
@@ -7205,7 +7268,7 @@ let
   pytz = buildPythonPackage rec {
     name = "pytz-2013.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pytz/${name}.tar.bz2";
       md5 = "ec7076947a46a8a3cb33cbf2983a562c";
     };
@@ -7220,13 +7283,13 @@ let
   pyutil = buildPythonPackage (rec {
     name = "pyutil-1.7.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyutil/${name}.tar.gz";
       sha256 = "c303bb779f96073820e2eb7c9692fe15a57df491eb356839f3cb3377ed03b844";
     };
 
-    buildInputs = [ setuptoolsDarcs setuptoolsTrial ] ++ (if doCheck then [ simplejson ] else []);
-    propagatedBuildInputs = [ zbase32 argparse twisted ];
+    buildInputs = with self; [ setuptoolsDarcs setuptoolsTrial ] ++ (if doCheck then [ simplejson ] else []);
+    propagatedBuildInputs = with self; [ zbase32 argparse twisted ];
     # Tests fail because they try to write new code into the twisted
     # package, apparently some kind of plugin.
     doCheck = false;
@@ -7255,7 +7318,7 @@ let
     name = "pywebkitgtk-${version}";
     version = "1.1.8";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pywebkitgtk.googlecode.com/files/${name}.tar.bz2";
       sha256 = "1svlwyl61rvbqbcbalkg6pbf38yjyv7qkq9sx4x35yk69lscaac2";
     };
@@ -7275,7 +7338,7 @@ let
   pyxattr = buildPythonPackage (rec {
     name = "pyxattr-0.5.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/downloads/iustin/pyxattr/${name}.tar.gz";
       sha256 = "0jmkffik6hdzs7ng8c65bggss2ai40nm59jykswdf5lpd36cxddq";
     };
@@ -7283,7 +7346,7 @@ let
     # error: invalid command 'test'
     doCheck = false;
 
-    buildInputs = [ pkgs.attr ];
+    buildInputs = with self; [ pkgs.attr ];
 
     meta = {
       description = "A Python extension module which gives access to the extended attributes for filesystem objects available in some operating systems.";
@@ -7295,13 +7358,13 @@ let
   pyyaml = buildPythonPackage (rec {
     name = "PyYAML-3.10";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pyyaml.org/download/pyyaml/${name}.zip";
       sha256 = "1r127fa354ppb667f4acxlzwxixap1jgzjrr790bw8mcpxv2hqaa";
     };
 
-    buildInputs = [ pkgs.pyrex ];
-    propagatedBuildInputs = [ pkgs.libyaml ];
+    buildInputs = with self; [ pkgs.pyrex ];
+    propagatedBuildInputs = with self; [ pkgs.libyaml ];
 
     meta = {
       description = "The next generation YAML parser and emitter for Python";
@@ -7314,7 +7377,7 @@ let
   recaptcha_client = buildPythonPackage rec {
     name = "recaptcha-client-1.0.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/r/recaptcha-client/${name}.tar.gz";
       md5 = "74228180f7e1fb76c4d7089160b0d919";
     };
@@ -7331,12 +7394,12 @@ let
    in buildPythonPackage rec {
     name = "reportlab-3.1.8";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/r/reportlab/${name}.tar.gz";
       md5 = "820a9fda647078503597b85cdba7ed7f";
     };
 
-    buildInputs = [freetype];
+    buildInputs = with self; [freetype];
 
     # error: invalid command 'test'
     doCheck = false;
@@ -7351,7 +7414,7 @@ let
   requests = buildPythonPackage rec {
     name = "requests-1.2.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/r/requests/${name}.tar.gz";
       md5 = "adbd3f18445f7fe5e77f65c502e264fb";
     };
@@ -7366,7 +7429,7 @@ let
   requests2 = buildPythonPackage rec {
     name = "requests-2.2.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/r/requests/${name}.tar.gz";
       md5 = "ac27081135f58d1a43e4fb38258d6f4e";
     };
@@ -7381,12 +7444,12 @@ let
   requests_oauthlib = buildPythonPackage rec {
     name = "requests-oauthlib-0.3.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/r/requests-oauthlib/${name}.tar.gz";
       md5 = "35b3b750493c231145c39db0216813e7";
     };
 
-    propagatedBuildInputs = [ oauthlib requests ];
+    propagatedBuildInputs = with self; [ oauthlib requests ];
 
     meta = {
       description = "OAuthlib authentication support for Requests";
@@ -7398,7 +7461,7 @@ let
   quantities = buildPythonPackage rec {
     name = "quantities-0.10.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/q/quantities/quantities-0.10.1.tar.gz";
       md5 = "e924e21c0a5ddc9ebcdacbbe511b8ec7";
     };
@@ -7413,15 +7476,15 @@ let
   qutip = buildPythonPackage rec {
     name = "qutip-2.2.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://qutip.googlecode.com/files/QuTiP-2.2.0.tar.gz";
       sha1 = "76ba4991322a991d580e78a197adc80d58bd5fb3";
     };
 
-    propagatedBuildInputs = [ numpy scipy matplotlib pkgs.pyqt4
+    propagatedBuildInputs = with self; [ numpy scipy matplotlib pkgs.pyqt4
       cython ];
 
-    buildInputs = with pkgs; [ gcc qt4 blas ] ++ [ nose ];
+    buildInputs = with pkgs; [ gcc qt4 blas self.nose ];
 
     meta = {
       description = "QuTiP - Quantum Toolbox in Python";
@@ -7444,7 +7507,7 @@ let
   redis = buildPythonPackage rec {
     name = "redis-2.9.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/r/redis/${name}.tar.gz";
       sha256 = "1r7lrh4kxccyhr4pyp13ilymmvh22pi7aa9514dmnhi74zn4g5xg";
     };
@@ -7461,12 +7524,12 @@ let
   requests_oauth2 = buildPythonPackage rec {
     name = "requests-oauth2-0.1.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://github.com/maraujop/requests-oauth2/archive/0.1.1.tar.gz;
       sha256 = "1aij66qg9j5j4vzyh64nbg72y7pcafgjddxsi865racsay43xfqg";
     };
 
-    propagatedBuildInputs = [ requests_oauthlib ];
+    propagatedBuildInputs = with self; [ requests_oauthlib ];
 
     meta = {
       description = "Python's Requests OAuth2 (Open Authentication) plugin";
@@ -7479,12 +7542,12 @@ let
     name = "restview-${version}";
     version = "2.1.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/r/restview/${name}.tar.gz";
       sha256 = "07scf80hhr9rijrbfrplyi3gwkx74knnzfhvlg6yf1cd0x2yiy8v";
     };
 
-    propagatedBuildInputs = [ docutils mock pygments ];
+    propagatedBuildInputs = with self; [ docutils mock pygments ];
 
     meta = with stdenv.lib; {
       description = "ReStructuredText viewer";
@@ -7499,12 +7562,12 @@ let
   reviewboard = buildPythonPackage rec {
     name = "ReviewBoard-1.6.16";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://downloads.reviewboard.org/releases/ReviewBoard/1.6/${name}.tar.gz";
       sha256 = "0vg3ypm57m43bscv8vswjdllv3d2j8lxqwwvpd65cl7jd1in0yr1";
     };
 
-    propagatedBuildInputs =
+    propagatedBuildInputs = with self;
       [ django_1_3 recaptcha_client pytz memcached dateutil_1_5 paramiko flup pygments
         djblets django_evolution pycrypto modules.sqlite3
         pysvn pil psycopg2
@@ -7515,7 +7578,7 @@ let
   rdflib = buildPythonPackage (rec {
     name = "rdflib-4.1.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/r/rdflib/${name}.tar.gz";
       sha256 = "0kvaf332cqbi47rqzlpdx4mbkvw12mkrzkj8n9l19wk713d4py9w";
     };
@@ -7523,7 +7586,7 @@ let
     # error: invalid command 'test'
     doCheck = false;
 
-    propagatedBuildInputs = [ isodate ];
+    propagatedBuildInputs = with self; [ isodate ];
 
     meta = {
       description = "RDFLib is a Python library for working with RDF, a simple yet powerful language for representing information.";
@@ -7534,7 +7597,7 @@ let
   isodate = buildPythonPackage rec {
     name = "isodate-0.5.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/i/isodate/${name}.tar.gz";
       md5 = "9a267e9327feb3d021cae26002ba6e0e";
     };
@@ -7551,7 +7614,7 @@ let
     name = "robotframework-${version}";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/r/robotframework/${name}.tar.gz";
       sha256 = "0rzdn2gvmcrxs2fvxm11h55w4j5pv0lf443fc4hl8kzwjwgjckga";
     };
@@ -7573,7 +7636,7 @@ let
     version = "1.5.0";
     name = "robotframework-selenium2library-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/r/robotframework-selenium2library/${name}.tar.gz";
       sha256 = "0hjmar9766jqfpbckac8zncyal546vm059wnkbn33f68djdcnwz1";
     };
@@ -7581,7 +7644,7 @@ let
     # error: invalid command 'test'
     #doCheck = false;
 
-    propagatedBuildInputs = [ robotframework selenium docutils decorator ];
+    propagatedBuildInputs = with self; [ robotframework selenium docutils decorator ];
 
     meta = with stdenv.lib; {
       description = "";
@@ -7595,12 +7658,12 @@ let
     version = "0.1a115";
     name = "robotframework-tools-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/r/robotframework-tools/${name}.tar.gz";
       sha256 = "04gkn1zpf3rsvbqdxrrjqqi8sa0md9gqwh6n5w2m03fdwjg4lc7q";
     };
 
-    propagatedBuildInputs = [ robotframework moretools pathpy six setuptools ];
+    propagatedBuildInputs = with self; [ robotframework moretools pathpy six setuptools ];
 
     meta = with stdenv.lib; {
       description = "Python Tools for Robot Framework and Test Libraries";
@@ -7615,7 +7678,7 @@ let
     version = "1.4.2";
     name = "robotsuite-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/r/robotsuite/${name}.zip";
       sha256 = "0sw09vrvwv3gzqb6jvhbrz09l6nzzj3i9av34qjddqfwq7cr1bla";
     };
@@ -7623,8 +7686,8 @@ let
     # error: invalid command 'test'
     #doCheck = false;
 
-    buildInputs = [ unittest2 ];
-    propagatedBuildInputs = [ robotframework lxml ];
+    buildInputs = with self; [ unittest2 ];
+    propagatedBuildInputs = with self; [ robotframework lxml ];
 
     meta = with stdenv.lib; {
       description = "Python unittest test suite for Robot Framework";
@@ -7639,12 +7702,12 @@ let
     name = "robotframework-ride-${version}";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://robotframework-ride.googlecode.com/files/${name}.tar.gz";
       sha256 = "1lf5f4x80f7d983bmkx12sxcizzii21kghs8kf63a1mj022a5x5j";
     };
 
-    propagatedBuildInputs = [ pygments wxPython modules.sqlite3 ];
+    propagatedBuildInputs = with self; [ pygments wxPython modules.sqlite3 ];
 
     # ride_postinstall.py checks that needed deps are installed and creates a
     # desktop shortcut. We don't really need it and it clutters up bin/ so
@@ -7672,7 +7735,7 @@ let
 
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/r/rope/${name}.tar.gz";
       sha256 = "0rdlvp8h74qs49wz1hx6qy8mgp2ddwlfs7z13h9139ynq04a3z7z";
     };
@@ -7689,12 +7752,12 @@ let
     version = "0.7";
     name = "ropemacs-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/r/ropemacs/${name}.tar.gz";
       sha256 = "1x5qf1drcdz9jfiiakc60kzqkb3ahsg9j902c5byf3gjfacdrmqj";
     };
 
-    propagatedBuildInputs = [ ropemode ];
+    propagatedBuildInputs = with self; [ ropemode ];
 
      meta = with stdenv.lib; {
        description = "a plugin for performing python refactorings in emacs";
@@ -7708,12 +7771,12 @@ let
     version = "0.2";
     name = "ropemode-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/r/ropemode/${name}.tar.gz";
       sha256 = "0jw6h1wvk6wk0wknqdf7s9pw76m8472jv546lqdd88jbl2scgcjl";
     };
 
-    propagatedBuildInputs = [ rope ];
+    propagatedBuildInputs = with self; [ rope ];
 
      meta = with stdenv.lib; {
        description = "a plugin for performing python refactorings in emacs";
@@ -7728,12 +7791,12 @@ let
   routes = buildPythonPackage rec {
     name = "routes-1.12.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = http://pypi.python.org/packages/source/R/Routes/Routes-1.12.3.tar.gz;
       md5 = "9740ff424ff6b841632c784a38fb2be3";
     };
 
-    propagatedBuildInputs = [ paste webtest ];
+    propagatedBuildInputs = with self; [ paste webtest ];
 
     meta = {
       description = "A Python re-implementation of the Rails routes system for mapping URLs to application actions";
@@ -7745,7 +7808,7 @@ let
     name = "rpkg-1.14";
     meta.maintainers = [ stdenv.lib.maintainers.mornfall ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://fedorahosted.org/releases/r/p/rpkg/rpkg-1.14.tar.gz";
       sha256 = "0d053hdjz87aym1sfm6c4cxmzmy5g0gkrmrczly86skj957r77a7";
     };
@@ -7754,7 +7817,7 @@ let
 
     # buildPhase = "python setup.py build";
     # doCheck = false;
-    propagatedBuildInputs = [ pycurl pkgs.koji GitPython pkgs.git
+    propagatedBuildInputs = with self; [ pycurl pkgs.koji GitPython pkgs.git
                               pkgs.rpm pkgs.pyopenssl ];
 
   });
@@ -7763,12 +7826,12 @@ let
     name = "rpyc-${version}";
     version = "3.3.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/r/rpyc/${name}.tar.gz";
       md5 = "6931cb92c41f547591b525142ccaeef1";
     };
 
-    propagatedBuildInputs = [ nose plumbum ];
+    propagatedBuildInputs = with self; [ nose plumbum ];
 
     meta = {
       description = "Remote Python Call (RPyC), a transparent and symmetric RPC library";
@@ -7780,12 +7843,12 @@ let
   rsa = buildPythonPackage rec {
     name = "rsa-3.1.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://bitbucket.org/sybren/python-rsa/get/version-3.1.2.tar.bz2";
       sha256 = "0ag2q4gaapi74x47q74xhcjzs4b7r2bb6zrj2an4sz5d3yd06cgf";
     };
 
-    buildInputs = [ pythonPackages.pyasn1 ];
+    buildInputs = with self; [ self.pyasn1 ];
 
     meta = {
       homepage = http://stuvel.eu/rsa;
@@ -7798,7 +7861,7 @@ let
     version = "2.1.fb43";
     name = "rtslib-fb-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/agrover/rtslib-fb/archive/v${version}.tar.gz";
       sha256 = "1b59vyy12g6rix9l2fxx0hjiq33shkb79v57gwffs57vh74wc53v";
     };
@@ -7813,14 +7876,14 @@ let
   seqdiag = buildPythonPackage rec {
     name = "seqdiag-0.9.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/s/seqdiag/${name}.tar.gz";
       md5 = "92946555ce219df18002e6c88b4055d3";
     };
 
-    buildInputs = [ pep8 nose unittest2 docutils ];
+    buildInputs = with self; [ pep8 nose unittest2 docutils ];
 
-    propagatedBuildInputs = [ blockdiag ];
+    propagatedBuildInputs = with self; [ blockdiag ];
 
     # Tests fail:
     #   ...
@@ -7840,13 +7903,13 @@ let
   scipy = buildPythonPackage rec {
     name = "scipy-0.14.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/scipy/${name}.tar.gz";
       md5 = "d7c7f4ccf8b07b08d6fe49d5cd51f85d";
     };
 
-    buildInputs = [pkgs.gfortran];
-    propagatedBuildInputs = [ numpy ];
+    buildInputs = with self; [pkgs.gfortran];
+    propagatedBuildInputs = with self; [ numpy ];
 
     # TODO: add ATLAS=${pkgs.atlas}
     preConfigure = ''
@@ -7870,12 +7933,12 @@ let
     version = "1.3";
     name = "scripttest-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/scripttest/scripttest-${version}.tar.gz";
       md5 = "1d1c5117ccfc7b5961cae6c1020c0848";
     };
 
-    buildInputs = [ nose pytest ];
+    buildInputs = with self; [ nose pytest ];
 
     meta = {
       description = "A library for testing interactive command-line applications";
@@ -7890,7 +7953,7 @@ let
       sha256 = "1kisndzl9s0vs0a5paqx35hxq28id3xyi1gfsjaixsi6rs0ibhhh";
     };
 
-    buildInputs = [pkgs.xlibs.libX11];
+    buildInputs = with self; [pkgs.xlibs.libX11];
 
     # Recompiling x_ignore_nofocus.so as the original one dlopen's libX11.so.6 by some
     # absolute paths. Replaced by relative path so it is found when used in nix.
@@ -7917,14 +7980,14 @@ let
   setuptoolsDarcs = buildPythonPackage {
     name = "setuptools-darcs-1.2.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/setuptools_darcs/setuptools_darcs-1.2.9.tar.gz";
       sha256 = "d37ce11030addbd729284c441facd0869cdc6e5c888dc5fa0a6f1edfe3c3e617";
     };
 
     # In order to break the dependency on darcs -> ghc, we don't add
     # darcs as a propagated build input.
-    propagatedBuildInputs = [ darcsver ];
+    propagatedBuildInputs = with self; [ darcsver ];
 
     meta = {
       description = "setuptools plugin for the Darcs version control system";
@@ -7939,12 +8002,12 @@ let
   setuptoolsTrial = buildPythonPackage {
     name = "setuptools-trial-0.5.12";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/setuptools_trial/setuptools_trial-0.5.12.tar.gz";
       md5 = "f16f4237c9ee483a0cd13208849d96ad";
     };
 
-    propagatedBuildInputs = [ twisted ];
+    propagatedBuildInputs = with self; [ twisted ];
 
     meta = {
       description = "setuptools plug-in that helps run unit tests built with the \"Trial\" framework (from Twisted)";
@@ -7959,7 +8022,7 @@ let
   simplejson = buildPythonPackage (rec {
     name = "simplejson-3.3.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/simplejson/${name}.tar.gz";
       md5 = "0e29b393bceac8081fa4e93ff9f6a001";
     };
@@ -7984,12 +8047,12 @@ let
   sigal = buildPythonPackage rec {
     name = "sigal-0.7.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/sigal/${name}.tar.gz";
       md5 = "d2386706ac8543378aebde1ea4edeba4";
     };
 
-    propagatedBuildInputs = [ jinja2 markdown pillow pilkit clint argh pytest ];
+    propagatedBuildInputs = with self; [ jinja2 markdown pillow pilkit clint argh pytest ];
 
     meta = with stdenv.lib; {
       description = "Yet another simple static gallery generator";
@@ -7999,10 +8062,10 @@ let
     };
   };
 
-  pgpdump = pythonPackages.buildPythonPackage rec {
+  pgpdump = self.buildPythonPackage rec {
     name = "pgpdump-1.5";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pgpdump/pgpdump-1.5.tar.gz";
       md5 = "040a451c8e63de3e61fc5b66efa7fca5";
     };
@@ -8017,12 +8080,12 @@ let
   spambayes = buildPythonPackage rec {
     name = "spambayes-1.1b1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "mirror://sourceforge/spambayes/${name}.tar.gz";
       sha256 = "0kqvjb89b02wp41p650ydfspi1s8d7akx1igcrw62diidqbxp04n";
     };
 
-    propagatedBuildInputs = [ pydns lockfile ];
+    propagatedBuildInputs = with self; [ pydns lockfile ];
 
     meta = with stdenv.lib; {
       description = "Statistical anti-spam filter, initially based on the work of Paul Graham";
@@ -8033,12 +8096,12 @@ let
   shapely = buildPythonPackage rec {
     name = "Shapely-1.3.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/S/Shapely/${name}.tar.gz";
       sha256 = "099sc7ajpp6hbgrx3c0bl6hhkz1mhnr0ahvc7s4i3f3b7q1zfn7l";
     };
 
-    buildInputs = [ pkgs.geos ];
+    buildInputs = with self; [ pkgs.geos ];
 
     preConfigure = ''
       export LANG="en_US.UTF-8";
@@ -8060,14 +8123,14 @@ let
   stevedore = buildPythonPackage rec {
     name = "stevedore-0.15";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/stevedore/${name}.tar.gz";
       sha256 = "bec9269cbfa58de4f0849ec79bb7d54eeeed9df8b5fbfa1637fbc68062822847";
     };
 
-    buildInputs = [ pbr pip ];
+    buildInputs = with self; [ pbr pip ];
 
-    propagatedBuildInputs = [ setuptools ];
+    propagatedBuildInputs = with self; [ setuptools ];
 
     meta = {
       description = "Manage dynamic plugins for Python applications";
@@ -8080,7 +8143,7 @@ let
     name = "pydns-2.3.6";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pydns/${name}.tar.gz";
       sha256 = "0qnv7i9824nb5h9psj0rwzjyprwgfiwh5s5raa9avbqazy5hv5pi";
     };
@@ -8093,7 +8156,7 @@ let
     name = "sympy-0.7.4";
     disabled = isPy34;  # some tests fail
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://github.com/sympy/sympy/releases/download/${name}/${name}.tar.gz";
       sha256 = "0h1b9mx0snyyybj1x1ga69qssgjzkkgx2rw6nddjhyz1fknf8ywh";
     };
@@ -8115,7 +8178,7 @@ let
   pilkit = buildPythonPackage rec {
     name = "pilkit-1.1.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pilkit/${name}.tar.gz";
       md5 = "659dd67440f4b576889f2cd350f43d7b";
     };
@@ -8127,7 +8190,7 @@ let
     # tests fail, see https://github.com/matthewwithanm/pilkit/issues/9
     doCheck = false;
 
-    buildInputs = [ pillow nose_progressive nose mock blessings ];
+    buildInputs = with self; [ pillow nose_progressive nose mock blessings ];
 
     meta = with stdenv.lib; {
       maintainers = [ maintainers.iElectric ];
@@ -8137,7 +8200,7 @@ let
   clint = buildPythonPackage rec {
     name = "clint-0.3.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/c/clint/${name}.tar.gz";
       md5 = "7dcd43fb08bfb84c7d63e9356ada7b73";
     };
@@ -8146,7 +8209,7 @@ let
       nosetests
     '';
 
-    buildInputs = [ pillow nose_progressive nose mock blessings nose ];
+    buildInputs = with self; [ pillow nose_progressive nose mock blessings nose ];
 
     meta = with stdenv.lib; {
       maintainers = [ maintainers.iElectric ];
@@ -8156,7 +8219,7 @@ let
   argh = buildPythonPackage rec {
     name = "argh-0.23.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/a/argh/${name}.tar.gz";
       md5 = "25bb02c6552b42875f2c36714e0ff16c";
     };
@@ -8166,7 +8229,7 @@ let
       export LOCALE_ARCHIVE=${localePath}
     '';
 
-    buildInputs = [ pytest py mock ];
+    buildInputs = with self; [ pytest py mock ];
 
     meta = with stdenv.lib; {
       maintainers = [ maintainers.iElectric ];
@@ -8176,13 +8239,13 @@ let
   nose_progressive = buildPythonPackage rec {
     name = "nose-progressive-1.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/n/nose-progressive/${name}.tar.gz";
       md5 = "180be93929c5962044a35489f193259d";
     };
 
-    buildInputs = [ pillow blessings nose ];
-    propagatedBuildInputs = [ modules.curses ];
+    buildInputs = with self; [ pillow blessings nose ];
+    propagatedBuildInputs = with self; [ modules.curses ];
 
     meta = with stdenv.lib; {
       maintainers = [ maintainers.iElectric ];
@@ -8192,7 +8255,7 @@ let
   blessings = buildPythonPackage rec {
     name = "blessings-1.5.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/b/blessings/${name}.tar.gz";
       md5 = "fbbddbf20b1f9a13e3fa612b1e086fd8";
     };
@@ -8200,7 +8263,7 @@ let
     # 4 failing tests
     doCheck = false;
 
-    buildInputs = [ nose modules.curses ];
+    buildInputs = with self; [ nose modules.curses ];
 
     meta = with stdenv.lib; {
       maintainers = [ maintainers.iElectric ];
@@ -8212,9 +8275,9 @@ let
 
     disabled = isPy3k;
 
-    propagatedBuildInputs = [ quantities numpy ];
+    propagatedBuildInputs = with self; [ quantities numpy ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/s/semantic/semantic-1.0.3.tar.gz";
       md5 = "78a150190e3e7d0f6f357b4c828e5f0d";
     };
@@ -8231,7 +8294,7 @@ let
 
   sexpdata = buildPythonPackage rec {
     name = "sexpdata-0.0.2";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/sexpdata/${name}.tar.gz";
       md5 = "efc44265bc27cb3d6ffed4fbf5733fc1";
     };
@@ -8248,7 +8311,7 @@ let
   sh = buildPythonPackage rec {
     name = "sh-1.08";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/sh/${name}.tar.gz";
       md5 = "4028bcba85daa0aef579ed24261e88a3";
     };
@@ -8265,7 +8328,7 @@ let
   six = buildPythonPackage rec {
     name = "six-1.7.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/six/${name}.tar.gz";
       md5 = "784c6e5541c3c4952de9c0a966a0a80b";
     };
@@ -8284,7 +8347,7 @@ let
     name = "Skype4Py-1.0.32.0";
     disabled = isPy3k || isPyPy;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = mirror://sourceforge/skype4py/Skype4Py-1.0.32.0.tar.gz;
       sha256 = "0cmkrv450wa8v50bng5dflpwkl5c1p9pzysjkb2956w5kvwh6f5b";
     };
@@ -8298,7 +8361,7 @@ let
     # error: invalid command 'test'
     doCheck = false;
 
-    propagatedBuildInputs = [ pkgs.xlibs.libX11 pkgs.pythonDBus pygobject ];
+    propagatedBuildInputs = with self; [ pkgs.xlibs.libX11 pkgs.pythonDBus pygobject ];
 
     meta = {
       description = "High-level, platform independent Skype API wrapper for Python";
@@ -8315,12 +8378,12 @@ let
   smartdc = buildPythonPackage rec {
     name = "smartdc-0.1.12";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = https://pypi.python.org/packages/source/s/smartdc/smartdc-0.1.12.tar.gz;
       md5 = "b960f61facafc879142b699050f6d8b4";
     };
 
-    propagatedBuildInputs = [ requests http_signature ];
+    propagatedBuildInputs = with self; [ requests http_signature ];
 
     meta = {
       description = "Joyent SmartDataCenter CloudAPI connector using http-signature authentication via Requests";
@@ -8332,7 +8395,7 @@ let
   sorl_thumbnail = buildPythonPackage rec {
     name = "sorl-thumbnail-11.12";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/s/sorl-thumbnail/${name}.tar.gz";
       sha256 = "050b9kzbx7jvs3qwfxxshhis090hk128maasy8pi5wss6nx5kyw4";
     };
@@ -8352,13 +8415,13 @@ let
 
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/s/supervisor/${name}.tar.gz";
       md5 = "8c9714feaa63902f03871317e3ebf62e";
     };
 
-    buildInputs = [ mock ];
-    propagatedBuildInputs = [ meld3 ];
+    buildInputs = with self; [ mock ];
+    propagatedBuildInputs = with self; [ meld3 ];
 
     # failing tests when building under chroot as root user doesn't exist
     doCheck = false;
@@ -8373,7 +8436,7 @@ let
     name = "subprocess32-3.2.6";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/s/subprocess32/${name}.tar.gz";
       md5 = "754c5ab9f533e764f931136974b618f1";
     };
@@ -8391,12 +8454,12 @@ let
   sphinx = buildPythonPackage (rec {
     name = "Sphinx-1.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/S/Sphinx/${name}.tar.gz";
       md5 = "8516046aad73fe46dedece4e8e434328";
     };
 
-    propagatedBuildInputs = [docutils jinja2 pygments];
+    propagatedBuildInputs = with self; [docutils jinja2 pygments];
 
     meta = {
       description = "Sphinx is a tool that makes it easy to create intelligent and beautiful documentation for Python projects.";
@@ -8411,12 +8474,12 @@ let
   sphinxcontrib_httpdomain = buildPythonPackage (rec {
     name = "sphinxcontrib-httpdomain-1.1.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/s/sphinxcontrib-httpdomain/${name}.tar.gz";
       md5 = "0f63aea612cc9e0b55a6c39e5b0f87b7";
     };
 
-    propagatedBuildInputs = [sphinx];
+    propagatedBuildInputs = with self; [sphinx];
 
     meta = {
       description = "Provides a Sphinx domain for describing RESTful HTTP APIs";
@@ -8431,7 +8494,7 @@ let
   sphinx_pypi_upload = buildPythonPackage (rec {
     name = "Sphinx-PyPI-upload-0.2.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/S/Sphinx-PyPI-upload/${name}.tar.gz";
       md5 = "b9f1df5c8443197e4d49abbba1cfddc4";
     };
@@ -8445,12 +8508,12 @@ let
     };
   });
 
-  sqlalchemy = sqlalchemy9.override rec {
+  sqlalchemy = self.sqlalchemy9.override rec {
     name = "SQLAlchemy-0.7.10";
     disabled = isPy34;
     doCheck = !isPyPy;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/S/SQLAlchemy/${name}.tar.gz";
       sha256 = "0rhxgr85xdhjn467qfs0dkyj8x46zxcv6ad3dfx3w14xbkb3kakp";
     };
@@ -8464,12 +8527,12 @@ let
     '';
   };
 
-  sqlalchemy8 = sqlalchemy9.override rec {
+  sqlalchemy8 = self.sqlalchemy9.override rec {
     name = "SQLAlchemy-0.8.7";
     disabled = isPy34;
     doCheck = !isPyPy;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/S/SQLAlchemy/${name}.tar.gz";
       md5 = "4f3377306309e46739696721b1785335";
     };
@@ -8481,14 +8544,14 @@ let
   sqlalchemy9 = buildPythonPackage rec {
     name = "SQLAlchemy-0.9.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/S/SQLAlchemy/${name}.tar.gz";
       md5 = "c008ea5e2565ec1418ee8461393a99b1";
     };
 
-    buildInputs = [ nose mock ];
+    buildInputs = with self; [ nose mock ];
 
-    propagatedBuildInputs = [ modules.sqlite3 ];
+    propagatedBuildInputs = with self; [ modules.sqlite3 ];
 
     checkPhase = ''
       ${python.executable} sqla_nose.py
@@ -8506,14 +8569,14 @@ let
     version = "0.8.2";
     disabled = isPy33;
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = https://github.com/crosspop/sqlalchemy-imageattach.git;
       rev = "refs/tags/${version}";
       md5 = "cffdcde30952176e35fccf385f579dda";
     };
 
-    buildInputs = [ pytest webob pkgs.imagemagick nose ];
-    propagatedBuildInputs = [ sqlalchemy8 wand ];
+    buildInputs = with self; [ pytest webob pkgs.imagemagick nose ];
+    propagatedBuildInputs = with self; [ sqlalchemy8 wand ];
 
     checkPhase = ''
       cd tests
@@ -8535,14 +8598,14 @@ let
   sqlalchemy_migrate = buildPythonPackage rec {
     name = "sqlalchemy-migrate-0.6.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://sqlalchemy-migrate.googlecode.com/files/${name}.tar.gz";
       sha1 = "17168b5fa066bd56fd93f26345525377e8a83d8a";
     };
 
-    buildInputs = [ nose unittest2 scripttest ];
+    buildInputs = with self; [ nose unittest2 scripttest ];
 
-    propagatedBuildInputs = [ tempita decorator sqlalchemy ];
+    propagatedBuildInputs = with self; [ tempita decorator sqlalchemy ];
 
     preCheck =
       ''
@@ -8564,12 +8627,12 @@ let
     version = "1.6.0";
     disabled = isPy3k;  # next release will be py3k compatible
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/python-statsd/${name}.tar.gz";
       md5 = "3a0c71a160b504b843703c3041c7d7fb";
     };
 
-    buildInputs = [ mock nose coverage ];
+    buildInputs = with self; [ mock nose coverage ];
 
     meta = {
       description = "A client for Etsy's node-js statsd server";
@@ -8583,12 +8646,12 @@ let
     name = "stompclient-0.3.2";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/stompclient/${name}.tar.gz";
       md5 = "af0a314b6106dd80da24a918c24a1eab";
     };
 
-    buildInputs = [ mock nose ];
+    buildInputs = with self; [ mock nose ];
 
     # XXX: Ran 0 tests in 0.217s
 
@@ -8604,12 +8667,12 @@ let
     name = "subunit-${version}";
     version = "0.0.16";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://launchpad.net/subunit/trunk/${version}/+download/python-${name}.tar.gz";
       sha256 = "1ylla1wlmv29vdr76r5kgr7y21bz4ahi3v26mxsys42w90rfkahi";
     };
 
-    propagatedBuildInputs = [ testtools ];
+    propagatedBuildInputs = with self; [ testtools ];
 
     meta = {
       description = "A streaming protocol for test results";
@@ -8628,14 +8691,14 @@ let
       export LC_ALL="en_US.UTF-8"
     '';
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/sure/${name}.tar.gz";
       md5 = "6dbecef27dffc41c8cd8aab8a8b3fdfb";
     };
 
-    buildInputs = [ nose ];
+    buildInputs = with self; [ nose ];
 
-    propagatedBuildInputs = [ six mock ];
+    propagatedBuildInputs = with self; [ six mock ];
 
     meta = {
       description = "Utility belt for automated testing";
@@ -8648,7 +8711,7 @@ let
   structlog = buildPythonPackage rec {
     name = "structlog-0.4.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/s/structlog/${name}.tar.gz";
       md5 = "062cda36069e8573e00c265f451f899e";
     };
@@ -8671,7 +8734,7 @@ let
   #     sha256 = "41c9da1dab2be7b60bff87e618befdf5da37c0a56287385cb0cbd3f91e452bb6";
   #   };
   #
-  #   propagatedBuildInputs = [ pysvn argparse ];
+  #   propagatedBuildInputs = with self; [ pysvn argparse ];
   #
   #   doCheck = false;
   # };
@@ -8680,12 +8743,12 @@ let
     version = "2.1.fb33";
     name = "targetcli-fb-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/agrover/targetcli-fb/archive/v${version}.tar.gz";
       sha256 = "1zcm0agdpf866020b43fl8zyyyzz6r74mn1sz4xpaa0pinpwjk42";
     };
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       configshell_fb
       rtslib_fb
     ];
@@ -8701,13 +8764,13 @@ let
     name = "tarsnapper-0.2.1";
     disabled = isPy3k;
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = https://github.com/miracle2k/tarsnapper.git;
       rev = "620439bca68892f2ffaba1079a34b18496cc6596";
       sha256 = "06pp499qm2dxpja2jgmmq2jrcx3m4nq52x5hhil9r1jxvyiq962p";
     };
 
-    propagatedBuildInputs = [ argparse pyyaml ];
+    propagatedBuildInputs = with self; [ argparse pyyaml ];
 
     patches = [ ../development/python-modules/tarsnapper-path.patch ];
 
@@ -8721,12 +8784,12 @@ let
     name = "TaskCoach-1.3.22";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "mirror://sourceforge/taskcoach/${name}.tar.gz";
       sha256 = "1ddx56bqmh347synhgjq625ijv5hqflr0apxg0nl4jqdsqk1zmxh";
     };
 
-    propagatedBuildInputs = [ wxPython ];
+    propagatedBuildInputs = with self; [ wxPython ];
 
     # I don't know why I need to add these libraries. Shouldn't they
     # be part of wxPython?
@@ -8750,14 +8813,14 @@ let
     version = "0.5.2";
     name = "tempita-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/T/Tempita/Tempita-${version}.tar.gz";
       md5 = "4c2f17bb9d481821c41b6fbee904cea1";
     };
 
     disabled = isPy3k;
 
-    buildInputs = [ nose ];
+    buildInputs = with self; [ nose ];
 
     meta = {
       homepage = http://pythonpaste.org/tempita/;
@@ -8770,12 +8833,12 @@ let
     name = "testtools-${version}";
     version = "0.9.34";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/t/testtools/${name}.tar.gz";
       sha256 = "0s6sn9h26dif2c9sayf875x622kq8jb2f4qbc6if7gwh2sssgicn";
     };
 
-    propagatedBuildInputs = [ pythonPackages.python_mimeparse pythonPackages.extras lxml ];
+    propagatedBuildInputs = with self; [ self.python_mimeparse self.extras lxml ];
 
     meta = {
       description = "A set of extensions to the Python standard library's unit testing framework";
@@ -8789,7 +8852,7 @@ let
     name = "python-mimeparse-${version}";
     version = "0.1.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/python-mimeparse/${name}.tar.gz";
       sha256 = "1hyxg09kaj02ri0rmwjqi86wk4nd1akvv7n0dx77azz76wga4s9w";
     };
@@ -8809,7 +8872,7 @@ let
     name = "extras-${version}";
     version = "0.0.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/e/extras/extras-${version}.tar.gz";
       sha256 = "1h7zx4dfyclalg0fqnfjijpn0f793a9mx8sy3b27gd31nr6dhq3s";
     };
@@ -8828,7 +8891,7 @@ let
     name = "tmdb3-${version}";
     version = "0.6.17";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/t/tmdb3/${name}.zip";
       md5 = "cd259427454472164c9a2479504c9cbb";
     };
@@ -8849,11 +8912,11 @@ let
   tox = buildPythonPackage rec {
     name = "tox-1.7.2";
 
-    propagatedBuildInputs = [ py virtualenv ];
+    propagatedBuildInputs = with self; [ py virtualenv ];
 
     doCheck = false;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/t/tox/${name}.tar.gz";
       md5 = "0d9b3acb1a9252659d753b0ae6b9b264";
     };
@@ -8864,7 +8927,7 @@ let
     disabled = isPy3k || isPyPy;  # next release will have py3k/pypy support
     meta.maintainers = [ stdenv.lib.maintainers.mornfall ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/s/smmap/${name}.tar.gz";
       sha256 = "0vrdgr6npmajrv658fv8bij7zgm5jmz2yxkbv8kmbv25q1f9b8ny";
     };
@@ -8874,7 +8937,7 @@ let
     name = "trac-1.0.1";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = http://ftp.edgewall.com/pub/trac/Trac-1.0.1.tar.gz;
       sha256 = "1nqa95fcnkpyq4jk6az7l7sqgm3b3pjq3bx1n7y4v3bad5jr1m4x";
     };
@@ -8884,7 +8947,7 @@ let
 
     PYTHON_EGG_CACHE = "`pwd`/.egg-cache";
 
-    propagatedBuildInputs = [ genshi pkgs.setuptools modules.sqlite3 ];
+    propagatedBuildInputs = with self; [ genshi pkgs.setuptools modules.sqlite3 ];
 
     meta = {
       description = "Enhanced wiki and issue tracking system for software development projects";
@@ -8898,12 +8961,12 @@ let
     name = "transaction-${version}";
     version = "1.4.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/t/transaction/${name}.tar.gz";
       md5 = "b4ca5983c9e3a0808ff5ff7648092c76";
     };
 
-    propagatedBuildInputs = [ zope_interface ];
+    propagatedBuildInputs = with self; [ zope_interface ];
 
     meta = {
       description = "Transaction management";
@@ -8916,12 +8979,12 @@ let
     name = "transmissionrpc-${version}";
     version = "0.11";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/t/transmissionrpc/${name}.tar.gz";
       md5 = "b2f918593e509f0e66e2e643291b436d";
     };
 
-    propagatedBuildInputs = [ six ];
+    propagatedBuildInputs = with self; [ six ];
 
     meta = {
       description = "Python implementation of the Transmission bittorent client RPC protocol.";
@@ -8934,7 +8997,7 @@ let
      name = "eggdeps-${version}";
      version = "0.4";
 
-     src = fetchurl {
+     src = pkgs.fetchurl {
        url = "http://pypi.python.org/packages/source/t/tl.eggdeps/tl.${name}.tar.gz";
        md5 = "2472204a2abd0d8cd4d11ff0fbf36ae7";
      };
@@ -8942,7 +9005,7 @@ let
      # tests fail, see http://hydra.nixos.org/build/4316603/log/raw
      doCheck = false;
 
-     propagatedBuildInputs = [ zope_interface zope_testing ];
+     propagatedBuildInputs = with self; [ zope_interface zope_testing ];
      meta = {
        description = "A tool which computes a dependency graph between active Python eggs";
        homepage = http://thomas-lotze.de/en/software/eggdeps/;
@@ -8954,12 +9017,12 @@ let
   turses = buildPythonPackage (rec {
     name = "turses-0.2.22";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/t/turses/${name}.tar.gz";
       sha256 = "1dqgvdqly4c4d6819mbkqy4g8r7zch4dkmxicfwck7q8h96wmyx3";
     };
 
-    propagatedBuildInputs = [ oauth2 urwid tweepy ] ++ optional isPy26 argparse;
+    propagatedBuildInputs = with self; [ oauth2 urwid tweepy ] ++ optional isPy26 argparse;
 
     #buildInputs = [ tox ];
     # needs tox
@@ -8978,7 +9041,7 @@ let
     name = "tweepy-2.3.0";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/t/tweepy/${name}.tar.gz";
       sha256 = "0wcj5g21brcqr1g7m4by4rs72lfiib4scg19qynn2wz1x77jyrzp";
     };
@@ -8994,11 +9057,11 @@ let
 
   twitter = buildPythonPackage rec {
     name = "twitter-${version}";
-    version = "1.14.3";
+    version = "1.15.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url    = "https://pypi.python.org/packages/source/t/twitter/${name}.tar.gz";
-      sha256 = "1nhhjajbq0jik43q2makpnz094qcziq9p8rj35jxamybd0hwwzs9";
+      sha256 = "1m6b17irb9klc345k8174pni724jzy2973z2x2jg69h83hipjw2c";
     };
 
     doCheck = false;
@@ -9016,12 +9079,12 @@ let
     disabled = isPy3k;
 
     name = "Twisted-11.1.0";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/T/Twisted/${name}.tar.bz2";
       sha256 = "05agfp17cndhv2w0p559lvknl7nv0xqkg10apc47fm53m8llbfvz";
     };
 
-    propagatedBuildInputs = [ zope_interface ];
+    propagatedBuildInputs = with self; [ zope_interface ];
 
     # Generate Twisted's plug-in cache.  Twited users must do it as well.  See
     # http://twistedmatrix.com/documents/current/core/howto/plugin.html#auto3
@@ -9048,9 +9111,9 @@ let
   tzlocal = buildPythonPackage rec {
     name = "tzlocal-1.1.1";
 
-    propagatedBuildInputs = with pythonPackages; [ pytz ];
+    propagatedBuildInputs = with self; [ pytz ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/t/tzlocal/tzlocal-1.1.1.zip";
       md5 = "56c2a04501b98f2a1188d003fd6d3dba";
     };
@@ -9070,11 +9133,11 @@ let
     name = "unittest2-${version}";
 
     src = if python.is_py3k or false
-       then fetchurl {
+       then pkgs.fetchurl {
            url = "http://pypi.python.org/packages/source/u/unittest2py3k/unittest2py3k-${version}.tar.gz";
            sha256 = "00yl6lskygcrddx5zspkhr0ibgvpknl4678kkm6s626539grq93q";
          }
-       else fetchurl {
+       else pkgs.fetchurl {
            url = "http://pypi.python.org/packages/source/u/unittest2/unittest2-${version}.tar.gz";
            md5 = "a0af5cac92bbbfa0c3b0e99571390e0f";
          };
@@ -9094,7 +9157,7 @@ let
     name = "urlgrabber-3.9.1";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://urlgrabber.baseurl.org/download/${name}.tar.gz";
       sha256 = "4437076c8708e5754ea04540e46c7f4f233734ee3590bb8a96389264fb0650d0";
     };
@@ -9102,7 +9165,7 @@ let
     # error: invalid command 'test'
     doCheck = false;
 
-    propagatedBuildInputs = [ pycurl ];
+    propagatedBuildInputs = with self; [ pycurl ];
 
     meta = {
       homepage = "urlgrabber.baseurl.org";
@@ -9119,7 +9182,7 @@ let
     # multiple:  NameError: name 'evl' is not defined
     doCheck = false;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/u/urwid/${name}.tar.gz";
       md5 = "6a05ada11b87e7b026b01fc5150855b0";
     };
@@ -9137,14 +9200,14 @@ let
     name = "pyuv-0.11.5";
     disabled = isPyPy;  # see https://github.com/saghul/pyuv/issues/49
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/saghul/pyuv/archive/${name}.tar.gz";
       sha256 = "c251952cb4e54c92ab0e871decd13cf73d11ca5dba9f92962de51d12e3a310a9";
     };
 
     patches = [ ../development/python-modules/pyuv-external-libuv.patch ];
 
-    buildInputs = [ pkgs.libuvVersions.v0_11_29 ];
+    buildInputs = with self; [ pkgs.libuvVersions.v0_11_29 ];
 
     meta = {
       description = "Python interface for libuv";
@@ -9156,19 +9219,18 @@ let
 
   virtualenv = buildPythonPackage rec {
     name = "virtualenv-1.11.6";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/v/virtualenv/${name}.tar.gz";
       md5 = "f61cdd983d2c4e6aeabb70b1060d6f49";
     };
 
-    inherit recursivePthLoader;
-    pythonPath = [ recursivePthLoader ];
+    pythonPath = [ self.recursivePthLoader ];
 
     patches = [ ../development/python-modules/virtualenv-change-prefix.patch ];
 
-    propagatedBuildInputs = [ modules.readline modules.sqlite3 modules.curses ];
+    propagatedBuildInputs = with self; [ modules.readline modules.sqlite3 modules.curses ];
 
-    buildInputs = [ mock nose ];
+    buildInputs = with self; [ mock nose ];
 
     # XXX: Ran 0 tests in 0.003s
 
@@ -9183,13 +9245,13 @@ let
   virtualenv-clone = buildPythonPackage rec {
     name = "virtualenv-clone-0.2.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/v/virtualenv-clone/${name}.tar.gz";
       md5 = "71168b975eaaa91e65559bcc79290b3b";
     };
 
-    buildInputs = [pytest];
-    propagatedBuildInputs = [virtualenv];
+    buildInputs = with self; [pytest];
+    propagatedBuildInputs = with self; [virtualenv];
 
     # needs tox to run the tests
     doCheck = false;
@@ -9204,7 +9266,7 @@ let
   virtualenvwrapper = buildPythonPackage (rec {
     name = "virtualenvwrapper-4.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/v/virtualenvwrapper/${name}.tar.gz";
       sha256 = "514cbc22218347bf7b54bdbe49e1a5f550d2d53b1ad2491c10e91ddf48fb528f";
     };
@@ -9212,8 +9274,8 @@ let
     # pip depend on $HOME setting
     preConfigure = "export HOME=$TMPDIR";
 
-    buildInputs = [ pbr pip pkgs.which ];
-    propagatedBuildInputs = [ stevedore virtualenv virtualenv-clone ];
+    buildInputs = with self; [ pbr pip pkgs.which ];
+    propagatedBuildInputs = with self; [ stevedore virtualenv virtualenv-clone ];
 
     patchPhase = ''
       substituteInPlace "virtualenvwrapper.sh" --replace "which" "${pkgs.which}/bin/which"
@@ -9251,7 +9313,7 @@ let
   waitress = buildPythonPackage rec {
     name = "waitress-0.8.7";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/w/waitress/${name}.tar.gz";
       md5 = "714f3d458d82a47f12fb168460de8366";
     };
@@ -9271,7 +9333,7 @@ let
   webcolors = buildPythonPackage rec {
     name = "webcolors-1.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/w/webcolors/${name}.tar.gz";
       md5 = "35de9d785b5c04a9cc66a2eae0519254";
     };
@@ -9291,12 +9353,12 @@ let
   wand = buildPythonPackage rec {
     name = "Wand-0.3.5";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/W/Wand/${name}.tar.gz";
       md5 = "10bab03bf86ce8da2a95a3b15197ae2e";
     };
 
-    buildInputs = [ pkgs.imagemagick pytest psutil memory_profiler pytest_xdist ];
+    buildInputs = with self; [ pkgs.imagemagick pytest psutil memory_profiler pytest_xdist ];
 
     meta = {
       description = "Ctypes-based simple MagickWand API binding for Python";
@@ -9310,12 +9372,12 @@ let
     version = "1.4";
     name = "webob-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/W/WebOb/WebOb-${version}.tar.gz";
       md5 = "8437607c0cc00c35f658f972516ffb55";
     };
 
-    propagatedBuildInputs = [ nose modules.ssl ];
+    propagatedBuildInputs = with self; [ nose ];
 
     meta = {
       description = "WSGI request and response object";
@@ -9329,12 +9391,12 @@ let
     version = "0.3.0";
     name = "websockify-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/w/websockify/websockify-${version}.tar.gz";
       md5 = "29b6549d3421907de4bbd881ecc2e1b1";
     };
 
-    propagatedBuildInputs = [ numpy ];
+    propagatedBuildInputs = with self; [ numpy ];
 
     meta = {
       description = "WebSockets support for any application/server";
@@ -9347,7 +9409,7 @@ let
     version = "2.0.15";
     name = "webtest-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/W/WebTest/WebTest-${version}.zip";
       md5 = "49314bdba23f4d0bd807facb2a6d3f90";
     };
@@ -9359,9 +9421,9 @@ let
     # XXX: skipping two tests fails in python2.6
     doCheck = ! isPy26;
 
-    buildInputs = optionals isPy26 [ pythonPackages.ordereddict unittest2 ];
+    buildInputs = optionals isPy26 [ self.ordereddict unittest2 ];
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       nose
       webob
       six
@@ -9385,12 +9447,12 @@ let
   werkzeug = buildPythonPackage rec {
     name = "Werkzeug-0.9.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/W/Werkzeug/${name}.tar.gz";
       md5 = "f7afcadc03b0f2267bdc156c34586043";
     };
 
-    propagatedBuildInputs = [ itsdangerous ];
+    propagatedBuildInputs = with self; [ itsdangerous ];
 
     doCheck = false;            # tests fail, not sure why
 
@@ -9405,12 +9467,12 @@ let
   wokkel = buildPythonPackage (rec {
     url = "http://wokkel.ik.nu/releases/0.7.0/wokkel-0.7.0.tar.gz";
     name = nameFromURL url ".tar";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       inherit url;
       sha256 = "0rnshrzw8605x05mpd8ndrx3ri8h6cx713mp8sl4f04f4gcrz8ml";
     };
 
-    propagatedBuildInputs = [twisted dateutil];
+    propagatedBuildInputs = with self; [twisted dateutil];
 
     meta = {
       description = "Some (mainly XMPP-related) additions to twisted";
@@ -9423,12 +9485,12 @@ let
   wsgiproxy2 = buildPythonPackage rec {
     name = "WSGIProxy2-0.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/W/WSGIProxy2/${name}.tar.gz";
       md5 = "157049212f1c81a8790efa31146fbabf";
     };
 
-    propagatedBuildInputs = [ six webob ];
+    propagatedBuildInputs = with self; [ six webob ];
 
     meta = {
        maintainers = [
@@ -9439,9 +9501,7 @@ let
     };
   };
 
-
-  wxPython = wxPython28;
-
+  wxPython = self.wxPython28;
 
   wxPython28 = callPackage ../development/python-modules/wxPython/2.8.nix {
     wxGTK = pkgs.wxGTK28;
@@ -9454,7 +9514,7 @@ let
   xe = buildPythonPackage rec {
     url = "http://www.blarg.net/%7Esteveha/xe-0.7.4.tar.gz";
     name = stdenv.lib.nameFromURL url ".tar";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       inherit url;
       sha256 = "0v9878cl0y9cczdsr6xjy8v9l139lc23h4m5f86p4kpf2wlnpi42";
     };
@@ -9471,7 +9531,7 @@ let
   xlib = buildPythonPackage (rec {
     name = "xlib-0.15rc1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "mirror://sourceforge/python-xlib/python-${name}.tar.bz2";
       sha256 = "0mvzz605pxzj7lfp2w6z4qglmr4rjza9xrb7sl8yn12cklzfky0m";
     };
@@ -9479,7 +9539,7 @@ let
     # Tests require `pyutil' so disable them to avoid circular references.
     doCheck = false;
 
-    propagatedBuildInputs = [ pkgs.xlibs.libX11 ];
+    propagatedBuildInputs = with self; [ pkgs.xlibs.libX11 ];
 
     meta = {
       description = "Fully functional X client library for Python programs";
@@ -9493,7 +9553,7 @@ let
   zbase32 = buildPythonPackage (rec {
     name = "zbase32-1.1.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zbase32/${name}.tar.gz";
       sha256 = "2f44b338f750bd37b56e7887591bf2f1965bfa79f163b6afcbccf28da642ec56";
     };
@@ -9501,7 +9561,7 @@ let
     # Tests require `pyutil' so disable them to avoid circular references.
     doCheck = false;
 
-    buildInputs = [ setuptoolsDarcs ];
+    buildInputs = with self; [ setuptoolsDarcs ];
 
     meta = {
       description = "zbase32, a base32 encoder/decoder";
@@ -9517,12 +9577,12 @@ let
     name = "zconfig-${version}";
     version = "3.0.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/Z/ZConfig/ZConfig-${version}.tar.gz";
       md5 = "60a107c5857c3877368dfe5930559804";
     };
 
-    propagatedBuildInputs = [ zope_testrunner ];
+    propagatedBuildInputs = with self; [ zope_testrunner ];
 
     meta = {
       description = "Structured Configuration Library";
@@ -9537,7 +9597,7 @@ let
     name = "zc.lockfile-${version}";
     version = "1.0.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zc.lockfile/${name}.tar.gz";
       md5 = "f099d4cf2583a0c7bea0146a44dc4d59";
     };
@@ -9555,12 +9615,12 @@ let
     name = "zdaemon-${version}";
     version = "4.0.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zdaemon/${name}.tar.gz";
       md5 = "4056e2ea35855695ed15389d9c168b92";
     };
 
-    propagatedBuildInputs  = [ zconfig ];
+    propagatedBuildInputs = [ self.zconfig ];
 
     # too many deps..
     doCheck = false;
@@ -9578,13 +9638,13 @@ let
     name = "zfec-1.4.24";
     disabled = isPyPy;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zfec/${name}.tar.gz";
       sha256 = "1ks94zlpy7n8sb8380gf90gx85qy0p9073wi1wngg6mccxp9xsg3";
     };
 
-    buildInputs = [ setuptoolsDarcs ];
-    propagatedBuildInputs = [ pyutil argparse ];
+    buildInputs = with self; [ setuptoolsDarcs ];
+    propagatedBuildInputs = with self; [ pyutil argparse ];
 
     meta = {
       homepage = http://allmydata.org/trac/zfec;
@@ -9609,12 +9669,12 @@ let
     version = "3.11.0";
     disabled = isPyPy;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/Z/ZODB3/ZODB3-${version}.tar.gz";
       md5 = "21975c1609296e7834e8cf4025af3039";
     };
 
-    propagatedBuildInputs = [ manuel transaction zc_lockfile zconfig zdaemon zope_interface zope_event BTrees persistent ZEO ];
+    propagatedBuildInputs = with self; [ manuel transaction zc_lockfile zconfig zdaemon zope_interface zope_event BTrees persistent ZEO ];
 
     meta = {
       description = "An object-oriented database for Python";
@@ -9630,12 +9690,12 @@ let
 
     version = "4.0.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/Z/ZODB/ZODB-${version}.tar.gz";
       md5 = "092d787524b095164231742c96b32f50";
     };
 
-    propagatedBuildInputs = [ manuel transaction zc_lockfile zconfig zdaemon zope_interface persistent BTrees ]
+    propagatedBuildInputs = with self; [ manuel transaction zc_lockfile zconfig zdaemon zope_interface persistent BTrees ]
       ++ optionals isPy3k [ zodbpickle ];
 
     preCheck = if isPy3k then ''
@@ -9651,11 +9711,11 @@ let
     };
   };
 
-  zodbpickle = pythonPackages.buildPythonPackage rec {
+  zodbpickle = self.buildPythonPackage rec {
     name = "zodbpickle-0.5.2";
     disabled = isPyPy; # https://github.com/zopefoundation/zodbpickle/issues/10
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/z/zodbpickle/${name}.tar.gz";
       md5 = "d401bd89f99ec8d56c22493e6f8c0443";
     };
@@ -9669,14 +9729,14 @@ let
   };
 
 
-  BTrees = pythonPackages.buildPythonPackage rec {
+  BTrees = self.buildPythonPackage rec {
     name = "BTrees-4.0.8";
 
     patches = [ ./../development/python-modules/btrees_interger_overflow.patch ];
 
-    propagatedBuildInputs = [ persistent zope_interface transaction ];
+    propagatedBuildInputs = with self; [ persistent zope_interface transaction ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/B/BTrees/${name}.tar.gz";
       md5 = "7f5df4cf8dd50fb0c584c0929a406c92";
     };
@@ -9688,12 +9748,12 @@ let
   };
 
 
-  persistent = pythonPackages.buildPythonPackage rec {
+  persistent = self.buildPythonPackage rec {
     name = "persistent-4.0.8";
 
-    propagatedBuildInputs = [ zope_interface ];
+    propagatedBuildInputs = with self; [ zope_interface ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/persistent/${name}.tar.gz";
       md5 = "2942f1ca7764b1bef8d48fa0d9a236b7";
     };
@@ -9707,12 +9767,12 @@ let
   xdot = buildPythonPackage rec {
     name = "xdot-0.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/x/xdot/xdot-0.6.tar.gz";
       md5 = "a8e5fc5208657b03ad1bd4c46de75724";
     };
 
-    propagatedBuildInputs = with pythonPackages; [ pygtk pygobject pkgs.graphviz ];
+    propagatedBuildInputs = with self; [ pygtk pygobject pkgs.graphviz ];
 
     meta = with stdenv.lib; {
       description = "xdot.py is an interactive viewer for graphs written in Graphviz's dot";
@@ -9724,12 +9784,12 @@ let
   zope_broken = buildPythonPackage rec {
     name = "zope.broken-3.6.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.broken/${name}.zip";
       md5 = "eff24d7918099a3e899ee63a9c31bee6";
     };
 
-    buildInputs = [ zope_interface ];
+    buildInputs = with self; [ zope_interface ];
 
     meta = {
         maintainers = [ stdenv.lib.maintainers.goibhniu ];
@@ -9740,12 +9800,12 @@ let
   zope_browser = buildPythonPackage rec {
     name = "zope.browser-2.0.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.browser/${name}.zip";
       sha256 = "0f9r5rn9lzgi4hvkhgb6vgw8kpz9sv16jsfb9ws4am8gbqcgv2iy";
     };
 
-    propagatedBuildInputs = [ zope_interface ];
+    propagatedBuildInputs = with self; [ zope_interface ];
 
     meta = {
         maintainers = [ stdenv.lib.maintainers.goibhniu ];
@@ -9755,7 +9815,7 @@ let
   zope_browserresource = buildPythonPackage rec {
     name = "zope.browserresource-4.0.1";
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       zope_component zope_configuration zope_contenttype zope_i18n
       zope_interface zope_location zope_publisher zope_schema zope_traversing
     ];
@@ -9763,7 +9823,7 @@ let
     # all tests fail
     doCheck = false;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/z/zope.browserresource/zope.browserresource-4.0.1.zip";
       md5 = "81bbe92c1f04725561470f89d73222c5";
     };
@@ -9774,12 +9834,12 @@ let
   zope_component = buildPythonPackage rec {
     name = "zope.component-4.2.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.component/zope.component-4.2.1.tar.gz";
       sha256 = "1gzbr0j6c2h0cqnpi2cjss38wrz1bcwx8xahl3vykgz5laid15l6";
     };
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       zope_configuration zope_event zope_i18nmessageid zope_interface
       zope_testing
     ];
@@ -9796,12 +9856,12 @@ let
   zope_configuration = buildPythonPackage rec {
     name = "zope.configuration-4.0.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.configuration/zope.configuration-4.0.3.tar.gz";
       sha256 = "1x9dfqypgympnlm25p9m43xh4qv3p7d75vksv9pzqibrb4cggw5n";
     };
 
-    propagatedBuildInputs = [ zope_i18nmessageid zope_schema ];
+    propagatedBuildInputs = with self; [ zope_i18nmessageid zope_schema ];
 
     meta = {
         maintainers = [ stdenv.lib.maintainers.goibhniu ];
@@ -9812,7 +9872,7 @@ let
   zope_container = buildPythonPackage rec {
     name = "zope.container-4.0.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.container/${name}.tar.gz";
       md5 = "b24d2303ece65a2d9ce23a5bd074c335";
     };
@@ -9820,7 +9880,7 @@ let
     # a test is failing
     doCheck = false;
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       zodb3 zope_broken zope_dottedname zope_publisher
       zope_filerepresentation zope_lifecycleevent zope_size
       zope_traversing
@@ -9835,7 +9895,7 @@ let
   zope_contenttype = buildPythonPackage rec {
     name = "zope.contenttype-4.0.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.contenttype/${name}.tar.gz";
       md5 = "171be44753e86742da8c81b3ad008ce0";
     };
@@ -9849,7 +9909,7 @@ let
   zope_dottedname = buildPythonPackage rec {
     name = "zope.dottedname-3.4.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.dottedname/${name}.tar.gz";
       md5 = "62d639f75b31d2d864fe5982cb23959c";
     };
@@ -9863,7 +9923,7 @@ let
     name = "zope.event-${version}";
     version = "4.0.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.event/${name}.tar.gz";
       sha256 = "1w858k9kmgzfj36h65kp27m9slrmykvi5cjq6c119xqnaz5gdzgm";
     };
@@ -9881,12 +9941,12 @@ let
      name = "zope.exceptions-${version}";
      version = "4.0.5";
 
-     src = fetchurl {
+     src = pkgs.fetchurl {
        url = "http://pypi.python.org/packages/source/z/zope.exceptions/${name}.tar.gz";
        md5 = "c95569fcb444ae541777de7ae5297492";
      };
 
-     propagatedBuildInputs = [ zope_interface ];
+     propagatedBuildInputs = with self; [ zope_interface ];
 
      meta = {
        description = "Exception interfaces and implementations";
@@ -9900,12 +9960,12 @@ let
   zope_filerepresentation = buildPythonPackage rec {
     name = "zope.filerepresentation-3.6.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.filerepresentation/${name}.tar.gz";
       md5 = "4a7a434094f4bfa99a7f22e75966c359";
     };
 
-    propagatedBuildInputs = [ zope_schema ];
+    propagatedBuildInputs = with self; [ zope_schema ];
 
     meta = {
         maintainers = [ stdenv.lib.maintainers.goibhniu ];
@@ -9916,12 +9976,12 @@ let
   zope_i18n = buildPythonPackage rec {
     name = "zope.i18n-3.8.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.i18n/${name}.tar.gz";
       sha256 = "045nnimmshibcq71yym2d8yrs6wzzhxq5gl7wxjnkpyjm5y0hfkm";
     };
 
-    propagatedBuildInputs = [ pytz zope_component ];
+    propagatedBuildInputs = with self; [ pytz zope_component ];
 
     meta = {
         maintainers = [ stdenv.lib.maintainers.goibhniu ];
@@ -9932,7 +9992,7 @@ let
   zope_i18nmessageid = buildPythonPackage rec {
     name = "zope.i18nmessageid-4.0.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.i18nmessageid/zope.i18nmessageid-4.0.3.tar.gz";
       sha256 = "1rslyph0klk58dmjjy4j0jxy21k03azksixc3x2xhqbkv97cmzml";
     };
@@ -9946,12 +10006,12 @@ let
   zope_lifecycleevent = buildPythonPackage rec {
     name = "zope.lifecycleevent-3.7.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.lifecycleevent/${name}.tar.gz";
       sha256 = "0s5brphqzzz89cykg61gy7zcmz0ryq1jj2va7gh2n1b3cccllp95";
     };
 
-    propagatedBuildInputs = [ zope_event zope_component ];
+    propagatedBuildInputs = with self; [ zope_event zope_component ];
 
     meta = {
         maintainers = [ stdenv.lib.maintainers.goibhniu ];
@@ -9962,12 +10022,12 @@ let
   zope_location = buildPythonPackage rec {
     name = "zope.location-4.0.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.location/zope.location-4.0.3.tar.gz";
       sha256 = "1nj9da4ksiyv3h8n2vpzwd0pb03mdsh7zy87hfpx72b6p2zcwg74";
     };
 
-    propagatedBuildInputs = [ zope_proxy ];
+    propagatedBuildInputs = with self; [ zope_proxy ];
 
     # ignore circular dependency on zope_schema
     preBuild = ''
@@ -9985,12 +10045,12 @@ let
   zope_proxy = buildPythonPackage rec {
     name = "zope.proxy-4.1.4";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.proxy/${name}.tar.gz";
       md5 = "3bcaf8b8512a99649ecf2f158c11d05b";
     };
 
-    propagatedBuildInputs = [ zope_interface ];
+    propagatedBuildInputs = with self; [ zope_interface ];
 
     meta = {
         maintainers = [ stdenv.lib.maintainers.goibhniu ];
@@ -10001,12 +10061,12 @@ let
   zope_publisher = buildPythonPackage rec {
     name = "zope.publisher-3.12.6";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.publisher/${name}.tar.gz";
       md5 = "495131970cc7cb14de8e517fb3857ade";
     };
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       zope_browser zope_contenttype zope_i18n zope_security
     ];
 
@@ -10019,12 +10079,12 @@ let
   zope_schema = buildPythonPackage rec {
     name = "zope.schema-4.4.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.schema/${name}.tar.gz";
       sha256 = "1p943jdxb587dh7php4vx04qvn7b2877hr4qs5zyckvp5afhhank";
     };
 
-    propagatedBuildInputs = [ zope_location zope_event zope_interface zope_testing ] ++ optional isPy26 ordereddict;
+    propagatedBuildInputs = with self; [ zope_location zope_event zope_interface zope_testing ] ++ optional isPy26 ordereddict;
 
     meta = {
         maintainers = [ stdenv.lib.maintainers.goibhniu ];
@@ -10035,12 +10095,12 @@ let
   zope_security = buildPythonPackage rec {
     name = "zope.security-4.0.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.security/${name}.tar.gz";
       md5 = "27d1f2873a0ee9c1f485f7b8f22d8e1c";
     };
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       zope_component zope_configuration zope_i18nmessageid zope_schema
       zope_proxy zope_testrunner
     ];
@@ -10054,12 +10114,12 @@ let
   zope_size = buildPythonPackage rec {
     name = "zope.size-3.5.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.size/${name}.tar.gz";
       sha256 = "006xfkhvmypwd3ww9gbba4zly7n9w30bpp1h74d53la7l7fiqk2f";
     };
 
-    propagatedBuildInputs = [ zope_i18nmessageid zope_interface ];
+    propagatedBuildInputs = with self; [ zope_i18nmessageid zope_interface ];
 
     meta = {
         maintainers = [ stdenv.lib.maintainers.goibhniu ];
@@ -10072,13 +10132,13 @@ let
 
     doCheck = !isPyPy; # https://github.com/zopefoundation/zope.sqlalchemy/issues/12
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.sqlalchemy/${name}.zip";
       md5 = "0a468bd5b8884cd29fb71acbf7eaa31e";
     };
 
-    buildInputs = [ zope_testing zope_interface ];
-    propagatedBuildInputs = [ sqlalchemy9 transaction ];
+    buildInputs = with self; [ zope_testing zope_interface ];
+    propagatedBuildInputs = with self; [ sqlalchemy9 transaction ];
 
     meta = {
       maintainers = [
@@ -10094,14 +10154,14 @@ let
     name = "zope.testing-${version}";
     version = "4.1.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.testing/${name}.tar.gz";
       md5 = "6c73c5b668a67fdc116a25b884058ed9";
     };
 
     doCheck = !(python.isPypy or false);
 
-    propagatedBuildInputs = [ zope_interface zope_exceptions zope_location ];
+    propagatedBuildInputs = with self; [ zope_interface zope_exceptions zope_location ];
 
     meta = {
       description = "Zope testing helpers";
@@ -10116,12 +10176,12 @@ let
     name = "zope.testrunner-${version}";
     version = "4.4.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.testrunner/${name}.zip";
       sha256 = "1dwk35kg0bmj2lzp4fd2bgp6dv64q5sda09bf0y8j63y53vqbsw8";
     };
 
-    propagatedBuildInputs = [ zope_interface zope_exceptions zope_testing six ] ++ optional (!python.is_py3k or false) subunit;
+    propagatedBuildInputs = with self; [ zope_interface zope_exceptions zope_testing six ] ++ optional (!python.is_py3k or false) subunit;
 
     doCheck = true;
 
@@ -10137,12 +10197,12 @@ let
   zope_traversing = buildPythonPackage rec {
     name = "zope.traversing-4.0.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.traversing/${name}.zip";
       md5 = "5cc40c552f953939f7c597ebbedd586f";
     };
 
-    propagatedBuildInputs = [ zope_location zope_security zope_publisher transaction zope_tales ];
+    propagatedBuildInputs = with self; [ zope_location zope_security zope_publisher transaction zope_tales ];
 
     # circular dependency on zope_browserresource
     doCheck = false;
@@ -10156,12 +10216,12 @@ let
   zope_interface = buildPythonPackage rec {
     name = "zope.interface-4.1.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/z/zope.interface/${name}.tar.gz";
       md5 = "edcd5f719c5eb2e18894c4d06e29b6c6";
     };
 
-    propagatedBuildInputs = [ zope_event ];
+    propagatedBuildInputs = with self; [ zope_event ];
 
     meta = {
       description = "Zope.Interface";
@@ -10171,36 +10231,34 @@ let
     };
   };
 
+  hgsvn = buildPythonPackage rec {
+    name = "hgsvn-0.3.5";
+    src = pkgs.fetchurl rec {
+      url = "http://pypi.python.org/packages/source/h/hgsvn/${name}.zip";
+      sha256 = "043yvkjf9hgm0xzhmwj1qk3fsmbgwm39f4wsqkscib9wfvxs8wbg";
+    };
+    disabled = isPy3k || isPyPy;
 
-  # XXX: link broken
-  # hgsvn = buildPythonPackage rec {
-  #   name = "hgsvn-0.1.8";
-  #   src = fetchurl rec {
-  #     name = "hgsvn-0.1.8.tar.gz";
-  #     url = "http://pypi.python.org/packages/source/h/hgsvn/${name}.tar.gz#md5=56209eae48b955754e09185712123428";
-  #     sha256 = "18a7bj1i0m4shkxmdvw1ci5i0isq5vqf0bpwgrhnk305rijvbpch";
-  #   };
-  #
-  #   buildInputs = [ pkgs.setuptools ];
-  #   doCheck = false;
-  #
-  #     meta = {
-  #     description = "HgSVN";
-  #     homepage = http://pypi.python.org/pypi/hgsvn;
-  #   };
-  # };
+    buildInputs = with self; [ pkgs.setuptools ];
+    doCheck = false;
+
+      meta = {
+      description = "HgSVN";
+      homepage = http://pypi.python.org/pypi/hgsvn;
+    };
+  };
 
   cliapp = buildPythonPackage rec {
     name = "cliapp-${version}";
     version = "1.20140719";
     disabled = isPy3k;
 
-    src = fetchurl rec {
+    src = pkgs.fetchurl rec {
       url = "http://code.liw.fi/debian/pool/main/p/python-cliapp/python-cliapp_${version}.orig.tar.gz";
       sha256 = "0kxl2q85n4ggvbw2m8crl11x8n637mx6y3a3b5ydw8nhlsiqijgp";
     };
 
-    buildInputs = [ sphinx ];
+    buildInputs = with self; [ sphinx ];
 
     # error: invalid command 'test'
     doCheck = false;
@@ -10216,9 +10274,9 @@ let
   tornado = buildPythonPackage rec {
     name = "tornado-3.2";
 
-    propagatedBuildInputs = [ backports_ssl_match_hostname_3_4_0_2 ];
+    propagatedBuildInputs = with self; [ backports_ssl_match_hostname_3_4_0_2 ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/t/tornado/${name}.tar.gz";
       md5 = "bd83cee5f1a5c5e139e87996d00b251b";
     };
@@ -10228,13 +10286,13 @@ let
 
 
   tornadokick = buildPythonPackage rec {
-    name = "tornadokick-2014.07.23";
+    name = "tornadokick-0.2.1";
 
-    propagatedBuildInputs = [ tornado ];
+    propagatedBuildInputs = with self; [ tornado ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/t/tornadokick/${name}.tar.gz";
-      md5 = "201d26de2993a554b16140af3b4ee1b6";
+      md5 = "95ee5a295ce3f361c6f843c4f39cbb8c";
     };
 
     meta = {
@@ -10248,7 +10306,7 @@ let
     version = "0.2-b3634a2c6eb6d6936c3b2c1ef5078bf3a84c40c6";
     name = "screenkey-${version}";
 
-    propagatedBuildInputs = [ pygtk distutils_extra xlib pkgs.xorg.xmodmap ];
+    propagatedBuildInputs = with self; [ pygtk distutils_extra xlib pkgs.xorg.xmodmap ];
 
     preConfigure = ''
       substituteInPlace setup.py --replace "/usr/share" "./share"
@@ -10261,7 +10319,7 @@ let
         --replace "        keybinder.bind(self.options['hotkey'], self.hotkey_cb, show_item)" ""
     '';
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
         url = https://github.com/scs3jb/screenkey.git;
         rev = "b3634a2c6eb6d6936c3b2c1ef5078bf3a84c40c6";
         sha256 = "eb754917e98e03cb9d528eb5f57a08c88fa7a8172f92325a9fe796b2daf14db0";
@@ -10282,13 +10340,13 @@ let
 
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/t/tarman/tarman-${version}.zip";
       sha256 = "0ri6gj883k042xaxa2d5ymmhbw2bfcxdzhh4bz7700ibxwxxj62h";
     };
 
-    buildInputs = [ unittest2 nose mock ];
-    propagatedBuildInputs = [ modules.curses libarchive ];
+    buildInputs = with self; [ unittest2 nose mock ];
+    propagatedBuildInputs = with self; [ modules.curses libarchive ];
 
     # tests are still failing
     doCheck = false;
@@ -10300,36 +10358,35 @@ let
     name = "libarchive-${version}";
     disabled = isPy3k;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://python-libarchive.googlecode.com/files/python-libarchive-${version}.tar.gz";
       sha256 = "0j4ibc4mvq64ljya9max8832jafi04jciff9ia9qy0xhhlwkcx8x";
     };
 
-    propagatedBuildInputs = [ pkgs.libarchive ];
+    propagatedBuildInputs = with self; [ pkgs.libarchive ];
   };
 
 
   pyzmq = buildPythonPackage rec {
     name = "pyzmq-13.0.0";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyzmq/pyzmq-13.0.0.zip";
       md5 = "fa2199022e54a393052d380c6e1a0934";
     };
-    buildInputs = [ pkgs.zeromq3 ];
-    propagatedBuildInputs = [  ];
+    buildInputs = with self; [ pkgs.zeromq3 ];
     doCheck = false;
   };
 
 
   tissue = buildPythonPackage rec {
     name = "tissue-0.9.2";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/t/tissue/${name}.tar.gz";
       md5 = "87dbcdafff41bfa1b424413f79aa9153";
     };
 
-    buildInputs = [ nose ];
-    propagatedBuildInputs = [ pep8 ];
+    buildInputs = with self; [ nose ];
+    propagatedBuildInputs = with self; [ pep8 ];
 
     meta = {
       maintainers = [
@@ -10345,12 +10402,12 @@ let
     name = "tracing-${version}";
     version = "0.8";
 
-    src = fetchurl rec {
+    src = pkgs.fetchurl rec {
       url = "http://code.liw.fi/debian/pool/main/p/python-tracing/python-tracing_${version}.orig.tar.gz";
       sha256 = "1l4ybj5rvrrcxf8csyq7qx52izybd502pmx70zxp46gxqm60d2l0";
     };
 
-    buildInputs = [ sphinx ];
+    buildInputs = with self; [ sphinx ];
 
     # error: invalid command 'test'
     doCheck = false;
@@ -10365,7 +10422,7 @@ let
   translationstring = buildPythonPackage rec {
     name = "translationstring-1.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/t/translationstring/${name}.tar.gz";
       md5 = "0979b46d8f0f852810c8ec4be5c26cf2";
     };
@@ -10385,12 +10442,12 @@ let
     version = "0.23";
     disabled = isPy3k;
 
-    src = fetchurl rec {
+    src = pkgs.fetchurl rec {
       url = "http://code.liw.fi/debian/pool/main/p/python-ttystatus/python-ttystatus_${version}.orig.tar.gz";
       sha256 = "0ymimviyjyh2iizqilg88g4p26f5vpq1zm3cvg7dr7q4y3gmik8y";
     };
 
-    buildInputs = [ sphinx ];
+    buildInputs = with self; [ sphinx ];
 
     # error: invalid command 'test'
     doCheck = false;
@@ -10406,13 +10463,13 @@ let
     name = "larch-${version}";
     version = "1.20131130";
 
-    src = fetchurl rec {
+    src = pkgs.fetchurl rec {
       url = "http://code.liw.fi/debian/pool/main/p/python-larch/python-larch_${version}.orig.tar.gz";
       sha256 = "1hfanp9l6yc5348i3f5sb8c5s4r43y382hflnbl6cnz4pm8yh5r7";
     };
 
-    buildInputs = [ sphinx ];
-    propagatedBuildInputs = [ tracing ttystatus cliapp ];
+    buildInputs = with self; [ sphinx ];
+    propagatedBuildInputs = with self; [ tracing ttystatus cliapp ];
 
     # error: invalid command 'test'
     doCheck = false;
@@ -10428,12 +10485,12 @@ let
   websocket_client = buildPythonPackage rec {
     name = "websocket-client-0.17.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/w/websocket-client/${name}.tar.gz";
       md5 = "c86591719085eaf4a01c2275e0c834fc";
     };
 
-    propagatedBuildInputs = [ six backports_ssl_match_hostname_3_4_0_2 unittest2 argparse ];
+    propagatedBuildInputs = with self; [ six backports_ssl_match_hostname_3_4_0_2 unittest2 argparse ];
 
     meta = {
       homepage = https://github.com/liris/websocket-client;
@@ -10446,12 +10503,12 @@ let
   webhelpers = buildPythonPackage rec {
     name = "WebHelpers-1.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/W/WebHelpers/${name}.tar.gz";
       md5 = "32749ffadfc40fea51075a7def32588b";
     };
 
-    buildInputs = [ routes markupsafe webob nose ];
+    buildInputs = with self; [ routes markupsafe webob nose ];
 
     # TODO: failing tests https://bitbucket.org/bbangert/webhelpers/pull-request/1/fix-error-on-webob-123/diff
     doCheck = false;
@@ -10469,7 +10526,7 @@ let
     name = "whisper-${version}";
     version = "0.9.12";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/w/whisper/${name}.tar.gz";
       md5 = "5fac757cc4822ab0678dbe0d781d904e";
     };
@@ -10488,12 +10545,12 @@ let
     name = "carbon-${version}";
     version = "0.9.12";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/c/carbon/${name}.tar.gz";
       md5 = "66967d5a622fd29973838fcd10eb34f3";
     };
 
-    propagatedBuildInputs = [ whisper txamqp zope_interface twisted ];
+    propagatedBuildInputs = with self; [ whisper txamqp zope_interface twisted ];
 
     # error: invalid command 'test'
     doCheck = false;
@@ -10506,10 +10563,28 @@ let
   };
 
 
+  ujson = buildPythonPackage rec {
+    name = "ujson-1.33";
+
+    disabled = isPyPy;
+
+    src = pkgs.fetchurl {
+      url = "https://pypi.python.org/packages/source/u/ujson/${name}.zip";
+      md5 = "8148a2493fff78940feab1e11dc0a893";
+    };
+
+    meta = {
+      homepage = http://pypi.python.org/pypi/ujson;
+      description = "Ultra fast JSON encoder and decoder for Python";
+      license = licenses.bsd3;
+    };
+  };
+
+
   unidecode = buildPythonPackage rec {
     name = "Unidecode-0.04.12";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/U/Unidecode/${name}.tar.gz";
       md5 = "351dc98f4512bdd2e93f7a6c498730eb";
     };
@@ -10526,7 +10601,7 @@ let
   pyusb = buildPythonPackage rec {
     name = "pyusb-1.0.0b1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pyusb/${name}.tar.gz";
       md5 = "5cc9c7dd77b4d12fcc22fee3b39844bc";
     };
@@ -10551,12 +10626,12 @@ let
     name = "usbtmc-${version}";
     version = "0.5";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/python-ivi/python-usbtmc/archive/v${version}.tar.gz";
       sha256 = "0xn8whjcdn8wgs9j1gj7sw7fh425akdmq3hi448m36fywldbhryg";
     };
 
-    propagatedBuildInputs = [ pyusb ];
+    propagatedBuildInputs = with self; [ pyusb ];
 
     meta = {
       description = "Python implementation of the USBTMC instrument control protocol";
@@ -10571,12 +10646,12 @@ let
     name = "txamqp-${version}";
     version = "0.3";
 
-    src = fetchurl rec {
+    src = pkgs.fetchurl rec {
       url = "https://launchpad.net/txamqp/trunk/${version}/+download/python-txamqp_${version}.orig.tar.gz";
       sha256 = "1r2ha0r7g14i4b5figv2spizjrmgfpspdbl1m031lw9px2hhm463";
     };
 
-    buildInputs = [ twisted ];
+    buildInputs = with self; [ twisted ];
 
     meta = {
       homepage = https://launchpad.net/txamqp;
@@ -10589,7 +10664,7 @@ let
     name = "versiontools-1.9.1";
     doCheck = (!isPy3k);
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/v/versiontools/${name}.tar.gz";
       sha256 = "1xhl6kl7f4srgnw6zw4lr8j2z5vmrbaa83nzn2c9r2m1hwl36sd9";
     };
@@ -10600,12 +10675,12 @@ let
     name = "graphite-web-${version}";
     version = "0.9.12";
 
-    src = fetchurl rec {
+    src = pkgs.fetchurl rec {
       url = "https://pypi.python.org/packages/source/g/graphite-web/${name}.tar.gz";
       md5 = "8edbb61f1ffe11c181bd2cb9ec977c72";
     };
 
-    propagatedBuildInputs = [ django_1_3 django_tagging modules.sqlite3 whisper pkgs.pycairo ldap memcached ];
+    propagatedBuildInputs = with self; [ django_1_3 django_tagging modules.sqlite3 whisper pkgs.pycairo ldap memcached ];
 
     postInstall = ''
       wrapProgram $out/bin/run-graphite-devel-server.py \
@@ -10633,7 +10708,7 @@ let
     name = "graphite-api-1.0.1";
     disabled = isPyPy;
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = "https://github.com/brutasse/graphite-api.git";
       rev = "b6f75e8a08fae695c094fece6de611b893fc65fb";
       sha256 = "41b90d5f35e99a020a6b1b77938690652521d1841b3165574fcfcee807ce4e6a";
@@ -10641,7 +10716,7 @@ let
 
     checkPhase = "nosetests";
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
       flask
       flask_cache
       cairocffi
@@ -10654,7 +10729,7 @@ let
       tzlocal
     ];
 
-    buildInputs = [
+    buildInputs = with self; [
       nose
       mock
     ];
@@ -10671,13 +10746,13 @@ let
   graphite_influxdb = buildPythonPackage rec {
     name = "graphite-influxdb-0.3";
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = "https://github.com/vimeo/graphite-influxdb.git";
       rev = "2273d12a24e1d804685a36debfd4224b7416b62f";
       sha256 = "e386eaf190793d3ad0a42a74b9e137a968a51fc3806f602ff756e09c0c0648a8";
     };
 
-    propagatedBuildInputs = [ influxdb graphite_api ];
+    propagatedBuildInputs = with self; [ influxdb graphite_api ];
 
     passthru.moduleName = "graphite_influxdb.InfluxdbFinder";
 
@@ -10694,12 +10769,12 @@ let
 
     version = "1.11";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/mopidy/pyspotify/archive/v1.11.tar.gz";
       sha256 = "089ml6pqr3f2d15n70jpzbaqjp5pjgqlyv4algkxw92xscjw2izg";
     };
 
-    buildInputs = [ pkgs.libspotify ]
+    buildInputs = with self; [ pkgs.libspotify ]
       ++ stdenv.lib.optional stdenv.isDarwin pkgs.install_name_tool;
 
     # python zip complains about old timestamps
@@ -10732,7 +10807,7 @@ let
 
     version = "1.2.0";
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = "https://github.com/jodal/pykka.git";
       rev = "refs/tags/v${version}";
       sha256 = "17vv2q636zp2fvxrp7ckgnz1ifaffcj5vdxvfb4isd1d32c49amb";
@@ -10753,7 +10828,7 @@ let
 
     version = "git-20130303";
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = "https://github.com/Lawouach/WebSocket-for-Python.git";
       rev = "ace276500ca7e4c357595e3773be151d37bcd6e2";
       sha256 = "04m4m3ncn7g4rb81xg5n28imns7rsq8d2w98gjpaib6vlmyly3g1";
@@ -10778,7 +10853,7 @@ let
     name = "gdata-${version}";
     version = "2.0.17";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://gdata-python-client.googlecode.com/files/${name}.tar.gz";
       # sha1 = "d2d9f60699611f95dd8c328691a2555e76191c0c";
       sha256 = "0bdaqmicpbj9v3p0swvyrqs7m35bzwdw1gy56d3k09np692jfwmd";
@@ -10799,12 +10874,12 @@ let
     version = "0.11";
     disabled = isPy34;
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://freshfoo.com/projects/IMAPClient/${name}.tar.gz";
       sha256 = "1w54h8gz25qf6ggazzp6xf7kvsyiadsjfkkk17gm0p6pmzvvccbn";
     };
 
-    buildInputs = [ mock ];
+    buildInputs = with self; [ mock ];
 
     preConfigure = ''
       sed -i '/distribute_setup/d' setup.py
@@ -10822,7 +10897,7 @@ let
     name = "Logbook-${version}";
     version = "0.4.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/L/Logbook/${name}.tar.gz";
       # md5 = "143cb15af4c4a784ca785a1546ad1b93";
       sha256 = "1g2pnhxh7m64qsrs0ifwcmpfk7gqjvrawd8z66i001rsdnq778v0";
@@ -10837,14 +10912,14 @@ let
 
   libvirt = pkgs.stdenv.mkDerivation rec {
     name = "libvirt-python-${version}";
-    version = "1.2.7";
+    version = "1.2.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://libvirt.org/sources/python/${name}.tar.gz";
-      sha256 = "0wg0pnvrwfjdl8haxr2dyfhdasddq97zy6l27xwrvd1hnh1394f1";
+      sha256 = "1vbrkwvsvcfgibdw4drcypg2n6zcpi3zv23zw20nkk5fjfp26w4g";
     };
 
-    buildInputs = [ python pkgs.pkgconfig pkgs.libvirt lxml ];
+    buildInputs = with self; [ python pkgs.pkgconfig pkgs.libvirt lxml ];
 
     buildPhase = "python setup.py build";
 
@@ -10861,13 +10936,13 @@ let
     name = "searx-${rev}";
     rev = "44d3af9fb2482cd0df1a8ababbe2fdf27ab33172";
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = "git://github.com/asciimoo/searx";
       inherit rev;
       sha256 = "1w505pzdkkcglq782wg7f5fxrw9i5jzp7px20c2xz18pps2m3rsm";
     };
 
-    propagatedBuildInputs = [ pyyaml lxml grequests flaskbabel flask requests
+    propagatedBuildInputs = with self; [ pyyaml lxml grequests flaskbabel flask requests
       gevent speaklater Babel pytz dateutil ];
 
     meta = {
@@ -10881,12 +10956,12 @@ let
   grequests = buildPythonPackage rec {
     name = "grequests-0.2.0";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/g/grequests/${name}.tar.gz";
       sha256 = "0lafzax5igbh8y4x0krizr573wjsxz7bhvwygiah6qwrzv83kv5c";
     };
 
-    buildInputs = [ requests gevent ];
+    buildInputs = with self; [ requests gevent ];
 
     meta = {
       description = "GRequests allows you to use Requests with Gevent to make asyncronous HTTP Requests easily.";
@@ -10899,12 +10974,12 @@ let
   flaskbabel = buildPythonPackage rec {
     name = "Flask-Babel-0.9";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/F/Flask-Babel/${name}.tar.gz";
       sha256 = "0k7vk4k54y55ma0nx2k5s0phfqbriwslhy5shh3b0d046q7ibzaa";
     };
 
-    buildInputs = [ flask jinja2 speaklater Babel pytz ];
+    buildInputs = with self; [ flask jinja2 speaklater Babel pytz ];
 
     meta = {
       description = "Adds i18n/l10n support to Flask applications";
@@ -10917,7 +10992,7 @@ let
   speaklater = buildPythonPackage rec {
     name = "speaklater-1.3";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/speaklater/${name}.tar.gz";
       sha256 = "1ab5dbfzzgz6cnz4xlwx79gz83id4bhiw67k1cgqrlzfs0va7zjr";
     };
@@ -10933,7 +11008,7 @@ let
   power = buildPythonPackage rec {
     name = "power-1.2";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/power/${name}.tar.gz";
       sha256 = "09a00af8357f63dbb1a1eb13b82e39ccc0a14d6d2e44e5b235afe60ce8ee8195";
     };
@@ -10949,12 +11024,12 @@ let
     version = "1.1.2";
     name = "udiskie-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://github.com/coldfix/udiskie/archive/${version}.tar.gz";
       sha256 = "07fyvwp4rga47ayfsmb79p2784sqrih0sglwnd9c4x6g63xgljvb";
     };
 
-    propagatedBuildInputs = with pythonPackages; [ pygtk pyyaml pygobject dbus notify pkgs.udisks2 pkgs.gettext ];
+    propagatedBuildInputs = with self; [ pygtk pyyaml pygobject dbus notify pkgs.udisks2 pkgs.gettext ];
 
     # tests require dbusmock
     doCheck = false;
@@ -10970,14 +11045,14 @@ let
   pythonefl_1_11 = buildPythonPackage rec {
     name = "python-efl-${version}";
     version = "1.11.0";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://download.enlightenment.org/rel/bindings/python/${name}.tar.xz";
       sha256 = "1d4hj39alg6j7ah1bc8wvlka9d13i8iy3fxxraik2f60w6811i48";
     };
     preConfigure = ''
-      export NIX_CFLAGS_COMPILE="-I${pkgs.e19.efl}/include/eo-1 -I${pkgs.e19.efl}/include/eina-1 -I${pkgs.e19.efl}/include/eina-1/eina -I${pkgs.e19.efl}/include/evas-1 -I${dbus}/include/dbus-1.0 -I${pkgs.e19.efl}/include/efl-1 -I${pkgs.e19.efl}/include/eet-1 -I${pkgs.e19.efl}/include/ecore-1 -I${pkgs.e19.efl}/include/ecore-evas-1 -I${pkgs.e19.efl}/include/ecore-file-1 -I${pkgs.e19.efl}/include/ecore-input-1 -I${pkgs.e19.efl}/include/ecore-imf-1 -I${pkgs.e19.efl}/include/ecore-con-1 -I${pkgs.e19.efl}/include/edje-1 -I${pkgs.e19.efl}/include/eldbus-1 -I${pkgs.e19.efl}/include/efreet-1 -I${pkgs.e19.efl}/include/ethumb-client-1 -I${pkgs.e19.efl}/include/ethumb-1 -I${pkgs.e19.efl}/include/ecore-x-1 $NIX_CFLAGS_COMPILE"
+      export NIX_CFLAGS_COMPILE="-I${pkgs.e19.efl}/include/eo-1 -I${pkgs.e19.efl}/include/eina-1 -I${pkgs.e19.efl}/include/eina-1/eina -I${pkgs.e19.efl}/include/evas-1 -I${self.dbus}/include/dbus-1.0 -I${pkgs.e19.efl}/include/efl-1 -I${pkgs.e19.efl}/include/eet-1 -I${pkgs.e19.efl}/include/ecore-1 -I${pkgs.e19.efl}/include/ecore-evas-1 -I${pkgs.e19.efl}/include/ecore-file-1 -I${pkgs.e19.efl}/include/ecore-input-1 -I${pkgs.e19.efl}/include/ecore-imf-1 -I${pkgs.e19.efl}/include/ecore-con-1 -I${pkgs.e19.efl}/include/edje-1 -I${pkgs.e19.efl}/include/eldbus-1 -I${pkgs.e19.efl}/include/efreet-1 -I${pkgs.e19.efl}/include/ethumb-client-1 -I${pkgs.e19.efl}/include/ethumb-1 -I${pkgs.e19.efl}/include/ecore-x-1 $NIX_CFLAGS_COMPILE"
     '';
-    buildInputs = [ pkgs.pkgconfig pkgs.e19.efl pkgs.e19.elementary ];
+    buildInputs = with self; [ pkgs.pkgconfig pkgs.e19.efl pkgs.e19.elementary ];
     meta = {
       description = "Python bindings for EFL and Elementary.";
       homepage = http://enlightenment.org/;
@@ -10990,14 +11065,14 @@ let
   pythonefl = buildPythonPackage rec {
     name = "python-efl-${version}";
     version = "1.10.0";
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "http://download.enlightenment.org/rel/bindings/python/${name}.tar.gz";
       sha256 = "1inv2qalnm9paifdwyh9q3ffxcp9bjj92phvfw1rgkaildvfji5i";
     };
     preConfigure = ''
-      export NIX_CFLAGS_COMPILE="-I${pkgs.e18.efl}/include/eo-1 -I${pkgs.e18.efl}/include/eina-1 -I${pkgs.e18.efl}/include/eina-1/eina -I${pkgs.e18.efl}/include/evas-1 -I${dbus}/include/dbus-1.0 -I${pkgs.e18.efl}/include/efl-1 -I${pkgs.e18.efl}/include/eet-1 -I${pkgs.e18.efl}/include/ecore-1 -I${pkgs.e18.efl}/include/ecore-evas-1 -I${pkgs.e18.efl}/include/ecore-file-1 -I${pkgs.e18.efl}/include/ecore-input-1 -I${pkgs.e18.efl}/include/ecore-imf-1 -I${pkgs.e18.efl}/include/ecore-con-1 -I${pkgs.e18.efl}/include/edje-1 -I${pkgs.e18.efl}/include/eldbus-1 -I${pkgs.e18.efl}/include/efreet-1 -I${pkgs.e18.efl}/include/ethumb-client-1 -I${pkgs.e18.efl}/include/ethumb-1 -I${pkgs.e18.efl}/include/ecore-x-1 $NIX_CFLAGS_COMPILE"
+      export NIX_CFLAGS_COMPILE="-I${pkgs.e18.efl}/include/eo-1 -I${pkgs.e18.efl}/include/eina-1 -I${pkgs.e18.efl}/include/eina-1/eina -I${pkgs.e18.efl}/include/evas-1 -I${self.dbus}/include/dbus-1.0 -I${pkgs.e18.efl}/include/efl-1 -I${pkgs.e18.efl}/include/eet-1 -I${pkgs.e18.efl}/include/ecore-1 -I${pkgs.e18.efl}/include/ecore-evas-1 -I${pkgs.e18.efl}/include/ecore-file-1 -I${pkgs.e18.efl}/include/ecore-input-1 -I${pkgs.e18.efl}/include/ecore-imf-1 -I${pkgs.e18.efl}/include/ecore-con-1 -I${pkgs.e18.efl}/include/edje-1 -I${pkgs.e18.efl}/include/eldbus-1 -I${pkgs.e18.efl}/include/efreet-1 -I${pkgs.e18.efl}/include/ethumb-client-1 -I${pkgs.e18.efl}/include/ethumb-1 -I${pkgs.e18.efl}/include/ecore-x-1 $NIX_CFLAGS_COMPILE"
     '';
-    buildInputs = [ pkgs.pkgconfig pkgs.e18.efl pkgs.e18.elementary ];
+    buildInputs = with self; [ pkgs.pkgconfig pkgs.e18.efl pkgs.e18.elementary ];
     meta = {
       description = "Python bindings for EFL and Elementary.";
       homepage = http://enlightenment.org/;
@@ -11010,7 +11085,7 @@ let
   snapperGUI = buildPythonPackage rec {
     name = "Snapper-GUI";
 
-    src = fetchgit {
+    src = pkgs.fetchgit {
       url = "https://github.com/ricardomv/snapper-gui";
       rev = "11d98586b122180c75a86fccda45c4d7e3137591";
       sha256 = "7a9f86fc17dbf130526e70c3e925eac30e2c74d6b932efbf7e7cd9fbba6dc4b1";
@@ -11019,7 +11094,7 @@ let
     # no tests available
     doCheck = false;
 
-    propagatedBuildInputs = with pythonPackages; [ pygobject3 dbus ];
+    propagatedBuildInputs = with self; [ pygobject3 dbus ];
 
     meta = {
       homepage = https://github.com/ricardomv/snapper-gui;
@@ -11033,7 +11108,7 @@ let
   redNotebook = buildPythonPackage rec {
     name = "rednotebook-1.8.1";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "mirror://sourceforge/rednotebook/${name}.tar.gz";
       sha256 = "00b7s4xpqpxsbzjvjx9qsx5d84m9pvn383c5di1nsfh35pig0rzn";
     };
@@ -11041,7 +11116,7 @@ let
     # no tests available
     doCheck = false;
 
-    propagatedBuildInputs = with pythonPackages; [ pygtk pywebkitgtk pyyaml chardet ];
+    propagatedBuildInputs = with self; [ pygtk pywebkitgtk pyyaml chardet ];
 
     meta = {
       homepage = http://rednotebook.sourceforge.net/index.html;
@@ -11055,11 +11130,11 @@ let
 
 # python2.7 specific packages
 } // optionalAttrs isPy27 (
-  with pythonPackages;
+  with self;
 
 {
 
-  pypi2nix = pythonPackages.buildPythonPackage rec {
+  pypi2nix = self.buildPythonPackage rec {
     rev = "04a68d8577acbceb88bdf51b1231a9dbdead7003";
     name = "pypi2nix-1.0_${rev}";
 
@@ -11078,11 +11153,29 @@ let
     };
   };
 
+  svg2tikz = self.buildPythonPackage {
+    name = "svg2tikz-1.0.0";
+
+    propagatedBuildInputs = with self; [lxml];
+
+    src = pkgs.fetchgit {
+      url = "https://github.com/kjellmf/svg2tikz";
+      sha256 = "429428ec435e53672b85cdfbb89bb8af0ff9f8238f5d05970729e5177d252d5f";
+      rev = "ad36f2c3818da13c4136d70a0fd8153acf8daef4";
+    };
+
+    meta = {
+      homepage = https://github.com/kjellmf/svg2tikz;
+      description = "An SVG to TikZ converter";
+      license = stdenv.lib.licenses.gpl2Plus;
+      maintainers =  with pkgs.stdenv.lib.maintainers; [gal_bolle];
+    };
+  };
 
-  thumbor = pythonPackages.buildPythonPackage rec {
+  thumbor = self.buildPythonPackage rec {
     name = "thumbor-4.0.4";
 
-    propagatedBuildInputs = [
+    propagatedBuildInputs = with self; [
                     tornado
                     pycrypto
                     pycurl
@@ -11098,7 +11191,7 @@ let
                         ffmpeg = null;
                     }) ];
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/t/thumbor/${name}.tar.gz";
       md5 = "cf639a1cc57ee287b299ace450444408";
     };
@@ -11110,10 +11203,10 @@ let
     };
   };
 
-  thumborPexif = pythonPackages.buildPythonPackage rec {
+  thumborPexif = self.buildPythonPackage rec {
     name = "thumbor-pexif-0.14";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/t/thumbor-pexif/${name}.tar.gz";
       md5 = "fb4cdb60f4a0bead5193fb483ccd3430";
     };
@@ -11130,14 +11223,14 @@ let
     baseName = "pync";
     name     = "${baseName}-${version}";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/${baseName}/${name}.tar.gz";
       md5 = "5cc79077f386a17b539f1e51c05a3650";
     };
 
-    buildInputs = [ pkgs.coreutils ];
+    buildInputs = with self; [ pkgs.coreutils ];
 
-    propagatedBuildInputs = [ dateutil ];
+    propagatedBuildInputs = with self; [ dateutil ];
 
     preInstall = stdenv.lib.optionalString stdenv.isDarwin ''
       sed -i 's|^\([ ]*\)self.bin_path.*$|\1self.bin_path = "${pkgs.rubyLibs.terminal_notifier}/bin/terminal-notifier"|' build/lib/pync/TerminalNotifier.py
@@ -11155,14 +11248,14 @@ let
   weboob = buildPythonPackage rec {
     name = "weboob-0.j";
 
-    src = fetchurl {
+    src = pkgs.fetchurl {
       url = "https://symlink.me/attachments/download/271/${name}.tar.gz";
       md5 = "9e11b1f376ccb87d35995ec87bba5b38";
     };
 
     setupPyBuildFlags = ["--qt" "--xdg"];
 
-    propagatedBuildInputs = [ pillow prettytable pyyaml dateutil gdata requests2 mechanize feedparser lxml pkgs.gnupg pyqt4 pkgs.libyaml simplejson cssselect ];
+    propagatedBuildInputs = with self; [ pillow prettytable pyyaml dateutil gdata requests2 mechanize feedparser lxml pkgs.gnupg pyqt4 pkgs.libyaml simplejson cssselect ];
 
     meta = {
       homepage = http://weboob.org;