summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2015-10-03 13:33:13 +0200
committerVladimír Čunát <vcunat@gmail.com>2015-10-03 13:33:37 +0200
commit5227fb1dd53fcb5918b9342dff4868f4ad68427e (patch)
treed6cd521e3f67944031216a27f740f28f22b73b41 /pkgs/applications
parentd6dd3b8bd1eaeeb21dfdb5051cd4732c748ce5d7 (diff)
parent33373d939a19f465228ddede6d38ce9032b5916b (diff)
downloadnixpkgs-5227fb1dd53fcb5918b9342dff4868f4ad68427e.tar
nixpkgs-5227fb1dd53fcb5918b9342dff4868f4ad68427e.tar.gz
nixpkgs-5227fb1dd53fcb5918b9342dff4868f4ad68427e.tar.bz2
nixpkgs-5227fb1dd53fcb5918b9342dff4868f4ad68427e.tar.lz
nixpkgs-5227fb1dd53fcb5918b9342dff4868f4ad68427e.tar.xz
nixpkgs-5227fb1dd53fcb5918b9342dff4868f4ad68427e.tar.zst
nixpkgs-5227fb1dd53fcb5918b9342dff4868f4ad68427e.zip
Merge commit staging+systemd into closure-size
Many non-conflict problems weren't (fully) resolved in this commit yet.
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/altcoins/bitcoin-xt.nix39
-rw-r--r--pkgs/applications/altcoins/bitcoin.nix11
-rw-r--r--pkgs/applications/altcoins/darkcoin.nix6
-rw-r--r--pkgs/applications/altcoins/default.nix3
-rw-r--r--pkgs/applications/altcoins/litecoin.nix4
-rw-r--r--pkgs/applications/audio/AMB-plugins/default.nix33
-rw-r--r--pkgs/applications/audio/CharacterCompressor/default.nix33
-rw-r--r--pkgs/applications/audio/CompBus/default.nix39
-rw-r--r--pkgs/applications/audio/LazyLimiter/default.nix33
-rw-r--r--pkgs/applications/audio/MBdistortion/default.nix33
-rw-r--r--pkgs/applications/audio/QmidiNet/default.nix21
-rw-r--r--pkgs/applications/audio/RhythmDelay/default.nix33
-rw-r--r--pkgs/applications/audio/VoiceOfFaust/default.nix65
-rw-r--r--pkgs/applications/audio/a2jmidid/default.nix4
-rw-r--r--pkgs/applications/audio/aacgain/default.nix46
-rw-r--r--pkgs/applications/audio/abcde/default.nix16
-rw-r--r--pkgs/applications/audio/amarok/default.nix19
-rw-r--r--pkgs/applications/audio/ardour/ardour3.nix94
-rw-r--r--pkgs/applications/audio/ardour/default.nix59
-rw-r--r--pkgs/applications/audio/artyFX/default.nix22
-rw-r--r--pkgs/applications/audio/audacious/default.nix4
-rw-r--r--pkgs/applications/audio/beast/default.nix8
-rw-r--r--pkgs/applications/audio/bitmeter/default.nix21
-rw-r--r--pkgs/applications/audio/bristol/default.nix8
-rw-r--r--pkgs/applications/audio/bs1770gain/default.nix20
-rw-r--r--pkgs/applications/audio/calf/default.nix6
-rw-r--r--pkgs/applications/audio/cantata/default.nix8
-rw-r--r--pkgs/applications/audio/caps/default.nix4
-rw-r--r--pkgs/applications/audio/caudec/default.nix2
-rw-r--r--pkgs/applications/audio/chuck/default.nix4
-rw-r--r--pkgs/applications/audio/clementine/clementine-spotify-blob.patch25
-rw-r--r--pkgs/applications/audio/clementine/default.nix104
-rw-r--r--pkgs/applications/audio/cmus/default.nix4
-rw-r--r--pkgs/applications/audio/constant-detune-chorus/default.nix33
-rw-r--r--pkgs/applications/audio/csound/default.nix4
-rw-r--r--pkgs/applications/audio/deadbeef/default.nix16
-rw-r--r--pkgs/applications/audio/deadbeef/plugins/mpris2.nix23
-rw-r--r--pkgs/applications/audio/deadbeef/wrapper.nix22
-rw-r--r--pkgs/applications/audio/dfasma/default.nix76
-rw-r--r--pkgs/applications/audio/dirt/default.nix18
-rw-r--r--pkgs/applications/audio/distrho/default.nix34
-rw-r--r--pkgs/applications/audio/drumgizmo/default.nix4
-rw-r--r--pkgs/applications/audio/drumkv1/default.nix10
-rw-r--r--pkgs/applications/audio/easytag/default.nix6
-rw-r--r--pkgs/applications/audio/ekho/default.nix4
-rw-r--r--pkgs/applications/audio/eq10q/default.nix37
-rw-r--r--pkgs/applications/audio/faust/faust2jack.nix4
-rw-r--r--pkgs/applications/audio/faust/faust2jaqt.nix4
-rw-r--r--pkgs/applications/audio/flac/default.nix2
-rw-r--r--pkgs/applications/audio/fldigi/default.nix4
-rw-r--r--pkgs/applications/audio/fluidsynth/default.nix6
-rw-r--r--pkgs/applications/audio/fmit/default.nix49
-rw-r--r--pkgs/applications/audio/fomp/default.nix27
-rw-r--r--pkgs/applications/audio/foo-yc20/default.nix27
-rw-r--r--pkgs/applications/audio/freewheeling/default.nix8
-rw-r--r--pkgs/applications/audio/gjay/default.nix22
-rw-r--r--pkgs/applications/audio/gmpc/default.nix4
-rw-r--r--pkgs/applications/audio/google-musicmanager/default.nix17
-rw-r--r--pkgs/applications/audio/gpodder/default.nix9
-rw-r--r--pkgs/applications/audio/groovebasin/default.nix65
-rw-r--r--pkgs/applications/audio/groovebasin/package.nix4396
-rw-r--r--pkgs/applications/audio/gtkpod/default.nix6
-rw-r--r--pkgs/applications/audio/guitarix/default.nix14
-rw-r--r--pkgs/applications/audio/hydrogen/default.nix4
-rw-r--r--pkgs/applications/audio/ingen/default.nix17
-rw-r--r--pkgs/applications/audio/ir.lv2/default.nix39
-rw-r--r--pkgs/applications/audio/jaaa/default.nix35
-rw-r--r--pkgs/applications/audio/jack-capture/default.nix4
-rw-r--r--pkgs/applications/audio/jack-oscrolloscope/default.nix4
-rw-r--r--pkgs/applications/audio/jack-rack/default.nix4
-rw-r--r--pkgs/applications/audio/jackmeter/default.nix4
-rw-r--r--pkgs/applications/audio/jalv/default.nix4
-rw-r--r--pkgs/applications/audio/keyfinder-cli/default.nix25
-rw-r--r--pkgs/applications/audio/keyfinder/default.nix23
-rw-r--r--pkgs/applications/audio/ladspa-plugins/git.nix32
-rw-r--r--pkgs/applications/audio/ladspa-sdk/default.nix28
-rw-r--r--pkgs/applications/audio/ladspa-sdk/ladspah.nix (renamed from pkgs/applications/audio/ladspa-plugins/ladspah.nix)0
-rw-r--r--pkgs/applications/audio/lash/default.nix4
-rw-r--r--pkgs/applications/audio/linuxsampler/default.nix4
-rw-r--r--pkgs/applications/audio/lmms/default.nix8
-rw-r--r--pkgs/applications/audio/mhwaveedit/default.nix8
-rw-r--r--pkgs/applications/audio/milkytracker/default.nix4
-rw-r--r--pkgs/applications/audio/minimodem/default.nix4
-rw-r--r--pkgs/applications/audio/moc/default.nix4
-rw-r--r--pkgs/applications/audio/mod-distortion/default.nix25
-rw-r--r--pkgs/applications/audio/mopidy-moped/default.nix5
-rw-r--r--pkgs/applications/audio/mopidy-mopify/default.nix4
-rw-r--r--pkgs/applications/audio/mopidy-spotify/default.nix5
-rw-r--r--pkgs/applications/audio/mopidy/default.nix4
-rw-r--r--pkgs/applications/audio/morituri/default.nix2
-rw-r--r--pkgs/applications/audio/mpc/default.nix14
-rw-r--r--pkgs/applications/audio/mpg123/default.nix15
-rw-r--r--pkgs/applications/audio/musescore/default.nix41
-rw-r--r--pkgs/applications/audio/ncmpc/default.nix2
-rw-r--r--pkgs/applications/audio/ncmpcpp/default.nix8
-rw-r--r--pkgs/applications/audio/pamixer/default.nix10
-rw-r--r--pkgs/applications/audio/paprefs/default.nix6
-rw-r--r--pkgs/applications/audio/pavucontrol/default.nix8
-rw-r--r--pkgs/applications/audio/pd-plugins/helmholtz/default.nix1
-rw-r--r--pkgs/applications/audio/pd-plugins/puremapping/default.nix2
-rw-r--r--pkgs/applications/audio/petrifoo/default.nix8
-rw-r--r--pkgs/applications/audio/pianobar/default.nix8
-rw-r--r--pkgs/applications/audio/pithos/default.nix42
-rw-r--r--pkgs/applications/audio/plugin-torture/default.nix28
-rw-r--r--pkgs/applications/audio/ponymix/default.nix21
-rw-r--r--pkgs/applications/audio/praat/default.nix4
-rw-r--r--pkgs/applications/audio/projectm/default.nix8
-rw-r--r--pkgs/applications/audio/puredata/default.nix4
-rw-r--r--pkgs/applications/audio/qjackctl/default.nix4
-rw-r--r--pkgs/applications/audio/qmidiroute/default.nix29
-rw-r--r--pkgs/applications/audio/qmmp/default.nix8
-rw-r--r--pkgs/applications/audio/qsynth/default.nix4
-rw-r--r--pkgs/applications/audio/qtractor/default.nix8
-rw-r--r--pkgs/applications/audio/rakarrack/default.nix4
-rw-r--r--pkgs/applications/audio/renoise/default.nix61
-rw-r--r--pkgs/applications/audio/rkrlv2/default.nix24
-rw-r--r--pkgs/applications/audio/rosegarden/default.nix34
-rw-r--r--pkgs/applications/audio/samplv1/default.nix10
-rw-r--r--pkgs/applications/audio/seq24/default.nix4
-rw-r--r--pkgs/applications/audio/setbfree/default.nix8
-rw-r--r--pkgs/applications/audio/sonic-visualiser/default.nix13
-rw-r--r--pkgs/applications/audio/sooperlooper/default.nix4
-rw-r--r--pkgs/applications/audio/sorcer/default.nix26
-rw-r--r--pkgs/applications/audio/sound-juicer/default.nix6
-rw-r--r--pkgs/applications/audio/spotify/default.nix58
-rw-r--r--pkgs/applications/audio/synthv1/default.nix10
-rw-r--r--pkgs/applications/audio/tetraproc/default.nix43
-rw-r--r--pkgs/applications/audio/tomahawk/default.nix4
-rw-r--r--pkgs/applications/audio/vimpc/default.nix29
-rw-r--r--pkgs/applications/audio/vimus/default.nix30
-rw-r--r--pkgs/applications/audio/vmpk/default.nix4
-rw-r--r--pkgs/applications/audio/vorbis-tools/default.nix25
-rw-r--r--pkgs/applications/audio/wavegain/default.nix24
-rw-r--r--pkgs/applications/audio/x42-plugins/default.nix25
-rw-r--r--pkgs/applications/audio/xsynth-dssi/default.nix4
-rw-r--r--pkgs/applications/audio/yoshimi/default.nix8
-rw-r--r--pkgs/applications/audio/zam-plugins/default.nix29
-rw-r--r--pkgs/applications/audio/zynaddsubfx/default.nix4
-rw-r--r--pkgs/applications/display-managers/lightdm-gtk-greeter/default.nix4
-rw-r--r--pkgs/applications/display-managers/lightdm/default.nix23
-rw-r--r--pkgs/applications/display-managers/lightdm/fix-paths.patch61
-rw-r--r--pkgs/applications/display-managers/sddm/default.nix16
-rw-r--r--pkgs/applications/editors/atom/default.nix17
-rw-r--r--pkgs/applications/editors/bviplus/default.nix21
-rw-r--r--pkgs/applications/editors/codeblocks/default.nix4
-rw-r--r--pkgs/applications/editors/eclipse/default.nix146
-rw-r--r--pkgs/applications/editors/eclipse/plugins.nix359
-rw-r--r--pkgs/applications/editors/ed/default.nix10
-rw-r--r--pkgs/applications/editors/edbrowse/default.nix27
-rw-r--r--pkgs/applications/editors/elvis/default.nix4
-rw-r--r--pkgs/applications/editors/emacs-24/default.nix35
-rw-r--r--pkgs/applications/editors/emacs-24/macport-24.5.nix18
-rw-r--r--pkgs/applications/editors/emacs-modes/cask/default.nix6
-rw-r--r--pkgs/applications/editors/emacs-modes/color-theme-solarized/default.nix17
-rw-r--r--pkgs/applications/editors/emacs-modes/dash/default.nix9
-rw-r--r--pkgs/applications/editors/emacs-modes/erlang/default.nix25
-rw-r--r--pkgs/applications/editors/emacs-modes/flycheck/default.nix6
-rw-r--r--pkgs/applications/editors/emacs-modes/git-modes/default.nix6
-rw-r--r--pkgs/applications/editors/emacs-modes/haskell/default.nix19
-rw-r--r--pkgs/applications/editors/emacs-modes/haskell/git.nix39
-rw-r--r--pkgs/applications/editors/emacs-modes/htmlize/builder.sh4
-rw-r--r--pkgs/applications/editors/emacs-modes/htmlize/default.nix18
-rw-r--r--pkgs/applications/editors/emacs-modes/ido-ubiquitous/default.nix26
-rw-r--r--pkgs/applications/editors/emacs-modes/idris/default.nix4
-rw-r--r--pkgs/applications/editors/emacs-modes/jabber/default.nix8
-rw-r--r--pkgs/applications/editors/emacs-modes/magit/default.nix32
-rw-r--r--pkgs/applications/editors/emacs-modes/monky/default.nix19
-rw-r--r--pkgs/applications/editors/emacs-modes/nyan-mode/default.nix5
-rw-r--r--pkgs/applications/editors/emacs-modes/ocaml/default.nix3
-rw-r--r--pkgs/applications/editors/emacs-modes/offlineimap/default.nix1
-rw-r--r--pkgs/applications/editors/emacs-modes/org/default.nix4
-rw-r--r--pkgs/applications/editors/emacs-modes/proofgeneral/4.3pre.nix6
-rw-r--r--pkgs/applications/editors/emacs-modes/proofgeneral/pg.patch2
-rw-r--r--pkgs/applications/editors/emacs-modes/rudel/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/scala-mode/v2.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/structured-haskell-mode/default.nix23
-rw-r--r--pkgs/applications/editors/emacs-modes/tuareg/default.nix2
-rw-r--r--pkgs/applications/editors/heme/default.nix28
-rw-r--r--pkgs/applications/editors/hexcurse/default.nix22
-rw-r--r--pkgs/applications/editors/ht/default.nix20
-rw-r--r--pkgs/applications/editors/idea/default.nix62
-rw-r--r--pkgs/applications/editors/jedit/default.nix6
-rw-r--r--pkgs/applications/editors/joe/default.nix11
-rw-r--r--pkgs/applications/editors/kile/default.nix8
-rw-r--r--pkgs/applications/editors/leo-editor/default.nix23
-rw-r--r--pkgs/applications/editors/lighttable/default.nix8
-rw-r--r--pkgs/applications/editors/monodevelop/default.nix63
-rw-r--r--pkgs/applications/editors/monodevelop/git-revert-12d610fb3f6dce121df538e36f21d8c2eeb0a6e3.patch57
-rw-r--r--pkgs/applications/editors/nano/default.nix4
-rw-r--r--pkgs/applications/editors/ne/default.nix34
-rw-r--r--pkgs/applications/editors/nedit/default.nix4
-rw-r--r--pkgs/applications/editors/neovim/default.nix190
-rw-r--r--pkgs/applications/editors/netbeans/default.nix27
-rw-r--r--pkgs/applications/editors/netbeans/path.patch11
-rw-r--r--pkgs/applications/editors/nvi/default.nix4
-rw-r--r--pkgs/applications/editors/sublime/default.nix4
-rw-r--r--pkgs/applications/editors/sublime3/default.nix4
-rw-r--r--pkgs/applications/editors/supertux-editor/default.nix39
-rw-r--r--pkgs/applications/editors/texmacs/default.nix16
-rw-r--r--pkgs/applications/editors/texmaker/default.nix7
-rw-r--r--pkgs/applications/editors/texstudio/default.nix11
-rw-r--r--pkgs/applications/editors/textadept/default.nix68
-rw-r--r--pkgs/applications/editors/tiled/default.nix15
-rw-r--r--pkgs/applications/editors/vanubi/default.nix6
-rw-r--r--pkgs/applications/editors/vim/configurable.nix15
-rw-r--r--pkgs/applications/editors/vim/default.nix27
-rw-r--r--pkgs/applications/editors/vim/macvim.nix7
-rw-r--r--pkgs/applications/editors/vim/python_framework.patch15
-rw-r--r--pkgs/applications/editors/vim/qvim.nix6
-rw-r--r--pkgs/applications/editors/yi/wrapper.nix3
-rw-r--r--pkgs/applications/editors/yi/yi.nix39
-rw-r--r--pkgs/applications/editors/zed/default.nix6
-rw-r--r--pkgs/applications/editors/zed/node.nix1430
-rw-r--r--pkgs/applications/gis/qgis/default.nix12
-rw-r--r--pkgs/applications/gis/saga/default.nix6
-rw-r--r--pkgs/applications/graphics/ImageMagick/default.nix106
-rw-r--r--pkgs/applications/graphics/antimony/default.nix41
-rw-r--r--pkgs/applications/graphics/antimony/paths-fix.patch99
-rw-r--r--pkgs/applications/graphics/apitrace/default.nix12
-rw-r--r--pkgs/applications/graphics/darktable/default.nix4
-rw-r--r--pkgs/applications/graphics/digikam/2.nix32
-rw-r--r--pkgs/applications/graphics/digikam/default.nix22
-rw-r--r--pkgs/applications/graphics/djview/default.nix34
-rw-r--r--pkgs/applications/graphics/djview/djview4-qt-4.8.patch38
-rw-r--r--pkgs/applications/graphics/fbida/default.nix9
-rw-r--r--pkgs/applications/graphics/feh/default.nix8
-rw-r--r--pkgs/applications/graphics/geeqie/default.nix15
-rw-r--r--pkgs/applications/graphics/gimp/2.8.nix6
-rw-r--r--pkgs/applications/graphics/gimp/plugins/default.nix29
-rw-r--r--pkgs/applications/graphics/graphicsmagick/default.nix4
-rw-r--r--pkgs/applications/graphics/hoodle/default.nix22
-rw-r--r--pkgs/applications/graphics/inkscape/default.nix28
-rw-r--r--pkgs/applications/graphics/ipe/default.nix14
-rw-r--r--pkgs/applications/graphics/kgraphviewer/default.nix7
-rw-r--r--pkgs/applications/graphics/kuickshow/default.nix4
-rw-r--r--pkgs/applications/graphics/meshlab/default.nix13
-rw-r--r--pkgs/applications/graphics/meshlab/gcc-4.7.patch38
-rw-r--r--pkgs/applications/graphics/meshlab/include-unistd.diff13
-rw-r--r--pkgs/applications/graphics/meshlab/qt-4.8.patch54
-rw-r--r--pkgs/applications/graphics/ocrad/default.nix6
-rw-r--r--pkgs/applications/graphics/openimageio/default.nix14
-rw-r--r--pkgs/applications/graphics/openscad/default.nix9
-rw-r--r--pkgs/applications/graphics/pencil/default.nix15
-rw-r--r--pkgs/applications/graphics/photoqt/default.nix19
-rw-r--r--pkgs/applications/graphics/photoqt/graphicsmagick-path.patch46
-rw-r--r--pkgs/applications/graphics/potrace/default.nix11
-rw-r--r--pkgs/applications/graphics/processing/default.nix10
-rw-r--r--pkgs/applications/graphics/sane/backends.nix2
-rw-r--r--pkgs/applications/graphics/sane/config.nix28
-rw-r--r--pkgs/applications/graphics/shotwell/default.nix38
-rw-r--r--pkgs/applications/graphics/simple-scan/default.nix40
-rw-r--r--pkgs/applications/graphics/solvespace/default.nix2
-rw-r--r--pkgs/applications/graphics/synfigstudio/default.nix41
-rw-r--r--pkgs/applications/graphics/synfigstudio/synfig-cstring.patch12
-rw-r--r--pkgs/applications/graphics/tesseract/default.nix43
-rw-r--r--pkgs/applications/graphics/xaos/default.nix2
-rw-r--r--pkgs/applications/graphics/xfig/builder.sh3
-rw-r--r--pkgs/applications/graphics/xfig/default.nix4
-rw-r--r--pkgs/applications/graphics/yed/default.nix13
-rw-r--r--pkgs/applications/graphics/zgrviewer/default.nix2
-rw-r--r--pkgs/applications/inferno/default.nix4
-rw-r--r--pkgs/applications/kde-apps-15.04/cantor/0001-qalculate-filename-string-type.patch28
-rw-r--r--pkgs/applications/kde-apps-15.04/default.nix693
-rw-r--r--pkgs/applications/kde-apps-15.04/dependencies.nix1812
-rwxr-xr-xpkgs/applications/kde-apps-15.04/dependencies.sh12
-rw-r--r--pkgs/applications/kde-apps-15.04/kde-workspace/ksysguard-0001-disable-signalplottertest.patch36
-rw-r--r--pkgs/applications/kde-apps-15.04/kf5-renames.json70
-rw-r--r--pkgs/applications/kde-apps-15.04/manifest.nix4072
-rwxr-xr-xpkgs/applications/kde-apps-15.04/manifest.sh18
-rw-r--r--pkgs/applications/kde-apps-15.04/packages.json5693
-rwxr-xr-xpkgs/applications/kde-apps-15.04/packages.sh22
-rw-r--r--pkgs/applications/kde-apps-15.04/plasma5-renames.json20
-rw-r--r--pkgs/applications/kde-apps-15.04/renames.json31
-rw-r--r--pkgs/applications/kde-apps-15.04/renames.nix34
-rw-r--r--pkgs/applications/kde-apps-15.04/setup-hook.sh11
-rw-r--r--pkgs/applications/kde-apps-15.08/ark.nix43
-rw-r--r--pkgs/applications/kde-apps-15.08/baloo-widgets.nix33
-rw-r--r--pkgs/applications/kde-apps-15.08/default.nix68
-rw-r--r--pkgs/applications/kde-apps-15.08/dolphin-plugins.nix29
-rw-r--r--pkgs/applications/kde-apps-15.08/dolphin.nix63
-rwxr-xr-xpkgs/applications/kde-apps-15.08/fetchsrcs.sh47
-rw-r--r--pkgs/applications/kde-apps-15.08/ffmpegthumbs.nix27
-rw-r--r--pkgs/applications/kde-apps-15.08/gpgmepp.nix21
-rw-r--r--pkgs/applications/kde-apps-15.08/gwenview.nix37
-rw-r--r--pkgs/applications/kde-apps-15.08/kate.nix63
-rw-r--r--pkgs/applications/kde-apps-15.08/kdegraphics-thumbnailers.nix29
-rw-r--r--pkgs/applications/kde-apps-15.08/kdelibs/0001-old-kde4-cmake-policies.patch56
-rw-r--r--pkgs/applications/kde-apps-15.08/kdelibs/0002-polkit-install-path.patch25
-rw-r--r--pkgs/applications/kde-apps-15.08/kdelibs/default.nix43
-rw-r--r--pkgs/applications/kde-apps-15.08/kdelibs/polkit-install.patch12
-rw-r--r--pkgs/applications/kde-apps-15.08/kdelibs/setup-hook.sh10
-rw-r--r--pkgs/applications/kde-apps-15.08/kgpg.nix31
-rw-r--r--pkgs/applications/kde-apps-15.08/konsole.nix61
-rw-r--r--pkgs/applications/kde-apps-15.08/ksnapshot.nix29
-rw-r--r--pkgs/applications/kde-apps-15.08/libkdcraw.nix27
-rw-r--r--pkgs/applications/kde-apps-15.08/libkexiv2.nix27
-rw-r--r--pkgs/applications/kde-apps-15.08/libkipi.nix25
-rw-r--r--pkgs/applications/kde-apps-15.08/okular.nix41
-rw-r--r--pkgs/applications/kde-apps-15.08/print-manager.nix45
-rw-r--r--pkgs/applications/kde-apps-15.08/srcs.nix1981
-rw-r--r--pkgs/applications/misc/3dfsb/default.nix2
-rw-r--r--pkgs/applications/misc/apvlv/default.nix48
-rw-r--r--pkgs/applications/misc/arbtt/default.nix31
-rw-r--r--pkgs/applications/misc/artha/default.nix21
-rw-r--r--pkgs/applications/misc/audio/sox/0001-Check-for-minimum-size-sphere-headers.patch28
-rw-r--r--pkgs/applications/misc/audio/sox/0002-More-checks-for-invalid-MS-ADPCM-blocks.patch28
-rw-r--r--pkgs/applications/misc/audio/sox/default.nix22
-rw-r--r--pkgs/applications/misc/audio/soxr/default.nix7
-rw-r--r--pkgs/applications/misc/bleachbit/default.nix34
-rw-r--r--pkgs/applications/misc/blender/default.nix14
-rw-r--r--pkgs/applications/misc/blender/sm52.patch12
-rw-r--r--pkgs/applications/misc/calcurse/default.nix27
-rw-r--r--pkgs/applications/misc/calibre/default.nix19
-rw-r--r--pkgs/applications/misc/cherrytree/default.nix37
-rw-r--r--pkgs/applications/misc/chirp/default.nix41
-rw-r--r--pkgs/applications/misc/cmatrix/default.nix27
-rw-r--r--pkgs/applications/misc/cool-retro-term/default.nix7
-rw-r--r--pkgs/applications/misc/cortex/default.nix2
-rw-r--r--pkgs/applications/misc/cura/default.nix4
-rw-r--r--pkgs/applications/misc/cura/lulzbot.nix58
-rw-r--r--pkgs/applications/misc/curaengine/default.nix4
-rw-r--r--pkgs/applications/misc/devilspie2/default.nix38
-rw-r--r--pkgs/applications/misc/dfilemanager/default.nix25
-rw-r--r--pkgs/applications/misc/diffpdf/default.nix55
-rw-r--r--pkgs/applications/misc/diffpdf/fix_path_poppler_qt4.patch16
-rw-r--r--pkgs/applications/misc/direwolf/default.nix36
-rw-r--r--pkgs/applications/misc/dmenu2/default.nix2
-rw-r--r--pkgs/applications/misc/dunst/default.nix14
-rw-r--r--pkgs/applications/misc/eaglemode/default.nix8
-rw-r--r--pkgs/applications/misc/electrum/default.nix6
-rw-r--r--pkgs/applications/misc/evilvte/default.nix6
-rw-r--r--pkgs/applications/misc/finalterm/default.nix6
-rw-r--r--pkgs/applications/misc/freemind/default.nix49
-rw-r--r--pkgs/applications/misc/girara/default.nix4
-rw-r--r--pkgs/applications/misc/gnuradio-osmosdr/default.nix6
-rw-r--r--pkgs/applications/misc/gnuradio/default.nix4
-rw-r--r--pkgs/applications/misc/gnuradio/wrapper.nix23
-rw-r--r--pkgs/applications/misc/goldendict/default.nix28
-rw-r--r--pkgs/applications/misc/goldendict/gcc47.patch40
-rw-r--r--pkgs/applications/misc/goldendict/goldendict-paths.diff10
-rw-r--r--pkgs/applications/misc/gpa/default.nix5
-rw-r--r--pkgs/applications/misc/gphoto2/gphotofs.nix2
-rw-r--r--pkgs/applications/misc/gqrx/default.nix12
-rw-r--r--pkgs/applications/misc/grass/default.nix17
-rw-r--r--pkgs/applications/misc/gxmessage/default.nix20
-rw-r--r--pkgs/applications/misc/hackrf/default.nix28
-rw-r--r--pkgs/applications/misc/hamster-time-tracker/default.nix46
-rw-r--r--pkgs/applications/misc/hello/default.nix (renamed from pkgs/applications/misc/hello/ex-2/default.nix)2
-rw-r--r--pkgs/applications/misc/hello/ex-1/builder.sh9
-rw-r--r--pkgs/applications/misc/hello/ex-1/default.nix16
-rw-r--r--pkgs/applications/misc/hstr/default.nix4
-rw-r--r--pkgs/applications/misc/ikiwiki/default.nix6
-rw-r--r--pkgs/applications/misc/jekyll/Gemfile5
-rw-r--r--pkgs/applications/misc/jekyll/Gemfile.lock77
-rw-r--r--pkgs/applications/misc/jekyll/default.nix20
-rw-r--r--pkgs/applications/misc/jekyll/gemset.nix289
-rw-r--r--pkgs/applications/misc/k2pdfopt/default.nix14
-rw-r--r--pkgs/applications/misc/k3b/default.nix27
-rw-r--r--pkgs/applications/misc/kde-wacomtablet/default.nix5
-rw-r--r--pkgs/applications/misc/kdeconnect/default.nix8
-rw-r--r--pkgs/applications/misc/keepass/default.nix32
-rw-r--r--pkgs/applications/misc/keepass/keepass.patch89
-rw-r--r--pkgs/applications/misc/keepassx/2.0.nix12
-rw-r--r--pkgs/applications/misc/keepassx/default.nix2
-rw-r--r--pkgs/applications/misc/khal/default.nix15
-rw-r--r--pkgs/applications/misc/khard/default.nix29
-rw-r--r--pkgs/applications/misc/kiwix/default.nix110
-rw-r--r--pkgs/applications/misc/krename/default.nix9
-rw-r--r--pkgs/applications/misc/krusader/default.nix7
-rw-r--r--pkgs/applications/misc/llpp/default.nix11
-rw-r--r--pkgs/applications/misc/loxodo/default.nix37
-rw-r--r--pkgs/applications/misc/lxappearance/default.nix4
-rw-r--r--pkgs/applications/misc/lyx/default.nix4
-rw-r--r--pkgs/applications/misc/mdp/default.nix19
-rw-r--r--pkgs/applications/misc/mediainfo-gui/default.nix8
-rw-r--r--pkgs/applications/misc/mediainfo/default.nix8
-rw-r--r--pkgs/applications/misc/merkaartor/default.nix4
-rw-r--r--pkgs/applications/misc/multimon-ng/default.nix41
-rw-r--r--pkgs/applications/misc/mupdf/default.nix2
-rw-r--r--pkgs/applications/misc/mysql-workbench/default.nix12
-rw-r--r--pkgs/applications/misc/nc-indicators/default.nix18
-rw-r--r--pkgs/applications/misc/ocropus/default.nix2
-rw-r--r--pkgs/applications/misc/open-pdf-presenter/default.nix22
-rw-r--r--pkgs/applications/misc/orpie/default.nix21
-rw-r--r--pkgs/applications/misc/pdfdiff/default.nix41
-rw-r--r--pkgs/applications/misc/pdfpc/default.nix31
-rw-r--r--pkgs/applications/misc/playonlinux/default.nix114
-rw-r--r--pkgs/applications/misc/pstree/default.nix4
-rw-r--r--pkgs/applications/misc/pwsafe/default.nix2
-rw-r--r--pkgs/applications/misc/qpdfview/default.nix4
-rw-r--r--pkgs/applications/misc/qtpass/default.nix35
-rw-r--r--pkgs/applications/misc/ranger/default.nix6
-rw-r--r--pkgs/applications/misc/redshift/default.nix62
-rw-r--r--pkgs/applications/misc/rescuetime/default.nix7
-rw-r--r--pkgs/applications/misc/rofi/default.nix13
-rw-r--r--pkgs/applications/misc/rofi/pass.nix30
-rw-r--r--pkgs/applications/misc/rsibreak/default.nix5
-rw-r--r--pkgs/applications/misc/rtv/default.nix21
-rw-r--r--pkgs/applications/misc/rxvt_unicode-plugins/urxvt-font-size/default.nix28
-rw-r--r--pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perl/default.nix28
-rw-r--r--pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perls/default.nix4
-rw-r--r--pkgs/applications/misc/rxvt_unicode-plugins/urxvt-tabbedex/default.nix10
-rw-r--r--pkgs/applications/misc/rxvt_unicode/default.nix5
-rw-r--r--pkgs/applications/misc/scim/default.nix4
-rw-r--r--pkgs/applications/misc/slic3r/default.nix4
-rw-r--r--pkgs/applications/misc/spacefm/default.nix36
-rw-r--r--pkgs/applications/misc/sqliteman/default.nix14
-rw-r--r--pkgs/applications/misc/st/default.nix4
-rw-r--r--pkgs/applications/misc/super_user_spark/default.nix33
-rw-r--r--pkgs/applications/misc/synapse/default.nix34
-rw-r--r--pkgs/applications/misc/synergy/cryptopp.patch45
-rw-r--r--pkgs/applications/misc/synergy/default.nix50
-rw-r--r--pkgs/applications/misc/taffybar/default.nix28
-rw-r--r--pkgs/applications/misc/tasknc/default.nix46
-rw-r--r--pkgs/applications/misc/taskwarrior/default.nix12
-rw-r--r--pkgs/applications/misc/terminal-notifier/default.nix6
-rw-r--r--pkgs/applications/misc/termite/default.nix4
-rw-r--r--pkgs/applications/misc/tessel/default.nix40
-rw-r--r--pkgs/applications/misc/tessel/package.nix1974
-rw-r--r--pkgs/applications/misc/tilda/default.nix6
-rw-r--r--pkgs/applications/misc/tpmmanager/default.nix43
-rw-r--r--pkgs/applications/misc/tthsum/default.nix39
-rw-r--r--pkgs/applications/misc/udevil/default.nix30
-rw-r--r--pkgs/applications/misc/vifm/default.nix4
-rw-r--r--pkgs/applications/misc/viking/default.nix43
-rw-r--r--pkgs/applications/misc/vit/default.nix36
-rw-r--r--pkgs/applications/misc/wordnet/default.nix8
-rw-r--r--pkgs/applications/misc/xca/0001-Fix-for-openssl-1.0.1i.patch57
-rw-r--r--pkgs/applications/misc/xca/default.nix12
-rw-r--r--pkgs/applications/misc/xcruiser/default.nix4
-rw-r--r--pkgs/applications/misc/xfe/default.nix4
-rw-r--r--pkgs/applications/misc/xiphos/default.nix10
-rw-r--r--pkgs/applications/misc/xlsfonts/default.nix23
-rw-r--r--pkgs/applications/misc/xmobar/default.nix28
-rw-r--r--pkgs/applications/misc/xmove/default.nix2
-rw-r--r--pkgs/applications/misc/xpdf/default.nix6
-rw-r--r--pkgs/applications/misc/xterm/default.nix4
-rw-r--r--pkgs/applications/misc/yakuake/default.nix5
-rw-r--r--pkgs/applications/misc/yeganesh/default.nix18
-rw-r--r--pkgs/applications/misc/zathura/core/default.nix4
-rw-r--r--pkgs/applications/misc/zathura/default.nix10
-rw-r--r--pkgs/applications/misc/zathura/pdf-mupdf/default.nix21
-rw-r--r--pkgs/applications/misc/zathura/pdf-poppler/default.nix10
-rw-r--r--pkgs/applications/misc/zathura/ps/default.nix10
-rw-r--r--pkgs/applications/networking/browsers/chromium/browser.nix8
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix28
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix16
-rw-r--r--pkgs/applications/networking/browsers/chromium/plugins.nix5
-rw-r--r--pkgs/applications/networking/browsers/chromium/sandbox.nix21
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/build_fixes_46.patch14
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/default.nix22
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_44.patch (renamed from pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_42.patch)9
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_46.patch (renamed from pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths.patch)38
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/sandbox_userns_36.patch287
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/sources.nix24
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/update.nix3
-rwxr-xr-xpkgs/applications/networking/browsers/chromium/update.sh39
-rw-r--r--pkgs/applications/networking/browsers/conkeror/default.nix14
-rw-r--r--pkgs/applications/networking/browsers/dillo/default.nix8
-rw-r--r--pkgs/applications/networking/browsers/dwb/default.nix19
-rw-r--r--pkgs/applications/networking/browsers/elinks/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/default.nix18
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/generate_sources.rb2
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/sources.nix358
-rw-r--r--pkgs/applications/networking/browsers/firefox/default.nix84
-rw-r--r--pkgs/applications/networking/browsers/firefox/wrapper.nix15
-rw-r--r--pkgs/applications/networking/browsers/jumanji/default.nix14
-rw-r--r--pkgs/applications/networking/browsers/kwebkitpart/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/links2/default.nix10
-rw-r--r--pkgs/applications/networking/browsers/midori/default.nix3
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/bluejeans/default.nix57
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix12
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix8
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/gecko-mediaplayer/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/mozplugger/default.nix42
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/mplayerplug-in/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/netsurf/libCSS.nix2
-rw-r--r--pkgs/applications/networking/browsers/netsurf/libParserUtils.nix2
-rw-r--r--pkgs/applications/networking/browsers/netsurf/libnsbmp.nix2
-rw-r--r--pkgs/applications/networking/browsers/netsurf/libnsgif.nix2
-rw-r--r--pkgs/applications/networking/browsers/netsurf/libwapcaplet.nix2
-rw-r--r--pkgs/applications/networking/browsers/netsurf/netsurf.nix11
-rw-r--r--pkgs/applications/networking/browsers/opera/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/qutebrowser/default.nix35
-rw-r--r--pkgs/applications/networking/browsers/rekonq/default.nix7
-rw-r--r--pkgs/applications/networking/browsers/vimb/default.nix5
-rw-r--r--pkgs/applications/networking/browsers/vimprobable2/default.nix5
-rw-r--r--pkgs/applications/networking/browsers/w3m/cygwin.patch1710
-rw-r--r--pkgs/applications/networking/browsers/w3m/default.nix15
-rw-r--r--pkgs/applications/networking/cluster/chronos/default.nix1
-rw-r--r--pkgs/applications/networking/cluster/kubernetes/default.nix29
-rw-r--r--pkgs/applications/networking/cluster/marathon/default.nix10
-rw-r--r--pkgs/applications/networking/cluster/mesos/default.nix83
-rw-r--r--pkgs/applications/networking/cluster/mesos/rb36610.patch11
-rw-r--r--pkgs/applications/networking/cluster/openshift/default.nix32
-rw-r--r--pkgs/applications/networking/cluster/panamax/api/default.nix5
-rw-r--r--pkgs/applications/networking/cluster/panamax/ui/Gemfile.lock2
-rw-r--r--pkgs/applications/networking/cluster/panamax/ui/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/panamax/ui/gemset.nix8
-rw-r--r--pkgs/applications/networking/cluster/pig/default.nix45
-rw-r--r--pkgs/applications/networking/cluster/spark/default.nix6
-rw-r--r--pkgs/applications/networking/copy-com/default.nix44
-rw-r--r--pkgs/applications/networking/dropbox/default.nix103
-rw-r--r--pkgs/applications/networking/feedreaders/canto-curses/default.nix4
-rw-r--r--pkgs/applications/networking/feedreaders/canto-daemon/default.nix4
-rw-r--r--pkgs/applications/networking/feedreaders/newsbeuter/default.nix20
-rw-r--r--pkgs/applications/networking/feedreaders/rsstail/default.nix35
-rw-r--r--pkgs/applications/networking/ftp/filezilla/default.nix11
-rw-r--r--pkgs/applications/networking/ids/bro/default.nix10
-rw-r--r--pkgs/applications/networking/ids/daq/default.nix12
-rw-r--r--pkgs/applications/networking/ids/snort/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/amsn/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/baresip/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/bitlbee-facebook/default.nix27
-rw-r--r--pkgs/applications/networking/instant-messengers/bitlbee/default.nix19
-rw-r--r--pkgs/applications/networking/instant-messengers/bitlbee/plugins.nix20
-rw-r--r--pkgs/applications/networking/instant-messengers/blink/default.nix19
-rw-r--r--pkgs/applications/networking/instant-messengers/carrier/2.5.0.nix20
-rw-r--r--pkgs/applications/networking/instant-messengers/ekiga/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/fuze/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/gajim/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/hipchat/default.nix37
-rw-r--r--pkgs/applications/networking/instant-messengers/jitsi/default.nix45
-rw-r--r--pkgs/applications/networking/instant-messengers/jitsi/jitsi.patch4
-rw-r--r--pkgs/applications/networking/instant-messengers/linphone/default.nix13
-rw-r--r--pkgs/applications/networking/instant-messengers/linphone/fix-deprecated.patch35
-rw-r--r--pkgs/applications/networking/instant-messengers/mcabber/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/oneteam/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix30
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix31
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-vk-plugin/default.nix28
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/sipe/default.nix9
-rw-r--r--pkgs/applications/networking/instant-messengers/profanity/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/qtox/default.nix67
-rw-r--r--pkgs/applications/networking/instant-messengers/sflphone/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/skype/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/teamspeak/client.nix32
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram-cli/default.nix30
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/kde/default.nix17
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/salut/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/tkabber/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/viber/default.nix13
-rw-r--r--pkgs/applications/networking/irc/hexchat/default.nix16
-rw-r--r--pkgs/applications/networking/irc/irssi/default.nix14
-rw-r--r--pkgs/applications/networking/irc/quassel/default.nix49
-rw-r--r--pkgs/applications/networking/irc/quassel/qt-5.nix99
-rw-r--r--pkgs/applications/networking/irc/shout/default.nix49
-rw-r--r--pkgs/applications/networking/irc/shout/package.nix5049
-rw-r--r--pkgs/applications/networking/irc/sic/default.nix18
-rw-r--r--pkgs/applications/networking/irc/weechat/default.nix16
-rw-r--r--pkgs/applications/networking/linssid/0001-unbundled-qwt.patch43
-rw-r--r--pkgs/applications/networking/linssid/default.nix9
-rw-r--r--pkgs/applications/networking/mailreaders/claws-mail/default.nix23
-rw-r--r--pkgs/applications/networking/mailreaders/claws-mail/mime.patch14
-rw-r--r--pkgs/applications/networking/mailreaders/mailnag/default.nix46
-rw-r--r--pkgs/applications/networking/mailreaders/mailpile/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/mutt-kz/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/default.nix21
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/sidebar-compose.patch40
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/sidebar-delimnullwide.patch38
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/sidebar-dotpathsep.patch98
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/sidebar-new.patch97
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/sidebar-newonly.patch198
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/sidebar-utf8.patch132
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/sidebar.patch1477
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/trash-folder.patch316
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/default.nix5
-rw-r--r--pkgs/applications/networking/mailreaders/sup/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix19
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/generate_sources.rb2
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix228
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/default.nix26
-rw-r--r--pkgs/applications/networking/msmtp/default.nix4
-rw-r--r--pkgs/applications/networking/mumble/default.nix16
-rw-r--r--pkgs/applications/networking/newsreaders/kwooty/0001-search-paths.patch33
-rw-r--r--pkgs/applications/networking/newsreaders/kwooty/default.nix12
-rw-r--r--pkgs/applications/networking/newsreaders/kwooty/searchPath.patch19
-rw-r--r--pkgs/applications/networking/newsreaders/liferea/default.nix10
-rw-r--r--pkgs/applications/networking/p2p/firestr/default.nix24
-rw-r--r--pkgs/applications/networking/p2p/opentracker/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/qbittorrent/default.nix8
-rw-r--r--pkgs/applications/networking/p2p/retroshare/0.6.nix19
-rw-r--r--pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix20
-rw-r--r--pkgs/applications/networking/p2p/transmission/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/tribler/default.nix51
-rw-r--r--pkgs/applications/networking/pond/default.nix35
-rw-r--r--pkgs/applications/networking/remote/freerdp/default.nix2
-rw-r--r--pkgs/applications/networking/remote/freerdp/unstable.nix6
-rw-r--r--pkgs/applications/networking/remote/putty/default.nix10
-rw-r--r--pkgs/applications/networking/remote/teamviewer/10.nix18
-rw-r--r--pkgs/applications/networking/remote/x2goclient/default.nix9
-rw-r--r--pkgs/applications/networking/sniffers/wireshark/default.nix4
-rw-r--r--pkgs/applications/networking/sync/backintime/common.nix4
-rw-r--r--pkgs/applications/networking/syncthing/default.nix32
-rw-r--r--pkgs/applications/networking/umurmur/default.nix5
-rw-r--r--pkgs/applications/networking/znc/1.4.nix35
-rw-r--r--pkgs/applications/networking/znc/default.nix4
-rw-r--r--pkgs/applications/office/abiword/default.nix9
-rw-r--r--pkgs/applications/office/basket/default.nix8
-rw-r--r--pkgs/applications/office/calligra/default.nix20
-rw-r--r--pkgs/applications/office/eventlist/default.nix6
-rw-r--r--pkgs/applications/office/gnumeric/default.nix17
-rw-r--r--pkgs/applications/office/hledger-interest/default.nix19
-rw-r--r--pkgs/applications/office/hledger-irr/default.nix18
-rw-r--r--pkgs/applications/office/kbibtex/default.nix5
-rw-r--r--pkgs/applications/office/libreoffice/default.nix148
-rwxr-xr-xpkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh44
-rw-r--r--pkgs/applications/office/libreoffice/libreoffice-srcs.nix195
-rw-r--r--pkgs/applications/office/mendeley/default.nix4
-rw-r--r--pkgs/applications/office/mmex/default.nix1
-rw-r--r--pkgs/applications/office/osmo/default.nix23
-rw-r--r--pkgs/applications/office/pinpoint/default.nix12
-rw-r--r--pkgs/applications/office/scribus/default.nix6
-rw-r--r--pkgs/applications/office/skrooge/default.nix5
-rw-r--r--pkgs/applications/office/todo.txt-cli/default.nix1
-rw-r--r--pkgs/applications/office/zanshin/default.nix5
-rw-r--r--pkgs/applications/office/zim/default.nix4
-rw-r--r--pkgs/applications/office/zotero/default.nix2
-rw-r--r--pkgs/applications/office/zotero/firefox-bin/default.nix8
-rw-r--r--pkgs/applications/science/astronomy/stellarium/default.nix9
-rw-r--r--pkgs/applications/science/biology/arb/default.nix86
-rw-r--r--pkgs/applications/science/biology/arb/makefile.patch12
-rw-r--r--pkgs/applications/science/electronics/eagle/default.nix6
-rw-r--r--pkgs/applications/science/electronics/fritzing/default.nix2
-rw-r--r--pkgs/applications/science/electronics/geda/default.nix22
-rw-r--r--pkgs/applications/science/electronics/gtkwave/default.nix4
-rw-r--r--pkgs/applications/science/electronics/kicad/default.nix4
-rw-r--r--pkgs/applications/science/electronics/ngspice/default.nix10
-rw-r--r--pkgs/applications/science/electronics/qfsm/default.nix5
-rw-r--r--pkgs/applications/science/electronics/verilator/default.nix22
-rw-r--r--pkgs/applications/science/geometry/drgeo/default.nix4
-rw-r--r--pkgs/applications/science/geometry/tetgen/1.4.nix21
-rw-r--r--pkgs/applications/science/geometry/tetgen/default.nix12
-rw-r--r--pkgs/applications/science/logic/abc/default.nix8
-rw-r--r--pkgs/applications/science/logic/acgtk/default.nix9
-rw-r--r--pkgs/applications/science/logic/coq/8.3.nix12
-rw-r--r--pkgs/applications/science/logic/coq/8.5.nix10
-rw-r--r--pkgs/applications/science/logic/coq/HEAD.nix10
-rw-r--r--pkgs/applications/science/logic/coq/default.nix10
-rw-r--r--pkgs/applications/science/logic/cvc4/default.nix24
-rw-r--r--pkgs/applications/science/logic/eprover/default.nix18
-rw-r--r--pkgs/applications/science/logic/eprover/default.upstream2
-rw-r--r--pkgs/applications/science/logic/gappa/default.nix23
-rw-r--r--pkgs/applications/science/logic/hol/default.nix30
-rw-r--r--pkgs/applications/science/logic/hol_light/Makefile.patch13
-rw-r--r--pkgs/applications/science/logic/hol_light/default.nix10
-rw-r--r--pkgs/applications/science/logic/isabelle/default.nix4
-rw-r--r--pkgs/applications/science/logic/jonprl/default.nix34
-rw-r--r--pkgs/applications/science/logic/lci/default.nix2
-rw-r--r--pkgs/applications/science/logic/lean/default.nix12
-rw-r--r--pkgs/applications/science/logic/metis-prover/default.nix29
-rw-r--r--pkgs/applications/science/logic/otter/default.nix6
-rw-r--r--pkgs/applications/science/logic/picosat/default.nix32
-rw-r--r--pkgs/applications/science/logic/saw-tools/default.nix61
-rw-r--r--pkgs/applications/science/logic/stp/default.nix2
-rw-r--r--pkgs/applications/science/logic/verit/default.nix19
-rw-r--r--pkgs/applications/science/logic/why3/default.nix8
-rw-r--r--pkgs/applications/science/logic/yices/default.nix41
-rw-r--r--pkgs/applications/science/logic/z3/default.nix6
-rw-r--r--pkgs/applications/science/logic/z3_opt/default.nix44
-rw-r--r--pkgs/applications/science/math/R/default.nix16
-rw-r--r--pkgs/applications/science/math/caffe/default.nix70
-rw-r--r--pkgs/applications/science/math/cbc/default.nix26
-rw-r--r--pkgs/applications/science/math/content/default.nix18
-rw-r--r--pkgs/applications/science/math/csdp/default.nix27
-rw-r--r--pkgs/applications/science/math/ecm/default.nix11
-rw-r--r--pkgs/applications/science/math/gap/default.nix1
-rw-r--r--pkgs/applications/science/math/glsurf/default.nix6
-rw-r--r--pkgs/applications/science/math/jags/default.nix5
-rw-r--r--pkgs/applications/science/math/lp_solve/default.nix43
-rw-r--r--pkgs/applications/science/math/mathematica/9.nix6
-rw-r--r--pkgs/applications/science/math/mathematica/default.nix6
-rw-r--r--pkgs/applications/science/math/maxima/default.nix4
-rw-r--r--pkgs/applications/science/math/pari/default.nix12
-rw-r--r--pkgs/applications/science/math/perseus/default.nix38
-rw-r--r--pkgs/applications/science/math/qalculate-gtk/default.nix20
-rw-r--r--pkgs/applications/science/math/sage/default.nix21
-rw-r--r--pkgs/applications/science/math/sage/spkg-git.patch11
-rw-r--r--pkgs/applications/science/math/sage/spkg-python.patch11
-rw-r--r--pkgs/applications/science/math/sage/spkg-singular.patch28
-rw-r--r--pkgs/applications/science/math/scilab/default.nix10
-rw-r--r--pkgs/applications/science/math/sloane/default.nix28
-rw-r--r--pkgs/applications/science/math/speedcrunch/default.nix4
-rw-r--r--pkgs/applications/science/math/wxmaxima/default.nix4
-rw-r--r--pkgs/applications/science/misc/boinc/default.nix16
-rw-r--r--pkgs/applications/science/misc/fityk/default.nix16
-rw-r--r--pkgs/applications/science/misc/golly/default.nix8
-rw-r--r--pkgs/applications/science/misc/openmodelica/default.nix50
-rw-r--r--pkgs/applications/science/misc/openmodelica/fakegit.nix81
-rw-r--r--pkgs/applications/science/misc/openmodelica/src-libs-git.nix71
-rw-r--r--pkgs/applications/science/misc/openmodelica/src-libs-svn.nix5
-rw-r--r--pkgs/applications/science/misc/openmodelica/src-main.nix6
-rwxr-xr-xpkgs/applications/science/misc/openmodelica/update-src-libs-git.sh64
-rwxr-xr-xpkgs/applications/science/misc/openmodelica/update-src-libs-svn.sh50
-rw-r--r--pkgs/applications/science/misc/root/default.nix6
-rw-r--r--pkgs/applications/science/molecular-dynamics/gromacs/default.nix4
-rw-r--r--pkgs/applications/science/programming/kframework/default.nix102
-rw-r--r--pkgs/applications/science/spyder/default.nix16
-rw-r--r--pkgs/applications/search/recoll/default.nix22
-rw-r--r--pkgs/applications/version-management/bazaar/default.nix7
-rw-r--r--pkgs/applications/version-management/bazaar/tools.nix20
-rw-r--r--pkgs/applications/version-management/codeville/0.8.0.nix23
-rw-r--r--pkgs/applications/version-management/cvs-fast-export/default.nix50
-rw-r--r--pkgs/applications/version-management/fossil/default.nix8
-rw-r--r--pkgs/applications/version-management/git-and-tools/default.nix19
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex/default.nix56
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-cola/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-crypt/default.nix41
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-extras/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-hub/default.nix44
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-radar/default.nix31
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/cert-path.patch2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/default.nix8
-rw-r--r--pkgs/applications/version-management/git-and-tools/gitflow/default.nix14
-rw-r--r--pkgs/applications/version-management/git-and-tools/github-backup/default.nix26
-rw-r--r--pkgs/applications/version-management/git-and-tools/stgit/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/svn2git-kde/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/svn2git/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/tig/default.nix6
-rw-r--r--pkgs/applications/version-management/git-repo/default.nix6
-rw-r--r--pkgs/applications/version-management/gitinspector/default.nix21
-rw-r--r--pkgs/applications/version-management/gitlab/Gemfile.lock2
-rw-r--r--pkgs/applications/version-management/gitlab/gemset.nix8
-rw-r--r--pkgs/applications/version-management/gitolite/default.nix12
-rw-r--r--pkgs/applications/version-management/kdesvn/default.nix6
-rw-r--r--pkgs/applications/version-management/meld/default.nix14
-rw-r--r--pkgs/applications/version-management/mercurial/default.nix25
-rw-r--r--pkgs/applications/version-management/monotone-viz/mtn-head.nix4
-rw-r--r--pkgs/applications/version-management/mr/default.nix4
-rw-r--r--pkgs/applications/version-management/peru/default.nix28
-rw-r--r--pkgs/applications/version-management/rabbitvcs/default.nix40
-rw-r--r--pkgs/applications/version-management/rcs/default.nix2
-rw-r--r--pkgs/applications/version-management/redmine/default.nix8
-rw-r--r--pkgs/applications/version-management/reposurgeon/default.nix66
-rw-r--r--pkgs/applications/version-management/reposurgeon/fix-preserve-type.patch12
-rw-r--r--pkgs/applications/version-management/smartgithg/default.nix16
-rwxr-xr-xpkgs/applications/version-management/smartgithg/install_freedesktop_items.sh11
-rw-r--r--pkgs/applications/version-management/src/default.nix23
-rw-r--r--pkgs/applications/version-management/src/path.patch30
-rw-r--r--pkgs/applications/version-management/subversion/default.nix6
-rw-r--r--pkgs/applications/version-management/tailor/default.nix6
-rw-r--r--pkgs/applications/version-management/tortoisehg/default.nix36
-rw-r--r--pkgs/applications/version-management/vcprompt/default.nix7
-rw-r--r--pkgs/applications/version-management/viewmtn/0.10.nix3
-rw-r--r--pkgs/applications/video/aegisub/default.nix6
-rw-r--r--pkgs/applications/video/avxsynth/default.nix50
-rw-r--r--pkgs/applications/video/bangarang/default.nix14
-rw-r--r--pkgs/applications/video/bomi/default.nix37
-rw-r--r--pkgs/applications/video/byzanz/default.nix6
-rw-r--r--pkgs/applications/video/clipgrab/default.nix21
-rw-r--r--pkgs/applications/video/dvd-slideshow/default.nix69
-rw-r--r--pkgs/applications/video/dvdauthor/default.nix4
-rw-r--r--pkgs/applications/video/gnash/default.nix5
-rw-r--r--pkgs/applications/video/k9copy/default.nix56
-rw-r--r--pkgs/applications/video/kdenlive/default.nix9
-rw-r--r--pkgs/applications/video/kmplayer/default.nix10
-rw-r--r--pkgs/applications/video/kodi/default.nix40
-rw-r--r--pkgs/applications/video/makemkv/default.nix6
-rw-r--r--pkgs/applications/video/mediathekview/default.nix31
-rw-r--r--pkgs/applications/video/minitube/default.nix43
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix79
-rw-r--r--pkgs/applications/video/mplayer/default.nix12
-rw-r--r--pkgs/applications/video/mpv/default.nix115
-rw-r--r--pkgs/applications/video/mythtv/default.nix4
-rw-r--r--pkgs/applications/video/obs-studio/default.nix19
-rw-r--r--pkgs/applications/video/pitivi/default.nix18
-rw-r--r--pkgs/applications/video/popcorntime/default.nix52
-rw-r--r--pkgs/applications/video/qarte/default.nix6
-rw-r--r--pkgs/applications/video/shotcut/default.nix2
-rw-r--r--pkgs/applications/video/simplescreenrecorder/default.nix8
-rw-r--r--pkgs/applications/video/smtube/default.nix18
-rw-r--r--pkgs/applications/video/tvtime/default.nix6
-rw-r--r--pkgs/applications/video/vlc/default.nix32
-rw-r--r--pkgs/applications/video/xine-ui/default.nix6
-rw-r--r--pkgs/applications/virtualization/OVMF/default.nix1
-rw-r--r--pkgs/applications/virtualization/bochs/default.nix6
-rw-r--r--pkgs/applications/virtualization/cbfstool/default.nix35
-rw-r--r--pkgs/applications/virtualization/docker/default.nix29
-rw-r--r--pkgs/applications/virtualization/driver/win-pvdrivers/default.nix30
-rw-r--r--pkgs/applications/virtualization/driver/win-qemu/default.nix38
-rw-r--r--pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix46
-rw-r--r--pkgs/applications/virtualization/driver/win-spice/default.nix69
-rw-r--r--pkgs/applications/virtualization/driver/win-virtio/default.nix37
-rw-r--r--pkgs/applications/virtualization/open-vm-tools/default.nix45
-rw-r--r--pkgs/applications/virtualization/open-vm-tools/recognize_nixos.patch46
-rw-r--r--pkgs/applications/virtualization/qboot/default.nix24
-rw-r--r--pkgs/applications/virtualization/qemu/default.nix18
-rw-r--r--pkgs/applications/virtualization/qemu/no-etc-install.patch11
-rw-r--r--pkgs/applications/virtualization/remotebox/default.nix32
-rw-r--r--pkgs/applications/virtualization/rkt/default.nix48
-rw-r--r--pkgs/applications/virtualization/virt-manager/default.nix19
-rw-r--r--pkgs/applications/virtualization/virtualbox/default.nix32
-rw-r--r--pkgs/applications/virtualization/virtualbox/guest-additions/default.nix7
-rw-r--r--pkgs/applications/virtualization/virtualbox/hardened.patch13
-rw-r--r--pkgs/applications/virtualization/xen/0000-qemu-seabios-enable-ATA_DMA.patch19
-rw-r--r--pkgs/applications/virtualization/xen/0001-libxl-Spice-image-compression-setting-support-for-up.patch104
-rw-r--r--pkgs/applications/virtualization/xen/0002-libxl-Spice-streaming-video-setting-support-for-upst.patch104
-rw-r--r--pkgs/applications/virtualization/xen/0003-Add-qxl-vga-interface-support-for-upstream-qem.patch165
-rw-r--r--pkgs/applications/virtualization/xen/4.4.1.nix46
-rw-r--r--pkgs/applications/virtualization/xen/4.5.0.nix68
-rw-r--r--pkgs/applications/virtualization/xen/4.5.1.nix67
-rw-r--r--pkgs/applications/virtualization/xen/generic.nix102
-rw-r--r--pkgs/applications/virtualization/xhyve/default.nix28
-rw-r--r--pkgs/applications/window-managers/awesome/default.nix22
-rw-r--r--pkgs/applications/window-managers/bar/default.nix4
-rw-r--r--pkgs/applications/window-managers/bar/xft.nix26
-rw-r--r--pkgs/applications/window-managers/bspwm/default.nix8
-rw-r--r--pkgs/applications/window-managers/compiz/default.nix3
-rw-r--r--pkgs/applications/window-managers/herbstluftwm/default.nix7
-rw-r--r--pkgs/applications/window-managers/i3/default.nix13
-rw-r--r--pkgs/applications/window-managers/i3/lock.nix8
-rw-r--r--pkgs/applications/window-managers/i3/status.nix2
-rw-r--r--pkgs/applications/window-managers/icewm/default.nix44
-rw-r--r--pkgs/applications/window-managers/ion-3/default.nix4
-rw-r--r--pkgs/applications/window-managers/notion/default.nix33
-rw-r--r--pkgs/applications/window-managers/notion/notion-xft_nixos.diff662
-rw-r--r--pkgs/applications/window-managers/openbox/default.nix13
-rw-r--r--pkgs/applications/window-managers/oroborus/default.nix27
-rw-r--r--pkgs/applications/window-managers/qtile/default.nix47
-rw-r--r--pkgs/applications/window-managers/qtile/restart_executable.patch12
-rw-r--r--pkgs/applications/window-managers/spectrwm/default.nix9
-rw-r--r--pkgs/applications/window-managers/stumpwm/default.nix4
-rw-r--r--pkgs/applications/window-managers/tabbed/default.nix29
-rw-r--r--pkgs/applications/window-managers/tabbed/xft.patch234
-rw-r--r--pkgs/applications/window-managers/taffybar/default.nix15
-rw-r--r--pkgs/applications/window-managers/vwm/default.nix8
-rw-r--r--pkgs/applications/window-managers/weston/default.nix10
-rw-r--r--pkgs/applications/window-managers/wmii-hg/default.nix45
-rw-r--r--pkgs/applications/window-managers/wmii/default.nix35
-rw-r--r--pkgs/applications/window-managers/wmii31/default.nix35
-rw-r--r--pkgs/applications/window-managers/xcompmgr/default.nix22
-rw-r--r--pkgs/applications/window-managers/xmonad/default.nix30
-rw-r--r--pkgs/applications/window-managers/xmonad/wrapper.nix4
-rw-r--r--pkgs/applications/window-managers/xmonad/xmonad-contrib.nix21
-rw-r--r--pkgs/applications/window-managers/xmonad/xmonad-extras.nix24
840 files changed, 36526 insertions, 14406 deletions
diff --git a/pkgs/applications/altcoins/bitcoin-xt.nix b/pkgs/applications/altcoins/bitcoin-xt.nix
new file mode 100644
index 00000000000..e6c95729c6e
--- /dev/null
+++ b/pkgs/applications/altcoins/bitcoin-xt.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl, pkgconfig, autoreconfHook, openssl, db48, boost
+, zlib, miniupnpc, qt4, utillinux, protobuf, qrencode, curl
+, withGui }:
+
+with stdenv.lib;
+stdenv.mkDerivation rec{
+
+  name = "bitcoin" + (toString (optional (!withGui) "d")) + "-xt-" + version;
+  xt_version = "0.11A";
+  version = xt_version;
+
+  src = fetchurl {
+    url = "https://github.com/bitcoinxt/bitcoinxt/archive/v0.11A.tar.gz";
+    sha256 = "129cbqf6bln6rhdk70c6nfwdjk6afvsaaw4xdyp0pnfand8idz7n";
+  };
+
+  buildInputs = [ pkgconfig autoreconfHook openssl db48 boost zlib
+                  miniupnpc utillinux protobuf curl ]
+                  ++ optionals withGui [ qt4 qrencode ];
+
+  configureFlags = [
+    "--with-boost-libdir=${boost.lib}/lib"
+    "--with-libcurl-headers=${curl}/include"
+  ] ++ optionals withGui [ "--with-gui=qt4" ];
+
+  meta = {
+    description = "Peer-to-peer electronic cash system";
+    longDescription= ''
+       Bitcoin XT is an implementation of a Bitcoin full node, based upon the
+       source code of Bitcoin Core. It is built by taking the latest stable
+       Core release, applying a series of patches, and then doing deterministic
+       builds so anyone can check the downloads correspond to the source code. 
+    '';
+    homepage = "https://bitcoinxt.software/";
+    maintainers = with maintainers; [ jefdaj ];
+    license = licenses.mit;
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/altcoins/bitcoin.nix b/pkgs/applications/altcoins/bitcoin.nix
index 0e98e234214..bdd0335fe3b 100644
--- a/pkgs/applications/altcoins/bitcoin.nix
+++ b/pkgs/applications/altcoins/bitcoin.nix
@@ -6,13 +6,14 @@ with stdenv.lib;
 stdenv.mkDerivation rec{
 
   name = "bitcoin" + (toString (optional (!withGui) "d")) + "-" + version;
-  version = "0.10.0";
+  core_version = "0.11.0";
+  version = core_version;
 
   src = fetchurl {
-    url = [ "https://bitcoin.org/bin/bitcoin-core-0.10.0/bitcoin-${version}.tar.gz"
-            "mirror://sourceforge/bitcoin/Bitcoin/bitcoin-0.10.0/bitcoin-${version}.tar.gz"
-          ];
-    sha256 = "a516cf6d9f58a117607148405334b35d3178df1ba1c59229609d2bcd08d30624";
+    urls = [ "https://bitcoin.org/bin/bitcoin-core-${core_version}/bitcoin-${version}.tar.gz"
+             "mirror://sourceforge/bitcoin/Bitcoin/bitcoin-${core_version}/bitcoin-${version}.tar.gz"
+           ];
+    sha256 = "51ba1756addfa71567559e3f22331c1d908a63571891287689fff7113035d09f";
   };
 
   buildInputs = [ pkgconfig autoreconfHook openssl db48 boost zlib
diff --git a/pkgs/applications/altcoins/darkcoin.nix b/pkgs/applications/altcoins/darkcoin.nix
index 56d22d0b53b..89ff12f8f74 100644
--- a/pkgs/applications/altcoins/darkcoin.nix
+++ b/pkgs/applications/altcoins/darkcoin.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, pkgconfig
+{ fetchzip, stdenv, pkgconfig
 , openssl, db48, boost, zlib, miniupnpc, qt4, qrencode, glib, protobuf
 , utillinux
 , withGui }:
@@ -9,9 +9,9 @@ stdenv.mkDerivation rec {
   name = "darkcoin" + (toString (optional (!withGui) "d")) + "-" + version;
   version = "0.10.99.99";
 
-  src = fetchurl {
+  src = fetchzip {
     url = "https://github.com/darkcoin/darkcoin/archive/v${version}.tar.gz";
-    sha256 = "1a05a7l878klg4wqk9ykndkhyknrd7jp75v38k99qgk5fi8wa752";
+    sha256 = "0sigvimqwc1mvaq43a8c2aq7fjla2ncafrals08qfq3jd6in8b4f";
   };
 
   buildInputs = [ pkgconfig glib openssl db48 boost zlib miniupnpc ]
diff --git a/pkgs/applications/altcoins/default.nix b/pkgs/applications/altcoins/default.nix
index a49e4dc9f90..762ef804f83 100644
--- a/pkgs/applications/altcoins/default.nix
+++ b/pkgs/applications/altcoins/default.nix
@@ -5,6 +5,9 @@ rec {
   bitcoin  = callPackage ./bitcoin.nix { withGui = true; };
   bitcoind = callPackage ./bitcoin.nix { withGui = false; };
 
+  bitcoin-xt  = callPackage ./bitcoin-xt.nix { withGui = true; };
+  bitcoind-xt = callPackage ./bitcoin-xt.nix { withGui = false; };
+
   darkcoin  = callPackage ./darkcoin.nix { withGui = true; };
   darkcoind = callPackage ./darkcoin.nix { withGui = false; };
 
diff --git a/pkgs/applications/altcoins/litecoin.nix b/pkgs/applications/altcoins/litecoin.nix
index f2235abaaae..4e0198b972d 100644
--- a/pkgs/applications/altcoins/litecoin.nix
+++ b/pkgs/applications/altcoins/litecoin.nix
@@ -8,11 +8,11 @@ with stdenv.lib;
 stdenv.mkDerivation rec {
 
   name = "litecoin" + (toString (optional (!withGui) "d")) + "-" + version;
-  version = "0.9.3-preview5";
+  version = "0.10.2.2";
 
   src = fetchurl {
     url = "https://github.com/litecoin-project/litecoin/archive/v${version}.tar.gz";
-    sha256 = "0nnfz4s2g28jb5fqy6cabsryp3h2amzlyslr6g6k8r1vmzvx5ym6";
+    sha256 = "1p1h2654b7f2lyrmihcjmpmx6sjpkgsifcm2ixxb2g9jh6qq8b4m";
   };
 
   buildInputs = [ pkgconfig autoreconfHook openssl
diff --git a/pkgs/applications/audio/AMB-plugins/default.nix b/pkgs/applications/audio/AMB-plugins/default.nix
new file mode 100644
index 00000000000..3ea7b90f84a
--- /dev/null
+++ b/pkgs/applications/audio/AMB-plugins/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchurl, ladspaH
+}:
+
+stdenv.mkDerivation rec {
+  name = "AMB-plugins-${version}";
+  version = "0.8.1";
+  src = fetchurl {
+    url = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
+    sha256 = "0x4blm4visjqj0ndqr0cg776v3b7lvplpc8cgi9n51llhavn0jpl";
+  };
+
+  buildInputs = [ ladspaH ];
+
+  patchPhase = ''
+    sed -i 's@/usr/bin/install@install@g' Makefile
+    sed -i 's@/bin/rm@rm@g' Makefile
+    sed -i 's@/usr/lib/ladspa@$(out)/lib/ladspa@g' Makefile
+  '';
+
+  preInstall="mkdir -p $out/lib/ladspa";
+
+  meta = {
+    description = ''A set of ambisonics ladspa plugins'';
+    longDescription = ''
+      Mono and stereo to B-format panning, horizontal rotator, square, hexagon and cube decoders.
+    '';
+    version = "${version}";
+    homepage = http://kokkinizita.linuxaudio.org/linuxaudio/ladspa/index.html;
+    license = stdenv.lib.licenses.gpl2Plus;
+    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/CharacterCompressor/default.nix b/pkgs/applications/audio/CharacterCompressor/default.nix
new file mode 100644
index 00000000000..3501e04aa97
--- /dev/null
+++ b/pkgs/applications/audio/CharacterCompressor/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, faust2jack, faust2lv2 }:
+stdenv.mkDerivation rec {
+  name = "CharacterCompressor-${version}";
+  version = "0.2";
+
+  src = fetchFromGitHub {
+    owner = "magnetophon";
+    repo = "CharacterCompressor";
+    rev = "v${version}";
+    sha256 = "0fvi8m4nshcxypn4jgxhnh7pxp68wshhav3k8wn3il7qpw71pdxi";
+  };
+
+  buildInputs = [ faust2jack faust2lv2 ];
+
+  buildPhase = ''
+    faust2jack -t 99999 CharacterCompressor.dsp
+    faust2lv2 -t 99999 CharacterCompressor.dsp
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp CharacterCompressor $out/bin/
+    mkdir -p $out/lib/lv2
+    cp -r CharacterCompressor.lv2/ $out/lib/lv2
+  '';
+
+  meta = {
+    description = "A compressor with character. For jack and lv2";
+    homepage = https://github.com/magnetophon/CharacterCompressor;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+  };
+}
diff --git a/pkgs/applications/audio/CompBus/default.nix b/pkgs/applications/audio/CompBus/default.nix
new file mode 100644
index 00000000000..497d1ef5243
--- /dev/null
+++ b/pkgs/applications/audio/CompBus/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchFromGitHub, faust2jack, faust2lv2 }:
+stdenv.mkDerivation rec {
+  name = "CompBus-${version}";
+  version = "1.1.02";
+
+  src = fetchFromGitHub {
+    owner = "magnetophon";
+    repo = "CompBus";
+    rev = "v${version}";
+    sha256 = "025vi60caxk3j2vxxrgbc59xlyr88vgn7k3127s271zvpyy7apwh";
+  };
+
+  buildInputs = [ faust2jack faust2lv2 ];
+
+  buildPhase = ''
+    for f in *.dsp;
+    do
+      faust2jack -t 99999 $f
+      faust2lv2 -t 99999 $f
+    done
+  '';
+
+  installPhase = ''
+    mkdir -p $out/lib/lv2
+    mv *.lv2/ $out/lib/lv2
+    mkdir -p $out/bin
+    for f in $(find . -executable -type f);
+    do
+      cp $f $out/bin/
+    done
+  '';
+
+  meta = {
+    description = "A group of compressors mixed into a bus, sidechained from that mix bus. For jack and lv2";
+    homepage = https://github.com/magnetophon/CompBus;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+  };
+}
diff --git a/pkgs/applications/audio/LazyLimiter/default.nix b/pkgs/applications/audio/LazyLimiter/default.nix
new file mode 100644
index 00000000000..d400bea3379
--- /dev/null
+++ b/pkgs/applications/audio/LazyLimiter/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, faust2jack, faust2lv2 }:
+stdenv.mkDerivation rec {
+  name = "LazyLimiter-${version}";
+  version = "0.3.01";
+
+  src = fetchFromGitHub {
+    owner = "magnetophon";
+    repo = "LazyLimiter";
+    rev = "v${version}";
+    sha256 = "1yx9d5cakmqbiwb1j9v2af9h5lqzahl3kaamnyk71cf4i8g7zp3l";
+  };
+
+  buildInputs = [ faust2jack faust2lv2 ];
+
+  buildPhase = ''
+    faust2jack -t 99999 LazyLimiter.dsp
+    faust2lv2 -t 99999 LazyLimiter.dsp
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp LazyLimiter $out/bin/
+    mkdir -p $out/lib/lv2
+    cp -r LazyLimiter.lv2/ $out/lib/lv2
+  '';
+
+  meta = {
+    description = "A fast yet clean lookahead limiter for jack and lv2";
+    homepage = https://magnetophon.github.io/LazyLimiter/;
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+  };
+}
diff --git a/pkgs/applications/audio/MBdistortion/default.nix b/pkgs/applications/audio/MBdistortion/default.nix
new file mode 100644
index 00000000000..c70ab578259
--- /dev/null
+++ b/pkgs/applications/audio/MBdistortion/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, faust2jack, faust2lv2 }:
+stdenv.mkDerivation rec {
+  name = "MBdistortion-${version}";
+  version = "1.1";
+
+  src = fetchFromGitHub {
+    owner = "magnetophon";
+    repo = "MBdistortion";
+    rev = "v${version}";
+    sha256 = "1rmvfi48hg8ybfw517zgj3fjj2xzckrmv8x131i26vj0fv7svjsp";
+  };
+
+  buildInputs = [ faust2jack faust2lv2 ];
+
+  buildPhase = ''
+    faust2jack -t 99999 MBdistortion.dsp
+    faust2lv2 -t 99999 MBdistortion.dsp
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp MBdistortion $out/bin/
+    mkdir -p $out/lib/lv2
+    cp -r MBdistortion.lv2/ $out/lib/lv2
+  '';
+
+  meta = {
+    description = "Mid-side multiband distortion for jack and lv2";
+    homepage = https://github.com/magnetophon/MBdistortion;
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+  };
+}
diff --git a/pkgs/applications/audio/QmidiNet/default.nix b/pkgs/applications/audio/QmidiNet/default.nix
new file mode 100644
index 00000000000..4e89f125dd9
--- /dev/null
+++ b/pkgs/applications/audio/QmidiNet/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, qt4, alsaLib, libjack2 }:
+
+stdenv.mkDerivation rec {
+  version = "0.2.1";
+  name = "qmidinet-${version}";
+
+  src = fetchurl {
+    url = "http://downloads.sourceforge.net/qmidinet/${name}.tar.gz";
+    sha256 = "1a1pj4w74wj1gcfv4a0vzcglmr5sw0xp0y56w8rk3ig4k11xi8sa";
+  };
+
+  buildInputs = [ qt4 alsaLib libjack2 ];
+
+  meta = with stdenv.lib; {
+    description = "A MIDI network gateway application that sends and receives MIDI data (ALSA Sequencer and/or JACK MIDI) over the network";
+    homepage = http://qmidinet.sourceforge.net/;
+    license = licenses.gpl2Plus;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/RhythmDelay/default.nix b/pkgs/applications/audio/RhythmDelay/default.nix
new file mode 100644
index 00000000000..e0cfff7c906
--- /dev/null
+++ b/pkgs/applications/audio/RhythmDelay/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, faust2jack, faust2lv2 }:
+stdenv.mkDerivation rec {
+  name = "RhythmDelay-${version}";
+  version = "2.0";
+
+  src = fetchFromGitHub {
+    owner = "magnetophon";
+    repo = "RhythmDelay";
+    rev = "v${version}";
+    sha256 = "0n938nm08mf3lz92k6v07k1469xxzmfkgclw40jgdssfcfa16bn7";
+  };
+
+  buildInputs = [ faust2jack faust2lv2 ];
+
+  buildPhase = ''
+    faust2jack -t 99999 RhythmDelay.dsp
+    faust2lv2 -t 99999 RhythmDelay.dsp
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp RhythmDelay $out/bin/
+    mkdir -p $out/lib/lv2
+    cp -r RhythmDelay.lv2/ $out/lib/lv2
+  '';
+
+  meta = {
+    description = "Tap a rhythm into your delay! For jack and lv2";
+    homepage = https://github.com/magnetophon/RhythmDelay;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+  };
+}
diff --git a/pkgs/applications/audio/VoiceOfFaust/default.nix b/pkgs/applications/audio/VoiceOfFaust/default.nix
new file mode 100644
index 00000000000..17cb680c58c
--- /dev/null
+++ b/pkgs/applications/audio/VoiceOfFaust/default.nix
@@ -0,0 +1,65 @@
+
+{ stdenv, pkgs, callPackage, fetchFromGitHub, faust2jack, helmholtz, mrpeach, puredata-with-plugins }:
+stdenv.mkDerivation rec {
+  name = "VoiceOfFaust-${version}";
+  version = "0.7";
+
+  src = fetchFromGitHub {
+    owner = "magnetophon";
+    repo = "VoiceOfFaust";
+    rev = "v${version}";
+    sha256 = "14jjs7cnhg20pzijgblr7caspcpx8p8lpkbvjzc656s9lqn6m9sn";
+  };
+
+  plugins = [ helmholtz mrpeach ];
+
+  pitchTracker = puredata-with-plugins plugins;
+
+  buildInputs = [ faust2jack ];
+
+  runtimeInputs = [ pitchTracker ];
+
+  patchPhase = ''
+    sed -i "s@pd -nodac@${pitchTracker}/bin/pd -nodac@g" launchers/synthWrapper
+    sed -i "s@../PureData/OscSendVoc.pd@$out/PureData/OscSendVoc.pd@g" launchers/synthWrapper
+  '';
+
+  buildPhase = ''
+    faust2jack -osc classicVocoder.dsp
+    faust2jack -osc CZringmod.dsp
+    faust2jack -osc FMsinger.dsp
+    faust2jack -osc FOFvocoder.dsp
+    faust2jack -osc Karplus-StrongSinger.dsp
+    faust2jack -osc -sch -t 99999 Karplus-StrongSingerMaxi.dsp
+    faust2jack -osc PAFvocoder.dsp
+    faust2jack -osc -sch -t 99999 stringSinger.dsp
+    faust2jack -osc subSinger.dsp
+    # doesn't compile on most systems, too big:
+    #faust2jack -osc -sch -t 99999 VocSynthFull.dsp
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp launchers/* $out/bin/
+    cp classicVocoder $out/bin/
+    cp CZringmod $out/bin/
+    cp FMsinger $out/bin/
+    cp FOFvocoder $out/bin/
+    cp Karplus-StrongSinger $out/bin/
+    cp Karplus-StrongSingerMaxi $out/bin/
+    cp PAFvocoder $out/bin/
+    cp stringSinger $out/bin/
+    cp subSinger $out/bin/
+    #cp VocSynthFull $out/bin/
+    mkdir $out/PureData/
+    cp PureData/OscSendVoc.pd $out/PureData/OscSendVoc.pd
+  '';
+
+  meta = {
+    description = "Turn your voice into a synthesizer";
+    homepage = https://github.com/magnetophon/VoiceOfFaust;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+  };
+}
+
diff --git a/pkgs/applications/audio/a2jmidid/default.nix b/pkgs/applications/audio/a2jmidid/default.nix
index 218a0f8c6d9..7b0aad152ab 100644
--- a/pkgs/applications/audio/a2jmidid/default.nix
+++ b/pkgs/applications/audio/a2jmidid/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, makeWrapper, pkgconfig, alsaLib, dbus, jack2
+{ stdenv, fetchurl, makeWrapper, pkgconfig, alsaLib, dbus, libjack2
 , python, pythonDBus }:
 
 stdenv.mkDerivation rec {
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "0pzm0qk5ilqhwz74pydg1jwrds27vm47185dakdrxidb5bv3b5ia";
   };
 
-  buildInputs = [ makeWrapper pkgconfig alsaLib dbus jack2 python pythonDBus ];
+  buildInputs = [ makeWrapper pkgconfig alsaLib dbus libjack2 python pythonDBus ];
 
   configurePhase = "python waf configure --prefix=$out";
 
diff --git a/pkgs/applications/audio/aacgain/default.nix b/pkgs/applications/audio/aacgain/default.nix
new file mode 100644
index 00000000000..69cc798ec0f
--- /dev/null
+++ b/pkgs/applications/audio/aacgain/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation {
+  name = "aacgain-1.9.0";
+  src = fetchFromGitHub {
+    owner = "mulx";
+    repo = "aacgain";
+    rev = "7c29dccd878ade1301710959aeebe87a8f0828f5";
+    sha256 = "07hl432vsscqg01b6wr99qmsj4gbx0i02x4k565432y6zpfmaxm0";
+  };
+
+  configurePhase = ''
+    cd mp4v2
+    ./configure
+
+    cd ../faad2
+    ./configure
+
+    cd ..
+    ./configure
+  '';
+
+  buildPhase = ''
+    cd mp4v2
+    make libmp4v2.la
+
+    cd ../faad2
+    make LDFLAGS=-static
+
+    cd ..
+    make   
+  '';
+
+  installPhase = ''
+    strip -s aacgain/aacgain
+    install -vD aacgain/aacgain "$out/bin/aacgain"
+  '';
+
+  meta = {
+    description = "ReplayGain for AAC files";
+    homepage = https://github.com/mulx/aacgain;
+    license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.robbinch ];
+  };
+}
diff --git a/pkgs/applications/audio/abcde/default.nix b/pkgs/applications/audio/abcde/default.nix
index b8c8c183753..eec1bdcf31c 100644
--- a/pkgs/applications/audio/abcde/default.nix
+++ b/pkgs/applications/audio/abcde/default.nix
@@ -1,18 +1,18 @@
-{ stdenv, fetchurl, libcdio, cddiscid, wget, bash, vorbisTools, id3v2, lame, flac, eject, mkcue
+{ stdenv, fetchurl, libcdio, cddiscid, wget, bash, vorbisTools, id3v2, eyeD3
+, lame, flac, eject, mkcue
 , perl, DigestSHA, MusicBrainz, MusicBrainzDiscID
 , makeWrapper }:
 
-let version = "2.6";
+let version = "2.7";
 in
   stdenv.mkDerivation {
     name = "abcde-${version}";
     src = fetchurl {
-      url = "mirror://debian/pool/main/a/abcde/abcde_${version}.orig.tar.gz";
-      sha256 = "0y2cg233n2hixs0ji76dggpzgf52v4c4mnpwiai889ql2piafgk8";
+      url = "http://abcde.einval.com/download/abcde-${version}.tar.gz";
+      sha256 = "0ikpffzvacadh6vj9qlary8126j1zrd2knp9gvivmp7y1656jj01";
     };
 
-    # FIXME: This package does not support MP3 encoding (only Ogg),
-    # nor `distmp3', `eject', etc.
+    # FIXME: This package does not support `distmp3', `eject', etc.
 
     patches = [ ./abcde.patch ];
 
@@ -50,7 +50,7 @@ in
          --replace '#!/usr/bin/perl' '#!${perl}/bin/perl'
 
       wrapProgram "$out/bin/abcde" --prefix PATH ":" \
-        "$out/bin:${libcdio}/bin:${cddiscid}/bin:${wget}/bin:${vorbisTools}/bin:${id3v2}/bin:${lame}/bin"
+        "$out/bin:${libcdio}/bin:${cddiscid}/bin:${wget}/bin:${vorbisTools}/bin:${id3v2}/bin:${eyeD3}/bin:${lame}/bin"
 
       wrapProgram "$out/bin/cddb-tool" --prefix PATH ":" \
         "${wget}/bin"
@@ -60,7 +60,7 @@ in
     '';
 
     meta = {
-      homepage = "http://lly.org/~rcw/abcde/page/";
+      homepage = http://abcde.einval.com/wiki/;
       license = stdenv.lib.licenses.gpl2Plus;
       description = "Command-line audio CD ripper";
 
diff --git a/pkgs/applications/audio/amarok/default.nix b/pkgs/applications/audio/amarok/default.nix
index 6ecdc1f98d4..d99e1b7a150 100644
--- a/pkgs/applications/audio/amarok/default.nix
+++ b/pkgs/applications/audio/amarok/default.nix
@@ -1,7 +1,8 @@
-{ stdenv, fetchurl, lib, qtscriptgenerator, perl, gettext, curl
-, libxml2, mysql, taglib, taglib_extras, loudmouth , kdelibs
-, qca2, libmtp, liblastfm, libgpod, pkgconfig, automoc4, phonon
-, strigi, soprano, qjson, ffmpeg, libofa, nepomuk_core ? null }:
+{ stdenv, fetchurl, lib, automoc4, cmake, perl, pkgconfig
+, qtscriptgenerator, gettext, curl , libxml2, mysql, taglib
+, taglib_extras, loudmouth , kdelibs , qca2, libmtp, liblastfm, libgpod
+, phonon , strigi, soprano, qjson, ffmpeg, libofa, nepomuk_core ? null
+}:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
@@ -16,9 +17,13 @@ stdenv.mkDerivation rec {
 
   QT_PLUGIN_PATH="${qtscriptgenerator}/lib/qt4/plugins";
 
-  buildInputs = [ qtscriptgenerator stdenv.cc.libc gettext curl
-    libxml2 mysql.lib taglib taglib_extras loudmouth kdelibs automoc4 phonon strigi
-    soprano qca2 libmtp liblastfm libgpod pkgconfig qjson ffmpeg libofa nepomuk_core ];
+  nativeBuildInputs = [ automoc4 cmake perl pkgconfig ];
+
+  buildInputs = [
+    qtscriptgenerator stdenv.cc.libc gettext curl libxml2 mysql.lib
+    taglib taglib_extras loudmouth kdelibs phonon strigi soprano qca2
+    libmtp liblastfm libgpod qjson ffmpeg libofa nepomuk_core
+  ];
 
   cmakeFlags = "-DKDE4_BUILD_TESTS=OFF";
 
diff --git a/pkgs/applications/audio/ardour/ardour3.nix b/pkgs/applications/audio/ardour/ardour3.nix
new file mode 100644
index 00000000000..a501fd95427
--- /dev/null
+++ b/pkgs/applications/audio/ardour/ardour3.nix
@@ -0,0 +1,94 @@
+{ stdenv, fetchgit, alsaLib, aubio, boost, cairomm, curl, doxygen, dbus, fftw
+, fftwSinglePrec, flac, glibc, glibmm, graphviz, gtk, gtkmm, libjack2
+, libgnomecanvas, libgnomecanvasmm, liblo, libmad, libogg, librdf
+, librdf_raptor, librdf_rasqal, libsamplerate, libsigcxx, libsndfile
+, libusb, libuuid, libxml2, libxslt, lilv-svn, lv2, makeWrapper, pango
+, perl, pkgconfig, python, rubberband, serd, sord-svn, sratom, suil, taglib, vampSDK }:
+
+let
+
+  # Ardour git repo uses a mix of annotated and lightweight tags. Annotated
+  # tags are used for MAJOR.MINOR versioning, and lightweight tags are used
+  # in-between; MAJOR.MINOR.REV where REV is the number of commits since the
+  # last annotated tag. A slightly different version string format is needed
+  # for the 'revision' info that is built into the binary; it is the format of
+  # "git describe" when _not_ on an annotated tag(!): MAJOR.MINOR-REV-HASH.
+
+  # Version to build.
+  #tag = "3.5.403";
+
+  # Version info that is built into the binary. Keep in sync with 'tag'. The
+  # last 8 digits is a (fake) commit id.
+  revision = "3.5-4539-g7024232";
+
+  # temporarily use a non tagged version, because 3.5.403 has a bug that
+  # causes loss of audio-files,  and it was decided that there won't be a
+  # hotfix release, and we should use 4.0 when it comes out.
+  # more info: http://comments.gmane.org/gmane.comp.audio.ardour.user/13665
+
+  version = "2015-02-20";
+in
+
+stdenv.mkDerivation rec {
+  name = "ardour3-git-${version}";
+
+  src = fetchgit {
+    url = git://git.ardour.org/ardour/ardour.git;
+    rev = "7024232855d268633760674d34c096ce447b7240";
+    sha256 = "ede3730455c3c91b2fd612871fa7262bdacd3dff4ba77c5dfbc3c1f0de9b8a36";
+  };
+
+  buildInputs = 
+    [ alsaLib aubio boost cairomm curl doxygen dbus fftw fftwSinglePrec flac glibc
+      glibmm graphviz gtk gtkmm libjack2 libgnomecanvas libgnomecanvasmm liblo
+      libmad libogg librdf librdf_raptor librdf_rasqal libsamplerate
+      libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv-svn lv2
+      makeWrapper pango perl pkgconfig python rubberband serd sord-svn sratom suil taglib vampSDK
+    ];
+
+  patchPhase = ''
+    printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${revision}\"; }\n' > libs/ardour/revision.cc
+    sed 's|/usr/include/libintl.h|${glibc}/include/libintl.h|' -i wscript
+    patchShebangs ./tools/
+  '';
+
+  configurePhase = "python waf configure --optimize --docs --with-backends=jack,alsa --prefix=$out";
+
+  buildPhase = "python waf";
+
+  installPhase = ''
+    python waf install
+
+    # Install desktop file
+    mkdir -p "$out/share/applications"
+    cat > "$out/share/applications/ardour.desktop" << EOF
+    [Desktop Entry]
+    Name=Ardour 3
+    GenericName=Digital Audio Workstation
+    Comment=Multitrack harddisk recorder
+    Exec=$out/bin/ardour3
+    Icon=$out/share/ardour3/icons/ardour_icon_256px.png
+    Terminal=false
+    Type=Application
+    X-MultipleArgs=false
+    Categories=GTK;Audio;AudioVideoEditing;AudioVideo;Video;
+    EOF
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Multi-track hard disk recording software";
+    longDescription = ''
+      Ardour is a digital audio workstation (DAW), You can use it to
+      record, edit and mix multi-track audio and midi. Produce your
+      own CDs. Mix video soundtracks. Experiment with new ideas about
+      music and sound.
+
+      Please consider supporting the ardour project financially:
+      https://community.ardour.org/node/8288
+    '';
+    homepage = http://ardour.org/;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.goibhniu ];
+  };
+}
diff --git a/pkgs/applications/audio/ardour/default.nix b/pkgs/applications/audio/ardour/default.nix
index b7a6cdc7fde..1ba5a7f09f4 100644
--- a/pkgs/applications/audio/ardour/default.nix
+++ b/pkgs/applications/audio/ardour/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, fetchgit, alsaLib, aubio, boost, cairomm, curl, fftw
-, fftwSinglePrec, flac, glibc, glibmm, gtk, gtkmm, jack2
+{ stdenv, fetchFromGitHub, alsaLib, aubio, boost, cairomm, curl, doxygen, dbus, fftw
+, fftwSinglePrec, flac, glibc, glibmm, graphviz, gtk, gtkmm, libjack2
 , libgnomecanvas, libgnomecanvasmm, liblo, libmad, libogg, librdf
 , librdf_raptor, librdf_rasqal, libsamplerate, libsigcxx, libsndfile
-, libusb, libuuid, libxml2, libxslt, lilv, lv2, makeWrapper, pango
-, perl, pkgconfig, python, serd, sord, sratom, suil }:
+, libusb, libuuid, libxml2, libxslt, lilv-svn, lv2, makeWrapper, pango
+, perl, pkgconfig, python, rubberband, serd, sord-svn, sratom, suil, taglib, vampSDK }:
 
 let
 
@@ -15,59 +15,50 @@ let
   # "git describe" when _not_ on an annotated tag(!): MAJOR.MINOR-REV-HASH.
 
   # Version to build.
-  tag = "3.5.403";
-
-  # Version info that is built into the binary. Keep in sync with 'tag'. The
-  # last 8 digits is a (fake) commit id.
-  revision = "3.5-403-00000000";
+  tag = "4.2";
 
 in
 
 stdenv.mkDerivation rec {
   name = "ardour-${tag}";
 
-  src = fetchgit {
-    url = git://git.ardour.org/ardour/ardour.git;
-    rev = "refs/tags/${tag}";
-    sha256 = "0k1z8sbjf88dqn12kf9cykrqj38vkr879n2g6b4adk6cghn8wz3x";
+  src = fetchFromGitHub {
+    owner = "Ardour";
+    repo = "ardour";
+    rev = "fe672c827cb2c08c94b1fa7e527d884c522a1af7";
+    sha256 = "12yfy9l5mnl96ix4s2qicp3m2zscli1a4bd50nk9v035pgf77s3f";
   };
 
-  buildInputs = 
-    [ alsaLib aubio boost cairomm curl fftw fftwSinglePrec flac glibc
-      glibmm gtk gtkmm jack2 libgnomecanvas libgnomecanvasmm liblo
+  buildInputs =
+    [ alsaLib aubio boost cairomm curl doxygen dbus fftw fftwSinglePrec flac glibc
+      glibmm graphviz gtk gtkmm libjack2 libgnomecanvas libgnomecanvasmm liblo
       libmad libogg librdf librdf_raptor librdf_rasqal libsamplerate
-      libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv lv2
-      makeWrapper pango perl pkgconfig python serd sord sratom suil
+      libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv-svn lv2
+      makeWrapper pango perl pkgconfig python rubberband serd sord-svn sratom suil taglib vampSDK
     ];
 
   patchPhase = ''
-    printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${revision}\"; }\n' > libs/ardour/revision.cc
+    printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${tag}-${builtins.substring 0 8 src.rev}\"; }\n' > libs/ardour/revision.cc
     sed 's|/usr/include/libintl.h|${glibc.dev}/include/libintl.h|' -i wscript
-    sed -e 's|^#!/usr/bin/perl.*$|#!${perl}/bin/perl|g' -i tools/fmt-bindings
-    sed -e 's|^#!/usr/bin/env.*$|#!${perl}/bin/perl|g' -i tools/*.pl
+    patchShebangs ./tools/
   '';
 
-  configurePhase = "python waf configure --optimize --prefix=$out";
+  configurePhase = "python waf configure --optimize --docs --with-backends=jack,alsa --prefix=$out";
 
   buildPhase = "python waf";
 
-  # For the custom ardour clearlooks gtk-engine to work, it must be
-  # moved to a directory called "engines" and added to GTK_PATH
   installPhase = ''
     python waf install
-    mkdir -pv $out/gtk2/engines
-    cp build/libs/clearlooks-newer/libclearlooks.so $out/gtk2/engines/
-    wrapProgram $out/bin/ardour3 --prefix GTK_PATH : $out/gtk2
 
     # Install desktop file
     mkdir -p "$out/share/applications"
     cat > "$out/share/applications/ardour.desktop" << EOF
     [Desktop Entry]
-    Name=Ardour 3
+    Name=Ardour 4
     GenericName=Digital Audio Workstation
     Comment=Multitrack harddisk recorder
-    Exec=$out/bin/ardour3
-    Icon=$out/share/ardour3/icons/ardour_icon_256px.png
+    Exec=$out/bin/ardour4
+    Icon=$out/share/ardour4/icons/ardour_icon_256px.png
     Terminal=false
     Type=Application
     X-MultipleArgs=false
@@ -78,7 +69,13 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Multi-track hard disk recording software";
     longDescription = ''
-      Also read "The importance of Paying Something" on their homepage, please!
+      Ardour is a digital audio workstation (DAW), You can use it to
+      record, edit and mix multi-track audio and midi. Produce your
+      own CDs. Mix video soundtracks. Experiment with new ideas about
+      music and sound.
+
+      Please consider supporting the ardour project financially:
+      https://community.ardour.org/node/8288
     '';
     homepage = http://ardour.org/;
     license = licenses.gpl2;
diff --git a/pkgs/applications/audio/artyFX/default.nix b/pkgs/applications/audio/artyFX/default.nix
new file mode 100644
index 00000000000..345d8f6ff0a
--- /dev/null
+++ b/pkgs/applications/audio/artyFX/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchgit, cairomm, cmake, libjack2, libpthreadstubs, libXdmcp, libxshmfence, libsndfile, lv2, ntk, pkgconfig }:
+
+stdenv.mkDerivation rec {
+  name = "artyFX-git-${version}";
+  version = "2015-05-07";
+
+  src = fetchgit {
+    url = "https://github.com/harryhaaren/openAV-ArtyFX.git";
+    rev = "3a8cb9a5e4ffaf27a497a31cc9cd6f2e79622d5b";
+    sha256 = "2e3f6ab6f829c0ec177e85f4e419286616cf35fb7303445caa09d3438cac27d5";
+  };
+
+  buildInputs = [ cairomm cmake libjack2 libpthreadstubs libXdmcp libxshmfence libsndfile lv2 ntk pkgconfig   ];
+
+  meta = with stdenv.lib; {
+    homepage = http://openavproductions.com/artyfx/;
+    description = "A LV2 plugin bundle of artistic realtime effects";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/audacious/default.nix b/pkgs/applications/audio/audacious/default.nix
index 3ab113c92e8..9476fbaf335 100644
--- a/pkgs/applications/audio/audacious/default.nix
+++ b/pkgs/applications/audio/audacious/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, glib, gtk3, libmowgli, libmcs
-, gettext, dbus_glib, libxml2, libmad, xlibs, alsaLib, libogg
+, gettext, dbus_glib, libxml2, libmad, xorg, alsaLib, libogg
 , libvorbis, libcdio, libcddb, flac, ffmpeg, makeWrapper
 , mpg123, neon, faad2
 }:
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   buildInputs =
     [ gettext pkgconfig glib gtk3 libmowgli libmcs libxml2 dbus_glib
-      libmad xlibs.libXcomposite libogg libvorbis flac alsaLib libcdio
+      libmad xorg.libXcomposite libogg libvorbis flac alsaLib libcdio
       libcddb ffmpeg makeWrapper mpg123 neon faad2
     ];
 
diff --git a/pkgs/applications/audio/beast/default.nix b/pkgs/applications/audio/beast/default.nix
index 340a83e7963..7113a169e80 100644
--- a/pkgs/applications/audio/beast/default.nix
+++ b/pkgs/applications/audio/beast/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, zlib, guile, libart_lgpl, pkgconfig, intltool
 , gtk, glib, libogg, libvorbis, libgnomecanvas, gettext, perl }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   name = "beast-0.7.1";
 
   src = fetchurl {
-    url = ftp://beast.gtk.org/pub/beast/v0.7/beast-0.7.1.tar.bz2;
+    url = "http://ftp.gtk.org/pub/beast/v0.7/${name}.tar.bz2";
     sha256 = "0jyl1i1918rsn4296w07fsf6wx3clvad522m3bzgf8ms7gxivg5l";
   };
 
@@ -29,9 +29,9 @@ stdenv.mkDerivation {
       ./patch.patch # patches taken from gentoo
     ];
 
-  meta = { 
+  meta = with stdenv.lib; {
     description = "A music composition and modular synthesis application";
     homepage = http://beast.gtk.org;
-    license = ["GPL-2" "LGPL-2.1"];
+    license = with licenses; [ gpl2 lgpl21 ];
   };
 }
diff --git a/pkgs/applications/audio/bitmeter/default.nix b/pkgs/applications/audio/bitmeter/default.nix
new file mode 100644
index 00000000000..0ca3d99ddc6
--- /dev/null
+++ b/pkgs/applications/audio/bitmeter/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, libjack2, gtk2, pkgconfig }:
+
+stdenv.mkDerivation rec {
+  name = "bitmeter-${version}";
+  version = "1.2";
+
+  src = fetchurl {
+    url = "http://devel.tlrmx.org/audio/source/${name}.tar.gz";
+    sha256 = "09ck2gxqky701dc1p0ip61rrn16v0pdc7ih2hc2sd63zcw53g2a7";
+  };
+
+  buildInputs = [ libjack2 gtk2 pkgconfig ];
+
+  meta = with stdenv.lib; {
+    homepage = http://devel.tlrmx.org/audio/bitmeter/;
+    description = "Also known as jack bitscope. Useful to detect denormals.";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/bristol/default.nix b/pkgs/applications/audio/bristol/default.nix
index b27ac058602..e19acab36b5 100644
--- a/pkgs/applications/audio/bristol/default.nix
+++ b/pkgs/applications/audio/bristol/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, alsaLib, jack2, pkgconfig, pulseaudio, xlibs }:
+{ stdenv, fetchurl, alsaLib, libjack2, pkgconfig, libpulseaudio, xorg }:
 
 stdenv.mkDerivation  rec {
   name = "bristol-${version}";
@@ -10,8 +10,8 @@ stdenv.mkDerivation  rec {
   };
 
   buildInputs = [
-    alsaLib jack2 pkgconfig pulseaudio xlibs.libX11 xlibs.libXext
-    xlibs.xproto
+    alsaLib libjack2 pkgconfig libpulseaudio xorg.libX11 xorg.libXext
+    xorg.xproto
   ];
 
   preInstall = ''
@@ -26,4 +26,4 @@ stdenv.mkDerivation  rec {
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/audio/bs1770gain/default.nix b/pkgs/applications/audio/bs1770gain/default.nix
new file mode 100644
index 00000000000..db6843f4535
--- /dev/null
+++ b/pkgs/applications/audio/bs1770gain/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, ffmpeg, sox }:
+
+stdenv.mkDerivation rec {
+  name = "bs1770gain-${version}";
+  version = "0.4.7";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/bs1770gain/${name}.tar.gz";
+    sha256 = "0dnypm7k4axc693g0z73n2mvycbzgc4lnj2am64xjzyg37my4qzz";
+  };
+
+  buildInputs = [ ffmpeg sox ];
+
+  meta = {
+    description = "A audio/video loudness scanner implementing ITU-R BS.1770";
+    license = stdenv.lib.licenses.gpl2Plus;
+    homepage = "http://bs1770gain.sourceforge.net/";
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/applications/audio/calf/default.nix b/pkgs/applications/audio/calf/default.nix
index 0f6ebfcedb5..4ba086d8848 100644
--- a/pkgs/applications/audio/calf/default.nix
+++ b/pkgs/applications/audio/calf/default.nix
@@ -1,17 +1,17 @@
 { stdenv, fetchurl, cairo, expat, fftwSinglePrec, fluidsynth, glib
-, gtk, jack2, ladspaH , libglade, lv2, pkgconfig }:
+, gtk, libjack2, ladspaH , libglade, lv2, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "calf-${version}";
   version = "0.0.60";
 
   src = fetchurl {
-    url = "mirror://sourceforge/calf/${name}.tar.gz";
+    url = "http://calf-studio-gear.org/files/${name}.tar.gz";
     sha256 = "019fwg00jv217a5r767z7szh7vdrarybac0pr2sk26xp81kibrx9";
   };
 
   buildInputs = [ 
-    cairo expat fftwSinglePrec fluidsynth glib gtk jack2 ladspaH
+    cairo expat fftwSinglePrec fluidsynth glib gtk libjack2 ladspaH
     libglade lv2 pkgconfig
   ];
 
diff --git a/pkgs/applications/audio/cantata/default.nix b/pkgs/applications/audio/cantata/default.nix
index b23384e9293..fa0fe73ebae 100644
--- a/pkgs/applications/audio/cantata/default.nix
+++ b/pkgs/applications/audio/cantata/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, cmake
 , withQt4 ? false, qt4
-, withQt5 ? true, qt5
+, withQt5 ? true, qtbase, qtsvg, qttools
 
 # I'm unable to make KDE work here, crashes at runtime so I simply
 # make Qt4 the default until someone who wants KDE can figure it out.
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
   buildInputs =
     [ cmake ]
     ++ stdenv.lib.optional withQt4 qt4
-    ++ stdenv.lib.optionals withQt5 (with qt5; [ base svg tools ])
+    ++ stdenv.lib.optionals withQt5 [ qtbase qtsvg qttools ]
     ++ stdenv.lib.optional withKDE4 kde4.kdelibs
     ++ stdenv.lib.optionals withTaglib [ taglib taglib_extras ]
     ++ stdenv.lib.optionals withReplaygain [ ffmpeg speex mpg123 ]
@@ -91,6 +91,10 @@ stdenv.mkDerivation rec {
     "-DENABLE_UDISKS2=ON"
   ];
 
+  postInstall = ''
+    wrapQtProgram "$out/bin/cantata"
+  '';
+
   meta = with stdenv.lib; {
     homepage = http://code.google.com/p/cantata/;
     description = "A graphical client for MPD";
diff --git a/pkgs/applications/audio/caps/default.nix b/pkgs/applications/audio/caps/default.nix
index 49880f6c0f3..b5004291271 100644
--- a/pkgs/applications/audio/caps/default.nix
+++ b/pkgs/applications/audio/caps/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl }:
 stdenv.mkDerivation rec {
   name = "caps-${version}";
-  version = "0.9.16";
+  version = "0.9.24";
   src = fetchurl {
     url = "http://www.quitte.de/dsp/caps_${version}.tar.bz2";
-    sha256 = "117l04w2zwqak856lihmaxg6f22vlz71knpxy0axiyri0x82lbwv";
+    sha256 = "081zx0i2ysw5nmy03j60q9j11zdlg1fxws81kwanncdgayxgwipp";
   };
   configurePhase = ''
     echo "PREFIX = $out" > defines.make
diff --git a/pkgs/applications/audio/caudec/default.nix b/pkgs/applications/audio/caudec/default.nix
index 24613d4dd96..978dd27facd 100644
--- a/pkgs/applications/audio/caudec/default.nix
+++ b/pkgs/applications/audio/caudec/default.nix
@@ -34,6 +34,6 @@ stdenv.mkDerivation rec {
     description = "A multiprocess audio converter that supports many formats (FLAC, MP3, Ogg Vorbis, Windows codecs and many more)";
     license     = licenses.gpl3;
     platforms   = platforms.linux ++ platforms.darwin;
-    maintainers = with maintainers; [ _1126 ];
+    maintainers = with maintainers; [ hiberno ];
   };
 }
diff --git a/pkgs/applications/audio/chuck/default.nix b/pkgs/applications/audio/chuck/default.nix
index bbce758be8a..04cc8008ea8 100644
--- a/pkgs/applications/audio/chuck/default.nix
+++ b/pkgs/applications/audio/chuck/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, alsaLib, bison, flex, libsndfile, which }:
 
 stdenv.mkDerivation rec {
-  version = "1.3.5.0";
+  version = "1.3.5.1";
   name = "chuck-${version}";
 
   src = fetchurl {
     url = "http://chuck.cs.princeton.edu/release/files/chuck-${version}.tgz";
-    sha256 = "0rj2l5k6ncm4jaiq0igwfc2bzryzchk1is1jhk1n7wifxcf3d3k5";
+    sha256 = "0lqzkphfd91kz95nf1wqy0z17r1m70c8inwvnb9fscbiaihwlhfi";
   };
 
   buildInputs = [ bison flex libsndfile which ]
diff --git a/pkgs/applications/audio/clementine/clementine-spotify-blob.patch b/pkgs/applications/audio/clementine/clementine-spotify-blob.patch
new file mode 100644
index 00000000000..d41720c9021
--- /dev/null
+++ b/pkgs/applications/audio/clementine/clementine-spotify-blob.patch
@@ -0,0 +1,25 @@
+From d9ebe7ec09a48b1ea505ccc33686b72642f083f4 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel <ttuegel@gmail.com>
+Date: Mon, 4 May 2015 19:59:38 -0500
+Subject: [PATCH] Runtime selection of Spotify blob
+
+---
+ src/internet/spotifyservice.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/internet/spotifyservice.cpp b/src/internet/spotifyservice.cpp
+index 543744e..d987a36 100644
+--- a/src/internet/spotifyservice.cpp
++++ b/src/internet/spotifyservice.cpp
+@@ -65,7 +65,7 @@ SpotifyService::SpotifyService(Application* app, InternetModel* parent)
+   system_blob_path_ = QCoreApplication::applicationDirPath() +
+       "/../PlugIns/clementine-spotifyblob";
+ #else
+-  system_blob_path_ = QCoreApplication::applicationDirPath() +
++  system_blob_path_ = qgetenv("CLEMENTINE_SPOTIFYBLOB") +
+       "/clementine-spotifyblob" CMAKE_EXECUTABLE_SUFFIX;
+ #endif
+ 
+-- 
+2.3.6
+
diff --git a/pkgs/applications/audio/clementine/default.nix b/pkgs/applications/audio/clementine/default.nix
index 538f54fbaf8..c9b16b65267 100644
--- a/pkgs/applications/audio/clementine/default.nix
+++ b/pkgs/applications/audio/clementine/default.nix
@@ -1,24 +1,25 @@
 { stdenv, fetchurl, boost, cmake, gettext, gstreamer, gst_plugins_base
-, gst_plugins_good, gst_plugins_bad, gst_plugins_ugly, gst_ffmpeg
 , liblastfm, qt4, taglib, fftw, glew, qjson, sqlite, libgpod, libplist
-, usbmuxd, libmtp, gvfs, libcdio, protobuf, libspotify, qca2, pkgconfig
-, sparsehash, config, makeWrapper }:
+, usbmuxd, libmtp, gvfs, libcdio, libspotify, protobuf, qca2, pkgconfig
+, sparsehash, config, makeWrapper, runCommand, gst_plugins }:
 
-let withSpotify = config.clementine.spotify or false;
-in
-stdenv.mkDerivation {
-  name = "clementine-1.2.3";
+let
+  withSpotify = config.clementine.spotify or false;
+
+  version = "1.2.3";
+
+  exeName = "clementine";
 
   src = fetchurl {
     url = https://github.com/clementine-player/Clementine/archive/1.2.3.tar.gz;
     sha256 = "1gx1109i4pylz6x7gvp4rdzc6dvh0w6in6hfbygw01d08l26bxbx";
   };
 
-  patches =
-    [
-      ./clementine-1.2.1-include-paths.patch
-      ./clementine-dbus-namespace.patch
-    ];
+  patches = [
+    ./clementine-1.2.1-include-paths.patch
+    ./clementine-dbus-namespace.patch
+    ./clementine-spotify-blob.patch
+  ];
 
   buildInputs = [
     boost
@@ -27,9 +28,6 @@ stdenv.mkDerivation {
     gettext
     glew
     gst_plugins_base
-    gst_plugins_good
-    gst_plugins_ugly
-    gst_ffmpeg
     gstreamer
     gvfs
     libcdio
@@ -37,7 +35,6 @@ stdenv.mkDerivation {
     liblastfm
     libmtp
     libplist
-    makeWrapper
     pkgconfig
     protobuf
     qca2
@@ -47,22 +44,77 @@ stdenv.mkDerivation {
     sqlite
     taglib
     usbmuxd
-  ] ++ stdenv.lib.optional withSpotify libspotify;
+  ];
 
-  enableParallelBuilding = true;
+  free = stdenv.mkDerivation {
+    name = "clementine-free-${version}";
+    inherit patches src buildInputs;
+    enableParallelBuilding = true;
+    meta = with stdenv.lib; {
+      homepage = "http://www.clementine-player.org";
+      description = "A multiplatform music player";
+      license = licenses.gpl3Plus;
+      platforms = platforms.linux;
+      maintainers = [ maintainers.ttuegel ];
+    };
+  };
 
-  postInstall = ''
-    wrapProgram $out/bin/clementine \
-      --set GST_PLUGIN_SYSTEM_PATH "$GST_PLUGIN_SYSTEM_PATH"
-  '';
+  # Spotify blob for Clementine
+  blob = stdenv.mkDerivation {
+    name = "clementine-blob-${version}";
+    # Use the same patches and sources as Clementine
+    inherit patches src;
+    buildInputs = buildInputs ++ [ libspotify ];
+    # Only build and install the Spotify blob
+    preBuild = ''
+      cd ext/clementine-spotifyblob
+    '';
+    postInstall = ''
+      mkdir -p $out/libexec/clementine
+      mv $out/bin/clementine-spotifyblob $out/libexec/clementine
+      rmdir $out/bin
+    '';
+    enableParallelBuilding = true;
+    meta = with stdenv.lib; {
+      homepage = "http://www.clementine-player.org";
+      description = "Spotify integration for Clementine";
+      # The blob itself is Apache-licensed, although libspotify is unfree.
+      license = licenses.asl20;
+      platforms = platforms.linux;
+      maintainers = [ maintainers.ttuegel ];
+    };
+  };
 
-  meta = with stdenv.lib; {
+in
+
+with stdenv.lib;
+
+runCommand "clementine-${version}"
+{
+  inherit blob free;
+  buildInputs = [ makeWrapper ] ++ gst_plugins; # for the setup-hooks
+  dontPatchELF = true;
+  dontStrip = true;
+  meta = {
     homepage = "http://www.clementine-player.org";
-    description = "A multiplatform music player";
+    description = "A multiplatform music player"
+      + " (" + (optionalString withSpotify "with Spotify, ")
+      + "with gstreamer plugins: "
+      + concatStrings (intersperse ", " (map (x: x.name) gst_plugins))
+      + ")";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.ttuegel ];
-    # libspotify is unfree
-    hydraPlatforms = optionals (!withSpotify) platforms.linux;
   };
 }
+''
+  mkdir -p $out/bin
+  makeWrapper "$free/bin/${exeName}" "$out/bin/${exeName}" \
+      ${optionalString withSpotify "--set CLEMENTINE_SPOTIFYBLOB \"$blob/libexec/clementine\""} \
+      --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH"
+
+  mkdir -p $out/share
+  for dir in applications icons kde4; do
+      ln -s "$free/share/$dir" "$out/share/$dir"
+  done
+''
diff --git a/pkgs/applications/audio/cmus/default.nix b/pkgs/applications/audio/cmus/default.nix
index fd252754d66..a5cfdf227bb 100644
--- a/pkgs/applications/audio/cmus/default.nix
+++ b/pkgs/applications/audio/cmus/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, ncurses, pkgconfig, alsaLib, flac, libmad, ffmpeg, libvorbis, libmpc, mp4v2, libcue, pulseaudio}:
+{ stdenv, fetchgit, ncurses, pkgconfig, alsaLib, flac, libmad, ffmpeg, libvorbis, libmpc, mp4v2, libcue, libpulseaudio}:
 
 stdenv.mkDerivation rec {
   name = "cmus-${version}";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   configurePhase = "./configure prefix=$out";
 
-  buildInputs = [ ncurses pkgconfig alsaLib flac libmad ffmpeg libvorbis libmpc mp4v2 libcue pulseaudio ];
+  buildInputs = [ ncurses pkgconfig alsaLib flac libmad ffmpeg libvorbis libmpc mp4v2 libcue libpulseaudio ];
 
   meta = {
     description = "Small, fast and powerful console music player for Linux and *BSD";
diff --git a/pkgs/applications/audio/constant-detune-chorus/default.nix b/pkgs/applications/audio/constant-detune-chorus/default.nix
new file mode 100644
index 00000000000..54fe4c866d5
--- /dev/null
+++ b/pkgs/applications/audio/constant-detune-chorus/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, faust2jack, faust2lv2 }:
+stdenv.mkDerivation rec {
+  name = "constant-detune-chorus-${version}";
+  version = "0.1.01";
+
+  src = fetchFromGitHub {
+    owner = "magnetophon";
+    repo = "constant-detune-chorus";
+    rev = "v${version}";
+    sha256 = "1z8aj1a36ix9jizk9wl06b3i98hrkg47qxqp8vx930r624pc5z86";
+  };
+
+  buildInputs = [ faust2jack faust2lv2 ];
+
+  buildPhase = ''
+    faust2jack -t 99999 constant-detune-chorus.dsp
+    faust2lv2 -t 99999 constant-detune-chorus.dsp
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp constant-detune-chorus $out/bin/
+    mkdir -p $out/lib/lv2
+    cp -r constant-detune-chorus.lv2/ $out/lib/lv2
+  '';
+
+  meta = {
+    description = "A chorus algorithm that maintains constant and symmetric detuning depth (in cents), regardless of modulation rate. For jack and lv2";
+    homepage = https://github.com/magnetophon/constant-detune-chorus;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+  };
+}
diff --git a/pkgs/applications/audio/csound/default.nix b/pkgs/applications/audio/csound/default.nix
index 64f3f3586a3..693d8e2a6e5 100644
--- a/pkgs/applications/audio/csound/default.nix
+++ b/pkgs/applications/audio/csound/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, cmake, libsndfile, flex, bison
 , alsaLib ? null
-, pulseaudio ? null
+, libpulseaudio ? null
 , tcltk ? null
 
 # maybe csound can be compiled with support for those, see configure output
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
     sha256 = "0w6ij57dbfjljpf05bb9r91jphwaq1v63rh0713vl2n11d73dy7m";
   };
 
-  buildInputs = [ cmake libsndfile flex bison alsaLib pulseaudio tcltk ];
+  buildInputs = [ cmake libsndfile flex bison alsaLib libpulseaudio tcltk ];
 
   meta = {
     description = "sound design, audio synthesis, and signal processing system, providing facilities for music composition and performance on all major operating systems and platforms";
diff --git a/pkgs/applications/audio/deadbeef/default.nix b/pkgs/applications/audio/deadbeef/default.nix
index ca8ce453e63..d1828016de3 100644
--- a/pkgs/applications/audio/deadbeef/default.nix
+++ b/pkgs/applications/audio/deadbeef/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, intltool, pkgconfig
+{ stdenv, fetchurl, intltool, pkgconfig, fetchpatch
 # deadbeef can use either gtk2 or gtk3
 , gtk2Support ? true, gtk2 ? null
 , gtk3Support ? false, gtk3 ? null, gsettings_desktop_schemas ? null, makeWrapper ? null
@@ -18,7 +18,7 @@
 , osdSupport ? true, dbus ? null
 # output plugins
 , alsaSupport ? true, alsaLib ? null
-, pulseSupport ? true, pulseaudio ? null
+, pulseSupport ? true, libpulseaudio ? null
 # effect plugins
 , resamplerSupport ? true, libsamplerate ? null
 , overloadSupport ? true, zlib ? null
@@ -41,7 +41,7 @@ assert artworkSupport -> imlib2 != null;
 assert hotkeysSupport -> libX11 != null;
 assert osdSupport -> dbus != null;
 assert alsaSupport -> alsaLib != null;
-assert pulseSupport -> pulseaudio != null;
+assert pulseSupport -> libpulseaudio != null;
 assert resamplerSupport -> libsamplerate != null;
 assert overloadSupport -> zlib != null;
 assert wavpackSupport -> wavpack != null;
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
   name = "deadbeef-0.6.2";
 
   src = fetchurl {
-    url = "http://garr.dl.sourceforge.net/project/deadbeef/${name}.tar.bz2";
+    url = "mirror://sourceforge/project/deadbeef/${name}.tar.bz2";
     sha256 = "06jfsqyakpvq0xhah7dlyvdzh5ym3hhb4yfczczw11ijd1kbjcrl";
   };
 
@@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
     ++ optional hotkeysSupport libX11
     ++ optional osdSupport dbus
     ++ optional alsaSupport alsaLib
-    ++ optional pulseSupport pulseaudio
+    ++ optional pulseSupport libpulseaudio
     ++ optional resamplerSupport libsamplerate
     ++ optional overloadSupport zlib
     ++ optional wavpackSupport wavpack
@@ -82,6 +82,12 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  patches = [ (fetchpatch {
+                url = "https://github.com/Alexey-Yakovenko/deadbeef/commit/e7725ea73fa1bd279a3651704870156bca8efea8.patch";
+                sha256 = "1530w968zyvcm9c8k57889n125k7a1kk3ydinjm398n07gypd599";
+              })
+            ];
+
   postInstall = if !gtk3Support then "" else ''
     wrapProgram "$out/bin/deadbeef" \
       --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
diff --git a/pkgs/applications/audio/deadbeef/plugins/mpris2.nix b/pkgs/applications/audio/deadbeef/plugins/mpris2.nix
new file mode 100644
index 00000000000..1504cce1d58
--- /dev/null
+++ b/pkgs/applications/audio/deadbeef/plugins/mpris2.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl, pkgconfig, deadbeef, glib }:
+
+stdenv.mkDerivation rec {
+  version = "1.8";
+  name = "deadbeef-mpris2-plugin-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/Serranya/deadbeef-mpris2-plugin/releases/download/v${version}/${name}.tar.xz";
+    sha256 = "1xg880zlxbqz7hs5g7xwc128l08j8c3isn45rdi138hi4fqbyjfi";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+
+  buildInputs = [ deadbeef glib ];
+
+  meta = with stdenv.lib; {
+    description = "MPRISv2 plugin for the DeaDBeeF music player";
+    homepage = https://github.com/Serranya/deadbeef-mpris2-plugin/;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.abbradar ];
+  };
+}
diff --git a/pkgs/applications/audio/deadbeef/wrapper.nix b/pkgs/applications/audio/deadbeef/wrapper.nix
new file mode 100644
index 00000000000..b612f195af3
--- /dev/null
+++ b/pkgs/applications/audio/deadbeef/wrapper.nix
@@ -0,0 +1,22 @@
+{ stdenv, buildEnv, deadbeef, makeWrapper, plugins }:
+
+let
+drv = buildEnv {
+  name = "deadbeef-with-plugins-" + (builtins.parseDrvName deadbeef.name).version;
+
+  paths = [ deadbeef ] ++ plugins;
+
+  postBuild = ''
+    # TODO: This could be avoided if buildEnv could be forced to create all directories
+    if [ -L $out/bin ]; then
+      rm $out/bin
+      mkdir $out/bin
+      for i in ${deadbeef}/bin/*; do
+        ln -s $i $out/bin
+      done
+    fi
+    wrapProgram $out/bin/deadbeef \
+      --set DEADBEEF_PLUGIN_DIR "$out/lib/deadbeef"
+  '';
+  };
+in stdenv.lib.overrideDerivation drv (x : { buildInputs = x.buildInputs ++ [ makeWrapper ]; })
diff --git a/pkgs/applications/audio/dfasma/default.nix b/pkgs/applications/audio/dfasma/default.nix
new file mode 100644
index 00000000000..d439f344f5b
--- /dev/null
+++ b/pkgs/applications/audio/dfasma/default.nix
@@ -0,0 +1,76 @@
+{ stdenv, fetchFromGitHub, fftw, libsndfile, qtbase, qtmultimedia }:
+
+let
+
+  version = "1.2.5";
+  rev = "v${version}";
+  sha256 = "0mgy2bkmyp7lvaqsr7hkndwdgjf26mlpsj6smrmn1vp0cqyrw72d";
+
+  reaperFork = {
+    src = fetchFromGitHub {
+      sha256 = "07m2wf2gqyya95b65gawrnr4pvc9jyzmg6h8sinzgxlpskz93wwc";
+      rev = "39053e8896eedd7b3e8a9e9a9ffd80f1fc6ceb16";
+      repo = "reaper";
+      owner = "gillesdegottex";
+    };
+    meta = with stdenv.lib; {
+     license = licenses.asl20;
+    };
+  };
+
+  libqaudioextra = {
+    src = fetchFromGitHub {
+      sha256 = "17pvlij8cc4lwzf6f1cnygj3m3ci6xfa3lv5bgcr5i1gzyjxqpq1";
+      rev = "b7d187cd9a1fd76ea94151e2e02453508d0151d3";
+      repo = "libqaudioextra";
+      owner = "gillesdegottex";
+    };
+    meta = with stdenv.lib; {
+     license = licenses.gpl3Plus;
+    };
+  };
+
+in stdenv.mkDerivation {
+  name = "dfasma-${version}";
+
+  src = fetchFromGitHub {
+    inherit sha256 rev;
+    repo = "dfasma";
+    owner = "gillesdegottex";
+  };
+
+  buildInputs = [ fftw libsndfile qtbase qtmultimedia ];
+
+  postPatch = ''
+    substituteInPlace dfasma.pro --replace '$$DFASMAVERSIONGITPRO' '${version}'
+    cp -Rv "${reaperFork.src}"/* external/REAPER
+    cp -Rv "${libqaudioextra.src}"/* external/libqaudioextra
+  '';
+
+  configurePhase = ''
+    qmake PREFIX=$out PREFIXSHORTCUT=$out dfasma.pro
+  '';
+
+  enableParallelBuilding = true;
+
+  postInstall = ''
+    wrapQtProgram "$out/bin/dfasma"
+  '';
+
+  meta = with stdenv.lib; {
+    inherit version;
+    description = "Analyse and compare audio files in time and frequency";
+    longDescription = ''
+      DFasma is free open-source software to compare audio files by time and
+      frequency. The comparison is first visual, using wavforms and spectra. It
+      is also possible to listen to time-frequency segments in order to allow
+      perceptual comparison. It is basically dedicated to analysis. Even though
+      there are basic functionalities to align the signals in time and
+      amplitude, this software does not aim to be an audio editor.
+    '';
+    homepage = http://gillesdegottex.github.io/dfasma/;
+    license = [ licenses.gpl3Plus reaperFork.meta.license ];
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ nckx ];
+  };
+}
diff --git a/pkgs/applications/audio/dirt/default.nix b/pkgs/applications/audio/dirt/default.nix
index b5436fde7e9..4da15a4b8e3 100644
--- a/pkgs/applications/audio/dirt/default.nix
+++ b/pkgs/applications/audio/dirt/default.nix
@@ -1,21 +1,29 @@
-{ stdenv, fetchFromGitHub, libsndfile, libsamplerate, liblo, jack2 }:
+{ stdenv, fetchFromGitHub, libsndfile, libsamplerate, liblo, libjack2 }:
 
 stdenv.mkDerivation rec {
-  name = "dirt-git";
+  name = "dirt-2015-04-28";
   src = fetchFromGitHub {
     repo = "Dirt";
     owner = "tidalcycles";
     rev = "cfc5e85318defda7462192b5159103c823ce61f7";
     sha256 = "1shbyp54q64g6bsl6hhch58k3z1dyyy9ph6cq2xvdf8syy00sisz";
   };
-  buildInputs = [ libsndfile libsamplerate liblo jack2 ];
+  buildInputs = [ libsndfile libsamplerate liblo libjack2 ];
+  postPatch = ''
+    sed -i "s|./samples|$out/share/dirt/samples|" file.h
+  '';
   configurePhase = ''
     export DESTDIR=$out
   '';
+  postInstall = ''
+    mkdir -p $out/share/dirt/
+    cp -r samples $out/share/dirt/
+  '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "An unimpressive thingie for playing bits of samples with some level of accuracy";
     homepage = "https://github.com/tidalcycles/Dirt";
-    license = stdenv.lib.licenses.gpl3;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ anderspapitto ];
   };
 }
diff --git a/pkgs/applications/audio/distrho/default.nix b/pkgs/applications/audio/distrho/default.nix
index a8c710f2099..72893dfb19a 100644
--- a/pkgs/applications/audio/distrho/default.nix
+++ b/pkgs/applications/audio/distrho/default.nix
@@ -1,13 +1,13 @@
-{ stdenv, fetchgit, alsaLib, fftwSinglePrec, freetype, jack2
-, libxslt, lv2, pkgconfig, premake3, xlibs }:
+{ stdenv, fetchgit, alsaLib, fftwSinglePrec, freetype, libjack2
+, libxslt, lv2, pkgconfig, premake3, xorg, ladspa-sdk }:
 
 stdenv.mkDerivation rec {
-  name = "distrho-ports-git-2015-01-28";
+  name = "distrho-ports-git-2015-07-18";
 
   src = fetchgit {
     url = "https://github.com/DISTRHO/DISTRHO-Ports.git";
-    rev = "b4e2dc24802fe6804c60fcd2559a0bca46b7709c";
-    sha256 = "661ff6f7cda71a8dd08cbcea3f560e99f0fc2232053cbc9a2aaba854137805c6";
+    rev = "53458838505efef91ed069d0a7d970b6b3588eba";
+    sha256 = "0fb4dxfvvqy8lnm9c91sxwn5wbcw8grfpm52zag25vrls251aih3";
   };
 
   patchPhase = ''
@@ -15,20 +15,18 @@ stdenv.mkDerivation rec {
   '';
 
   buildInputs = [
-    alsaLib fftwSinglePrec freetype jack2 pkgconfig premake3
-    xlibs.libX11 xlibs.libXcomposite xlibs.libXcursor xlibs.libXext
-    xlibs.libXinerama xlibs.libXrender
+    alsaLib fftwSinglePrec freetype libjack2 pkgconfig premake3
+    xorg.libX11 xorg.libXcomposite xorg.libXcursor xorg.libXext
+    xorg.libXinerama xorg.libXrender ladspa-sdk
   ];
 
   buildPhase = ''
     sh ./scripts/premake-update.sh linux
-    make standalone
     make lv2
   '';
 
   installPhase = ''
     mkdir -p $out/bin
-    cp bin/standalone/* $out/bin/
     mkdir -p $out/lib/lv2
     cp -a bin/lv2/* $out/lib/lv2/
   '';
@@ -38,18 +36,14 @@ stdenv.mkDerivation rec {
     description = "A collection of cross-platform audio effects and plugins";
     longDescription = ''
       Includes:
-      3BandEQ bitmangler drowaudio-distortion drowaudio-flanger
-      drowaudio-tremolo eqinox juce_pitcher sDelay TAL-Filter
-      TAL-NoiseMaker TAL-Reverb-2 TAL-Vocoder-2 ThePilgrim
-      Wolpertinger argotlunar capsaicin drowaudio-distortionshaper
-      drowaudio-reverb drumsynth highlife JuceDemoPlugin PingPongPan
-      TAL-Dub-3 TAL-Filter-2 TAL-Reverb TAL-Reverb-3 TheFunction vex
+      Dexed  drowaudio-distortion drowaudio-distortionshaper drowaudio-flanger
+      drowaudio-reverb drowaudio-tremolo drumsynt EasySSP  eqinox
+      JuceDemoPlugin klangfalter LUFSMeter luftikus obxd pitchedDelay
+      stereosourceseparation TAL-Dub-3 TAL-Filter TAL-Filter-2 TAL-NoiseMaker
+      TAL-Reverb TAL-Reverb-2 TAL-Reverb-3 TAL-Vocoder-2 TheFunction
+      ThePilgrim Vex Wolpertinger
     '';
     maintainers = [ maintainers.goibhniu ];
     platforms = platforms.linux;
-
-    # The old repo was removed and split into multiple repos. More
-    # work is required to get everything to build and work.
-    broken = true;
   };
 }
diff --git a/pkgs/applications/audio/drumgizmo/default.nix b/pkgs/applications/audio/drumgizmo/default.nix
index 2daafda554e..92ea6ee2fae 100644
--- a/pkgs/applications/audio/drumgizmo/default.nix
+++ b/pkgs/applications/audio/drumgizmo/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, alsaLib, expat, glib, jack2, libX11, libpng
+{ stdenv, fetchurl, alsaLib, expat, glib, libjack2, libX11, libpng
 , libpthreadstubs, libsmf, libsndfile, lv2, pkgconfig
 }:
 
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   configureFlags = [ "--enable-lv2" ];
 
   buildInputs = [
-    alsaLib expat glib jack2 libX11 libpng libpthreadstubs libsmf
+    alsaLib expat glib libjack2 libX11 libpng libpthreadstubs libsmf
     libsndfile lv2 pkgconfig
   ];
 
diff --git a/pkgs/applications/audio/drumkv1/default.nix b/pkgs/applications/audio/drumkv1/default.nix
index d71845ead37..7fdf1c34771 100644
--- a/pkgs/applications/audio/drumkv1/default.nix
+++ b/pkgs/applications/audio/drumkv1/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchurl, jack2, libsndfile, lv2, qt4 }:
+{ stdenv, fetchurl, libjack2, libsndfile, lv2, qt4 }:
 
 stdenv.mkDerivation rec {
   name = "drumkv1-${version}";
-  version = "0.6.1";
+  version = "0.7.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/drumkv1/${name}.tar.gz";
-    sha256 = "082ml6g63n6s3w704fjkma8085g2l10az3f6r78y9hpgpw3042jw";
+    sha256 = "0mpf8akqaakg7vbn8gba0ns64hzhn5xzh1qxqpchcv32swn21cq4";
   };
 
-  buildInputs = [ jack2 libsndfile lv2 qt4 ];
+  buildInputs = [ libjack2 libsndfile lv2 qt4 ];
 
   meta = with stdenv.lib; {
     description = "An old-school drum-kit sampler synthesizer with stereo fx";
@@ -18,4 +18,4 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/audio/easytag/default.nix b/pkgs/applications/audio/easytag/default.nix
index 2d738f55c28..cb1def12dfd 100644
--- a/pkgs/applications/audio/easytag/default.nix
+++ b/pkgs/applications/audio/easytag/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig, intltool, gtk3, glib, libid3tag, id3lib, taglib
 , libvorbis, libogg, flac, itstool, libxml2, gsettings_desktop_schemas
-, makeWrapper, gnome_icon_theme, dconf
+, makeWrapper, gnome3
 }:
 
 stdenv.mkDerivation rec {
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   preFixup = ''
     wrapProgram $out/bin/easytag \
       --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH:$out/share" \
-      --prefix GIO_EXTRA_MODULES : "${dconf}/lib/gio/modules"
+      --prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules"
   '';
 
   NIX_LDFLAGS = "-lid3tag -lz";
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [
     pkgconfig intltool gtk3 glib libid3tag id3lib taglib libvorbis libogg flac
-    itstool libxml2 gsettings_desktop_schemas gnome_icon_theme dconf
+    itstool libxml2 gsettings_desktop_schemas gnome3.defaultIconTheme gnome3.dconf
   ];
 
   meta = {
diff --git a/pkgs/applications/audio/ekho/default.nix b/pkgs/applications/audio/ekho/default.nix
index dd9b830be84..78383eec953 100644
--- a/pkgs/applications/audio/ekho/default.nix
+++ b/pkgs/applications/audio/ekho/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig
-, libsndfile, pulseaudio
+, libsndfile, libpulseaudio
 }:
 
 let
@@ -35,5 +35,5 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
 
-  buildInputs = [ libsndfile pulseaudio ];
+  buildInputs = [ libsndfile libpulseaudio ];
 }
diff --git a/pkgs/applications/audio/eq10q/default.nix b/pkgs/applications/audio/eq10q/default.nix
new file mode 100644
index 00000000000..5d5b70a5898
--- /dev/null
+++ b/pkgs/applications/audio/eq10q/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, cmake, fftw, gtkmm, libxcb, lv2, pkgconfig, xorg }:
+stdenv.mkDerivation rec {
+  name = "eq10q-2-${version}";
+  version = "beta7.1";
+  src = fetchurl {
+    url = "http://downloads.sourceforge.net/project/eq10q/${name}.tar.gz";
+    sha256 = "1jmrcx4jlx8kgsy5n4jcxa6qkjqvx7d8l2p7dsmw4hj20s39lgyi";
+  };
+
+  buildInputs = [ cmake fftw gtkmm libxcb lv2 pkgconfig xorg.libpthreadstubs xorg.libXdmcp xorg.libxshmfence ];
+
+  installFlags = ''
+    DESTDIR=$(out)
+  '';
+
+  fixupPhase = ''
+    cp -r $out/var/empty/local/lib $out
+    rm -R $out/var
+  '';
+
+  meta = {
+    description = "LV2 EQ plugins and more, with 64 bit processing";
+    longDescription = ''
+      Up to 10-Bands parametric equalizer with mono and stereo versions.
+      Versatile noise-gate plugin with mono and stereo versions.
+      Compressor plugin with mono and stereo versions.
+      BassUp plugin - Enhanceing the bass guitar sound or other low frequency sounding instruments.
+      Improved high frequency response for peaking filter (in equalizers).
+      64 bits floating point internal audio processing.
+      Nice GUI with powerful metering for every plugin.
+    '';
+    homepage = http://eq10q.sourceforge.net/;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/faust/faust2jack.nix b/pkgs/applications/audio/faust/faust2jack.nix
index bec523ad021..9dfb7f875c5 100644
--- a/pkgs/applications/audio/faust/faust2jack.nix
+++ b/pkgs/applications/audio/faust/faust2jack.nix
@@ -1,6 +1,6 @@
 { faust
 , gtk
-, jack2
+, jack2Full
 , opencv
 }:
 
@@ -16,7 +16,7 @@ faust.wrapWithBuildEnv {
 
   propagatedBuildInputs = [
     gtk
-    jack2
+    jack2Full
     opencv
   ];
 
diff --git a/pkgs/applications/audio/faust/faust2jaqt.nix b/pkgs/applications/audio/faust/faust2jaqt.nix
index 3590bc6860d..c0911b31538 100644
--- a/pkgs/applications/audio/faust/faust2jaqt.nix
+++ b/pkgs/applications/audio/faust/faust2jaqt.nix
@@ -1,5 +1,5 @@
 { faust
-, jack2
+, jack2Full
 , opencv
 , qt4
 }:
@@ -14,7 +14,7 @@ faust.wrapWithBuildEnv {
   ];
 
   propagatedBuildInputs = [
-    jack2
+    jack2Full
     opencv
     qt4
   ];
diff --git a/pkgs/applications/audio/flac/default.nix b/pkgs/applications/audio/flac/default.nix
index 80e4e49fb18..e9b57fcd072 100644
--- a/pkgs/applications/audio/flac/default.nix
+++ b/pkgs/applications/audio/flac/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "4773c0099dba767d963fd92143263be338c48702172e8754b9bc5103efe1c56c";
   };
 
+  outputs = [ "out" "doc" ];
+
   buildInputs = [ libogg ];
 
   #doCheck = true; # takes lots of time
diff --git a/pkgs/applications/audio/fldigi/default.nix b/pkgs/applications/audio/fldigi/default.nix
index 5a4793a09c1..8e80992d7ca 100644
--- a/pkgs/applications/audio/fldigi/default.nix
+++ b/pkgs/applications/audio/fldigi/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, hamlib, fltk13, libjpeg, libpng, portaudio, libsndfile,
-  libsamplerate, pulseaudio, libXinerama, gettext, pkgconfig, alsaLib }:
+  libsamplerate, libpulseaudio, libXinerama, gettext, pkgconfig, alsaLib }:
 
 stdenv.mkDerivation rec {
   version = "3.22.02";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ libXinerama gettext hamlib fltk13 libjpeg libpng portaudio
-                  libsndfile libsamplerate pulseaudio pkgconfig alsaLib ];
+                  libsndfile libsamplerate libpulseaudio pkgconfig alsaLib ];
 
   meta = {
     description = "Digital modem program";
diff --git a/pkgs/applications/audio/fluidsynth/default.nix b/pkgs/applications/audio/fluidsynth/default.nix
index 8cba482194e..bd35b78fbc0 100644
--- a/pkgs/applications/audio/fluidsynth/default.nix
+++ b/pkgs/applications/audio/fluidsynth/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchurl, alsaLib, glib, jack2, libsndfile, pkgconfig
-, pulseaudio }:
+{ stdenv, fetchurl, alsaLib, glib, libjack2, libsndfile, pkgconfig
+, libpulseaudio }:
 
 stdenv.mkDerivation  rec {
   name = "fluidsynth-${version}";
@@ -21,7 +21,7 @@ stdenv.mkDerivation  rec {
     "-framework CoreAudio";
 
   buildInputs = [ glib libsndfile pkgconfig ]
-    ++ stdenv.lib.optionals (!stdenv.isDarwin) [ alsaLib pulseaudio jack2 ];
+    ++ stdenv.lib.optionals (!stdenv.isDarwin) [ alsaLib libpulseaudio libjack2 ];
 
   meta = with stdenv.lib; {
     description = "Real-time software synthesizer based on the SoundFont 2 specifications";
diff --git a/pkgs/applications/audio/fmit/default.nix b/pkgs/applications/audio/fmit/default.nix
index 0c12778089b..36988c98091 100644
--- a/pkgs/applications/audio/fmit/default.nix
+++ b/pkgs/applications/audio/fmit/default.nix
@@ -1,28 +1,51 @@
-{ stdenv, fetchurl, alsaLib, cmake, fftw, freeglut, jack2, libXmu, qt4 }:
+{ stdenv, fetchFromGitHub, fftw, freeglut, qtbase, qtmultimedia
+, alsaSupport ? true, alsaLib ? null
+, jackSupport ? false, libjack2 ? null
+, portaudioSupport ? false, portaudio ? null }:
 
-stdenv.mkDerivation rec {
-  version = "0.99.5";
+assert alsaSupport -> alsaLib != null;
+assert jackSupport -> libjack2 != null;
+assert portaudioSupport -> portaudio != null;
+
+let version = "1.0.8"; in
+stdenv.mkDerivation {
   name = "fmit-${version}";
 
-  src = fetchurl {
-    url = "http://download.gna.org/fmit/${name}-Source.tar.bz2";
-    sha256 = "1rc84gi27jmq2smhk0y0p2xyypmsz878vi053iqns21k848g1491";
+  src = fetchFromGitHub {
+    sha256 = "04s7xcgmi5g58lirr48vf203n1jwdxf981x1p6ysbax24qwhs2kd";
+    rev = "v${version}";
+    repo = "fmit";
+    owner = "gillesdegottex";
   };
 
-  # Also update longDescription when adding/removing sound libraries
-  buildInputs = [ alsaLib cmake fftw freeglut jack2 libXmu qt4 ];
+  buildInputs = [ fftw freeglut qtbase qtmultimedia ]
+    ++ stdenv.lib.optionals alsaSupport [ alsaLib ]
+    ++ stdenv.lib.optionals jackSupport [ libjack2 ]
+    ++ stdenv.lib.optionals portaudioSupport [ portaudio ];
+
+  configurePhase = ''
+    mkdir build
+    cd build
+    qmake \
+      CONFIG+=${stdenv.lib.optionalString alsaSupport "acs_alsa"} \
+      CONFIG+=${stdenv.lib.optionalString jackSupport "acs_jack"} \
+      CONFIG+=${stdenv.lib.optionalString portaudioSupport "acs_portaudio"} \
+      PREFIX="$out" PREFIXSHORTCUT="$out" \
+      ../fmit.pro
+  '';
 
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
+    inherit version;
     description = "Free Musical Instrument Tuner";
     longDescription = ''
-      Software for tuning musical instruments. Uses Qt as GUI library and
-      ALSA or JACK as sound input library.
+      FMIT is a graphical utility for tuning musical instruments, with error
+      and volume history, and advanced features.
     '';
-    homepage = http://home.gna.org/fmit/index.html;
-    license = with licenses; gpl3Plus;
-    platforms = with platforms; linux;
+    homepage = http://gillesdegottex.github.io/fmit/;
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
     maintainers = with maintainers; [ nckx ];
   };
 }
diff --git a/pkgs/applications/audio/fomp/default.nix b/pkgs/applications/audio/fomp/default.nix
new file mode 100644
index 00000000000..00b6c3e0c67
--- /dev/null
+++ b/pkgs/applications/audio/fomp/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, lv2, pkgconfig, python }:
+
+stdenv.mkDerivation rec {
+  name = "fomp-${version}";
+  version = "1.0.0";
+
+  src = fetchurl {
+    url = "http://download.drobilla.net/${name}.tar.bz2";
+    sha256 = "1hh2xhknanqn3iwp12ihl6bf8p7bqxryms9qk7mh21lixl42b8k5";
+  };
+
+  buildInputs = [ lv2  pkgconfig python ];
+
+  installPhase = ''
+    python waf configure --prefix=$out
+    python waf
+    python waf install
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://drobilla.net/software/fomp/;
+    description = "An LV2 port of the MCP, VCO, FIL, and WAH plugins by Fons Adriaensen";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/foo-yc20/default.nix b/pkgs/applications/audio/foo-yc20/default.nix
new file mode 100644
index 00000000000..4ccbb425612
--- /dev/null
+++ b/pkgs/applications/audio/foo-yc20/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchFromGitHub,  libjack2, gtk2, lv2, faust, pkgconfig }:
+
+stdenv.mkDerivation rec {
+  version = "git-2015-05-21";
+  name = "foo-yc20-${version}";
+  src = fetchFromGitHub {
+    owner = "sampov2";
+    repo = "foo-yc20";
+    rev = "edd9d14c91229429b14270a181743e1046160ca8";
+    sha256 = "0i8261n95n4xic766h70xkrpbvw3sag96n1883ahmg6h7yb94avq";
+  };
+
+  buildInputs = [ libjack2 gtk2 lv2 faust pkgconfig ];
+
+  makeFlags = "PREFIX=$(out)";
+
+  # remove lv2 until https://github.com/sampov2/foo-yc20/issues/6 is resolved
+  postInstallFixup = "rm -rf $out/lib/lv2";
+
+  meta = {
+    description = "A Faust implementation of a 1969 designed Yamaha combo organ, the YC-20";
+    homepage = https://github.com/sampov2/foo-yc20;
+    license     = "BSD";
+    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/freewheeling/default.nix b/pkgs/applications/audio/freewheeling/default.nix
index a3f356e75c4..63917cac6c0 100644
--- a/pkgs/applications/audio/freewheeling/default.nix
+++ b/pkgs/applications/audio/freewheeling/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchsvn, pkgconfig, autoconf, automake, gnutls, freetype
-, SDL, SDL_gfx, SDL_ttf, liblo, libxml2, alsaLib, jack2, libvorbis
+{ stdenv, fetchsvn, pkgconfig, autoconf, automake, gnutls33, freetype
+, SDL, SDL_gfx, SDL_ttf, liblo, libxml2, alsaLib, libjack2, libvorbis
 , libsndfile, libogg
 }:
 
@@ -13,8 +13,8 @@ stdenv.mkDerivation {
   };
 
   buildInputs = [
-    pkgconfig autoconf automake gnutls freetype SDL SDL_gfx SDL_ttf
-    liblo libxml2 jack2 alsaLib libvorbis libsndfile libogg
+    pkgconfig autoconf automake gnutls33 freetype SDL SDL_gfx SDL_ttf
+    liblo libxml2 libjack2 alsaLib libvorbis libsndfile libogg
   ];
 
   preConfigure = "autoreconf -vfi";
diff --git a/pkgs/applications/audio/gjay/default.nix b/pkgs/applications/audio/gjay/default.nix
new file mode 100644
index 00000000000..9f023f34291
--- /dev/null
+++ b/pkgs/applications/audio/gjay/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, pkgconfig, mpd_clientlib, dbus_glib, audacious, gtk, gsl
+, libaudclient }:
+
+stdenv.mkDerivation {
+  name = "gjay-0.3.2";
+
+  src = fetchurl {
+    url = "http://downloads.sourceforge.net/project/gjay/gjay-0.3.2.tar.gz";
+    sha256 = "1a1vv4r0vnxjdyl0jyv7gga3zfd5azxlwjm1l6hjrf71lb228zn8";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+
+  buildInputs = [ mpd_clientlib dbus_glib audacious gtk gsl libaudclient ];
+
+  meta = with stdenv.lib; {
+    description = "Generates playlists such that each song sounds good following the previous song";
+    homepage = http://gjay.sourceforge.net/;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ pSub ];
+  };
+}
diff --git a/pkgs/applications/audio/gmpc/default.nix b/pkgs/applications/audio/gmpc/default.nix
index 7cc8aeda367..4da235dd8a9 100644
--- a/pkgs/applications/audio/gmpc/default.nix
+++ b/pkgs/applications/audio/gmpc/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, libtool, intltool, pkgconfig, glib
 , gtk, curl, mpd_clientlib, libsoup, gob2, vala, libunique
-, libSM, libICE, sqlite
+, libSM, libICE, sqlite, hicolor_icon_theme
 }:
 
 stdenv.mkDerivation rec {
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     libtool intltool pkgconfig glib gtk curl mpd_clientlib libsoup
-    libunique libmpd gob2 vala libSM libICE sqlite
+    libunique libmpd gob2 vala libSM libICE sqlite hicolor_icon_theme
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/google-musicmanager/default.nix b/pkgs/applications/audio/google-musicmanager/default.nix
index 03218ad987b..48f17564ef4 100644
--- a/pkgs/applications/audio/google-musicmanager/default.nix
+++ b/pkgs/applications/audio/google-musicmanager/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchurl, readline, patchelf, ncurses, qt48, libidn, expat, flac
 , libvorbis }:
 
-assert stdenv.system == "x86_64-linux" || stdenv.system == "1686-linux";
-
+assert stdenv.system == "x86_64-linux" || stdenv.system == "i686-linux";
+let
+  archUrl = name: arch: "http://dl.google.com/linux/musicmanager/deb/pool/main/g/google-musicmanager-beta/${name}_${arch}.deb";
+in
 stdenv.mkDerivation rec {
-  debversion = "beta_1.0.129.6633-r0";
-  version = "beta_1.0.129.6633-r0"; # friendly to nix-env version sorting algo
+  version = "beta_1.0.221.5230-r0"; # friendly to nix-env version sorting algo
   product = "google-musicmanager";
   name    = "${product}-${version}";
 
@@ -16,12 +17,12 @@ stdenv.mkDerivation rec {
 
   src = if stdenv.system == "x86_64-linux"
     then fetchurl {
-      url    = "http://dl.google.com/linux/musicmanager/deb/pool/main/g/google-musicmanager-beta/google-musicmanager-${version}_amd64.deb";
-      sha256 = "1fq2p721mzv8nd4dq6i9xiqvvqd5ak3v142vsxchg6yn14a9kbvr";
+      url    = archUrl name "amd64";
+      sha256 = "1h0ssbz6y9xi2szalgb5wcxi8m1ylg4qf2za6zgvi908hpan7q37";
     }
     else fetchurl {
-        url    = "http://dl.google.com/linux/musicmanager/deb/pool/main/g/google-musicmanager-beta/google-musicmanager-${version}_i386.deb";
-        sha256 = "7914e3e6e2adb2e952ebaf383db5e04727c29cfa83401007f29977f6c5ff6873";
+        url    = archUrl name "i386";
+        sha256 = "0q8cnzx7s25bpqlbp40d43mwd6m8kvhvdifkqlgc9phpydnqpd1i";
     };
 
   unpackPhase = ''
diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix
index e8c14a9c763..58b9be41545 100644
--- a/pkgs/applications/audio/gpodder/default.nix
+++ b/pkgs/applications/audio/gpodder/default.nix
@@ -1,5 +1,5 @@
 { pkgs, stdenv, fetchurl, python, buildPythonPackage, pythonPackages, mygpoclient, intltool,
-  ipodSupport ? true, libgpod, gnome3, hicolor_icon_theme }:
+  ipodSupport ? true, libgpod, gnome3 }:
 
 with pkgs.lib;
 
@@ -7,17 +7,16 @@ let
   inherit (pythonPackages) coverage feedparser minimock sqlite3 dbus pygtk eyeD3;
 
 in buildPythonPackage rec {
-  name = "gpodder-3.8.3";
+  name = "gpodder-3.8.4";
 
   src = fetchurl {
     url = "http://gpodder.org/src/${name}.tar.gz";
-    sha256 = "8ac120a6084bded6bc88ecadbbc9df54a85f44ef4507f73a76de1d7a5574303c";
+    sha256 = "0cjpk92qjsws7ddbnq0r2h7vm5019zlpafgbxwsgllmjzkknj6pn";
   };
 
   buildInputs = [
     coverage feedparser minimock sqlite3 mygpoclient intltool
-    gnome3.gnome_themes_standard gnome3.gnome_icon_theme
-    gnome3.gnome_icon_theme_symbolic hicolor_icon_theme
+    gnome3.gnome_themes_standard gnome3.defaultIconTheme
     gnome3.gsettings_desktop_schemas
   ];
 
diff --git a/pkgs/applications/audio/groovebasin/default.nix b/pkgs/applications/audio/groovebasin/default.nix
new file mode 100644
index 00000000000..5a5f8c30da2
--- /dev/null
+++ b/pkgs/applications/audio/groovebasin/default.nix
@@ -0,0 +1,65 @@
+{ stdenv, fetchFromGitHub, makeWrapper, callPackage, libgroove, python, utillinux }:
+
+with stdenv.lib;
+
+let
+  nodePackages = callPackage (import ../../../top-level/node-packages.nix) {
+    neededNatives = [ libgroove python utillinux ];
+    self = nodePackages;
+    generated = ./package.nix;
+  };
+
+in nodePackages.buildNodePackage rec {
+  version = "1.5.1";
+  name = "groovebasin-${version}";
+
+  src = fetchFromGitHub {
+    owner = "andrewrk";
+    repo = "groovebasin";
+    rev = "${version}";
+    sha256 = "1g7v0qhvgzpb050hf45pibp68qd67hnnry5npw58f4dvaxdd8yhd";
+  };
+
+  deps = (filter (v: nixType v == "derivation") (attrValues nodePackages));
+
+  buildInputs = [ makeWrapper ];
+
+  postInstall = ''
+    mkdir -p "$out/lib/node_modules/groovebasin/public"
+    stylus -o "$out/lib/node_modules/groovebasin/public/" -c --include-css "$out/lib/node_modules/groovebasin/src/client/styles"
+    browserify-lite "$out/lib/node_modules/groovebasin/src/client/app.js" --outfile "$out/lib/node_modules/groovebasin/public/app.js"
+    wrapProgram "$out/bin/groovebasin" --set NODE_PATH "$out/lib/node_modules/groovebasin/node_modules/"
+  '';
+
+  passthru.names = ["groovebasin"];
+
+  meta = {
+    description = "Music player server with a web-based user interface";
+    homepage = http://groovebasin.com/;
+    license = licenses.mit;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.andrewrk ];
+    longDescription = ''
+      Groove Basin runs on a server optionally connected to speakers. Guests can
+      control the music player by connecting with a laptop, tablet, or smart phone.
+      Further, users can stream their music libraries remotely.
+
+      Groove Basin comes with a fast, responsive web interface that supports keyboard
+      shortcuts and drag drop. It also provides the ability to upload songs,
+      download songs, and import songs by URL, including YouTube URLs.
+
+      Groove Basin supports Dynamic Mode which automatically queues random songs,
+      favoring songs that have not been queued recently.
+
+      Groove Basin automatically performs ReplayGain scanning on every song using
+      the EBU R128 loudness standard, and automatically switches between track
+      and album mode.
+
+      Groove Basin supports the MPD protocol, which means it is compatible with MPD
+      clients. There is also a more powerful Groove Basin protocol which you can
+      use if the MPD protocol does not meet your needs.
+
+      Groove Basin supports Last.fm scrobbling.
+    '';
+  };
+}
diff --git a/pkgs/applications/audio/groovebasin/package.nix b/pkgs/applications/audio/groovebasin/package.nix
new file mode 100644
index 00000000000..3f307cd32f0
--- /dev/null
+++ b/pkgs/applications/audio/groovebasin/package.nix
@@ -0,0 +1,4396 @@
+{ self, fetchurl, fetchgit ? null, lib }:
+
+{
+  by-spec."CSSselect"."~0.4.0" =
+    self.by-version."CSSselect"."0.4.1";
+  by-version."CSSselect"."0.4.1" = self.buildNodePackage {
+    name = "CSSselect-0.4.1";
+    version = "0.4.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/CSSselect/-/CSSselect-0.4.1.tgz";
+      name = "CSSselect-0.4.1.tgz";
+      sha1 = "f8ab7e1f8418ce63cda6eb7bd778a85d7ec492b2";
+    };
+    deps = {
+      "CSSwhat-0.4.7" = self.by-version."CSSwhat"."0.4.7";
+      "domutils-1.4.3" = self.by-version."domutils"."1.4.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."CSSwhat"."0.4" =
+    self.by-version."CSSwhat"."0.4.7";
+  by-version."CSSwhat"."0.4.7" = self.buildNodePackage {
+    name = "CSSwhat-0.4.7";
+    version = "0.4.7";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/CSSwhat/-/CSSwhat-0.4.7.tgz";
+      name = "CSSwhat-0.4.7.tgz";
+      sha1 = "867da0ff39f778613242c44cfea83f0aa4ebdf9b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."abbrev"."1" =
+    self.by-version."abbrev"."1.0.7";
+  by-version."abbrev"."1.0.7" = self.buildNodePackage {
+    name = "abbrev-1.0.7";
+    version = "1.0.7";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/abbrev/-/abbrev-1.0.7.tgz";
+      name = "abbrev-1.0.7.tgz";
+      sha1 = "5b6035b2ee9d4fb5cf859f08a9be81b208491843";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."abstract-leveldown"."~2.2.1" =
+    self.by-version."abstract-leveldown"."2.2.2";
+  by-version."abstract-leveldown"."2.2.2" = self.buildNodePackage {
+    name = "abstract-leveldown-2.2.2";
+    version = "2.2.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.2.2.tgz";
+      name = "abstract-leveldown-2.2.2.tgz";
+      sha1 = "ecaff98c20641422710ab04b01e8f04d6b64fe77";
+    };
+    deps = {
+      "xtend-4.0.0" = self.by-version."xtend"."4.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."accepts"."~1.2.7" =
+    self.by-version."accepts"."1.2.9";
+  by-version."accepts"."1.2.9" = self.buildNodePackage {
+    name = "accepts-1.2.9";
+    version = "1.2.9";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/accepts/-/accepts-1.2.9.tgz";
+      name = "accepts-1.2.9.tgz";
+      sha1 = "76e9631d05e3ff192a34afb9389f7b3953ded001";
+    };
+    deps = {
+      "mime-types-2.1.1" = self.by-version."mime-types"."2.1.1";
+      "negotiator-0.5.3" = self.by-version."negotiator"."0.5.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."amdefine".">=0.0.4" =
+    self.by-version."amdefine"."0.1.1";
+  by-version."amdefine"."0.1.1" = self.buildNodePackage {
+    name = "amdefine-0.1.1";
+    version = "0.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/amdefine/-/amdefine-0.1.1.tgz";
+      name = "amdefine-0.1.1.tgz";
+      sha1 = "b5c75c532052dccd6a39c0064c772c8d57a06cd2";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ansi-regex"."^1.0.0" =
+    self.by-version."ansi-regex"."1.1.1";
+  by-version."ansi-regex"."1.1.1" = self.buildNodePackage {
+    name = "ansi-regex-1.1.1";
+    version = "1.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz";
+      name = "ansi-regex-1.1.1.tgz";
+      sha1 = "41c847194646375e6a1a5d10c3ca054ef9fc980d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ansi-regex"."^1.1.0" =
+    self.by-version."ansi-regex"."1.1.1";
+  by-spec."ansi-styles"."^2.0.1" =
+    self.by-version."ansi-styles"."2.0.1";
+  by-version."ansi-styles"."2.0.1" = self.buildNodePackage {
+    name = "ansi-styles-2.0.1";
+    version = "2.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ansi-styles/-/ansi-styles-2.0.1.tgz";
+      name = "ansi-styles-2.0.1.tgz";
+      sha1 = "b033f57f93e2d28adeb8bc11138fa13da0fd20a3";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."asn1"."0.1.11" =
+    self.by-version."asn1"."0.1.11";
+  by-version."asn1"."0.1.11" = self.buildNodePackage {
+    name = "asn1-0.1.11";
+    version = "0.1.11";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz";
+      name = "asn1-0.1.11.tgz";
+      sha1 = "559be18376d08a4ec4dbe80877d27818639b2df7";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."assert-plus"."^0.1.5" =
+    self.by-version."assert-plus"."0.1.5";
+  by-version."assert-plus"."0.1.5" = self.buildNodePackage {
+    name = "assert-plus-0.1.5";
+    version = "0.1.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz";
+      name = "assert-plus-0.1.5.tgz";
+      sha1 = "ee74009413002d84cec7219c6ac811812e723160";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."async"."~0.9.0" =
+    self.by-version."async"."0.9.2";
+  by-version."async"."0.9.2" = self.buildNodePackage {
+    name = "async-0.9.2";
+    version = "0.9.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/async/-/async-0.9.2.tgz";
+      name = "async-0.9.2.tgz";
+      sha1 = "aea74d5e61c1f899613bf64bda66d4c78f2fd17d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."aws-sign2"."~0.5.0" =
+    self.by-version."aws-sign2"."0.5.0";
+  by-version."aws-sign2"."0.5.0" = self.buildNodePackage {
+    name = "aws-sign2-0.5.0";
+    version = "0.5.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz";
+      name = "aws-sign2-0.5.0.tgz";
+      sha1 = "c57103f7a17fc037f02d7c2e64b602ea223f7d63";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."base64url"."0.0.3" =
+    self.by-version."base64url"."0.0.3";
+  by-version."base64url"."0.0.3" = self.buildNodePackage {
+    name = "base64url-0.0.3";
+    version = "0.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/base64url/-/base64url-0.0.3.tgz";
+      name = "base64url-0.0.3.tgz";
+      sha1 = "50c20edac277dde1a0b15059954ced7a2d102d57";
+    };
+    deps = {
+      "tap-0.3.3" = self.by-version."tap"."0.3.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."base64url"."~0.0.4" =
+    self.by-version."base64url"."0.0.6";
+  by-version."base64url"."0.0.6" = self.buildNodePackage {
+    name = "base64url-0.0.6";
+    version = "0.0.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/base64url/-/base64url-0.0.6.tgz";
+      name = "base64url-0.0.6.tgz";
+      sha1 = "9597b36b330db1c42477322ea87ea8027499b82b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."base64url"."~1.0.4" =
+    self.by-version."base64url"."1.0.4";
+  by-version."base64url"."1.0.4" = self.buildNodePackage {
+    name = "base64url-1.0.4";
+    version = "1.0.4";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/base64url/-/base64url-1.0.4.tgz";
+      name = "base64url-1.0.4.tgz";
+      sha1 = "29a2a7ade9791fbb25f312ab35a2fd3126ceac0e";
+    };
+    deps = {
+      "concat-stream-1.4.10" = self.by-version."concat-stream"."1.4.10";
+      "meow-2.0.0" = self.by-version."meow"."2.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."bindings"."~1.2.1" =
+    self.by-version."bindings"."1.2.1";
+  by-version."bindings"."1.2.1" = self.buildNodePackage {
+    name = "bindings-1.2.1";
+    version = "1.2.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/bindings/-/bindings-1.2.1.tgz";
+      name = "bindings-1.2.1.tgz";
+      sha1 = "14ad6113812d2d37d72e67b4cacb4bb726505f11";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."bl"."~0.9.0" =
+    self.by-version."bl"."0.9.4";
+  by-version."bl"."0.9.4" = self.buildNodePackage {
+    name = "bl-0.9.4";
+    version = "0.9.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/bl/-/bl-0.9.4.tgz";
+      name = "bl-0.9.4.tgz";
+      sha1 = "4702ddf72fbe0ecd82787c00c113aea1935ad0e7";
+    };
+    deps = {
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."bl"."~0.9.4" =
+    self.by-version."bl"."0.9.4";
+  by-spec."bluebird"."^2.9.26" =
+    self.by-version."bluebird"."2.9.30";
+  by-version."bluebird"."2.9.30" = self.buildNodePackage {
+    name = "bluebird-2.9.30";
+    version = "2.9.30";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/bluebird/-/bluebird-2.9.30.tgz";
+      name = "bluebird-2.9.30.tgz";
+      sha1 = "edda875ec9aad1f29cf1f56d6e82fbab2b0df556";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."boom"."0.4.x" =
+    self.by-version."boom"."0.4.2";
+  by-version."boom"."0.4.2" = self.buildNodePackage {
+    name = "boom-0.4.2";
+    version = "0.4.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/boom/-/boom-0.4.2.tgz";
+      name = "boom-0.4.2.tgz";
+      sha1 = "7a636e9ded4efcefb19cef4947a3c67dfaee911b";
+    };
+    deps = {
+      "hoek-0.9.1" = self.by-version."hoek"."0.9.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."boom"."2.x.x" =
+    self.by-version."boom"."2.8.0";
+  by-version."boom"."2.8.0" = self.buildNodePackage {
+    name = "boom-2.8.0";
+    version = "2.8.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/boom/-/boom-2.8.0.tgz";
+      name = "boom-2.8.0.tgz";
+      sha1 = "317bdfd47018fe7dd79b0e9da73efe244119fdf1";
+    };
+    deps = {
+      "hoek-2.14.0" = self.by-version."hoek"."2.14.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."browserify-lite"."~0.2.4" =
+    self.by-version."browserify-lite"."0.2.4";
+  by-version."browserify-lite"."0.2.4" = self.buildNodePackage {
+    name = "browserify-lite-0.2.4";
+    version = "0.2.4";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/browserify-lite/-/browserify-lite-0.2.4.tgz";
+      name = "browserify-lite-0.2.4.tgz";
+      sha1 = "00a32f466c8f3dbbd1074250fd0aa775716ab140";
+    };
+    deps = {
+      "pend-1.2.0" = self.by-version."pend"."1.2.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "browserify-lite" = self.by-version."browserify-lite"."0.2.4";
+  by-spec."buffer-crc32"."~0.2.3" =
+    self.by-version."buffer-crc32"."0.2.5";
+  by-version."buffer-crc32"."0.2.5" = self.buildNodePackage {
+    name = "buffer-crc32-0.2.5";
+    version = "0.2.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.5.tgz";
+      name = "buffer-crc32-0.2.5.tgz";
+      sha1 = "db003ac2671e62ebd6ece78ea2c2e1b405736e91";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."buffer-equal"."~0.0.0" =
+    self.by-version."buffer-equal"."0.0.1";
+  by-version."buffer-equal"."0.0.1" = self.buildNodePackage {
+    name = "buffer-equal-0.0.1";
+    version = "0.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz";
+      name = "buffer-equal-0.0.1.tgz";
+      sha1 = "91bc74b11ea405bc916bc6aa908faafa5b4aac4b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."buffer-equal-constant-time"."^1.0.1" =
+    self.by-version."buffer-equal-constant-time"."1.0.1";
+  by-version."buffer-equal-constant-time"."1.0.1" = self.buildNodePackage {
+    name = "buffer-equal-constant-time-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz";
+      name = "buffer-equal-constant-time-1.0.1.tgz";
+      sha1 = "f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."bunker"."0.1.X" =
+    self.by-version."bunker"."0.1.2";
+  by-version."bunker"."0.1.2" = self.buildNodePackage {
+    name = "bunker-0.1.2";
+    version = "0.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/bunker/-/bunker-0.1.2.tgz";
+      name = "bunker-0.1.2.tgz";
+      sha1 = "c88992464a8e2a6ede86930375f92b58077ef97c";
+    };
+    deps = {
+      "burrito-0.2.12" = self.by-version."burrito"."0.2.12";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."burrito".">=0.2.5 <0.3" =
+    self.by-version."burrito"."0.2.12";
+  by-version."burrito"."0.2.12" = self.buildNodePackage {
+    name = "burrito-0.2.12";
+    version = "0.2.12";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/burrito/-/burrito-0.2.12.tgz";
+      name = "burrito-0.2.12.tgz";
+      sha1 = "d0d6e6ac81d5e99789c6fa4accb0b0031ea54f6b";
+    };
+    deps = {
+      "traverse-0.5.2" = self.by-version."traverse"."0.5.2";
+      "uglify-js-1.1.1" = self.by-version."uglify-js"."1.1.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."camelcase"."^1.0.1" =
+    self.by-version."camelcase"."1.1.0";
+  by-version."camelcase"."1.1.0" = self.buildNodePackage {
+    name = "camelcase-1.1.0";
+    version = "1.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/camelcase/-/camelcase-1.1.0.tgz";
+      name = "camelcase-1.1.0.tgz";
+      sha1 = "953b25c3bc98671ee59a44cb9d542672da7331b9";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."camelcase-keys"."^1.0.0" =
+    self.by-version."camelcase-keys"."1.0.0";
+  by-version."camelcase-keys"."1.0.0" = self.buildNodePackage {
+    name = "camelcase-keys-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-1.0.0.tgz";
+      name = "camelcase-keys-1.0.0.tgz";
+      sha1 = "bd1a11bf9b31a1ce493493a930de1a0baf4ad7ec";
+    };
+    deps = {
+      "camelcase-1.1.0" = self.by-version."camelcase"."1.1.0";
+      "map-obj-1.0.1" = self.by-version."map-obj"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."caseless"."~0.10.0" =
+    self.by-version."caseless"."0.10.0";
+  by-version."caseless"."0.10.0" = self.buildNodePackage {
+    name = "caseless-0.10.0";
+    version = "0.10.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/caseless/-/caseless-0.10.0.tgz";
+      name = "caseless-0.10.0.tgz";
+      sha1 = "ed6b2719adcd1fd18f58dc081c0f1a5b43963909";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."caseless"."~0.8.0" =
+    self.by-version."caseless"."0.8.0";
+  by-version."caseless"."0.8.0" = self.buildNodePackage {
+    name = "caseless-0.8.0";
+    version = "0.8.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/caseless/-/caseless-0.8.0.tgz";
+      name = "caseless-0.8.0.tgz";
+      sha1 = "5bca2881d41437f54b2407ebe34888c7b9ad4f7d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."caseless"."~0.9.0" =
+    self.by-version."caseless"."0.9.0";
+  by-version."caseless"."0.9.0" = self.buildNodePackage {
+    name = "caseless-0.9.0";
+    version = "0.9.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/caseless/-/caseless-0.9.0.tgz";
+      name = "caseless-0.9.0.tgz";
+      sha1 = "b7b65ce6bf1413886539cfd533f0b30effa9cf88";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."chalk"."^1.0.0" =
+    self.by-version."chalk"."1.0.0";
+  by-version."chalk"."1.0.0" = self.buildNodePackage {
+    name = "chalk-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz";
+      name = "chalk-1.0.0.tgz";
+      sha1 = "b3cf4ed0ff5397c99c75b8f679db2f52831f96dc";
+    };
+    deps = {
+      "ansi-styles-2.0.1" = self.by-version."ansi-styles"."2.0.1";
+      "escape-string-regexp-1.0.3" = self.by-version."escape-string-regexp"."1.0.3";
+      "has-ansi-1.0.3" = self.by-version."has-ansi"."1.0.3";
+      "strip-ansi-2.0.1" = self.by-version."strip-ansi"."2.0.1";
+      "supports-color-1.3.1" = self.by-version."supports-color"."1.3.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."charm"."0.1.x" =
+    self.by-version."charm"."0.1.2";
+  by-version."charm"."0.1.2" = self.buildNodePackage {
+    name = "charm-0.1.2";
+    version = "0.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/charm/-/charm-0.1.2.tgz";
+      name = "charm-0.1.2.tgz";
+      sha1 = "06c21eed1a1b06aeb67553cdc53e23274bac2296";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."cheerio"."^0.18.0" =
+    self.by-version."cheerio"."0.18.0";
+  by-version."cheerio"."0.18.0" = self.buildNodePackage {
+    name = "cheerio-0.18.0";
+    version = "0.18.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/cheerio/-/cheerio-0.18.0.tgz";
+      name = "cheerio-0.18.0.tgz";
+      sha1 = "4e1c06377e725b740e996e0dfec353863de677fa";
+    };
+    deps = {
+      "CSSselect-0.4.1" = self.by-version."CSSselect"."0.4.1";
+      "entities-1.1.1" = self.by-version."entities"."1.1.1";
+      "htmlparser2-3.8.3" = self.by-version."htmlparser2"."3.8.3";
+      "dom-serializer-0.0.1" = self.by-version."dom-serializer"."0.0.1";
+      "lodash-2.4.2" = self.by-version."lodash"."2.4.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."clarinet"."~0.8.1" =
+    self.by-version."clarinet"."0.8.1";
+  by-version."clarinet"."0.8.1" = self.buildNodePackage {
+    name = "clarinet-0.8.1";
+    version = "0.8.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/clarinet/-/clarinet-0.8.1.tgz";
+      name = "clarinet-0.8.1.tgz";
+      sha1 = "ddfd10cd292abf5cab239140774e394bfd1ee7a6";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."combined-stream"."~0.0.4" =
+    self.by-version."combined-stream"."0.0.7";
+  by-version."combined-stream"."0.0.7" = self.buildNodePackage {
+    name = "combined-stream-0.0.7";
+    version = "0.0.7";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/combined-stream/-/combined-stream-0.0.7.tgz";
+      name = "combined-stream-0.0.7.tgz";
+      sha1 = "0137e657baa5a7541c57ac37ac5fc07d73b4dc1f";
+    };
+    deps = {
+      "delayed-stream-0.0.5" = self.by-version."delayed-stream"."0.0.5";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."combined-stream"."~0.0.5" =
+    self.by-version."combined-stream"."0.0.7";
+  by-spec."combined-stream"."~1.0.1" =
+    self.by-version."combined-stream"."1.0.5";
+  by-version."combined-stream"."1.0.5" = self.buildNodePackage {
+    name = "combined-stream-1.0.5";
+    version = "1.0.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz";
+      name = "combined-stream-1.0.5.tgz";
+      sha1 = "938370a57b4a51dea2c77c15d5c5fdf895164009";
+    };
+    deps = {
+      "delayed-stream-1.0.0" = self.by-version."delayed-stream"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."commander"."^2.8.1" =
+    self.by-version."commander"."2.8.1";
+  by-version."commander"."2.8.1" = self.buildNodePackage {
+    name = "commander-2.8.1";
+    version = "2.8.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/commander/-/commander-2.8.1.tgz";
+      name = "commander-2.8.1.tgz";
+      sha1 = "06be367febfda0c330aa1e2a072d3dc9762425d4";
+    };
+    deps = {
+      "graceful-readlink-1.0.1" = self.by-version."graceful-readlink"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."concat-stream"."~1.4.7" =
+    self.by-version."concat-stream"."1.4.10";
+  by-version."concat-stream"."1.4.10" = self.buildNodePackage {
+    name = "concat-stream-1.4.10";
+    version = "1.4.10";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/concat-stream/-/concat-stream-1.4.10.tgz";
+      name = "concat-stream-1.4.10.tgz";
+      sha1 = "acc3bbf5602cb8cc980c6ac840fa7d8603e3ef36";
+    };
+    deps = {
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "typedarray-0.0.6" = self.by-version."typedarray"."0.0.6";
+      "readable-stream-1.1.13" = self.by-version."readable-stream"."1.1.13";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."connect-static"."~1.5.0" =
+    self.by-version."connect-static"."1.5.0";
+  by-version."connect-static"."1.5.0" = self.buildNodePackage {
+    name = "connect-static-1.5.0";
+    version = "1.5.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/connect-static/-/connect-static-1.5.0.tgz";
+      name = "connect-static-1.5.0.tgz";
+      sha1 = "f8b455532e04de7c3dc7c1e062207f0b7a626ec7";
+    };
+    deps = {
+      "findit2-2.2.3" = self.by-version."findit2"."2.2.3";
+      "mime-1.2.11" = self.by-version."mime"."1.2.11";
+      "pend-1.2.0" = self.by-version."pend"."1.2.0";
+      "streamsink-1.2.0" = self.by-version."streamsink"."1.2.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "connect-static" = self.by-version."connect-static"."1.5.0";
+  by-spec."content-disposition"."0.5.0" =
+    self.by-version."content-disposition"."0.5.0";
+  by-version."content-disposition"."0.5.0" = self.buildNodePackage {
+    name = "content-disposition-0.5.0";
+    version = "0.5.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/content-disposition/-/content-disposition-0.5.0.tgz";
+      name = "content-disposition-0.5.0.tgz";
+      sha1 = "4284fe6ae0630874639e44e80a418c2934135e9e";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."content-disposition"."~0.5.0" =
+    self.by-version."content-disposition"."0.5.0";
+  "content-disposition" = self.by-version."content-disposition"."0.5.0";
+  by-spec."content-type"."~1.0.1" =
+    self.by-version."content-type"."1.0.1";
+  by-version."content-type"."1.0.1" = self.buildNodePackage {
+    name = "content-type-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/content-type/-/content-type-1.0.1.tgz";
+      name = "content-type-1.0.1.tgz";
+      sha1 = "a19d2247327dc038050ce622b7a154ec59c5e600";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."cookie"."0.1.2" =
+    self.by-version."cookie"."0.1.2";
+  by-version."cookie"."0.1.2" = self.buildNodePackage {
+    name = "cookie-0.1.2";
+    version = "0.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/cookie/-/cookie-0.1.2.tgz";
+      name = "cookie-0.1.2.tgz";
+      sha1 = "72fec3d24e48a3432073d90c12642005061004b1";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."cookie-signature"."1.0.6" =
+    self.by-version."cookie-signature"."1.0.6";
+  by-version."cookie-signature"."1.0.6" = self.buildNodePackage {
+    name = "cookie-signature-1.0.6";
+    version = "1.0.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz";
+      name = "cookie-signature-1.0.6.tgz";
+      sha1 = "e303a882b342cc3ee8ca513a79999734dab3ae2c";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."cookies"."~0.5.0" =
+    self.by-version."cookies"."0.5.0";
+  by-version."cookies"."0.5.0" = self.buildNodePackage {
+    name = "cookies-0.5.0";
+    version = "0.5.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/cookies/-/cookies-0.5.0.tgz";
+      name = "cookies-0.5.0.tgz";
+      sha1 = "164cac46a1d3ca3b3b87427414c24931d8381025";
+    };
+    deps = {
+      "keygrip-1.0.1" = self.by-version."keygrip"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "cookies" = self.by-version."cookies"."0.5.0";
+  by-spec."core-util-is"."~1.0.0" =
+    self.by-version."core-util-is"."1.0.1";
+  by-version."core-util-is"."1.0.1" = self.buildNodePackage {
+    name = "core-util-is-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz";
+      name = "core-util-is-1.0.1.tgz";
+      sha1 = "6b07085aef9a3ccac6ee53bf9d3df0c1521a5538";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."crc"."3.2.1" =
+    self.by-version."crc"."3.2.1";
+  by-version."crc"."3.2.1" = self.buildNodePackage {
+    name = "crc-3.2.1";
+    version = "3.2.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/crc/-/crc-3.2.1.tgz";
+      name = "crc-3.2.1.tgz";
+      sha1 = "5d9c8fb77a245cd5eca291e5d2d005334bab0082";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."cryptiles"."0.2.x" =
+    self.by-version."cryptiles"."0.2.2";
+  by-version."cryptiles"."0.2.2" = self.buildNodePackage {
+    name = "cryptiles-0.2.2";
+    version = "0.2.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/cryptiles/-/cryptiles-0.2.2.tgz";
+      name = "cryptiles-0.2.2.tgz";
+      sha1 = "ed91ff1f17ad13d3748288594f8a48a0d26f325c";
+    };
+    deps = {
+      "boom-0.4.2" = self.by-version."boom"."0.4.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."cryptiles"."2.x.x" =
+    self.by-version."cryptiles"."2.0.4";
+  by-version."cryptiles"."2.0.4" = self.buildNodePackage {
+    name = "cryptiles-2.0.4";
+    version = "2.0.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/cryptiles/-/cryptiles-2.0.4.tgz";
+      name = "cryptiles-2.0.4.tgz";
+      sha1 = "09ea1775b9e1c7de7e60a99d42ab6f08ce1a1285";
+    };
+    deps = {
+      "boom-2.8.0" = self.by-version."boom"."2.8.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."css-parse"."1.7.x" =
+    self.by-version."css-parse"."1.7.0";
+  by-version."css-parse"."1.7.0" = self.buildNodePackage {
+    name = "css-parse-1.7.0";
+    version = "1.7.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz";
+      name = "css-parse-1.7.0.tgz";
+      sha1 = "321f6cf73782a6ff751111390fc05e2c657d8c9b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ctype"."0.5.3" =
+    self.by-version."ctype"."0.5.3";
+  by-version."ctype"."0.5.3" = self.buildNodePackage {
+    name = "ctype-0.5.3";
+    version = "0.5.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz";
+      name = "ctype-0.5.3.tgz";
+      sha1 = "82c18c2461f74114ef16c135224ad0b9144ca12f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."curlydiff"."~2.0.1" =
+    self.by-version."curlydiff"."2.0.1";
+  by-version."curlydiff"."2.0.1" = self.buildNodePackage {
+    name = "curlydiff-2.0.1";
+    version = "2.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/curlydiff/-/curlydiff-2.0.1.tgz";
+      name = "curlydiff-2.0.1.tgz";
+      sha1 = "6ac4b754ea5b63af2632022d03a152306f7eac0b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "curlydiff" = self.by-version."curlydiff"."2.0.1";
+  by-spec."debug"."*" =
+    self.by-version."debug"."2.2.0";
+  by-version."debug"."2.2.0" = self.buildNodePackage {
+    name = "debug-2.2.0";
+    version = "2.2.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/debug/-/debug-2.2.0.tgz";
+      name = "debug-2.2.0.tgz";
+      sha1 = "f87057e995b1a1f6ae6a4960664137bc56f039da";
+    };
+    deps = {
+      "ms-0.7.1" = self.by-version."ms"."0.7.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."debug"."~2.2.0" =
+    self.by-version."debug"."2.2.0";
+  by-spec."deep-equal"."~0.0.0" =
+    self.by-version."deep-equal"."0.0.0";
+  by-version."deep-equal"."0.0.0" = self.buildNodePackage {
+    name = "deep-equal-0.0.0";
+    version = "0.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/deep-equal/-/deep-equal-0.0.0.tgz";
+      name = "deep-equal-0.0.0.tgz";
+      sha1 = "99679d3bbd047156fcd450d3d01eeb9068691e83";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."deep-is"."0.1.x" =
+    self.by-version."deep-is"."0.1.3";
+  by-version."deep-is"."0.1.3" = self.buildNodePackage {
+    name = "deep-is-0.1.3";
+    version = "0.1.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz";
+      name = "deep-is-0.1.3.tgz";
+      sha1 = "b369d6fb5dbc13eecf524f91b070feedc357cf34";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."delayed-stream"."0.0.5" =
+    self.by-version."delayed-stream"."0.0.5";
+  by-version."delayed-stream"."0.0.5" = self.buildNodePackage {
+    name = "delayed-stream-0.0.5";
+    version = "0.0.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/delayed-stream/-/delayed-stream-0.0.5.tgz";
+      name = "delayed-stream-0.0.5.tgz";
+      sha1 = "d4b1f43a93e8296dfe02694f4680bc37a313c73f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."delayed-stream"."~1.0.0" =
+    self.by-version."delayed-stream"."1.0.0";
+  by-version."delayed-stream"."1.0.0" = self.buildNodePackage {
+    name = "delayed-stream-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz";
+      name = "delayed-stream-1.0.0.tgz";
+      sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."depd"."~1.0.1" =
+    self.by-version."depd"."1.0.1";
+  by-version."depd"."1.0.1" = self.buildNodePackage {
+    name = "depd-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/depd/-/depd-1.0.1.tgz";
+      name = "depd-1.0.1.tgz";
+      sha1 = "80aec64c9d6d97e65cc2a9caa93c0aa6abf73aaa";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."destroy"."1.0.3" =
+    self.by-version."destroy"."1.0.3";
+  by-version."destroy"."1.0.3" = self.buildNodePackage {
+    name = "destroy-1.0.3";
+    version = "1.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/destroy/-/destroy-1.0.3.tgz";
+      name = "destroy-1.0.3.tgz";
+      sha1 = "b433b4724e71fd8551d9885174851c5fc377e2c9";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."diacritics"."~1.2.1" =
+    self.by-version."diacritics"."1.2.1";
+  by-version."diacritics"."1.2.1" = self.buildNodePackage {
+    name = "diacritics-1.2.1";
+    version = "1.2.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/diacritics/-/diacritics-1.2.1.tgz";
+      name = "diacritics-1.2.1.tgz";
+      sha1 = "e4d323a7c564197f7af514c5964bd45d0eb8cf77";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."difflet"."~0.2.0" =
+    self.by-version."difflet"."0.2.6";
+  by-version."difflet"."0.2.6" = self.buildNodePackage {
+    name = "difflet-0.2.6";
+    version = "0.2.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/difflet/-/difflet-0.2.6.tgz";
+      name = "difflet-0.2.6.tgz";
+      sha1 = "ab23b31f5649b6faa8e3d2acbd334467365ca6fa";
+    };
+    deps = {
+      "traverse-0.6.6" = self.by-version."traverse"."0.6.6";
+      "charm-0.1.2" = self.by-version."charm"."0.1.2";
+      "deep-is-0.1.3" = self.by-version."deep-is"."0.1.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."dom-serializer"."0" =
+    self.by-version."dom-serializer"."0.1.0";
+  by-version."dom-serializer"."0.1.0" = self.buildNodePackage {
+    name = "dom-serializer-0.1.0";
+    version = "0.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz";
+      name = "dom-serializer-0.1.0.tgz";
+      sha1 = "073c697546ce0780ce23be4a28e293e40bc30c82";
+    };
+    deps = {
+      "domelementtype-1.1.3" = self.by-version."domelementtype"."1.1.3";
+      "entities-1.1.1" = self.by-version."entities"."1.1.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."dom-serializer"."~0.0.0" =
+    self.by-version."dom-serializer"."0.0.1";
+  by-version."dom-serializer"."0.0.1" = self.buildNodePackage {
+    name = "dom-serializer-0.0.1";
+    version = "0.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/dom-serializer/-/dom-serializer-0.0.1.tgz";
+      name = "dom-serializer-0.0.1.tgz";
+      sha1 = "9589827f1e32d22c37c829adabd59b3247af8eaf";
+    };
+    deps = {
+      "domelementtype-1.1.3" = self.by-version."domelementtype"."1.1.3";
+      "entities-1.1.1" = self.by-version."entities"."1.1.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."domelementtype"."1" =
+    self.by-version."domelementtype"."1.3.0";
+  by-version."domelementtype"."1.3.0" = self.buildNodePackage {
+    name = "domelementtype-1.3.0";
+    version = "1.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz";
+      name = "domelementtype-1.3.0.tgz";
+      sha1 = "b17aed82e8ab59e52dd9c19b1756e0fc187204c2";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."domelementtype"."~1.1.1" =
+    self.by-version."domelementtype"."1.1.3";
+  by-version."domelementtype"."1.1.3" = self.buildNodePackage {
+    name = "domelementtype-1.1.3";
+    version = "1.1.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz";
+      name = "domelementtype-1.1.3.tgz";
+      sha1 = "bd28773e2642881aec51544924299c5cd822185b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."domhandler"."2.3" =
+    self.by-version."domhandler"."2.3.0";
+  by-version."domhandler"."2.3.0" = self.buildNodePackage {
+    name = "domhandler-2.3.0";
+    version = "2.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz";
+      name = "domhandler-2.3.0.tgz";
+      sha1 = "2de59a0822d5027fabff6f032c2b25a2a8abe738";
+    };
+    deps = {
+      "domelementtype-1.3.0" = self.by-version."domelementtype"."1.3.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."domutils"."1.4" =
+    self.by-version."domutils"."1.4.3";
+  by-version."domutils"."1.4.3" = self.buildNodePackage {
+    name = "domutils-1.4.3";
+    version = "1.4.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/domutils/-/domutils-1.4.3.tgz";
+      name = "domutils-1.4.3.tgz";
+      sha1 = "0865513796c6b306031850e175516baf80b72a6f";
+    };
+    deps = {
+      "domelementtype-1.3.0" = self.by-version."domelementtype"."1.3.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."domutils"."1.5" =
+    self.by-version."domutils"."1.5.1";
+  by-version."domutils"."1.5.1" = self.buildNodePackage {
+    name = "domutils-1.5.1";
+    version = "1.5.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz";
+      name = "domutils-1.5.1.tgz";
+      sha1 = "dcd8488a26f563d61079e48c9f7b7e32373682cf";
+    };
+    deps = {
+      "dom-serializer-0.1.0" = self.by-version."dom-serializer"."0.1.0";
+      "domelementtype-1.3.0" = self.by-version."domelementtype"."1.3.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ee-first"."1.1.0" =
+    self.by-version."ee-first"."1.1.0";
+  by-version."ee-first"."1.1.0" = self.buildNodePackage {
+    name = "ee-first-1.1.0";
+    version = "1.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ee-first/-/ee-first-1.1.0.tgz";
+      name = "ee-first-1.1.0.tgz";
+      sha1 = "6a0d7c6221e490feefd92ec3f441c9ce8cd097f4";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."entities"."1.0" =
+    self.by-version."entities"."1.0.0";
+  by-version."entities"."1.0.0" = self.buildNodePackage {
+    name = "entities-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/entities/-/entities-1.0.0.tgz";
+      name = "entities-1.0.0.tgz";
+      sha1 = "b2987aa3821347fcde642b24fdfc9e4fb712bf26";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."entities"."~1.1.1" =
+    self.by-version."entities"."1.1.1";
+  by-version."entities"."1.1.1" = self.buildNodePackage {
+    name = "entities-1.1.1";
+    version = "1.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/entities/-/entities-1.1.1.tgz";
+      name = "entities-1.1.1.tgz";
+      sha1 = "6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."escape-html"."1.0.1" =
+    self.by-version."escape-html"."1.0.1";
+  by-version."escape-html"."1.0.1" = self.buildNodePackage {
+    name = "escape-html-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/escape-html/-/escape-html-1.0.1.tgz";
+      name = "escape-html-1.0.1.tgz";
+      sha1 = "181a286ead397a39a92857cfb1d43052e356bff0";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."escape-string-regexp"."^1.0.2" =
+    self.by-version."escape-string-regexp"."1.0.3";
+  by-version."escape-string-regexp"."1.0.3" = self.buildNodePackage {
+    name = "escape-string-regexp-1.0.3";
+    version = "1.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz";
+      name = "escape-string-regexp-1.0.3.tgz";
+      sha1 = "9e2d8b25bc2555c3336723750e03f099c2735bb5";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."etag"."~1.6.0" =
+    self.by-version."etag"."1.6.0";
+  by-version."etag"."1.6.0" = self.buildNodePackage {
+    name = "etag-1.6.0";
+    version = "1.6.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/etag/-/etag-1.6.0.tgz";
+      name = "etag-1.6.0.tgz";
+      sha1 = "8bcb2c6af1254c481dfc8b997c906ef4e442c207";
+    };
+    deps = {
+      "crc-3.2.1" = self.by-version."crc"."3.2.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."express"."~4.12.3" =
+    self.by-version."express"."4.12.4";
+  by-version."express"."4.12.4" = self.buildNodePackage {
+    name = "express-4.12.4";
+    version = "4.12.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/express/-/express-4.12.4.tgz";
+      name = "express-4.12.4.tgz";
+      sha1 = "8fec2510255bc6b2e58107c48239c0fa307c1aa2";
+    };
+    deps = {
+      "accepts-1.2.9" = self.by-version."accepts"."1.2.9";
+      "content-disposition-0.5.0" = self.by-version."content-disposition"."0.5.0";
+      "content-type-1.0.1" = self.by-version."content-type"."1.0.1";
+      "cookie-0.1.2" = self.by-version."cookie"."0.1.2";
+      "cookie-signature-1.0.6" = self.by-version."cookie-signature"."1.0.6";
+      "debug-2.2.0" = self.by-version."debug"."2.2.0";
+      "depd-1.0.1" = self.by-version."depd"."1.0.1";
+      "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
+      "etag-1.6.0" = self.by-version."etag"."1.6.0";
+      "finalhandler-0.3.6" = self.by-version."finalhandler"."0.3.6";
+      "fresh-0.2.4" = self.by-version."fresh"."0.2.4";
+      "merge-descriptors-1.0.0" = self.by-version."merge-descriptors"."1.0.0";
+      "methods-1.1.1" = self.by-version."methods"."1.1.1";
+      "on-finished-2.2.1" = self.by-version."on-finished"."2.2.1";
+      "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
+      "path-to-regexp-0.1.3" = self.by-version."path-to-regexp"."0.1.3";
+      "proxy-addr-1.0.8" = self.by-version."proxy-addr"."1.0.8";
+      "qs-2.4.2" = self.by-version."qs"."2.4.2";
+      "range-parser-1.0.2" = self.by-version."range-parser"."1.0.2";
+      "send-0.12.3" = self.by-version."send"."0.12.3";
+      "serve-static-1.9.3" = self.by-version."serve-static"."1.9.3";
+      "type-is-1.6.3" = self.by-version."type-is"."1.6.3";
+      "vary-1.0.0" = self.by-version."vary"."1.0.0";
+      "utils-merge-1.0.0" = self.by-version."utils-merge"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "express" = self.by-version."express"."4.12.4";
+  by-spec."fast-future"."~1.0.0" =
+    self.by-version."fast-future"."1.0.1";
+  by-version."fast-future"."1.0.1" = self.buildNodePackage {
+    name = "fast-future-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/fast-future/-/fast-future-1.0.1.tgz";
+      name = "fast-future-1.0.1.tgz";
+      sha1 = "6cbd22d999ab39cd10fc79392486e7a678716818";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."fd-slicer"."~1.0.0" =
+    self.by-version."fd-slicer"."1.0.1";
+  by-version."fd-slicer"."1.0.1" = self.buildNodePackage {
+    name = "fd-slicer-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz";
+      name = "fd-slicer-1.0.1.tgz";
+      sha1 = "8b5bcbd9ec327c5041bf9ab023fd6750f1177e65";
+    };
+    deps = {
+      "pend-1.2.0" = self.by-version."pend"."1.2.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."fd-slicer"."~1.0.1" =
+    self.by-version."fd-slicer"."1.0.1";
+  by-spec."finalhandler"."0.3.6" =
+    self.by-version."finalhandler"."0.3.6";
+  by-version."finalhandler"."0.3.6" = self.buildNodePackage {
+    name = "finalhandler-0.3.6";
+    version = "0.3.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/finalhandler/-/finalhandler-0.3.6.tgz";
+      name = "finalhandler-0.3.6.tgz";
+      sha1 = "daf9c4161b1b06e001466b1411dfdb6973be138b";
+    };
+    deps = {
+      "debug-2.2.0" = self.by-version."debug"."2.2.0";
+      "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
+      "on-finished-2.2.1" = self.by-version."on-finished"."2.2.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."findit2"."~2.2.3" =
+    self.by-version."findit2"."2.2.3";
+  by-version."findit2"."2.2.3" = self.buildNodePackage {
+    name = "findit2-2.2.3";
+    version = "2.2.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/findit2/-/findit2-2.2.3.tgz";
+      name = "findit2-2.2.3.tgz";
+      sha1 = "58a466697df8a6205cdfdbf395536b8bd777a5f6";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "findit2" = self.by-version."findit2"."2.2.3";
+  by-spec."forever-agent"."~0.5.0" =
+    self.by-version."forever-agent"."0.5.2";
+  by-version."forever-agent"."0.5.2" = self.buildNodePackage {
+    name = "forever-agent-0.5.2";
+    version = "0.5.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/forever-agent/-/forever-agent-0.5.2.tgz";
+      name = "forever-agent-0.5.2.tgz";
+      sha1 = "6d0e09c4921f94a27f63d3b49c5feff1ea4c5130";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."forever-agent"."~0.6.0" =
+    self.by-version."forever-agent"."0.6.1";
+  by-version."forever-agent"."0.6.1" = self.buildNodePackage {
+    name = "forever-agent-0.6.1";
+    version = "0.6.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz";
+      name = "forever-agent-0.6.1.tgz";
+      sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."form-data"."~0.2.0" =
+    self.by-version."form-data"."0.2.0";
+  by-version."form-data"."0.2.0" = self.buildNodePackage {
+    name = "form-data-0.2.0";
+    version = "0.2.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/form-data/-/form-data-0.2.0.tgz";
+      name = "form-data-0.2.0.tgz";
+      sha1 = "26f8bc26da6440e299cbdcfb69035c4f77a6e466";
+    };
+    deps = {
+      "async-0.9.2" = self.by-version."async"."0.9.2";
+      "combined-stream-0.0.7" = self.by-version."combined-stream"."0.0.7";
+      "mime-types-2.0.14" = self.by-version."mime-types"."2.0.14";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."forwarded"."~0.1.0" =
+    self.by-version."forwarded"."0.1.0";
+  by-version."forwarded"."0.1.0" = self.buildNodePackage {
+    name = "forwarded-0.1.0";
+    version = "0.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/forwarded/-/forwarded-0.1.0.tgz";
+      name = "forwarded-0.1.0.tgz";
+      sha1 = "19ef9874c4ae1c297bcf078fde63a09b66a84363";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."fresh"."0.2.4" =
+    self.by-version."fresh"."0.2.4";
+  by-version."fresh"."0.2.4" = self.buildNodePackage {
+    name = "fresh-0.2.4";
+    version = "0.2.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/fresh/-/fresh-0.2.4.tgz";
+      name = "fresh-0.2.4.tgz";
+      sha1 = "3582499206c9723714190edd74b4604feb4a614c";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."gapitoken"."~0.1.2" =
+    self.by-version."gapitoken"."0.1.4";
+  by-version."gapitoken"."0.1.4" = self.buildNodePackage {
+    name = "gapitoken-0.1.4";
+    version = "0.1.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/gapitoken/-/gapitoken-0.1.4.tgz";
+      name = "gapitoken-0.1.4.tgz";
+      sha1 = "643dedb26cb142466f62b73d2782e7822a6f1ad8";
+    };
+    deps = {
+      "jws-0.0.2" = self.by-version."jws"."0.0.2";
+      "request-2.57.0" = self.by-version."request"."2.57.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."generate-function"."^2.0.0" =
+    self.by-version."generate-function"."2.0.0";
+  by-version."generate-function"."2.0.0" = self.buildNodePackage {
+    name = "generate-function-2.0.0";
+    version = "2.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz";
+      name = "generate-function-2.0.0.tgz";
+      sha1 = "6858fe7c0969b7d4e9093337647ac79f60dfbe74";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."generate-object-property"."^1.1.0" =
+    self.by-version."generate-object-property"."1.2.0";
+  by-version."generate-object-property"."1.2.0" = self.buildNodePackage {
+    name = "generate-object-property-1.2.0";
+    version = "1.2.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz";
+      name = "generate-object-property-1.2.0.tgz";
+      sha1 = "9c0e1c40308ce804f4783618b937fa88f99d50d0";
+    };
+    deps = {
+      "is-property-1.0.2" = self.by-version."is-property"."1.0.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."get-stdin"."^4.0.1" =
+    self.by-version."get-stdin"."4.0.1";
+  by-version."get-stdin"."4.0.1" = self.buildNodePackage {
+    name = "get-stdin-4.0.1";
+    version = "4.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz";
+      name = "get-stdin-4.0.1.tgz";
+      sha1 = "b968c6b0a04384324902e8bf1a5df32579a450fe";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."glob"."3.2.x" =
+    self.by-version."glob"."3.2.11";
+  by-version."glob"."3.2.11" = self.buildNodePackage {
+    name = "glob-3.2.11";
+    version = "3.2.11";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/glob/-/glob-3.2.11.tgz";
+      name = "glob-3.2.11.tgz";
+      sha1 = "4a973f635b9190f715d10987d5c00fd2815ebe3d";
+    };
+    deps = {
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "minimatch-0.3.0" = self.by-version."minimatch"."0.3.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."google-auth-library"."~0.9.3" =
+    self.by-version."google-auth-library"."0.9.6";
+  by-version."google-auth-library"."0.9.6" = self.buildNodePackage {
+    name = "google-auth-library-0.9.6";
+    version = "0.9.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/google-auth-library/-/google-auth-library-0.9.6.tgz";
+      name = "google-auth-library-0.9.6.tgz";
+      sha1 = "57aa09f2621d6eafe8852b0167c9100759a67220";
+    };
+    deps = {
+      "async-0.9.2" = self.by-version."async"."0.9.2";
+      "gtoken-1.1.1" = self.by-version."gtoken"."1.1.1";
+      "lodash.noop-3.0.0" = self.by-version."lodash.noop"."3.0.0";
+      "jws-3.0.0" = self.by-version."jws"."3.0.0";
+      "request-2.51.0" = self.by-version."request"."2.51.0";
+      "string-template-0.2.1" = self.by-version."string-template"."0.2.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."google-p12-pem"."^0.0.1" =
+    self.by-version."google-p12-pem"."0.0.1";
+  by-version."google-p12-pem"."0.0.1" = self.buildNodePackage {
+    name = "google-p12-pem-0.0.1";
+    version = "0.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/google-p12-pem/-/google-p12-pem-0.0.1.tgz";
+      name = "google-p12-pem-0.0.1.tgz";
+      sha1 = "965638d464f13b4a866356a5ba047163ec0b08b7";
+    };
+    deps = {
+      "node-forge-0.6.16" = self.by-version."node-forge"."0.6.16";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."googleapis"."~2.0.3" =
+    self.by-version."googleapis"."2.0.5";
+  by-version."googleapis"."2.0.5" = self.buildNodePackage {
+    name = "googleapis-2.0.5";
+    version = "2.0.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/googleapis/-/googleapis-2.0.5.tgz";
+      name = "googleapis-2.0.5.tgz";
+      sha1 = "fb2d678f97152eb0a336da84bbc1eeb16a9c8310";
+    };
+    deps = {
+      "async-0.9.2" = self.by-version."async"."0.9.2";
+      "gapitoken-0.1.4" = self.by-version."gapitoken"."0.1.4";
+      "google-auth-library-0.9.6" = self.by-version."google-auth-library"."0.9.6";
+      "request-2.54.0" = self.by-version."request"."2.54.0";
+      "string-template-0.2.1" = self.by-version."string-template"."0.2.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "googleapis" = self.by-version."googleapis"."2.0.5";
+  by-spec."graceful-readlink".">= 1.0.0" =
+    self.by-version."graceful-readlink"."1.0.1";
+  by-version."graceful-readlink"."1.0.1" = self.buildNodePackage {
+    name = "graceful-readlink-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz";
+      name = "graceful-readlink-1.0.1.tgz";
+      sha1 = "4cafad76bc62f02fa039b2f94e9a3dd3a391a725";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."groove"."~2.3.3" =
+    self.by-version."groove"."2.3.4";
+  by-version."groove"."2.3.4" = self.buildNodePackage {
+    name = "groove-2.3.4";
+    version = "2.3.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/groove/-/groove-2.3.4.tgz";
+      name = "groove-2.3.4.tgz";
+      sha1 = "bbfb8e40584c5921f6df9d52d4017f2acb0a7e45";
+    };
+    deps = {
+      "bindings-1.2.1" = self.by-version."bindings"."1.2.1";
+      "nan-1.8.4" = self.by-version."nan"."1.8.4";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "groove" = self.by-version."groove"."2.3.4";
+  by-spec."gtoken"."^1.1.0" =
+    self.by-version."gtoken"."1.1.1";
+  by-version."gtoken"."1.1.1" = self.buildNodePackage {
+    name = "gtoken-1.1.1";
+    version = "1.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/gtoken/-/gtoken-1.1.1.tgz";
+      name = "gtoken-1.1.1.tgz";
+      sha1 = "969af828d1f7efea32a500ea09b0edfa8e0c438a";
+    };
+    deps = {
+      "google-p12-pem-0.0.1" = self.by-version."google-p12-pem"."0.0.1";
+      "jws-3.0.0" = self.by-version."jws"."3.0.0";
+      "mime-1.3.4" = self.by-version."mime"."1.3.4";
+      "request-2.57.0" = self.by-version."request"."2.57.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."har-validator"."^1.4.0" =
+    self.by-version."har-validator"."1.7.1";
+  by-version."har-validator"."1.7.1" = self.buildNodePackage {
+    name = "har-validator-1.7.1";
+    version = "1.7.1";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/har-validator/-/har-validator-1.7.1.tgz";
+      name = "har-validator-1.7.1.tgz";
+      sha1 = "8ec8952f8287d21b451ba3e36f27ed8d997d8a95";
+    };
+    deps = {
+      "bluebird-2.9.30" = self.by-version."bluebird"."2.9.30";
+      "chalk-1.0.0" = self.by-version."chalk"."1.0.0";
+      "commander-2.8.1" = self.by-version."commander"."2.8.1";
+      "is-my-json-valid-2.12.0" = self.by-version."is-my-json-valid"."2.12.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."har-validator"."^1.6.1" =
+    self.by-version."har-validator"."1.7.1";
+  by-spec."has-ansi"."^1.0.3" =
+    self.by-version."has-ansi"."1.0.3";
+  by-version."has-ansi"."1.0.3" = self.buildNodePackage {
+    name = "has-ansi-1.0.3";
+    version = "1.0.3";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz";
+      name = "has-ansi-1.0.3.tgz";
+      sha1 = "c0b5b1615d9e382b0ff67169d967b425e48ca538";
+    };
+    deps = {
+      "ansi-regex-1.1.1" = self.by-version."ansi-regex"."1.1.1";
+      "get-stdin-4.0.1" = self.by-version."get-stdin"."4.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."hawk"."1.1.1" =
+    self.by-version."hawk"."1.1.1";
+  by-version."hawk"."1.1.1" = self.buildNodePackage {
+    name = "hawk-1.1.1";
+    version = "1.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/hawk/-/hawk-1.1.1.tgz";
+      name = "hawk-1.1.1.tgz";
+      sha1 = "87cd491f9b46e4e2aeaca335416766885d2d1ed9";
+    };
+    deps = {
+      "hoek-0.9.1" = self.by-version."hoek"."0.9.1";
+      "boom-0.4.2" = self.by-version."boom"."0.4.2";
+      "cryptiles-0.2.2" = self.by-version."cryptiles"."0.2.2";
+      "sntp-0.2.4" = self.by-version."sntp"."0.2.4";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."hawk"."~2.3.0" =
+    self.by-version."hawk"."2.3.1";
+  by-version."hawk"."2.3.1" = self.buildNodePackage {
+    name = "hawk-2.3.1";
+    version = "2.3.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/hawk/-/hawk-2.3.1.tgz";
+      name = "hawk-2.3.1.tgz";
+      sha1 = "1e731ce39447fa1d0f6d707f7bceebec0fd1ec1f";
+    };
+    deps = {
+      "hoek-2.14.0" = self.by-version."hoek"."2.14.0";
+      "boom-2.8.0" = self.by-version."boom"."2.8.0";
+      "cryptiles-2.0.4" = self.by-version."cryptiles"."2.0.4";
+      "sntp-1.0.9" = self.by-version."sntp"."1.0.9";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."hoek"."0.9.x" =
+    self.by-version."hoek"."0.9.1";
+  by-version."hoek"."0.9.1" = self.buildNodePackage {
+    name = "hoek-0.9.1";
+    version = "0.9.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/hoek/-/hoek-0.9.1.tgz";
+      name = "hoek-0.9.1.tgz";
+      sha1 = "3d322462badf07716ea7eb85baf88079cddce505";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."hoek"."2.x.x" =
+    self.by-version."hoek"."2.14.0";
+  by-version."hoek"."2.14.0" = self.buildNodePackage {
+    name = "hoek-2.14.0";
+    version = "2.14.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/hoek/-/hoek-2.14.0.tgz";
+      name = "hoek-2.14.0.tgz";
+      sha1 = "81211691f52a5a835ae49edbf1e89c9003476aa4";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."htmlparser2"."~3.8.1" =
+    self.by-version."htmlparser2"."3.8.3";
+  by-version."htmlparser2"."3.8.3" = self.buildNodePackage {
+    name = "htmlparser2-3.8.3";
+    version = "3.8.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz";
+      name = "htmlparser2-3.8.3.tgz";
+      sha1 = "996c28b191516a8be86501a7d79757e5c70c1068";
+    };
+    deps = {
+      "domhandler-2.3.0" = self.by-version."domhandler"."2.3.0";
+      "domutils-1.5.1" = self.by-version."domutils"."1.5.1";
+      "domelementtype-1.3.0" = self.by-version."domelementtype"."1.3.0";
+      "readable-stream-1.1.13" = self.by-version."readable-stream"."1.1.13";
+      "entities-1.0.0" = self.by-version."entities"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."http-signature"."~0.10.0" =
+    self.by-version."http-signature"."0.10.1";
+  by-version."http-signature"."0.10.1" = self.buildNodePackage {
+    name = "http-signature-0.10.1";
+    version = "0.10.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/http-signature/-/http-signature-0.10.1.tgz";
+      name = "http-signature-0.10.1.tgz";
+      sha1 = "4fbdac132559aa8323121e540779c0a012b27e66";
+    };
+    deps = {
+      "assert-plus-0.1.5" = self.by-version."assert-plus"."0.1.5";
+      "asn1-0.1.11" = self.by-version."asn1"."0.1.11";
+      "ctype-0.5.3" = self.by-version."ctype"."0.5.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."http-signature"."~0.11.0" =
+    self.by-version."http-signature"."0.11.0";
+  by-version."http-signature"."0.11.0" = self.buildNodePackage {
+    name = "http-signature-0.11.0";
+    version = "0.11.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/http-signature/-/http-signature-0.11.0.tgz";
+      name = "http-signature-0.11.0.tgz";
+      sha1 = "1796cf67a001ad5cd6849dca0991485f09089fe6";
+    };
+    deps = {
+      "assert-plus-0.1.5" = self.by-version."assert-plus"."0.1.5";
+      "asn1-0.1.11" = self.by-version."asn1"."0.1.11";
+      "ctype-0.5.3" = self.by-version."ctype"."0.5.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."httpolyglot"."~0.1.1" =
+    self.by-version."httpolyglot"."0.1.1";
+  by-version."httpolyglot"."0.1.1" = self.buildNodePackage {
+    name = "httpolyglot-0.1.1";
+    version = "0.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/httpolyglot/-/httpolyglot-0.1.1.tgz";
+      name = "httpolyglot-0.1.1.tgz";
+      sha1 = "cd0f5c995cbb95dde325d16a7537f90c0048e53d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "httpolyglot" = self.by-version."httpolyglot"."0.1.1";
+  by-spec."human-size"."~1.1.0" =
+    self.by-version."human-size"."1.1.0";
+  by-version."human-size"."1.1.0" = self.buildNodePackage {
+    name = "human-size-1.1.0";
+    version = "1.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/human-size/-/human-size-1.1.0.tgz";
+      name = "human-size-1.1.0.tgz";
+      sha1 = "052562be999841c037022c20259990c56ea996f9";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "human-size" = self.by-version."human-size"."1.1.0";
+  by-spec."indent-string"."^1.1.0" =
+    self.by-version."indent-string"."1.2.1";
+  by-version."indent-string"."1.2.1" = self.buildNodePackage {
+    name = "indent-string-1.2.1";
+    version = "1.2.1";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/indent-string/-/indent-string-1.2.1.tgz";
+      name = "indent-string-1.2.1.tgz";
+      sha1 = "294c5930792f8bb5b14462a4aa425b94f07d3a56";
+    };
+    deps = {
+      "get-stdin-4.0.1" = self.by-version."get-stdin"."4.0.1";
+      "minimist-1.1.1" = self.by-version."minimist"."1.1.1";
+      "repeating-1.1.3" = self.by-version."repeating"."1.1.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."inherits"."*" =
+    self.by-version."inherits"."2.0.1";
+  by-version."inherits"."2.0.1" = self.buildNodePackage {
+    name = "inherits-2.0.1";
+    version = "2.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz";
+      name = "inherits-2.0.1.tgz";
+      sha1 = "b17d08d326b4423e568eff719f91b0b1cbdf69f1";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."inherits"."2" =
+    self.by-version."inherits"."2.0.1";
+  by-spec."inherits"."~2.0.1" =
+    self.by-version."inherits"."2.0.1";
+  by-spec."ipaddr.js"."1.0.1" =
+    self.by-version."ipaddr.js"."1.0.1";
+  by-version."ipaddr.js"."1.0.1" = self.buildNodePackage {
+    name = "ipaddr.js-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.0.1.tgz";
+      name = "ipaddr.js-1.0.1.tgz";
+      sha1 = "5f38801dc73e0400fc7076386f6ed5215fbd8f95";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."is-finite"."^1.0.0" =
+    self.by-version."is-finite"."1.0.1";
+  by-version."is-finite"."1.0.1" = self.buildNodePackage {
+    name = "is-finite-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/is-finite/-/is-finite-1.0.1.tgz";
+      name = "is-finite-1.0.1.tgz";
+      sha1 = "6438603eaebe2793948ff4a4262ec8db3d62597b";
+    };
+    deps = {
+      "number-is-nan-1.0.0" = self.by-version."number-is-nan"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."is-my-json-valid"."^2.12.0" =
+    self.by-version."is-my-json-valid"."2.12.0";
+  by-version."is-my-json-valid"."2.12.0" = self.buildNodePackage {
+    name = "is-my-json-valid-2.12.0";
+    version = "2.12.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.12.0.tgz";
+      name = "is-my-json-valid-2.12.0.tgz";
+      sha1 = "8fa6c408b26be95b45a23e8f8c4b464a53874d2b";
+    };
+    deps = {
+      "generate-function-2.0.0" = self.by-version."generate-function"."2.0.0";
+      "generate-object-property-1.2.0" = self.by-version."generate-object-property"."1.2.0";
+      "jsonpointer-1.1.0" = self.by-version."jsonpointer"."1.1.0";
+      "xtend-4.0.0" = self.by-version."xtend"."4.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."is-property"."^1.0.0" =
+    self.by-version."is-property"."1.0.2";
+  by-version."is-property"."1.0.2" = self.buildNodePackage {
+    name = "is-property-1.0.2";
+    version = "1.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz";
+      name = "is-property-1.0.2.tgz";
+      sha1 = "57fe1c4e48474edd65b09911f26b1cd4095dda84";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."isarray"."0.0.1" =
+    self.by-version."isarray"."0.0.1";
+  by-version."isarray"."0.0.1" = self.buildNodePackage {
+    name = "isarray-0.0.1";
+    version = "0.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz";
+      name = "isarray-0.0.1.tgz";
+      sha1 = "8a18acfca9a8f4177e09abfc6038939b05d1eedf";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."isstream"."~0.1.1" =
+    self.by-version."isstream"."0.1.2";
+  by-version."isstream"."0.1.2" = self.buildNodePackage {
+    name = "isstream-0.1.2";
+    version = "0.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz";
+      name = "isstream-0.1.2.tgz";
+      sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."json-stringify-safe"."~5.0.0" =
+    self.by-version."json-stringify-safe"."5.0.1";
+  by-version."json-stringify-safe"."5.0.1" = self.buildNodePackage {
+    name = "json-stringify-safe-5.0.1";
+    version = "5.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
+      name = "json-stringify-safe-5.0.1.tgz";
+      sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."jsonpointer"."^1.1.0" =
+    self.by-version."jsonpointer"."1.1.0";
+  by-version."jsonpointer"."1.1.0" = self.buildNodePackage {
+    name = "jsonpointer-1.1.0";
+    version = "1.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/jsonpointer/-/jsonpointer-1.1.0.tgz";
+      name = "jsonpointer-1.1.0.tgz";
+      sha1 = "c3c72efaed3b97154163dc01dd349e1cfe0f80fc";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."jstream"."~0.2.7" =
+    self.by-version."jstream"."0.2.7";
+  by-version."jstream"."0.2.7" = self.buildNodePackage {
+    name = "jstream-0.2.7";
+    version = "0.2.7";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/jstream/-/jstream-0.2.7.tgz";
+      name = "jstream-0.2.7.tgz";
+      sha1 = "55f06cd6d4204caeac4907a5de1b90aabf4d60da";
+    };
+    deps = {
+      "clarinet-0.8.1" = self.by-version."clarinet"."0.8.1";
+      "readable-stream-1.1.13" = self.by-version."readable-stream"."1.1.13";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."jwa"."~1.0.0" =
+    self.by-version."jwa"."1.0.0";
+  by-version."jwa"."1.0.0" = self.buildNodePackage {
+    name = "jwa-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/jwa/-/jwa-1.0.0.tgz";
+      name = "jwa-1.0.0.tgz";
+      sha1 = "040b64fb582171a65f3368e96837ea4dcf42f3d8";
+    };
+    deps = {
+      "base64url-0.0.6" = self.by-version."base64url"."0.0.6";
+      "buffer-equal-constant-time-1.0.1" = self.by-version."buffer-equal-constant-time"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."jws"."0.0.2" =
+    self.by-version."jws"."0.0.2";
+  by-version."jws"."0.0.2" = self.buildNodePackage {
+    name = "jws-0.0.2";
+    version = "0.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/jws/-/jws-0.0.2.tgz";
+      name = "jws-0.0.2.tgz";
+      sha1 = "8c6916977183cce3361da48c8c2e0c606e7a95c6";
+    };
+    deps = {
+      "tap-0.3.3" = self.by-version."tap"."0.3.3";
+      "base64url-0.0.3" = self.by-version."base64url"."0.0.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."jws"."^3.0.0" =
+    self.by-version."jws"."3.0.0";
+  by-version."jws"."3.0.0" = self.buildNodePackage {
+    name = "jws-3.0.0";
+    version = "3.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/jws/-/jws-3.0.0.tgz";
+      name = "jws-3.0.0.tgz";
+      sha1 = "da5f267897dd4e9cf8137979db33fc54a3c05418";
+    };
+    deps = {
+      "jwa-1.0.0" = self.by-version."jwa"."1.0.0";
+      "base64url-1.0.4" = self.by-version."base64url"."1.0.4";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."jws"."~3.0.0" =
+    self.by-version."jws"."3.0.0";
+  by-spec."keese"."~1.1.1" =
+    self.by-version."keese"."1.1.1";
+  by-version."keese"."1.1.1" = self.buildNodePackage {
+    name = "keese-1.1.1";
+    version = "1.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/keese/-/keese-1.1.1.tgz";
+      name = "keese-1.1.1.tgz";
+      sha1 = "69a1f971e64ee5d2094af002f6d92fa806250842";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "keese" = self.by-version."keese"."1.1.1";
+  by-spec."keygrip"."~1.0.0" =
+    self.by-version."keygrip"."1.0.1";
+  by-version."keygrip"."1.0.1" = self.buildNodePackage {
+    name = "keygrip-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/keygrip/-/keygrip-1.0.1.tgz";
+      name = "keygrip-1.0.1.tgz";
+      sha1 = "b02fa4816eef21a8c4b35ca9e52921ffc89a30e9";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."lastfm"."~0.9.2" =
+    self.by-version."lastfm"."0.9.2";
+  by-version."lastfm"."0.9.2" = self.buildNodePackage {
+    name = "lastfm-0.9.2";
+    version = "0.9.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/lastfm/-/lastfm-0.9.2.tgz";
+      name = "lastfm-0.9.2.tgz";
+      sha1 = "d00ca2e3b30eb484e510792875525900e4d77d88";
+    };
+    deps = {
+      "underscore-1.6.0" = self.by-version."underscore"."1.6.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "lastfm" = self.by-version."lastfm"."0.9.2";
+  by-spec."leveldown"."~1.0.6" =
+    self.by-version."leveldown"."1.0.7";
+  by-version."leveldown"."1.0.7" = self.buildNodePackage {
+    name = "leveldown-1.0.7";
+    version = "1.0.7";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/leveldown/-/leveldown-1.0.7.tgz";
+      name = "leveldown-1.0.7.tgz";
+      sha1 = "39bbe95f92ce09992ec12de47ade5167be2b6874";
+    };
+    deps = {
+      "abstract-leveldown-2.2.2" = self.by-version."abstract-leveldown"."2.2.2";
+      "bindings-1.2.1" = self.by-version."bindings"."1.2.1";
+      "fast-future-1.0.1" = self.by-version."fast-future"."1.0.1";
+      "nan-1.8.4" = self.by-version."nan"."1.8.4";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "leveldown" = self.by-version."leveldown"."1.0.7";
+  by-spec."lodash"."~2.4.1" =
+    self.by-version."lodash"."2.4.2";
+  by-version."lodash"."2.4.2" = self.buildNodePackage {
+    name = "lodash-2.4.2";
+    version = "2.4.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz";
+      name = "lodash-2.4.2.tgz";
+      sha1 = "fadd834b9683073da179b3eae6d9c0d15053f73e";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."lodash.noop"."~3.0.0" =
+    self.by-version."lodash.noop"."3.0.0";
+  by-version."lodash.noop"."3.0.0" = self.buildNodePackage {
+    name = "lodash.noop-3.0.0";
+    version = "3.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/lodash.noop/-/lodash.noop-3.0.0.tgz";
+      name = "lodash.noop-3.0.0.tgz";
+      sha1 = "f383ca8dba97d8f217e49afcd2b824db9e5e8d68";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."lru-cache"."2" =
+    self.by-version."lru-cache"."2.6.4";
+  by-version."lru-cache"."2.6.4" = self.buildNodePackage {
+    name = "lru-cache-2.6.4";
+    version = "2.6.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/lru-cache/-/lru-cache-2.6.4.tgz";
+      name = "lru-cache-2.6.4.tgz";
+      sha1 = "2675190ccd1b0701ec2f652a4d0d3d400d76c0dd";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."map-obj"."^1.0.0" =
+    self.by-version."map-obj"."1.0.1";
+  by-version."map-obj"."1.0.1" = self.buildNodePackage {
+    name = "map-obj-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz";
+      name = "map-obj-1.0.1.tgz";
+      sha1 = "d933ceb9205d82bdcf4886f6742bdc2b4dea146d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."media-typer"."0.3.0" =
+    self.by-version."media-typer"."0.3.0";
+  by-version."media-typer"."0.3.0" = self.buildNodePackage {
+    name = "media-typer-0.3.0";
+    version = "0.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz";
+      name = "media-typer-0.3.0.tgz";
+      sha1 = "8710d7af0aa626f8fffa1ce00168545263255748";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."meow"."~2.0.0" =
+    self.by-version."meow"."2.0.0";
+  by-version."meow"."2.0.0" = self.buildNodePackage {
+    name = "meow-2.0.0";
+    version = "2.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/meow/-/meow-2.0.0.tgz";
+      name = "meow-2.0.0.tgz";
+      sha1 = "8f530a8ecf5d40d3f4b4df93c3472900fba2a8f1";
+    };
+    deps = {
+      "camelcase-keys-1.0.0" = self.by-version."camelcase-keys"."1.0.0";
+      "indent-string-1.2.1" = self.by-version."indent-string"."1.2.1";
+      "minimist-1.1.1" = self.by-version."minimist"."1.1.1";
+      "object-assign-1.0.0" = self.by-version."object-assign"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."merge-descriptors"."1.0.0" =
+    self.by-version."merge-descriptors"."1.0.0";
+  by-version."merge-descriptors"."1.0.0" = self.buildNodePackage {
+    name = "merge-descriptors-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.0.tgz";
+      name = "merge-descriptors-1.0.0.tgz";
+      sha1 = "2169cf7538e1b0cc87fb88e1502d8474bbf79864";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mess"."~0.1.2" =
+    self.by-version."mess"."0.1.2";
+  by-version."mess"."0.1.2" = self.buildNodePackage {
+    name = "mess-0.1.2";
+    version = "0.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mess/-/mess-0.1.2.tgz";
+      name = "mess-0.1.2.tgz";
+      sha1 = "2c81a424efc87a69ad11f1c7129d1f6f6353b9c0";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "mess" = self.by-version."mess"."0.1.2";
+  by-spec."methods"."~1.1.1" =
+    self.by-version."methods"."1.1.1";
+  by-version."methods"."1.1.1" = self.buildNodePackage {
+    name = "methods-1.1.1";
+    version = "1.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/methods/-/methods-1.1.1.tgz";
+      name = "methods-1.1.1.tgz";
+      sha1 = "17ea6366066d00c58e375b8ec7dfd0453c89822a";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mime"."1.3.4" =
+    self.by-version."mime"."1.3.4";
+  by-version."mime"."1.3.4" = self.buildNodePackage {
+    name = "mime-1.3.4";
+    version = "1.3.4";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mime/-/mime-1.3.4.tgz";
+      name = "mime-1.3.4.tgz";
+      sha1 = "115f9e3b6b3daf2959983cb38f149a2d40eb5d53";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mime"."^1.2.11" =
+    self.by-version."mime"."1.3.4";
+  by-spec."mime"."~1.2.11" =
+    self.by-version."mime"."1.2.11";
+  by-version."mime"."1.2.11" = self.buildNodePackage {
+    name = "mime-1.2.11";
+    version = "1.2.11";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mime/-/mime-1.2.11.tgz";
+      name = "mime-1.2.11.tgz";
+      sha1 = "58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mime-db"."~1.12.0" =
+    self.by-version."mime-db"."1.12.0";
+  by-version."mime-db"."1.12.0" = self.buildNodePackage {
+    name = "mime-db-1.12.0";
+    version = "1.12.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mime-db/-/mime-db-1.12.0.tgz";
+      name = "mime-db-1.12.0.tgz";
+      sha1 = "3d0c63180f458eb10d325aaa37d7c58ae312e9d7";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mime-db"."~1.13.0" =
+    self.by-version."mime-db"."1.13.0";
+  by-version."mime-db"."1.13.0" = self.buildNodePackage {
+    name = "mime-db-1.13.0";
+    version = "1.13.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mime-db/-/mime-db-1.13.0.tgz";
+      name = "mime-db-1.13.0.tgz";
+      sha1 = "fd6808168fe30835e7ea2205fc981d3b633e4e34";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mime-types"."~1.0.1" =
+    self.by-version."mime-types"."1.0.2";
+  by-version."mime-types"."1.0.2" = self.buildNodePackage {
+    name = "mime-types-1.0.2";
+    version = "1.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mime-types/-/mime-types-1.0.2.tgz";
+      name = "mime-types-1.0.2.tgz";
+      sha1 = "995ae1392ab8affcbfcb2641dd054e943c0d5dce";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mime-types"."~2.0.1" =
+    self.by-version."mime-types"."2.0.14";
+  by-version."mime-types"."2.0.14" = self.buildNodePackage {
+    name = "mime-types-2.0.14";
+    version = "2.0.14";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mime-types/-/mime-types-2.0.14.tgz";
+      name = "mime-types-2.0.14.tgz";
+      sha1 = "310e159db23e077f8bb22b748dabfa4957140aa6";
+    };
+    deps = {
+      "mime-db-1.12.0" = self.by-version."mime-db"."1.12.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mime-types"."~2.0.3" =
+    self.by-version."mime-types"."2.0.14";
+  by-spec."mime-types"."~2.1.1" =
+    self.by-version."mime-types"."2.1.1";
+  by-version."mime-types"."2.1.1" = self.buildNodePackage {
+    name = "mime-types-2.1.1";
+    version = "2.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mime-types/-/mime-types-2.1.1.tgz";
+      name = "mime-types-2.1.1.tgz";
+      sha1 = "c7b692796d5166f4826d10b4675c8a916657d04e";
+    };
+    deps = {
+      "mime-db-1.13.0" = self.by-version."mime-db"."1.13.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."minimatch"."0.3" =
+    self.by-version."minimatch"."0.3.0";
+  by-version."minimatch"."0.3.0" = self.buildNodePackage {
+    name = "minimatch-0.3.0";
+    version = "0.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz";
+      name = "minimatch-0.3.0.tgz";
+      sha1 = "275d8edaac4f1bb3326472089e7949c8394699dd";
+    };
+    deps = {
+      "lru-cache-2.6.4" = self.by-version."lru-cache"."2.6.4";
+      "sigmund-1.0.1" = self.by-version."sigmund"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."minimist"."0.0.8" =
+    self.by-version."minimist"."0.0.8";
+  by-version."minimist"."0.0.8" = self.buildNodePackage {
+    name = "minimist-0.0.8";
+    version = "0.0.8";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
+      name = "minimist-0.0.8.tgz";
+      sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."minimist"."^1.1.0" =
+    self.by-version."minimist"."1.1.1";
+  by-version."minimist"."1.1.1" = self.buildNodePackage {
+    name = "minimist-1.1.1";
+    version = "1.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz";
+      name = "minimist-1.1.1.tgz";
+      sha1 = "1bc2bc71658cdca5712475684363615b0b4f695b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mkdirp"."0.3.x" =
+    self.by-version."mkdirp"."0.3.5";
+  by-version."mkdirp"."0.3.5" = self.buildNodePackage {
+    name = "mkdirp-0.3.5";
+    version = "0.3.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz";
+      name = "mkdirp-0.3.5.tgz";
+      sha1 = "de3e5f8961c88c787ee1368df849ac4413eca8d7";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mkdirp"."~0.3" =
+    self.by-version."mkdirp"."0.3.5";
+  by-spec."mkdirp"."~0.5.0" =
+    self.by-version."mkdirp"."0.5.1";
+  by-version."mkdirp"."0.5.1" = self.buildNodePackage {
+    name = "mkdirp-0.5.1";
+    version = "0.5.1";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
+      name = "mkdirp-0.5.1.tgz";
+      sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
+    };
+    deps = {
+      "minimist-0.0.8" = self.by-version."minimist"."0.0.8";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mkdirp"."~0.5.1" =
+    self.by-version."mkdirp"."0.5.1";
+  "mkdirp" = self.by-version."mkdirp"."0.5.1";
+  by-spec."ms"."0.7.1" =
+    self.by-version."ms"."0.7.1";
+  by-version."ms"."0.7.1" = self.buildNodePackage {
+    name = "ms-0.7.1";
+    version = "0.7.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ms/-/ms-0.7.1.tgz";
+      name = "ms-0.7.1.tgz";
+      sha1 = "9cd13c03adbff25b65effde7ce864ee952017098";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."multiparty"."~4.1.2" =
+    self.by-version."multiparty"."4.1.2";
+  by-version."multiparty"."4.1.2" = self.buildNodePackage {
+    name = "multiparty-4.1.2";
+    version = "4.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/multiparty/-/multiparty-4.1.2.tgz";
+      name = "multiparty-4.1.2.tgz";
+      sha1 = "54f8ec9712052fa1dfd8ec975056c8230d6f2370";
+    };
+    deps = {
+      "fd-slicer-1.0.1" = self.by-version."fd-slicer"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "multiparty" = self.by-version."multiparty"."4.1.2";
+  by-spec."music-library-index"."~1.3.0" =
+    self.by-version."music-library-index"."1.3.0";
+  by-version."music-library-index"."1.3.0" = self.buildNodePackage {
+    name = "music-library-index-1.3.0";
+    version = "1.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/music-library-index/-/music-library-index-1.3.0.tgz";
+      name = "music-library-index-1.3.0.tgz";
+      sha1 = "f7dbf6f7df5a0c8c50382542183872aedc5cb86a";
+    };
+    deps = {
+      "diacritics-1.2.1" = self.by-version."diacritics"."1.2.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "music-library-index" = self.by-version."music-library-index"."1.3.0";
+  by-spec."mv"."~2.0.3" =
+    self.by-version."mv"."2.0.3";
+  by-version."mv"."2.0.3" = self.buildNodePackage {
+    name = "mv-2.0.3";
+    version = "2.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mv/-/mv-2.0.3.tgz";
+      name = "mv-2.0.3.tgz";
+      sha1 = "e9ab707d71dc38de24edcc637a8e2f5f480c7f32";
+    };
+    deps = {
+      "mkdirp-0.5.1" = self.by-version."mkdirp"."0.5.1";
+      "ncp-0.6.0" = self.by-version."ncp"."0.6.0";
+      "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "mv" = self.by-version."mv"."2.0.3";
+  by-spec."nan"."~1.8.4" =
+    self.by-version."nan"."1.8.4";
+  by-version."nan"."1.8.4" = self.buildNodePackage {
+    name = "nan-1.8.4";
+    version = "1.8.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/nan/-/nan-1.8.4.tgz";
+      name = "nan-1.8.4.tgz";
+      sha1 = "3c76b5382eab33e44b758d2813ca9d92e9342f34";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ncp"."~0.6.0" =
+    self.by-version."ncp"."0.6.0";
+  by-version."ncp"."0.6.0" = self.buildNodePackage {
+    name = "ncp-0.6.0";
+    version = "0.6.0";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ncp/-/ncp-0.6.0.tgz";
+      name = "ncp-0.6.0.tgz";
+      sha1 = "df8ce021e262be21b52feb3d3e5cfaab12491f0d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."negotiator"."0.5.3" =
+    self.by-version."negotiator"."0.5.3";
+  by-version."negotiator"."0.5.3" = self.buildNodePackage {
+    name = "negotiator-0.5.3";
+    version = "0.5.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/negotiator/-/negotiator-0.5.3.tgz";
+      name = "negotiator-0.5.3.tgz";
+      sha1 = "269d5c476810ec92edbe7b6c2f28316384f9a7e8";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."node-forge"."0.6.16" =
+    self.by-version."node-forge"."0.6.16";
+  by-version."node-forge"."0.6.16" = self.buildNodePackage {
+    name = "node-forge-0.6.16";
+    version = "0.6.16";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/node-forge/-/node-forge-0.6.16.tgz";
+      name = "node-forge-0.6.16.tgz";
+      sha1 = "aae85babf97034d46f1b74a39bfe5891282ae842";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."node-uuid"."~1.4.0" =
+    self.by-version."node-uuid"."1.4.3";
+  by-version."node-uuid"."1.4.3" = self.buildNodePackage {
+    name = "node-uuid-1.4.3";
+    version = "1.4.3";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/node-uuid/-/node-uuid-1.4.3.tgz";
+      name = "node-uuid-1.4.3.tgz";
+      sha1 = "319bb7a56e7cb63f00b5c0cd7851cd4b4ddf1df9";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."nopt"."~2" =
+    self.by-version."nopt"."2.2.1";
+  by-version."nopt"."2.2.1" = self.buildNodePackage {
+    name = "nopt-2.2.1";
+    version = "2.2.1";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/nopt/-/nopt-2.2.1.tgz";
+      name = "nopt-2.2.1.tgz";
+      sha1 = "2aa09b7d1768487b3b89a9c5aa52335bff0baea7";
+    };
+    deps = {
+      "abbrev-1.0.7" = self.by-version."abbrev"."1.0.7";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."number-is-nan"."^1.0.0" =
+    self.by-version."number-is-nan"."1.0.0";
+  by-version."number-is-nan"."1.0.0" = self.buildNodePackage {
+    name = "number-is-nan-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.0.tgz";
+      name = "number-is-nan-1.0.0.tgz";
+      sha1 = "c020f529c5282adfdd233d91d4b181c3d686dc4b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."oauth-sign"."~0.5.0" =
+    self.by-version."oauth-sign"."0.5.0";
+  by-version."oauth-sign"."0.5.0" = self.buildNodePackage {
+    name = "oauth-sign-0.5.0";
+    version = "0.5.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/oauth-sign/-/oauth-sign-0.5.0.tgz";
+      name = "oauth-sign-0.5.0.tgz";
+      sha1 = "d767f5169325620eab2e087ef0c472e773db6461";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."oauth-sign"."~0.6.0" =
+    self.by-version."oauth-sign"."0.6.0";
+  by-version."oauth-sign"."0.6.0" = self.buildNodePackage {
+    name = "oauth-sign-0.6.0";
+    version = "0.6.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/oauth-sign/-/oauth-sign-0.6.0.tgz";
+      name = "oauth-sign-0.6.0.tgz";
+      sha1 = "7dbeae44f6ca454e1f168451d630746735813ce3";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."oauth-sign"."~0.8.0" =
+    self.by-version."oauth-sign"."0.8.0";
+  by-version."oauth-sign"."0.8.0" = self.buildNodePackage {
+    name = "oauth-sign-0.8.0";
+    version = "0.8.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.0.tgz";
+      name = "oauth-sign-0.8.0.tgz";
+      sha1 = "938fdc875765ba527137d8aec9d178e24debc553";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."object-assign"."^1.0.0" =
+    self.by-version."object-assign"."1.0.0";
+  by-version."object-assign"."1.0.0" = self.buildNodePackage {
+    name = "object-assign-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/object-assign/-/object-assign-1.0.0.tgz";
+      name = "object-assign-1.0.0.tgz";
+      sha1 = "e65dc8766d3b47b4b8307465c8311da030b070a6";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."on-finished"."~2.2.1" =
+    self.by-version."on-finished"."2.2.1";
+  by-version."on-finished"."2.2.1" = self.buildNodePackage {
+    name = "on-finished-2.2.1";
+    version = "2.2.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/on-finished/-/on-finished-2.2.1.tgz";
+      name = "on-finished-2.2.1.tgz";
+      sha1 = "5c85c1cc36299f78029653f667f27b6b99ebc029";
+    };
+    deps = {
+      "ee-first-1.1.0" = self.by-version."ee-first"."1.1.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."os-tmpdir"."^1.0.0" =
+    self.by-version."os-tmpdir"."1.0.1";
+  by-version."os-tmpdir"."1.0.1" = self.buildNodePackage {
+    name = "os-tmpdir-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.1.tgz";
+      name = "os-tmpdir-1.0.1.tgz";
+      sha1 = "e9b423a1edaf479882562e92ed71d7743a071b6e";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."osenv"."~0.1.0" =
+    self.by-version."osenv"."0.1.2";
+  by-version."osenv"."0.1.2" = self.buildNodePackage {
+    name = "osenv-0.1.2";
+    version = "0.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/osenv/-/osenv-0.1.2.tgz";
+      name = "osenv-0.1.2.tgz";
+      sha1 = "f4d23ebeceaef078600fb78c0ea58fac5996a02d";
+    };
+    deps = {
+      "os-tmpdir-1.0.1" = self.by-version."os-tmpdir"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "osenv" = self.by-version."osenv"."0.1.2";
+  by-spec."parseurl"."~1.3.0" =
+    self.by-version."parseurl"."1.3.0";
+  by-version."parseurl"."1.3.0" = self.buildNodePackage {
+    name = "parseurl-1.3.0";
+    version = "1.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/parseurl/-/parseurl-1.3.0.tgz";
+      name = "parseurl-1.3.0.tgz";
+      sha1 = "b58046db4223e145afa76009e61bac87cc2281b3";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."path-to-regexp"."0.1.3" =
+    self.by-version."path-to-regexp"."0.1.3";
+  by-version."path-to-regexp"."0.1.3" = self.buildNodePackage {
+    name = "path-to-regexp-0.1.3";
+    version = "0.1.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.3.tgz";
+      name = "path-to-regexp-0.1.3.tgz";
+      sha1 = "21b9ab82274279de25b156ea08fd12ca51b8aecb";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."pend"."~1.2.0" =
+    self.by-version."pend"."1.2.0";
+  by-version."pend"."1.2.0" = self.buildNodePackage {
+    name = "pend-1.2.0";
+    version = "1.2.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/pend/-/pend-1.2.0.tgz";
+      name = "pend-1.2.0.tgz";
+      sha1 = "7a57eb550a6783f9115331fcf4663d5c8e007a50";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "pend" = self.by-version."pend"."1.2.0";
+  by-spec."proxy-addr"."~1.0.8" =
+    self.by-version."proxy-addr"."1.0.8";
+  by-version."proxy-addr"."1.0.8" = self.buildNodePackage {
+    name = "proxy-addr-1.0.8";
+    version = "1.0.8";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/proxy-addr/-/proxy-addr-1.0.8.tgz";
+      name = "proxy-addr-1.0.8.tgz";
+      sha1 = "db54ec878bcc1053d57646609219b3715678bafe";
+    };
+    deps = {
+      "forwarded-0.1.0" = self.by-version."forwarded"."0.1.0";
+      "ipaddr.js-1.0.1" = self.by-version."ipaddr.js"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."qs"."2.4.2" =
+    self.by-version."qs"."2.4.2";
+  by-version."qs"."2.4.2" = self.buildNodePackage {
+    name = "qs-2.4.2";
+    version = "2.4.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/qs/-/qs-2.4.2.tgz";
+      name = "qs-2.4.2.tgz";
+      sha1 = "f7ce788e5777df0b5010da7f7c4e73ba32470f5a";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."qs"."~2.3.1" =
+    self.by-version."qs"."2.3.3";
+  by-version."qs"."2.3.3" = self.buildNodePackage {
+    name = "qs-2.3.3";
+    version = "2.3.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/qs/-/qs-2.3.3.tgz";
+      name = "qs-2.3.3.tgz";
+      sha1 = "e9e85adbe75da0bbe4c8e0476a086290f863b404";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."qs"."~2.4.0" =
+    self.by-version."qs"."2.4.2";
+  by-spec."qs"."~3.1.0" =
+    self.by-version."qs"."3.1.0";
+  by-version."qs"."3.1.0" = self.buildNodePackage {
+    name = "qs-3.1.0";
+    version = "3.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/qs/-/qs-3.1.0.tgz";
+      name = "qs-3.1.0.tgz";
+      sha1 = "d0e9ae745233a12dc43fb4f3055bba446261153c";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."range-parser"."~1.0.2" =
+    self.by-version."range-parser"."1.0.2";
+  by-version."range-parser"."1.0.2" = self.buildNodePackage {
+    name = "range-parser-1.0.2";
+    version = "1.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/range-parser/-/range-parser-1.0.2.tgz";
+      name = "range-parser-1.0.2.tgz";
+      sha1 = "06a12a42e5131ba8e457cd892044867f2344e549";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."readable-stream"."1.1" =
+    self.by-version."readable-stream"."1.1.13";
+  by-version."readable-stream"."1.1.13" = self.buildNodePackage {
+    name = "readable-stream-1.1.13";
+    version = "1.1.13";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz";
+      name = "readable-stream-1.1.13.tgz";
+      sha1 = "f6eef764f514c89e2b9e23146a75ba106756d23e";
+    };
+    deps = {
+      "core-util-is-1.0.1" = self.by-version."core-util-is"."1.0.1";
+      "isarray-0.0.1" = self.by-version."isarray"."0.0.1";
+      "string_decoder-0.10.31" = self.by-version."string_decoder"."0.10.31";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."readable-stream"."~1.0.26" =
+    self.by-version."readable-stream"."1.0.33";
+  by-version."readable-stream"."1.0.33" = self.buildNodePackage {
+    name = "readable-stream-1.0.33";
+    version = "1.0.33";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.33.tgz";
+      name = "readable-stream-1.0.33.tgz";
+      sha1 = "3a360dd66c1b1d7fd4705389860eda1d0f61126c";
+    };
+    deps = {
+      "core-util-is-1.0.1" = self.by-version."core-util-is"."1.0.1";
+      "isarray-0.0.1" = self.by-version."isarray"."0.0.1";
+      "string_decoder-0.10.31" = self.by-version."string_decoder"."0.10.31";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."readable-stream"."~1.1.9" =
+    self.by-version."readable-stream"."1.1.13";
+  by-spec."repeating"."^1.1.0" =
+    self.by-version."repeating"."1.1.3";
+  by-version."repeating"."1.1.3" = self.buildNodePackage {
+    name = "repeating-1.1.3";
+    version = "1.1.3";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/repeating/-/repeating-1.1.3.tgz";
+      name = "repeating-1.1.3.tgz";
+      sha1 = "3d4114218877537494f97f77f9785fab810fa4ac";
+    };
+    deps = {
+      "is-finite-1.0.1" = self.by-version."is-finite"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."request"."^2.37.0" =
+    self.by-version."request"."2.57.0";
+  by-version."request"."2.57.0" = self.buildNodePackage {
+    name = "request-2.57.0";
+    version = "2.57.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/request/-/request-2.57.0.tgz";
+      name = "request-2.57.0.tgz";
+      sha1 = "d445105a42d009b9d724289633b449a6d723d989";
+    };
+    deps = {
+      "bl-0.9.4" = self.by-version."bl"."0.9.4";
+      "caseless-0.10.0" = self.by-version."caseless"."0.10.0";
+      "forever-agent-0.6.1" = self.by-version."forever-agent"."0.6.1";
+      "form-data-0.2.0" = self.by-version."form-data"."0.2.0";
+      "json-stringify-safe-5.0.1" = self.by-version."json-stringify-safe"."5.0.1";
+      "mime-types-2.0.14" = self.by-version."mime-types"."2.0.14";
+      "node-uuid-1.4.3" = self.by-version."node-uuid"."1.4.3";
+      "qs-3.1.0" = self.by-version."qs"."3.1.0";
+      "tunnel-agent-0.4.0" = self.by-version."tunnel-agent"."0.4.0";
+      "tough-cookie-2.0.0" = self.by-version."tough-cookie"."2.0.0";
+      "http-signature-0.11.0" = self.by-version."http-signature"."0.11.0";
+      "oauth-sign-0.8.0" = self.by-version."oauth-sign"."0.8.0";
+      "hawk-2.3.1" = self.by-version."hawk"."2.3.1";
+      "aws-sign2-0.5.0" = self.by-version."aws-sign2"."0.5.0";
+      "stringstream-0.0.4" = self.by-version."stringstream"."0.0.4";
+      "combined-stream-1.0.5" = self.by-version."combined-stream"."1.0.5";
+      "isstream-0.1.2" = self.by-version."isstream"."0.1.2";
+      "har-validator-1.7.1" = self.by-version."har-validator"."1.7.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."request"."^2.54.0" =
+    self.by-version."request"."2.57.0";
+  by-spec."request"."^2.55.0" =
+    self.by-version."request"."2.57.0";
+  by-spec."request"."~2.51.0" =
+    self.by-version."request"."2.51.0";
+  by-version."request"."2.51.0" = self.buildNodePackage {
+    name = "request-2.51.0";
+    version = "2.51.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/request/-/request-2.51.0.tgz";
+      name = "request-2.51.0.tgz";
+      sha1 = "35d00bbecc012e55f907b1bd9e0dbd577bfef26e";
+    };
+    deps = {
+      "bl-0.9.4" = self.by-version."bl"."0.9.4";
+      "caseless-0.8.0" = self.by-version."caseless"."0.8.0";
+      "forever-agent-0.5.2" = self.by-version."forever-agent"."0.5.2";
+      "form-data-0.2.0" = self.by-version."form-data"."0.2.0";
+      "json-stringify-safe-5.0.1" = self.by-version."json-stringify-safe"."5.0.1";
+      "mime-types-1.0.2" = self.by-version."mime-types"."1.0.2";
+      "node-uuid-1.4.3" = self.by-version."node-uuid"."1.4.3";
+      "qs-2.3.3" = self.by-version."qs"."2.3.3";
+      "tunnel-agent-0.4.0" = self.by-version."tunnel-agent"."0.4.0";
+      "tough-cookie-2.0.0" = self.by-version."tough-cookie"."2.0.0";
+      "http-signature-0.10.1" = self.by-version."http-signature"."0.10.1";
+      "oauth-sign-0.5.0" = self.by-version."oauth-sign"."0.5.0";
+      "hawk-1.1.1" = self.by-version."hawk"."1.1.1";
+      "aws-sign2-0.5.0" = self.by-version."aws-sign2"."0.5.0";
+      "stringstream-0.0.4" = self.by-version."stringstream"."0.0.4";
+      "combined-stream-0.0.7" = self.by-version."combined-stream"."0.0.7";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."request"."~2.54.0" =
+    self.by-version."request"."2.54.0";
+  by-version."request"."2.54.0" = self.buildNodePackage {
+    name = "request-2.54.0";
+    version = "2.54.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/request/-/request-2.54.0.tgz";
+      name = "request-2.54.0.tgz";
+      sha1 = "a13917cd8e8fa73332da0bf2f84a30181def1953";
+    };
+    deps = {
+      "bl-0.9.4" = self.by-version."bl"."0.9.4";
+      "caseless-0.9.0" = self.by-version."caseless"."0.9.0";
+      "forever-agent-0.6.1" = self.by-version."forever-agent"."0.6.1";
+      "form-data-0.2.0" = self.by-version."form-data"."0.2.0";
+      "json-stringify-safe-5.0.1" = self.by-version."json-stringify-safe"."5.0.1";
+      "mime-types-2.0.14" = self.by-version."mime-types"."2.0.14";
+      "node-uuid-1.4.3" = self.by-version."node-uuid"."1.4.3";
+      "qs-2.4.2" = self.by-version."qs"."2.4.2";
+      "tunnel-agent-0.4.0" = self.by-version."tunnel-agent"."0.4.0";
+      "tough-cookie-2.0.0" = self.by-version."tough-cookie"."2.0.0";
+      "http-signature-0.10.1" = self.by-version."http-signature"."0.10.1";
+      "oauth-sign-0.6.0" = self.by-version."oauth-sign"."0.6.0";
+      "hawk-2.3.1" = self.by-version."hawk"."2.3.1";
+      "aws-sign2-0.5.0" = self.by-version."aws-sign2"."0.5.0";
+      "stringstream-0.0.4" = self.by-version."stringstream"."0.0.4";
+      "combined-stream-0.0.7" = self.by-version."combined-stream"."0.0.7";
+      "isstream-0.1.2" = self.by-version."isstream"."0.1.2";
+      "har-validator-1.7.1" = self.by-version."har-validator"."1.7.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."rimraf"."~2.2.8" =
+    self.by-version."rimraf"."2.2.8";
+  by-version."rimraf"."2.2.8" = self.buildNodePackage {
+    name = "rimraf-2.2.8";
+    version = "2.2.8";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz";
+      name = "rimraf-2.2.8.tgz";
+      sha1 = "e439be2aaee327321952730f99a8929e4fc50582";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."runforcover"."~0.0.2" =
+    self.by-version."runforcover"."0.0.2";
+  by-version."runforcover"."0.0.2" = self.buildNodePackage {
+    name = "runforcover-0.0.2";
+    version = "0.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/runforcover/-/runforcover-0.0.2.tgz";
+      name = "runforcover-0.0.2.tgz";
+      sha1 = "344f057d8d45d33aebc6cc82204678f69c4857cc";
+    };
+    deps = {
+      "bunker-0.1.2" = self.by-version."bunker"."0.1.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."sax"."0.5.x" =
+    self.by-version."sax"."0.5.8";
+  by-version."sax"."0.5.8" = self.buildNodePackage {
+    name = "sax-0.5.8";
+    version = "0.5.8";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/sax/-/sax-0.5.8.tgz";
+      name = "sax-0.5.8.tgz";
+      sha1 = "d472db228eb331c2506b0e8c15524adb939d12c1";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."semver"."~4.3.4" =
+    self.by-version."semver"."4.3.6";
+  by-version."semver"."4.3.6" = self.buildNodePackage {
+    name = "semver-4.3.6";
+    version = "4.3.6";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/semver/-/semver-4.3.6.tgz";
+      name = "semver-4.3.6.tgz";
+      sha1 = "300bc6e0e86374f7ba61068b5b1ecd57fc6532da";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "semver" = self.by-version."semver"."4.3.6";
+  by-spec."send"."0.12.3" =
+    self.by-version."send"."0.12.3";
+  by-version."send"."0.12.3" = self.buildNodePackage {
+    name = "send-0.12.3";
+    version = "0.12.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/send/-/send-0.12.3.tgz";
+      name = "send-0.12.3.tgz";
+      sha1 = "cd12dc58fde21e4f91902b39b2fda05a7a6d9bdc";
+    };
+    deps = {
+      "debug-2.2.0" = self.by-version."debug"."2.2.0";
+      "depd-1.0.1" = self.by-version."depd"."1.0.1";
+      "destroy-1.0.3" = self.by-version."destroy"."1.0.3";
+      "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
+      "etag-1.6.0" = self.by-version."etag"."1.6.0";
+      "fresh-0.2.4" = self.by-version."fresh"."0.2.4";
+      "mime-1.3.4" = self.by-version."mime"."1.3.4";
+      "ms-0.7.1" = self.by-version."ms"."0.7.1";
+      "on-finished-2.2.1" = self.by-version."on-finished"."2.2.1";
+      "range-parser-1.0.2" = self.by-version."range-parser"."1.0.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."serve-static"."~1.9.3" =
+    self.by-version."serve-static"."1.9.3";
+  by-version."serve-static"."1.9.3" = self.buildNodePackage {
+    name = "serve-static-1.9.3";
+    version = "1.9.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/serve-static/-/serve-static-1.9.3.tgz";
+      name = "serve-static-1.9.3.tgz";
+      sha1 = "5f8da07323ad385ff3dc541f1a7917b2e436eb57";
+    };
+    deps = {
+      "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
+      "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
+      "send-0.12.3" = self.by-version."send"."0.12.3";
+      "utils-merge-1.0.0" = self.by-version."utils-merge"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "serve-static" = self.by-version."serve-static"."1.9.3";
+  by-spec."sigmund"."~1.0.0" =
+    self.by-version."sigmund"."1.0.1";
+  by-version."sigmund"."1.0.1" = self.buildNodePackage {
+    name = "sigmund-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz";
+      name = "sigmund-1.0.1.tgz";
+      sha1 = "3ff21f198cad2175f9f3b781853fd94d0d19b590";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."slide"."*" =
+    self.by-version."slide"."1.1.6";
+  by-version."slide"."1.1.6" = self.buildNodePackage {
+    name = "slide-1.1.6";
+    version = "1.1.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/slide/-/slide-1.1.6.tgz";
+      name = "slide-1.1.6.tgz";
+      sha1 = "56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."sntp"."0.2.x" =
+    self.by-version."sntp"."0.2.4";
+  by-version."sntp"."0.2.4" = self.buildNodePackage {
+    name = "sntp-0.2.4";
+    version = "0.2.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/sntp/-/sntp-0.2.4.tgz";
+      name = "sntp-0.2.4.tgz";
+      sha1 = "fb885f18b0f3aad189f824862536bceeec750900";
+    };
+    deps = {
+      "hoek-0.9.1" = self.by-version."hoek"."0.9.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."sntp"."1.x.x" =
+    self.by-version."sntp"."1.0.9";
+  by-version."sntp"."1.0.9" = self.buildNodePackage {
+    name = "sntp-1.0.9";
+    version = "1.0.9";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz";
+      name = "sntp-1.0.9.tgz";
+      sha1 = "6541184cc90aeea6c6e7b35e2659082443c66198";
+    };
+    deps = {
+      "hoek-2.14.0" = self.by-version."hoek"."2.14.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."source-map"."0.1.x" =
+    self.by-version."source-map"."0.1.43";
+  by-version."source-map"."0.1.43" = self.buildNodePackage {
+    name = "source-map-0.1.43";
+    version = "0.1.43";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz";
+      name = "source-map-0.1.43.tgz";
+      sha1 = "c24bc146ca517c1471f5dacbe2571b2b7f9e3346";
+    };
+    deps = {
+      "amdefine-0.1.1" = self.by-version."amdefine"."0.1.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."streamsink"."~1.2.0" =
+    self.by-version."streamsink"."1.2.0";
+  by-version."streamsink"."1.2.0" = self.buildNodePackage {
+    name = "streamsink-1.2.0";
+    version = "1.2.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/streamsink/-/streamsink-1.2.0.tgz";
+      name = "streamsink-1.2.0.tgz";
+      sha1 = "efafee9f1e22d3591ed7de3dcaa95c3f5e79f73c";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."string-template"."~0.2.0" =
+    self.by-version."string-template"."0.2.1";
+  by-version."string-template"."0.2.1" = self.buildNodePackage {
+    name = "string-template-0.2.1";
+    version = "0.2.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz";
+      name = "string-template-0.2.1.tgz";
+      sha1 = "42932e598a352d01fc22ec3367d9d84eec6c9add";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."string_decoder"."~0.10.x" =
+    self.by-version."string_decoder"."0.10.31";
+  by-version."string_decoder"."0.10.31" = self.buildNodePackage {
+    name = "string_decoder-0.10.31";
+    version = "0.10.31";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz";
+      name = "string_decoder-0.10.31.tgz";
+      sha1 = "62e203bc41766c6c28c9fc84301dab1c5310fa94";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."stringstream"."~0.0.4" =
+    self.by-version."stringstream"."0.0.4";
+  by-version."stringstream"."0.0.4" = self.buildNodePackage {
+    name = "stringstream-0.0.4";
+    version = "0.0.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/stringstream/-/stringstream-0.0.4.tgz";
+      name = "stringstream-0.0.4.tgz";
+      sha1 = "0f0e3423f942960b5692ac324a57dd093bc41a92";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."strip-ansi"."^2.0.1" =
+    self.by-version."strip-ansi"."2.0.1";
+  by-version."strip-ansi"."2.0.1" = self.buildNodePackage {
+    name = "strip-ansi-2.0.1";
+    version = "2.0.1";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz";
+      name = "strip-ansi-2.0.1.tgz";
+      sha1 = "df62c1aa94ed2f114e1d0f21fd1d50482b79a60e";
+    };
+    deps = {
+      "ansi-regex-1.1.1" = self.by-version."ansi-regex"."1.1.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."stylus"."~0.49.3" =
+    self.by-version."stylus"."0.49.3";
+  by-version."stylus"."0.49.3" = self.buildNodePackage {
+    name = "stylus-0.49.3";
+    version = "0.49.3";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/stylus/-/stylus-0.49.3.tgz";
+      name = "stylus-0.49.3.tgz";
+      sha1 = "1fbdabe479ed460872c71a6252a67f95040ba511";
+    };
+    deps = {
+      "css-parse-1.7.0" = self.by-version."css-parse"."1.7.0";
+      "mkdirp-0.3.5" = self.by-version."mkdirp"."0.3.5";
+      "debug-2.2.0" = self.by-version."debug"."2.2.0";
+      "sax-0.5.8" = self.by-version."sax"."0.5.8";
+      "glob-3.2.11" = self.by-version."glob"."3.2.11";
+      "source-map-0.1.43" = self.by-version."source-map"."0.1.43";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "stylus" = self.by-version."stylus"."0.49.3";
+  by-spec."supports-color"."^1.3.0" =
+    self.by-version."supports-color"."1.3.1";
+  by-version."supports-color"."1.3.1" = self.buildNodePackage {
+    name = "supports-color-1.3.1";
+    version = "1.3.1";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz";
+      name = "supports-color-1.3.1.tgz";
+      sha1 = "15758df09d8ff3b4acc307539fabe27095e1042d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."tap"."~0.3.3" =
+    self.by-version."tap"."0.3.3";
+  by-version."tap"."0.3.3" = self.buildNodePackage {
+    name = "tap-0.3.3";
+    version = "0.3.3";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/tap/-/tap-0.3.3.tgz";
+      name = "tap-0.3.3.tgz";
+      sha1 = "c862237af0a213f97fff46594bd1d44eca705d63";
+    };
+    deps = {
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "yamlish-0.0.7" = self.by-version."yamlish"."0.0.7";
+      "slide-1.1.6" = self.by-version."slide"."1.1.6";
+      "runforcover-0.0.2" = self.by-version."runforcover"."0.0.2";
+      "nopt-2.2.1" = self.by-version."nopt"."2.2.1";
+      "mkdirp-0.3.5" = self.by-version."mkdirp"."0.3.5";
+      "difflet-0.2.6" = self.by-version."difflet"."0.2.6";
+      "deep-equal-0.0.0" = self.by-version."deep-equal"."0.0.0";
+      "buffer-equal-0.0.1" = self.by-version."buffer-equal"."0.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."tough-cookie".">=0.12.0" =
+    self.by-version."tough-cookie"."2.0.0";
+  by-version."tough-cookie"."2.0.0" = self.buildNodePackage {
+    name = "tough-cookie-2.0.0";
+    version = "2.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/tough-cookie/-/tough-cookie-2.0.0.tgz";
+      name = "tough-cookie-2.0.0.tgz";
+      sha1 = "41ce08720b35cf90beb044dd2609fb19e928718f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."traverse"."0.6.x" =
+    self.by-version."traverse"."0.6.6";
+  by-version."traverse"."0.6.6" = self.buildNodePackage {
+    name = "traverse-0.6.6";
+    version = "0.6.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz";
+      name = "traverse-0.6.6.tgz";
+      sha1 = "cbdf560fd7b9af632502fed40f918c157ea97137";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."traverse"."~0.5.1" =
+    self.by-version."traverse"."0.5.2";
+  by-version."traverse"."0.5.2" = self.buildNodePackage {
+    name = "traverse-0.5.2";
+    version = "0.5.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/traverse/-/traverse-0.5.2.tgz";
+      name = "traverse-0.5.2.tgz";
+      sha1 = "e203c58d5f7f0e37db6e74c0acb929bb09b61d85";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."tunnel-agent"."~0.4.0" =
+    self.by-version."tunnel-agent"."0.4.0";
+  by-version."tunnel-agent"."0.4.0" = self.buildNodePackage {
+    name = "tunnel-agent-0.4.0";
+    version = "0.4.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.0.tgz";
+      name = "tunnel-agent-0.4.0.tgz";
+      sha1 = "b1184e312ffbcf70b3b4c78e8c219de7ebb1c550";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."type-is"."~1.6.2" =
+    self.by-version."type-is"."1.6.3";
+  by-version."type-is"."1.6.3" = self.buildNodePackage {
+    name = "type-is-1.6.3";
+    version = "1.6.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/type-is/-/type-is-1.6.3.tgz";
+      name = "type-is-1.6.3.tgz";
+      sha1 = "d87d201777f76dfc526ac202679715d41a28c580";
+    };
+    deps = {
+      "media-typer-0.3.0" = self.by-version."media-typer"."0.3.0";
+      "mime-types-2.1.1" = self.by-version."mime-types"."2.1.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."typedarray"."~0.0.5" =
+    self.by-version."typedarray"."0.0.6";
+  by-version."typedarray"."0.0.6" = self.buildNodePackage {
+    name = "typedarray-0.0.6";
+    version = "0.0.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz";
+      name = "typedarray-0.0.6.tgz";
+      sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."uglify-js"."~1.1.1" =
+    self.by-version."uglify-js"."1.1.1";
+  by-version."uglify-js"."1.1.1" = self.buildNodePackage {
+    name = "uglify-js-1.1.1";
+    version = "1.1.1";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/uglify-js/-/uglify-js-1.1.1.tgz";
+      name = "uglify-js-1.1.1.tgz";
+      sha1 = "ee71a97c4cefd06a1a9b20437f34118982aa035b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."underscore"."^1.6.0" =
+    self.by-version."underscore"."1.8.3";
+  by-version."underscore"."1.8.3" = self.buildNodePackage {
+    name = "underscore-1.8.3";
+    version = "1.8.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz";
+      name = "underscore-1.8.3.tgz";
+      sha1 = "4f3fb53b106e6097fcf9cb4109f2a5e9bdfa5022";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."underscore"."~1.6.0" =
+    self.by-version."underscore"."1.6.0";
+  by-version."underscore"."1.6.0" = self.buildNodePackage {
+    name = "underscore-1.6.0";
+    version = "1.6.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz";
+      name = "underscore-1.6.0.tgz";
+      sha1 = "8b38b10cacdef63337b8b24e4ff86d45aea529a8";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."utils-merge"."1.0.0" =
+    self.by-version."utils-merge"."1.0.0";
+  by-version."utils-merge"."1.0.0" = self.buildNodePackage {
+    name = "utils-merge-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz";
+      name = "utils-merge-1.0.0.tgz";
+      sha1 = "0294fb922bb9375153541c4f7096231f287c8af8";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."vary"."~1.0.0" =
+    self.by-version."vary"."1.0.0";
+  by-version."vary"."1.0.0" = self.buildNodePackage {
+    name = "vary-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/vary/-/vary-1.0.0.tgz";
+      name = "vary-1.0.0.tgz";
+      sha1 = "c5e76cec20d3820d8f2a96e7bee38731c34da1e7";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."xtend"."^4.0.0" =
+    self.by-version."xtend"."4.0.0";
+  by-version."xtend"."4.0.0" = self.buildNodePackage {
+    name = "xtend-4.0.0";
+    version = "4.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/xtend/-/xtend-4.0.0.tgz";
+      name = "xtend-4.0.0.tgz";
+      sha1 = "8bc36ff87aedbe7ce9eaf0bca36b2354a743840f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."xtend"."~4.0.0" =
+    self.by-version."xtend"."4.0.0";
+  by-spec."yamlish"."*" =
+    self.by-version."yamlish"."0.0.7";
+  by-version."yamlish"."0.0.7" = self.buildNodePackage {
+    name = "yamlish-0.0.7";
+    version = "0.0.7";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/yamlish/-/yamlish-0.0.7.tgz";
+      name = "yamlish-0.0.7.tgz";
+      sha1 = "b4af9a1dcc63618873c3d6e451ec3213c39a57fb";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."yauzl"."~2.3.0" =
+    self.by-version."yauzl"."2.3.1";
+  by-version."yauzl"."2.3.1" = self.buildNodePackage {
+    name = "yauzl-2.3.1";
+    version = "2.3.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/yauzl/-/yauzl-2.3.1.tgz";
+      name = "yauzl-2.3.1.tgz";
+      sha1 = "6707fe2b6a4dac9445cc429bf04a11c7dedfa36a";
+    };
+    deps = {
+      "fd-slicer-1.0.1" = self.by-version."fd-slicer"."1.0.1";
+      "pend-1.2.0" = self.by-version."pend"."1.2.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "yauzl" = self.by-version."yauzl"."2.3.1";
+  by-spec."yawl"."~1.0.2" =
+    self.by-version."yawl"."1.0.2";
+  by-version."yawl"."1.0.2" = self.buildNodePackage {
+    name = "yawl-1.0.2";
+    version = "1.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/yawl/-/yawl-1.0.2.tgz";
+      name = "yawl-1.0.2.tgz";
+      sha1 = "df1301cb50e5bc74cc36d5c1ef9cfbd1f84b408e";
+    };
+    deps = {
+      "bl-0.9.4" = self.by-version."bl"."0.9.4";
+      "pend-1.2.0" = self.by-version."pend"."1.2.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "yawl" = self.by-version."yawl"."1.0.2";
+  by-spec."yazl"."~2.2.2" =
+    self.by-version."yazl"."2.2.2";
+  by-version."yazl"."2.2.2" = self.buildNodePackage {
+    name = "yazl-2.2.2";
+    version = "2.2.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/yazl/-/yazl-2.2.2.tgz";
+      name = "yazl-2.2.2.tgz";
+      sha1 = "60187f4ce6df314e7501c3c0e40bcf1b58fda183";
+    };
+    deps = {
+      "buffer-crc32-0.2.5" = self.by-version."buffer-crc32"."0.2.5";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "yazl" = self.by-version."yazl"."2.2.2";
+  by-spec."ytdl-core".">=0.5.1" =
+    self.by-version."ytdl-core"."0.5.1";
+  by-version."ytdl-core"."0.5.1" = self.buildNodePackage {
+    name = "ytdl-core-0.5.1";
+    version = "0.5.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ytdl-core/-/ytdl-core-0.5.1.tgz";
+      name = "ytdl-core-0.5.1.tgz";
+      sha1 = "3c48d696b019d7faae635a3f1e4eaa9131110f43";
+    };
+    deps = {
+      "cheerio-0.18.0" = self.by-version."cheerio"."0.18.0";
+      "jstream-0.2.7" = self.by-version."jstream"."0.2.7";
+      "request-2.57.0" = self.by-version."request"."2.57.0";
+      "underscore-1.8.3" = self.by-version."underscore"."1.8.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "ytdl-core" = self.by-version."ytdl-core"."0.5.1";
+}
+
diff --git a/pkgs/applications/audio/gtkpod/default.nix b/pkgs/applications/audio/gtkpod/default.nix
index 9c08b2ab6d7..1b1bf437ce9 100644
--- a/pkgs/applications/audio/gtkpod/default.nix
+++ b/pkgs/applications/audio/gtkpod/default.nix
@@ -3,19 +3,19 @@
   libvorbis, hicolor_icon_theme, gdk_pixbuf }:
 
 stdenv.mkDerivation rec {
-  version = "2.1.4";
+  version = "2.1.5";
   name = "gtkpod-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/gtkpod/${name}.tar.gz";
-    sha256 = "ba12b35f3f24a155b68f0ffdaf4d3c5c7d1b8df04843a53306e1c83fc811dfaa";
+    sha256 = "0xisrpx069f7bjkyc8vqxb4k0480jmx1wscqxr6cpq1qj6pchzd5";
   };
 
   propagatedUserEnvPkgs = [ gnome.gnome_themes_standard ];
 
   buildInputs = [ pkgconfig makeWrapper intltool curl gettext perl perlXMLParser
     flex libgpod libid3tag flac libvorbis gtk3 gdk_pixbuf libglade gnome.anjuta
-    gnome.gdl gnome.gnome_icon_theme_symbolic gnome.gnome_icon_theme
+    gnome.gdl gnome.defaultIconTheme
     hicolor_icon_theme ];
 
   patchPhase = ''
diff --git a/pkgs/applications/audio/guitarix/default.nix b/pkgs/applications/audio/guitarix/default.nix
index 984d666ab95..d04af37560f 100644
--- a/pkgs/applications/audio/guitarix/default.nix
+++ b/pkgs/applications/audio/guitarix/default.nix
@@ -1,6 +1,7 @@
 { stdenv, fetchurl, gettext, intltool, pkgconfig, python
-, avahi, bluez, boost, eigen, fftw, glib, glibmm, gtk, gtkmm, jack2
+, avahi, bluez, boost, eigen, fftw, glib, glibmm, gtk, gtkmm, libjack2
 , ladspaH, librdf, libsndfile, lilv, lv2, serd, sord, sratom
+,  zita-convolver, zita-resampler
 , optimizationSupport ? false # Enable support for native CPU extensions
 }:
 
@@ -10,27 +11,26 @@ in
 
 stdenv.mkDerivation rec {
   name = "guitarix-${version}";
-  version = "0.32.3";
+  version = "0.33.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/guitarix/guitarix2-${version}.tar.bz2";
-    sha256 = "1ybc5jk7fj6n8qh9ajzl1f6fzdmzab4nwjrh4fsylm94dn1jv0if";
+    sha256 = "1w6dg2n0alfjsx1iy6s53783invygwxk11p1i65cc3nq3zlidcgx";
   };
 
   nativeBuildInputs = [ gettext intltool pkgconfig python ];
 
   buildInputs = [
-    avahi bluez boost eigen fftw glib glibmm gtk gtkmm jack2
+    avahi bluez boost eigen fftw glib glibmm gtk gtkmm libjack2
     ladspaH librdf libsndfile lilv lv2 serd sord sratom
+    zita-convolver zita-resampler
   ];
 
   configureFlags = [
     "--shared-lib"
     "--no-desktop-update"
-    "--no-faust" # Need to package a release of faust, 0.9.58 or 0.9.65
     "--enable-nls"
-    "--includeresampler" # Zita-resampler not packaged, use vendored version
-    "--includeconvolver" # Zita-convolver not packaged, use vendored version
+    "--no-faust" # todo: find out why --faust doesn't work
   ] ++ optional optimizationSupport "--optimization";
 
   configurePhase = ''python waf configure --prefix=$out $configureFlags'';
diff --git a/pkgs/applications/audio/hydrogen/default.nix b/pkgs/applications/audio/hydrogen/default.nix
index 434f683bd5c..21767e3079f 100644
--- a/pkgs/applications/audio/hydrogen/default.nix
+++ b/pkgs/applications/audio/hydrogen/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, alsaLib, boost, cmake, glib, jack2, libarchive
+{ stdenv, fetchurl, alsaLib, boost, cmake, glib, libjack2, libarchive
 , liblrdf, libsndfile, pkgconfig, qt4 }:
 
 stdenv.mkDerivation rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ 
-    alsaLib boost cmake glib jack2 libarchive liblrdf libsndfile pkgconfig qt4
+    alsaLib boost cmake glib libjack2 libarchive liblrdf libsndfile pkgconfig qt4
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/ingen/default.nix b/pkgs/applications/audio/ingen/default.nix
index d4abbbe0083..ab8f7af1bd5 100644
--- a/pkgs/applications/audio/ingen/default.nix
+++ b/pkgs/applications/audio/ingen/default.nix
@@ -1,24 +1,27 @@
-{ stdenv, fetchsvn, boost, ganv, glibmm, gtk, gtkmm, jack2, lilv
-, lv2, makeWrapper, pkgconfig, python, raul, rdflib, serd, sord, sratom
+{ stdenv, fetchsvn, boost, ganv, glibmm, gtk, gtkmm, libjack2, lilv-svn
+, lv2, makeWrapper, pkgconfig, python, raul, rdflib, serd, sord-svn, sratom
 , suil
 }:
 
 stdenv.mkDerivation  rec {
   name = "ingen-svn-${rev}";
-  rev = "5490";
+  rev = "5675";
 
   src = fetchsvn {
     url = "http://svn.drobilla.net/lad/trunk/ingen";
     rev = rev;
-    sha256 = "09h2mrkzpwzhhyqy21xr7jhfbl82gmqfyj0lzhnjsrab8z56yzk6";
+    sha256 = "1dk56rzbc0rwlbzr90rv8bh5163xwld32nmkvcz7ajfchi4fnv86";
   };
 
   buildInputs = [
-    boost ganv glibmm gtk gtkmm jack2 lilv lv2 makeWrapper pkgconfig
-    python raul serd sord sratom suil
+    boost ganv glibmm gtk gtkmm libjack2 lilv-svn lv2 makeWrapper pkgconfig
+    python raul serd sord-svn sratom suil
   ];
 
-  configurePhase = "python waf configure --prefix=$out";
+  configurePhase = ''
+    sed -e "s@{PYTHONDIR}/'@out/'@" -i wscript
+    python waf configure --prefix=$out
+  '';
 
   propagatedBuildInputs = [ rdflib ];
 
diff --git a/pkgs/applications/audio/ir.lv2/default.nix b/pkgs/applications/audio/ir.lv2/default.nix
new file mode 100644
index 00000000000..d6dbc4c55a9
--- /dev/null
+++ b/pkgs/applications/audio/ir.lv2/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl, fftw, gtk, lv2, libsamplerate, libsndfile, pkgconfig, zita-convolver }:
+
+stdenv.mkDerivation rec {
+  name = "ir.lv2-${version}";
+  version = "1.2.2";
+
+  src = fetchurl {
+    url = "http://factorial.hu/system/files/${name}.tar.gz";
+    sha256 = "17a6h2mv9xv41jpbx6bdakkngin4kqzh2v67l4076ddq609k5a7v";
+  };
+
+  buildInputs = [ fftw gtk lv2 libsamplerate libsndfile pkgconfig zita-convolver ];
+
+  buildPhase = ''
+    make
+    make convert4chan
+  '';
+
+  installPhase = ''
+    mkdir -p "$out/bin"
+    mkdir "$out/include"
+    mkdir -p "$out/share/doc"
+
+    make PREFIX="$out" install
+    install -Dm755 convert4chan "$out/bin/convert4chan"
+    # fixed location
+    sed -i 's/, but seem like its gone://' README
+    sed -i  's@rhythminmind.net/1313@rhythminmind.net/STN@' README
+    install -Dm644 README "$out/share/doc/README"
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://factorial.hu/plugins/lv2/ir;
+    description = "Zero-latency, realtime, high performance signal convolver especially for creating reverb effects";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/jaaa/default.nix b/pkgs/applications/audio/jaaa/default.nix
index b855bd29660..b0fbced2211 100644
--- a/pkgs/applications/audio/jaaa/default.nix
+++ b/pkgs/applications/audio/jaaa/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, alsaLib, libclthreads, libclxclient, libX11, libXft, libXrender, fftwFloat, freetype, fontconfig, jack2, xlibs, zita-alsa-pcmi }:
+{ stdenv, fetchurl, alsaLib, libclthreads, libclxclient, libX11, libXft, libXrender, fftwFloat, freetype, fontconfig, libjack2, xorg, zita-alsa-pcmi }:
 
 stdenv.mkDerivation rec {
   name = "jaaa-${version}";
@@ -10,37 +10,16 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    alsaLib libclthreads libclxclient libX11 libXft libXrender fftwFloat jack2 zita-alsa-pcmi
+    alsaLib libclthreads libclxclient libX11 libXft libXrender fftwFloat libjack2 zita-alsa-pcmi
   ];
 
-  NIX_CFLAGS_COMPILE = [
-    "-I${xlibs.xproto}/include"
-    "-I${libX11}/include"
-    "-I${libXft}/include"
-    "-I${freetype}/include"
-    "-I${fontconfig}/include"
-    "-I${libXrender}/include"
-    "-I${xlibs.renderproto}/include"
-    "-I${alsaLib}/include"
-    "-I${zita-alsa-pcmi}/include"
+  makeFlags = [
+    "PREFIX=$(out)"
+    "SUFFIX=''"
   ];
 
-  patchPhase = ''
-    cd source/
-    sed -i "s@clthreads.h@${libclthreads}/include@g" $(find . -name '*.cc')
-    sed -i "s@clxclient.h@${libclxclient}/include@g" $(find . -name '*.cc')
-    sed -i "s@clthreads.h@${libclthreads}/include@g" $(find . -name '*.h')
-    sed -i "s@clxclient.h@${libclxclient}/include@g" $(find . -name '*.h')
-  '';
-
-  buildlPhase = ''
-    make PREFIX="$out"
-  '';
-
-  installPhase = ''
-    echo zita= ${zita-alsa-pcmi}
-    make PREFIX="$out" install
-    install -Dm644 ../README "$out/README"
+  preConfigure = ''
+    cd ./source/
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/jack-capture/default.nix b/pkgs/applications/audio/jack-capture/default.nix
index 2e6f6b0dd82..ef6d13e5696 100644
--- a/pkgs/applications/audio/jack-capture/default.nix
+++ b/pkgs/applications/audio/jack-capture/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, jack2, libsndfile, pkgconfig }:
+{ stdenv, fetchurl, libjack2, libsndfile, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "jack_capture-${version}";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "0sk7b92my1v1g7rhkpl1c608rb0rdb28m9zqfll95kflxajd16zv";
   };
 
-  buildInputs = [ jack2 libsndfile pkgconfig ];
+  buildInputs = [ libjack2 libsndfile pkgconfig ];
 
   buildPhase = "PREFIX=$out make jack_capture";
 
diff --git a/pkgs/applications/audio/jack-oscrolloscope/default.nix b/pkgs/applications/audio/jack-oscrolloscope/default.nix
index 7b4d12a5b87..5f796a29035 100644
--- a/pkgs/applications/audio/jack-oscrolloscope/default.nix
+++ b/pkgs/applications/audio/jack-oscrolloscope/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, SDL, jack2, mesa, pkgconfig }:
+{ stdenv, fetchurl, SDL, libjack2, mesa, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "jack_oscrolloscope-${version}";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "1pl55in0sj7h5r06n1v91im7d18pplvhbjhjm1fdl39zwnyxiash";
   };
 
-  buildInputs = [ SDL jack2 mesa pkgconfig ];
+  buildInputs = [ SDL libjack2 mesa pkgconfig ];
 
   installPhase = ''
     mkdir -p $out/bin
diff --git a/pkgs/applications/audio/jack-rack/default.nix b/pkgs/applications/audio/jack-rack/default.nix
index 8ac47c570df..e4a48230e23 100644
--- a/pkgs/applications/audio/jack-rack/default.nix
+++ b/pkgs/applications/audio/jack-rack/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchurl, pkgconfig, jack2, ladspaH, gtk, alsaLib, libxml2, librdf }:
+{ stdenv, fetchurl, pkgconfig, libjack2, ladspaH, gtk, alsaLib, libxml2, librdf }:
 stdenv.mkDerivation rec {
   name = "jack-rack-1.4.7";
   src = fetchurl {
     url = "mirror://sourceforge/jack-rack/${name}.tar.bz2";
     sha256 = "1lmibx9gicagcpcisacj6qhq6i08lkl5x8szysjqvbgpxl9qg045";
   };
-  buildInputs = [ pkgconfig jack2 ladspaH gtk alsaLib libxml2 librdf ];
+  buildInputs = [ pkgconfig libjack2 ladspaH gtk alsaLib libxml2 librdf ];
 
   meta = {
     description = ''An effects "rack" for the JACK low latency audio API'';
diff --git a/pkgs/applications/audio/jackmeter/default.nix b/pkgs/applications/audio/jackmeter/default.nix
index 74d98184d9d..c709483a3b2 100644
--- a/pkgs/applications/audio/jackmeter/default.nix
+++ b/pkgs/applications/audio/jackmeter/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, jack2, pkgconfig }:
+{ stdenv, fetchurl, libjack2, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "jackmeter-0.4";
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "1cnvgx3jv0yvxlqy0l9k285zgvazmh5k8m4l7lxckjfm5bn6hm1r";
   };
 
-  buildInputs = [ jack2 pkgconfig ];
+  buildInputs = [ libjack2 pkgconfig ];
 
   meta = { 
     description = "Console jack loudness meter";
diff --git a/pkgs/applications/audio/jalv/default.nix b/pkgs/applications/audio/jalv/default.nix
index bf01fe1a935..5e99e60c818 100644
--- a/pkgs/applications/audio/jalv/default.nix
+++ b/pkgs/applications/audio/jalv/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, gtk, jack2, lilv, lv2, pkgconfig, python
+{ stdenv, fetchurl, gtk, libjack2, lilv, lv2, pkgconfig, python
 , serd, sord , sratom, suil }:
 
 stdenv.mkDerivation  rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation  rec {
   };
 
   buildInputs = [
-    gtk jack2 lilv lv2 pkgconfig python serd sord sratom suil
+    gtk libjack2 lilv lv2 pkgconfig python serd sord sratom suil
   ];
 
   configurePhase = "python waf configure --prefix=$out";
diff --git a/pkgs/applications/audio/keyfinder-cli/default.nix b/pkgs/applications/audio/keyfinder-cli/default.nix
index dca72f22b49..dc90aeda47d 100644
--- a/pkgs/applications/audio/keyfinder-cli/default.nix
+++ b/pkgs/applications/audio/keyfinder-cli/default.nix
@@ -1,32 +1,33 @@
 { stdenv, fetchFromGitHub, libav, libkeyfinder }:
 
-let version = "20150130"; in
+let version = "2015-09-13"; in
 stdenv.mkDerivation rec {
   name = "keyfinder-cli-${version}";
 
   src = fetchFromGitHub {
     repo = "keyfinder-cli";
     owner = "EvanPurkhiser";
-    rev = "e8a20e73f8a465a6c3c9e71dabf4b636244a9b0c";
-    sha256 = "0x198ijr6wgzq24642s4pz5zxn4gvcc7dxmb6d1bfn3dwzi3j8lp";
+    rev = "8579282f15ab3ebad937fed398ec5c88843be03d";
+    sha256 = "0jylykigxmsqvdny265k58vpxa4cqs1hq2f7mph1nl3apfx2shrh";
   };
 
+  buildInputs = [ libav libkeyfinder ];
+
+  makeFlagsArray = "PREFIX=$(out)";
+
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
+    inherit version;
+    inherit (src.meta) homepage;
     description = "Musical key detection for digital audio (command-line tool)";
     longDescription = ''
       This small utility is the automation-oriented DJ's best friend. By making
       use of Ibrahim Sha'ath's high quality libKeyFinder library, it can be
       used to estimate the musical key of many different audio formats.
     '';
-    homepage = https://github.com/EvanPurkhiser/keyfinder-cli;
-    license = with licenses; gpl3Plus;
-    platforms = with platforms; linux;
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
     maintainers = with maintainers; [ nckx ];
   };
-
-  buildInputs = [ libav libkeyfinder ];
-
-  makeFlagsArray = "PREFIX=$(out)";
-
-  enableParallelBuilding = true;
 }
diff --git a/pkgs/applications/audio/keyfinder/default.nix b/pkgs/applications/audio/keyfinder/default.nix
index 33ce627e56e..ffd8d071ab2 100644
--- a/pkgs/applications/audio/keyfinder/default.nix
+++ b/pkgs/applications/audio/keyfinder/default.nix
@@ -1,17 +1,18 @@
-{ stdenv, fetchFromGitHub, libav_0_8, libkeyfinder, qt5, taglib }:
+{ stdenv, fetchFromGitHub, libav_0_8, libkeyfinder, qtbase, qtxmlpatterns, taglib }:
 
-stdenv.mkDerivation rec {
-  version = "1.25-17-gf670607";
+let version = "2.00"; in
+stdenv.mkDerivation {
   name = "keyfinder-${version}";
 
   src = fetchFromGitHub {
+    sha256 = "16gyvvws93fyvx5qb2x9qhsg4bn710kgdh6q9sl2dwfsx6npkh9m";
+    rev = version;
     repo = "is_KeyFinder";
     owner = "ibsh";
-    rev = "f6706074435ac14c5238ee3f0dd22ac22d72af9c";
-    sha256 = "1sfnywc6jdpm03344i6i4pz13mqa4i5agagj4k6252m63cqmjkrc";
   };
 
   meta = with stdenv.lib; {
+    inherit version;
     description = "Musical key detection for digital audio (graphical UI)";
     longDescription = ''
       KeyFinder is an open source key detection tool, for DJs interested in
@@ -23,18 +24,22 @@ stdenv.mkDerivation rec {
       efficient workflow tool.
     '';
     homepage = http://www.ibrahimshaath.co.uk/keyfinder/;
-    license = with licenses; gpl3Plus;
+    license = licenses.gpl3Plus;
     platforms = with platforms; linux;
     maintainers = with maintainers; [ nckx ];
   };
 
   # TODO: upgrade libav when "Audio sample format conversion failed" is fixed
-  buildInputs = [ libav_0_8 libkeyfinder qt5.base qt5.xmlpatterns taglib ];
+  buildInputs = [ libav_0_8 libkeyfinder qtbase qtxmlpatterns taglib ];
 
-  configurePhase = ''
+  postPatch = ''
     substituteInPlace is_KeyFinder.pro \
        --replace "keyfinder.0" "keyfinder" \
-       --replace '$$[QT_INSTALL_PREFIX]' "$out"
+       --replace '$$[QT_INSTALL_PREFIX]' "$out" \
+       --replace "-stdlib=libc++" ""
+  '';
+
+  configurePhase = ''
     qmake
   '';
 
diff --git a/pkgs/applications/audio/ladspa-plugins/git.nix b/pkgs/applications/audio/ladspa-plugins/git.nix
new file mode 100644
index 00000000000..e9ab932a88e
--- /dev/null
+++ b/pkgs/applications/audio/ladspa-plugins/git.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchgit, automake, autoreconfHook, fftw, gettext, ladspaH, libxml2, pkgconfig, perl, perlPackages }:
+
+stdenv.mkDerivation {
+  name = "swh-plugins-git-2015-03-04";
+
+  src = fetchgit {
+    url = https://github.com/swh/ladspa.git;
+    rev = "4b8437e8037cace3d5bf8ce6d1d1da0182aba686";
+    sha256 = "7d9aa13a064903b330bd52e35c1f810f1c8a253ea5eb4e5a3a69a051af03150e";
+  };
+
+  buildInputs = [ automake autoreconfHook fftw gettext ladspaH libxml2 pkgconfig perl perlPackages.XMLParser ];
+
+  patchPhase = ''
+    patchShebangs .
+    patchShebangs ./metadata/
+    cp ${automake}/share/automake-*/mkinstalldirs .
+  '';
+
+  configurePhase = ''
+    autoreconf -i
+    ./configure --prefix=$out
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://plugin.org.uk/;
+    description = "LADSPA format audio plugins";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/ladspa-sdk/default.nix b/pkgs/applications/audio/ladspa-sdk/default.nix
new file mode 100644
index 00000000000..c333492fd13
--- /dev/null
+++ b/pkgs/applications/audio/ladspa-sdk/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchurl }:
+stdenv.mkDerivation rec {
+  name = "ladspa-sdk-${version}";
+  version = "1.13";
+  src = fetchurl {
+    url = "http://www.ladspa.org/download/ladspa_sdk_${version}.tgz";
+    sha256 = "0srh5n2l63354bc0srcrv58rzjkn4gv8qjqzg8dnq3rs4m7kzvdm";
+  };
+
+  patchPhase = ''
+    cd src
+    sed -i 's@/usr/@$(out)/@g'  makefile
+    sed -i 's@-mkdirhier@mkdir -p@g'  makefile
+  '';
+
+  meta = {
+    description = "The SDK for the LADSPA audio plugin standard";
+    longDescription = ''
+      The LADSPA SDK, including the ladspa.h API header file,
+      ten example LADSPA plugins and 
+      three example programs (applyplugin, analyseplugin and listplugins).
+    '';
+    homepage = http://www.ladspa.org/ladspa_sdk/overview.html;
+    license = stdenv.lib.licenses.lgpl2;
+    maintainers = [ stdenv.lib.maintainers.magnetophon ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/ladspa-plugins/ladspah.nix b/pkgs/applications/audio/ladspa-sdk/ladspah.nix
index 8c4d8a8c1ed..8c4d8a8c1ed 100644
--- a/pkgs/applications/audio/ladspa-plugins/ladspah.nix
+++ b/pkgs/applications/audio/ladspa-sdk/ladspah.nix
diff --git a/pkgs/applications/audio/lash/default.nix b/pkgs/applications/audio/lash/default.nix
index e42babf13ef..8d1b561cb87 100644
--- a/pkgs/applications/audio/lash/default.nix
+++ b/pkgs/applications/audio/lash/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, alsaLib, gtk, jack2, libuuid, libxml2
+{ stdenv, fetchurl, alsaLib, gtk, libjack2, libuuid, libxml2
 , makeWrapper, pkgconfig, readline }:
 
 assert libuuid != null;
@@ -15,7 +15,7 @@ stdenv.mkDerivation  rec {
   # http://permalink.gmane.org/gmane.linux.redhat.fedora.extras.cvs/822346
   patches = [ ./socket.patch ./gcc-47.patch ];
 
-  buildInputs = [ alsaLib gtk jack2 libuuid libxml2 makeWrapper
+  buildInputs = [ alsaLib gtk libjack2 libuuid libxml2 makeWrapper
     pkgconfig readline ];
 
   postInstall = ''
diff --git a/pkgs/applications/audio/linuxsampler/default.nix b/pkgs/applications/audio/linuxsampler/default.nix
index 2c4b26543eb..4dad6e58fee 100644
--- a/pkgs/applications/audio/linuxsampler/default.nix
+++ b/pkgs/applications/audio/linuxsampler/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchsvn, alsaLib, asio, autoconf, automake, bison
-, jack2, libgig, libsndfile, libtool, lv2, pkgconfig }:
+, libjack2, libgig, libsndfile, libtool, lv2, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "linuxsampler-svn-${version}";
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   '';
 
   buildInputs = [ 
-   alsaLib asio autoconf automake bison jack2 libgig libsndfile
+   alsaLib asio autoconf automake bison libjack2 libgig libsndfile
    libtool lv2 pkgconfig
   ];
 
diff --git a/pkgs/applications/audio/lmms/default.nix b/pkgs/applications/audio/lmms/default.nix
index 6d28c038f23..783b506c4d7 100644
--- a/pkgs/applications/audio/lmms/default.nix
+++ b/pkgs/applications/audio/lmms/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, SDL, alsaLib, cmake, fftwSinglePrec, fluidsynth
-, fltk13, jack2, libvorbis , libsamplerate, libsndfile, pkgconfig
-, pulseaudio, qt4, freetype
+, fltk13, libjack2, libvorbis , libsamplerate, libsndfile, pkgconfig
+, libpulseaudio, qt4, freetype
 }:
 
 stdenv.mkDerivation  rec {
@@ -13,8 +13,8 @@ stdenv.mkDerivation  rec {
   };
 
   buildInputs = [
-    SDL alsaLib cmake fftwSinglePrec fltk13 fluidsynth jack2
-    libsamplerate libsndfile libvorbis pkgconfig pulseaudio qt4
+    SDL alsaLib cmake fftwSinglePrec fltk13 fluidsynth libjack2
+    libsamplerate libsndfile libvorbis pkgconfig libpulseaudio qt4
   ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/audio/mhwaveedit/default.nix b/pkgs/applications/audio/mhwaveedit/default.nix
index a1e81be3cb3..d0259ada3cf 100644
--- a/pkgs/applications/audio/mhwaveedit/default.nix
+++ b/pkgs/applications/audio/mhwaveedit/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchurl, SDL , alsaLib, gtk, jack2, ladspaH
-, ladspaPlugins, libsamplerate, libsndfile, pkgconfig, pulseaudio }:
+{ stdenv, fetchurl, SDL , alsaLib, gtk, libjack2, ladspaH
+, ladspaPlugins, libsamplerate, libsndfile, pkgconfig, libpulseaudio }:
 
 stdenv.mkDerivation  rec {
   name = "mhwaveedit-${version}";
@@ -11,8 +11,8 @@ stdenv.mkDerivation  rec {
   };
 
   buildInputs =
-   [ SDL alsaLib gtk jack2 ladspaH libsamplerate libsndfile
-     pkgconfig pulseaudio
+   [ SDL alsaLib gtk libjack2 ladspaH libsamplerate libsndfile
+     pkgconfig libpulseaudio
    ];
 
   configureFlags = "--with-default-ladspa-path=${ladspaPlugins}/lib/ladspa";
diff --git a/pkgs/applications/audio/milkytracker/default.nix b/pkgs/applications/audio/milkytracker/default.nix
index d5d7ea7be76..8bc0aebba5a 100644
--- a/pkgs/applications/audio/milkytracker/default.nix
+++ b/pkgs/applications/audio/milkytracker/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, SDL, alsaLib, autoconf, automake, jack2, perl
+{ stdenv, fetchurl, SDL, alsaLib, autoconf, automake, libjack2, perl
 , zlib, zziplib
 }:
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     export CPATH=${zlib}/lib
   '';
 
-  buildInputs = [ SDL alsaLib autoconf automake jack2 perl zlib zziplib ];
+  buildInputs = [ SDL alsaLib autoconf automake libjack2 perl zlib zziplib ];
 
   meta = {
     description = "Music tracker application, similar to Fasttracker II";
diff --git a/pkgs/applications/audio/minimodem/default.nix b/pkgs/applications/audio/minimodem/default.nix
index 6f2bf8cdb1c..025d216910e 100644
--- a/pkgs/applications/audio/minimodem/default.nix
+++ b/pkgs/applications/audio/minimodem/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, fftw, fftwSinglePrec, alsaLib, libsndfile, pulseaudio }:
+{ stdenv, fetchurl, pkgconfig, fftw, fftwSinglePrec, alsaLib, libsndfile, libpulseaudio }:
 
 stdenv.mkDerivation rec {
   version = "0.19";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "003xyqjq59wcjafrdv1b8w34xsn4nvzz51wwd7mqddajh0g4dz4g";
   };
 
-  buildInputs = [ pkgconfig fftw fftwSinglePrec alsaLib libsndfile pulseaudio ];
+  buildInputs = [ pkgconfig fftw fftwSinglePrec alsaLib libsndfile libpulseaudio ];
 
   meta = {
     description = "General-purpose software audio FSK modem";
diff --git a/pkgs/applications/audio/moc/default.nix b/pkgs/applications/audio/moc/default.nix
index a87e74dc87c..4cb7668a43f 100644
--- a/pkgs/applications/audio/moc/default.nix
+++ b/pkgs/applications/audio/moc/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, ncurses, pkgconfig, alsaLib, flac, libmad, speex, ffmpeg
-, libvorbis, libmpc, libsndfile, jack2, db, libmodplug, timidity, libid3tag
+, libvorbis, libmpc, libsndfile, libjack2, db, libmodplug, timidity, libid3tag
 , libtool
 }:
 
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     ncurses pkgconfig alsaLib flac libmad speex ffmpeg libvorbis
-    libmpc libsndfile jack2 db libmodplug timidity libid3tag libtool
+    libmpc libsndfile libjack2 db libmodplug timidity libid3tag libtool
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/mod-distortion/default.nix b/pkgs/applications/audio/mod-distortion/default.nix
new file mode 100644
index 00000000000..7b17f21b613
--- /dev/null
+++ b/pkgs/applications/audio/mod-distortion/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchFromGitHub, lv2 }:
+
+stdenv.mkDerivation rec {
+  name = "mod-distortion-${version}";
+  version = "git-2015-05-18";
+
+  src = fetchFromGitHub {
+    owner = "portalmod";
+    repo = "mod-distortion";
+    rev = "0cdf186abc2a9275890b57057faf5c3f6d86d84a";
+    sha256 = "1wmxgpcdcy9m7j78yq85824if0wz49wv7mw13bj3sw2s87dcmw19";
+  };
+
+  buildInputs = [ lv2 ];
+
+  installFlags = [ "LV2_PATH=$out/lib/lv2" ];
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/portalmod/mod-distortion;
+    description = "Analog distortion emulation lv2 plugins";
+    license = licenses.gpl3;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/mopidy-moped/default.nix b/pkgs/applications/audio/mopidy-moped/default.nix
index a96a5c9d898..6bf73c02185 100644
--- a/pkgs/applications/audio/mopidy-moped/default.nix
+++ b/pkgs/applications/audio/mopidy-moped/default.nix
@@ -2,12 +2,11 @@
 
 pythonPackages.buildPythonPackage rec {
   name = "mopidy-moped-${version}";
-
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchurl {
     url = "https://github.com/martijnboland/moped/archive/v${version}.tar.gz";
-    sha256 = "1bkx0c4yi48nxm1vzacdil9scn0ilwkbd1rgiga34p77lcg16qb2";
+    sha256 = "0xff8y1kc7rwwsd7ppgbvywf6i8lchjwbxjisfl1kmilwsb166yr";
   };
 
   propagatedBuildInputs = [ mopidy ];
diff --git a/pkgs/applications/audio/mopidy-mopify/default.nix b/pkgs/applications/audio/mopidy-mopify/default.nix
index 4616d3f7c64..770a1a79556 100644
--- a/pkgs/applications/audio/mopidy-mopify/default.nix
+++ b/pkgs/applications/audio/mopidy-mopify/default.nix
@@ -3,11 +3,11 @@
 pythonPackages.buildPythonPackage rec {
   name = "mopidy-mopify-${version}";
 
-  version = "1.4.1";
+  version = "1.5.1";
 
   src = fetchurl {
     url = "https://github.com/dirkgroenen/mopidy-mopify/archive/${version}.tar.gz";
-    sha256 = "1i752vnkgqfps5vym63rbsh1xm141z8r68d80bi076zr6zbzdjj9";
+    sha256 = "0hhdss4i5436dj37pndxk81a4g3g8f6zqjyv04lhpqcww01290as";
   };
 
   propagatedBuildInputs = [ mopidy ];
diff --git a/pkgs/applications/audio/mopidy-spotify/default.nix b/pkgs/applications/audio/mopidy-spotify/default.nix
index 14818e60cca..8b67f38390e 100644
--- a/pkgs/applications/audio/mopidy-spotify/default.nix
+++ b/pkgs/applications/audio/mopidy-spotify/default.nix
@@ -2,12 +2,11 @@
 
 pythonPackages.buildPythonPackage rec {
   name = "mopidy-spotify-${version}";
-
-  version = "1.3.0";
+  version = "1.4.0";
 
   src = fetchurl {
     url = "https://github.com/mopidy/mopidy-spotify/archive/v${version}.tar.gz";
-    sha256 = "0pwgg9xw86sjhv6w735fm0k81v0lv3gqlidgw90hr47hc4wajnzx";
+    sha256 = "0cf97z9vnnp5l77xhwvmkbkqgpj5gwnm1pipiy66lbk4gn6va4z4";
   };
 
   propagatedBuildInputs = [ mopidy pythonPackages.pyspotify ];
diff --git a/pkgs/applications/audio/mopidy/default.nix b/pkgs/applications/audio/mopidy/default.nix
index 08ccfc13302..7c236944892 100644
--- a/pkgs/applications/audio/mopidy/default.nix
+++ b/pkgs/applications/audio/mopidy/default.nix
@@ -5,11 +5,11 @@
 pythonPackages.buildPythonPackage rec {
   name = "mopidy-${version}";
 
-  version = "1.0.0";
+  version = "1.0.5";
 
   src = fetchurl {
     url = "https://github.com/mopidy/mopidy/archive/v${version}.tar.gz";
-    sha256 = "15cz6mqw8ihqxhlssnbbssl3bi1xxbmq7krf3hv0zmmdj73ilsd6";
+    sha256 = "0lhmm2w2djf6mb3acw1yq1k4j74v1lf4kgx24dsdnpkgsycrv5q6";
   };
 
   propagatedBuildInputs = with pythonPackages; [
diff --git a/pkgs/applications/audio/morituri/default.nix b/pkgs/applications/audio/morituri/default.nix
index 6498f48351d..4dc150d0642 100644
--- a/pkgs/applications/audio/morituri/default.nix
+++ b/pkgs/applications/audio/morituri/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     homepage = http://thomas.apestaart.org/morituri/trac/;
     description = "A CD ripper aiming for accuracy over speed";
-    maintainers = [ maintainers.rycee ];
+    maintainers = with maintainers; [ rycee jgeerds ];
     license = licenses.gpl3Plus;
   };
 }
diff --git a/pkgs/applications/audio/mpc/default.nix b/pkgs/applications/audio/mpc/default.nix
index 9224e21185b..f37585d3dec 100644
--- a/pkgs/applications/audio/mpc/default.nix
+++ b/pkgs/applications/audio/mpc/default.nix
@@ -1,27 +1,27 @@
 { stdenv, fetchurl, mpd_clientlib }:
 
 stdenv.mkDerivation rec {
-  version = "0.26";
+  version = "0.27";
   name = "mpc-${version}";
 
   src = fetchurl {
     url = "http://www.musicpd.org/download/mpc/0/${name}.tar.xz";
-    sha256 = "0hp2qv6w2v902dhrmck5hg32s1ai6xiv9n61a3n6prfcfdqmywr0";
+    sha256 = "0r10wsqxsi07gns6mfnicvpci0sbwwj4qa9iyr1ysrgadl5bx8j5";
   };
 
   buildInputs = [ mpd_clientlib ];
 
   preConfigure =
     ''
-      export LIBMPDCLIENT_LIBS=${mpd_clientlib}/lib/libmpdclient.so.${mpd_clientlib.majorVersion}.0.${mpd_clientlib.minorVersion}
+      export LIBMPDCLIENT_LIBS=${mpd_clientlib}/lib/libmpdclient.${if stdenv.isDarwin then mpd_clientlib.majorVersion + ".dylib" else "so." + mpd_clientlib.majorVersion + ".0." + mpd_clientlib.minorVersion}
       export LIBMPDCLIENT_CFLAGS=${mpd_clientlib}
     '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A minimalist command line interface to MPD";
     homepage = http://www.musicpd.org/clients/mpc/;
-    license = stdenv.lib.licenses.gpl2;
-    maintainers = [ stdenv.lib.maintainers.algorith ];
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.algorith ];
+    platforms = with platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/applications/audio/mpg123/default.nix b/pkgs/applications/audio/mpg123/default.nix
index 3edb7ae6793..eb1f8f4faa8 100644
--- a/pkgs/applications/audio/mpg123/default.nix
+++ b/pkgs/applications/audio/mpg123/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, alsaLib }:
 
-stdenv.mkDerivation {
-  name = "mpg123-1.19.0";
+stdenv.mkDerivation rec {
+  name = "mpg123-1.22.2";
 
   src = fetchurl {
-    url = mirror://sourceforge/mpg123/mpg123-1.19.0.tar.bz2;
-    sha256 = "06xhd68mj9yp0r6l771aq0d7xgnl402a3wm2mvhxmd3w3ph29446";
+    url = "mirror://sourceforge/mpg123/${name}.tar.bz2";
+    sha256 = "0i1phi6fdjas37y00h3j8rb0b8ngr9az6hy5ff5bl53ify3j87kd";
   };
 
   buildInputs = stdenv.lib.optional (!stdenv.isDarwin) alsaLib;
@@ -16,8 +16,9 @@ stdenv.mkDerivation {
   };
 
   meta = {
-    description = "Command-line MP3 player";
-    homepage = http://mpg123.sourceforge.net/;
-    license = "LGPL";
+    description = "Fast console MPEG Audio Player and decoder library";
+    homepage = http://mpg123.org;
+    license = stdenv.lib.licenses.lgpl21;
+    maintainers = [ stdenv.lib.maintainers.ftrvxmtrx ];
   };
 }
diff --git a/pkgs/applications/audio/musescore/default.nix b/pkgs/applications/audio/musescore/default.nix
index 7d4768d2332..9dbfc96d571 100644
--- a/pkgs/applications/audio/musescore/default.nix
+++ b/pkgs/applications/audio/musescore/default.nix
@@ -1,27 +1,48 @@
-{ stdenv, fetchurl, makeWrapper, cmake, qt5, pkgconfig, alsaLib, portaudio, jack2
-, lame, libsndfile, libvorbis }:
+{ stdenv, fetchurl, cmake, pkgconfig
+, alsaLib, freetype, libjack2, lame, libogg, libpulseaudio, libsndfile, libvorbis
+, portaudio, qtbase, qtdeclarative, qtenginio, qtscript, qtsvg, qttools
+, qtwebkit, qtxmlpatterns
+}:
 
 stdenv.mkDerivation rec {
   name = "musescore-${version}";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchurl {
     url = "https://github.com/musescore/MuseScore/archive/v${version}.tar.gz";
-    sha256 = "1a4fz9pqwz59brfa7qn61364hyd07lsq3lflkzn1w2q21d7xd20w";
+    sha256 = "0n4xk35jggdq2dcizqjq1kdpclih4scpl93ymmxahvfa1vvwn5iw";
   };
 
-  buildInputs = [
-    makeWrapper cmake qt5 pkgconfig alsaLib portaudio jack2 lame libsndfile libvorbis
+  makeFlags = [
+    "PREFIX=$(out)"
+  ];
+
+  cmakeFlags = [
+    "-DAEOLUS=OFF"
+    "-DZERBERUS=ON"
+    "-DOSC=ON=ON"
+    "-DOMR=OFF" # TODO: add OMR support, CLEF_G not declared error
+    "-DOCR=OFF" # Not necessary without OMR
+    "-DSOUNDFONT3=ON"
+    "-DHAS_AUDIOFILE=ON"
+    "-DBUILD_JACK=ON"
   ];
 
-  patchPhase = ''
-    sed s,"/usr/local",$out, -i Makefile
+  preBuild = ''
+    make lupdate
+    make lrelease
   '';
 
-  preBuild = "make lrelease";
+  nativeBuildInputs = [ cmake pkgconfig ];
+
+  buildInputs = [
+    alsaLib libjack2 freetype lame libogg libpulseaudio libsndfile libvorbis
+    portaudio qtbase qtdeclarative qtenginio qtscript qtsvg qttools
+    qtwebkit qtxmlpatterns #tesseract
+  ];
 
   meta = with stdenv.lib; {
-    description = "Qt-based score editor";
+    description = "Music notation and composition software";
     homepage = http://musescore.org/;
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/ncmpc/default.nix b/pkgs/applications/audio/ncmpc/default.nix
index b5f84f536d0..6c53d1fe755 100644
--- a/pkgs/applications/audio/ncmpc/default.nix
+++ b/pkgs/applications/audio/ncmpc/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     description = "Curses-based interface for MPD (music player daemon)";
     homepage    = http://www.musicpd.org/clients/ncmpc/;
     license     = licenses.gpl2Plus;
-    maintainers = with maintainers; [ _1126 ];
+    maintainers = with maintainers; [ hiberno ];
     platforms   = platforms.all;
   };
 }
diff --git a/pkgs/applications/audio/ncmpcpp/default.nix b/pkgs/applications/audio/ncmpcpp/default.nix
index bf437584559..e316df4a8c1 100644
--- a/pkgs/applications/audio/ncmpcpp/default.nix
+++ b/pkgs/applications/audio/ncmpcpp/default.nix
@@ -15,11 +15,11 @@ assert taglibSupport -> (taglib != null);
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "ncmpcpp-${version}";
-  version = "0.6.3";
+  version = "0.6.7";
 
   src = fetchurl {
     url = "http://ncmpcpp.rybczak.net/stable/${name}.tar.bz2";
-    sha256 = "00r2f7psd2jym2lxf3q3lz2lskz7091pz9glnxqam2bznwnlyxyp";
+    sha256 = "0yr1ib14qkgbsv839anpzkfbwkm6gg8wv4bf98ar7q5l2p2pv008";
   };
 
   configureFlags = [ "BOOST_LIB_SUFFIX=" ]
@@ -30,7 +30,9 @@ stdenv.mkDerivation rec {
     ++ optional curlSupport "--with-curl"
     ++ optional taglibSupport "--with-taglib";
 
-  buildInputs = [ boost mpd_clientlib ncurses pkgconfig readline libiconv ]
+  nativeBuildInputs = [ pkgconfig ];
+
+  buildInputs = [ boost mpd_clientlib ncurses readline libiconv ]
     ++ optional curlSupport curl
     ++ optional visualizerSupport fftw
     ++ optional taglibSupport taglib;
diff --git a/pkgs/applications/audio/pamixer/default.nix b/pkgs/applications/audio/pamixer/default.nix
index d665b83340c..56db4e8352e 100644
--- a/pkgs/applications/audio/pamixer/default.nix
+++ b/pkgs/applications/audio/pamixer/default.nix
@@ -1,16 +1,16 @@
-{ stdenv, fetchurl, boost, pulseaudio }:
+{ stdenv, fetchurl, boost, libpulseaudio }:
 
 stdenv.mkDerivation rec {
 
   name = "pamixer-${version}";
-  version = "1.2.1";
+  version = "1.3";
 
   src = fetchurl {
     url = "https://github.com/cdemoulins/pamixer/archive/${version}.tar.gz";
-    sha256 = "1ad6b46hh02hs1978pgihrm2bnq4z2v0imrfm3wy74xdkr6xjxy4";
+    sha256 = "091676ww4jbf4jr728gjfk7fkd5nisy70mr6f3s1p7n05hjpmfjx";
   };
 
-  buildInputs = [ boost pulseaudio ];
+  buildInputs = [ boost libpulseaudio ];
 
   installPhase = ''
     mkdir -p $out/bin
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = https://github.com/cdemoulins/pamixer;
     license = licenses.gpl3;
-    maintainers = with maintainers; [ _1126 ];
+    maintainers = with maintainers; [ hiberno ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/audio/paprefs/default.nix b/pkgs/applications/audio/paprefs/default.nix
index f05c4068a60..b026d8b9e6a 100644
--- a/pkgs/applications/audio/paprefs/default.nix
+++ b/pkgs/applications/audio/paprefs/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, pkgconfig, pulseaudio, gtkmm, libglademm
+{ fetchurl, stdenv, pkgconfig, libpulseaudio, gtkmm, libglademm
 , dbus_glib, gconfmm, intltool }:
 
 stdenv.mkDerivation rec {
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "1c5b3sb881szavly220q31g7rvpn94wr7ywlk00hqb9zaikml716";
   };
 
-  buildInputs = [ pulseaudio gtkmm libglademm dbus_glib gconfmm ];
+  buildInputs = [ libpulseaudio gtkmm libglademm dbus_glib gconfmm ];
 
   nativeBuildInputs = [ pkgconfig intltool ];
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
       dialog for the PulseAudio sound server.
     '';
 
-    homepage = http://freedesktop.org/software/pulseaudio/paprefs/ ;
+    homepage = http://freedesktop.org/software/pulseaudio/paprefs/;
 
     license = licenses.gpl2Plus;
 
diff --git a/pkgs/applications/audio/pavucontrol/default.nix b/pkgs/applications/audio/pavucontrol/default.nix
index 8e4c31302e2..2c6f70195b1 100644
--- a/pkgs/applications/audio/pavucontrol/default.nix
+++ b/pkgs/applications/audio/pavucontrol/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, pkgconfig, intltool, pulseaudio, gtkmm3
+{ fetchurl, stdenv, pkgconfig, intltool, libpulseaudio, gtkmm3
 , libcanberra_gtk3, makeWrapper, gnome3 }:
 
 stdenv.mkDerivation rec {
@@ -14,8 +14,8 @@ stdenv.mkDerivation rec {
      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
   '';
 
-  buildInputs = [ pulseaudio gtkmm3 libcanberra_gtk3 makeWrapper
-                  gnome3.gnome_icon_theme ];
+  buildInputs = [ libpulseaudio gtkmm3 libcanberra_gtk3 makeWrapper
+                  gnome3.defaultIconTheme ];
 
   nativeBuildInputs = [ pkgconfig intltool ];
 
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
     license = stdenv.lib.licenses.gpl2Plus;
 
-    maintainers = [ maintainers.abbradar ];
+    maintainers = with maintainers; [ abbradar jgeerds ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/audio/pd-plugins/helmholtz/default.nix b/pkgs/applications/audio/pd-plugins/helmholtz/default.nix
index 9046ec0a87f..8f04bf116a6 100644
--- a/pkgs/applications/audio/pd-plugins/helmholtz/default.nix
+++ b/pkgs/applications/audio/pd-plugins/helmholtz/default.nix
@@ -6,6 +6,7 @@ stdenv.mkDerivation rec {
   src = fetchurl {
     url = "http://www.katjaas.nl/helmholtz/helmholtz~.zip";
     name = "helmholtz.zip";
+    curlOpts = "--user-agent ''";
     sha256 = "0h1fj7lmvq9j6rmw33rb8k0byxb898bi2xhcwkqalb84avhywgvs";
   };
 
diff --git a/pkgs/applications/audio/pd-plugins/puremapping/default.nix b/pkgs/applications/audio/pd-plugins/puremapping/default.nix
index fc7fc5ee3d0..2e9a37a2f0d 100644
--- a/pkgs/applications/audio/pd-plugins/puremapping/default.nix
+++ b/pkgs/applications/audio/pd-plugins/puremapping/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, unzip, puredata }:
 
 stdenv.mkDerivation rec {
-  name = "puremapping";
+  name = "puremapping-1.01";
 
   src = fetchurl {
     url = "http://www.chnry.net/ch/IMG/zip/puremapping-libdir-generic.zip";
diff --git a/pkgs/applications/audio/petrifoo/default.nix b/pkgs/applications/audio/petrifoo/default.nix
index 197a0aa1bbe..c9d9ad57487 100644
--- a/pkgs/applications/audio/petrifoo/default.nix
+++ b/pkgs/applications/audio/petrifoo/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, alsaLib, cmake, gtk, jack2, libgnomecanvas
+{ stdenv, fetchurl, alsaLib, cmake, gtk, libjack2, libgnomecanvas
 , libpthreadstubs, libsamplerate, libsndfile, libtool, libxml2
-, pkgconfig }:
+, pkgconfig, openssl }:
 
 stdenv.mkDerivation  rec {
   name = "petri-foo-${version}";
@@ -12,8 +12,8 @@ stdenv.mkDerivation  rec {
   };
 
   buildInputs =
-   [ alsaLib cmake  gtk jack2 libgnomecanvas libpthreadstubs
-     libsamplerate libsndfile libtool libxml2 pkgconfig
+   [ alsaLib cmake  gtk libjack2 libgnomecanvas libpthreadstubs
+     libsamplerate libsndfile libtool libxml2 pkgconfig openssl
    ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/pianobar/default.nix b/pkgs/applications/audio/pianobar/default.nix
index 3e7bcb9d912..b76e1183c0e 100644
--- a/pkgs/applications/audio/pianobar/default.nix
+++ b/pkgs/applications/audio/pianobar/default.nix
@@ -19,11 +19,11 @@ stdenv.mkDerivation rec {
 
   configurePhase = "export CC=${CC}";
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A console front-end for Pandora.com";
     homepage = "http://6xq.net/projects/pianobar/";
-    platforms = stdenv.lib.platforms.linux;
-    license = stdenv.lib.licenses.mit; # expat version
-    maintainers = stdenv.lib.maintainers.eduarrrd;
+    platforms = platforms.linux;
+    license = licenses.mit; # expat version
+    maintainers = with maintainers; [ eduarrrd ];
   };
 }
diff --git a/pkgs/applications/audio/pithos/default.nix b/pkgs/applications/audio/pithos/default.nix
index bb863d2501c..955c776d904 100644
--- a/pkgs/applications/audio/pithos/default.nix
+++ b/pkgs/applications/audio/pithos/default.nix
@@ -1,40 +1,34 @@
-# Based on Richard Wallace's post here: http://comments.gmane.org/gmane.linux.distributions.nixos/14734
+{ fetchFromGitHub, stdenv, pythonPackages, gtk3, gobjectIntrospection, libnotify
+, gst_all_1, wrapGAppsHook }:
 
-{ fetchurl, stdenv, pythonPackages, gtk3, libnotify, gst_all_1 }:
 pythonPackages.buildPythonPackage rec {
   name = "pithos-${version}";
-  version = "1.0.1";
+  version = "1.1.1";
 
-  src = fetchurl {
-    url = "https://github.com/pithos/pithos/archive/${version}.tar.gz";
-    sha256 = "67b83927d5111067aefbf034d23880f96b1a2d300464e8491efa80e97e67f50f";
+  namePrefix = "";
+
+  src = fetchFromGitHub {
+    owner = "pithos";
+    repo  = "pithos";
+    rev = version;
+    sha256 = "0373z7g1wd3g1xl8m4ipx5n2ka67a2wcn387nyk8yvgdikm14jm3";
   };
 
   postPatch = ''
     substituteInPlace setup.py --replace "/usr/share" "$out/share"
   '';
 
-  buildInputs = with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-ugly gst-plugins-bad libnotify ];
-
-  pythonPath = with pythonPackages; [ pygobject3 dbus pylast ];
+  buildInputs = [ wrapGAppsHook ];
 
-  propogatedBuildInputs = pythonPath;
-
-  postInstall = ''
-    wrapProgram "$out/bin/pithos" --prefix GST_PLUGIN_SYSTEM_PATH_1_0 ":" "$GST_PLUGIN_SYSTEM_PATH_1_0"
-  '';
+  propagatedBuildInputs =
+    [ gtk3 gobjectIntrospection libnotify ] ++
+    (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-ugly gst-plugins-bad ]) ++
+    (with pythonPackages; [ pygobject3 pylast ]);
 
   meta = with stdenv.lib; {
-    description = "Pandora player";
-
-    longDescription = ''
-      Pandora Internet Radio player for GNOME
-    '';
-
-    homepage = http://pithos.github.io/ ;
-
+    description = "Pandora Internet Radio player for GNOME";
+    homepage = https://pithos.github.io/;
     license = licenses.gpl3;
-
-    maintainers = with maintainers; [ obadz ];
+    maintainers = with maintainers; [ obadz jgeerds ];
   };
 }
diff --git a/pkgs/applications/audio/plugin-torture/default.nix b/pkgs/applications/audio/plugin-torture/default.nix
new file mode 100644
index 00000000000..91b3954de0d
--- /dev/null
+++ b/pkgs/applications/audio/plugin-torture/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchgit, boost, ladspaH, lilv, lv2, pkgconfig, serd, sord, sratom }:
+
+stdenv.mkDerivation rec {
+  name = "plugin-torture-git-${version}";
+  version = "2013-10-03";
+
+  src = fetchgit {
+    url = "https://github.com/cth103/plugin-torture";
+    rev = "9ee06016982bdfbaa215cd0468cc6ada6367462a";
+    sha256 = "bfe9213fd2c1451d7acc1381d63301c4e6ff69ce86d31a886ece5159ba850706";
+  };
+
+  buildInputs = [ boost ladspaH lilv lv2 pkgconfig serd sord sratom ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp plugin-torture $out/bin/
+    cp README $out/bin/
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/cth103/plugin-torture;
+    description = "A tool to test LADSPA and LV2 plugins";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/ponymix/default.nix b/pkgs/applications/audio/ponymix/default.nix
new file mode 100644
index 00000000000..0b5947e16f4
--- /dev/null
+++ b/pkgs/applications/audio/ponymix/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, libpulseaudio, libnotify, pkgconfig }:
+
+stdenv.mkDerivation rec {
+  name = "ponymix-${version}";
+  version = "4";
+  src = fetchurl {
+    url = "http://code.falconindy.com/archive/ponymix/${name}.tar.xz";
+    sha256 = "008pk3sqc8955k2f502z1syzv43a4q0yk5ws69lgpqfsy1mzki2d";
+  };
+
+  buildInputs = [ libpulseaudio libnotify ];
+  nativeBuildInputs = [ pkgconfig ];
+
+  postPatch = ''substituteInPlace Makefile --replace "\$(DESTDIR)/usr" "$out"'';
+
+  meta = {
+    description = "CLI PulseAudio Volume Control";
+    homepage = "http://github.com/falconindy/ponymix";
+    license = "mit";
+  };
+}
diff --git a/pkgs/applications/audio/praat/default.nix b/pkgs/applications/audio/praat/default.nix
index 354a3e43616..03ba33b4834 100644
--- a/pkgs/applications/audio/praat/default.nix
+++ b/pkgs/applications/audio/praat/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, alsaLib, gtk, pkgconfig }:
 
-let version = "5401"; in
+let version = "5417"; in
 stdenv.mkDerivation {
   name = "praat-${version}";
 
   src = fetchurl {
     url = "http://www.fon.hum.uva.nl/praat/praat${version}_sources.tar.gz";
-    sha256 = "1hx0simc0hp5w5scyaiw8h8lrpafra4h1zy1jn1kzb0299yd06n3";
+    sha256 = "1bspl963pb1s6k3cd9p3g5j518pxg6hkrann945lqsrvbzaa20kl";
   };
 
   configurePhase = ''
diff --git a/pkgs/applications/audio/projectm/default.nix b/pkgs/applications/audio/projectm/default.nix
index 508b6743cc3..764ee629dbf 100644
--- a/pkgs/applications/audio/projectm/default.nix
+++ b/pkgs/applications/audio/projectm/default.nix
@@ -2,8 +2,8 @@
 , glew, ftgl, ttf_bitstream_vera
 , withQt ? true, qt4
 , withLibvisual ? false, libvisual, SDL
-, withJack ? false, jack2
-, withPulseAudio ? true, pulseaudio
+, withJack ? false, libjack2
+, withPulseAudio ? true, libpulseaudio
 }:
 
 assert withJack       -> withQt;
@@ -45,7 +45,7 @@ stdenv.mkDerivation {
     [ glew ftgl ]
     ++ optional withQt qt4
     ++ optionals withLibvisual [ libvisual SDL ]
-    ++ optional withJack jack2
-    ++ optional withPulseAudio pulseaudio
+    ++ optional withJack libjack2
+    ++ optional withPulseAudio libpulseaudio
     ;
 }
diff --git a/pkgs/applications/audio/puredata/default.nix b/pkgs/applications/audio/puredata/default.nix
index 9abca0cb014..8fddcccd51c 100644
--- a/pkgs/applications/audio/puredata/default.nix
+++ b/pkgs/applications/audio/puredata/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, autoreconfHook, gettext, makeWrapper
-, alsaLib, jack2, tk
+, alsaLib, libjack2, tk
 }:
 
 stdenv.mkDerivation  rec {
@@ -17,7 +17,7 @@ stdenv.mkDerivation  rec {
 
   nativeBuildInputs = [ autoreconfHook gettext makeWrapper ];
 
-  buildInputs = [ alsaLib jack2 ];
+  buildInputs = [ alsaLib libjack2 ];
 
   configureFlags = ''
     --enable-alsa
diff --git a/pkgs/applications/audio/qjackctl/default.nix b/pkgs/applications/audio/qjackctl/default.nix
index 9b87dd53bf6..c200e39887a 100644
--- a/pkgs/applications/audio/qjackctl/default.nix
+++ b/pkgs/applications/audio/qjackctl/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, qt4, alsaLib, jack2, dbus }:
+{ stdenv, fetchurl, qt4, alsaLib, libjack2, dbus }:
 
 stdenv.mkDerivation rec {
   version = "0.3.12";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "14yvnc4k3hwsjflg8b2d04bc63pdl0gyqjc7vl6rdn29nbr23zwc";
   };
 
-  buildInputs = [ qt4 alsaLib jack2 dbus ];
+  buildInputs = [ qt4 alsaLib libjack2 dbus ];
 
   configureFlags = "--enable-jack-version";
 
diff --git a/pkgs/applications/audio/qmidiroute/default.nix b/pkgs/applications/audio/qmidiroute/default.nix
new file mode 100644
index 00000000000..badac0887a1
--- /dev/null
+++ b/pkgs/applications/audio/qmidiroute/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, pkgconfig, qt4, alsaLib }:
+
+stdenv.mkDerivation rec {
+  version = "0.3.0";
+  name = "qmidiroute-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/project/alsamodular/QMidiRoute/${version}/${name}.tar.gz";
+    sha256 = "11bfjz14z37v6hk2xyg4vrw423b5h3qgcbviv07g00ws1fgjygm2";
+  };
+
+  buildInputs = [ pkgconfig qt4 alsaLib ];
+
+  meta = with stdenv.lib; {
+    description = "MIDI event processor and router";
+    longDescription = ''
+    qmidiroute is a versatile MIDI event processor and router for the ALSA
+    sequencer.  The graphical  interface  is  based  on  the  Qt4  toolkit.
+    qmidiroute permits setting up an unlimited number of MIDI maps in which
+    incoming events are selected, modified or even changed in  type  before
+    being  directed  to  a  dedicated  ALSA  output  port. The maps work in
+    parallel, and they are organized in tabs.
+    '';
+
+    license = licenses.gpl2;
+    maintainers = [ maintainers.lebastr ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/qmmp/default.nix b/pkgs/applications/audio/qmmp/default.nix
index 1a447be56b4..5bec7aa6dd0 100644
--- a/pkgs/applications/audio/qmmp/default.nix
+++ b/pkgs/applications/audio/qmmp/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchurl, cmake, qt4, pkgconfig, x11
+{ stdenv, fetchurl, cmake, qt4, pkgconfig, xlibsWrapper
 # transports
 , curl, libmms
 # input plugins
 , libmad, taglib, libvorbis, libogg, flac, libmpcdec, libmodplug, libsndfile
 , libcdio, cdparanoia, libcddb, faad2, ffmpeg, wildmidi
 # output plugins
-, alsaLib, pulseaudio
+, alsaLib, libpulseaudio
 # effect plugins
 , libsamplerate
 }:
@@ -37,14 +37,14 @@ stdenv.mkDerivation rec {
 
   buildInputs =
     [ # basic requirements
-      cmake qt4 pkgconfig x11
+      cmake qt4 pkgconfig xlibsWrapper
       # transports
       curl libmms
       # input plugins
       libmad taglib libvorbis libogg flac libmpcdec libmodplug libsndfile
       libcdio cdparanoia libcddb faad2 ffmpeg wildmidi
       # output plugins
-      alsaLib pulseaudio
+      alsaLib libpulseaudio
       # effect plugins
       libsamplerate
     ];
diff --git a/pkgs/applications/audio/qsynth/default.nix b/pkgs/applications/audio/qsynth/default.nix
index a8ff526fad9..77c0ba9b2d4 100644
--- a/pkgs/applications/audio/qsynth/default.nix
+++ b/pkgs/applications/audio/qsynth/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, alsaLib, fluidsynth, jack2, qt4 }:
+{ stdenv, fetchurl, alsaLib, fluidsynth, libjack2, qt4 }:
 
 stdenv.mkDerivation  rec {
   name = "qsynth-${version}";
@@ -9,7 +9,7 @@ stdenv.mkDerivation  rec {
     sha256 = "08kyn6cl755l9i1grzjx8yi3f8mgiz4gx0hgqad1n0d8yz85087b";
   };
 
-  buildInputs = [ alsaLib fluidsynth jack2 qt4 ];
+  buildInputs = [ alsaLib fluidsynth libjack2 qt4 ];
 
   meta = with stdenv.lib; {
     description = "Fluidsynth GUI";
diff --git a/pkgs/applications/audio/qtractor/default.nix b/pkgs/applications/audio/qtractor/default.nix
index 763501a7465..418efa23b20 100644
--- a/pkgs/applications/audio/qtractor/default.nix
+++ b/pkgs/applications/audio/qtractor/default.nix
@@ -1,19 +1,19 @@
-{ alsaLib, autoconf, automake, dssi, fetchurl, gtk, jack2
+{ alsaLib, autoconf, automake, dssi, fetchurl, gtk, libjack2
 , ladspaH, ladspaPlugins, liblo, libmad, libsamplerate, libsndfile
 , libtool, libvorbis, lilv, lv2, pkgconfig, qt4, rubberband, serd
 , sord, sratom, stdenv, suil }:
 
 stdenv.mkDerivation rec {
-  version = "0.6.6";
+  version = "0.6.7";
   name = "qtractor-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/qtractor/${name}.tar.gz";
-    sha256 = "1n70hs4bx4hq3cp2p35jq5vlcans4fk2c35w72244vlqlajx05c0";
+    sha256 = "0h5nblfkl4s412c9f02b40nb8c8jq8ypz67z2qn3hkvhx6i9yxsg";
   };
 
   buildInputs =
-    [ alsaLib autoconf automake dssi gtk jack2 ladspaH
+    [ alsaLib autoconf automake dssi gtk libjack2 ladspaH
       ladspaPlugins liblo libmad libsamplerate libsndfile libtool
       libvorbis lilv lv2 pkgconfig qt4 rubberband serd sord sratom
       suil
diff --git a/pkgs/applications/audio/rakarrack/default.nix b/pkgs/applications/audio/rakarrack/default.nix
index 257a9967a5b..b746cccd113 100644
--- a/pkgs/applications/audio/rakarrack/default.nix
+++ b/pkgs/applications/audio/rakarrack/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, alsaLib, alsaUtils, fltk, jack2, libXft,
+{ stdenv, fetchurl, alsaLib, alsaUtils, fltk, libjack2, libXft,
 libXpm, libjpeg, libpng, libsamplerate, libsndfile, zlib }:
 
 stdenv.mkDerivation  rec {
@@ -12,7 +12,7 @@ stdenv.mkDerivation  rec {
 
   patches = [ ./fltk-path.patch ];
 
-  buildInputs = [ alsaLib alsaUtils fltk jack2 libXft libXpm libjpeg
+  buildInputs = [ alsaLib alsaUtils fltk libjack2 libXft libXpm libjpeg
     libpng libsamplerate libsndfile zlib ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/renoise/default.nix b/pkgs/applications/audio/renoise/default.nix
new file mode 100644
index 00000000000..704f3f01c00
--- /dev/null
+++ b/pkgs/applications/audio/renoise/default.nix
@@ -0,0 +1,61 @@
+{ stdenv, lib, requireFile, demo, fetchurl, libX11, libXext, libXcursor, libXrandr, libjack2, alsaLib, ... }:
+
+stdenv.mkDerivation rec {
+  name = "renoise";
+
+  buildInputs = [ libX11 libXext libXcursor libXrandr alsaLib libjack2 ];
+
+  src =
+    if builtins.currentSystem == "x86_64-linux" then
+        if demo then
+        fetchurl {
+            url = "http://files.renoise.com/demo/Renoise_3_0_1_Demo_x86_64.tar.bz2";
+            sha256 = "1q7f94wz2dbz659kpp53a3n1qyndsk0pkb29lxdff4pc3ddqwykg";
+        }
+        else
+        requireFile {
+            url = "http://backstage.renoise.com/frontend/app/index.html#/login";
+            name = "rns_3_0_1_reg_x86_64.tar.gz";
+            sha256 = "1swax2jz0gswdpzz8alwjfd8rhigc2yfspj7p8wvdvylqrf7n8q7";
+        }
+    else if builtins.currentSystem == "i686-linux" then
+        if demo then
+        fetchurl {
+            url = "http://files.renoise.com/demo/Renoise_3_0_1_Demo_x86.tar.bz2";
+            sha256 = "0dgqvib4xh2yhgh2wajj11wsb6xiiwgfkhyz32g8vnyaij5q8f58";
+        }
+        else
+        requireFile {
+            url = "http://backstage.renoise.com/frontend/app/index.html#/login";
+            name = "rns_3_0_1_reg_x86.tar.gz";
+            sha256 = "1swax2jz0gswdpzz8alwjfd8rhigc2yfspj7p8wvdvylqrf7n8q7";
+        }
+    else throw "platform is not suppored by Renoise";
+
+  installPhase = ''
+    cp -r Resources $out
+
+    mkdir -p $out/lib/
+
+    mv $out/AudioPluginServer* $out/lib/
+
+    cp renoise $out/renoise
+
+    for path in ${toString buildInputs}; do
+      ln -s $path/lib/*.so* $out/lib/
+    done
+
+    ln -s ${stdenv.cc.cc}/lib/libstdc++.so.6 $out/lib/
+
+    mkdir $out/bin
+    ln -s $out/renoise $out/bin/renoise
+
+    patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) --set-rpath $out/lib $out/renoise
+  '';
+
+  meta = {
+    description = "modern tracker-based DAW";
+    homepage = http://www.renoise.com/;
+    license = stdenv.lib.licenses.unfree;
+  };
+}
diff --git a/pkgs/applications/audio/rkrlv2/default.nix b/pkgs/applications/audio/rkrlv2/default.nix
new file mode 100644
index 00000000000..084d187c347
--- /dev/null
+++ b/pkgs/applications/audio/rkrlv2/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, pkgs, fetchFromGitHub,
+automake, pkgconfig, lv2, fftw, cmake, xorg, libjack2, libsamplerate, libsndfile
+}:
+
+stdenv.mkDerivation rec {
+  repo = "rkrlv2";
+  name = "${repo}-b1.0";
+
+  src = fetchFromGitHub {
+    owner = "ssj71";
+    inherit repo;
+    rev = "a315f5aefe63be7e34663596b8b050410a9b7e72";
+    sha256 = "0kr3rvq7n1bh47qryyarcpiibms601qd8l1vypmm61969l4d4bn8";
+  };
+
+  buildInputs = with xorg; [ automake pkgconfig lv2 fftw cmake libXpm libjack2 libsamplerate libsndfile libXft ];
+
+  meta = {
+    description = "Rakarrak effects ported to LV2";
+    homepage = https://github.com/ssj71/rkrlv2;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = [ stdenv.lib.maintainers.joelmo ];
+  };
+}
diff --git a/pkgs/applications/audio/rosegarden/default.nix b/pkgs/applications/audio/rosegarden/default.nix
new file mode 100644
index 00000000000..5ee15a92582
--- /dev/null
+++ b/pkgs/applications/audio/rosegarden/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchurl, qt4, pkgconfig, ladspaPlugins, ladspaH,
+  dssi, liblo, liblrdf, fftwSinglePrec, libsndfile,
+  libsamplerate, perl, makedepend, libjack2,
+  withLirc ? false, lirc ? null } :
+
+stdenv.mkDerivation (rec {
+  version = "14.12";
+  name = "rosegarden-${version}";
+  src = fetchurl {
+    url  = "mirror://sourceforge/rosegarden/${name}.tar.bz2";
+    sha256 = "0zhlxr1njyy6837f09l6p75js0j5mxmls6m02bqafv9j32wgnxpq";
+  };
+
+  QTDIR=qt4;
+  
+  buildInputs = [ qt4 pkgconfig ladspaPlugins ladspaH dssi liblo liblrdf fftwSinglePrec
+                  libsndfile libsamplerate perl makedepend libjack2 ]
+		++ stdenv.lib.optional withLirc [ lirc ];
+  
+  #enableParallelBuilding = true; issues on hydra
+  
+  meta = with stdenv.lib; {
+    homepage = http://www.rosegardenmusic.com/;
+    description = "Music composition and editing environment";
+    longDescription = ''
+      Rosegarden is a music composition and editing environment based around a MIDI sequencer that features a rich understanding of music notation and includes basic support for digital audio.
+      Rosegarden is an easy-to-learn, attractive application that runs on Linux, ideal for composers, musicians, music students, and small studio or home recording environments.
+      '';
+
+    maintainers = [ maintainers.lebastr ];
+    license = licenses.lgpl2Plus;
+    platforms = platforms.linux;
+  };
+})
diff --git a/pkgs/applications/audio/samplv1/default.nix b/pkgs/applications/audio/samplv1/default.nix
index 10f0a4cec41..fa9df2f603e 100644
--- a/pkgs/applications/audio/samplv1/default.nix
+++ b/pkgs/applications/audio/samplv1/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchurl, jack2, libsndfile, lv2, qt4 }:
+{ stdenv, fetchurl, libjack2, libsndfile, lv2, qt4 }:
 
 stdenv.mkDerivation rec {
   name = "samplv1-${version}";
-  version = "0.6.1";
+  version = "0.7.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/samplv1/${name}.tar.gz";
-    sha256 = "18jh953a0480fnsflbm4j04xz02h7fqwk77v8hnv54vwwp5a1h08";
+    sha256 = "0494w1xhhadwzvdr0v4gg5pzr2w2ah2vk896znj59j1y9gn3gilq";
   };
 
-  buildInputs = [ jack2 libsndfile lv2 qt4 ];
+  buildInputs = [ libjack2 libsndfile lv2 qt4 ];
 
   meta = with stdenv.lib; {
     description = "An old-school all-digital polyphonic sampler synthesizer with stereo fx";
@@ -18,4 +18,4 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/audio/seq24/default.nix b/pkgs/applications/audio/seq24/default.nix
index 10376e02f43..63db865eba5 100644
--- a/pkgs/applications/audio/seq24/default.nix
+++ b/pkgs/applications/audio/seq24/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, alsaLib, gtkmm, jack2, pkgconfig }:
+{ stdenv, fetchurl, alsaLib, gtkmm, libjack2, pkgconfig }:
 
 stdenv.mkDerivation  rec {
   name = "seq24-${version}";
@@ -9,7 +9,7 @@ stdenv.mkDerivation  rec {
     sha256 = "07n80zj95i80vjmsflnlbqx5vv90qmp5f6a0zap8d30849l4y258";
   };
 
-  buildInputs = [ alsaLib gtkmm jack2 pkgconfig ];
+  buildInputs = [ alsaLib gtkmm libjack2 pkgconfig ];
 
   meta = with stdenv.lib; {
     description = "minimal loop based midi sequencer";
diff --git a/pkgs/applications/audio/setbfree/default.nix b/pkgs/applications/audio/setbfree/default.nix
index 5119c384cf6..2a534047ae3 100644
--- a/pkgs/applications/audio/setbfree/default.nix
+++ b/pkgs/applications/audio/setbfree/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, alsaLib, freetype, ftgl, jack2, libX11, lv2
+{ stdenv, fetchurl, alsaLib, freetype, ftgl, libjack2, libX11, lv2
 , mesa, pkgconfig, ttf_bitstream_vera
 }:
 
 stdenv.mkDerivation  rec {
   name = "setbfree-${version}";
-  version = "0.7.5";
+  version = "0.8.0";
 
   src = fetchurl {
     url = "https://github.com/pantherb/setBfree/archive/v${version}.tar.gz";
-    sha256 = "1chlmgwricc6l4kyg35vc9v8f1n8psr28iihn4a9q2prj1ihqcbc";
+    sha256 = "1lfylai4gyk512dknj16w2aq9ka8hvqca46nmq5b4rfjmi6dkxf6";
   };
 
   patchPhase = ''
@@ -18,7 +18,7 @@ stdenv.mkDerivation  rec {
   '';
 
   buildInputs = [
-    alsaLib freetype ftgl jack2 libX11 lv2 mesa pkgconfig
+    alsaLib freetype ftgl libjack2 libX11 lv2 mesa pkgconfig
     ttf_bitstream_vera
   ];
 
diff --git a/pkgs/applications/audio/sonic-visualiser/default.nix b/pkgs/applications/audio/sonic-visualiser/default.nix
index 7bda4fb2767..bef2006d60b 100644
--- a/pkgs/applications/audio/sonic-visualiser/default.nix
+++ b/pkgs/applications/audio/sonic-visualiser/default.nix
@@ -1,9 +1,9 @@
 # TODO add plugins having various licenses, see http://www.vamp-plugins.org/download.html
 
-{ stdenv, fetchurl, alsaLib, bzip2, fftw, jack2, libX11, liblo
+{ stdenv, fetchurl, alsaLib, bzip2, fftw, libjack2, libX11, liblo
 , libmad, libogg, librdf, librdf_raptor, librdf_rasqal, libsamplerate
-, libsndfile, pkgconfig, pulseaudio, qt5, redland
-, rubberband, serd, sord, vampSDK
+, libsndfile, pkgconfig, libpulseaudio, qtbase, redland
+, rubberband, serd, sord, vampSDK, fftwFloat
 }:
 
 stdenv.mkDerivation rec {
@@ -16,15 +16,15 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ libsndfile qt5 fftw /* should be fftw3f ??*/ bzip2 librdf rubberband
+    [ libsndfile qtbase fftw fftwFloat bzip2 librdf rubberband
       libsamplerate vampSDK alsaLib librdf_raptor librdf_rasqal redland
       serd
       sord
       pkgconfig
       # optional
-      jack2
+      libjack2
       # portaudio
-      pulseaudio
+      libpulseaudio
       libmad
       libogg # ?
       # fishsound
@@ -43,6 +43,7 @@ stdenv.mkDerivation rec {
     mkdir -p $out/{bin,share/sonic-visualiser}
     cp sonic-visualiser $out/bin/
     cp -r samples $out/share/sonic-visualiser/
+    wrapQtProgram "$out/bin/sonic-visualiser"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/sooperlooper/default.nix b/pkgs/applications/audio/sooperlooper/default.nix
index b40e2187175..372339474a5 100644
--- a/pkgs/applications/audio/sooperlooper/default.nix
+++ b/pkgs/applications/audio/sooperlooper/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, liblo, libxml2, jack2, libsndfile, wxGTK, libsigcxx
+{ stdenv, fetchurl, liblo, libxml2, libjack2, libsndfile, wxGTK, libsigcxx
 ,libsamplerate, rubberband, pkgconfig, ncurses
 }:
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-   liblo libxml2 jack2 libsndfile wxGTK libsigcxx
+   liblo libxml2 libjack2 libsndfile wxGTK libsigcxx
    libsamplerate rubberband pkgconfig ncurses
   ];
 
diff --git a/pkgs/applications/audio/sorcer/default.nix b/pkgs/applications/audio/sorcer/default.nix
new file mode 100644
index 00000000000..ef28180cc3b
--- /dev/null
+++ b/pkgs/applications/audio/sorcer/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchurl, boost, cairomm, cmake, libsndfile, lv2, ntk, pkgconfig, python }:
+
+stdenv.mkDerivation rec {
+  name = "sorcer-${version}";
+  version = "1.1.1";
+
+  src = fetchurl {
+    url = "https://github.com/harryhaaren/openAV-Sorcer/archive/release-${version}.tar.gz";
+    sha256 = "1jkhs2rhn4givac7rlbj8067r7qq6jnj3ixabb346nw7pd6gn1wn";
+  };
+
+  buildInputs = [ boost cairomm cmake libsndfile lv2 ntk pkgconfig python ];
+
+  installPhase = ''
+    make install
+    cp -a ../presets/* "$out/lib/lv2"
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://openavproductions.com/sorcer/;
+    description = "A wavetable LV2 plugin synth, targeted at the electronic / dubstep genre";
+    license = licenses.gpl3;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/sound-juicer/default.nix b/pkgs/applications/audio/sound-juicer/default.nix
index f7f5998846b..c27dbad78cc 100644
--- a/pkgs/applications/audio/sound-juicer/default.nix
+++ b/pkgs/applications/audio/sound-juicer/default.nix
@@ -3,8 +3,8 @@
 , makeWrapper }:
 
 let
-  major = "3.15";
-  minor = "92";
+  major = "3.16";
+  minor = "1";
   GST_PLUGIN_PATH = stdenv.lib.makeSearchPath "lib/gstreamer-1.0" [
     gst_all_1.gst-plugins-base
     gst_all_1.gst-plugins-good
@@ -17,7 +17,7 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://download.gnome.org/sources/sound-juicer/${major}/${name}.tar.xz";
-    sha256 = "b1420f267a4c553f6ca242d3b6082b60682c3d7b431ac3c979bd1ccfbf2687dd";
+    sha256 = "0mx6n901vb97hsv0cwaafjffj75s1kcp8jsqay90dy3099849dyz";
   };
 
   buildInputs = [ pkgconfig gtk3 intltool itstool libxml2 brasero libcanberra_gtk3
diff --git a/pkgs/applications/audio/spotify/default.nix b/pkgs/applications/audio/spotify/default.nix
index 7a7e71f8218..05027350cc2 100644
--- a/pkgs/applications/audio/spotify/default.nix
+++ b/pkgs/applications/audio/spotify/default.nix
@@ -1,14 +1,12 @@
-{ fetchurl, stdenv, dpkg, xlibs, qt4, alsaLib, makeWrapper, openssl, freetype
+{ fetchurl, stdenv, dpkg, xorg, qt4, alsaLib, makeWrapper, openssl, freetype
 , glib, pango, cairo, atk, gdk_pixbuf, gtk, cups, nspr, nss, libpng, GConf
 , libgcrypt, chromium, udev, fontconfig
 , dbus, expat }:
 
-assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
+assert stdenv.system == "x86_64-linux";
 
 let
-  version = if stdenv.system == "i686-linux"
-    then "0.9.4.183.g644e24e.428"
-    else "0.9.17.1.g9b85d43.7";
+  version = "0.9.17.1.g9b85d43.7";
 
   deps = [
     alsaLib
@@ -29,16 +27,17 @@ let
     pango
     qt4
     stdenv.cc.cc
-    xlibs.libX11
-    xlibs.libXcomposite
-    xlibs.libXdamage
-    xlibs.libXext
-    xlibs.libXfixes
-    xlibs.libXi
-    xlibs.libXrandr
-    xlibs.libXrender
-    xlibs.libXrender
-    xlibs.libXScrnSaver
+    udev
+    xorg.libX11
+    xorg.libXcomposite
+    xorg.libXdamage
+    xorg.libXext
+    xorg.libXfixes
+    xorg.libXi
+    xorg.libXrandr
+    xorg.libXrender
+    xorg.libXrender
+    xorg.libXScrnSaver
   ];
 
 in
@@ -47,17 +46,10 @@ stdenv.mkDerivation {
   name = "spotify-${version}";
 
   src =
-    if stdenv.system == "i686-linux" then
-      fetchurl {
-        url = "http://repository.spotify.com/pool/non-free/s/spotify/spotify-client_${version}-1_i386.deb";
-        sha256 = "1wl6v5x8vm74h5lxp8fhvmih8l122aadsf1qxvpk0k3y6mbx0ifa";
-      }
-    else if stdenv.system == "x86_64-linux" then
-      fetchurl {
-        url = "http://repository.spotify.com/pool/non-free/s/spotify/spotify-client_${version}-1_amd64.deb";
-        sha256 = "0x87q7gd2997sgppsm4lmdiz1cm11x5vnd5c34nqb5d4ry5qfyki";
-      }
-    else throw "Spotify not supported on this platform.";
+    fetchurl {
+      url = "http://repository.spotify.com/pool/non-free/s/spotify/spotify-client_${version}-1_amd64.deb";
+      sha256 = "0x87q7gd2997sgppsm4lmdiz1cm11x5vnd5c34nqb5d4ry5qfyki";
+    };
 
   buildInputs = [ dpkg makeWrapper ];
 
@@ -74,24 +66,10 @@ stdenv.mkDerivation {
       # Work around Spotify referring to a specific minor version of
       # OpenSSL.
 
-      ln -s ${nss}/lib/libnss3.so $libdir/libnss3.so.1d
-      ln -s ${nss}/lib/libnssutil3.so $libdir/libnssutil3.so.1d
-      ln -s ${nss}/lib/libsmime3.so $libdir/libsmime3.so.1d
-
-      ${if stdenv.system == "x86_64-linux" then ''
       ln -s ${openssl.out}/lib/libssl.so $libdir/libssl.so.1.0.0
       ln -s ${openssl.out}/lib/libcrypto.so $libdir/libcrypto.so.1.0.0
       ln -s ${nspr}/lib/libnspr4.so $libdir/libnspr4.so
       ln -s ${nspr}/lib/libplc4.so $libdir/libplc4.so
-      '' else ''
-      ln -s ${openssl}/lib/libssl.so $libdir/libssl.so.0.9.8
-      ln -s ${openssl}/lib/libcrypto.so $libdir/libcrypto.so.0.9.8
-      ln -s ${nspr}/lib/libnspr4.so $libdir/libnspr4.so.0d
-      ln -s ${nspr}/lib/libplc4.so $libdir/libplc4.so.0d
-      ''}
-
-      # Work around Spotify trying to open libudev.so.1 (which we don't have)
-      ln -s ${udev.libudev}/lib/libudev.so.1 $libdir/libudev.so.1
 
       mkdir -p $out/bin
 
diff --git a/pkgs/applications/audio/synthv1/default.nix b/pkgs/applications/audio/synthv1/default.nix
index 37fc45983d9..43003782f2f 100644
--- a/pkgs/applications/audio/synthv1/default.nix
+++ b/pkgs/applications/audio/synthv1/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchurl, qt4, jack2, lv2 }:
+{ stdenv, fetchurl, qt4, libjack2, lv2 }:
 
 stdenv.mkDerivation rec {
   name = "synthv1-${version}";
-  version = "0.6.1";
+  version = "0.7.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/synthv1/${name}.tar.gz";
-    sha256 = "0v9zpa49cdj8ixpppgxz95dbn62v8mamxz6fpl7sdnzfn2l8jr4g";
+    sha256 = "0asjhz0xj1kwysvsj9q54r8j8fy7cnr408ygfpdhg7yn24rv67hh";
   };
 
-  buildInputs = [ qt4 jack2 lv2 ];
+  buildInputs = [ qt4 libjack2 lv2 ];
 
   meta = with stdenv.lib; {
     description = "An old-school 4-oscillator subtractive polyphonic synthesizer with stereo fx";
@@ -18,4 +18,4 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/audio/tetraproc/default.nix b/pkgs/applications/audio/tetraproc/default.nix
new file mode 100644
index 00000000000..d450cce7b86
--- /dev/null
+++ b/pkgs/applications/audio/tetraproc/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchurl, makeWrapper
+, expat, fftwFloat, fontconfig, freetype, libjack2, jack2Full, libclthreads, libclxclient
+, libsndfile, libxcb, xorg
+}:
+
+stdenv.mkDerivation rec {
+  name = "tetraproc-${version}";
+  version = "0.8.2";
+
+  src = fetchurl {
+    url = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
+    sha256 = "17y3vbm5f6h5cmh3yfxjgqz4xhfwpkla3lqfspnbm4ndlzmfpykv";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs = [
+    expat libjack2 libclthreads libclxclient fftwFloat fontconfig libsndfile freetype
+    libxcb xorg.libX11 xorg.libXau xorg.libXdmcp xorg.libXft xorg.libXrender
+  ];
+
+  makeFlags = [
+    "PREFIX=$(out)"
+    "SUFFIX=''"
+  ];
+
+  preConfigure = ''
+    cd ./source/
+  '';
+
+  postInstall = ''
+    # Make sure Jack is avalable in $PATH for tetraproc
+    wrapProgram $out/bin/tetraproc --prefix PATH : "${jack2Full}/bin"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Converts the A-format signals from a tetrahedral Ambisonic microphone into B-format signals ready for recording";
+    homepage = http://kokkinizita.linuxaudio.org/linuxaudio/;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ magnetophon ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/tomahawk/default.nix b/pkgs/applications/audio/tomahawk/default.nix
index 6e03bcb27fc..32d5f1aa13e 100644
--- a/pkgs/applications/audio/tomahawk/default.nix
+++ b/pkgs/applications/audio/tomahawk/default.nix
@@ -15,11 +15,11 @@ let
   quazipQt4 = quazip.override { qt = qt4; };
 in stdenv.mkDerivation rec {
   name = "tomahawk-${version}";
-  version = "0.8.3";
+  version = "0.8.4";
 
   src = fetchurl {
     url = "http://download.tomahawk-player.org/${name}.tar.bz2";
-    sha256 = "0kjzkq21g3jl1lvadsm7gf0zvpbsv208kqf76wg2hnbm4k1a02wj";
+    sha256 = "0j84h36wkjfjbsd7ybyji7rcc9wpjdbl0f1xdcc1g7h0nz34pc0g";
   };
 
   cmakeFlags = [
diff --git a/pkgs/applications/audio/vimpc/default.nix b/pkgs/applications/audio/vimpc/default.nix
index 71a07f18e08..25292a4408f 100644
--- a/pkgs/applications/audio/vimpc/default.nix
+++ b/pkgs/applications/audio/vimpc/default.nix
@@ -1,34 +1,29 @@
-{ stdenv, fetchurl, autoconf, automake, mpd_clientlib, ncurses, pcre, pkgconfig, taglib }:
+{ stdenv, fetchFromGitHub, autoreconfHook, mpd_clientlib, ncurses, pcre, pkgconfig
+, taglib }:
 
 stdenv.mkDerivation rec {
   version = "0.09.0";
   name = "vimpc-${version}";
 
-  src = fetchurl {
-    url = "https://github.com/boysetsfrog/vimpc/archive/v${version}.tar.gz";
-    sha256 = "13eb229a5e9eee491765ee89f7fe6a38140a41a01434b117da3869d725c15706";
+  src = fetchFromGitHub {
+    owner = "boysetsfrog";
+    repo = "vimpc";
+    rev = "v${version}";
+    sha256 = "1z9yx2pz84lyng1ig9y4z6pdalwxb80ig7nnzhqfy3pl36hq6shi";
   };
 
-  buildInputs = [ autoconf
-                  automake
-                  mpd_clientlib
-                  ncurses
-                  pcre
-                  pkgconfig
-                  taglib
-                ];
-
-  preConfigure = "./autogen.sh";
+  buildInputs = [ autoreconfHook mpd_clientlib ncurses pcre pkgconfig taglib ];
 
   postInstall = ''
     mkdir -p $out/etc
     cp doc/vimpcrc.example $out/etc
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A vi/vim inspired client for the Music Player Daemon (mpd)";
     homepage = https://github.com/boysetsfrog/vimpc;
-    license = stdenv.lib.licenses.gpl3;
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ pSub ];
   };
 }
diff --git a/pkgs/applications/audio/vimus/default.nix b/pkgs/applications/audio/vimus/default.nix
deleted file mode 100644
index 7118f1876dc..00000000000
--- a/pkgs/applications/audio/vimus/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, c2hs, dataDefault, deepseq, filepath, hspec
-, hspecExpectations, libmpd, mtl, ncurses, QuickCheck, time
-, transformers, utf8String, wcwidth
-}:
-
-cabal.mkDerivation (self: {
-  pname = "vimus";
-  version = "0.2.0";
-  sha256 = "0s7hfyil9rnr9rmjb08g1l1sxybx3qdkw2f59p433fkdjp2m140h";
-  isLibrary = true;
-  isExecutable = true;
-  buildDepends = [
-    dataDefault deepseq filepath libmpd mtl time utf8String wcwidth
-  ];
-  testDepends = [
-    dataDefault hspec hspecExpectations mtl QuickCheck transformers
-    wcwidth
-  ];
-  buildTools = [ c2hs ];
-  extraLibraries = [ ncurses ];
-  meta = {
-    description = "An MPD client with vim-like key bindings";
-    license = self.stdenv.lib.licenses.mit;
-    platforms = self.ghc.meta.platforms;
-    maintainers = with self.stdenv.lib.maintainers; [ jzellner ];
-    broken = self.stdenv.isLinux && self.stdenv.isi686;
-  };
-})
diff --git a/pkgs/applications/audio/vmpk/default.nix b/pkgs/applications/audio/vmpk/default.nix
index 9a75fa5f383..5db7fe5afbc 100644
--- a/pkgs/applications/audio/vmpk/default.nix
+++ b/pkgs/applications/audio/vmpk/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, cmake, pkgconfig
-, qt4, jack2
+, qt4, libjack2
 }:
 
 let
@@ -22,5 +22,5 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake pkgconfig ];
 
-  buildInputs = [ qt4 jack2 ];
+  buildInputs = [ qt4 libjack2 ];
 }
diff --git a/pkgs/applications/audio/vorbis-tools/default.nix b/pkgs/applications/audio/vorbis-tools/default.nix
index e4e5b7ff81a..1f85f442354 100644
--- a/pkgs/applications/audio/vorbis-tools/default.nix
+++ b/pkgs/applications/audio/vorbis-tools/default.nix
@@ -1,6 +1,12 @@
-{stdenv, fetchurl, libogg, libvorbis, libao, pkgconfig, curl, glibc
-, speex, flac}:
+{ stdenv, fetchurl, fetchzip, libogg, libvorbis, libao, pkgconfig, curl
+, speex, flac }:
 
+let
+  debPatch = fetchzip {
+    url = "mirror://debian/pool/main/v/vorbis-tools/vorbis-tools_1.4.0-6.debian.tar.xz";
+    sha256 = "1xmmpdvxyr84lazlg23c6ck5ic97ga2rkiqabb1d98ix2zdzyqz5";
+  };
+in
 stdenv.mkDerivation {
   name = "vorbis-tools-1.4.0";
   src = fetchurl {
@@ -8,14 +14,23 @@ stdenv.mkDerivation {
     sha256 = "1g12bnh5ah08v529y72kfdz5lhvy75iaz7f9jskyby23m9dkk2d3";
   };
 
-  buildInputs = [ libogg libvorbis libao pkgconfig curl speex glibc flac ];
+  postPatch = ''
+    for patch in $(ls "${debPatch}"/patches/*.{diff,patch} | grep -v debian_subdir)
+    do patch -p1 < "$patch"
+    done
+  '';
+
+  buildInputs = [ libogg libvorbis libao pkgconfig curl speex flac ];
 
-  meta = {
+  meta = with stdenv.lib; {
+    description = "Extra tools for Ogg-Vorbis audio codec";
     longDescription = ''
       A set of command-line tools to manipulate Ogg Vorbis audio
       files, notably the `ogg123' player and the `oggenc' encoder.
     '';
     homepage = http://xiph.org/vorbis/;
-    license = stdenv.lib.licenses.gpl2;
+    license = licenses.gpl2;
+    platforms = platforms.all;
   };
 }
+
diff --git a/pkgs/applications/audio/wavegain/default.nix b/pkgs/applications/audio/wavegain/default.nix
new file mode 100644
index 00000000000..5f56fb7297f
--- /dev/null
+++ b/pkgs/applications/audio/wavegain/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation {
+  name = "wavegain-1.3.1";
+  src = fetchFromGitHub {
+    owner = "MestreLion";
+    repo = "wavegain";
+    rev = "c928eaf97aeec5732625491b64c882e08e314fee";
+    sha256 = "0wghqnsbypmr4xcrhb568bfjdnxzzp8qgnws3jslzmzf34dpk5ls";
+  };
+
+  installPhase = ''
+    strip -s wavegain
+    install -vD wavegain "$out/bin/wavegain"
+  '';
+
+  meta = {
+    description = "ReplayGain for wave files";
+    homepage = https://github.com/MestreLion/wavegain;
+    license = stdenv.lib.licenses.lgpl21;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.robbinch ];
+  };
+}
diff --git a/pkgs/applications/audio/x42-plugins/default.nix b/pkgs/applications/audio/x42-plugins/default.nix
new file mode 100644
index 00000000000..1090ee4a61e
--- /dev/null
+++ b/pkgs/applications/audio/x42-plugins/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, fetchgit, ftgl, freefont_ttf, libjack2, mesa_glu, pkgconfig
+, libltc, libsndfile, libsamplerate
+, lv2, mesa, gtk2, cairo, pango, fftwFloat, zita-convolver }:
+
+stdenv.mkDerivation rec {
+  version = "2015-07-02";
+  name = "x42-plugins-${version}";
+
+  src = fetchurl {
+    url = "http://gareus.org/misc/x42-plugins/x42-plugins-20150702.tar.xz";
+    sha256 = "1mq0grabzbl9xsd53v2qajhr8nngk0d4lx9n0n3nwy95y2gmy6sm";
+  };
+
+  buildInputs = [ mesa_glu ftgl freefont_ttf libjack2 libltc libsndfile libsamplerate lv2 mesa gtk2 cairo pango fftwFloat pkgconfig  zita-convolver];
+
+  makeFlags = [ "PREFIX=$(out)" "FONTFILE=${freefont_ttf}/share/fonts/truetype/FreeSansBold.ttf" "LIBZITACONVOLVER=${zita-convolver}/include/zita-convolver.h" ];
+
+  meta = with stdenv.lib;
+    { description = "Collection of LV2 plugins by Robin Gareus";
+      homepage = https://github.com/x42/x42-plugins;
+      maintainers = with maintainers; [ magnetophon ];
+      license = licenses.gpl2;
+      platforms = platforms.linux;
+    };
+}
diff --git a/pkgs/applications/audio/xsynth-dssi/default.nix b/pkgs/applications/audio/xsynth-dssi/default.nix
index 85e7235400b..c4ed20defd6 100644
--- a/pkgs/applications/audio/xsynth-dssi/default.nix
+++ b/pkgs/applications/audio/xsynth-dssi/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, alsaLib, autoconf, automake, dssi, gtk, jack2,
+{ stdenv, fetchurl, alsaLib, autoconf, automake, dssi, gtk, libjack2,
 ladspaH, ladspaPlugins, liblo, pkgconfig }:
 
 stdenv.mkDerivation  rec {
@@ -10,7 +10,7 @@ stdenv.mkDerivation  rec {
     sha256 = "00nwv2pqjbmxqdc6xdm0cljq6z05lv4y6bibmhz1kih9lm0lklnk";
   };
 
-  buildInputs = [ alsaLib autoconf automake dssi gtk jack2 ladspaH
+  buildInputs = [ alsaLib autoconf automake dssi gtk libjack2 ladspaH
     ladspaPlugins liblo pkgconfig ];
 
   installPhase = ''
diff --git a/pkgs/applications/audio/yoshimi/default.nix b/pkgs/applications/audio/yoshimi/default.nix
index 99621c90bcc..3233456a7ab 100644
--- a/pkgs/applications/audio/yoshimi/default.nix
+++ b/pkgs/applications/audio/yoshimi/default.nix
@@ -1,20 +1,20 @@
 { stdenv, fetchurl, alsaLib, boost, cairo, cmake, fftwSinglePrec, fltk
-, jack2, libsndfile, lv2, mesa, minixml, pkgconfig, zlib, xorg
+, libjack2, libsndfile, lv2, mesa, minixml, pkgconfig, zlib, xorg
 }:
 
 assert stdenv ? glibc;
 
 stdenv.mkDerivation  rec {
   name = "yoshimi-${version}";
-  version = "1.3.4";
+  version = "1.3.5.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/yoshimi/${name}.tar.bz2";
-    sha256 = "0vfk90jwn3r21703yizrfc4bmiz70fh8kd8w892s14d3k0kvhcwv";
+    sha256 = "001xvwknsm1sv5lvwz7f6dgf57b8djbpwbyk2gfxjy9rzl5q53qr";
   };
 
   buildInputs = [
-    alsaLib boost cairo fftwSinglePrec fltk jack2 libsndfile lv2 mesa
+    alsaLib boost cairo fftwSinglePrec fltk libjack2 libsndfile lv2 mesa
     minixml zlib xorg.libpthreadstubs
   ];
 
diff --git a/pkgs/applications/audio/zam-plugins/default.nix b/pkgs/applications/audio/zam-plugins/default.nix
new file mode 100644
index 00000000000..1ac7921119a
--- /dev/null
+++ b/pkgs/applications/audio/zam-plugins/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, boost, libX11, mesa, liblo, libjack2, ladspaH, lv2, pkgconfig, rubberband, libsndfile }:
+
+stdenv.mkDerivation rec {
+  name = "zam-plugins-${version}";
+  version = "3.5";
+
+  src = fetchurl {
+    url = "https://github.com/zamaudio/zam-plugins/archive/${version}.tar.gz";
+    sha256 = "0icdrs4vaaj8gqi76jkkx5yk9h3agipa11cyb5h52y814q6mx6vm";
+  };
+
+  buildInputs = [ boost libX11 mesa liblo libjack2 ladspaH lv2 pkgconfig rubberband libsndfile ];
+
+  patchPhase = ''
+    patchShebangs ./libs/generate-ttl.sh
+  '';
+
+  makeFlags = [
+    "PREFIX=$(out)"
+  ];
+
+  meta = with stdenv.lib; {
+    homepage = http://www.zamaudio.com/?p=976;
+    description = "A collection of LV2/LADSPA/VST/JACK audio plugins by ZamAudio";
+    license = licenses.gpl2Plus;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/zynaddsubfx/default.nix b/pkgs/applications/audio/zynaddsubfx/default.nix
index 3a89b406742..ec8971d319f 100644
--- a/pkgs/applications/audio/zynaddsubfx/default.nix
+++ b/pkgs/applications/audio/zynaddsubfx/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, alsaLib, cmake, jack2, fftw, fltk13, libjpeg
+{ stdenv, fetchurl, alsaLib, cmake, libjack2, fftw, fltk13, libjpeg
 , minixml, pkgconfig, zlib
 }:
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation  rec {
     sha256 = "15byz08p5maf3v8l1zz11xan6s0qcfasjf1b81xc8rffh13x5f53";
   };
 
-  buildInputs = [ alsaLib jack2 fftw fltk13 libjpeg minixml zlib ];
+  buildInputs = [ alsaLib libjack2 fftw fltk13 libjpeg minixml zlib ];
   nativeBuildInputs = [ cmake pkgconfig ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/display-managers/lightdm-gtk-greeter/default.nix b/pkgs/applications/display-managers/lightdm-gtk-greeter/default.nix
index 2ae6b2aeb26..ea80957afb0 100644
--- a/pkgs/applications/display-managers/lightdm-gtk-greeter/default.nix
+++ b/pkgs/applications/display-managers/lightdm-gtk-greeter/default.nix
@@ -8,14 +8,14 @@
 
 let
   ver_branch = "2.0";
-  version = "2.0.0";
+  version = "2.0.1";
 in
 stdenv.mkDerivation rec {
   name = "lightdm-gtk-greeter-${version}";
 
   src = fetchurl {
     url = "${meta.homepage}/${ver_branch}/${version}/+download/${name}.tar.gz";
-    sha256 = "1134q8qd7gr34jkivqxckdnwbpa8pl7dhjpdi9fci0pcs4hh22jc";
+    sha256 = "031iv7zrpv27zsvahvfyrm75zdrh7591db56q89k8cjiiy600r1j";
   };
 
   buildInputs = [ pkgconfig lightdm intltool makeWrapper ]
diff --git a/pkgs/applications/display-managers/lightdm/default.nix b/pkgs/applications/display-managers/lightdm/default.nix
index 79163945c0c..dc50ced1a60 100644
--- a/pkgs/applications/display-managers/lightdm/default.nix
+++ b/pkgs/applications/display-managers/lightdm/default.nix
@@ -1,31 +1,34 @@
 { stdenv, fetchurl, pam, pkgconfig, libxcb, glib, libXdmcp, itstool, libxml2
-, intltool, x11, libxklavier, libgcrypt
-, qt4 ? null, qt5 ? null
+, intltool, xlibsWrapper, libxklavier, libgcrypt, libaudit
+, qt4 ? null
+, withQt5 ? false, qtbase
 }:
 
 let
-  ver_branch = "1.14";
-  version = "1.14.0";
+  ver_branch = "1.16";
+  version = "1.16.2";
 in
 stdenv.mkDerivation rec {
   name = "lightdm-${version}";
 
   src = fetchurl {
     url = "${meta.homepage}/${ver_branch}/${version}/+download/${name}.tar.xz";
-    sha256 = "0fkbzqncx34dhylrg5328fih7xywmsqj2p40smnx33nyf047jdgc";
+    sha256 = "062jj21bjrl29mk66lpihwhrff038h2wny3p6b5asacf2mklf0hq";
   };
 
+  patches = [ ./fix-paths.patch ];
+
   buildInputs = [
     pkgconfig pam libxcb glib libXdmcp itstool libxml2 intltool libxklavier libgcrypt
-    qt4 qt5
-  ];
+    qt4 libaudit
+  ] ++ stdenv.lib.optional withQt5 qtbase;
 
   configureFlags = [
-    "--enable-liblightdm-gobject"
     "--localstatedir=/var"
     "--sysconfdir=/etc"
+    "--disable-tests"
   ] ++ stdenv.lib.optional (qt4 != null) "--enable-liblightdm-qt"
-    ++ stdenv.lib.optional (qt5 != null) "--enable-liblightdm-qt5";
+    ++ stdenv.lib.optional withQt5 "--enable-liblightdm-qt5";
 
   installFlags = [
     "sysconfdir=\${out}/etc"
@@ -33,7 +36,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://launchpad.net/lightdm;
+    homepage = https://launchpad.net/lightdm;
     platforms = platforms.linux;
     license = licenses.gpl3;
     maintainers = with maintainers; [ ocharles wkennington ];
diff --git a/pkgs/applications/display-managers/lightdm/fix-paths.patch b/pkgs/applications/display-managers/lightdm/fix-paths.patch
new file mode 100644
index 00000000000..56930418cac
--- /dev/null
+++ b/pkgs/applications/display-managers/lightdm/fix-paths.patch
@@ -0,0 +1,61 @@
+diff --git a/common/user-list.c b/common/user-list.c
+index 792c6d3..57fbfb7 100644
+--- a/common/user-list.c
++++ b/common/user-list.c
+@@ -331,7 +331,7 @@ load_passwd_file (CommonUserList *user_list, gboolean emit_add_signal)
+ 
+     value = g_key_file_get_string (config, "UserList", "hidden-shells", NULL);
+     if (!value)
+-        value = g_strdup ("/bin/false /usr/sbin/nologin");
++        value = g_strdup ("/run/current-system/sw/bin/nologin");
+     hidden_shells = g_strsplit (value, " ", -1);
+     g_free (value);
+ 
+diff --git a/src/seat.c b/src/seat.c
+index f9b149d..9029742 100644
+--- a/src/seat.c
++++ b/src/seat.c
+@@ -343,7 +343,7 @@ run_script (Seat *seat, DisplayServer *display_server, const gchar *script_name,
+ 
+     /* Set POSIX variables */
+     process_set_clear_environment (script, TRUE);
+-    process_set_env (script, "SHELL", "/bin/sh");
++    process_set_env (script, "SHELL", "/run/current-system/sw/bin/sh");
+ 
+     /* Variables required for regression tests */
+     if (g_getenv ("LIGHTDM_TEST_ROOT"))
+@@ -354,7 +354,7 @@ run_script (Seat *seat, DisplayServer *display_server, const gchar *script_name,
+         process_set_env (script, "PATH", g_getenv ("PATH"));
+     }
+     else
+-        process_set_env (script, "PATH", "/usr/local/bin:/usr/bin:/bin");
++        process_set_env (script, "PATH", "/run/current-system/sw/bin");
+ 
+     if (user)
+     {
+diff --git a/src/session-child.c b/src/session-child.c
+index e85f57d..93db0bd 100644
+--- a/src/session-child.c
++++ b/src/session-child.c
+@@ -410,7 +410,7 @@ session_child_run (int argc, char **argv)
+         else
+         {
+             /* Set POSIX variables */
+-            pam_putenv (pam_handle, "PATH=/usr/local/bin:/usr/bin:/bin");
++            pam_putenv (pam_handle, "PATH=/run/current-system/sw/bin");
+             pam_putenv (pam_handle, g_strdup_printf ("USER=%s", username));
+             pam_putenv (pam_handle, g_strdup_printf ("LOGNAME=%s", username));
+             pam_putenv (pam_handle, g_strdup_printf ("HOME=%s", user_get_home_directory (user)));
+diff --git a/src/shared-data-manager.c b/src/shared-data-manager.c
+index 47f1c10..cc82652 100644
+--- a/src/shared-data-manager.c
++++ b/src/shared-data-manager.c
+@@ -68,7 +68,7 @@ delete_unused_user (gpointer key, gpointer value, gpointer user_data)
+ 
+     gchar *path = g_build_filename (USERS_DIR, user, NULL);
+     gchar *quoted_path = g_shell_quote (path);
+-    gchar *cmd = g_strdup_printf ("/bin/rm -rf %s", quoted_path);
++    gchar *cmd = g_strdup_printf ("/run/current-system/sw/bin/rm -rf %s", quoted_path);
+ 
+     g_spawn_command_line_async (cmd, &error);
+     if (error)
diff --git a/pkgs/applications/display-managers/sddm/default.nix b/pkgs/applications/display-managers/sddm/default.nix
index 73a188af0cf..82cd8bd3091 100644
--- a/pkgs/applications/display-managers/sddm/default.nix
+++ b/pkgs/applications/display-managers/sddm/default.nix
@@ -1,5 +1,7 @@
-{ stdenv, fetchpatch, makeWrapper, fetchFromGitHub, cmake, pkgconfig, libxcb, libpthreadstubs
-, libXdmcp, libXau, qt5, pam, systemd }:
+{ stdenv, fetchpatch, fetchFromGitHub, cmake, pkgconfig, libxcb
+, libpthreadstubs, libXdmcp, libXau, qtbase, qtdeclarative, qttools, pam
+, systemd
+}:
 
 let
   version = "0.11.0";
@@ -14,9 +16,9 @@ stdenv.mkDerivation rec {
     sha256 = "1s1gm0xvgwzrpxgni3ngdj8phzg21gkk1jyiv2l2i5ayl0jdm7ig";
   };
 
-  nativeBuildInputs = [ cmake pkgconfig qt5.tools makeWrapper ];
+  nativeBuildInputs = [ cmake pkgconfig qttools ];
 
-  buildInputs = [ libxcb libpthreadstubs libXdmcp libXau qt5.base pam systemd ];
+  buildInputs = [ libxcb libpthreadstubs libXdmcp libXau qtbase qtdeclarative pam systemd ];
 
   patches = [ (fetchpatch {
                 url = "https://github.com/sddm/sddm/commit/9bc21ee7da5de6b2531d47d1af4d7b0a169990b9.patch";
@@ -32,15 +34,15 @@ stdenv.mkDerivation rec {
   '';
 
   postInstall = ''
-    wrapProgram $out/bin/sddm-greeter \
-      --set QML2_IMPORT_PATH "${qt5.declarative}/lib/qt5/qml/"
+    wrapQtProgram $out/bin/sddm
+    wrapQtProgram $out/bin/sddm-greeter
   '';
 
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
     description = "QML based X11 display manager";
-    homepage = http://launchpad.net/lightdm;
+    homepage = https://github.com/sddm/sddm;
     platforms = platforms.linux;
     maintainers = with maintainers; [ abbradar ];
   };
diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix
index a3cdbb6afb9..9bcad5b7649 100644
--- a/pkgs/applications/editors/atom/default.nix
+++ b/pkgs/applications/editors/atom/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, buildEnv, makeDesktopItem, makeWrapper, zlib, glib, alsaLib
 , dbus, gtk, atk, pango, freetype, fontconfig, libgnome_keyring3, gdk_pixbuf
-, cairo, cups, expat, libgpgerror, nspr, gconf, nss, xlibs, libcap
+, cairo, cups, expat, libgpgerror, nspr, gconf, nss, xorg, libcap, systemd
 }:
 
 let
@@ -9,18 +9,18 @@ let
     paths = [
       stdenv.cc.cc zlib glib dbus gtk atk pango freetype libgnome_keyring3
       fontconfig gdk_pixbuf cairo cups expat libgpgerror alsaLib nspr gconf nss
-      xlibs.libXrender xlibs.libX11 xlibs.libXext xlibs.libXdamage xlibs.libXtst
-      xlibs.libXcomposite xlibs.libXi xlibs.libXfixes xlibs.libXrandr
-      xlibs.libXcursor libcap
+      xorg.libXrender xorg.libX11 xorg.libXext xorg.libXdamage xorg.libXtst
+      xorg.libXcomposite xorg.libXi xorg.libXfixes xorg.libXrandr
+      xorg.libXcursor libcap systemd
     ];
   };
 in stdenv.mkDerivation rec {
   name = "atom-${version}";
-  version = "0.187.0";
+  version = "1.0.4";
 
   src = fetchurl {
     url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
-    sha256 = "0s6173dg5m52zc8kqwlgjn113d84cskrv9v29fb0nrvwvkv2xzmw";
+    sha256 = "0jki2ca12mazvszy05xc7zy8nfpavl0rnzcyksvvic32l3w2yxj7";
     name = "${name}.deb";
   };
 
@@ -31,7 +31,10 @@ in stdenv.mkDerivation rec {
   installPhase = ''
     mkdir -p $out
     ar p $src data.tar.gz | tar -C $out -xz ./usr
+    substituteInPlace $out/usr/share/applications/atom.desktop \
+      --replace /usr/share/atom $out/bin
     mv $out/usr/* $out/
+    rm -r $out/share/lintian
     rm -r $out/usr/
     patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
       $out/share/atom/atom
@@ -46,7 +49,7 @@ in stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A hackable text editor for the 21st Century";
     homepage = https://atom.io/;
-    license = [ licenses.mit ];
+    license = licenses.mit;
     maintainers = [ maintainers.offline ];
     platforms = [ "x86_64-linux" ];
   };
diff --git a/pkgs/applications/editors/bviplus/default.nix b/pkgs/applications/editors/bviplus/default.nix
new file mode 100644
index 00000000000..0a8d7081b23
--- /dev/null
+++ b/pkgs/applications/editors/bviplus/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, lib, fetchurl, ncurses }:
+
+stdenv.mkDerivation rec {
+  name = "bviplus-${version}";
+  version = "0.9.4";
+  src = fetchurl {
+    url = "http://downloads.sourceforge.net/project/bviplus/bviplus/${version}/bviplus-${version}.tgz";
+    sha256 = "10x6fbn8v6i0y0m40ja30pwpyqksnn8k2vqd290vxxlvlhzah4zb";
+  };
+  buildInputs = [
+    ncurses
+  ];
+  makeFlags = "PREFIX=$(out)";
+  meta = with lib; {
+    description = "ncurses based hex editor with a vim-like interface";
+    homepage = "http://bviplus.sourceforge.net";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ cstrahan ];
+  };
+}
diff --git a/pkgs/applications/editors/codeblocks/default.nix b/pkgs/applications/editors/codeblocks/default.nix
index f209a5223c8..76df6d4d2b9 100644
--- a/pkgs/applications/editors/codeblocks/default.nix
+++ b/pkgs/applications/editors/codeblocks/default.nix
@@ -23,6 +23,10 @@ stdenv.mkDerivation rec {
   configureFlags = [ "--enable-pch=no" ]
     ++ optional contribPlugins "--with-contrib-plugins";
 
+  # Fix boost 1.59 compat
+  # Try removing in the next version
+  CPPFLAGS = "-DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED";
+
   meta = with stdenv.lib; {
     maintainers = [ maintainers.linquize ];
     platforms = platforms.all;
diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix
index 89ea3a1e5f9..854d4d521a2 100644
--- a/pkgs/applications/editors/eclipse/default.nix
+++ b/pkgs/applications/editors/eclipse/default.nix
@@ -2,6 +2,8 @@
 , freetype, fontconfig, libX11, libXext, libXrender, zlib
 , glib, gtk, libXtst, jre
 , webkitgtk2 ? null  # for internal web browser
+, buildEnv, writeText, runCommand
+, callPackage
 }:
 
 assert stdenv ? glibc;
@@ -70,12 +72,12 @@ in {
     src =
       if stdenv.system == "x86_64-linux" then
         fetchurl {
-          url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.5.2-201002111343/eclipse-SDK-3.5.2-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.5.2-201002111343/eclipse-SDK-3.5.2-linux-gtk-x86_64.tar.gz;
           md5 = "54e2ce0660b2b1b0eb4267acf70ea66d";
         }
       else
         fetchurl {
-          url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.5.2-201002111343/eclipse-SDK-3.5.2-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.5.2-201002111343/eclipse-SDK-3.5.2-linux-gtk.tar.gz;
           md5 = "bde55a2354dc224cf5f26e5320e72dac";
         };
   };
@@ -88,12 +90,12 @@ in {
     src =
       if stdenv.system == "x86_64-linux" then
         fetchurl {
-          url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.6.2-201102101200/eclipse-SDK-3.6.2-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.6.2-201102101200/eclipse-SDK-3.6.2-linux-gtk-x86_64.tar.gz;
           sha256 = "0dfcfadcd6337c897fbfd5b292de481931dfce12d43289ecb93691fd27dd47f4";
         }
       else
         fetchurl {
-          url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.6.2-201102101200/eclipse-SDK-3.6.2-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.6.2-201102101200/eclipse-SDK-3.6.2-linux-gtk.tar.gz;
           sha256 = "1bh8ykliqr8wbciv13vpiy50rvm7yszk7y8dslr796dbwhi5b1cj";
         };
   };
@@ -120,12 +122,12 @@ in {
     src =
       if stdenv.system == "x86_64-linux" then
         fetchurl {
-          url = http://eclipse.ialto.com/technology/epp/downloads/release/helios/SR2/eclipse-cpp-helios-SR2-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-cpp-helios-SR2-linux-gtk-x86_64.tar.gz;
           sha1 = "6f914e11fa15a900c46825e4aa8299afd76e7e65";
         }
       else
         fetchurl {
-          url = http://eclipse.ialto.com/technology/epp/downloads/release/helios/SR2/eclipse-cpp-helios-SR2-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-cpp-helios-SR2-linux-gtk.tar.gz;
           sha1 = "1156e4bc0253ae3a3a4e54839e4944dc64d3108f";
         };
   };
@@ -136,12 +138,12 @@ in {
     src =
       if stdenv.system == "x86_64-linux" then
         fetchurl {
-          url = http://ftp-stud.fht-esslingen.de/pub/Mirrors/eclipse/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk-x86_64.tar.gz;
           sha1 = "e96f5f006298f68476f4a15a2be8589158d5cc61";
         }
       else
         fetchurl {
-          url = http://ftp-stud.fht-esslingen.de/pub/Mirrors/eclipse/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk.tar.gz;
           sha1 = "696377895bb26445de39d82a916b7e69edb1d939";
         };
   };
@@ -151,11 +153,11 @@ in {
     description = "Eclipse Classic";
     sources = {
       "x86_64-linux" = fetchurl {
-          url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk-x86_64.tar.gz;
           sha256 = "0nf4nv7awhp1k8b1hjb7chpjyjrqnyszsjbc4dlk9phpjv3j4wg5";
         };
       "i686-linux" = fetchurl {
-          url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk.tar.gz;
           sha256 = "1isn7i45l9kyn2yx6vm88jl1gnxph8ynank0aaa218cg8kdygk7j";
         };
     };
@@ -167,12 +169,12 @@ in {
     src =
       if stdenv.system == "x86_64-linux" then
         fetchurl {
-          url = http://eclipse.ialto.com/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk-x86_64.tar.gz;
           sha256 = "14ppc9g9igzvj1pq7jl01vwhzb66nmzbl9wsdl1sf3xnwa9wnqk3";
         }
       else
         fetchurl {
-          url = http://eclipse.ialto.com/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk.tar.gz;
           sha256 = "1cvg1vgyazrkinwzlvlf0dpl197p4784752srqybqylyj5psdi3b";
         };
   };
@@ -183,12 +185,12 @@ in {
     src =
       if stdenv.system == "x86_64-linux" then
         fetchurl {
-          url = http://eclipse.ialto.com/technology/epp/downloads/release/juno/SR2/eclipse-cpp-juno-SR2-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/juno/SR2/eclipse-cpp-juno-SR2-linux-gtk-x86_64.tar.gz;
           sha256 = "1qq04926pf7v9sf3s0z53zvlbl1j0rmmjmbmhqi49473fnjikh7y";
         }
       else
         fetchurl {
-          url = http://eclipse.ialto.com/technology/epp/downloads/release/juno/SR2/eclipse-cpp-juno-SR2-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/juno/SR2/eclipse-cpp-juno-SR2-linux-gtk.tar.gz;
           sha256 = "1a4s9qlhfpfpdhvffyglnfdr3dq5r2ywcxqywhqi95yhq5nmsgyk";
         };
   };
@@ -199,12 +201,12 @@ in {
     src =
       if stdenv.system == "x86_64-linux" then
         fetchurl {
-          url = http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/kepler/SR2/eclipse-cpp-kepler-SR2-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/kepler/SR2/eclipse-cpp-kepler-SR2-linux-gtk-x86_64.tar.gz;
           sha256 = "16zhjm6bx78263b1clg75kfiliahkhwg0k116vp9fj039nlpc30l";
         }
       else
         fetchurl {
-          url = http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/kepler/SR2/eclipse-cpp-kepler-SR2-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/kepler/SR2/eclipse-cpp-kepler-SR2-linux-gtk.tar.gz;
           sha256 = "0d6jlj7hwz8blx6csrlyi2h2prql0wckbh7ihwjmgclwpcpj84g6";
         };
   };
@@ -215,16 +217,32 @@ in {
     src =
       if stdenv.system == "x86_64-linux" then
         fetchurl {
-          url = http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/luna/R/eclipse-cpp-luna-R-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/luna/R/eclipse-cpp-luna-R-linux-gtk-x86_64.tar.gz;
           md5 = "b0a6ee33e8108a7ff4682ab911271b04";
         }
       else
         fetchurl {
-          url = http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/luna/R/eclipse-cpp-luna-R-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/luna/R/eclipse-cpp-luna-R-linux-gtk.tar.gz;
           md5 = "5000f93cecf6ef9af112f0df6e8c87f3";
         };
   };
 
+  eclipse_cpp_45 = buildEclipse {
+    name = "eclipse-cpp-4.5";
+    description = "Eclipse IDE for C/C++ Developers, Mars release";
+    src =
+      if stdenv.system == "x86_64-linux" then
+        fetchurl {
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/mars/R/eclipse-cpp-mars-R-linux-gtk-x86_64.tar.gz;
+          sha1 = "11f9583e23ae68eb675107e6c9acc48e0a2520ae";
+        }
+      else if stdenv.system == "i686-linux" then
+        fetchurl {
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/mars/R/eclipse-cpp-mars-R-linux-gtk.tar.gz;
+          sha1 = "45dddb8c8f2ec79b7e25cc13d93785863ffe4791";
+        }
+      else throw "Unsupported system: ${stdenv.system}";
+  };
 
   eclipse_sdk_421 = buildEclipse {
     name = "eclipse-sdk-4.2.1";
@@ -232,12 +250,12 @@ in {
     src =
       if stdenv.system == "x86_64-linux" then
         fetchurl {
-          url = http://archive.eclipse.org/eclipse/downloads/drops4/R-4.2.1-201209141800/eclipse-SDK-4.2.1-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.2.1-201209141800/eclipse-SDK-4.2.1-linux-gtk-x86_64.tar.gz;
           sha256 = "1mlyy90lk08lb2971ynglgi3nqvqfq1k70md2kb39jk160wd1xrk";
         }
       else
         fetchurl {
-          url = http://archive.eclipse.org/eclipse/downloads/drops4/R-4.2.1-201209141800/eclipse-SDK-4.2.1-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.2.1-201209141800/eclipse-SDK-4.2.1-linux-gtk.tar.gz;
           sha256 = "1av6qm9wkbyk123qqf38f0jq4jv2bj9wp6fmpnl55zg6qr463c1w";
         };
     };
@@ -247,11 +265,11 @@ in {
     description = "Eclipse Classic";
     sources = {
       "x86_64-linux" = fetchurl {
-          url = http://ftp-stud.fht-esslingen.de/pub/Mirrors/eclipse/eclipse/downloads/drops4/R-4.2.2-201302041200/eclipse-SDK-4.2.2-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.2.2-201302041200/eclipse-SDK-4.2.2-linux-gtk-x86_64.tar.gz;
           sha256 = "0ysa6ymk4h3k1vn59dc909iy197kmx132671kbzfwbim87jmgnqb";
         };
       "i686-linux" = fetchurl {
-          url = http://ftp-stud.fht-esslingen.de/pub/Mirrors/eclipse/eclipse/downloads/drops4/R-4.2.2-201302041200/eclipse-SDK-4.2.2-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.2.2-201302041200/eclipse-SDK-4.2.2-linux-gtk.tar.gz;
           sha256 = "038yibbrcia38wi72qrdl03g7l35mpvl5nxdfdnvpqxrkfffb826";
         };
     };
@@ -262,11 +280,11 @@ in {
     description = "Eclipse Classic";
     sources = {
       "x86_64-linux" = fetchurl {
-          url = http://archive.eclipse.org/eclipse/downloads/drops4/R-4.3.1-201309111000/eclipse-SDK-4.3.1-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.3.1-201309111000/eclipse-SDK-4.3.1-linux-gtk-x86_64.tar.gz;
           sha256 = "0ncm56ylwxw9z8rk8ccgva68c2yr9yrf1kcr1zkgw6p87xh1yczd";
         };
       "i686-linux" = fetchurl {
-          url = http://archive.eclipse.org/eclipse/downloads/drops4/R-4.3.1-201309111000/eclipse-SDK-4.3.1-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.3.1-201309111000/eclipse-SDK-4.3.1-linux-gtk.tar.gz;
           sha256 = "1zxsh838khny7mvl01h28xna6xdh01yi4mvls28zj22v0340lgsg";
         };
     };
@@ -277,11 +295,11 @@ in {
     description = "Eclipse Classic";
     sources = {
       "x86_64-linux" = fetchurl {
-          url = http://archive.eclipse.org/eclipse/downloads/drops4/R-4.4-201406061215/eclipse-SDK-4.4-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.4-201406061215/eclipse-SDK-4.4-linux-gtk-x86_64.tar.gz;
           sha256 = "14hdkijsjq0hhzi9ijpwjjkhz7wm0pry86l3dniy5snlh3l5bsb2";
         };
       "i686-linux" = fetchurl {
-          url = http://archive.eclipse.org/eclipse/downloads/drops4/R-4.4-201406061215/eclipse-SDK-4.4-linux-gtk.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.4-201406061215/eclipse-SDK-4.4-linux-gtk.tar.gz;
           sha256 = "0hjc4zrsmik6vff851p0a4ydnx99840j2xrx8348kk6h0af8vx6z";
         };
     };
@@ -292,14 +310,84 @@ in {
     description = "Eclipse Classic";
     sources = {
       "x86_64-linux" = fetchurl {
-          url = http://download.eclipse.org/eclipse/downloads/drops4/R-4.4.2-201502041700/eclipse-SDK-4.4.2-linux-gtk-x86_64.tar.gz;
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.4.2-201502041700/eclipse-SDK-4.4.2-linux-gtk-x86_64.tar.gz;
           sha256 = "0g00alsixfaakmn4khr0m9fxvkrbhbg6qqfa27xr6a9np6gzg98l";
 
         };
       "i686-linux" = fetchurl {
-          url = http://download.eclipse.org/eclipse/downloads/drops4/R-4.4.2-201502041700/eclipse-SDK-4.4.2-linux-gtk.tar.gz;
-          sha256 = "9f4238ce9f887a1a57bbc6c6898e43357d14a6d74f59385327813c5e82aa735d";
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.4.2-201502041700/eclipse-SDK-4.4.2-linux-gtk.tar.gz;
+          sha256 = "1hacyjjwhhxi7r3xyhpqgjqpd5r0irw9bfkalz5s5l6shb0lq4i7";
         };
     };
   };
+
+  eclipse_sdk_45 = buildEclipse {
+    name = "eclipse-sdk-4.5";
+    description = "Eclipse Mars Classic";
+    sources = {
+      "x86_64-linux" = fetchurl {
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.5-201506032000/eclipse-SDK-4.5-linux-gtk-x86_64.tar.gz;
+          sha256 = "0vfql4gh263ms8bg7sgn05gnjajplx304cn3nr03jlacgr3pkarf";
+
+        };
+      "i686-linux" = fetchurl {
+          url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.5-201506032000/eclipse-SDK-4.5-linux-gtk.tar.gz;
+          sha256 = "0xv66l6hdlvxpswcqrsh398wg6xhy30f833dr7jvvz45s5437hm3";
+        };
+    };
+  };
+
+  eclipse-platform = buildEclipse {
+    name = "eclipse-platform-4.5";
+    description = "Eclipse platform";
+    sources = {
+      "x86_64-linux" = fetchurl {
+          url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.5-201506032000/eclipse-platform-4.5-linux-gtk-x86_64.tar.gz";
+          sha256 = "1510j41yr86pbzwf48kjjdd46nkpkh8zwn0hna0cqvsw1gk2vqcg";
+
+        };
+      "i686-linux" = fetchurl {
+          url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.5-201506032000/eclipse-platform-4.5-linux-gtk.tar.gz";
+          sha256 = "1f97jd3qbi3830y3djk8bhwzd9whsq8gzfdk996chxc55prn0qbd";
+        };
+    };
+  };
+
+  eclipseWithPlugins = { eclipse, plugins ? [], jvmArgs ? [] }:
+    let
+      # Gather up the desired plugins.
+      pluginEnv = buildEnv {
+        name = "eclipse-plugins";
+        paths =
+          with stdenv.lib;
+            filter (x: x ? isEclipsePlugin) (closePropagation plugins);
+      };
+
+      # Prepare the JVM arguments to add to the ini file. We here also
+      # add the property indicating the plugin directory.
+      dropinPropName = "org.eclipse.equinox.p2.reconciler.dropins.directory";
+      dropinProp = "-D${dropinPropName}=${pluginEnv}/eclipse/dropins";
+      jvmArgsText = stdenv.lib.concatStringsSep "\n" (jvmArgs ++ [dropinProp]);
+
+      # Prepare an eclipse.ini with the plugin directory.
+      origEclipseIni = builtins.readFile "${eclipse}/eclipse/eclipse.ini";
+      eclipseIniFile = writeText "eclipse.ini" ''
+        ${origEclipseIni}
+        ${jvmArgsText}
+      '';
+
+      # Base the derivation name on the name of the underlying
+      # Eclipse.
+      name = (stdenv.lib.meta.appendToName "with-plugins" eclipse).name;
+    in
+      runCommand name { buildInputs = [ makeWrapper ]; } ''
+        mkdir -p $out/bin
+        makeWrapper ${eclipse}/bin/eclipse $out/bin/eclipse \
+          --add-flags "--launcher.ini ${eclipseIniFile}"
+
+        ln -s ${eclipse}/share $out/
+      '';
+
+  plugins = callPackage ./plugins.nix { };
+
 }
diff --git a/pkgs/applications/editors/eclipse/plugins.nix b/pkgs/applications/editors/eclipse/plugins.nix
new file mode 100644
index 00000000000..b80d63f69d3
--- /dev/null
+++ b/pkgs/applications/editors/eclipse/plugins.nix
@@ -0,0 +1,359 @@
+{ stdenv, fetchurl, fetchzip, unzip }:
+
+rec {
+
+  # A primitive builder of Eclipse plugins. This function is intended
+  # to be used when building more advanced builders.
+  buildEclipsePluginBase =  { name
+                            , buildInputs ? []
+                            , passthru ? {}
+                            , ... } @ attrs:
+    stdenv.mkDerivation (attrs // {
+      name = "eclipse-plugin-" + name;
+
+      buildInputs = buildInputs ++ [ unzip ];
+
+      passthru = {
+        isEclipsePlugin = true;
+      } // passthru;
+    });
+
+  # Helper for the common case where we have separate feature and
+  # plugin JARs.
+  buildEclipsePlugin = { name, srcFeature, srcPlugin, ... } @ attrs:
+    buildEclipsePluginBase (attrs // {
+      srcs = [ srcFeature srcPlugin ];
+
+      phases = [ "installPhase" ];
+
+      installPhase = ''
+        dropinDir="$out/eclipse/dropins/${name}"
+
+        mkdir -p $dropinDir/features
+        unzip ${srcFeature} -d $dropinDir/features/
+
+        mkdir -p $dropinDir/plugins
+        cp -v ${srcPlugin} $dropinDir/plugins/${name}.jar
+      '';
+
+    });
+
+  # Helper for the case where the build directory has the layout of an
+  # Eclipse update site, that is, it contains the directories
+  # `features` and `plugins`. All features and plugins inside these
+  # directories will be installed.
+  buildEclipseUpdateSite = { name, ... } @ attrs:
+    buildEclipsePluginBase (attrs // {
+      phases = [ "unpackPhase" "installPhase" ];
+
+      installPhase = ''
+        dropinDir="$out/eclipse/dropins/${name}"
+
+        # Install features.
+        cd features
+        for feature in *.jar; do
+          featureName=''${feature%.jar}
+          mkdir -p $dropinDir/features/$featureName
+          unzip $feature -d $dropinDir/features/$featureName
+        done
+        cd ..
+
+        # Install plugins.
+        mkdir -p $dropinDir/plugins
+
+        # A bundle should be unpacked if the manifest matches this
+        # pattern.
+        unpackPat="Eclipse-BundleShape:\\s*dir"
+
+        cd plugins
+        for plugin in *.jar ; do
+          pluginName=''${plugin%.jar}
+          manifest=$(unzip -p $plugin META-INF/MANIFEST.MF)
+
+          if [[ $manifest =~ $unpackPat ]] ; then
+            mkdir $dropinDir/plugins/$pluginName
+            unzip $plugin -d $dropinDir/plugins/$pluginName
+          else
+            cp -v $plugin $dropinDir/plugins/
+          fi
+        done
+        cd ..
+      '';
+    });
+
+  acejump = buildEclipsePlugin rec {
+    name = "acejump-${version}";
+    version = "1.0.0.201501181511";
+
+    srcFeature = fetchurl {
+      url = "https://tobiasmelcher.github.io/acejumpeclipse/features/acejump.feature_${version}.jar";
+      sha256 = "127xqrnns4h96g21c9zg0iblxprx3fg6fg0w5f413rf84415z884";
+    };
+
+    srcPlugin = fetchurl {
+      url = "https://tobiasmelcher.github.io/acejumpeclipse/plugins/acejump_${version}.jar";
+      sha256 = "0mz79ca32yryidd1wijirvnmfg4j5q4g84vdspdi56z0r4xrja13";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = https://github.com/tobiasmelcher/EclipseAceJump;
+      description = "Provides fast jumps to text based on initial letter";
+      license = licenses.mit;
+      platforms = platforms.all;
+      maintainers = [ maintainers.rycee ];
+    };
+  };
+
+  anyedittools = buildEclipsePlugin rec {
+    name = "anyedit-${version}";
+    version = "2.4.15.201504172030";
+
+    srcFeature = fetchurl {
+      url = "http://andrei.gmxhome.de/eclipse/features/AnyEditTools_${version}.jar";
+      sha256 = "19hbwgqn02ghflbcp5cw3qy203mym5kwgzq4xrn0xcl8ckl5s2pp";
+    };
+
+    srcPlugin = fetchurl {
+      url = "http://dl.bintray.com/iloveeclipse/plugins/de.loskutov.anyedit.AnyEditTools_${version}.jar";
+      sha256 = "1i3ghf2mhdfhify30hlyxqmyqcp40pkd5zhsiyg6finn4w81sxv2";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = http://andrei.gmxhome.de/anyedit/;
+      description = "Adds new tools to the context menu of text-based editors";
+      license = licenses.epl10;
+      platforms = platforms.all;
+      maintainers = [ maintainers.rycee ];
+    };
+  };
+
+  bytecode-outline = buildEclipsePlugin rec {
+    name = "bytecode-outline-${version}";
+    version = "2.4.3";
+
+    srcFeature = fetchurl {
+      url = "http://andrei.gmxhome.de/eclipse/features/de.loskutov.BytecodeOutline.feature_${version}.jar";
+      sha256 = "0imhwp73gxy1y5d5gpjgd05ywn0xg3vqc5980wcx3fd51g4ifc67";
+    };
+
+    srcPlugin = fetchurl {
+      url = "http://dl.bintray.com/iloveeclipse/plugins/de.loskutov.BytecodeOutline_${version}.jar";
+      sha256 = "0230i88mvvxhn11m9c5mv3494zhh1xkxyfyva9qahck0wbqwpzkw";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = http://andrei.gmxhome.de/bytecode/;
+      description = "Shows disassembled bytecode of current java editor or class file";
+      license = licenses.bsd2;
+      platforms = platforms.all;
+      maintainers = [ maintainers.rycee ];
+    };
+  };
+
+  cdt = buildEclipseUpdateSite rec {
+    name = "cdt-${version}";
+    version = "8.7.0";
+
+    src = fetchzip {
+      stripRoot = false;
+      url = "http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/8.7/${name}.zip";
+      sha256 = "0qpcjcl6n98x7ys4qz8p1x5hhk2ydrgh8w3r1kqk0zc7liqrx7vg";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = https://eclipse.org/cdt/;
+      description = "C/C++ development tooling";
+      license = licenses.epl10;
+      platforms = platforms.all;
+      maintainers = [ maintainers.bjornfor ];
+    };
+  };
+
+  checkstyle = buildEclipseUpdateSite rec {
+    name = "checkstyle-${version}";
+    version = "6.9.0.201508291549";
+
+    src = fetchzip {
+      stripRoot = false;
+      url = "mirror://sourceforge/project/eclipse-cs/Eclipse%20Checkstyle%20Plug-in/6.9.0/net.sf.eclipsecs-updatesite_${version}-bin.zip";
+      sha256 = "0r6lfbyhqcwa628i6wjp9d6mfp4jnc46bmwp9j7v02m79f8wx74g";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = http://eclipse-cs.sourceforge.net/;
+      description = "Checkstyle integration into the Eclipse IDE";
+      license = licenses.lgpl21;
+      platforms = platforms.all;
+      maintainers = [ maintainers.rycee ];
+    };
+
+  };
+
+  color-theme = buildEclipsePlugin rec {
+    name = "color-theme-${version}";
+    version = "1.0.0.201410260308";
+
+    srcFeature = fetchurl {
+      url = "https://eclipse-color-theme.github.io/update/features/com.github.eclipsecolortheme.feature_${version}.jar";
+      sha256 = "128b9b1cib5ff0w1114ns5mrbrhj2kcm358l4dpnma1s8gklm8g2";
+    };
+
+    srcPlugin = fetchurl {
+      url = "https://eclipse-color-theme.github.io/update/plugins/com.github.eclipsecolortheme_${version}.jar";
+      sha256 = "0wz61909bhqwzpqwll27ia0cn3anyp81haqx3rj1iq42cbl42h0y";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = http://eclipsecolorthemes.org/;
+      description = "Plugin to switch color themes conveniently and without side effects";
+      license = licenses.epl10;
+      platforms = platforms.all;
+      maintainers = [ maintainers.rycee ];
+    };
+  };
+
+  eclemma = buildEclipseUpdateSite rec {
+    name = "eclemma-${version}";
+    version = "2.3.2.201409141915";
+
+    src = fetchzip {
+      stripRoot = false;
+      url = "mirror://sourceforge/project/eclemma/01_EclEmma_Releases/2.3.2/eclemma-2.3.2.zip";
+      sha256 = "0w1kwcjh45p7msv5vpc8i6dsqwrnfmjama6vavpnxlji56jd3c43";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = http://www.eclemma.org/;
+      description = "EclEmma is a free Java code coverage tool for Eclipse";
+      license = licenses.epl10;
+      platforms = platforms.all;
+      maintainers = [ maintainers.rycee ];
+    };
+  };
+
+  emacsplus = buildEclipsePlugin rec {
+    name = "emacsplus-${version}";
+    version = "4.2.0";
+
+    srcFeature = fetchurl {
+      url = "http://www.mulgasoft.com/emacsplus/e4/update-site/features/com.mulgasoft.emacsplus.feature_${version}.jar";
+      sha256 = "0wja3cd7gq8w25797fxnafvcncjnmlv8qkl5iwqj7zja2f45vka8";
+    };
+
+    srcPlugin = fetchurl {
+      url = "http://www.mulgasoft.com/emacsplus/e4/update-site/plugins/com.mulgasoft.emacsplus_${version}.jar";
+      sha256 = "08yw45nr90mlpdzim74vsvdaxj41sgpxcrqk5ia6l2dzvrqlsjs1";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = http://www.mulgasoft.com/emacsplus/;
+      description = "Provides a more Emacs-like experience in the Eclipse text editors";
+      license = licenses.epl10;
+      platforms = platforms.all;
+      maintainers = [ maintainers.rycee ];
+    };
+  };
+
+  findbugs = buildEclipsePlugin rec {
+    name = "findbugs-${version}";
+    version = "3.0.1.20150306-5afe4d1";
+
+    srcFeature = fetchurl {
+      url = "http://findbugs.cs.umd.edu/eclipse/features/edu.umd.cs.findbugs.plugin.eclipse_${version}.jar";
+      sha256 = "1m9fav2xlb9wrx2d00lpnh2sy0w5yzawynxm6xhhbfdzd0vpfr9v";
+    };
+
+    srcPlugin = fetchurl {
+      url = "http://findbugs.cs.umd.edu/eclipse/plugins/edu.umd.cs.findbugs.plugin.eclipse_${version}.jar";
+      sha256 = "10p3mrbp9wi6jhlmmc23qv7frh605a23pqsc7w96569bsfb5wa8q";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = http://findbugs.sourceforge.net/;
+      description = "Plugin that uses static analysis to look for bugs in Java code";
+      license = licenses.epl10;
+      platforms = platforms.all;
+      maintainers = [ maintainers.rycee ];
+    };
+  };
+
+  gnuarmeclipse = buildEclipseUpdateSite rec {
+    name = "gnuarmeclipse-${version}";
+    version = "2.8.1-201504061754";
+
+    src = fetchzip {
+      stripRoot = false;
+      url = "mirror://sourceforge/project/gnuarmeclipse/Current%20Releases/2.x/ilg.gnuarmeclipse.repository-${version}.zip";
+      sha256 = "08jsnyis1ry62cidr9sl11ylyxbkwh834nlhx6qp31gh1l439px9";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = http://gnuarmeclipse.livius.net/;
+      description = "GNU ARM Eclipse Plug-ins";
+      license = licenses.epl10;
+      platforms = platforms.all;
+      maintainers = [ maintainers.bjornfor ];
+    };
+  };
+
+  jdt = buildEclipseUpdateSite rec {
+    name = "jdt-${version}";
+    version = "4.5";
+
+    src = fetchzip {
+      stripRoot = false;
+      url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.5-201506032000/org.eclipse.jdt-4.5.zip";
+      sha256 = "0zrdn26f7qsms2xfiyc049bhhh0czsbf989pgyq736b8hfmmh9iy";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = https://www.eclipse.org/jdt/;
+      description = "Eclipse Java development tools";
+      license = licenses.epl10;
+      platforms = platforms.all;
+      maintainers = [ maintainers.rycee ];
+    };
+  };
+
+  scala = buildEclipseUpdateSite rec {
+    name = "scala-${version}";
+    version = "4.1.1.20150911";
+
+    src = fetchzip {
+      url = "http://download.scala-ide.org/sdk/lithium/e44/scala211/stable/update-site.zip";
+      sha256 = "03g24sjivm7kzy64wwjs4ihf9vrb6703lb7bx3jafxzcwqm0pj1i";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = "http://scala-ide.org/";
+      description = "The Scala IDE for Eclipse";
+      license = licenses.bsd3;
+      platforms = platforms.all;
+      maintainers = [ maintainers.rycee ];
+    };
+  };
+
+  testng = buildEclipsePlugin rec {
+    name = "testng-${version}";
+    version = "6.9.5.201508210528";
+
+    srcFeature = fetchurl {
+      url = "http://beust.com/eclipse/features/org.testng.eclipse_${version}.jar";
+      sha256 = "0xalm7pvj0vx61isgkjkgj073b4hlqlzx6xnkrnnnyi0r212a26j";
+    };
+
+    srcPlugin = fetchurl {
+      url = "http://beust.com/eclipse/plugins/org.testng.eclipse_${version}.jar";
+      sha256 = "07wmivfvfsq6cjw5zwciajdxkfa7drk108jsr44gf4i1bv9fj055";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = http://testng.org/;
+      description = "Eclipse plugin for the TestNG testing framework";
+      license = licenses.asl20;
+      platforms = platforms.all;
+      maintainers = [ maintainers.rycee ];
+    };
+  };
+
+}
diff --git a/pkgs/applications/editors/ed/default.nix b/pkgs/applications/editors/ed/default.nix
index bccd7754efb..1bff18185f1 100644
--- a/pkgs/applications/editors/ed/default.nix
+++ b/pkgs/applications/editors/ed/default.nix
@@ -1,14 +1,16 @@
 { fetchurl, stdenv }:
 
 stdenv.mkDerivation rec {
-  name = "ed-1.10";
+  name = "ed-1.12";
 
   src = fetchurl {
     # gnu only provides *.lz tarball, which is unfriendly for stdenv bootstrapping
     #url = "mirror://gnu/ed/${name}.tar.gz";
-    url = "http://pkgs.fedoraproject.org/repo/extras/ed/${name}.tar.bz2"
-      + "/38204d4c690a17a989e802ba01b45e98/${name}.tar.bz2";
-    sha256 = "16qvshl8470f3znjfrrci3lzllqkzc6disk5kygzsg9hh4f6wysq";
+    # When updating, please make sure the sources pulled match those upstream by
+    # Unpacking both tarballs and running `find . -type f -exec sha256sum \{\} \; | sha256sum`
+    # in the resulting directory
+    url = "http://fossies.org/linux/privat/${name}.tar.gz";
+    sha256 = "111ci6x43bcmylqhrzr32l0q8pplmpb4kiq5pb6cyp0yxkb2dhgj";
   };
 
   /* FIXME: Tests currently fail on Darwin:
diff --git a/pkgs/applications/editors/edbrowse/default.nix b/pkgs/applications/editors/edbrowse/default.nix
index 8fdc198f45c..d969552ecde 100644
--- a/pkgs/applications/editors/edbrowse/default.nix
+++ b/pkgs/applications/editors/edbrowse/default.nix
@@ -1,17 +1,24 @@
 { stdenv, fetchurl, spidermonkey_24, unzip, curl, pcre, readline, openssl }:
 stdenv.mkDerivation rec {
-  name = "edbrowse-3.5.2";
-  buildInputs = [ unzip curl pcre readline openssl spidermonkey_24 ];
-  preConfigure = ''
-    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${spidermonkey_24}/include/mozjs-24"
-    '';
-  installPhase = "installBin src/edbrowse";
+  name = "edbrowse-${version}";
+  version = "3.5.4.1";
+
+  nativeBuildInputs = [ unzip ];
+  buildInputs = [ curl pcre readline openssl spidermonkey_24 ];
+
+  patchPhase = ''
+    substituteInPlace src/ebjs.c --replace \"edbrowse-js\" \"$out/bin/edbrowse-js\"
+  '';
+
+  NIX_CFLAGS_COMPILE = "-I${spidermonkey_24}/include/mozjs-24";
+  makeFlags = "-C src prefix=$(out)";
+
   src = fetchurl {
-    url = "http://the-brannons.com/edbrowse/${name}.zip";
-    sha256 = "5f1ac927d126b8c8fd411231cffa9eba5405013e64994e55e1864b2f85d52714";
+    url = "http://edbrowse.org/${name}.zip";
+    sha256 = "0fpzaalwvgwbns7yxq4a4i6hpdljmcjfyvx19r1dlb3vdfw0vx5l";
   };
   meta = {
-    description = "Edbrowse, a Command Line Editor Browser";
+    description = "Command Line Editor Browser";
     longDescription = ''
       Edbrowse is a combination editor, browser, and mail client that is 100% text based.
       The interface is similar to /bin/ed, though there are many more features, such as editing multiple files simultaneously, and rendering html.
@@ -20,7 +27,7 @@ stdenv.mkDerivation rec {
       edbrowse can also tap into databases through odbc. It was primarily written by Karl Dahlke.
       '';
     license = stdenv.lib.licenses.gpl1Plus;
-    homepage = http://the-brannons.com/edbrowse/;
+    homepage = http://edbrowse.org/;
     maintainers = [ stdenv.lib.maintainers.schmitthenner ];
   };
 }
diff --git a/pkgs/applications/editors/elvis/default.nix b/pkgs/applications/editors/elvis/default.nix
index 0850dd0e7be..8774b1b461f 100644
--- a/pkgs/applications/editors/elvis/default.nix
+++ b/pkgs/applications/editors/elvis/default.nix
@@ -10,10 +10,6 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ ncurses ];
 
-  patchPhase = ''
-    sed -i s/-lcurses/-lncurses/ configure
-  '';
-
   preConfigure = ''
     mkdir -p $out/share/man/man1
   '';
diff --git a/pkgs/applications/editors/emacs-24/default.nix b/pkgs/applications/editors/emacs-24/default.nix
index 01895647a6b..e0d74afabcd 100644
--- a/pkgs/applications/editors/emacs-24/default.nix
+++ b/pkgs/applications/editors/emacs-24/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, ncurses, x11, libXaw, libXpm, Xaw3d
-, pkgconfig, gtk, libXft, dbus, libpng, libjpeg, libungif
+{ stdenv, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d
+, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
 , libtiff, librsvg, texinfo, gconf, libxml2, imagemagick, gnutls
-, alsaLib, cairo
+, alsaLib, cairo, acl, gpm, AppKit, Foundation, libobjc
 , withX ? !stdenv.isDarwin
 , withGTK3 ? false, gtk3 ? null
 , withGTK2 ? true, gtk2
 }:
 
-assert (libXft != null) -> libpng != null;	# probably a bug
-assert stdenv.isDarwin -> libXaw != null;	# fails to link otherwise
+assert (libXft != null) -> libpng != null;      # probably a bug
+assert stdenv.isDarwin -> libXaw != null;       # fails to link otherwise
 assert withGTK2 -> withX || stdenv.isDarwin;
 assert withGTK3 -> withX || stdenv.isDarwin;
 assert withGTK2 -> !withGTK3 && gtk2 != null;
@@ -35,18 +35,30 @@ stdenv.mkDerivation rec {
     ./at-fdcwd.patch
   ];
 
+  postPatch = ''
+    sed -i 's|/usr/share/locale|${gettext}/share/locale|g' lisp/international/mule-cmds.el
+  '';
+
   buildInputs =
-    [ ncurses gconf libxml2 gnutls alsaLib pkgconfig texinfo ]
+    [ ncurses gconf libxml2 gnutls alsaLib pkgconfig texinfo acl gpm gettext ]
     ++ stdenv.lib.optional stdenv.isLinux dbus
     ++ stdenv.lib.optionals withX
-      [ x11 libXaw Xaw3d libXpm libpng libjpeg libungif libtiff librsvg libXft
+      [ xlibsWrapper libXaw Xaw3d libXpm libpng libjpeg libungif libtiff librsvg libXft
         imagemagick gconf ]
-    ++ stdenv.lib.optional (withX && withGTK2) [ gtk2 ]
-    ++ stdenv.lib.optional (withX && withGTK3) [ gtk3 ]
+    ++ stdenv.lib.optional (withX && withGTK2) gtk2
+    ++ stdenv.lib.optional (withX && withGTK3) gtk3
     ++ stdenv.lib.optional (stdenv.isDarwin && withX) cairo;
 
+  propagatedBuildInputs = stdenv.lib.optionals stdenv.isDarwin [ AppKit Foundation libobjc
+  ];
+
+  NIX_LDFLAGS = stdenv.lib.optional stdenv.isDarwin
+    "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation";
+
   configureFlags =
-    if withX
+    if stdenv.isDarwin
+      then [ "--with-ns" "--disable-ns-self-contained" ]
+    else if withX
       then [ "--with-x-toolkit=${toolkit}" "--with-xft" ]
       else [ "--with-x=no" "--with-xpm=no" "--with-jpeg=no" "--with-png=no"
              "--with-gif=no" "--with-tiff=no" ];
@@ -57,6 +69,9 @@ stdenv.mkDerivation rec {
   postInstall = ''
     mkdir -p $out/share/emacs/site-lisp/
     cp ${./site-start.el} $out/share/emacs/site-lisp/site-start.el
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    mkdir -p $out/Applications
+    mv nextstep/Emacs.app $out/Applications
   '';
 
   doCheck = true;
diff --git a/pkgs/applications/editors/emacs-24/macport-24.5.nix b/pkgs/applications/editors/emacs-24/macport-24.5.nix
index db0d05584e1..879c0f55137 100644
--- a/pkgs/applications/editors/emacs-24/macport-24.5.nix
+++ b/pkgs/applications/editors/emacs-24/macport-24.5.nix
@@ -1,9 +1,10 @@
-{ stdenv, fetchurl, ncurses, pkgconfig, texinfo, libxml2, gnutls
+{ stdenv, fetchurl, ncurses, pkgconfig, texinfo, libxml2, gnutls, Carbon, Foundation,
+libobjc, Cocoa, WebKit, Quartz, ImageCaptureCore, OSAKit
 }:
 
 stdenv.mkDerivation rec {
   emacsName = "emacs-24.5";
-  name = "${emacsName}-mac-5.7";
+  name = "${emacsName}-mac-5.10";
 
   #builder = ./builder.sh;
 
@@ -14,10 +15,19 @@ stdenv.mkDerivation rec {
 
   macportSrc = fetchurl {
     url = "ftp://ftp.math.s.chiba-u.ac.jp/emacs/${name}.tar.gz";
-    sha256 = "1a86l3556h24x9ml6r8n6xbrxymb9gr38sicny3f0m281myhlsvv";
+    sha256 = "0d4r4mgqxcdba715lbr7rk4bxz7yjxi6wv63kyh6gaqbfgql41vf";
   };
 
-  buildInputs = [ ncurses pkgconfig texinfo libxml2 gnutls ];
+  NIX_CFLAGS_COMPILE = "-Wno-deprecated-declarations";
+  NIX_LDFLAGS = stdenv.lib.optional stdenv.isDarwin
+    "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation";
+
+  enableParallelBuilding = true;
+
+  buildInputs = [
+    ncurses pkgconfig texinfo libxml2 gnutls Carbon Cocoa Foundation libobjc WebKit Quartz
+    ImageCaptureCore OSAKit
+  ];
 
   postUnpack = ''
     mv $emacsName $name
diff --git a/pkgs/applications/editors/emacs-modes/cask/default.nix b/pkgs/applications/editors/emacs-modes/cask/default.nix
index 7d987e73b91..3f1967c7053 100644
--- a/pkgs/applications/editors/emacs-modes/cask/default.nix
+++ b/pkgs/applications/editors/emacs-modes/cask/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchgit, emacs, python }:
 
 stdenv.mkDerivation rec {
-  name = "cask-0.7.2";
+  name = "cask-0.7.3";
 
   src = fetchgit {
     url = "https://github.com/cask/cask.git";
-    rev = "8d667e1ce3f3aa817a7b996f02058b2441f83958";
-    sha256 = "08brrdyz7zsw134zwf4dyj6bj2glflszssfq8vya3mh01s38mfri";
+    rev = "717b64a9ba7640ec366e8573da0c01f9c4d57b0c";
+    sha256 = "0j18rzgpibisfcci6kcgjs8nlkfi1dw33dxp6ab6zaiarydwgcs5";
   };
 
   buildInputs = [ emacs python ];
diff --git a/pkgs/applications/editors/emacs-modes/color-theme-solarized/default.nix b/pkgs/applications/editors/emacs-modes/color-theme-solarized/default.nix
index 35f9bd3ceb2..9a0f6855567 100644
--- a/pkgs/applications/editors/emacs-modes/color-theme-solarized/default.nix
+++ b/pkgs/applications/editors/emacs-modes/color-theme-solarized/default.nix
@@ -1,12 +1,14 @@
-{stdenv, fetchgit, emacs, colorTheme}:
-
+{stdenv, fetchzip, emacs, colorTheme}:
+let
+  commit = "412713a0fcedd520d208a7b783fea03d710bcc61";
+in
 stdenv.mkDerivation rec {
-  name = "color-theme-6.5.5";
+  name = "color-theme-solarized-1.0.0";
+
+  src = fetchzip {
 
-  src = fetchgit {
-    url = https://github.com/sellout/emacs-color-theme-solarized.git;
-    rev = "6a2c7ca0181585858e6e8054cb99db837e2ef72f";
-    sha256 = "3c46a3d66c75ec4456209eeafdb03282148b289b12e8474f6a8962f3894796e8";
+    url = "https://github.com/sellout/emacs-color-theme-solarized/archive/${commit}.zip";
+    sha256 = "1xd2yk7p39zxgcf91s80pqknzdxw9d09cppjb87g7ihj6f0wxqjv";
   };
 
   buildInputs = [ emacs ];
@@ -25,6 +27,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Precision colors for machines and people";
     homepage = http://ethanschoonover.com/solarized;
+    maintainer = "Samuel Rivas <samuelrivas@gmail.com>";
     license = stdenv.lib.licenses.mit;
 
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/editors/emacs-modes/dash/default.nix b/pkgs/applications/editors/emacs-modes/dash/default.nix
index aacc33c9b51..c71860992da 100644
--- a/pkgs/applications/editors/emacs-modes/dash/default.nix
+++ b/pkgs/applications/editors/emacs-modes/dash/default.nix
@@ -1,13 +1,14 @@
 {stdenv, fetchurl, emacs}:
 
-let version = "1.5.0";
-
-in stdenv.mkDerivation {
+let
+  version = "2.11.0";
+in
+stdenv.mkDerivation {
   name = "emacs-dash-${version}";
 
   src = fetchurl {
     url = "https://github.com/magnars/dash.el/archive/${version}.tar.gz";
-    sha256 = "0c6jknzy306vn22vqlabxkwxfnllrd33spymi74fkirbxaxvp8kp";
+    sha256 = "1piwcwilkxcbjxx832mhb7q3pz1fgwp203r581bpqcw6kd5x726q";
   };
 
   buildInputs = [ emacs ];
diff --git a/pkgs/applications/editors/emacs-modes/erlang/default.nix b/pkgs/applications/editors/emacs-modes/erlang/default.nix
new file mode 100644
index 00000000000..84a52d169a3
--- /dev/null
+++ b/pkgs/applications/editors/emacs-modes/erlang/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, erlang }:
+
+stdenv.mkDerivation {
+
+  name = "erlang-mode-${erlang.version}";
+
+  buildInputs = [ ];
+
+  inherit erlang;
+
+  buildCommand = ''
+    mkdir -p "$out/share/emacs/site-lisp"
+    cp "$erlang/lib/erlang/lib/tools"*/emacs/*.el $out/share/emacs/site-lisp/
+  '';
+
+  # emacs highlighting */
+
+  meta = with stdenv.lib; {
+    homepage = "http://github.com/erlang/otp";
+    description = "Erlang mode for Emacs";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.samuelrivas ];
+  };
+}
diff --git a/pkgs/applications/editors/emacs-modes/flycheck/default.nix b/pkgs/applications/editors/emacs-modes/flycheck/default.nix
index 98eab4d477c..2a3c4382836 100644
--- a/pkgs/applications/editors/emacs-modes/flycheck/default.nix
+++ b/pkgs/applications/editors/emacs-modes/flycheck/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchFromGitHub, emacs, let-alist, dash, texinfo }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   name = "flycheck-0.22-64-g90dbc2d";
 
   src = fetchFromGitHub {
@@ -24,8 +24,8 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = "https://github.com/magit/git-modes";
-    description = "Emacs modes for various Git-related files";
+    inherit (src.meta) homepage;
+    description = "Modern on-the-fly syntax checking for GNU Emacs";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [ simons ];
   };
diff --git a/pkgs/applications/editors/emacs-modes/git-modes/default.nix b/pkgs/applications/editors/emacs-modes/git-modes/default.nix
index 8a2ca6eb909..59733fe5bb4 100644
--- a/pkgs/applications/editors/emacs-modes/git-modes/default.nix
+++ b/pkgs/applications/editors/emacs-modes/git-modes/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, emacs }:
 
 let
-  version = "0.15.0-8-g4e10851";
+  version = "1.2.0";
 in
 stdenv.mkDerivation {
   name = "git-modes-${version}";
@@ -9,8 +9,8 @@ stdenv.mkDerivation {
   src = fetchFromGitHub {
     owner = "magit";
     repo = "git-modes";
-    rev = "4e10851843145e0c05fc665683d3b487a57ad114";
-    sha256 = "13j794a2p4ql9dnw2z0c1m0ybclxsicbk8cmmfqcchs4ygiyc6ag";
+    rev = version;
+    sha256 = "1ipr51v7nhbbgxbbz0fp3i78ypp73kyxgc4ni8nnr7yirjhsksfd";
   };
 
   buildInputs = [ emacs ];
diff --git a/pkgs/applications/editors/emacs-modes/haskell/default.nix b/pkgs/applications/editors/emacs-modes/haskell/default.nix
index 7f4373c41ba..67d1d71c5ee 100644
--- a/pkgs/applications/editors/emacs-modes/haskell/default.nix
+++ b/pkgs/applications/editors/emacs-modes/haskell/default.nix
@@ -1,19 +1,21 @@
-{ stdenv, fetchurl, emacs, texinfo }:
+{ stdenv, fetchFromGitHub, emacs, texinfo }:
 
 let
-  version = "13.10";
+  version = "13.14-169-g0d3569d";      # git describe --tags
 in
 stdenv.mkDerivation {
   name = "haskell-mode-${version}";
 
-  src = fetchurl {
-    url = "https://github.com/haskell/haskell-mode/archive/v${version}.tar.gz";
-    sha256 = "0hcg7wpalcdw8j36m8vd854zrrgym074r7m903rpwfrhx9mlg02b";
+  src = fetchFromGitHub {
+    owner = "haskell";
+    repo = "haskell-mode";
+    rev = "v${version}";
+    sha256 = "0v5iy9wy05hf44wy7qs0c9q0v34m4k6wrqg4kyvji61568k1yx3k";
   };
 
   buildInputs = [ emacs texinfo ];
 
-  makeFlags = "VERSION=${version} GIT_VERSION=${version}";
+  makeFlags = "VERSION=v${version} GIT_VERSION=v${version}";
 
   installPhase = ''
     mkdir -p $out/share/emacs/site-lisp
@@ -22,6 +24,11 @@ stdenv.mkDerivation {
     cp -v *.info* $out/share/info/
   '';
 
+  # The test suite must run *after* copying the generated files to $out
+  # because "make check" implies "make clean".
+  doInstallCheck = true;
+  installCheckTarget = "check";
+
   meta = {
     homepage = "http://github.com/haskell/haskell-mode";
     description = "Haskell mode for Emacs";
diff --git a/pkgs/applications/editors/emacs-modes/haskell/git.nix b/pkgs/applications/editors/emacs-modes/haskell/git.nix
deleted file mode 100644
index 20de1cae4d3..00000000000
--- a/pkgs/applications/editors/emacs-modes/haskell/git.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ stdenv, fetchFromGitHub, emacs, texinfo }:
-
-let
-  version = "13.10-361-gfa09425";      # git describe --tags
-in
-stdenv.mkDerivation {
-  name = "haskell-mode-${version}";
-
-  src = fetchFromGitHub {
-    owner = "haskell";
-    repo = "haskell-mode";
-    rev = "v${version}";
-    sha256 = "1bq4gddzwjy2w1hbsmwxcamcy87amz7ksy1vmpwg0qij88fk4av9";
-  };
-
-  buildInputs = [ emacs texinfo ];
-
-  makeFlags = "VERSION=v${version} GIT_VERSION=v${version}";
-
-  installPhase = ''
-    mkdir -p $out/share/emacs/site-lisp
-    cp *.el *.elc *.hs $out/share/emacs/site-lisp/
-    mkdir -p $out/share/info
-    cp -v *.info* $out/share/info/
-  '';
-
-  # The test suite must run *after* copying the generated files to $out
-  # because "make check" implies "make clean".
-  doInstallCheck = true;
-  installCheckTarget = "check";
-
-  meta = {
-    homepage = "http://github.com/haskell/haskell-mode";
-    description = "Haskell mode for Emacs";
-
-    platforms = stdenv.lib.platforms.unix;
-    maintainers = [ stdenv.lib.maintainers.simons ];
-  };
-}
diff --git a/pkgs/applications/editors/emacs-modes/htmlize/builder.sh b/pkgs/applications/editors/emacs-modes/htmlize/builder.sh
deleted file mode 100644
index ccbd9d8e8a7..00000000000
--- a/pkgs/applications/editors/emacs-modes/htmlize/builder.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-source $stdenv/setup
-
-mkdir -p $out/share/emacs/site-lisp
-cp $src $out/share/emacs/site-lisp/htmlize.el
diff --git a/pkgs/applications/editors/emacs-modes/htmlize/default.nix b/pkgs/applications/editors/emacs-modes/htmlize/default.nix
index 96cc4e040c4..c16f449c3a2 100644
--- a/pkgs/applications/editors/emacs-modes/htmlize/default.nix
+++ b/pkgs/applications/editors/emacs-modes/htmlize/default.nix
@@ -1,15 +1,21 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation {
   name = "htmlize-1.47";
 
-  builder = ./builder.sh;
-
-  src = fetchurl {
-    url = http://fly.srk.fer.hr/~hniksic/emacs/htmlize.el.cgi;
-    sha256 = "0m7lby95w9sj0xlqv39imlbp80x8ajd295cs6079jyhmryf6mr10";
+  src = fetchFromGitHub {
+    owner = "emacsmirror";
+    repo = "htmlize";
+    rev = "release/1.47";
+    name = "htmlize-1.47-src";
+    sha256 = "1vkqxgirc82vc44g7xhhr041arf93yirjin3h144kjyfkgkplnkp";
   };
 
+  installPhase = ''
+     mkdir -p $out/share/emacs/site-lisp
+     cp htmlize.el $out/share/emacs/site-lisp/
+  '';
+
   meta = {
     description = "Convert buffer text and decorations to HTML";
   };
diff --git a/pkgs/applications/editors/emacs-modes/ido-ubiquitous/default.nix b/pkgs/applications/editors/emacs-modes/ido-ubiquitous/default.nix
new file mode 100644
index 00000000000..3cc8156337e
--- /dev/null
+++ b/pkgs/applications/editors/emacs-modes/ido-ubiquitous/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub, emacs }:
+
+let
+  version = "3.6-4-gb659bf8";
+in
+stdenv.mkDerivation {
+  name = "ido-ubiquitous-${version}";
+
+  src = fetchFromGitHub {
+    owner = "DarwinAwardWinner";
+    repo = "ido-ubiquitous";
+    rev = version;
+    sha256 = "06r8qpfr60gc673w881m0nplj91b6bfw77bxgl6irz1z9bp7cc4y";
+  };
+
+  buildInputs = [ emacs ];
+
+  buildPhase = ''
+    emacs -L . --batch -f batch-byte-compile *.el
+  '';
+
+  installPhase = ''
+    install -d $out/share/emacs/site-lisp
+    install *.el *.elc $out/share/emacs/site-lisp
+  '';
+}
diff --git a/pkgs/applications/editors/emacs-modes/idris/default.nix b/pkgs/applications/editors/emacs-modes/idris/default.nix
index a631939b55c..2e168b3abf7 100644
--- a/pkgs/applications/editors/emacs-modes/idris/default.nix
+++ b/pkgs/applications/editors/emacs-modes/idris/default.nix
@@ -3,11 +3,11 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "idris-mode";
-  version = "0.9.15";
+  version = "0.9.18";
 
   src = fetchurl {
     url = "https://github.com/idris-hackers/${pname}/archive/${version}.tar.gz";
-    sha256 = "0ag7qqsv64rifk9ncdxv4gyylfbw6c8y2wq610l4pabqv2qrlh9r";
+    sha256 = "06rw5lrxqqnw0kni3x9jm73x352d1vb683d41v8x3yzqfa2sxmwg";
   };
 
   buildInputs = [ emacs ];
diff --git a/pkgs/applications/editors/emacs-modes/jabber/default.nix b/pkgs/applications/editors/emacs-modes/jabber/default.nix
index 82028722f54..781806bedd6 100644
--- a/pkgs/applications/editors/emacs-modes/jabber/default.nix
+++ b/pkgs/applications/editors/emacs-modes/jabber/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "75e3b7853de4783b8ab8270dcbe6a1e4f576224f77f7463116532e11c6498c26";
   };
   buildInputs = [ emacs ];
-  meta = {
+  meta = with stdenv.lib; {
     description = "A Jabber client for Emacs";
     longDescription = ''
       jabber.el is a Jabber client for Emacs. It may seem strange to have a
@@ -16,8 +16,8 @@ stdenv.mkDerivation rec {
       a special case of text editing.
     '';
     homepage = http://emacs-jabber.sourceforge.net/;
-    license = [ "GPLv2+" ];
-    maintainers = with stdenv.lib.maintainers; [ astsmtl ];
-    platforms = with stdenv.lib.platforms; linux;
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ astsmtl ];
+    platforms = with platforms; linux;
   };
 }
diff --git a/pkgs/applications/editors/emacs-modes/magit/default.nix b/pkgs/applications/editors/emacs-modes/magit/default.nix
index 676a86985f8..8d71ca58202 100644
--- a/pkgs/applications/editors/emacs-modes/magit/default.nix
+++ b/pkgs/applications/editors/emacs-modes/magit/default.nix
@@ -1,33 +1,41 @@
-{ stdenv, fetchFromGitHub, emacs, texinfo, gitModes, git }:
+{ stdenv, fetchFromGitHub, emacs, texinfo, gitModes, git, dash }:
 
-stdenv.mkDerivation rec {
-  name = "magit-90141025";
+let
+  version = "2.2.1";
+in
+stdenv.mkDerivation {
+  name = "magit-${version}";
 
   src = fetchFromGitHub {
     owner = "magit";
     repo = "magit";
-    rev = "50c08522c8a3c67e0f3b821fe4df61e8bd456ff9";
-    sha256 = "0mzyx72pidzvla1x2qszn3c60n2j0n8i5k875c4difvd1n4p0vsk";
+    rev = version;
+    sha256 = "1bq26wrgm4wgif0hj16mkmiz0p1iilxs7dmdd1vq5df8nivmakjz";
   };
 
   buildInputs = [ emacs texinfo git ];
-  propagatedUserEnvPkgs = [ gitModes ];
+  propagatedUserEnvPkgs = [ gitModes dash ];
 
   configurePhase = ''
     makeFlagsArray=(
       PREFIX="$out"
-      EFLAGS="-L ${gitModes}/share/emacs/site-lisp"
       lispdir="$out/share/emacs/site-lisp"
+      DASH_DIR="${dash}/share/emacs/site-lisp"
+      VERSION="${version}"
     )
+    make ''${makeFlagsArray[@]} -C lisp magit-version.el
+    cp lisp/magit-version.el Documentation/
+    cp lisp/magit-version.el .
   '';
 
-  doCheck = true;
+  doCheck = false;  # one out of 5 tests fails, not sure why
   checkTarget = "test";
+  preCheck = "export EMAIL='Joe Doe <joe.doe@example.org>'";
 
-  postInstall = ''
-    mkdir -p $out/bin
-    mv "bin/"* $out/bin/
-  '';
+  # postInstall = ''
+  #   mkdir -p $out/bin
+  #   mv "bin/"* $out/bin/
+  # '';
 
   meta = {
     homepage = "https://github.com/magit/magit";
diff --git a/pkgs/applications/editors/emacs-modes/monky/default.nix b/pkgs/applications/editors/emacs-modes/monky/default.nix
new file mode 100644
index 00000000000..8e35a4e2b57
--- /dev/null
+++ b/pkgs/applications/editors/emacs-modes/monky/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl, emacs, unzip }:
+
+stdenv.mkDerivation {
+  name = "emacs-monky-20150404";
+
+  src = fetchurl {
+    url = "https://github.com/ananthakumaran/monky/archive/48c0200910739b6521f26f6423b2bfb8c38b4482.zip";
+    sha256 = "0yp3pzddx7yki9n3qrriqa5p442qyrdivvlc4xbl024vzjyzddrj";
+  };
+
+  buildInputs = [ emacs unzip ];
+
+  buildPhase = "emacs -L . --batch -f batch-byte-compile *.el";
+
+  installPhase = ''
+    install -d $out/share/emacs/site-lisp
+    install *.el *.elc $out/share/emacs/site-lisp
+  '';
+}
diff --git a/pkgs/applications/editors/emacs-modes/nyan-mode/default.nix b/pkgs/applications/editors/emacs-modes/nyan-mode/default.nix
index ab94dbae950..e0057fd30ce 100644
--- a/pkgs/applications/editors/emacs-modes/nyan-mode/default.nix
+++ b/pkgs/applications/editors/emacs-modes/nyan-mode/default.nix
@@ -1,4 +1,4 @@
-{trivialBuild, fetchFromGitHub}:
+{lib, trivialBuild, fetchFromGitHub}:
 
 trivialBuild rec {
   pname    = "nyan-mode";
@@ -25,7 +25,6 @@ trivialBuild rec {
 
   meta = {
     description = "An analog indicator of the position in the buffer";
-    homepage = https://github.com/TeMPOraL/nyan-mode/;
-    license = "GPLv3+";
+    license = lib.licenses.gpl3Plus;
   };
 }
diff --git a/pkgs/applications/editors/emacs-modes/ocaml/default.nix b/pkgs/applications/editors/emacs-modes/ocaml/default.nix
index 9e4496ff1a4..7ed6355f981 100644
--- a/pkgs/applications/editors/emacs-modes/ocaml/default.nix
+++ b/pkgs/applications/editors/emacs-modes/ocaml/default.nix
@@ -11,7 +11,8 @@ in stdenv.mkDerivation {
   # a quick configure to get the Makefile generated. Since
   # we do not build the ocaml itself, we don't really
   # need it to support any features.
-  configureFlags = [ "-no-tk" "-no-curses" "-no-pthread" ];
+  configureFlags = (with stdenv.lib; optional (!(versionAtLeast version "4.02")) "-no-tk") ++
+    [ "-no-curses" "-no-pthread" ];
 
   buildInputs = [ emacs ];
   dontBuild = true;
diff --git a/pkgs/applications/editors/emacs-modes/offlineimap/default.nix b/pkgs/applications/editors/emacs-modes/offlineimap/default.nix
index d94da4f88d9..f61eaa98266 100644
--- a/pkgs/applications/editors/emacs-modes/offlineimap/default.nix
+++ b/pkgs/applications/editors/emacs-modes/offlineimap/default.nix
@@ -24,5 +24,6 @@ stdenv.mkDerivation rec {
     homepage = "http://julien.danjou.info/projects/emacs-packages#offlineimap";
     platforms = stdenv.lib.platforms.all;
     maintainers = [ stdenv.lib.maintainers.garbas ];
+    broken = true;
   };
 }
diff --git a/pkgs/applications/editors/emacs-modes/org/default.nix b/pkgs/applications/editors/emacs-modes/org/default.nix
index c7ad1c7049b..1276e4754eb 100644
--- a/pkgs/applications/editors/emacs-modes/org/default.nix
+++ b/pkgs/applications/editors/emacs-modes/org/default.nix
@@ -2,11 +2,11 @@
 , texLiveAggregationFun }:
 
 stdenv.mkDerivation rec {
-  name = "org-8.2.10";
+  name = "org-8.3.1";
 
   src = fetchurl {
     url = "http://orgmode.org/${name}.tar.gz";
-    sha256 = "1xm8n8zwr3676rl4pd32k61rd7rimlihhrw5a7r4z7r154c4a2fz";
+    sha256 = "0cn3k02b2dhp489rrlaz4g91h0ph99a7721gm8x7axicqhpv04rx";
   };
 
   buildInputs = [ emacs ];
diff --git a/pkgs/applications/editors/emacs-modes/proofgeneral/4.3pre.nix b/pkgs/applications/editors/emacs-modes/proofgeneral/4.3pre.nix
index 96d7619d387..815863ac6da 100644
--- a/pkgs/applications/editors/emacs-modes/proofgeneral/4.3pre.nix
+++ b/pkgs/applications/editors/emacs-modes/proofgeneral/4.3pre.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, emacs, texinfo, texLive, perl, which, automake, enableDoc ? false }:
 
 stdenv.mkDerivation (rec {
-  name = "ProofGeneral-4.3pre131011";
+  name = "ProofGeneral-4.3pre150313";
 
   src = fetchurl {
-    url = http://proofgeneral.inf.ed.ac.uk/releases/ProofGeneral-4.3pre131011.tgz;
-    sha256 = "0104iy2xik5npkdg9p2ir6zqyrmdc93azrgm3ayvg0z76vmnb816";
+    url = "http://proofgeneral.inf.ed.ac.uk/releases/${name}.tgz";
+    sha256 = "1jq5ykkk14xr5qcn4kyxmi5ls0fibr0y47gfygzm1mzrfvz9aw3f";
   };
 
   sourceRoot = name;
diff --git a/pkgs/applications/editors/emacs-modes/proofgeneral/pg.patch b/pkgs/applications/editors/emacs-modes/proofgeneral/pg.patch
index c733911118d..704e4b6c8c7 100644
--- a/pkgs/applications/editors/emacs-modes/proofgeneral/pg.patch
+++ b/pkgs/applications/editors/emacs-modes/proofgeneral/pg.patch
@@ -7,7 +7,7 @@ diff -r c7d8bfff4c0a bin/proofgeneral
  if [ -z "$PGHOME" ] || [ ! -d "$PGHOME" ]; then
 -    # default relative to this script, otherwise PGHOMEDEFAULT
 -    MYDIR="`readlink --canonicalize "$0" | sed -ne 's,/bin/proofgeneral$,,p'`"
--    if [ -d "$MYDIR" ]; then
+-    if [ -d "$MYDIR/generic" ]; then
 -	PGHOME="$MYDIR"
 -    elif [ -d "$PGHOMEDEFAULT" ]; then
 +    if [ -d "$PGHOMEDEFAULT" ]; then
diff --git a/pkgs/applications/editors/emacs-modes/rudel/default.nix b/pkgs/applications/editors/emacs-modes/rudel/default.nix
index 787f5df6eb0..f830b16da98 100644
--- a/pkgs/applications/editors/emacs-modes/rudel/default.nix
+++ b/pkgs/applications/editors/emacs-modes/rudel/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation
 
   meta = {
     homepage = "http://rudel.sourceforge.net/";
-    description = "Rudel is a collaborative editing environment for GNU Emacs";
+    description = "A collaborative editing environment for GNU Emacs";
     license = "GPL";
   };
 }
diff --git a/pkgs/applications/editors/emacs-modes/scala-mode/v2.nix b/pkgs/applications/editors/emacs-modes/scala-mode/v2.nix
index 75861b0a988..ed3ac0e3da0 100644
--- a/pkgs/applications/editors/emacs-modes/scala-mode/v2.nix
+++ b/pkgs/applications/editors/emacs-modes/scala-mode/v2.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://github.com/hvesalai/scala-mode2/archive/c154f1623f4696d26e1c88d19170e67bf6825837.zip";
-    sha256 = "0fyxdpwz55n4c87v4ijqlbv6w1rybg5qrgsc40f6bs6sd747scy5";
+    sha256 = "0im2ajb1iagjldh52j8wz4yby68rs3h7shrdf1pqy5ds7s4fa8cc";
   };
 
   buildInputs = [ unzip emacs ];
diff --git a/pkgs/applications/editors/emacs-modes/structured-haskell-mode/default.nix b/pkgs/applications/editors/emacs-modes/structured-haskell-mode/default.nix
deleted file mode 100644
index b8838fac980..00000000000
--- a/pkgs/applications/editors/emacs-modes/structured-haskell-mode/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ cabal, emacs, haskellMode, haskellSrcExts }:
-
-cabal.mkDerivation (self: {
-  pname = "structured-haskell-mode";
-  version = "1.0.4";
-  sha256 = "1402wx27py7292ad7whsb13ywv71k36501jpfrn2p0v7knzknj8z";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [ haskellSrcExts haskellMode ];
-  buildTools = [ emacs ];
-  postInstall = ''
-    emacs -L elisp -L ${haskellMode}/share/emacs/site-lisp \
-      --batch -f batch-byte-compile "elisp/"*.el
-    install -d $out/share/emacs/site-lisp
-    install "elisp/"*.el "elisp/"*.elc  $out/share/emacs/site-lisp
-  '';
-  meta = {
-    homepage = "https://github.com/chrisdone/structured-haskell-mode";
-    description = "Structured editing Emacs mode for Haskell";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-  };
-})
diff --git a/pkgs/applications/editors/emacs-modes/tuareg/default.nix b/pkgs/applications/editors/emacs-modes/tuareg/default.nix
index 364daed439d..be03938f8a5 100644
--- a/pkgs/applications/editors/emacs-modes/tuareg/default.nix
+++ b/pkgs/applications/editors/emacs-modes/tuareg/default.nix
@@ -9,7 +9,7 @@ in stdenv.mkDerivation {
   name = "tuareg-mode-${version}";
   src = fetchzip {
     url = "https://github.com/ocaml/tuareg/releases/download/${version}/tuareg-${version}.tar.gz";
-    sha256 = "1rd7ai1wn476zfkkxv2xk72bbzi4d9c17gngd35882q4b5vzp756";
+    sha256 = "13rh5ddwvwwz5jf0n3wagc5m9zq4cbaylnsknzjalryyvipwfyh3";
   }; 
 
   buildInputs = [ emacs ];
diff --git a/pkgs/applications/editors/heme/default.nix b/pkgs/applications/editors/heme/default.nix
new file mode 100644
index 00000000000..d377e5cb36f
--- /dev/null
+++ b/pkgs/applications/editors/heme/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, lib, fetchurl, ncurses }:
+
+stdenv.mkDerivation rec {
+  name = "heme-${version}";
+  version = "0.4.2";
+  src = fetchurl {
+    url = "http://downloads.sourceforge.net/project/heme/heme/heme-${version}/heme-${version}.tar.gz";
+    sha256 = "0wsrnj5mrlazgqs4252k30aw8m86qw0z9dmrsli9zdxl7j4cg99v";
+  };
+  postPatch = ''
+    substituteInPlace Makefile \
+      --replace "/usr/local" "$out" \
+      --replace "CFLAGS = " "CFLAGS = -I${ncurses}/include " \
+      --replace "LDFLAGS = " "LDFLAGS = -L${ncurses}/lib " \
+      --replace "-lcurses" "-lncurses"
+  '';
+  preBuild = ''
+    mkdir -p $out/bin
+    mkdir -p $out/man/man1
+  '';
+  meta = with lib; {
+    description = "Portable and fast console hex editor for unix operating systems";
+    homepage = "http://heme.sourceforge.net/";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ cstrahan ];
+  };
+}
diff --git a/pkgs/applications/editors/hexcurse/default.nix b/pkgs/applications/editors/hexcurse/default.nix
new file mode 100644
index 00000000000..861bf88f7dd
--- /dev/null
+++ b/pkgs/applications/editors/hexcurse/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, lib, fetchFromGitHub, ncurses }:
+
+stdenv.mkDerivation rec {
+  name = "hexcurse-${version}";
+  version = "1.58";
+  src = fetchFromGitHub {
+    owner = "LonnyGomes";
+    repo = "hexcurse";
+    rev = "hexcurse-${version}";
+    sha256 = "0hm9mms2ija3wqba0mkk9i8fhb8q1pam6d6pjlingkzz6ygxnnp7";
+  };
+  buildInputs = [
+    ncurses
+  ];
+  meta = with lib; {
+    description = "ncurses-based console hexeditor written in C";
+    homepage = "https://github.com/LonnyGomes/hexcurse";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ cstrahan ];
+  };
+}
diff --git a/pkgs/applications/editors/ht/default.nix b/pkgs/applications/editors/ht/default.nix
new file mode 100644
index 00000000000..b7acdb7f1d5
--- /dev/null
+++ b/pkgs/applications/editors/ht/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, lib, fetchurl, ncurses }:
+
+stdenv.mkDerivation rec {
+  name = "ht-${version}";
+  version = "2.1.0";
+  src = fetchurl {
+    url = "http://sourceforge.net/projects/hte/files/ht-source/ht-${version}.tar.bz2";
+    sha256 = "0w2xnw3z9ws9qrdpb80q55h6ynhh3aziixcfn45x91bzrbifix9i";
+  };
+  buildInputs = [
+    ncurses
+  ];
+  meta = with lib; {
+    description = "File editor/viewer/analyzer for executables";
+    homepage = "http://hte.sourceforge.net";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ cstrahan ];
+  };
+}
diff --git a/pkgs/applications/editors/idea/default.nix b/pkgs/applications/editors/idea/default.nix
index 7d7aaae1037..5aa8c7d1553 100644
--- a/pkgs/applications/editors/idea/default.nix
+++ b/pkgs/applications/editors/idea/default.nix
@@ -212,110 +212,110 @@ in
 
   android-studio = buildAndroidStudio rec {
     name = "android-studio-${version}";
-    version = "1.2.0.8";
-    build = "141.1845774";
+    version = "1.2.2.0";
+    build = "141.1980579";
     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 = "1l201qv1aya1l9jrybgqclv2v2fgzdpcb6qsnxszcq3npplisw9h";
+      sha256 = "08bayp2kxxg0zdmd1rcfg89g80wmwxf56fzmk5xkz1qg6s9b98a6";
     };
   };
 
   clion = buildClion rec {
     name = "clion-${version}";
-    version = "1.0";
-    build = "141.353";
+    version = "1.0.4";
+    build = "141.874";
     description  = "C/C++ IDE. New. Intelligent. Cross-platform";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/cpp/${name}.tar.gz";
-      sha256 = "0xjdx13ljp1vy51a7rsj25wg3bsvry4kxq5cdng8zrc1g2y1fqw5";
+      sha256 = "1cz59h2znzjy7zncc049f2w30kc89rvmk7l51a1y6ymf9s7cj4cm";
     };
   };
 
   idea-community = buildIdea rec {
     name = "idea-community-${version}";
-    version = "14.1.2";
-    build = "IC-141.713.2";
+    version = "14.1.5";
+    build = "IC-141.2735.5";
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
-      sha256 = "1skxbax7gsxxf7519qasxwp9q0v9ff755ibqr1w47dv2al47kjzq";
+      sha256 = "196rijl2k24ysjihdsisfy8hjl21wcn98fn8wagvxsvjf7anyg9k";
     };
   };
 
   idea-ultimate = buildIdea rec {
     name = "idea-ultimate-${version}";
-    version = "14.1.2";
-    build = "IU-141.713.2";
+    version = "14.1.5";
+    build = "IU-141.2735.5";
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIU-${version}.tar.gz";
-      sha256 = "1ddy0f83rs3yx3w8v49cmlhkc8qxapdh702g26gzlapbpvfw58ay";
+      sha256 = "0wxb7m0k3kbjnr42rwzsk4g09qxqsmnpsdj769azamvsr4p904k9";
     };
   };
 
   ruby-mine = buildRubyMine rec {
     name = "ruby-mine-${version}";
-    version = "7.0.4";
-    build = "139.1231";
+    version = "7.1.2";
+    build = "141.1119";
     description = "The Most Intelligent Ruby and Rails IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
-      sha256 = "08b0iwccb5w9b1yk0kbs99r5mxkcyxqs9mkr57wb5j71an80yx38";
+      sha256 = "1gz14lv5jhnrnshp7lkx3wgrdf0y60abs4q78yhv2x9dc6ld1gmj";
     };
   };
 
   pycharm-community = buildPycharm rec {
     name = "pycharm-community-${version}";
-    version = "4.0.6";
-    build = "139.1659";
-    description = "PyCharm 4.0 Community Edition";
+    version = "4.5.4";
+    build = "141.2569";
+    description = "PyCharm Community Edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
-      url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "16lf2slssfgbds6zyp2rs0ssrg8aw5d2w7b755iqimiyfhyyv83s";
+      url = "https://download-cf.jetbrains.com/python/${name}.tar.gz";
+      sha256 = "0a2208rjcvcm9dww317clwiil3ddza3qq9wqkvr0rrcfp1739pbb";
     };
   };
 
   pycharm-professional = buildPycharm rec {
     name = "pycharm-professional-${version}";
-    version = "4.0.6";
-    build = "139.1659";
-    description = "PyCharm 4.0 Professional Edition";
+    version = "4.5.4";
+    build = "141.2569";
+    description = "PyCharm Professional Edition";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
-      url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "0wavw41nzqnx75y3k3l5kq09i5d9j8hb4r6a0y3nxzqvmdfza55r";
+      url = "https://download-cf.jetbrains.com/python/${name}.tar.gz";
+      sha256 = "1dy64myih92kxmi6h9y142dbmmwwphs2n3vswyg53881g5i0lfhd";
     };
   };
 
   phpstorm = buildPhpStorm rec {
     name = "phpstorm-${version}";
-    version = "8.0.3";
-    build = "PS-139.1348";
+    version = "9.0";
+    build = "PS-141.1912";
     description = "Professional IDE for Web and PHP developers";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
-      sha256 = "1x67nfr3nap93cx7yhdrp02xvp1v6g74zy7hdmhx41sal7hzy49b";
+      sha256 = "1n6p8xiv0nrs6yf0250mpga291msnrfamv573dva9f17cc3df2pp";
     };
   };
 
   webstorm = buildWebStorm rec {
     name = "webstorm-${version}";
-    version = "9.0.3";
-    build = "139.1112";
+    version = "10.0.4";
+    build = "141.1550";
     description = "Professional IDE for Web and JavaScript devlopment";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
-      sha256 = "e4cfe7b5f1220b68d880c4f236df9c9df2b1efcc04775afad6149d949f45f0aa";
+      sha256 = "171i544ssvjnbr1vq6ncxlj38swsygacavsa427qa4s5wzyvdipj";
     };
   };
 
diff --git a/pkgs/applications/editors/jedit/default.nix b/pkgs/applications/editors/jedit/default.nix
index 7dfb651d7d3..11322e8240c 100644
--- a/pkgs/applications/editors/jedit/default.nix
+++ b/pkgs/applications/editors/jedit/default.nix
@@ -1,11 +1,7 @@
-{ stdenv, fetchurl, ant, jdk, commonsBsf, commonsLogging }:
+{ stdenv, fetchurl, ant, jdk, commonsBsf, commonsLogging, bsh }:
 
 let
   version = "5.2.0";
-  bsh = fetchurl {
-    url = http://www.beanshell.org/bsh-2.0b4.jar;
-    sha256 = "1di7hj2yms1m3wa8k70jpw0wzfnrgibpqnvdk33ahfaqi03mqfci";
-  };
   bcpg = fetchurl {
     url = http://central.maven.org/maven2/org/bouncycastle/bcpg-jdk16/1.46/bcpg-jdk16-1.46.jar;
     sha256 = "16xhmwks4l65m5x150nd23y5lyppha9sa5fj65rzhxw66gbli82d";
diff --git a/pkgs/applications/editors/joe/default.nix b/pkgs/applications/editors/joe/default.nix
index 0e97a036905..b08f98a054c 100644
--- a/pkgs/applications/editors/joe/default.nix
+++ b/pkgs/applications/editors/joe/default.nix
@@ -1,14 +1,17 @@
-{stdenv, fetchurl} :
+{ stdenv, fetchurl } :
 
 stdenv.mkDerivation rec {
-  name = "joe-3.7";
+  version = "4.1";
+  name = "joe-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/joe-editor/${name}.tar.gz";
-    sha256 = "0vqhffdjn3xwsfa383i6kdrpfwilq8b382ljjhy1v32smphmdr6a";
+    sha256 = "1nznzr9h0rh8g15c56yxzwpn2labx9sgsak0wcnpj7wmpnr12ql1";
   };
 
-  meta = {
+  meta = with stdenv.lib; {
+    description = "A full featured terminal-based screen editor";
     homepage = http://joe-editor.sourceforge.net;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/applications/editors/kile/default.nix b/pkgs/applications/editors/kile/default.nix
index b428289b95d..7f7b22dfa13 100644
--- a/pkgs/applications/editors/kile/default.nix
+++ b/pkgs/applications/editors/kile/default.nix
@@ -1,4 +1,6 @@
-{stdenv, fetchurl, kdelibs, cmake, gettext }:
+{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
+, shared_mime_info, kdelibs
+}:
 
 stdenv.mkDerivation rec {
   name = "kile-2.1.3";
@@ -8,7 +10,9 @@ stdenv.mkDerivation rec {
     sha256 = "18nfi37s46v9xav7vyki3phasddgcy4m7nywzxis198vr97yqqx0";
   };
 
-  nativeBuildInputs = [ cmake gettext ];
+  nativeBuildInputs = [
+    automoc4 cmake gettext perl pkgconfig shared_mime_info
+  ];
   buildInputs = [ kdelibs ];
 
   # for KDE 4.7 the nl translations fail since kile-2.1.2
diff --git a/pkgs/applications/editors/leo-editor/default.nix b/pkgs/applications/editors/leo-editor/default.nix
new file mode 100644
index 00000000000..4c7e3cc08af
--- /dev/null
+++ b/pkgs/applications/editors/leo-editor/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, pythonPackages, fetchgit }:
+pythonPackages.buildPythonPackage rec {
+  name = "leo-editor-${version}";
+  version = "5.1";
+
+  namePrefix = "";
+
+  src = fetchgit {
+    url = "https://github.com/leo-editor/leo-editor";
+    rev = "refs/tags/Leo-${version}-final";
+    sha256 = "3cc5259609890bbde9cfee71f4f60b959b3f5b740f7d403c99ea2d9796b4758e";
+  };
+
+  propagatedBuildInputs = with pythonPackages; [ pyqt4 sqlite3 ];
+
+  meta = {
+    homepage = "http://leoeditor.com";
+    description = "A powerful folding editor";
+    longDescription = "Leo is a PIM, IDE and outliner that accelerates the work flow of programmers, authors and web designers.";
+    license = stdenv.lib.licenses.mit;
+    maintainers = with stdenv.lib.maintainers; [ leonardoce ];
+  };
+}
diff --git a/pkgs/applications/editors/lighttable/default.nix b/pkgs/applications/editors/lighttable/default.nix
index 287aab31fec..38a01db0c5b 100644
--- a/pkgs/applications/editors/lighttable/default.nix
+++ b/pkgs/applications/editors/lighttable/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, buildEnv, makeDesktopItem, makeWrapper, zlib, glib, alsaLib
 , dbus, gtk, atk, pango, freetype, fontconfig, libgnome_keyring3, gdk_pixbuf
-, cairo, cups, expat, libgpgerror, nspr, gnome3, nss, xlibs, udev
+, cairo, cups, expat, libgpgerror, nspr, gnome3, nss, xorg, udev
 }:
 
 let
   libPath = stdenv.lib.makeLibraryPath [
       stdenv.cc.cc zlib glib dbus gtk atk pango freetype libgnome_keyring3 nss
       fontconfig gdk_pixbuf cairo cups expat libgpgerror alsaLib nspr gnome3.gconf
-      xlibs.libXrender xlibs.libX11 xlibs.libXext xlibs.libXdamage xlibs.libXtst
-      xlibs.libXcomposite xlibs.libXi xlibs.libXfixes
+      xorg.libXrender xorg.libX11 xorg.libXext xorg.libXdamage xorg.libXtst
+      xorg.libXcomposite xorg.libXi xorg.libXfixes
 ];
 in
 assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
@@ -53,6 +53,6 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "the next generation code editor";
     homepage = http://www.lighttable.com/;
-    license = [ licenses.gpl3 ];
+    license = licenses.gpl3;
   };
 }
diff --git a/pkgs/applications/editors/monodevelop/default.nix b/pkgs/applications/editors/monodevelop/default.nix
index 4e8e6079ff1..69d6a3b2789 100644
--- a/pkgs/applications/editors/monodevelop/default.nix
+++ b/pkgs/applications/editors/monodevelop/default.nix
@@ -1,59 +1,50 @@
-{ stdenv, fetchurl, fetchgit
+{ stdenv, fetchurl, fetchgit, fetchNuGet
 , autoconf, automake, pkgconfig, shared_mime_info, intltool
 , glib, mono, gtk-sharp, gnome, gnome-sharp, unzip
+, dotnetPackages
 }:
 
 stdenv.mkDerivation rec {
-  version = "5.7.0.660";
-  revision = "6a74f9bdb90d9415b597064d815c9be38b401fee";
+  version = "5.9.4.5";
+  revision = "8010a90f6e246b32364e3fb46ef2c9d1be9c9a2b";
   name = "monodevelop-${version}";
 
-  srcs = [
-    (fetchurl {
-      url = "http://download.mono-project.com/sources/monodevelop/${name}.tar.bz2";
-      sha256 = "0i9fpjkcys991dhxh02zf9imar3aj6fldk9ymy09vmr10f4d7vbf";
-    })
-    (fetchurl {
-      url = "https://launchpadlibrarian.net/153448659/NUnit-2.6.3.zip";
-      sha256 = "0vzbziq44zy7fyyhb44mf9ypfi7gvs17rxpg8c9d9lvvdpkshhcp";
-    })
-    (fetchurl {
-      url = "https://launchpadlibrarian.net/68057829/NUnit-2.5.10.11092.zip";
-      sha256 = "0k5h5bz1p2v3d0w0hpkpbpvdkcszgp8sr9ik498r1bs72w5qlwnc";
-    })
-    (fetchgit {
-      url = "https://github.com/mono/nuget-binary.git";
-      rev = "ecb27dd49384d70b6c861d28763906f2b25b7c8";
-      sha256 = "0dj0yglgwn07xw2crr66vl0vcgnr6m041pynyq0kdd0z8nlp92ki";
-    })
-  ];
+  src = fetchurl {
+    url = "http://download.mono-project.com/sources/monodevelop/${name}.tar.bz2";
+    sha256 = "0bim4bfv3zwijafl9g0cx3159zq43dlcv74mnyrda41j4p52w5ji";
+  };
 
-  sourceRoot = "monodevelop-5.7";
+  nunit2510 = fetchurl {
+    url = "http://launchpad.net/nunitv2/2.5/2.5.10/+download/NUnit-2.5.10.11092.zip";
+    sha256 = "0k5h5bz1p2v3d0w0hpkpbpvdkcszgp8sr9ik498r1bs72w5qlwnc";
+  };
 
   postPatch = ''
     # From https://bugzilla.xamarin.com/show_bug.cgi?id=23696#c19
 
-    # it seems parts of MonoDevelop 5.2+ need NUnit 2.6.4, which isn't included
-    # (?), so download it and put it in the right place in the tree
-    mkdir -v -p packages/NUnit.2.6.3/lib
-    cp -vfR ../NUnit-2.6.3/bin/framework/* packages/NUnit.2.6.3/lib
-    mkdir -v -p packages/NUnit.Runners.2.6.3/tools/lib
-    cp -vfR ../NUnit-2.6.3/bin/lib/* packages/NUnit.Runners.2.6.3/tools/lib
-
     # cecil needs NUnit 2.5.10 - this is also missing from the tar
-    cp -vfR ../NUnit-2.5.10.11092/bin/net-2.0/framework/* external/cecil/Test/libs/nunit-2.5.10
+    unzip -j ${nunit2510} -d external/cecil/Test/libs/nunit-2.5.10 NUnit-2.5.10.11092/bin/net-2.0/framework/\*
 
     # the tar doesn't include the nuget binary, so grab it from github and copy it
     # into the right place
-    cp -vfR ../nuget-binary-*/* external/nuget-binary/
-    '';
+    cp -vfR "$(dirname $(pkg-config NuGet.Core --variable=Libraries))"/* external/nuget-binary/
+  '';
+
+  # Revert this commit which broke the ability to use pkg-config to locate dlls
+  patchFlags = [ "-p2" ];
+  patches = [ ./git-revert-12d610fb3f6dce121df538e36f21d8c2eeb0a6e3.patch ];
 
   buildInputs = [
     autoconf automake pkgconfig shared_mime_info intltool
     mono gtk-sharp gnome-sharp unzip
+    pkgconfig
+    dotnetPackages.NUnit
+    dotnetPackages.NUnitRunners
+    dotnetPackages.Nuget
   ];
 
   preConfigure = "patchShebangs ./configure";
+
   preBuild = ''
     cat > ./buildinfo <<EOF
     Release ID: ${version}
@@ -72,6 +63,12 @@ stdenv.mkDerivation rec {
     > 
     EOF
     done
+
+    # Without this, you get a missing DLL error any time you install an addin..
+    ln -sv `pkg-config nunit.core --variable=Libraries` $out/lib/monodevelop/AddIns/NUnit
+    ln -sv `pkg-config nunit.core.interfaces --variable=Libraries` $out/lib/monodevelop/AddIns/NUnit
+    ln -sv `pkg-config nunit.framework --variable=Libraries` $out/lib/monodevelop/AddIns/NUnit
+    ln -sv `pkg-config nunit.util --variable=Libraries` $out/lib/monodevelop/AddIns/NUnit
   '';
 
   dontStrip = true;
diff --git a/pkgs/applications/editors/monodevelop/git-revert-12d610fb3f6dce121df538e36f21d8c2eeb0a6e3.patch b/pkgs/applications/editors/monodevelop/git-revert-12d610fb3f6dce121df538e36f21d8c2eeb0a6e3.patch
new file mode 100644
index 00000000000..969aad33ec0
--- /dev/null
+++ b/pkgs/applications/editors/monodevelop/git-revert-12d610fb3f6dce121df538e36f21d8c2eeb0a6e3.patch
@@ -0,0 +1,57 @@
+diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.csproj b/main/src/addins/AspNet/MonoDevelop.AspNet.csproj
+index 02d3a01..c6daaad 100644
+--- a/main/src/addins/AspNet/MonoDevelop.AspNet.csproj
++++ b/main/src/addins/AspNet/MonoDevelop.AspNet.csproj
+@@ -452,34 +452,6 @@
+     <None Include="Templates\Projects\WebApplication.xpt.xml">
+       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+     </None>
+-    <None Include="..\..\..\packages\Microsoft.AspNet.Mvc.5.2.2\lib\net45\System.Web.Mvc.dll">
+-      <Link>System.Web.Mvc.dll</Link>
+-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+-    </None>
+-    <None Include="..\..\..\packages\Microsoft.AspNet.Razor.3.2.2\lib\net45\System.Web.Razor.dll">
+-      <Link>System.Web.Razor.dll</Link>
+-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+-    </None>
+-    <None Include="..\..\..\packages\Microsoft.AspNet.WebPages.3.2.2\lib\net45\System.Web.Helpers.dll">
+-      <Link>System.Web.Helpers.dll</Link>
+-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+-    </None>
+-    <None Include="..\..\..\packages\Microsoft.AspNet.WebPages.3.2.2\lib\net45\System.Web.WebPages.Deployment.dll">
+-      <Link>System.Web.WebPages.Deployment.dll</Link>
+-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+-    </None>
+-    <None Include="..\..\..\packages\Microsoft.AspNet.WebPages.3.2.2\lib\net45\System.Web.WebPages.dll">
+-      <Link>System.Web.WebPages.dll</Link>
+-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+-    </None>
+-    <None Include="..\..\..\packages\Microsoft.AspNet.WebPages.3.2.2\lib\net45\System.Web.WebPages.Razor.dll">
+-      <Link>System.Web.WebPages.Razor.dll</Link>
+-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+-    </None>
+-    <None Include="..\..\..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll">
+-      <Link>Microsoft.Web.Infrastructure.dll</Link>
+-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+-    </None>
+     <None Include="packages.config" />
+   </ItemGroup>
+   <ItemGroup>
+diff --git a/main/src/addins/AspNet/Properties/MonoDevelop.AspNet.addin.xml b/main/src/addins/AspNet/Properties/MonoDevelop.AspNet.addin.xml
+index eab7c32..4a75311 100644
+--- a/main/src/addins/AspNet/Properties/MonoDevelop.AspNet.addin.xml
++++ b/main/src/addins/AspNet/Properties/MonoDevelop.AspNet.addin.xml
+@@ -1,13 +1,6 @@
+ <ExtensionModel>

+ 	

+ 	<Runtime>

+-		<Import assembly = "System.Web.Helpers.dll" />
+-		<Import assembly = "System.Web.Mvc.dll" />
+-		<Import assembly = "System.Web.Razor.dll" />
+-		<Import assembly = "System.Web.WebPages.Deployment.dll" />
+-		<Import assembly = "System.Web.WebPages.dll" />
+-		<Import assembly = "System.Web.WebPages.Razor.dll" />
+-
+ 		<Import file = "Html/Schemas/xhtml1-strict.xsd" />

+ 		<Import file = "Html/Schemas/xhtml1-transitional.xsd" />

+ 		<Import file = "Html/Schemas/xhtml1-frameset.xsd" />

diff --git a/pkgs/applications/editors/nano/default.nix b/pkgs/applications/editors/nano/default.nix
index 11137d1a962..9fc223d81da 100644
--- a/pkgs/applications/editors/nano/default.nix
+++ b/pkgs/applications/editors/nano/default.nix
@@ -11,10 +11,10 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "nano-${version}";
-  version = "2.4.1";
+  version = "2.4.2";
   src = fetchurl {
     url = "mirror://gnu/nano/${name}.tar.gz";
-    sha256 = "1li99ycnva40hiavm9lf34gjny74mj469x6ismrfm6wv3dgfn33a";
+    sha256 = "1fb5gzdm3jdx1f2vyanjvdmppaz082lf4kinyffnssgmzhc7zkf8";
   };
   buildInputs = [ ncurses ] ++ optional enableNls gettext;
   configureFlags = ''
diff --git a/pkgs/applications/editors/ne/default.nix b/pkgs/applications/editors/ne/default.nix
new file mode 100644
index 00000000000..4e8324894ab
--- /dev/null
+++ b/pkgs/applications/editors/ne/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchFromGitHub, ncurses, texinfo, tetex, perl, ghostscript }:
+
+
+stdenv.mkDerivation rec {
+  name = "ne-${version}";
+  version = "3.0.1";
+  src = fetchFromGitHub {
+    owner = "vigna";
+    repo = "ne";
+    rev = version;
+    sha256 = "05inzhlqlf4ka22q78q389pr34bsb4lgp1i5qh550vjkb2cvbdfp";
+  };
+  buildInputs = [ ncurses tetex texinfo perl ghostscript ];
+  dontBuild = true;
+  installPhase = ''
+    substituteInPlace src/makefile --replace "CC=c99" "cc=gcc"
+    substituteInPlace src/makefile --replace "-lcurses" "-lncurses"
+    substituteInPlace makefile --replace "./version.pl" "perl version.pl"
+    cd doc && make && cd ..
+    cd src && make && cd ..
+    make PREFIX=$out install
+  '';
+  
+  meta = {
+    description = "the nice editor";
+    homepage = https://github.com/vigna/ne;
+    longDescription = ''
+      ne is a free (GPL'd) text editor based on the POSIX standard that runs (we hope) on almost any 
+UN*X machine. ne is easy to use for the beginner, but powerful and fully configurable for the wizard, 
+and most sparing in its resource usage. See the manual for some highlights of ne's features.      
+    '';
+    license = stdenv.lib.licenses.gpl3;
+  };
+}
diff --git a/pkgs/applications/editors/nedit/default.nix b/pkgs/applications/editors/nedit/default.nix
index a4dfc4719dc..56a8ac62025 100644
--- a/pkgs/applications/editors/nedit/default.nix
+++ b/pkgs/applications/editors/nedit/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, x11, motif, libXpm }:
+{ stdenv, fetchurl, xlibsWrapper, motif, libXpm }:
 
 assert stdenv.isLinux;
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "023hwpqc57mnzvg6p7jda6193afgjzxzajlhwhqvk3jq2kdv6zna";
   };
 
-  buildInputs = [ x11 motif libXpm ];
+  buildInputs = [ xlibsWrapper motif libXpm ];
 
   buildFlags = if stdenv.isLinux then "linux" else "";
 
diff --git a/pkgs/applications/editors/neovim/default.nix b/pkgs/applications/editors/neovim/default.nix
index 1c1c050b000..c55d4b0e76a 100644
--- a/pkgs/applications/editors/neovim/default.nix
+++ b/pkgs/applications/editors/neovim/default.nix
@@ -1,65 +1,151 @@
-{ stdenv, fetchgit, fetchurl, unzip, callPackage, ncurses, gettext, pkgconfig,
-cmake, pkgs, lpeg, lua, luajit, luaMessagePack, luabitop }:
+{ stdenv, fetchFromGitHub, cmake, gettext, glib, libmsgpack, libtermkey
+, libtool, libuv, lpeg, lua, luajit, luaMessagePack, luabitop, ncurses, perl
+, pkgconfig, unibilium, makeWrapper, vimUtils
 
-stdenv.mkDerivation rec {
-  name = "neovim-nightly";
+, withPython ? true, pythonPackages, extraPythonPackages ? []
+, withPython3 ? true, python3Packages, extraPython3Packages ? []
+, withJemalloc ? true, jemalloc
 
-  version = "nightly";
+, vimAlias ? false
+, configure ? null
+}:
 
-  src = fetchgit {
-    url = "https://github.com/neovim/neovim";
-    rev = "68fcd8b696dae33897303c9f8265629a31afbf17";
-    sha256 = "0hxkcy641jpn4qka44gfvhmb6q3dkjx6lvn9748lcl2gx2d36w4i";
-  };
+with stdenv.lib;
+
+let
+
+  version = "2015-06-09";
 
-  libmsgpack = stdenv.mkDerivation rec {
-    version = "0.5.9";
-    name = "libmsgpack-${version}";
+  # Note: this is NOT the libvterm already in nixpkgs, but some NIH silliness:
+  neovimLibvterm = let version = "2015-02-23"; in stdenv.mkDerivation {
+    name = "neovim-libvterm-${version}";
 
-    src = fetchgit {
-      rev = "ecf4b09acd29746829b6a02939db91dfdec635b4";
-      url = "https://github.com/msgpack/msgpack-c";
-      sha256 = "076ygqgxrc3vk2l20l8x2cgcv05py3am6mjjkknr418pf8yav2ww";
+    src = fetchFromGitHub {
+      sha256 = "0i2h74jrx4fy90sv57xj8g4lbjjg4nhrq2rv6rz576fmqfpllcc5";
+      rev = "20ad1396c178c72873aeeb2870bd726f847acb70";
+      repo = "libvterm";
+      owner = "neovim";
     };
 
-    buildInputs = [ cmake ];
+    buildInputs = [ perl ];
+    nativeBuildInputs = [ libtool ];
 
-    meta = with stdenv.lib; {
-      description = "MessagePack implementation for C and C++";
-      homepage = http://msgpack.org;
-      maintainers = [ maintainers.manveru ];
-      license = licenses.asl20;
-      platforms = platforms.all;
+    makeFlags = [ "PREFIX=$(out)" ]
+      ++ stdenv.lib.optional stdenv.isDarwin "LIBTOOL=${libtool}/bin/libtool";
+
+    enableParallelBuilding = true;
+
+    meta = {
+      description = "VT220/xterm/ECMA-48 terminal emulator library";
+      homepage = http://www.leonerd.org.uk/code/libvterm/;
+      license = licenses.mit;
+      maintainers = with maintainers; [ nckx ];
+      platforms = platforms.unix;
     };
   };
 
-  enableParallelBuilding = true;
-
-  buildInputs = [
-    ncurses
-    pkgconfig
-    cmake
-    pkgs.libuvVersions.v0_11_29
-    luajit
-    lua
-    lpeg
-    luaMessagePack
-    luabitop
-    libmsgpack
-  ];
-  nativeBuildInputs = [ gettext ];
-
-  LUA_CPATH="${lpeg}/lib/lua/${lua.luaversion}/?.so;${luabitop}/lib/lua/5.2/?.so";
-  LUA_PATH="${luaMessagePack}/share/lua/5.1/?.lua";
-  cmakeFlags = [
-    "-DUSE_BUNDLED_MSGPACK=ON"
-  ];
-
-  meta = with stdenv.lib; {
-    description = "Aggressive refactor of Vim";
-    homepage    = http://www.neovim.org;
-    maintainers = with maintainers; [ manveru ];
-    platforms   = platforms.unix;
+  pythonEnv = pythonPackages.python.buildEnv.override {
+    extraLibs = [ pythonPackages.neovim ] ++ extraPythonPackages;
+    ignoreCollisions = true;
   };
-}
 
+  python3Env = python3Packages.python.buildEnv.override {
+    extraLibs = [ python3Packages.neovim ] ++ extraPython3Packages;
+    ignoreCollisions = true;
+  };
+
+  neovim = stdenv.mkDerivation {
+    name = "neovim-${version}";
+
+    src = fetchFromGitHub {
+      sha256 = "1lycql0lwi7ynrsaln4kxybwvxb9fvganiq3ba4pnpcfgl155k1j";
+      rev = "6270d431aaeed71e7a8782411f36409ab8e0ee35";
+      repo = "neovim";
+      owner = "neovim";
+    };
+
+    enableParallelBuilding = true;
+
+    buildInputs = [
+      glib
+      libtermkey
+      libuv
+      luajit
+      lua
+      lpeg
+      luaMessagePack
+      luabitop
+      libmsgpack
+      ncurses
+      neovimLibvterm
+      unibilium
+    ] ++ optional withJemalloc jemalloc;
+
+    nativeBuildInputs = [
+      cmake
+      gettext
+      makeWrapper
+      pkgconfig
+    ];
+
+    LUA_CPATH="${lpeg}/lib/lua/${lua.luaversion}/?.so;${luabitop}/lib/lua/5.2/?.so";
+    LUA_PATH="${luaMessagePack}/share/lua/5.1/?.lua";
+
+    preConfigure = stdenv.lib.optionalString stdenv.isDarwin ''
+      export DYLD_LIBRARY_PATH=${jemalloc}/lib
+    '';
+
+    postInstall = stdenv.lib.optionalString stdenv.isDarwin ''
+      echo patching $out/bin/nvim
+      install_name_tool -change libjemalloc.1.dylib \
+                ${jemalloc}/lib/libjemalloc.1.dylib \
+                $out/bin/nvim
+    '' + optionalString withPython ''
+      ln -s ${pythonEnv}/bin/python $out/bin/nvim-python
+    '' + optionalString withPython3 ''
+      ln -s ${python3Env}/bin/python $out/bin/nvim-python3
+    '' + optionalString (withPython || withPython3) ''
+        wrapProgram $out/bin/nvim --add-flags "${
+          (optionalString withPython
+            ''--cmd \"let g:python_host_prog='$out/bin/nvim-python'\" '') +
+          (optionalString withPython3
+            ''--cmd \"let g:python3_host_prog='$out/bin/nvim-python3'\" '')
+        }"
+    '';
+
+    meta = {
+      description = "Vim text editor fork focused on extensibility and agility";
+      longDescription = ''
+        Neovim is a project that seeks to aggressively refactor Vim in order to:
+        - Simplify maintenance and encourage contributions
+        - Split the work between multiple developers
+        - Enable the implementation of new/modern user interfaces without any
+          modifications to the core source
+        - Improve extensibility with a new plugin architecture
+      '';
+      homepage    = http://www.neovim.io;
+      # "Contributions committed before b17d96 by authors who did not sign the
+      # Contributor License Agreement (CLA) remain under the Vim license.
+      # Contributions committed after b17d96 are licensed under Apache 2.0 unless
+      # those contributions were copied from Vim (identified in the commit logs
+      # by the vim-patch token). See LICENSE for details."
+      license = with licenses; [ asl20 vim ];
+      maintainers = with maintainers; [ manveru nckx garbas ];
+      platforms   = platforms.unix;
+    };
+  };
+
+in if (vimAlias == false && configure == null) then neovim else stdenv.mkDerivation {
+  name = "neovim-${version}-configured";
+  nativeBuildInputs = [ makeWrapper ];
+  buildCommand = ''
+    mkdir -p $out/bin
+    for item in ${neovim}/bin/*; do
+      ln -s $item $out/bin/
+    done
+  '' + optionalString vimAlias ''
+    ln -s $out/bin/nvim $out/bin/vim
+  '' + optionalString (configure != null) ''
+    wrapProgram $out/bin/nvim --add-flags "-u ${vimUtils.vimrcFile configure}"
+  '';
+}
diff --git a/pkgs/applications/editors/netbeans/default.nix b/pkgs/applications/editors/netbeans/default.nix
index 79dbb589d23..3ea0c71f125 100644
--- a/pkgs/applications/editors/netbeans/default.nix
+++ b/pkgs/applications/editors/netbeans/default.nix
@@ -1,4 +1,6 @@
-{stdenv, fetchurl, jdk, unzip, which, makeWrapper, makeDesktopItem}:
+{ stdenv, fetchurl, makeWrapper, makeDesktopItem
+, gawk, jdk, perl, python, unzip, which
+}:
 
 let
   desktopItem = makeDesktopItem {
@@ -11,19 +13,24 @@ let
   };
 in
 stdenv.mkDerivation {
-  name = "netbeans-7.4";
+  name = "netbeans-8.0.2";
   src = fetchurl {
-    url = http://download.netbeans.org/netbeans/7.4/final/zip/netbeans-7.4-201310111528.zip;
-    sha256 = "0nrnghnsdix5cmp86xi1gmvarhjk2k8mlbld3dfa9impm8gpv6mx";
+    url = http://download.netbeans.org/netbeans/8.0.2/final/zip/netbeans-8.0.2-201411181905.zip;
+    sha256 = "1h9cqpwsnrhcnn4fqz3rr4s5jln8cfwki8af9zikq9j6aza337xv";
   };
+
   buildCommand = ''
-    # Unpack and copy the stuff
+    # Unpack and perform some path patching.
     unzip $src
-    mkdir -p $out
-    cp -a netbeans $out
-    
-    # Create a wrapper capable of starting it
+    patch -p1 <${./path.patch}
+    substituteInPlace netbeans/platform/lib/nbexec \
+        --subst-var-by AWK ${gawk}/bin/awk
+    patchShebangs .
+
+    # Copy to installation directory and create a wrapper capable of starting
+    # it.
     mkdir -p $out/bin
+    cp -a netbeans $out
     makeWrapper $out/netbeans/bin/netbeans $out/bin/netbeans \
       --prefix PATH : ${jdk}/bin:${which}/bin \
       --prefix JAVA_HOME : ${jdk.home} \
@@ -34,7 +41,7 @@ stdenv.mkDerivation {
     cp ${desktopItem}/share/applications/* $out/share/applications
   '';
   
-  buildInputs = [ unzip makeWrapper ];
+  buildInputs = [ makeWrapper perl python unzip ];
   
   meta = {
     description = "An integrated development environment for Java, C, C++ and PHP";
diff --git a/pkgs/applications/editors/netbeans/path.patch b/pkgs/applications/editors/netbeans/path.patch
new file mode 100644
index 00000000000..57b5730e137
--- /dev/null
+++ b/pkgs/applications/editors/netbeans/path.patch
@@ -0,0 +1,11 @@
+--- a/netbeans/platform/lib/nbexec	2015-09-29 21:26:39.282600903 -0700
++++ b/netbeans/platform/lib/nbexec	2015-09-29 21:26:58.977697858 -0700
+@@ -198,7 +198,7 @@
+         SunOS*) awk=nawk ;;
+         *) awk=awk ;;
+     esac
+-    jdk_version=$("${jdkhome}/bin/java" -version 2>&1 | "/usr/bin/${awk}" -F '"' '/version/ {print substr($2, 1, 3)}')    
++    jdk_version=$("${jdkhome}/bin/java" -version 2>&1 | "@AWK@" -F '"' '/version/ {print substr($2, 1, 3)}')    
+     if [ "$jdk_version" = "1.7" ] ; then   
+         jargs="$jargs $launcher_args"
+     fi
diff --git a/pkgs/applications/editors/nvi/default.nix b/pkgs/applications/editors/nvi/default.nix
index ee9b775453c..89762d5bc33 100644
--- a/pkgs/applications/editors/nvi/default.nix
+++ b/pkgs/applications/editors/nvi/default.nix
@@ -17,9 +17,9 @@ stdenv.mkDerivation rec {
   # nvi tries to write to a usual tmp directory (/var/tmp),
   # so we will force it to use /tmp.
   patchPhase = ''
-    sed -i -e s/-lcurses/-lncurses/ \
+    sed -i build/configure \
       -e s@vi_cv_path_preserve=no@vi_cv_path_preserve=/tmp/vi.recover@ \
-      -e s@/var/tmp@@ build/configure
+      -e s@/var/tmp@@
   '';
 
   configurePhase = ''
diff --git a/pkgs/applications/editors/sublime/default.nix b/pkgs/applications/editors/sublime/default.nix
index ffa1c4eed34..c7b0f9864c9 100644
--- a/pkgs/applications/editors/sublime/default.nix
+++ b/pkgs/applications/editors/sublime/default.nix
@@ -1,6 +1,6 @@
-{ fetchurl, stdenv, glib, xlibs, cairo, gtk}:
+{ fetchurl, stdenv, glib, xorg, cairo, gtk}:
 let
-  libPath = stdenv.lib.makeLibraryPath [glib xlibs.libX11 gtk cairo];
+  libPath = stdenv.lib.makeLibraryPath [glib xorg.libX11 gtk cairo];
 in
 assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
 
diff --git a/pkgs/applications/editors/sublime3/default.nix b/pkgs/applications/editors/sublime3/default.nix
index 1764c85ca7d..b26d27a8bc5 100644
--- a/pkgs/applications/editors/sublime3/default.nix
+++ b/pkgs/applications/editors/sublime3/default.nix
@@ -1,10 +1,10 @@
-{ fetchurl, stdenv, glib, xlibs, cairo, gtk, pango, makeWrapper, openssl, bzip2 }:
+{ fetchurl, stdenv, glib, xorg, cairo, gtk, pango, makeWrapper, openssl, bzip2 }:
 
 assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
 
 let
   build = "3083";
-  libPath = stdenv.lib.makeLibraryPath [glib xlibs.libX11 gtk cairo pango];
+  libPath = stdenv.lib.makeLibraryPath [glib xorg.libX11 gtk cairo pango];
 in let
   # package with just the binaries
   sublime = stdenv.mkDerivation {
diff --git a/pkgs/applications/editors/supertux-editor/default.nix b/pkgs/applications/editors/supertux-editor/default.nix
new file mode 100644
index 00000000000..8dcc718e7bb
--- /dev/null
+++ b/pkgs/applications/editors/supertux-editor/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchFromGitHub, mono, gtk-sharp, pkgconfig, makeWrapper, gnome, gtk }:
+stdenv.mkDerivation rec {
+  version = "git-2014-08-20";
+  name = "supertux-editor-${version}";
+
+  src = fetchFromGitHub {
+    owner = "SuperTux";
+    repo = "supertux-editor";
+    rev = "0c666e8ccc7daf9e9720fe79abd63f8fa979c5e5";
+    sha256 = "08y5haclgxvcii3hpdvn1ah8qd0f3n8xgxxs8zryj02b8n7cz3vx";
+  };
+
+  buildInputs = [mono gtk-sharp pkgconfig makeWrapper gnome.libglade gtk ];
+
+  installPhase = ''
+    mkdir -p $out/bin $out/lib/supertux-editor
+    cp *.{dll,dll.config,exe} $out/lib/supertux-editor
+    makeWrapper "${mono}/bin/mono" $out/bin/supertux-editor \
+      --add-flags "$out/lib/supertux-editor/supertux-editor.exe" \
+      --prefix MONO_GAC_PREFIX : ${gtk-sharp} \
+      --suffix LD_LIBRARY_PATH : $(echo $NIX_LDFLAGS | sed 's/ -L/:/g;s/ -rpath /:/g;s/-rpath //')
+
+    makeWrapper "${mono}/bin/mono" $out/bin/supertux-editor-debug \
+      --add-flags "--debug $out/lib/supertux-editor/supertux-editor.exe" \
+      --prefix MONO_GAC_PREFIX : ${gtk-sharp} \
+      --suffix LD_LIBRARY_PATH : $(echo $NIX_LDFLAGS | sed 's/ -L/:/g;s/ -rpath /:/g;s/-rpath //')
+  '';
+
+  # Always needed on Mono, otherwise nothing runs
+  dontStrip = true;
+
+  meta = with stdenv.lib; {
+    description = "Level editor for SuperTux";
+    homepage = https://github.com/SuperTux/supertux-editor;
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ mathnerd314 ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/editors/texmacs/default.nix b/pkgs/applications/editors/texmacs/default.nix
index a258b634105..e415239d76f 100644
--- a/pkgs/applications/editors/texmacs/default.nix
+++ b/pkgs/applications/editors/texmacs/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, guile, libX11, libXext, xmodmap, which, makeWrapper, freetype,
+{stdenv, fetchurl, guile_1_8, qt4, zlib, xmodmap, which, makeWrapper, freetype,
  tex ? null,
  aspell ? null,
  ghostscriptX ? null,
@@ -9,7 +9,7 @@
 
 let 
   pname = "TeXmacs";
-  version = "1.0.7.11";
+  version = "1.99.2";
   extraFontsSrc = fetchurl {
     url = "ftp://ftp.texmacs.org/pub/TeXmacs/fonts/TeXmacs-extra-fonts-1.0-noarch.tar.gz";
     sha256 = "0hylgjmd95y9yahbblmawkkw0i71vb145xxv2xqrmff81301n6k7";
@@ -39,11 +39,11 @@ stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
-    url = "ftp://ftp.texmacs.org/pub/${pname}/targz/${name}-src.tar.gz";
-    sha256 = "0x1r9417dzbrxf785faq1vjszqdj94ig2lzwm8sd92bxcxr6knfa";
+    url = "http://www.texmacs.org/Download/ftp/tmftp/source/TeXmacs-${version}-src.tar.gz";
+    sha256 = "0l48g9746igiaxw657shm8g3xxk565vzsviajlrxqyljbh6py0fs";
   };
 
-  buildInputs = [ guile libX11 libXext makeWrapper ghostscriptX freetype ];
+  buildInputs = [ guile_1_8 qt4 makeWrapper ghostscriptX freetype ];
 
   patchPhase = (if tex == null then ''
     gunzip < ${fullFontsSrc} | (cd TeXmacs && tar xvf -)
@@ -66,6 +66,12 @@ stdenv.mkDerivation rec {
         (if tex == null then "" else "${tex}/bin:") +
         "${xmodmap}/bin:${which}/bin";
 
+  postFixup = ''
+    bin="$out/libexec/TeXmacs/bin/texmacs.bin"
+    rpath=$(patchelf --print-rpath "$bin")
+    patchelf --set-rpath "$rpath:${zlib}/lib" "$bin"
+  '';
+
   meta = {
     description = "WYSIWYW editing platform with special features for scientists";
     longDescription =
diff --git a/pkgs/applications/editors/texmaker/default.nix b/pkgs/applications/editors/texmaker/default.nix
index 4df2dc8cac1..04ebf195108 100644
--- a/pkgs/applications/editors/texmaker/default.nix
+++ b/pkgs/applications/editors/texmaker/default.nix
@@ -2,20 +2,19 @@
 
 stdenv.mkDerivation rec {
   pname = "texmaker";
-  version = "4.1.1";
+  version = "4.4.1";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "http://www.xm1math.net/texmaker/${name}.tar.bz2";
-    sha256 = "1h5rxdq6f05wk3lnlw96fxwrb14k77cx1mwy648127h2c8nsgw4z";
+    sha256 = "1d5lb4sibdhvzgfr0zi48j92b4acvvvdy2biqi3jzjdnzy9r94w0";
   };
 
   buildInputs = [ qt4 poppler_qt4 zlib ];
-
   nativeBuildInputs = [ pkgconfig poppler ];
+  NIX_CFLAGS_COMPILE="-I${poppler}/include/poppler";
 
   preConfigure = ''
-    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$(echo ${poppler}/include/poppler/) " # for poppler-config.h
     qmake PREFIX=$out DESKTOPDIR=$out/share/applications ICONDIR=$out/share/pixmaps texmaker.pro
   '';
 
diff --git a/pkgs/applications/editors/texstudio/default.nix b/pkgs/applications/editors/texstudio/default.nix
index 5cb31af797d..4b0cccae364 100644
--- a/pkgs/applications/editors/texstudio/default.nix
+++ b/pkgs/applications/editors/texstudio/default.nix
@@ -1,21 +1,20 @@
-{ stdenv, fetchurl, qt4, poppler_qt4, zlib}:
+{ stdenv, fetchurl, qt4, poppler_qt4, zlib, pkgconfig}:
 
 stdenv.mkDerivation rec {
   pname = "texstudio";
-  version = "2.7.0";
+  version = "2.9.4";
   name = "${pname}-${version}";
   altname="Texstudio";
 
   src = fetchurl {
     url = "mirror://sourceforge/texstudio/${name}.tar.gz";
-    sha256 = "167d78nfk265jjvl129nr70v8ladb2rav2qyhw7ngr6m54gak831";
+    sha256 = "1smmc4xqs8x8qzp6iqj2wr4xarfnxxxp6rq6chx1kb256w75jwfw";
   };
 
-  buildInputs = [ qt4 poppler_qt4 zlib ];
+  buildInputs = [ qt4 poppler_qt4 zlib pkgconfig];
 
   preConfigure = ''
-    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$(echo ${poppler_qt4}/include/poppler/qt4) "
-    qmake PREFIX=$out texstudio.pro
+    qmake PREFIX=$out NO_APPDATA=True texstudio.pro
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/editors/textadept/default.nix b/pkgs/applications/editors/textadept/default.nix
new file mode 100644
index 00000000000..9eb1bdc7e43
--- /dev/null
+++ b/pkgs/applications/editors/textadept/default.nix
@@ -0,0 +1,68 @@
+{stdenv, fetchhg, fetchurl, fetchzip, gtk, glib, pkgconfig, unzip, ncurses, zip}:
+let
+  buildInputs = [
+    gtk glib pkgconfig unzip ncurses zip
+  ];
+  cached_url = url: sha256: fetchurl {
+    inherit sha256 url;
+  };
+  get_url = url: sha256: ''
+    cp ${(cached_url url sha256)} $(basename ${(cached_url url sha256)} | sed -e 's@^[0-9a-z]\+-@@')
+    touch $(basename ${(cached_url url sha256)} | sed -e 's@^[0-9a-z]\+-@@')
+  '';
+  cached_url_zip = url: sha256: fetchzip {
+    inherit sha256 url;
+  };
+  get_url_zip = url: sha256: let zipdir = (cached_url_zip url sha256); in ''
+    ( d=$PWD; cd $TMPDIR; name=$(basename ${zipdir} .zip | sed -e 's/^[a-z0-9]*-//'); 
+      cp -r ${zipdir} $name; chmod u+rwX -R $name; zip -r $d/$name.zip $name )
+    touch $name
+  '';
+in
+stdenv.mkDerivation rec{
+  version = "8.0";
+  scintillua_version = "3.5.5-1";
+  name = "textadept-${version}";
+  inherit buildInputs;
+  src = fetchhg {
+    url = http://foicica.com/hg/textadept;
+    rev = "textadept_${version}";
+    sha256 = "18kcphqkn0l77dbcyvywy3wh13ib280bb0qsffaqy439gk5zr7ql";
+  };
+  preConfigure = ''
+    cd src
+    mkdir wget
+    echo '#! ${stdenv.shell}' > wget/wget
+    chmod a+x wget/wget
+    export PATH="$PATH:$PWD/wget"
+    ${get_url http://prdownloads.sourceforge.net/scintilla/scintilla355.tgz "11n49h58xh35vj1j85cxasl93rjiv699c5cs5lpv19skfsgs3sb4"}
+    ${get_url http://foicica.com/scinterm/download/scinterm_1.6.zip "0ixwj9il6ri1xl4nvb6f108z4qhrahysza6frbbaqmbdz21hnmcl"}
+    ${get_url http://foicica.com/scintillua/download/scintillua_3.5.5-1.zip "0bpz5rmgaisbimhm6rpn961mbv30cwqid7kh9lad94v3y9ppvf35"}
+    ${get_url http://www.lua.org/ftp/lua-5.3.0.tar.gz "00fv1p6dv4701pyjrlvkrr6ykzxqy9hy1qxzj6qmwlb0ssr5wjmf"}
+    ${get_url http://www.inf.puc-rio.br/~roberto/lpeg/lpeg-0.12.2.tar.gz "01002avq90yc8rgxa5z9a1768jm054iid3pnfpywdcfij45jgbba"}
+    ${get_url_zip http://github.com/keplerproject/luafilesystem/archive/v_1_6_3.zip "1hxcnqj53540ysyw8fzax7f09pl98b8f55s712gsglcdxp2g2pri"}
+    ${get_url http://foicica.com/lspawn/download/lspawn_1.2.zip "1fhfi274bxlsdvva5q5j0wv8hx68cmf3vnv9spllzad4jdvz82xv"}
+    ${get_url http://luajit.org/download/LuaJIT-2.0.3.tar.gz "0ydxpqkmsn2c341j4r2v6r5r0ig3kbwv3i9jran3iv81s6r6rgjm"}
+    ${get_url http://foicica.com/gtdialog/download/gtdialog_1.2.zip "0nvcldyhj8abr8jny9pbyfjwg8qfp9f2h508vjmrvr5c5fqdbbm0"}
+    ${get_url http://invisible-island.net/datafiles/release/cdk.tar.gz "00s87kq5x10x22azr6q17b663syk169y3dk3kaj8z6dlk2b8vknp"}
+    ${get_url_zip http://foicica.com/hg/bombay/archive/d704272c3629.zip "19dg3ky87rfy0a3319vmv18hgn9spplpznvlqnk3djh239ddpplw"}
+    mv d704*.zip bombay.zip
+    ${get_url http://www.leonerd.org.uk/code/libtermkey/libtermkey-0.17.tar.gz "12gkrv1ldwk945qbpprnyawh0jz7rmqh18fyndbxiajyxmj97538"}
+    make deps
+  '';
+  postBuild = ''
+    make curses
+  '';
+  postInstall = ''
+    make curses install PREFIX=$out MAKECMDGOALS=curses
+  '';
+  makeFlags = ["PREFIX=$(out)"];
+  meta = {
+    inherit version;
+    description = "An extensible text editor based on Scintilla with Lua scripting";
+    license = stdenv.lib.licenses.mit ;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+    homepage = "http://foicica.com/textadept";
+  };
+}
diff --git a/pkgs/applications/editors/tiled/default.nix b/pkgs/applications/editors/tiled/default.nix
index 92cd5071306..b885e26fbef 100644
--- a/pkgs/applications/editors/tiled/default.nix
+++ b/pkgs/applications/editors/tiled/default.nix
@@ -1,14 +1,19 @@
-{ stdenv, fetchurl, qt }:
+{ stdenv, fetchurl, qt5, pkgconfig, python }:
+
+let
+  version = "0.12.3";
+  sha256 = "001j4lvb5d9h3m6vgz2na07637x6xg4bdvxi2hg4a0j9rikb4y40";
+in
 
 stdenv.mkDerivation rec {
-  name = "tiled-0.11.0";
+  name = "tiled-${version}";
 
   src = fetchurl {
-    url = "https://github.com/bjorn/tiled/archive/v0.11.0.tar.gz";
-    sha256 = "03a15vbzjfwc8dpifbjvd0gnr208mzmdkgs2nlc8zq6z0a4h4jqd";
+    url = "https://github.com/bjorn/tiled/archive/v${version}.tar.gz";
+    inherit sha256;
   };
 
-  buildInputs = [ qt ];
+  buildInputs = [ qt5.base qt5.tools pkgconfig python ];
 
   preConfigure = "qmake -r PREFIX=$out";
 
diff --git a/pkgs/applications/editors/vanubi/default.nix b/pkgs/applications/editors/vanubi/default.nix
index 692a728b12e..de0236a50e8 100644
--- a/pkgs/applications/editors/vanubi/default.nix
+++ b/pkgs/applications/editors/vanubi/default.nix
@@ -3,16 +3,16 @@
 
 stdenv.mkDerivation rec {
   name = "vanubi-${version}";
-  version = "0.0.14";
+  version = "0.0.16";
 
   src = fetchurl {
     url = "https://github.com/vanubi/vanubi/archive/v${version}.tar.gz";
-    sha256 = "0cd45zm54j6xz1a31qllg2w7l77sncv7mrpfx9bjzdiqpmzsdypl";
+    sha256 = "145zxgaky5bcq5bxm4z7h0pvviq7k1nrgnf40q6nax6ik616ybjq";
   };
 
   buildInputs = [ pkgconfig vala which autoconf automake
                   libtool glib gtk3 libwnck3 asciidoc
-                  gnome3.gtksourceview gnome3.vte python3Packages.pygments ];
+                  gnome3.gtksourceview gnome3.vte_290 python3Packages.pygments ];
 
   configureScript = "./autogen.sh";
 
diff --git a/pkgs/applications/editors/vim/configurable.nix b/pkgs/applications/editors/vim/configurable.nix
index e6c2cacc49a..fd4f13ab650 100644
--- a/pkgs/applications/editors/vim/configurable.nix
+++ b/pkgs/applications/editors/vim/configurable.nix
@@ -1,6 +1,9 @@
 # TODO tidy up eg The patchelf code is patching gvim even if you don't build it..
 # but I have gvim with python support now :) - Marc
-args@{pkgs, source ? "default", ...}: with args;
+args@{pkgs, source ? "default", fetchurl, fetchhg, stdenv, ncurses, pkgconfig, gettext
+, composableDerivation, lib, config, glib, gtk, python, perl, tcl, ruby
+, libX11, libXext, libSM, libXpm, libXt, libXaw, libXau, libXmu
+, libICE, ... }: with args;
 
 
 let inherit (args.composableDerivation) composableDerivation edf;
@@ -31,9 +34,10 @@ let inherit (args.composableDerivation) composableDerivation edf;
   '';
 in
 composableDerivation {
-} (fix: {
+} (fix: rec {
 
-    name = "vim_configurable-7.4.516";
+    name = "vim_configurable-${version}";
+    version = "7.4.826";
 
     enableParallelBuilding = true; # test this
 
@@ -43,8 +47,8 @@ composableDerivation {
         # latest release
       args.fetchhg {
             url = "http://vim.googlecode.com/hg/";
-            rev = "v7-4-516";
-            sha256 = "0a3b5qaywfn7jjr7fjpl8y8jx4wjj2630wxfjnmn3hi1l7iiz4z8";
+            rev = "v${version}";
+            sha256 = "01m67lvnkz0ad28ifj964zcg63y5hixplbnzas5xarj8vl3pc5a0";
       };
 
       "vim-nox" =
@@ -190,6 +194,7 @@ composableDerivation {
   meta = with stdenv.lib; {
     description = "The most popular clone of the VI editor";
     homepage    = http://www.vim.org;
+    license = licenses.vim;
     maintainers = with maintainers; [ lovek323 ];
     platforms   = platforms.unix;
   };
diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix
index 4f14aade5a5..3bdd44529dd 100644
--- a/pkgs/applications/editors/vim/default.nix
+++ b/pkgs/applications/editors/vim/default.nix
@@ -1,19 +1,29 @@
-{ stdenv, fetchhg, ncurses, gettext, pkgconfig }:
+{ stdenv, fetchFromGitHub, ncurses, gettext, pkgconfig
+
+# apple frameworks
+, CoreServices, CoreData, Cocoa, Foundation, libobjc }:
 
 stdenv.mkDerivation rec {
   name = "vim-${version}";
+  version = "7.4.827";
 
-  version = "7.4.683";
-
-  src = fetchhg {
-    url = "https://code.google.com/p/vim/";
-    rev = "v7-4-663";
-    sha256 = "1z0qarf6a2smab28g9dnxklhfayn85wx48bnddmyhb9kqzjgqgjc";
+  src = fetchFromGitHub {
+    owner = "vim";
+    repo = "vim";
+    rev = "v${version}";
+    sha256 = "1m34s2hsc5lcish6gmvn2iwaz0k7jc3kg9q4nf30fj9inl7gaybs";
   };
 
+  # this makes maintainers very sad
+  # open source CF doesn't have anything NSArray-related, causing linking errors. the
+  # missing symbol is in system CoreFoundation.
+  NIX_LDFLAGS = stdenv.lib.optional stdenv.isDarwin
+    "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation";
+
   enableParallelBuilding = true;
 
-  buildInputs = [ ncurses pkgconfig ];
+  buildInputs = [ ncurses pkgconfig ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ CoreData CoreServices Cocoa Foundation libobjc ];
   nativeBuildInputs = [ gettext ];
 
   configureFlags = [
@@ -49,6 +59,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "The most popular clone of the VI editor";
     homepage    = http://www.vim.org;
+    license = licenses.vim;
     maintainers = with maintainers; [ lovek323 ];
     platforms   = platforms.unix;
   };
diff --git a/pkgs/applications/editors/vim/macvim.nix b/pkgs/applications/editors/vim/macvim.nix
index 784be80ecf4..d69c1e27c4a 100644
--- a/pkgs/applications/editors/vim/macvim.nix
+++ b/pkgs/applications/editors/vim/macvim.nix
@@ -5,11 +5,11 @@
 stdenv.mkDerivation rec {
   name = "macvim-${version}";
 
-  version = "7.4.479";
+  version = "7.4.648";
 
   src = fetchurl {
-    url = "https://github.com/genoma/macvim/archive/g-snapshot-21.tar.gz";
-    sha256 = "1s86dpb8bcxh309gikiz8gm9ygv3d2jy6i4qlnxarbvcdk65fzv4";
+    url = "https://github.com/genoma/macvim/archive/g-snapshot-32.tar.gz";
+    sha256 = "1wqg5sy7krgqg3sj00gb34avg90ga2kbvv09bsxv2267j7agi0iq";
   };
 
   enableParallelBuilding = true;
@@ -87,6 +87,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Vim - the text editor - for Mac OS X";
     homepage    = https://github.com/b4winckler/macvim;
+    license = licenses.vim;
     maintainers = with maintainers; [ cstrahan ];
     platforms   = platforms.darwin;
   };
diff --git a/pkgs/applications/editors/vim/python_framework.patch b/pkgs/applications/editors/vim/python_framework.patch
index b7c7cee6cd9..ba4ddef889f 100644
--- a/pkgs/applications/editors/vim/python_framework.patch
+++ b/pkgs/applications/editors/vim/python_framework.patch
@@ -1,23 +1,24 @@
-diff --git a/src/auto/configure b/src/auto/configure
-index a9755a0..4a0e2a4 100755
 --- a/auto/configure
 +++ b/auto/configure
-@@ -5638,10 +5638,6 @@ __:
+@@ -5895,13 +5895,6 @@
  eof
  	    	    eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`"
  	    rm -f -- "${tmp_mkf}"
 -	    if test "x$MACOSX" = "xyes" && ${vi_cv_path_python} -c \
 -		"import sys; sys.exit(${vi_cv_var_python_version} < 2.3)"; then
 -	      vi_cv_path_python_plibs="-framework Python"
+-	      if test "x${vi_cv_path_python}" != "x/usr/bin/python" && test -n "${python_PYTHONFRAMEWORKPREFIX}"; then
+-		  vi_cv_path_python_plibs="-F${python_PYTHONFRAMEWORKPREFIX} -framework Python"
+-	      fi
 -	    else
  	      if test "${vi_cv_var_python_version}" = "1.4"; then
  		  vi_cv_path_python_plibs="${PYTHON_CONFDIR}/libModules.a ${PYTHON_CONFDIR}/libPython.a ${PYTHON_CONFDIR}/libObjects.a ${PYTHON_CONFDIR}/libParser.a"
  	      else
-@@ -5649,7 +5645,6 @@ eof
- 	      fi
+@@ -5921,7 +5914,6 @@
  	      vi_cv_path_python_plibs="${vi_cv_path_python_plibs} ${python_BASEMODLIBS} ${python_LIBS} ${python_SYSLIBS} ${python_LINKFORSHARED}"
  	      	      vi_cv_path_python_plibs=`echo $vi_cv_path_python_plibs | sed s/-ltermcap//`
--	    fi
  
- fi
+-fi
  
+ 	if ${vi_cv_dll_name_python+:} false; then :
+   $as_echo_n "(cached) " >&6
diff --git a/pkgs/applications/editors/vim/qvim.nix b/pkgs/applications/editors/vim/qvim.nix
index b9e3d668d62..0e0b6fc8e50 100644
--- a/pkgs/applications/editors/vim/qvim.nix
+++ b/pkgs/applications/editors/vim/qvim.nix
@@ -1,4 +1,7 @@
-args@{...}: with args;
+args@{ fetchgit, stdenv, ncurses, pkgconfig, gettext
+, composableDerivation, lib, config, python, perl, tcl, ruby, qt4
+, libX11, libXext, libSM, libXpm, libXt, libXaw, libXau, libXmu
+, libICE, ... }: with args;
 
 let tag = "20140827";
     sha256 = "02adf2212872db3c5d133642d2c12fbfc28b506e4c0c42552e3d079756f63f65";
@@ -118,6 +121,7 @@ composableDerivation {
   meta = with stdenv.lib; {
     description = "The most popular clone of the VI editor (Qt GUI fork)";
     homepage    = https://bitbucket.org/equalsraf/vim-qt/wiki/Home;
+    license = licenses.vim;
     maintainers = with maintainers; [ smironov ttuegel ];
     platforms   = platforms.linux;
   };
diff --git a/pkgs/applications/editors/yi/wrapper.nix b/pkgs/applications/editors/yi/wrapper.nix
index a4dc3fe367a..916f296b3fc 100644
--- a/pkgs/applications/editors/yi/wrapper.nix
+++ b/pkgs/applications/editors/yi/wrapper.nix
@@ -1,6 +1,3 @@
-# Note: this relies on dyre patched for NIX_GHC which is done in
-# haskell-ng only.
-#
 # To use this for hacking of your Yi config file, drop into a shell
 # with env attribute.
 { stdenv, makeWrapper
diff --git a/pkgs/applications/editors/yi/yi.nix b/pkgs/applications/editors/yi/yi.nix
deleted file mode 100644
index f9ef27d999d..00000000000
--- a/pkgs/applications/editors/yi/yi.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, binary, Cabal, cautiousFile, dataDefault, derive, dlist
-, dynamicState, dyre, exceptions, filepath, glib, gtk, hashable
-, hint, HUnit, lens, 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.11.1";
-  sha256 = "15m1wwrxmszl930az79lpgyz5rxg72gy8vi17ibpac1cszfdx192";
-  isLibrary = true;
-  isExecutable = true;
-  buildDepends = [
-    binary Cabal cautiousFile dataDefault derive dlist dynamicState
-    dyre exceptions filepath glib gtk hashable hint lens mtl
-    ooPrototypes pango parsec pointedlist QuickCheck random regexBase
-    regexTdfa safe semigroups split tagged text time transformersBase
-    unixCompat unorderedContainers utf8String vty wordTrie xdgBasedir
-    yiLanguage yiRope
-  ];
-  testDepends = [
-    filepath HUnit lens QuickCheck semigroups tasty tastyHunit
-    tastyQuickcheck text yiLanguage yiRope
-  ];
-  configureFlags = "-fpango -fvty";
-  noHaddock = self.stdenv.lib.versionOlder self.ghc.version "7.8";
-  meta = {
-    homepage = http://haskell.org/haskellwiki/Yi;
-    description = "The Haskell-Scriptable Editor";
-    license = self.stdenv.lib.licenses.gpl2;
-    platforms = self.ghc.meta.platforms;
-    maintainers = with self.stdenv.lib.maintainers; [ fuuzetsu ];
-  };
-})
diff --git a/pkgs/applications/editors/zed/default.nix b/pkgs/applications/editors/zed/default.nix
index e46cb66de56..0170319871f 100644
--- a/pkgs/applications/editors/zed/default.nix
+++ b/pkgs/applications/editors/zed/default.nix
@@ -3,7 +3,7 @@
 
 let
   name = "zed-${version}";
-  version = "1.0.0";
+  version = "1.1.0";
 
   # When upgrading node.nix / node packages:
   #   fetch package.json from Zed's repository
@@ -31,7 +31,7 @@ let
     src = fetchgit {
         url = "git://github.com/zedapp/zed";
         rev = "refs/tags/v${version}";
-        sha256 = "1kdvj9mvdwm4cswqw6nn9j6kgqvs4d7vycpsmmfha9a2rkryw9zh";
+        sha256 = "1zvlngv73h968jd2m42ylr9vfhf35n80wzy616cv2ic7gmr1fl9p";
       };
 
     buildInputs = [ makeWrapper zip ];
@@ -79,7 +79,7 @@ in stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "Zed is a fully offline-capable, open source, keyboard-focused, text and code editor for power users";
+    description = "A fully offline-capable, open source, keyboard-focused, text and code editor for power users";
     license = stdenv.lib.licenses.mit;
     homepage = http://zedapp.org/;
     maintainers = [ stdenv.lib.maintainers.matejc ];
diff --git a/pkgs/applications/editors/zed/node.nix b/pkgs/applications/editors/zed/node.nix
index cd75f2d58fa..e74ff1ec45f 100644
--- a/pkgs/applications/editors/zed/node.nix
+++ b/pkgs/applications/editors/zed/node.nix
@@ -1,23 +1,24 @@
 { self, fetchurl, fetchgit ? null, lib }:
 
 {
-  by-spec."accepts"."~1.1.0" =
-    self.by-version."accepts"."1.1.1";
-  by-version."accepts"."1.1.1" = lib.makeOverridable self.buildNodePackage {
-    name = "node-accepts-1.1.1";
+  by-spec."accepts"."~1.2.7" =
+    self.by-version."accepts"."1.2.7";
+  by-version."accepts"."1.2.7" = lib.makeOverridable self.buildNodePackage {
+    name = "accepts-1.2.7";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/accepts/-/accepts-1.1.1.tgz";
-        name = "accepts-1.1.1.tgz";
-        sha1 = "3b40bf6abc3fe3bc004534f4672ae1efd0063a96";
+        url = "http://registry.npmjs.org/accepts/-/accepts-1.2.7.tgz";
+        name = "accepts-1.2.7.tgz";
+        sha1 = "efea24e36e0b5b93d001a7598ac441c32ef56003";
       })
     ];
     buildInputs =
       (self.nativeDeps."accepts" or []);
-    deps = [
-      self.by-version."mime-types"."2.0.2"
-      self.by-version."negotiator"."0.4.8"
-    ];
+    deps = {
+      "mime-types-2.0.12" = self.by-version."mime-types"."2.0.12";
+      "negotiator-0.5.3" = self.by-version."negotiator"."0.5.3";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "accepts" ];
@@ -25,7 +26,8 @@
   by-spec."asn1"."0.1.11" =
     self.by-version."asn1"."0.1.11";
   by-version."asn1"."0.1.11" = lib.makeOverridable self.buildNodePackage {
-    name = "node-asn1-0.1.11";
+    name = "asn1-0.1.11";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz";
@@ -35,46 +37,48 @@
     ];
     buildInputs =
       (self.nativeDeps."asn1" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "asn1" ];
   };
-  by-spec."assert-plus"."0.1.2" =
-    self.by-version."assert-plus"."0.1.2";
-  by-version."assert-plus"."0.1.2" = lib.makeOverridable self.buildNodePackage {
-    name = "node-assert-plus-0.1.2";
+  by-spec."assert-plus"."^0.1.5" =
+    self.by-version."assert-plus"."0.1.5";
+  by-version."assert-plus"."0.1.5" = lib.makeOverridable self.buildNodePackage {
+    name = "assert-plus-0.1.5";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/assert-plus/-/assert-plus-0.1.2.tgz";
-        name = "assert-plus-0.1.2.tgz";
-        sha1 = "d93ffdbb67ac5507779be316a7d65146417beef8";
+        url = "http://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz";
+        name = "assert-plus-0.1.5.tgz";
+        sha1 = "ee74009413002d84cec7219c6ac811812e723160";
       })
     ];
     buildInputs =
       (self.nativeDeps."assert-plus" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "assert-plus" ];
   };
   by-spec."async"."~0.9.0" =
-    self.by-version."async"."0.9.0";
-  by-version."async"."0.9.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-async-0.9.0";
+    self.by-version."async"."0.9.2";
+  by-version."async"."0.9.2" = lib.makeOverridable self.buildNodePackage {
+    name = "async-0.9.2";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/async/-/async-0.9.0.tgz";
-        name = "async-0.9.0.tgz";
-        sha1 = "ac3613b1da9bed1b47510bb4651b8931e47146c7";
+        url = "http://registry.npmjs.org/async/-/async-0.9.2.tgz";
+        name = "async-0.9.2.tgz";
+        sha1 = "aea74d5e61c1f899613bf64bda66d4c78f2fd17d";
       })
     ];
     buildInputs =
       (self.nativeDeps."async" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "async" ];
@@ -82,7 +86,8 @@
   by-spec."aws-sign2"."~0.5.0" =
     self.by-version."aws-sign2"."0.5.0";
   by-version."aws-sign2"."0.5.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-aws-sign2-0.5.0";
+    name = "aws-sign2-0.5.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz";
@@ -92,64 +97,88 @@
     ];
     buildInputs =
       (self.nativeDeps."aws-sign2" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "aws-sign2" ];
   };
+  by-spec."balanced-match"."^0.2.0" =
+    self.by-version."balanced-match"."0.2.0";
+  by-version."balanced-match"."0.2.0" = lib.makeOverridable self.buildNodePackage {
+    name = "balanced-match-0.2.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz";
+        name = "balanced-match-0.2.0.tgz";
+        sha1 = "38f6730c03aab6d5edbb52bd934885e756d71674";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."balanced-match" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "balanced-match" ];
+  };
   by-spec."block-stream"."*" =
-    self.by-version."block-stream"."0.0.7";
-  by-version."block-stream"."0.0.7" = lib.makeOverridable self.buildNodePackage {
-    name = "node-block-stream-0.0.7";
+    self.by-version."block-stream"."0.0.8";
+  by-version."block-stream"."0.0.8" = lib.makeOverridable self.buildNodePackage {
+    name = "block-stream-0.0.8";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/block-stream/-/block-stream-0.0.7.tgz";
-        name = "block-stream-0.0.7.tgz";
-        sha1 = "9088ab5ae1e861f4d81b176b4a8046080703deed";
+        url = "http://registry.npmjs.org/block-stream/-/block-stream-0.0.8.tgz";
+        name = "block-stream-0.0.8.tgz";
+        sha1 = "0688f46da2bbf9cff0c4f68225a0cb95cbe8a46b";
       })
     ];
     buildInputs =
       (self.nativeDeps."block-stream" or []);
-    deps = [
-      self.by-version."inherits"."2.0.1"
-    ];
+    deps = {
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "block-stream" ];
   };
   by-spec."body-parser"."^1.6.3" =
-    self.by-version."body-parser"."1.9.0";
-  by-version."body-parser"."1.9.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-body-parser-1.9.0";
+    self.by-version."body-parser"."1.12.4";
+  by-version."body-parser"."1.12.4" = lib.makeOverridable self.buildNodePackage {
+    name = "body-parser-1.12.4";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/body-parser/-/body-parser-1.9.0.tgz";
-        name = "body-parser-1.9.0.tgz";
-        sha1 = "95d72943b1a4f67f56bbac9e0dcc837b68703605";
+        url = "http://registry.npmjs.org/body-parser/-/body-parser-1.12.4.tgz";
+        name = "body-parser-1.12.4.tgz";
+        sha1 = "090700c4ba28862a8520ef378395fdee5f61c229";
       })
     ];
     buildInputs =
       (self.nativeDeps."body-parser" or []);
-    deps = [
-      self.by-version."bytes"."1.0.0"
-      self.by-version."depd"."1.0.0"
-      self.by-version."iconv-lite"."0.4.4"
-      self.by-version."media-typer"."0.3.0"
-      self.by-version."on-finished"."2.1.0"
-      self.by-version."qs"."2.2.4"
-      self.by-version."raw-body"."1.3.0"
-      self.by-version."type-is"."1.5.2"
-    ];
+    deps = {
+      "bytes-1.0.0" = self.by-version."bytes"."1.0.0";
+      "content-type-1.0.1" = self.by-version."content-type"."1.0.1";
+      "debug-2.2.0" = self.by-version."debug"."2.2.0";
+      "depd-1.0.1" = self.by-version."depd"."1.0.1";
+      "iconv-lite-0.4.8" = self.by-version."iconv-lite"."0.4.8";
+      "on-finished-2.2.1" = self.by-version."on-finished"."2.2.1";
+      "qs-2.4.2" = self.by-version."qs"."2.4.2";
+      "raw-body-2.0.1" = self.by-version."raw-body"."2.0.1";
+      "type-is-1.6.2" = self.by-version."type-is"."1.6.2";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "body-parser" ];
   };
-  "body-parser" = self.by-version."body-parser"."1.9.0";
+  "body-parser" = self.by-version."body-parser"."1.12.4";
   by-spec."boom"."0.4.x" =
     self.by-version."boom"."0.4.2";
   by-version."boom"."0.4.2" = lib.makeOverridable self.buildNodePackage {
-    name = "node-boom-0.4.2";
+    name = "boom-0.4.2";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/boom/-/boom-0.4.2.tgz";
@@ -159,17 +188,40 @@
     ];
     buildInputs =
       (self.nativeDeps."boom" or []);
-    deps = [
-      self.by-version."hoek"."0.9.1"
-    ];
+    deps = {
+      "hoek-0.9.1" = self.by-version."hoek"."0.9.1";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "boom" ];
   };
-  by-spec."bytes"."1" =
+  by-spec."brace-expansion"."^1.0.0" =
+    self.by-version."brace-expansion"."1.1.0";
+  by-version."brace-expansion"."1.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "brace-expansion-1.1.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz";
+        name = "brace-expansion-1.1.0.tgz";
+        sha1 = "c9b7d03c03f37bc704be100e522b40db8f6cfcd9";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."brace-expansion" or []);
+    deps = {
+      "balanced-match-0.2.0" = self.by-version."balanced-match"."0.2.0";
+      "concat-map-0.0.1" = self.by-version."concat-map"."0.0.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "brace-expansion" ];
+  };
+  by-spec."bytes"."1.0.0" =
     self.by-version."bytes"."1.0.0";
   by-version."bytes"."1.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-bytes-1.0.0";
+    name = "bytes-1.0.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz";
@@ -179,30 +231,49 @@
     ];
     buildInputs =
       (self.nativeDeps."bytes" or []);
-    deps = [
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "bytes" ];
+  };
+  by-spec."bytes"."2.0.1" =
+    self.by-version."bytes"."2.0.1";
+  by-version."bytes"."2.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "bytes-2.0.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/bytes/-/bytes-2.0.1.tgz";
+        name = "bytes-2.0.1.tgz";
+        sha1 = "673743059be43d929f9c225dd7363ee0f8b15d97";
+      })
     ];
+    buildInputs =
+      (self.nativeDeps."bytes" or []);
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "bytes" ];
   };
-  by-spec."bytes"."1.0.0" =
-    self.by-version."bytes"."1.0.0";
   by-spec."combined-stream"."~0.0.4" =
-    self.by-version."combined-stream"."0.0.5";
-  by-version."combined-stream"."0.0.5" = lib.makeOverridable self.buildNodePackage {
-    name = "node-combined-stream-0.0.5";
+    self.by-version."combined-stream"."0.0.7";
+  by-version."combined-stream"."0.0.7" = lib.makeOverridable self.buildNodePackage {
+    name = "combined-stream-0.0.7";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/combined-stream/-/combined-stream-0.0.5.tgz";
-        name = "combined-stream-0.0.5.tgz";
-        sha1 = "29ed76e5c9aad07c4acf9ca3d32601cce28697a2";
+        url = "http://registry.npmjs.org/combined-stream/-/combined-stream-0.0.7.tgz";
+        name = "combined-stream-0.0.7.tgz";
+        sha1 = "0137e657baa5a7541c57ac37ac5fc07d73b4dc1f";
       })
     ];
     buildInputs =
       (self.nativeDeps."combined-stream" or []);
-    deps = [
-      self.by-version."delayed-stream"."0.0.5"
-    ];
+    deps = {
+      "delayed-stream-0.0.5" = self.by-version."delayed-stream"."0.0.5";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "combined-stream" ];
@@ -210,7 +281,8 @@
   by-spec."commander"."~2.1.0" =
     self.by-version."commander"."2.1.0";
   by-version."commander"."2.1.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-commander-2.1.0";
+    name = "commander-2.1.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/commander/-/commander-2.1.0.tgz";
@@ -220,16 +292,77 @@
     ];
     buildInputs =
       (self.nativeDeps."commander" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "commander" ];
   };
+  by-spec."concat-map"."0.0.1" =
+    self.by-version."concat-map"."0.0.1";
+  by-version."concat-map"."0.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "concat-map-0.0.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz";
+        name = "concat-map-0.0.1.tgz";
+        sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."concat-map" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "concat-map" ];
+  };
+  by-spec."content-disposition"."0.5.0" =
+    self.by-version."content-disposition"."0.5.0";
+  by-version."content-disposition"."0.5.0" = lib.makeOverridable self.buildNodePackage {
+    name = "content-disposition-0.5.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/content-disposition/-/content-disposition-0.5.0.tgz";
+        name = "content-disposition-0.5.0.tgz";
+        sha1 = "4284fe6ae0630874639e44e80a418c2934135e9e";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."content-disposition" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "content-disposition" ];
+  };
+  by-spec."content-type"."~1.0.1" =
+    self.by-version."content-type"."1.0.1";
+  by-version."content-type"."1.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "content-type-1.0.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/content-type/-/content-type-1.0.1.tgz";
+        name = "content-type-1.0.1.tgz";
+        sha1 = "a19d2247327dc038050ce622b7a154ec59c5e600";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."content-type" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "content-type" ];
+  };
   by-spec."cookie"."0.1.2" =
     self.by-version."cookie"."0.1.2";
   by-version."cookie"."0.1.2" = lib.makeOverridable self.buildNodePackage {
-    name = "node-cookie-0.1.2";
+    name = "cookie-0.1.2";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/cookie/-/cookie-0.1.2.tgz";
@@ -239,46 +372,48 @@
     ];
     buildInputs =
       (self.nativeDeps."cookie" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "cookie" ];
   };
-  by-spec."cookie-signature"."1.0.5" =
-    self.by-version."cookie-signature"."1.0.5";
-  by-version."cookie-signature"."1.0.5" = lib.makeOverridable self.buildNodePackage {
-    name = "node-cookie-signature-1.0.5";
+  by-spec."cookie-signature"."1.0.6" =
+    self.by-version."cookie-signature"."1.0.6";
+  by-version."cookie-signature"."1.0.6" = lib.makeOverridable self.buildNodePackage {
+    name = "cookie-signature-1.0.6";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.5.tgz";
-        name = "cookie-signature-1.0.5.tgz";
-        sha1 = "a122e3f1503eca0f5355795b0711bb2368d450f9";
+        url = "http://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz";
+        name = "cookie-signature-1.0.6.tgz";
+        sha1 = "e303a882b342cc3ee8ca513a79999734dab3ae2c";
       })
     ];
     buildInputs =
       (self.nativeDeps."cookie-signature" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "cookie-signature" ];
   };
-  by-spec."crc"."3.0.0" =
-    self.by-version."crc"."3.0.0";
-  by-version."crc"."3.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-crc-3.0.0";
+  by-spec."crc"."3.2.1" =
+    self.by-version."crc"."3.2.1";
+  by-version."crc"."3.2.1" = lib.makeOverridable self.buildNodePackage {
+    name = "crc-3.2.1";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/crc/-/crc-3.0.0.tgz";
-        name = "crc-3.0.0.tgz";
-        sha1 = "d11e97ec44a844e5eb15a74fa2c7875d0aac4b22";
+        url = "http://registry.npmjs.org/crc/-/crc-3.2.1.tgz";
+        name = "crc-3.2.1.tgz";
+        sha1 = "5d9c8fb77a245cd5eca291e5d2d005334bab0082";
       })
     ];
     buildInputs =
       (self.nativeDeps."crc" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "crc" ];
@@ -286,7 +421,8 @@
   by-spec."cryptiles"."0.2.x" =
     self.by-version."cryptiles"."0.2.2";
   by-version."cryptiles"."0.2.2" = lib.makeOverridable self.buildNodePackage {
-    name = "node-cryptiles-0.2.2";
+    name = "cryptiles-0.2.2";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/cryptiles/-/cryptiles-0.2.2.tgz";
@@ -296,48 +432,50 @@
     ];
     buildInputs =
       (self.nativeDeps."cryptiles" or []);
-    deps = [
-      self.by-version."boom"."0.4.2"
-    ];
+    deps = {
+      "boom-0.4.2" = self.by-version."boom"."0.4.2";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "cryptiles" ];
   };
-  by-spec."ctype"."0.5.2" =
-    self.by-version."ctype"."0.5.2";
-  by-version."ctype"."0.5.2" = lib.makeOverridable self.buildNodePackage {
-    name = "node-ctype-0.5.2";
+  by-spec."ctype"."0.5.3" =
+    self.by-version."ctype"."0.5.3";
+  by-version."ctype"."0.5.3" = lib.makeOverridable self.buildNodePackage {
+    name = "ctype-0.5.3";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/ctype/-/ctype-0.5.2.tgz";
-        name = "ctype-0.5.2.tgz";
-        sha1 = "fe8091d468a373a0b0c9ff8bbfb3425c00973a1d";
+        url = "http://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz";
+        name = "ctype-0.5.3.tgz";
+        sha1 = "82c18c2461f74114ef16c135224ad0b9144ca12f";
       })
     ];
     buildInputs =
       (self.nativeDeps."ctype" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "ctype" ];
   };
-  by-spec."debug"."~2.0.0" =
-    self.by-version."debug"."2.0.0";
-  by-version."debug"."2.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-debug-2.0.0";
+  by-spec."debug"."~2.2.0" =
+    self.by-version."debug"."2.2.0";
+  by-version."debug"."2.2.0" = lib.makeOverridable self.buildNodePackage {
+    name = "debug-2.2.0";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/debug/-/debug-2.0.0.tgz";
-        name = "debug-2.0.0.tgz";
-        sha1 = "89bd9df6732b51256bc6705342bba02ed12131ef";
+        url = "http://registry.npmjs.org/debug/-/debug-2.2.0.tgz";
+        name = "debug-2.2.0.tgz";
+        sha1 = "f87057e995b1a1f6ae6a4960664137bc56f039da";
       })
     ];
     buildInputs =
       (self.nativeDeps."debug" or []);
-    deps = [
-      self.by-version."ms"."0.6.2"
-    ];
+    deps = {
+      "ms-0.7.1" = self.by-version."ms"."0.7.1";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "debug" ];
@@ -345,7 +483,8 @@
   by-spec."delayed-stream"."0.0.5" =
     self.by-version."delayed-stream"."0.0.5";
   by-version."delayed-stream"."0.0.5" = lib.makeOverridable self.buildNodePackage {
-    name = "node-delayed-stream-0.0.5";
+    name = "delayed-stream-0.0.5";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/delayed-stream/-/delayed-stream-0.0.5.tgz";
@@ -355,46 +494,28 @@
     ];
     buildInputs =
       (self.nativeDeps."delayed-stream" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "delayed-stream" ];
   };
-  by-spec."depd"."0.4.5" =
-    self.by-version."depd"."0.4.5";
-  by-version."depd"."0.4.5" = lib.makeOverridable self.buildNodePackage {
-    name = "node-depd-0.4.5";
+  by-spec."depd"."~1.0.1" =
+    self.by-version."depd"."1.0.1";
+  by-version."depd"."1.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "depd-1.0.1";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/depd/-/depd-0.4.5.tgz";
-        name = "depd-0.4.5.tgz";
-        sha1 = "1a664b53388b4a6573e8ae67b5f767c693ca97f1";
+        url = "http://registry.npmjs.org/depd/-/depd-1.0.1.tgz";
+        name = "depd-1.0.1.tgz";
+        sha1 = "80aec64c9d6d97e65cc2a9caa93c0aa6abf73aaa";
       })
     ];
     buildInputs =
       (self.nativeDeps."depd" or []);
-    deps = [
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "depd" ];
-  };
-  by-spec."depd"."~1.0.0" =
-    self.by-version."depd"."1.0.0";
-  by-version."depd"."1.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-depd-1.0.0";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/depd/-/depd-1.0.0.tgz";
-        name = "depd-1.0.0.tgz";
-        sha1 = "2fda0d00e98aae2845d4991ab1bf1f2a199073d5";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."depd" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "depd" ];
@@ -402,7 +523,8 @@
   by-spec."destroy"."1.0.3" =
     self.by-version."destroy"."1.0.3";
   by-version."destroy"."1.0.3" = lib.makeOverridable self.buildNodePackage {
-    name = "node-destroy-1.0.3";
+    name = "destroy-1.0.3";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/destroy/-/destroy-1.0.3.tgz";
@@ -412,27 +534,28 @@
     ];
     buildInputs =
       (self.nativeDeps."destroy" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "destroy" ];
   };
-  by-spec."ee-first"."1.0.5" =
-    self.by-version."ee-first"."1.0.5";
-  by-version."ee-first"."1.0.5" = lib.makeOverridable self.buildNodePackage {
-    name = "node-ee-first-1.0.5";
+  by-spec."ee-first"."1.1.0" =
+    self.by-version."ee-first"."1.1.0";
+  by-version."ee-first"."1.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "ee-first-1.1.0";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/ee-first/-/ee-first-1.0.5.tgz";
-        name = "ee-first-1.0.5.tgz";
-        sha1 = "8c9b212898d8cd9f1a9436650ce7be202c9e9ff0";
+        url = "http://registry.npmjs.org/ee-first/-/ee-first-1.1.0.tgz";
+        name = "ee-first-1.1.0.tgz";
+        sha1 = "6a0d7c6221e490feefd92ec3f441c9ce8cd097f4";
       })
     ];
     buildInputs =
       (self.nativeDeps."ee-first" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "ee-first" ];
@@ -440,7 +563,8 @@
   by-spec."escape-html"."1.0.1" =
     self.by-version."escape-html"."1.0.1";
   by-version."escape-html"."1.0.1" = lib.makeOverridable self.buildNodePackage {
-    name = "node-escape-html-1.0.1";
+    name = "escape-html-1.0.1";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/escape-html/-/escape-html-1.0.1.tgz";
@@ -450,92 +574,97 @@
     ];
     buildInputs =
       (self.nativeDeps."escape-html" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "escape-html" ];
   };
-  by-spec."etag"."~1.4.0" =
-    self.by-version."etag"."1.4.0";
-  by-version."etag"."1.4.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-etag-1.4.0";
+  by-spec."etag"."~1.6.0" =
+    self.by-version."etag"."1.6.0";
+  by-version."etag"."1.6.0" = lib.makeOverridable self.buildNodePackage {
+    name = "etag-1.6.0";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/etag/-/etag-1.4.0.tgz";
-        name = "etag-1.4.0.tgz";
-        sha1 = "3050991615857707c04119d075ba2088e0701225";
+        url = "http://registry.npmjs.org/etag/-/etag-1.6.0.tgz";
+        name = "etag-1.6.0.tgz";
+        sha1 = "8bcb2c6af1254c481dfc8b997c906ef4e442c207";
       })
     ];
     buildInputs =
       (self.nativeDeps."etag" or []);
-    deps = [
-      self.by-version."crc"."3.0.0"
-    ];
+    deps = {
+      "crc-3.2.1" = self.by-version."crc"."3.2.1";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "etag" ];
   };
   by-spec."express"."^4.8.3" =
-    self.by-version."express"."4.9.5";
-  by-version."express"."4.9.5" = lib.makeOverridable self.buildNodePackage {
-    name = "node-express-4.9.5";
+    self.by-version."express"."4.12.4";
+  by-version."express"."4.12.4" = lib.makeOverridable self.buildNodePackage {
+    name = "express-4.12.4";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/express/-/express-4.9.5.tgz";
-        name = "express-4.9.5.tgz";
-        sha1 = "7f62aa84ac8f5e96acfb98e2944dde0bf1cf8688";
+        url = "http://registry.npmjs.org/express/-/express-4.12.4.tgz";
+        name = "express-4.12.4.tgz";
+        sha1 = "8fec2510255bc6b2e58107c48239c0fa307c1aa2";
       })
     ];
     buildInputs =
       (self.nativeDeps."express" or []);
-    deps = [
-      self.by-version."accepts"."1.1.1"
-      self.by-version."cookie-signature"."1.0.5"
-      self.by-version."debug"."2.0.0"
-      self.by-version."depd"."0.4.5"
-      self.by-version."escape-html"."1.0.1"
-      self.by-version."etag"."1.4.0"
-      self.by-version."finalhandler"."0.2.0"
-      self.by-version."fresh"."0.2.4"
-      self.by-version."media-typer"."0.3.0"
-      self.by-version."methods"."1.1.0"
-      self.by-version."on-finished"."2.1.0"
-      self.by-version."parseurl"."1.3.0"
-      self.by-version."path-to-regexp"."0.1.3"
-      self.by-version."proxy-addr"."1.0.3"
-      self.by-version."qs"."2.2.4"
-      self.by-version."range-parser"."1.0.2"
-      self.by-version."send"."0.9.3"
-      self.by-version."serve-static"."1.6.3"
-      self.by-version."type-is"."1.5.2"
-      self.by-version."vary"."1.0.0"
-      self.by-version."cookie"."0.1.2"
-      self.by-version."merge-descriptors"."0.0.2"
-      self.by-version."utils-merge"."1.0.0"
-    ];
+    deps = {
+      "accepts-1.2.7" = self.by-version."accepts"."1.2.7";
+      "content-disposition-0.5.0" = self.by-version."content-disposition"."0.5.0";
+      "content-type-1.0.1" = self.by-version."content-type"."1.0.1";
+      "cookie-0.1.2" = self.by-version."cookie"."0.1.2";
+      "cookie-signature-1.0.6" = self.by-version."cookie-signature"."1.0.6";
+      "debug-2.2.0" = self.by-version."debug"."2.2.0";
+      "depd-1.0.1" = self.by-version."depd"."1.0.1";
+      "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
+      "etag-1.6.0" = self.by-version."etag"."1.6.0";
+      "finalhandler-0.3.6" = self.by-version."finalhandler"."0.3.6";
+      "fresh-0.2.4" = self.by-version."fresh"."0.2.4";
+      "merge-descriptors-1.0.0" = self.by-version."merge-descriptors"."1.0.0";
+      "methods-1.1.1" = self.by-version."methods"."1.1.1";
+      "on-finished-2.2.1" = self.by-version."on-finished"."2.2.1";
+      "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
+      "path-to-regexp-0.1.3" = self.by-version."path-to-regexp"."0.1.3";
+      "proxy-addr-1.0.8" = self.by-version."proxy-addr"."1.0.8";
+      "qs-2.4.2" = self.by-version."qs"."2.4.2";
+      "range-parser-1.0.2" = self.by-version."range-parser"."1.0.2";
+      "send-0.12.3" = self.by-version."send"."0.12.3";
+      "serve-static-1.9.3" = self.by-version."serve-static"."1.9.3";
+      "type-is-1.6.2" = self.by-version."type-is"."1.6.2";
+      "vary-1.0.0" = self.by-version."vary"."1.0.0";
+      "utils-merge-1.0.0" = self.by-version."utils-merge"."1.0.0";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "express" ];
   };
-  "express" = self.by-version."express"."4.9.5";
-  by-spec."finalhandler"."0.2.0" =
-    self.by-version."finalhandler"."0.2.0";
-  by-version."finalhandler"."0.2.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-finalhandler-0.2.0";
+  "express" = self.by-version."express"."4.12.4";
+  by-spec."finalhandler"."0.3.6" =
+    self.by-version."finalhandler"."0.3.6";
+  by-version."finalhandler"."0.3.6" = lib.makeOverridable self.buildNodePackage {
+    name = "finalhandler-0.3.6";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/finalhandler/-/finalhandler-0.2.0.tgz";
-        name = "finalhandler-0.2.0.tgz";
-        sha1 = "794082424b17f6a4b2a0eda39f9db6948ee4be8d";
+        url = "http://registry.npmjs.org/finalhandler/-/finalhandler-0.3.6.tgz";
+        name = "finalhandler-0.3.6.tgz";
+        sha1 = "daf9c4161b1b06e001466b1411dfdb6973be138b";
       })
     ];
     buildInputs =
       (self.nativeDeps."finalhandler" or []);
-    deps = [
-      self.by-version."debug"."2.0.0"
-      self.by-version."escape-html"."1.0.1"
-    ];
+    deps = {
+      "debug-2.2.0" = self.by-version."debug"."2.2.0";
+      "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
+      "on-finished-2.2.1" = self.by-version."on-finished"."2.2.1";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "finalhandler" ];
@@ -543,7 +672,8 @@
   by-spec."forever-agent"."~0.5.0" =
     self.by-version."forever-agent"."0.5.2";
   by-version."forever-agent"."0.5.2" = lib.makeOverridable self.buildNodePackage {
-    name = "node-forever-agent-0.5.2";
+    name = "forever-agent-0.5.2";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/forever-agent/-/forever-agent-0.5.2.tgz";
@@ -553,8 +683,8 @@
     ];
     buildInputs =
       (self.nativeDeps."forever-agent" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "forever-agent" ];
@@ -562,7 +692,8 @@
   by-spec."form-data"."~0.1.0" =
     self.by-version."form-data"."0.1.4";
   by-version."form-data"."0.1.4" = lib.makeOverridable self.buildNodePackage {
-    name = "node-form-data-0.1.4";
+    name = "form-data-0.1.4";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/form-data/-/form-data-0.1.4.tgz";
@@ -572,11 +703,11 @@
     ];
     buildInputs =
       (self.nativeDeps."form-data" or []);
-    deps = [
-      self.by-version."combined-stream"."0.0.5"
-      self.by-version."mime"."1.2.11"
-      self.by-version."async"."0.9.0"
-    ];
+    deps = {
+      "combined-stream-0.0.7" = self.by-version."combined-stream"."0.0.7";
+      "mime-1.2.11" = self.by-version."mime"."1.2.11";
+      "async-0.9.2" = self.by-version."async"."0.9.2";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "form-data" ];
@@ -584,7 +715,8 @@
   by-spec."forwarded"."~0.1.0" =
     self.by-version."forwarded"."0.1.0";
   by-version."forwarded"."0.1.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-forwarded-0.1.0";
+    name = "forwarded-0.1.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/forwarded/-/forwarded-0.1.0.tgz";
@@ -594,8 +726,8 @@
     ];
     buildInputs =
       (self.nativeDeps."forwarded" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "forwarded" ];
@@ -603,7 +735,8 @@
   by-spec."fresh"."0.2.4" =
     self.by-version."fresh"."0.2.4";
   by-version."fresh"."0.2.4" = lib.makeOverridable self.buildNodePackage {
-    name = "node-fresh-0.2.4";
+    name = "fresh-0.2.4";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/fresh/-/fresh-0.2.4.tgz";
@@ -613,8 +746,8 @@
     ];
     buildInputs =
       (self.nativeDeps."fresh" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "fresh" ];
@@ -622,7 +755,8 @@
   by-spec."fstream"."~0.1.28" =
     self.by-version."fstream"."0.1.31";
   by-version."fstream"."0.1.31" = lib.makeOverridable self.buildNodePackage {
-    name = "node-fstream-0.1.31";
+    name = "fstream-0.1.31";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/fstream/-/fstream-0.1.31.tgz";
@@ -632,31 +766,56 @@
     ];
     buildInputs =
       (self.nativeDeps."fstream" or []);
-    deps = [
-      self.by-version."graceful-fs"."3.0.2"
-      self.by-version."inherits"."2.0.1"
-      self.by-version."mkdirp"."0.5.0"
-      self.by-version."rimraf"."2.2.8"
-    ];
+    deps = {
+      "graceful-fs-3.0.7" = self.by-version."graceful-fs"."3.0.7";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "mkdirp-0.5.1" = self.by-version."mkdirp"."0.5.1";
+      "rimraf-2.3.4" = self.by-version."rimraf"."2.3.4";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "fstream" ];
   };
+  by-spec."glob"."^4.4.2" =
+    self.by-version."glob"."4.5.3";
+  by-version."glob"."4.5.3" = lib.makeOverridable self.buildNodePackage {
+    name = "glob-4.5.3";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/glob/-/glob-4.5.3.tgz";
+        name = "glob-4.5.3.tgz";
+        sha1 = "c6cb73d3226c1efef04de3c56d012f03377ee15f";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."glob" or []);
+    deps = {
+      "inflight-1.0.4" = self.by-version."inflight"."1.0.4";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "minimatch-2.0.8" = self.by-version."minimatch"."2.0.8";
+      "once-1.3.2" = self.by-version."once"."1.3.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "glob" ];
+  };
   by-spec."graceful-fs"."~3.0.2" =
-    self.by-version."graceful-fs"."3.0.2";
-  by-version."graceful-fs"."3.0.2" = lib.makeOverridable self.buildNodePackage {
-    name = "node-graceful-fs-3.0.2";
+    self.by-version."graceful-fs"."3.0.7";
+  by-version."graceful-fs"."3.0.7" = lib.makeOverridable self.buildNodePackage {
+    name = "graceful-fs-3.0.7";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.2.tgz";
-        name = "graceful-fs-3.0.2.tgz";
-        sha1 = "2cb5bf7f742bea8ad47c754caeee032b7e71a577";
+        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.7.tgz";
+        name = "graceful-fs-3.0.7.tgz";
+        sha1 = "e935be4b3e57892d289dc3bef7be8c02779d2b54";
       })
     ];
     buildInputs =
       (self.nativeDeps."graceful-fs" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "graceful-fs" ];
@@ -664,7 +823,8 @@
   by-spec."hawk"."~1.0.0" =
     self.by-version."hawk"."1.0.0";
   by-version."hawk"."1.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-hawk-1.0.0";
+    name = "hawk-1.0.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/hawk/-/hawk-1.0.0.tgz";
@@ -674,12 +834,12 @@
     ];
     buildInputs =
       (self.nativeDeps."hawk" or []);
-    deps = [
-      self.by-version."hoek"."0.9.1"
-      self.by-version."boom"."0.4.2"
-      self.by-version."cryptiles"."0.2.2"
-      self.by-version."sntp"."0.2.4"
-    ];
+    deps = {
+      "hoek-0.9.1" = self.by-version."hoek"."0.9.1";
+      "boom-0.4.2" = self.by-version."boom"."0.4.2";
+      "cryptiles-0.2.2" = self.by-version."cryptiles"."0.2.2";
+      "sntp-0.2.4" = self.by-version."sntp"."0.2.4";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "hawk" ];
@@ -687,7 +847,8 @@
   by-spec."hoek"."0.9.x" =
     self.by-version."hoek"."0.9.1";
   by-version."hoek"."0.9.1" = lib.makeOverridable self.buildNodePackage {
-    name = "node-hoek-0.9.1";
+    name = "hoek-0.9.1";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/hoek/-/hoek-0.9.1.tgz";
@@ -697,57 +858,82 @@
     ];
     buildInputs =
       (self.nativeDeps."hoek" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "hoek" ];
   };
   by-spec."http-signature"."~0.10.0" =
-    self.by-version."http-signature"."0.10.0";
-  by-version."http-signature"."0.10.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-http-signature-0.10.0";
+    self.by-version."http-signature"."0.10.1";
+  by-version."http-signature"."0.10.1" = lib.makeOverridable self.buildNodePackage {
+    name = "http-signature-0.10.1";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/http-signature/-/http-signature-0.10.0.tgz";
-        name = "http-signature-0.10.0.tgz";
-        sha1 = "1494e4f5000a83c0f11bcc12d6007c530cb99582";
+        url = "http://registry.npmjs.org/http-signature/-/http-signature-0.10.1.tgz";
+        name = "http-signature-0.10.1.tgz";
+        sha1 = "4fbdac132559aa8323121e540779c0a012b27e66";
       })
     ];
     buildInputs =
       (self.nativeDeps."http-signature" or []);
-    deps = [
-      self.by-version."assert-plus"."0.1.2"
-      self.by-version."asn1"."0.1.11"
-      self.by-version."ctype"."0.5.2"
-    ];
+    deps = {
+      "assert-plus-0.1.5" = self.by-version."assert-plus"."0.1.5";
+      "asn1-0.1.11" = self.by-version."asn1"."0.1.11";
+      "ctype-0.5.3" = self.by-version."ctype"."0.5.3";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "http-signature" ];
   };
-  by-spec."iconv-lite"."0.4.4" =
-    self.by-version."iconv-lite"."0.4.4";
-  by-version."iconv-lite"."0.4.4" = lib.makeOverridable self.buildNodePackage {
-    name = "node-iconv-lite-0.4.4";
+  by-spec."iconv-lite"."0.4.8" =
+    self.by-version."iconv-lite"."0.4.8";
+  by-version."iconv-lite"."0.4.8" = lib.makeOverridable self.buildNodePackage {
+    name = "iconv-lite-0.4.8";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.4.tgz";
-        name = "iconv-lite-0.4.4.tgz";
-        sha1 = "e95f2e41db0735fc21652f7827a5ee32e63c83a8";
+        url = "http://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.8.tgz";
+        name = "iconv-lite-0.4.8.tgz";
+        sha1 = "c6019a7595f2cefca702eab694a010bcd9298d20";
       })
     ];
     buildInputs =
       (self.nativeDeps."iconv-lite" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "iconv-lite" ];
   };
+  by-spec."inflight"."^1.0.4" =
+    self.by-version."inflight"."1.0.4";
+  by-version."inflight"."1.0.4" = lib.makeOverridable self.buildNodePackage {
+    name = "inflight-1.0.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz";
+        name = "inflight-1.0.4.tgz";
+        sha1 = "6cbb4521ebd51ce0ec0a936bfd7657ef7e9b172a";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."inflight" or []);
+    deps = {
+      "once-1.3.2" = self.by-version."once"."1.3.2";
+      "wrappy-1.0.1" = self.by-version."wrappy"."1.0.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "inflight" ];
+  };
   by-spec."inherits"."2" =
     self.by-version."inherits"."2.0.1";
   by-version."inherits"."2.0.1" = lib.makeOverridable self.buildNodePackage {
-    name = "node-inherits-2.0.1";
+    name = "inherits-2.0.1";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz";
@@ -757,48 +943,50 @@
     ];
     buildInputs =
       (self.nativeDeps."inherits" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "inherits" ];
   };
   by-spec."inherits"."~2.0.0" =
     self.by-version."inherits"."2.0.1";
-  by-spec."ipaddr.js"."0.1.3" =
-    self.by-version."ipaddr.js"."0.1.3";
-  by-version."ipaddr.js"."0.1.3" = lib.makeOverridable self.buildNodePackage {
-    name = "node-ipaddr.js-0.1.3";
+  by-spec."ipaddr.js"."1.0.1" =
+    self.by-version."ipaddr.js"."1.0.1";
+  by-version."ipaddr.js"."1.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "ipaddr.js-1.0.1";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/ipaddr.js/-/ipaddr.js-0.1.3.tgz";
-        name = "ipaddr.js-0.1.3.tgz";
-        sha1 = "27a9ca37f148d2102b0ef191ccbf2c51a8f025c6";
+        url = "http://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.0.1.tgz";
+        name = "ipaddr.js-1.0.1.tgz";
+        sha1 = "5f38801dc73e0400fc7076386f6ed5215fbd8f95";
       })
     ];
     buildInputs =
       (self.nativeDeps."ipaddr.js" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "ipaddr.js" ];
   };
   by-spec."json-stringify-safe"."~5.0.0" =
-    self.by-version."json-stringify-safe"."5.0.0";
-  by-version."json-stringify-safe"."5.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-json-stringify-safe-5.0.0";
+    self.by-version."json-stringify-safe"."5.0.1";
+  by-version."json-stringify-safe"."5.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "json-stringify-safe-5.0.1";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.0.tgz";
-        name = "json-stringify-safe-5.0.0.tgz";
-        sha1 = "4c1f228b5050837eba9d21f50c2e6e320624566e";
+        url = "http://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
+        name = "json-stringify-safe-5.0.1.tgz";
+        sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
       })
     ];
     buildInputs =
       (self.nativeDeps."json-stringify-safe" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "json-stringify-safe" ];
@@ -806,7 +994,8 @@
   by-spec."media-typer"."0.3.0" =
     self.by-version."media-typer"."0.3.0";
   by-version."media-typer"."0.3.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-media-typer-0.3.0";
+    name = "media-typer-0.3.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz";
@@ -816,54 +1005,77 @@
     ];
     buildInputs =
       (self.nativeDeps."media-typer" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "media-typer" ];
   };
-  by-spec."merge-descriptors"."0.0.2" =
-    self.by-version."merge-descriptors"."0.0.2";
-  by-version."merge-descriptors"."0.0.2" = lib.makeOverridable self.buildNodePackage {
-    name = "node-merge-descriptors-0.0.2";
+  by-spec."merge-descriptors"."1.0.0" =
+    self.by-version."merge-descriptors"."1.0.0";
+  by-version."merge-descriptors"."1.0.0" = lib.makeOverridable self.buildNodePackage {
+    name = "merge-descriptors-1.0.0";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/merge-descriptors/-/merge-descriptors-0.0.2.tgz";
-        name = "merge-descriptors-0.0.2.tgz";
-        sha1 = "c36a52a781437513c57275f39dd9d317514ac8c7";
+        url = "http://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.0.tgz";
+        name = "merge-descriptors-1.0.0.tgz";
+        sha1 = "2169cf7538e1b0cc87fb88e1502d8474bbf79864";
       })
     ];
     buildInputs =
       (self.nativeDeps."merge-descriptors" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "merge-descriptors" ];
   };
-  by-spec."methods"."1.1.0" =
-    self.by-version."methods"."1.1.0";
-  by-version."methods"."1.1.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-methods-1.1.0";
+  by-spec."methods"."~1.1.1" =
+    self.by-version."methods"."1.1.1";
+  by-version."methods"."1.1.1" = lib.makeOverridable self.buildNodePackage {
+    name = "methods-1.1.1";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/methods/-/methods-1.1.0.tgz";
-        name = "methods-1.1.0.tgz";
-        sha1 = "5dca4ee12df52ff3b056145986a8f01cbc86436f";
+        url = "http://registry.npmjs.org/methods/-/methods-1.1.1.tgz";
+        name = "methods-1.1.1.tgz";
+        sha1 = "17ea6366066d00c58e375b8ec7dfd0453c89822a";
       })
     ];
     buildInputs =
       (self.nativeDeps."methods" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "methods" ];
   };
-  by-spec."mime"."1.2.11" =
+  by-spec."mime"."1.3.4" =
+    self.by-version."mime"."1.3.4";
+  by-version."mime"."1.3.4" = lib.makeOverridable self.buildNodePackage {
+    name = "mime-1.3.4";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/mime/-/mime-1.3.4.tgz";
+        name = "mime-1.3.4.tgz";
+        sha1 = "115f9e3b6b3daf2959983cb38f149a2d40eb5d53";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."mime" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "mime" ];
+  };
+  by-spec."mime"."~1.2.11" =
     self.by-version."mime"."1.2.11";
   by-version."mime"."1.2.11" = lib.makeOverridable self.buildNodePackage {
-    name = "node-mime-1.2.11";
+    name = "mime-1.2.11";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/mime/-/mime-1.2.11.tgz";
@@ -873,59 +1085,81 @@
     ];
     buildInputs =
       (self.nativeDeps."mime" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "mime" ];
   };
-  by-spec."mime"."~1.2.11" =
-    self.by-version."mime"."1.2.11";
   by-spec."mime"."~1.2.9" =
     self.by-version."mime"."1.2.11";
-  by-spec."mime-db"."~1.1.0" =
-    self.by-version."mime-db"."1.1.0";
-  by-version."mime-db"."1.1.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-mime-db-1.1.0";
+  by-spec."mime-db"."~1.10.0" =
+    self.by-version."mime-db"."1.10.0";
+  by-version."mime-db"."1.10.0" = lib.makeOverridable self.buildNodePackage {
+    name = "mime-db-1.10.0";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/mime-db/-/mime-db-1.1.0.tgz";
-        name = "mime-db-1.1.0.tgz";
-        sha1 = "4613f418ab995450bf4bda240cd0ab38016a07a9";
+        url = "http://registry.npmjs.org/mime-db/-/mime-db-1.10.0.tgz";
+        name = "mime-db-1.10.0.tgz";
+        sha1 = "e6308063c758ebd12837874c3d1ea9170766b03b";
       })
     ];
     buildInputs =
       (self.nativeDeps."mime-db" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "mime-db" ];
   };
-  by-spec."mime-types"."~2.0.2" =
-    self.by-version."mime-types"."2.0.2";
-  by-version."mime-types"."2.0.2" = lib.makeOverridable self.buildNodePackage {
-    name = "node-mime-types-2.0.2";
+  by-spec."mime-types"."~2.0.11" =
+    self.by-version."mime-types"."2.0.12";
+  by-version."mime-types"."2.0.12" = lib.makeOverridable self.buildNodePackage {
+    name = "mime-types-2.0.12";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/mime-types/-/mime-types-2.0.2.tgz";
-        name = "mime-types-2.0.2.tgz";
-        sha1 = "c74b779f2896c367888622bd537aaaad4c0a2c08";
+        url = "http://registry.npmjs.org/mime-types/-/mime-types-2.0.12.tgz";
+        name = "mime-types-2.0.12.tgz";
+        sha1 = "87ae9f124e94f8e440c93d1a72d0dccecdb71135";
       })
     ];
     buildInputs =
       (self.nativeDeps."mime-types" or []);
-    deps = [
-      self.by-version."mime-db"."1.1.0"
-    ];
+    deps = {
+      "mime-db-1.10.0" = self.by-version."mime-db"."1.10.0";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "mime-types" ];
   };
+  by-spec."minimatch"."^2.0.1" =
+    self.by-version."minimatch"."2.0.8";
+  by-version."minimatch"."2.0.8" = lib.makeOverridable self.buildNodePackage {
+    name = "minimatch-2.0.8";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/minimatch/-/minimatch-2.0.8.tgz";
+        name = "minimatch-2.0.8.tgz";
+        sha1 = "0bc20f6bf3570a698ef0ddff902063c6cabda6bf";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."minimatch" or []);
+    deps = {
+      "brace-expansion-1.1.0" = self.by-version."brace-expansion"."1.1.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "minimatch" ];
+  };
   by-spec."minimist"."0.0.8" =
     self.by-version."minimist"."0.0.8";
   by-version."minimist"."0.0.8" = lib.makeOverridable self.buildNodePackage {
-    name = "node-minimist-0.0.8";
+    name = "minimist-0.0.8";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
@@ -935,47 +1169,49 @@
     ];
     buildInputs =
       (self.nativeDeps."minimist" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "minimist" ];
   };
   by-spec."mkdirp"."0.5" =
-    self.by-version."mkdirp"."0.5.0";
-  by-version."mkdirp"."0.5.0" = lib.makeOverridable self.buildNodePackage {
-    name = "mkdirp-0.5.0";
+    self.by-version."mkdirp"."0.5.1";
+  by-version."mkdirp"."0.5.1" = lib.makeOverridable self.buildNodePackage {
+    name = "mkdirp-0.5.1";
+    bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz";
-        name = "mkdirp-0.5.0.tgz";
-        sha1 = "1d73076a6df986cd9344e15e71fcc05a4c9abf12";
+        url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
+        name = "mkdirp-0.5.1.tgz";
+        sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
       })
     ];
     buildInputs =
       (self.nativeDeps."mkdirp" or []);
-    deps = [
-      self.by-version."minimist"."0.0.8"
-    ];
+    deps = {
+      "minimist-0.0.8" = self.by-version."minimist"."0.0.8";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "mkdirp" ];
   };
-  by-spec."ms"."0.6.2" =
-    self.by-version."ms"."0.6.2";
-  by-version."ms"."0.6.2" = lib.makeOverridable self.buildNodePackage {
-    name = "node-ms-0.6.2";
+  by-spec."ms"."0.7.1" =
+    self.by-version."ms"."0.7.1";
+  by-version."ms"."0.7.1" = lib.makeOverridable self.buildNodePackage {
+    name = "ms-0.7.1";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/ms/-/ms-0.6.2.tgz";
-        name = "ms-0.6.2.tgz";
-        sha1 = "d89c2124c6fdc1353d65a8b77bf1aac4b193708c";
+        url = "http://registry.npmjs.org/ms/-/ms-0.7.1.tgz";
+        name = "ms-0.7.1.tgz";
+        sha1 = "9cd13c03adbff25b65effde7ce864ee952017098";
       })
     ];
     buildInputs =
       (self.nativeDeps."ms" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "ms" ];
@@ -983,7 +1219,8 @@
   by-spec."nan"."~1.0.0" =
     self.by-version."nan"."1.0.0";
   by-version."nan"."1.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-nan-1.0.0";
+    name = "nan-1.0.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/nan/-/nan-1.0.0.tgz";
@@ -993,46 +1230,48 @@
     ];
     buildInputs =
       (self.nativeDeps."nan" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "nan" ];
   };
-  by-spec."negotiator"."0.4.8" =
-    self.by-version."negotiator"."0.4.8";
-  by-version."negotiator"."0.4.8" = lib.makeOverridable self.buildNodePackage {
-    name = "node-negotiator-0.4.8";
+  by-spec."negotiator"."0.5.3" =
+    self.by-version."negotiator"."0.5.3";
+  by-version."negotiator"."0.5.3" = lib.makeOverridable self.buildNodePackage {
+    name = "negotiator-0.5.3";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/negotiator/-/negotiator-0.4.8.tgz";
-        name = "negotiator-0.4.8.tgz";
-        sha1 = "96010b23b63c387f47a4bed96762a831cda39eab";
+        url = "http://registry.npmjs.org/negotiator/-/negotiator-0.5.3.tgz";
+        name = "negotiator-0.5.3.tgz";
+        sha1 = "269d5c476810ec92edbe7b6c2f28316384f9a7e8";
       })
     ];
     buildInputs =
       (self.nativeDeps."negotiator" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "negotiator" ];
   };
   by-spec."node-uuid"."~1.4.0" =
-    self.by-version."node-uuid"."1.4.1";
-  by-version."node-uuid"."1.4.1" = lib.makeOverridable self.buildNodePackage {
-    name = "node-node-uuid-1.4.1";
+    self.by-version."node-uuid"."1.4.3";
+  by-version."node-uuid"."1.4.3" = lib.makeOverridable self.buildNodePackage {
+    name = "node-uuid-1.4.3";
+    bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/node-uuid/-/node-uuid-1.4.1.tgz";
-        name = "node-uuid-1.4.1.tgz";
-        sha1 = "39aef510e5889a3dca9c895b506c73aae1bac048";
+        url = "http://registry.npmjs.org/node-uuid/-/node-uuid-1.4.3.tgz";
+        name = "node-uuid-1.4.3.tgz";
+        sha1 = "319bb7a56e7cb63f00b5c0cd7851cd4b4ddf1df9";
       })
     ];
     buildInputs =
       (self.nativeDeps."node-uuid" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "node-uuid" ];
@@ -1040,7 +1279,8 @@
   by-spec."oauth-sign"."~0.3.0" =
     self.by-version."oauth-sign"."0.3.0";
   by-version."oauth-sign"."0.3.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-oauth-sign-0.3.0";
+    name = "oauth-sign-0.3.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/oauth-sign/-/oauth-sign-0.3.0.tgz";
@@ -1050,38 +1290,59 @@
     ];
     buildInputs =
       (self.nativeDeps."oauth-sign" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "oauth-sign" ];
   };
-  by-spec."on-finished"."2.1.0" =
-    self.by-version."on-finished"."2.1.0";
-  by-version."on-finished"."2.1.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-on-finished-2.1.0";
+  by-spec."on-finished"."~2.2.1" =
+    self.by-version."on-finished"."2.2.1";
+  by-version."on-finished"."2.2.1" = lib.makeOverridable self.buildNodePackage {
+    name = "on-finished-2.2.1";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/on-finished/-/on-finished-2.1.0.tgz";
-        name = "on-finished-2.1.0.tgz";
-        sha1 = "0c539f09291e8ffadde0c8a25850fb2cedc7022d";
+        url = "http://registry.npmjs.org/on-finished/-/on-finished-2.2.1.tgz";
+        name = "on-finished-2.2.1.tgz";
+        sha1 = "5c85c1cc36299f78029653f667f27b6b99ebc029";
       })
     ];
     buildInputs =
       (self.nativeDeps."on-finished" or []);
-    deps = [
-      self.by-version."ee-first"."1.0.5"
-    ];
+    deps = {
+      "ee-first-1.1.0" = self.by-version."ee-first"."1.1.0";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "on-finished" ];
   };
-  by-spec."on-finished"."~2.1.0" =
-    self.by-version."on-finished"."2.1.0";
+  by-spec."once"."^1.3.0" =
+    self.by-version."once"."1.3.2";
+  by-version."once"."1.3.2" = lib.makeOverridable self.buildNodePackage {
+    name = "once-1.3.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/once/-/once-1.3.2.tgz";
+        name = "once-1.3.2.tgz";
+        sha1 = "d8feeca93b039ec1dcdee7741c92bdac5e28081b";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."once" or []);
+    deps = {
+      "wrappy-1.0.1" = self.by-version."wrappy"."1.0.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "once" ];
+  };
   by-spec."options".">=0.0.5" =
     self.by-version."options"."0.0.6";
   by-version."options"."0.0.6" = lib.makeOverridable self.buildNodePackage {
-    name = "node-options-0.0.6";
+    name = "options-0.0.6";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/options/-/options-0.0.6.tgz";
@@ -1091,8 +1352,8 @@
     ];
     buildInputs =
       (self.nativeDeps."options" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "options" ];
@@ -1100,7 +1361,8 @@
   by-spec."parseurl"."~1.3.0" =
     self.by-version."parseurl"."1.3.0";
   by-version."parseurl"."1.3.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-parseurl-1.3.0";
+    name = "parseurl-1.3.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/parseurl/-/parseurl-1.3.0.tgz";
@@ -1110,8 +1372,8 @@
     ];
     buildInputs =
       (self.nativeDeps."parseurl" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "parseurl" ];
@@ -1119,7 +1381,8 @@
   by-spec."path-to-regexp"."0.1.3" =
     self.by-version."path-to-regexp"."0.1.3";
   by-version."path-to-regexp"."0.1.3" = lib.makeOverridable self.buildNodePackage {
-    name = "node-path-to-regexp-0.1.3";
+    name = "path-to-regexp-0.1.3";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.3.tgz";
@@ -1129,67 +1392,50 @@
     ];
     buildInputs =
       (self.nativeDeps."path-to-regexp" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "path-to-regexp" ];
   };
-  by-spec."proxy-addr"."~1.0.3" =
-    self.by-version."proxy-addr"."1.0.3";
-  by-version."proxy-addr"."1.0.3" = lib.makeOverridable self.buildNodePackage {
-    name = "node-proxy-addr-1.0.3";
+  by-spec."proxy-addr"."~1.0.8" =
+    self.by-version."proxy-addr"."1.0.8";
+  by-version."proxy-addr"."1.0.8" = lib.makeOverridable self.buildNodePackage {
+    name = "proxy-addr-1.0.8";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/proxy-addr/-/proxy-addr-1.0.3.tgz";
-        name = "proxy-addr-1.0.3.tgz";
-        sha1 = "17d824aac844707441249da6d1ea5e889007cdd6";
+        url = "http://registry.npmjs.org/proxy-addr/-/proxy-addr-1.0.8.tgz";
+        name = "proxy-addr-1.0.8.tgz";
+        sha1 = "db54ec878bcc1053d57646609219b3715678bafe";
       })
     ];
     buildInputs =
       (self.nativeDeps."proxy-addr" or []);
-    deps = [
-      self.by-version."forwarded"."0.1.0"
-      self.by-version."ipaddr.js"."0.1.3"
-    ];
+    deps = {
+      "forwarded-0.1.0" = self.by-version."forwarded"."0.1.0";
+      "ipaddr.js-1.0.1" = self.by-version."ipaddr.js"."1.0.1";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "proxy-addr" ];
   };
-  by-spec."punycode".">=0.2.0" =
-    self.by-version."punycode"."1.3.1";
-  by-version."punycode"."1.3.1" = lib.makeOverridable self.buildNodePackage {
-    name = "node-punycode-1.3.1";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/punycode/-/punycode-1.3.1.tgz";
-        name = "punycode-1.3.1.tgz";
-        sha1 = "710afe5123c20a1530b712e3e682b9118fe8058e";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."punycode" or []);
-    deps = [
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "punycode" ];
-  };
-  by-spec."qs"."2.2.4" =
-    self.by-version."qs"."2.2.4";
-  by-version."qs"."2.2.4" = lib.makeOverridable self.buildNodePackage {
-    name = "node-qs-2.2.4";
+  by-spec."qs"."2.4.2" =
+    self.by-version."qs"."2.4.2";
+  by-version."qs"."2.4.2" = lib.makeOverridable self.buildNodePackage {
+    name = "qs-2.4.2";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/qs/-/qs-2.2.4.tgz";
-        name = "qs-2.2.4.tgz";
-        sha1 = "2e9fbcd34b540e3421c924ecd01e90aa975319c8";
+        url = "http://registry.npmjs.org/qs/-/qs-2.4.2.tgz";
+        name = "qs-2.4.2.tgz";
+        sha1 = "f7ce788e5777df0b5010da7f7c4e73ba32470f5a";
       })
     ];
     buildInputs =
       (self.nativeDeps."qs" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "qs" ];
@@ -1197,7 +1443,8 @@
   by-spec."qs"."~0.6.0" =
     self.by-version."qs"."0.6.6";
   by-version."qs"."0.6.6" = lib.makeOverridable self.buildNodePackage {
-    name = "node-qs-0.6.6";
+    name = "qs-0.6.6";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/qs/-/qs-0.6.6.tgz";
@@ -1207,8 +1454,8 @@
     ];
     buildInputs =
       (self.nativeDeps."qs" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "qs" ];
@@ -1216,7 +1463,8 @@
   by-spec."range-parser"."~1.0.2" =
     self.by-version."range-parser"."1.0.2";
   by-version."range-parser"."1.0.2" = lib.makeOverridable self.buildNodePackage {
-    name = "node-range-parser-1.0.2";
+    name = "range-parser-1.0.2";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/range-parser/-/range-parser-1.0.2.tgz";
@@ -1226,29 +1474,30 @@
     ];
     buildInputs =
       (self.nativeDeps."range-parser" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "range-parser" ];
   };
-  by-spec."raw-body"."1.3.0" =
-    self.by-version."raw-body"."1.3.0";
-  by-version."raw-body"."1.3.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-raw-body-1.3.0";
+  by-spec."raw-body"."~2.0.1" =
+    self.by-version."raw-body"."2.0.1";
+  by-version."raw-body"."2.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "raw-body-2.0.1";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/raw-body/-/raw-body-1.3.0.tgz";
-        name = "raw-body-1.3.0.tgz";
-        sha1 = "978230a156a5548f42eef14de22d0f4f610083d1";
+        url = "http://registry.npmjs.org/raw-body/-/raw-body-2.0.1.tgz";
+        name = "raw-body-2.0.1.tgz";
+        sha1 = "2b70a3ffd1681c0521bae73454e0ccbc785d378e";
       })
     ];
     buildInputs =
       (self.nativeDeps."raw-body" or []);
-    deps = [
-      self.by-version."bytes"."1.0.0"
-      self.by-version."iconv-lite"."0.4.4"
-    ];
+    deps = {
+      "bytes-2.0.1" = self.by-version."bytes"."2.0.1";
+      "iconv-lite-0.4.8" = self.by-version."iconv-lite"."0.4.8";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "raw-body" ];
@@ -1256,7 +1505,8 @@
   by-spec."request"."~2.34.0" =
     self.by-version."request"."2.34.0";
   by-version."request"."2.34.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-request-2.34.0";
+    name = "request-2.34.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/request/-/request-2.34.0.tgz";
@@ -1266,92 +1516,96 @@
     ];
     buildInputs =
       (self.nativeDeps."request" or []);
-    deps = [
-      self.by-version."qs"."0.6.6"
-      self.by-version."json-stringify-safe"."5.0.0"
-      self.by-version."forever-agent"."0.5.2"
-      self.by-version."node-uuid"."1.4.1"
-      self.by-version."mime"."1.2.11"
-      self.by-version."tough-cookie"."0.12.1"
-      self.by-version."form-data"."0.1.4"
-      self.by-version."tunnel-agent"."0.3.0"
-      self.by-version."http-signature"."0.10.0"
-      self.by-version."oauth-sign"."0.3.0"
-      self.by-version."hawk"."1.0.0"
-      self.by-version."aws-sign2"."0.5.0"
-    ];
+    deps = {
+      "qs-0.6.6" = self.by-version."qs"."0.6.6";
+      "json-stringify-safe-5.0.1" = self.by-version."json-stringify-safe"."5.0.1";
+      "forever-agent-0.5.2" = self.by-version."forever-agent"."0.5.2";
+      "node-uuid-1.4.3" = self.by-version."node-uuid"."1.4.3";
+      "mime-1.2.11" = self.by-version."mime"."1.2.11";
+      "tough-cookie-1.1.0" = self.by-version."tough-cookie"."1.1.0";
+      "form-data-0.1.4" = self.by-version."form-data"."0.1.4";
+      "tunnel-agent-0.3.0" = self.by-version."tunnel-agent"."0.3.0";
+      "http-signature-0.10.1" = self.by-version."http-signature"."0.10.1";
+      "oauth-sign-0.3.0" = self.by-version."oauth-sign"."0.3.0";
+      "hawk-1.0.0" = self.by-version."hawk"."1.0.0";
+      "aws-sign2-0.5.0" = self.by-version."aws-sign2"."0.5.0";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "request" ];
   };
   "request" = self.by-version."request"."2.34.0";
   by-spec."rimraf"."2" =
-    self.by-version."rimraf"."2.2.8";
-  by-version."rimraf"."2.2.8" = lib.makeOverridable self.buildNodePackage {
-    name = "rimraf-2.2.8";
+    self.by-version."rimraf"."2.3.4";
+  by-version."rimraf"."2.3.4" = lib.makeOverridable self.buildNodePackage {
+    name = "rimraf-2.3.4";
+    bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz";
-        name = "rimraf-2.2.8.tgz";
-        sha1 = "e439be2aaee327321952730f99a8929e4fc50582";
+        url = "http://registry.npmjs.org/rimraf/-/rimraf-2.3.4.tgz";
+        name = "rimraf-2.3.4.tgz";
+        sha1 = "82d9bc1b2fcf31e205ac7b28138a025d08e9159a";
       })
     ];
     buildInputs =
       (self.nativeDeps."rimraf" or []);
-    deps = [
-    ];
+    deps = {
+      "glob-4.5.3" = self.by-version."glob"."4.5.3";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "rimraf" ];
   };
-  by-spec."send"."0.9.3" =
-    self.by-version."send"."0.9.3";
-  by-version."send"."0.9.3" = lib.makeOverridable self.buildNodePackage {
-    name = "node-send-0.9.3";
+  by-spec."send"."0.12.3" =
+    self.by-version."send"."0.12.3";
+  by-version."send"."0.12.3" = lib.makeOverridable self.buildNodePackage {
+    name = "send-0.12.3";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/send/-/send-0.9.3.tgz";
-        name = "send-0.9.3.tgz";
-        sha1 = "b43a7414cd089b7fbec9b755246f7c37b7b85cc0";
+        url = "http://registry.npmjs.org/send/-/send-0.12.3.tgz";
+        name = "send-0.12.3.tgz";
+        sha1 = "cd12dc58fde21e4f91902b39b2fda05a7a6d9bdc";
       })
     ];
     buildInputs =
       (self.nativeDeps."send" or []);
-    deps = [
-      self.by-version."debug"."2.0.0"
-      self.by-version."depd"."0.4.5"
-      self.by-version."destroy"."1.0.3"
-      self.by-version."escape-html"."1.0.1"
-      self.by-version."etag"."1.4.0"
-      self.by-version."fresh"."0.2.4"
-      self.by-version."mime"."1.2.11"
-      self.by-version."ms"."0.6.2"
-      self.by-version."on-finished"."2.1.0"
-      self.by-version."range-parser"."1.0.2"
-    ];
+    deps = {
+      "debug-2.2.0" = self.by-version."debug"."2.2.0";
+      "depd-1.0.1" = self.by-version."depd"."1.0.1";
+      "destroy-1.0.3" = self.by-version."destroy"."1.0.3";
+      "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
+      "etag-1.6.0" = self.by-version."etag"."1.6.0";
+      "fresh-0.2.4" = self.by-version."fresh"."0.2.4";
+      "mime-1.3.4" = self.by-version."mime"."1.3.4";
+      "ms-0.7.1" = self.by-version."ms"."0.7.1";
+      "on-finished-2.2.1" = self.by-version."on-finished"."2.2.1";
+      "range-parser-1.0.2" = self.by-version."range-parser"."1.0.2";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "send" ];
   };
-  by-spec."serve-static"."~1.6.3" =
-    self.by-version."serve-static"."1.6.3";
-  by-version."serve-static"."1.6.3" = lib.makeOverridable self.buildNodePackage {
-    name = "node-serve-static-1.6.3";
+  by-spec."serve-static"."~1.9.3" =
+    self.by-version."serve-static"."1.9.3";
+  by-version."serve-static"."1.9.3" = lib.makeOverridable self.buildNodePackage {
+    name = "serve-static-1.9.3";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/serve-static/-/serve-static-1.6.3.tgz";
-        name = "serve-static-1.6.3.tgz";
-        sha1 = "b214235d4d4516db050ea9f7b429b46212e79132";
+        url = "http://registry.npmjs.org/serve-static/-/serve-static-1.9.3.tgz";
+        name = "serve-static-1.9.3.tgz";
+        sha1 = "5f8da07323ad385ff3dc541f1a7917b2e436eb57";
       })
     ];
     buildInputs =
       (self.nativeDeps."serve-static" or []);
-    deps = [
-      self.by-version."escape-html"."1.0.1"
-      self.by-version."parseurl"."1.3.0"
-      self.by-version."send"."0.9.3"
-      self.by-version."utils-merge"."1.0.0"
-    ];
+    deps = {
+      "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
+      "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
+      "send-0.12.3" = self.by-version."send"."0.12.3";
+      "utils-merge-1.0.0" = self.by-version."utils-merge"."1.0.0";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "serve-static" ];
@@ -1359,7 +1613,8 @@
   by-spec."sntp"."0.2.x" =
     self.by-version."sntp"."0.2.4";
   by-version."sntp"."0.2.4" = lib.makeOverridable self.buildNodePackage {
-    name = "node-sntp-0.2.4";
+    name = "sntp-0.2.4";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/sntp/-/sntp-0.2.4.tgz";
@@ -1369,9 +1624,9 @@
     ];
     buildInputs =
       (self.nativeDeps."sntp" or []);
-    deps = [
-      self.by-version."hoek"."0.9.1"
-    ];
+    deps = {
+      "hoek-0.9.1" = self.by-version."hoek"."0.9.1";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "sntp" ];
@@ -1379,7 +1634,8 @@
   by-spec."tar"."~0.1.19" =
     self.by-version."tar"."0.1.20";
   by-version."tar"."0.1.20" = lib.makeOverridable self.buildNodePackage {
-    name = "node-tar-0.1.20";
+    name = "tar-0.1.20";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/tar/-/tar-0.1.20.tgz";
@@ -1389,11 +1645,11 @@
     ];
     buildInputs =
       (self.nativeDeps."tar" or []);
-    deps = [
-      self.by-version."block-stream"."0.0.7"
-      self.by-version."fstream"."0.1.31"
-      self.by-version."inherits"."2.0.1"
-    ];
+    deps = {
+      "block-stream-0.0.8" = self.by-version."block-stream"."0.0.8";
+      "fstream-0.1.31" = self.by-version."fstream"."0.1.31";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "tar" ];
@@ -1402,7 +1658,8 @@
   by-spec."tinycolor"."0.x" =
     self.by-version."tinycolor"."0.0.1";
   by-version."tinycolor"."0.0.1" = lib.makeOverridable self.buildNodePackage {
-    name = "node-tinycolor-0.0.1";
+    name = "tinycolor-0.0.1";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/tinycolor/-/tinycolor-0.0.1.tgz";
@@ -1412,28 +1669,28 @@
     ];
     buildInputs =
       (self.nativeDeps."tinycolor" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "tinycolor" ];
   };
   by-spec."tough-cookie".">=0.12.0" =
-    self.by-version."tough-cookie"."0.12.1";
-  by-version."tough-cookie"."0.12.1" = lib.makeOverridable self.buildNodePackage {
-    name = "node-tough-cookie-0.12.1";
+    self.by-version."tough-cookie"."1.1.0";
+  by-version."tough-cookie"."1.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "tough-cookie-1.1.0";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/tough-cookie/-/tough-cookie-0.12.1.tgz";
-        name = "tough-cookie-0.12.1.tgz";
-        sha1 = "8220c7e21abd5b13d96804254bd5a81ebf2c7d62";
+        url = "http://registry.npmjs.org/tough-cookie/-/tough-cookie-1.1.0.tgz";
+        name = "tough-cookie-1.1.0.tgz";
+        sha1 = "126d2490e66ae5286b6863debd4a341076915954";
       })
     ];
     buildInputs =
       (self.nativeDeps."tough-cookie" or []);
-    deps = [
-      self.by-version."punycode"."1.3.1"
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "tough-cookie" ];
@@ -1441,7 +1698,8 @@
   by-spec."tunnel-agent"."~0.3.0" =
     self.by-version."tunnel-agent"."0.3.0";
   by-version."tunnel-agent"."0.3.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-tunnel-agent-0.3.0";
+    name = "tunnel-agent-0.3.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.3.0.tgz";
@@ -1451,29 +1709,30 @@
     ];
     buildInputs =
       (self.nativeDeps."tunnel-agent" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "tunnel-agent" ];
   };
-  by-spec."type-is"."~1.5.1" =
-    self.by-version."type-is"."1.5.2";
-  by-version."type-is"."1.5.2" = lib.makeOverridable self.buildNodePackage {
-    name = "node-type-is-1.5.2";
+  by-spec."type-is"."~1.6.2" =
+    self.by-version."type-is"."1.6.2";
+  by-version."type-is"."1.6.2" = lib.makeOverridable self.buildNodePackage {
+    name = "type-is-1.6.2";
+    bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/type-is/-/type-is-1.5.2.tgz";
-        name = "type-is-1.5.2.tgz";
-        sha1 = "8291bbe845a904acfaffd05a41fdeb234bfa9e5f";
+        url = "http://registry.npmjs.org/type-is/-/type-is-1.6.2.tgz";
+        name = "type-is-1.6.2.tgz";
+        sha1 = "694e83e5d110417e681cea278227f264ae406e33";
       })
     ];
     buildInputs =
       (self.nativeDeps."type-is" or []);
-    deps = [
-      self.by-version."media-typer"."0.3.0"
-      self.by-version."mime-types"."2.0.2"
-    ];
+    deps = {
+      "media-typer-0.3.0" = self.by-version."media-typer"."0.3.0";
+      "mime-types-2.0.12" = self.by-version."mime-types"."2.0.12";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "type-is" ];
@@ -1481,7 +1740,8 @@
   by-spec."utils-merge"."1.0.0" =
     self.by-version."utils-merge"."1.0.0";
   by-version."utils-merge"."1.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-utils-merge-1.0.0";
+    name = "utils-merge-1.0.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz";
@@ -1491,8 +1751,8 @@
     ];
     buildInputs =
       (self.nativeDeps."utils-merge" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "utils-merge" ];
@@ -1500,7 +1760,8 @@
   by-spec."vary"."~1.0.0" =
     self.by-version."vary"."1.0.0";
   by-version."vary"."1.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "node-vary-1.0.0";
+    name = "vary-1.0.0";
+    bin = false;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/vary/-/vary-1.0.0.tgz";
@@ -1510,16 +1771,37 @@
     ];
     buildInputs =
       (self.nativeDeps."vary" or []);
-    deps = [
-    ];
+    deps = {
+    };
     peerDependencies = [
     ];
     passthru.names = [ "vary" ];
   };
+  by-spec."wrappy"."1" =
+    self.by-version."wrappy"."1.0.1";
+  by-version."wrappy"."1.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "wrappy-1.0.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz";
+        name = "wrappy-1.0.1.tgz";
+        sha1 = "1e65969965ccbc2db4548c6b84a6f2c5aedd4739";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."wrappy" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "wrappy" ];
+  };
   by-spec."ws"."~0.4.32" =
     self.by-version."ws"."0.4.32";
   by-version."ws"."0.4.32" = lib.makeOverridable self.buildNodePackage {
     name = "ws-0.4.32";
+    bin = true;
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/ws/-/ws-0.4.32.tgz";
@@ -1529,12 +1811,12 @@
     ];
     buildInputs =
       (self.nativeDeps."ws" or []);
-    deps = [
-      self.by-version."commander"."2.1.0"
-      self.by-version."nan"."1.0.0"
-      self.by-version."tinycolor"."0.0.1"
-      self.by-version."options"."0.0.6"
-    ];
+    deps = {
+      "commander-2.1.0" = self.by-version."commander"."2.1.0";
+      "nan-1.0.0" = self.by-version."nan"."1.0.0";
+      "tinycolor-0.0.1" = self.by-version."tinycolor"."0.0.1";
+      "options-0.0.6" = self.by-version."options"."0.0.6";
+    };
     peerDependencies = [
     ];
     passthru.names = [ "ws" ];
diff --git a/pkgs/applications/gis/qgis/default.nix b/pkgs/applications/gis/qgis/default.nix
index f3141a30bf1..8d9771c9134 100644
--- a/pkgs/applications/gis/qgis/default.nix
+++ b/pkgs/applications/gis/qgis/default.nix
@@ -1,12 +1,12 @@
-{ stdenv, fetchurl, gdal, cmake, qt4, flex, bison, proj, geos, x11, sqlite, gsl,
-  pyqt4, qwt, fcgi, pythonPackages, libspatialindex, libspatialite, qscintilla, postgresql, makeWrapper }:
+{ stdenv, fetchurl, gdal, cmake, qt4, flex, bison, proj, geos, xlibsWrapper, sqlite, gsl,
+  qwt, fcgi, pythonPackages, libspatialindex, libspatialite, qscintilla, postgresql, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "qgis-2.8.1";
+  name = "qgis-2.10.1";
 
-  buildInputs = [ gdal qt4 flex bison proj geos x11 sqlite gsl pyqt4 qwt qscintilla
+  buildInputs = [ gdal qt4 flex bison proj geos xlibsWrapper sqlite gsl qwt qscintilla
     fcgi libspatialindex libspatialite postgresql ] ++
-    (with pythonPackages; [ numpy psycopg2 ]);
+    (with pythonPackages; [ numpy psycopg2 ]) ++ [ pythonPackages.qscintilla ];
 
   nativeBuildInputs = [ cmake makeWrapper ];
 
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://qgis.org/downloads/${name}.tar.bz2";
-    sha256 = "19acb74e4e2739238b87bf64f2750e10e366e9d61d070a4b8ca341ce01ca9741";
+    sha256 = "79119b54642edaffe3cda513531eb7b81913e013954a49c6d3b21c8b00143307";
   };
 
   postInstall = ''
diff --git a/pkgs/applications/gis/saga/default.nix b/pkgs/applications/gis/saga/default.nix
index bb31b24bf5e..7ba523d3a60 100644
--- a/pkgs/applications/gis/saga/default.nix
+++ b/pkgs/applications/gis/saga/default.nix
@@ -2,15 +2,15 @@
   libharu, opencv, vigra, postgresql }:
 
 stdenv.mkDerivation rec {
-  name = "saga-2.1.4";
+  name = "saga-2.2.0";
 
   buildInputs = [ gdal wxGTK30 proj libharu opencv vigra postgresql libiodbc lzma jasper ];
 
   enableParallelBuilding = true;
 
   src = fetchurl {
-    url = "http://sourceforge.net/projects/saga-gis/files/SAGA%20-%202.1/SAGA%202.1.4/saga_2.1.4.tar.gz";
-    sha256 = "694e4102f592f512c635328c40fdeff33493f74698d9466bb654baf3247e7b76";
+    url = "http://sourceforge.net/projects/saga-gis/files/SAGA%20-%202.2/SAGA%202.2.0/saga_2.2.0.tar.gz";
+    sha256 = "50b2e642331c817606bc954302e53757c4ffa6f6d6f468e12caeaaa7a182edaf";
   };
 
   meta = {
diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix
index d577bcd4f94..9483809bf66 100644
--- a/pkgs/applications/graphics/ImageMagick/default.nix
+++ b/pkgs/applications/graphics/ImageMagick/default.nix
@@ -1,97 +1,53 @@
-{ stdenv, fetchurl, pkgconfig, libtool
-, libcl ? null, perl ? null, jemalloc ? null, bzip2 ? null, zlib ? null
-, libX11 ? null, libXext ? null, libXt ? null, dejavu_fonts ? null, fftw ? null
-, libfpx ? null, djvulibre ? null, fontconfig ? null, freetype ? null
-, ghostscript ? null, graphviz ? null, jbigkit ? null, libjpeg ? null
-, lcms2 ? null, openjpeg ? null, liblqr1 ? null, xz ? null, openexr ? null
-, pango ? null, libpng ? null, librsvg ? null, libtiff ? null, libwebp ? null
-, libxml2 ? null
+{ lib, stdenv, fetchurl, pkgconfig, libtool
+, bzip2, zlib, libX11, libXext, libXt, fontconfig, freetype, ghostscript, libjpeg
+, lcms2, openexr, libpng, librsvg, libtiff, libxml2
 }:
 
 let
-
-  version = "6.9.1-0";
-
   arch =
     if stdenv.system == "i686-linux" then "i686"
     else if stdenv.system == "x86_64-linux" || stdenv.system == "x86_64-darwin" then "x86-64"
     else throw "ImageMagick is not supported on this platform.";
-
-  mkFlag = trueStr: falseStr: cond: val: "--${if cond then trueStr else falseStr}-${val}";
-  mkWith = mkFlag "with" "without";
-  mkEnable = mkFlag "enable" "disable";
-
-  hasX11 = libX11 != null && libXext != null && libXt != null;
-
 in
 
-with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "imagemagick-${version}";
+  version = "6.9.2-0";
 
   src = fetchurl {
     url = "mirror://imagemagick/releases/ImageMagick-${version}.tar.xz";
-    sha256 = "03lvj6rxv16xk0dpsbzvm2gq5bggkwff9wqbpkq0znihzijpax1j";
+    sha256 = "17ir8bw1j7g7srqmsz3rx780sgnc21zfn0kwyj78iazrywldx8h7";
   };
 
-  enableParallelBuilding = true;
+  outputs = [ "out" "doc" ];
 
-  configureFlags = [
-    (mkEnable (libcl != null)        "opencl")
-    (mkWith   true                   "modules")
-    (mkWith   true                   "gcc-arch=${arch}")
-    #(mkEnable true                   "hdri") This breaks some dependencies
-    (mkWith   (perl != null)         "perl")
-    (mkWith   (jemalloc != null)     "jemalloc")
-    (mkWith   true                   "frozenpaths")
-    (mkWith   (bzip2 != null)        "bzlib")
-    (mkWith   hasX11                 "x")
-    (mkWith   (zlib != null)         "zlib")
-    (mkWith   false                  "dps")
-    (mkWith   (fftw != null)         "fftw")
-    (mkWith   (libfpx != null)       "fpx")
-    (mkWith   (djvulibre != null)    "djvu")
-    (mkWith   (fontconfig != null)   "fontconfig")
-    (mkWith   (freetype != null)     "freetype")
-    (mkWith   (ghostscript != null)  "gslib")
-    (mkWith   (graphviz != null)     "gvc")
-    (mkWith   (jbigkit != null)      "jbig")
-    (mkWith   (libjpeg != null)      "jpeg")
-    (mkWith   (lcms2 != null)        "lcms2")
-    (mkWith   false                  "lcms")
-    (mkWith   (openjpeg != null)     "openjp2")
-    (mkWith   (liblqr1 != null)      "lqr")
-    (mkWith   (xz != null)           "lzma")
-    (mkWith   (openexr != null)      "openexr")
-    (mkWith   (pango != null)        "pango")
-    (mkWith   (libpng != null)       "png")
-    (mkWith   (librsvg != null)      "rsvg")
-    (mkWith   (libtiff != null)      "tiff")
-    (mkWith   (libwebp != null)      "webp")
-    (mkWith   (libxml2 != null)      "xml")
-  ] ++ optional (dejavu_fonts != null) "--with-dejavu-font-dir=${dejavu_fonts}/share/fonts/truetype/"
-    ++ optional (ghostscript != null) "--with-gs-font-dir=${ghostscript}/share/ghostscript/fonts/";
+  enableParallelBuilding = true;
 
-  buildInputs = [
-    pkgconfig libtool libcl perl jemalloc bzip2 zlib libX11 libXext libXt fftw
-    libfpx djvulibre fontconfig freetype ghostscript graphviz jbigkit libjpeg
-    lcms2 openjpeg liblqr1 xz openexr pango libpng librsvg libtiff libwebp
+  configureFlags =
+    [ "--with-frozenpaths" ]
+    ++ [ "--with-gcc-arch=${arch}" ]
+    ++ lib.optional (librsvg != null) "--with-rsvg"
+    ++ lib.optionals (ghostscript != null)
+      [ "--with-gs-font-dir=${ghostscript}/share/ghostscript/fonts"
+        "--with-gslib"
+      ];
+
+  buildInputs =
+    [ pkgconfig libtool zlib fontconfig freetype ghostscript libjpeg
+      openexr libpng librsvg libtiff libxml2
     libxml2 (stdenv.cc.cc.lib or null)
-  ];
-
-  propagatedBuildInputs = []
-    ++ (stdenv.lib.optional (lcms2 != null) lcms2)
-    ++ (stdenv.lib.optional (liblqr1 != null) liblqr1)
-    ++ (stdenv.lib.optional (fftw != null) fftw)
-    ++ (stdenv.lib.optional (libtool != null) libtool)
-    ++ (stdenv.lib.optional (jemalloc != null) jemalloc)
-    ++ (stdenv.lib.optional (libXext != null) libXext)
-    ++ (stdenv.lib.optional (libX11 != null) libX11)
-    ++ (stdenv.lib.optional (libXt != null) libXt)
-    ++ (stdenv.lib.optional (bzip2 != null) bzip2)
-    ;
-
-  postInstall = ''(cd "$out/include" && ln -s ImageMagick* ImageMagick)'';
+    ];
+
+  propagatedBuildInputs =
+    [ bzip2 freetype libjpeg libX11 libXext libXt lcms2 ];
+
+  postInstall = ''
+    (cd "$out/include" && ln -s ImageMagick* ImageMagick)
+  '' + lib.optionalString (ghostscript != null) ''
+    for la in $out/lib/*.la; do
+      sed 's|-lgs|-L${ghostscript}/lib -lgs|' -i $la
+    done
+  '';
 
   meta = with stdenv.lib; {
     homepage = http://www.imagemagick.org/;
diff --git a/pkgs/applications/graphics/antimony/default.nix b/pkgs/applications/graphics/antimony/default.nix
new file mode 100644
index 00000000000..589d20cb126
--- /dev/null
+++ b/pkgs/applications/graphics/antimony/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, fetchgit, libpng, python3, boost, mesa, qt5, ncurses }:
+
+let
+  gitRev    = "745eca3a2d2657c495d5509e9083c884e021d09c";
+  gitBranch = "master";
+  gitTag    = "0.8.0b";
+in 
+  stdenv.mkDerivation rec {
+    name    = "antimony-${version}";
+    version = gitTag;
+
+    src  = fetchgit {
+      url         = "git://github.com/mkeeter/antimony.git";
+      rev         = gitRev;
+      sha256      = "19ir3y5ipmfyygcn8mbxika4j3af6dfrv54dvhn6maz7dy8h30f4";
+    };
+
+    patches = [ ./paths-fix.patch ];
+
+    buildInputs = [
+      libpng python3 (boost.override { python = python3; })
+      mesa qt5.base ncurses
+    ];
+
+    configurePhase = ''
+      export GITREV=${gitRev}
+      export GITBRANCH=${gitBranch}
+      export GITTAG=${gitTag}
+
+      cd qt
+      export sourceRoot=$sourceRoot/qt
+      qmake antimony.pro PREFIX=$out
+    '';
+
+    meta = with stdenv.lib; {
+      description = "A computer-aided design (CAD) tool from a parallel universe";
+      homepage    = "https://github.com/mkeeter/antimony";
+      license     = licenses.mit;
+      platforms   = platforms.linux;
+    };
+  }
diff --git a/pkgs/applications/graphics/antimony/paths-fix.patch b/pkgs/applications/graphics/antimony/paths-fix.patch
new file mode 100644
index 00000000000..de8d9e7beb0
--- /dev/null
+++ b/pkgs/applications/graphics/antimony/paths-fix.patch
@@ -0,0 +1,99 @@
+diff --git a/qt/antimony.pro b/qt/antimony.pro
+index 9d586f4..b055a6d 100644
+--- a/qt/antimony.pro
++++ b/qt/antimony.pro
+@@ -12,14 +12,9 @@ QMAKE_CXXFLAGS_RELEASE += -O3
+ 
+ QMAKE_CXXFLAGS += -Werror=switch
+ 
+-GITREV = $$system(git log --pretty=format:'%h' -n 1)
+-GITDIFF = $$system(git diff --quiet --exit-code || echo "+")
+-GITTAG = $$system(git describe --exact-match --tags 2> /dev/null)
+-GITBRANCH = $$system(git rev-parse --abbrev-ref HEAD)
+-
+-QMAKE_CXXFLAGS += "-D'GITREV=\"$${GITREV}$${GITDIFF}\"'"
+-QMAKE_CXXFLAGS += "-D'GITTAG=\"$${GITTAG}\"'"
+-QMAKE_CXXFLAGS += "-D'GITBRANCH=\"$${GITBRANCH}\"'"
++QMAKE_CXXFLAGS += "-D'GITREV=\"$$(GITREV)\"'"
++QMAKE_CXXFLAGS += "-D'GITTAG=\"$$(GITTAG)\"'"
++QMAKE_CXXFLAGS += "-D'GITBRANCH=\"$$(GITBRANCH)\"'"
+ 
+ OLD_GL_SET = $$(OLD_GL)
+ equals(OLD_GL_SET, "true") {
+@@ -125,11 +120,11 @@ macx {
+ }
+ 
+ linux {
+-    executable.path = /usr/local/bin
++    executable.path = $$(out)/bin
+     executable.files = antimony
+-    nodes_folder.path = /usr/local/bin/sb/nodes
++    nodes_folder.path = $$(out)/bin/sb/nodes
+     nodes_folder.files = ../py/nodes/*
+-    fab_folder.path = /usr/local/bin/sb/fab
++    fab_folder.path = $$(out)/bin/sb/fab
+     fab_folder.files = ../py/fab/*
+     INSTALLS += executable nodes_folder fab_folder
+ }
+diff --git a/qt/fab.pri b/qt/fab.pri
+index a54813b..b500536 100644
+--- a/qt/fab.pri
++++ b/qt/fab.pri
+@@ -54,7 +54,7 @@ DEFINES += '_STATIC_= '
+ 
+ linux {
+     QMAKE_CFLAGS += -std=gnu99
+-    QMAKE_CXXFLAGS += $$system(/usr/bin/python3-config --includes)
++    QMAKE_CXXFLAGS += $$system(python3-config --includes)
+     LIBS += -lpng
+ }
+ 
+diff --git a/qt/shared.pri b/qt/shared.pri
+index e7d0e3a..026eae3 100644
+--- a/qt/shared.pri
++++ b/qt/shared.pri
+@@ -39,41 +39,11 @@ macx {
+ }
+ 
+ linux {
+-    QMAKE_CXXFLAGS += $$system(/usr/bin/python3-config --includes)
+-    QMAKE_LFLAGS   += $$system(/usr/bin/python3-config --ldflags)
++    QMAKE_CXXFLAGS += $$system(python3-config --includes)
++    QMAKE_LFLAGS   += $$system(python3-config --ldflags)
+ 
+     # Even though this is in QMAKE_LFLAGS, the linker is picky about
+     # library ordering (so it needs to be here too).
+     LIBS += -lpython3.4m
+-
+-    # ldconfig is being used to find libboost_python, but it's in a different
+-    # place in different distros (and is not in the default $PATH on Debian).
+-    # First, check to see if it's on the default $PATH.
+-    system(which ldconfig > /dev/null) {
+-        LDCONFIG_BIN = "ldconfig"
+-    }
+-    # If that failed, then search for it in its usual places.
+-    isEmpty(LDCONFIG_BIN) {
+-        for(p, $$list(/sbin/ldconfig /usr/bin/ldconfig)) {
+-            exists($$p): LDCONFIG_BIN = $$p
+-        }
+-    }
+-    # If that search failed too, then exit with an error.
+-    isEmpty(LDCONFIG_BIN) {
+-        error("Could not find ldconfig!")
+-    }
+-
+-    # Check for different boost::python naming schemes
+-    LDCONFIG_OUT = $$system($$LDCONFIG_BIN -p|grep python)
+-    for (b, $$list(boost_python-py34 boost_python3)) {
+-        contains(LDCONFIG_OUT, "lib$${b}.so") {
+-            LIBS += "-l$$b"
+-            GOT_BOOST_PYTHON = True
+-        }
+-    }
+-
+-    # If we couldn't find boost::python, exit with an error.
+-    isEmpty(GOT_BOOST_PYTHON) {
+-        error("Could not find boost::python3")
+-    }
++    LIBS += -lboost_python3
+ }
diff --git a/pkgs/applications/graphics/apitrace/default.nix b/pkgs/applications/graphics/apitrace/default.nix
index af499c51f97..cd107a6d279 100644
--- a/pkgs/applications/graphics/apitrace/default.nix
+++ b/pkgs/applications/graphics/apitrace/default.nix
@@ -1,17 +1,18 @@
-{ stdenv, fetchFromGitHub, cmake, python, libX11, qt4 }:
+{ stdenv, fetchFromGitHub, cmake, libX11, procps, python, qt5 }:
 
-let version = "6.1"; in
+let version = "7.0"; in
 stdenv.mkDerivation {
   name = "apitrace-${version}";
 
   src = fetchFromGitHub {
-    sha256 = "1v38111ljd35v5sahshs3inhk6nsv7rxh4r0ck8k0njkwzlx2yqk";
+    sha256 = "0nn3z7i6cd4zkmms6jpp1v2q194gclbs06v0f5hyiwcsqaxzsg5b";
     rev = version;
     repo = "apitrace";
     owner = "apitrace";
   };
 
-  buildInputs = [ cmake python libX11 qt4 ];
+  buildInputs = [ libX11 procps python qt5.base ];
+  nativeBuildInputs = [ cmake ];
 
   buildPhase = ''
     cmake
@@ -19,9 +20,10 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
+    inherit version;
     homepage = https://apitrace.github.io;
     description = "Tools to trace OpenGL, OpenGL ES, Direct3D, and DirectDraw APIs";
-    license = with licenses; mit;
+    license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ nckx ];
   };
diff --git a/pkgs/applications/graphics/darktable/default.nix b/pkgs/applications/graphics/darktable/default.nix
index 2f384b0ec91..454dad5cf89 100644
--- a/pkgs/applications/graphics/darktable/default.nix
+++ b/pkgs/applications/graphics/darktable/default.nix
@@ -9,12 +9,12 @@
 assert stdenv ? glibc;
 
 stdenv.mkDerivation rec {
-  version = "1.6.4";
+  version = "1.6.8";
   name = "darktable-${version}";
 
   src = fetchurl {
     url = "https://github.com/darktable-org/darktable/releases/download/release-${version}/darktable-${version}.tar.xz";
-    sha256 = "0ald6qqg7abgr8hj2qk45260cqh3fddzqbxc1p7ll0ac2vl0bxy5";
+    sha256 = "0189d5pn6g01rynfkhxynrqgfi24v94x8fp0fs7ilrncv0dzhxmn";
   };
 
   buildInputs =
diff --git a/pkgs/applications/graphics/digikam/2.nix b/pkgs/applications/graphics/digikam/2.nix
deleted file mode 100644
index e2ca03fe044..00000000000
--- a/pkgs/applications/graphics/digikam/2.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ stdenv, fetchurl, cmake, qt4, kdelibs, automoc4, phonon, qimageblitz, qca2, eigen,
-lcms, jasper, libgphoto2, kdepimlibs, gettext, soprano, libjpeg, libtiff,
-liblqr1, lensfun, pkgconfig, qjson, libkdcraw, opencv, libkexiv2, libkipi, boost,
-shared_desktop_ontologies, marble, libmysql }:
-
-stdenv.mkDerivation rec {
-  name = "digikam-2.9.0";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/digikam/${name}.tar.bz2";
-    sha256 = "181vf065j1zz26zahkb7hy3fk4837nvwm61cnykvni7w40w0zpbk";
-  };
-
-  nativeBuildInputs = [ cmake automoc4 pkgconfig ];
-
-  buildInputs = [ qt4 kdelibs phonon qimageblitz qca2 eigen lcms libjpeg libtiff
-    jasper libgphoto2 kdepimlibs gettext soprano liblqr1 lensfun qjson libkdcraw
-    opencv libkexiv2 libkipi boost shared_desktop_ontologies marble libmysql ];
-
-  # Make digikam find some FindXXXX.cmake
-  KDEDIRS="${marble}:${qjson}";
-
-  enableParallelBuilding = true;
-
-  meta = {
-    description = "Photo Management Program";
-    license = "GPL";
-    homepage = http://www.digikam.org;
-    maintainers = with stdenv.lib.maintainers; [ viric urkud ];
-    inherit (kdelibs.meta) platforms;
-  };
-}
diff --git a/pkgs/applications/graphics/digikam/default.nix b/pkgs/applications/graphics/digikam/default.nix
index 70966196b07..bdf8077624d 100644
--- a/pkgs/applications/graphics/digikam/default.nix
+++ b/pkgs/applications/graphics/digikam/default.nix
@@ -1,24 +1,24 @@
 { stdenv, fetchurl, automoc4, boost, shared_desktop_ontologies, cmake
 , eigen, lcms, gettext, jasper, kdelibs, kdepimlibs, lensfun
 , libgphoto2, libjpeg, libkdcraw, libkexiv2, libkipi, libpgf, libtiff
-, libusb1, liblqr1, marble, mysql, opencv, phonon, pkgconfig, qca2
-, qimageblitz, qjson, qt4, soprano
+, libusb1, liblqr1, marble, mysql, opencv, perl, phonon, pkgconfig
+, qca2, qimageblitz, qjson, qt4, soprano
 }:
 
 stdenv.mkDerivation rec {
-  name = "digikam-4.6.0";
+  name = "digikam-4.12.0";
 
   src = fetchurl {
     url = "http://download.kde.org/stable/digikam/${name}.tar.bz2";
-    sha256 = "0id3anikki8c3rzqzapdbg00h577qwybknvkbz1kdq0348bs6ixh";
+    sha256 = "081ldsaf3frf5khznjd3sxkjmi4dyp6w6nqnc2a0agkk0kxkl10m";
   };
 
-  nativeBuildInputs = [ cmake automoc4 pkgconfig ];
+  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
 
   buildInputs = [
-    boost eigen gettext jasper kdelibs kdepimlibs lcms lensfun
-    libgphoto2 libjpeg libkdcraw libkexiv2 libkipi liblqr1 libpgf
-    libtiff marble mysql.lib opencv phonon qca2 qimageblitz qjson qt4
+    boost eigen jasper kdelibs kdepimlibs lcms lensfun libgphoto2
+    libjpeg libkdcraw libkexiv2 libkipi liblqr1 libpgf libtiff marble
+    mysql.lib opencv phonon qca2 qimageblitz qjson qt4
     shared_desktop_ontologies soprano
   ];
 
@@ -26,7 +26,11 @@ stdenv.mkDerivation rec {
   KDEDIRS="${marble}:${qjson}";
 
   # Help digiKam find libusb, otherwise gphoto2 support is disabled
-  cmakeFlags = "-DLIBUSB_LIBRARIES=${libusb1}/lib -DLIBUSB_INCLUDE_DIR=${libusb1}/include/libusb-1.0";
+  cmakeFlags = [
+    "-DLIBUSB_LIBRARIES=${libusb1}/lib"
+    "-DLIBUSB_INCLUDE_DIR=${libusb1}/include/libusb-1.0"
+    "-DDIGIKAMSC_COMPILE_LIBKFACE=ON"
+  ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/graphics/djview/default.nix b/pkgs/applications/graphics/djview/default.nix
index 4ded807cb29..e5c49846b23 100644
--- a/pkgs/applications/graphics/djview/default.nix
+++ b/pkgs/applications/graphics/djview/default.nix
@@ -1,27 +1,29 @@
-{stdenv, fetchurl, djvulibre, qt4, pkgconfig }:
+{ stdenv, fetchurl, pkgconfig, djvulibre, qt4, xorg, libtiff }:
 
+let
+  qt = qt4;
+  # TODO: qt = qt5.base; # should work but there's a mysterious "-silent" error
+in
 stdenv.mkDerivation rec {
-	name = "djview-4.8";
-	src = fetchurl {
-		url = "mirror://sourceforge/djvu/${name}.tar.gz";
-		sha256 = "17y8jvbvj98h25qwsr93v24x75famv8d0jbb0h46xjj555y6wx4c";
-	};
-
-	buildInputs = [djvulibre qt4];
+  name = "djview-4.10.3";
+  src = fetchurl {
+    url = "mirror://sourceforge/djvu/${name}.tar.gz";
+    sha256 = "09dbws0k8giizc0xqpad8plbyaply8x1pjc2k3207v2svk6hxf2h";
+  };
 
   nativeBuildInputs = [ pkgconfig ];
 
-  patches = [ ./djview4-qt-4.8.patch ];
+  buildInputs = [ djvulibre qt xorg.libXt libtiff ];
 
   passthru = {
     mozillaPlugin = "/lib/netscape/plugins";
   };
 
-	meta = {
-		homepage = http://djvu.sourceforge.net/djview4.html;
-		description = "A new portable DjVu viewer and browser plugin";
-		license = stdenv.lib.licenses.gpl2;
-    inherit (qt4.meta) platforms;
-    maintainers = [ stdenv.lib.maintainers.urkud ];
-	};
+  meta = with stdenv.lib; {
+    homepage = http://djvu.sourceforge.net/djview4.html;
+    description = "A portable DjVu viewer and browser plugin";
+    license = licenses.gpl2;
+    inherit (qt.meta) platforms;
+    maintainers = [ maintainers.urkud ];
+  };
 }
diff --git a/pkgs/applications/graphics/djview/djview4-qt-4.8.patch b/pkgs/applications/graphics/djview/djview4-qt-4.8.patch
deleted file mode 100644
index ce3694197f6..00000000000
--- a/pkgs/applications/graphics/djview/djview4-qt-4.8.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-Origin: OpenSUSE
-Index: djview-4.8/src/qdjvuwidget.cpp
-===================================================================
---- djview-4.8.orig/src/qdjvuwidget.cpp
-+++ djview-4.8/src/qdjvuwidget.cpp
-@@ -153,7 +153,7 @@ all_numbers(const char *s)
- }
- 
- template<class T> static inline void 
--swap(T& x, T& y)
-+myswap(T& x, T& y)
- {
-   T tmp;
-   tmp = x;
-@@ -173,11 +173,11 @@ ksmallest(T *v, int n, int k)
-       /* Sort v[lo], v[m], v[hi] by insertion */
-       m = (lo+hi)/2;
-       if (v[lo]>v[m])
--        swap(v[lo],v[m]);
-+        myswap(v[lo],v[m]);
-       if (v[m]>v[hi]) {
--        swap(v[m],v[hi]);
-+        myswap(v[m],v[hi]);
-         if (v[lo]>v[m])
--          swap(v[lo],v[m]);
-+          myswap(v[lo],v[m]);
-       }
-       /* Extract pivot, place sentinel */
-       pivot = v[m];
-@@ -191,7 +191,7 @@ ksmallest(T *v, int n, int k)
-       do ++l; while (v[l]<pivot);
-       do --h; while (v[h]>pivot);
-       if (l < h) { 
--        swap(v[l],v[h]); 
-+        myswap(v[l],v[h]); 
-         goto loop; 
-       }
-       /* Finish up */
diff --git a/pkgs/applications/graphics/fbida/default.nix b/pkgs/applications/graphics/fbida/default.nix
index 927ca2ab679..bacfa500ede 100644
--- a/pkgs/applications/graphics/fbida/default.nix
+++ b/pkgs/applications/graphics/fbida/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "fbida-2.09";
+  name = "fbida-2.10";
   
   src = fetchurl {
     url = "http://dl.bytesex.org/releases/fbida/${name}.tar.gz";
-    sha256 = "1riia87v5nsx858xnlvc7sspr1p36adjqrdch1255ikr5xbv6h6x";
+    sha256 = "1dkc1d6qlfa1gn94wcbyr7ayiy728q52fvbipwmnl2mlc6n3lnks";
   };
 
   nativeBuildInputs = [ pkgconfig which ];
@@ -29,7 +29,10 @@ stdenv.mkDerivation rec {
     makeFlags = makeFlags ++ [ "CC=${stdenv.cross.config}-gcc" "STRIP="];
   };
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Image viewing and manipulation programs";
+    homepage = https://www.kraxel.org/blog/linux/fbida/;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ pSub ];
   };
 }
diff --git a/pkgs/applications/graphics/feh/default.nix b/pkgs/applications/graphics/feh/default.nix
index ad636772237..266f70e3008 100644
--- a/pkgs/applications/graphics/feh/default.nix
+++ b/pkgs/applications/graphics/feh/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, makeWrapper, fetchurl, x11, imlib2, libjpeg, libpng
+{ stdenv, makeWrapper, fetchurl, xlibsWrapper, imlib2, libjpeg, libpng
 , libXinerama, curl, libexif }:
 
 stdenv.mkDerivation rec {
-  name = "feh-2.12.1";
+  name = "feh-2.13.1";
 
   src = fetchurl {
     url = "http://feh.finalrewind.org/${name}.tar.bz2";
-    sha256 = "18b6yjk88ybqxsa5knk6qwi2xy7fclbzl5cpzwg0wmkr3phfq9lh";
+    sha256 = "1059mflgw8hl398lwy55fj50a98xryvdf23wkpbn4s0z9388hl46";
   };
 
-  buildInputs = [ makeWrapper x11 imlib2 libjpeg libpng libXinerama curl libexif ];
+  buildInputs = [ makeWrapper xlibsWrapper imlib2 libjpeg libpng libXinerama curl libexif ];
 
   preBuild = ''
     makeFlags="PREFIX=$out exif=1"
diff --git a/pkgs/applications/graphics/geeqie/default.nix b/pkgs/applications/graphics/geeqie/default.nix
index e1eb7bb5a7b..e2cc0ec5c01 100644
--- a/pkgs/applications/graphics/geeqie/default.nix
+++ b/pkgs/applications/graphics/geeqie/default.nix
@@ -1,22 +1,21 @@
-{ stdenv, fetchurl, pkgconfig, autoconf, automake, gtk, libpng, exiv2
-, lcms, intltool, gettext, fbida
+{ stdenv, fetchurl, pkgconfig, gtk, libpng, exiv2
+, lcms, intltool, gettext, libchamplain, fbida
 }:
 
 stdenv.mkDerivation rec {
   name = "geeqie-${version}";
-  version = "1.2";
+  version = "1.1"; # Don't upgrade to 1.2; see fee59b1235e658954b207ff6679264654c4708d2.
 
   src = fetchurl {
-    url = "mirror://debian/pool/main/g/geeqie/geeqie_${version}.orig.tar.gz";
-    sha256 = "0wkcpyh3f6ig36x1q6h9iqgq225w37visip48m72j8rpghmv1rn3";
+    url = "mirror://sourceforge/geeqie/${name}.tar.gz";
+    sha256 = "1kzy39z9505xkayyx7rjj2wda76xy3ch1s5z35zn8yli54ffhi2m";
   };
 
-  preConfigure = "./autogen.sh";
-
   configureFlags = [ "--enable-gps" ];
 
   buildInputs = [
-    pkgconfig autoconf automake gtk libpng exiv2 lcms intltool gettext
+    pkgconfig gtk libpng exiv2 lcms intltool gettext
+    #libchamplain
   ];
 
   postInstall = ''
diff --git a/pkgs/applications/graphics/gimp/2.8.nix b/pkgs/applications/graphics/gimp/2.8.nix
index 83f409457fb..7c394ae11c6 100644
--- a/pkgs/applications/graphics/gimp/2.8.nix
+++ b/pkgs/applications/graphics/gimp/2.8.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, pkgconfig, intltool, babl, gegl, gtk, glib, gdk_pixbuf
 , pango, cairo, freetype, fontconfig, lcms, libpng, libjpeg, poppler, libtiff
 , webkit, libmng, librsvg, libwmf, zlib, libzip, ghostscript, aalib, jasper
-, python, pygtk, libart_lgpl, libexif, gettext, xlibs, wrapPython }:
+, python, pygtk, libart_lgpl, libexif, gettext, xorg, wrapPython }:
 
 stdenv.mkDerivation rec {
   name = "gimp-2.8.14";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     [ pkgconfig intltool babl gegl gtk glib gdk_pixbuf pango cairo
       freetype fontconfig lcms libpng libjpeg poppler libtiff webkit
       libmng librsvg libwmf zlib libzip ghostscript aalib jasper
-      python pygtk libart_lgpl libexif gettext xlibs.libXpm
+      python pygtk libart_lgpl libexif gettext xorg.libXpm
       wrapPython
     ];
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   #configureFlags = [ "--disable-print" ];
 
   # "screenshot" needs this.
-  NIX_LDFLAGS = "-rpath ${xlibs.libX11}/lib"
+  NIX_LDFLAGS = "-rpath ${xorg.libX11}/lib"
     + stdenv.lib.optionalString stdenv.isDarwin " -lintl";
 
   meta = {
diff --git a/pkgs/applications/graphics/gimp/plugins/default.nix b/pkgs/applications/graphics/gimp/plugins/default.nix
index 5f43abfcfc1..ea638de7925 100644
--- a/pkgs/applications/graphics/gimp/plugins/default.nix
+++ b/pkgs/applications/graphics/gimp/plugins/default.nix
@@ -59,12 +59,12 @@ rec {
       sed -e 's,^\(GIMP_PLUGIN_DIR=\).*,\1'"$out/${gimp.name}-plugins", \
        -e 's,^\(GIMP_DATA_DIR=\).*,\1'"$out/share/${gimp.name}", -i configure
     '';
-    meta = {
+    meta = with stdenv.lib; {
       description = "The GIMP Animation Package";
       homepage = http://www.gimp.org;
       # The main code is given in GPLv3, but it has ffmpeg in it, and I think ffmpeg license
       # falls inside "free".
-      license = [ "GPLv3" "free" ];
+      license = with licenses; [ gpl3 free ];
     };
   };
 
@@ -159,24 +159,25 @@ rec {
   };
 
   gmic =
-  let
-    imagemagick = pkgs.imagemagickBig; # maybe the non big version is enough?
-  in pluginDerivation rec {
-      name = "gmic-1.5.7.2";
-      buildInputs = [imagemagick pkgconfig pkgs.fftw gimp] ++ gimp.nativeBuildInputs;
+    pluginDerivation rec {
+      name = "gmic-1.6.5.0";
+
+      buildInputs = [pkgconfig pkgs.fftw pkgs.opencv gimp] ++ gimp.nativeBuildInputs;
+
       src = fetchurl {
-        url = mirror://sourceforge/gmic/gmic_1.5.7.2.tar.gz;
-        sha256 = "1cpbxb3p2c8bcv2cbr150whapzjc7w09i3jza0z9x3xj8c0vdyv1";
+        url = http://gmic.eu/files/source/gmic_1.6.5.0.tar.gz;
+        sha256 = "1vb6zm5zpqfnzxjvb9yfvczaqacm55rf010ib0yk9f28b17qrjgb";
       };
-      preConfigure = ''
-        export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${imagemagick}/include/ImageMagick"
-      '';
+
       sourceRoot = "${name}/src";
-      buildPhase = "make gimp";
+
+      buildFlags = "gimp";
+
       installPhase = "installPlugins gmic_gimp";
+
       meta = {
         description = "script language for image processing which comes with its open-source interpreter";
-        homepage = http://gmic.sourceforge.net/repository.shtml;
+        homepage = http://gmic.eu/gimp.shtml;
         license = stdenv.lib.licenses.cecill20;
         /*
         The purpose of this Free Software license agreement is to grant users
diff --git a/pkgs/applications/graphics/graphicsmagick/default.nix b/pkgs/applications/graphics/graphicsmagick/default.nix
index 536249e70a6..95cfcaef01a 100644
--- a/pkgs/applications/graphics/graphicsmagick/default.nix
+++ b/pkgs/applications/graphics/graphicsmagick/default.nix
@@ -2,14 +2,14 @@
 , libjpeg, libpng, libtiff, libxml2, zlib, libtool, xz
 , libX11, quantumdepth ? 8}:
 
-let version = "1.3.18"; in
+let version = "1.3.21"; in
 
 stdenv.mkDerivation {
   name = "graphicsmagick-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/graphicsmagick/GraphicsMagick-${version}.tar.xz";
-    sha256 = "1axh4j2jr3l92dan15b2nmx9da4l7i0rcz9b5bvfd4q742zfwj7x";
+    sha256 = "07rwpxy62r9m4r2cg6yll2nr698mxyvbji8vgsivcxhpk56k0ich";
   };
 
   configureFlags = "--enable-shared --with-quantum-depth=" + toString quantumdepth;
diff --git a/pkgs/applications/graphics/hoodle/default.nix b/pkgs/applications/graphics/hoodle/default.nix
deleted file mode 100644
index afa3a8ca0c7..00000000000
--- a/pkgs/applications/graphics/hoodle/default.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, cmdargs, configurator, dyre, filepath, hoodleCore, mtl }:
-
-cabal.mkDerivation (self: {
-  pname = "hoodle";
-  version = "0.3";
-  sha256 = "01wz7bwdr3i43ikaiaq8vpn6b0clxjnjyaw6nl6zaq489dhj6fv5";
-  isLibrary = true;
-  isExecutable = true;
-  buildDepends = [
-    cmdargs configurator dyre filepath hoodleCore mtl
-  ];
-  meta = {
-    homepage = "http://ianwookim.org/hoodle";
-    description = "Executable for hoodle";
-    license = self.stdenv.lib.licenses.gpl3;
-    platforms = self.ghc.meta.platforms;
-    hydraPlatforms = self.stdenv.lib.platforms.none;
-    maintainers = with self.stdenv.lib.maintainers; [ ianwookim ];
-  };
-})
diff --git a/pkgs/applications/graphics/inkscape/default.nix b/pkgs/applications/graphics/inkscape/default.nix
index ca52a4f2766..409fd0a767c 100644
--- a/pkgs/applications/graphics/inkscape/default.nix
+++ b/pkgs/applications/graphics/inkscape/default.nix
@@ -2,9 +2,20 @@
 , libpng, zlib, popt, boehmgc, libxml2, libxslt, glib, gtkmm
 , glibmm, libsigcxx, lcms, boost, gettext, makeWrapper, intltool
 , gsl, python, pyxml, lxml, poppler, imagemagick, libwpg, librevenge
-, libvisio, libcdr, libexif
+, libvisio, libcdr, libexif, unzip
+, boxMakerPlugin ? false # boxmaker plugin
 }:
 
+let 
+
+boxmaker = fetchurl {
+  # http://www.inkscapeforum.com/viewtopic.php?f=11&t=10403
+  url = "http://www.keppel.demon.co.uk/111000/files/BoxMaker0.91.zip";
+  sha256 = "5c5697f43dc3a95468f61f479cb50b7e2b93379a1729abf19e4040ac9f43a1a8";
+};
+
+in
+
 stdenv.mkDerivation rec {
   name = "inkscape-0.91";
 
@@ -18,7 +29,7 @@ stdenv.mkDerivation rec {
     patchShebangs share/extensions
   ''
   # Clang gets misdetected, so hardcode the right answer
-  + stdenv.lib.optionalString (stdenv.cc.cc.isClang or false) ''
+  + stdenv.lib.optionalString stdenv.cc.isClang ''
     substituteInPlace src/ui/tool/node.h \
       --replace "#if __cplusplus >= 201103L" "#if true"
   '';
@@ -34,12 +45,23 @@ stdenv.mkDerivation rec {
     libxml2 libxslt glib gtkmm glibmm libsigcxx lcms boost gettext
     makeWrapper intltool gsl poppler imagemagick libwpg librevenge
     libvisio libcdr libexif
-  ];
+  ] ++ stdenv.lib.optional boxMakerPlugin unzip;
 
   enableParallelBuilding = true;
   doCheck = true;
 
   postInstall = ''
+    ${if boxMakerPlugin then "
+      mkdir -p $out/share/inkscape/extensions/
+      # boxmaker packaged version 0.91 in a directory called 0.85 ?!??
+      unzip ${boxmaker};
+      cp boxmake-upd-0.85/* $out/share/inkscape/extensions/
+      rm -Rf boxmake-upd-0.85
+      "
+    else 
+      ""
+    }
+
     # Make sure PyXML modules can be found at run-time.
     for i in "$out/bin/"*
     do
diff --git a/pkgs/applications/graphics/ipe/default.nix b/pkgs/applications/graphics/ipe/default.nix
index 53df14f8704..ede0dc07afb 100644
--- a/pkgs/applications/graphics/ipe/default.nix
+++ b/pkgs/applications/graphics/ipe/default.nix
@@ -1,12 +1,13 @@
 { stdenv, fetchurl, pkgconfig, zlib, qt4, freetype, cairo, lua5, texLive, ghostscriptX
+, libjpeg
 , makeWrapper }:
 let ghostscript = ghostscriptX; in
 stdenv.mkDerivation rec {
-  name = "ipe-7.1.2";
+  name = "ipe-7.1.8";
 
   src = fetchurl {
-    url = "mirror://sourceforge/ipe7/ipe/7.1.0/${name}-src.tar.gz";
-    sha256 = "04fs5slci3bmpgz8d038h3hnzzdw57xykcpsmisdxci2xrkxx41k";
+    url = "http://github.com/otfried/ipe/raw/master/releases/7.1/${name}-src.tar.gz";
+    sha256 = "1zx6dyr1rb6m6rvawagg9f8bc2li9nbighv2dglzjbh11bxqsyva";
   };
 
   # changes taken from Gentoo portage
@@ -21,9 +22,10 @@ stdenv.mkDerivation rec {
 
   IPEPREFIX="$$out";
   URWFONTDIR="${texLive}/texmf-dist/fonts/type1/urw/";
+  LUA_PACKAGE = "lua";
 
   buildInputs = [
-    pkgconfig zlib qt4 freetype cairo lua5 texLive ghostscript makeWrapper
+    libjpeg pkgconfig zlib qt4 freetype cairo lua5 texLive ghostscript makeWrapper
   ];
 
   postInstall = ''
@@ -36,12 +38,14 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "An editor for drawing figures";
-    homepage = http://ipe7.sourceforge.net;
+    homepage = http://ipe.otfried.org;
     license = stdenv.lib.licenses.gpl3Plus;
     longDescription = ''
       Ipe is an extensible drawing editor for creating figures in PDF and Postscript format.
       It supports making small figures for inclusion into LaTeX-documents
       as well as presentations in PDF.
     '';
+    maintainers = [ stdenv.lib.maintainers.ttuegel ];
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/graphics/kgraphviewer/default.nix b/pkgs/applications/graphics/kgraphviewer/default.nix
index 21caf8f8002..6eb57c3dd5f 100644
--- a/pkgs/applications/graphics/kgraphviewer/default.nix
+++ b/pkgs/applications/graphics/kgraphviewer/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, fetchurl, kdelibs, automoc4, boost, pkgconfig, graphviz, gettext }:
+{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
+, kdelibs, boost, graphviz
+}:
 
 stdenv.mkDerivation rec {
   name = "kgraphviewer-${version}";
@@ -9,7 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "13zhjs57xavzrj4nrlqs35n35ihvzij7hgbszf5fhlp2a4d4rrqs";
   };
 
-  buildInputs = [ kdelibs automoc4 boost pkgconfig graphviz gettext ];
+  buildInputs = [ kdelibs boost graphviz ];
+  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
 
   meta = with stdenv.lib; {
     description = "A Graphviz dot graph viewer for KDE";
diff --git a/pkgs/applications/graphics/kuickshow/default.nix b/pkgs/applications/graphics/kuickshow/default.nix
index 7a410642958..cfecd19df46 100644
--- a/pkgs/applications/graphics/kuickshow/default.nix
+++ b/pkgs/applications/graphics/kuickshow/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, kdelibs, imlib, cmake, pkgconfig, gettext }:
+{ stdenv, fetchurl, automoc4, kdelibs, imlib, cmake, pkgconfig, gettext }:
 
 stdenv.mkDerivation rec {
   name = "kuickshow-0.9.1";
@@ -10,5 +10,5 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ kdelibs imlib ];
 
-  nativeBuildInputs = [ cmake gettext pkgconfig ];
+  nativeBuildInputs = [ automoc4 cmake gettext pkgconfig ];
 }
diff --git a/pkgs/applications/graphics/meshlab/default.nix b/pkgs/applications/graphics/meshlab/default.nix
index 9352ae092be..49bfb47c85a 100644
--- a/pkgs/applications/graphics/meshlab/default.nix
+++ b/pkgs/applications/graphics/meshlab/default.nix
@@ -1,22 +1,18 @@
 {stdenv, fetchurl, qt4, bzip2, lib3ds, levmar, muparser, unzip}:
 
 stdenv.mkDerivation rec {
-  name = "meshlab-1.3.2";
+  name = "meshlab-1.3.3";
 
   src = fetchurl {
-    url = "mirror://sourceforge/meshlab/meshlab/MeshLab%20v1.3.2/MeshLabSrc_AllInc_v132.tgz";
-    sha256 = "d57f0a99a55421aac54a66e2475d48f00f7b1752f9587cd69cf9b5b9c1a519b1";
+    url = "mirror://sourceforge/meshlab/meshlab/MeshLab%20v1.3.3/MeshLabSrc_AllInc_v133.tgz";
+    sha256 = "03wqaibfbfag2w1zi1a5z6h546r9d7pg2sjl5pwg24w7yp8rr0n9";
   };
 
   # I don't know why I need this; without this, the rpath set at the beginning of the
   # buildPhase gets removed from the 'meshlab' binary
   dontPatchELF = true;
 
-  # Patches are from the Arch Linux package
-  patchPhase = ''
-    patch -Np0 -i "${./qt-4.8.patch}"
-    patch -Np1 -i "${./gcc-4.7.patch}"
-  '';
+  patches = [ ./include-unistd.diff ];
 
   buildPhase = ''
     mkdir -p "$out/include"
@@ -50,5 +46,6 @@ stdenv.mkDerivation rec {
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [viric];
     platforms = with stdenv.lib.platforms; linux;
+    broken = stdenv.isLinux && stdenv.isi686;
   };
 }
diff --git a/pkgs/applications/graphics/meshlab/gcc-4.7.patch b/pkgs/applications/graphics/meshlab/gcc-4.7.patch
deleted file mode 100644
index 07dc1a08aff..00000000000
--- a/pkgs/applications/graphics/meshlab/gcc-4.7.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff --git a/meshlab/src/meshlabplugins/decorate_base/colorhistogram.h b/meshlab/src/meshlabplugins/decorate_base/colorhistogram.h
-index 2351b2a..90c6d76 100644
---- a/meshlab/src/meshlabplugins/decorate_base/colorhistogram.h
-+++ b/meshlab/src/meshlabplugins/decorate_base/colorhistogram.h
-@@ -40,7 +40,7 @@ public:
- 
-   //! Reset histogram data.
-   void Clear() {
--    this->::Clear();
-+    Histogram<ScalarType>::Clear();
-     CV.clear();
-   }
-   /*
-diff --git a/vcglib/wrap/gl/trimesh.h b/vcglib/wrap/gl/trimesh.h
-index 5d40404..ab9d0aa 100644
---- a/vcglib/wrap/gl/trimesh.h
-+++ b/vcglib/wrap/gl/trimesh.h
-@@ -1003,7 +1003,7 @@ void Crease(MESH_TYPE &m, typename MESH_TYPE::scalar_type angleRad)
- 			}
- 		}
- 
--	m.vert.math::Swap(newvert);
-+	m.vert.math.Swap(newvert);
- 	m.vn=m.vert.size();
- }
- 
-diff --git a/vcglib/wrap/ply/plystuff.h b/vcglib/wrap/ply/plystuff.h
-index 3e41e63..4af9508 100644
---- a/vcglib/wrap/ply/plystuff.h
-+++ b/vcglib/wrap/ply/plystuff.h
-@@ -75,6 +75,7 @@ using namespace vcg;
- #define pb_close  _close
- #define DIR_SEP "\\"
- #else
-+#include <unistd.h>
- #define pb_mkdir(n)  mkdir(n,0755)
- #define pb_access access
- #define pb_stat   stat
diff --git a/pkgs/applications/graphics/meshlab/include-unistd.diff b/pkgs/applications/graphics/meshlab/include-unistd.diff
new file mode 100644
index 00000000000..74f28a4d211
--- /dev/null
+++ b/pkgs/applications/graphics/meshlab/include-unistd.diff
@@ -0,0 +1,13 @@
+*** old/vcglib/wrap/ply/plystuff.h	2013-02-09 00:00:04.110705851 -0500
+--- new/vcglib/wrap/ply/plystuff.h	2013-02-09 15:20:53.482205183 -0500
+***************
+*** 75,80 ****
+--- 75,81 ----
+  #define pb_close  _close
+  #define DIR_SEP "\\"
+  #else
++ #include <unistd.h>
+  #define pb_mkdir(n)  mkdir(n,0755)
+  #define pb_access access
+  #define pb_stat   stat
+
diff --git a/pkgs/applications/graphics/meshlab/qt-4.8.patch b/pkgs/applications/graphics/meshlab/qt-4.8.patch
deleted file mode 100644
index abfd77d6f25..00000000000
--- a/pkgs/applications/graphics/meshlab/qt-4.8.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-diff -Nur meshlab.orig/src/external/structuresynth/ssynth/SyntopiaCore/GLEngine/Raytracer/RayTracer.cpp meshlab/src/external/structuresynth/ssynth/SyntopiaCore/GLEngine/Raytracer/RayTracer.cpp
---- meshlab.orig/src/external/structuresynth/ssynth/SyntopiaCore/GLEngine/Raytracer/RayTracer.cpp	2011-01-25 18:51:28.000000000 +1100
-+++ meshlab/src/external/structuresynth/ssynth/SyntopiaCore/GLEngine/Raytracer/RayTracer.cpp	2012-01-07 11:47:12.836800072 +1100
-@@ -7,6 +7,12 @@
- #include "SyntopiaCore/Logging/Logging.h"

- #include "SyntopiaCore/Misc/MiniParser.h"

- 

-+#ifdef Q_WS_MAC

-+#include <OpenGL/glu.h>

-+#else

-+#include <GL/glu.h>

-+#endif

-+

- using namespace SyntopiaCore::Math;

- using namespace SyntopiaCore::Misc;

- 

-diff -Nur meshlab.orig/src/external/structuresynth/ssynth/SyntopiaCore/GLEngine/Sphere.h meshlab/src/external/structuresynth/ssynth/SyntopiaCore/GLEngine/Sphere.h
---- meshlab.orig/src/external/structuresynth/ssynth/SyntopiaCore/GLEngine/Sphere.h	2011-01-25 18:51:28.000000000 +1100
-+++ meshlab/src/external/structuresynth/ssynth/SyntopiaCore/GLEngine/Sphere.h	2012-01-07 11:45:26.795586149 +1100
-@@ -3,6 +3,12 @@
- #include "SyntopiaCore/Math/Vector3.h"

- #include "Object3D.h"

- 

-+#ifdef Q_WS_MAC

-+#include <OpenGL/glu.h>

-+#else

-+#include <GL/glu.h>

-+#endif

-+

- namespace SyntopiaCore {

- 	namespace GLEngine {	

- 

-diff -Nur meshlab.orig/src/external/structuresynth/structuresynth.pro meshlab/src/external/structuresynth/structuresynth.pro
---- meshlab.orig/src/external/structuresynth/structuresynth.pro	2011-01-25 18:49:34.000000000 +1100
-+++ meshlab/src/external/structuresynth/structuresynth.pro	2012-01-07 11:51:46.695981995 +1100
-@@ -113,6 +113,7 @@
-            ssynth/StructureSynth/Model/Rendering/TemplateRenderer.cpp

- CONFIG+=opengl

- QT+=xml opengl script

-+unix:LIBS += -lGLU

- macx:DESTDIR       = ../lib/macx

- win32-g++:DESTDIR       = ../lib/win32-gcc

- win32-msvc2005:DESTDIR       = ../lib/win32-msvc2005

-diff -Nur meshlab.orig/src/meshlab/meshlab.pro meshlab/src/meshlab/meshlab.pro
---- meshlab.orig/src/meshlab/meshlab.pro	2011-02-15 20:39:47.000000000 +1100
-+++ meshlab/src/meshlab/meshlab.pro	2012-01-07 11:57:18.055586086 +1100
-@@ -85,6 +85,7 @@
- QT += xmlpatterns
- QT += network
- QT += script
-+unix:LIBS += -lGLU
- 
- 
- # the following line is needed to avoid mismatch between
diff --git a/pkgs/applications/graphics/ocrad/default.nix b/pkgs/applications/graphics/ocrad/default.nix
index b4becafdb0b..3ec25b503eb 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.24";
+  name = "ocrad-0.25";
 
   src = fetchurl {
     url = "mirror://gnu/ocrad/${name}.tar.lz";
-    sha256 = "0hhlx072d00bi9qia0nj5izsq4qkscpfz2mpbyfc72msl3hfvslv";
+    sha256 = "1m2dblgvvjs48rsglfdwq0ib9zk8h9n34xsh67ibrg0g0ffbw477";
   };
 
   buildInputs = [ lzip texinfo ];
@@ -14,7 +14,6 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Optical character recognition (OCR) program & library";
-
     longDescription =
       '' GNU Ocrad is an OCR (Optical Character Recognition) program based on
          a feature extraction method.  It reads images in pbm (bitmap), pgm
@@ -29,7 +28,6 @@ stdenv.mkDerivation rec {
       '';
 
     license = licenses.gpl3Plus;
-
     maintainers = with maintainers; [ pSub ];
     platforms = platforms.gnu;  # arbitrary choice
   };
diff --git a/pkgs/applications/graphics/openimageio/default.nix b/pkgs/applications/graphics/openimageio/default.nix
index 473db68dc27..6bffa834ae0 100644
--- a/pkgs/applications/graphics/openimageio/default.nix
+++ b/pkgs/applications/graphics/openimageio/default.nix
@@ -3,12 +3,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "oiio-${version}";
-  version = "1.4.15";
+  name = "openimageio-${version}";
+  version = "1.4.16";
 
   src = fetchurl {
     url = "https://github.com/OpenImageIO/oiio/archive/Release-${version}.zip";
-    sha256 = "1fc5v3qmrzf9qx765fd15r2dc3ccrz4xf4f9q4cwsrspmaxqyqzs";
+    sha256 = "0f9gspsjhniz992c04dm4lvffzz7zjqn1n34nqn6c32r498kimcj";
   };
 
   buildInputs = [
@@ -20,11 +20,13 @@ stdenv.mkDerivation rec {
     "-DUSE_PYTHON=OFF"
   ];
 
-  buildPhase = ''
-    make ILMBASE_HOME=${ilmbase} OPENEXR_HOME=${openexr} USE_PYTHON=0 \
-      INSTALLDIR=$out dist_dir=
+  preBuild = ''
+    makeFlags="ILMBASE_HOME=${ilmbase} OPENEXR_HOME=${openexr} USE_PYTHON=0
+      INSTALLDIR=$out dist_dir="
   '';
 
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
     homepage = http://www.openimageio.org;
     description = "A library and tools for reading and writing images";
diff --git a/pkgs/applications/graphics/openscad/default.nix b/pkgs/applications/graphics/openscad/default.nix
index e6d5ee5528f..7557e19896f 100644
--- a/pkgs/applications/graphics/openscad/default.nix
+++ b/pkgs/applications/graphics/openscad/default.nix
@@ -1,23 +1,22 @@
 { stdenv, fetchurl, qt4, bison, flex, eigen, boost, mesa, glew, opencsg, cgal
-, mpfr, gmp, glib, pkgconfig
+, mpfr, gmp, glib, pkgconfig, harfbuzz, qscintilla, gettext
 }:
 
 stdenv.mkDerivation rec {
-  version = "2014.03";
+  version = "2015.03-1";
   name = "openscad-${version}";
 
   src = fetchurl {
     url = "http://files.openscad.org/${name}.src.tar.gz";
-    sha256 = "1hv1lmq1ayhlvrz5sqipg650xryq25a9k22ysdw0dsrwg9ixqpw6";
+    sha256 = "61e0dd3cd107e5670d727526700104cca5ac54a1f0a84117fcc9e57bf3b6b279";
   };
 
   buildInputs = [
     qt4 bison flex eigen boost mesa glew opencsg cgal mpfr gmp glib
-    pkgconfig
+    pkgconfig harfbuzz qscintilla gettext
   ];
 
   configurePhase = ''
-    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$(echo ${eigen}/include/eigen*) "
     qmake PREFIX="$out" VERSION=${version}
   '';
 
diff --git a/pkgs/applications/graphics/pencil/default.nix b/pkgs/applications/graphics/pencil/default.nix
index fc1b5795d40..94ab1b76cda 100644
--- a/pkgs/applications/graphics/pencil/default.nix
+++ b/pkgs/applications/graphics/pencil/default.nix
@@ -1,25 +1,30 @@
-{ stdenv, fetchurl, xulrunner }:
+{ stdenv, fetchurl, makeWrapper, xulrunner }:
 
 stdenv.mkDerivation rec {
-  version = "2.0.10";
+  version = "2.0.13";
   name = "pencil-${version}";
 
   src = fetchurl {
     url = "https://github.com/prikhi/pencil/releases/download/v${version}/Pencil-${version}-linux-pkg.tar.gz";
-    sha256 = "b5dcb12986108bf3eb13cdd1ee1fc1f8d1a88c7fadf2a5c44e7a59a254f2b0dd";
+    sha256 = "150jsaq27n01l0vf10jiyrlfm0canqhphdxi42di96b9zsfkphpk";
+
   };
 
   buildPhase = "";
 
+  buildInputs = [ makeWrapper ];
+
   installPhase = ''
     mkdir -p "$out"
     cp -r usr/* "$out"
-    sed -e "s|/usr/bin/xulrunner|${xulrunner}/bin/xulrunner|" \
-        -e "s|/usr/share/evolus-pencil|$out/share/evolus-pencil|" \
+    sed -e "s|/usr/share/evolus-pencil|$out/share/evolus-pencil|" \
         -i "$out/bin/pencil"
     sed -e "s|/usr/bin/pencil|$out/bin/pencil|" \
         -e "s|Icon=.*|Icon=$out/share/evolus-pencil/skin/classic/icon.svg|" \
         -i "$out/share/applications/pencil.desktop"
+
+    wrapProgram $out/bin/pencil \
+      --prefix PATH ":" ${xulrunner}/bin
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/graphics/photoqt/default.nix b/pkgs/applications/graphics/photoqt/default.nix
index 9e2c3a18a63..7ae6d6e050f 100644
--- a/pkgs/applications/graphics/photoqt/default.nix
+++ b/pkgs/applications/graphics/photoqt/default.nix
@@ -1,23 +1,30 @@
-{ stdenv, fetchurl, cmake, qt5, exiv2, graphicsmagick }:
+{ stdenv, fetchurl, cmake, makeWrapper, qt5, exiv2, graphicsmagick }:
 
 let
-  version = "1.1.0.1";
+  version = "1.3";
+  qmlPath = stdenv.lib.makeSearchPath "lib/qt5/qml/" [
+    qt5.quickcontrols
+    qt5.declarative
+    qt5.multimedia
+  ];
 in
 stdenv.mkDerivation rec {
   name = "photoqt-${version}";
   src = fetchurl {
     url = "http://photoqt.org/pkgs/photoqt-${version}.tar.gz";
-    sha256 = "1y59ys1dgjppahs7v7kxwva7ik23s0x7j2f6glv6sn23l9cfq9rp";
+    sha256 = "0j2kvxfb5pd9abciv161nkcsyam6n8kfqs8ymwj2mxiqflwbmfl1";
   };
 
-  buildInputs = [ cmake qt5.base qt5.tools exiv2 graphicsmagick ];
-
-  patches = [ ./graphicsmagick-path.patch ];
+  buildInputs = [ cmake makeWrapper qt5.base qt5.tools exiv2 graphicsmagick ];
 
   preConfigure = ''
     export MAGICK_LOCATION="${graphicsmagick}/include/GraphicsMagick"
   '';
 
+  postInstall = ''
+    wrapProgram $out/bin/photoqt --set QML2_IMPORT_PATH "${qmlPath}"
+  '';
+
   meta = {
     homepage = "http://photoqt.org/";
     description = "Simple, yet powerful and good looking image viewer";
diff --git a/pkgs/applications/graphics/photoqt/graphicsmagick-path.patch b/pkgs/applications/graphics/photoqt/graphicsmagick-path.patch
deleted file mode 100644
index da9b70e31ed..00000000000
--- a/pkgs/applications/graphics/photoqt/graphicsmagick-path.patch
+++ /dev/null
@@ -1,46 +0,0 @@
---- a/CMake/FindMagick.cmake	2014-10-13 19:24:30.000000000 +0200
-+++ b/CMake/FindMagick.cmake	2014-12-27 18:54:19.611759021 +0100
-@@ -19,28 +19,11 @@
- SET(MAGICK++_FOUND "NO" )
- 
- FIND_PATH( MAGICK_INCLUDE_DIR magick/magick.h
--  "$ENV{MAGICK_LOCATION}/magick"
--  "$ENV{MAGICK_LOCATION}/include/magick"
--  "$ENV{MAGICK_HOME}/include/magick"
--  /usr/include/magick
--  /usr/include/
--  /usr/include/GraphicsMagick
--  /opt/local/include/GraphicsMagick/magick
--  /opt/local/include/GraphicsMagick
-+  "$ENV{MAGICK_LOCATION}"
-   )
- 
- FIND_PATH( MAGICK++_INCLUDE_DIR Magick++.h
--  "$ENV{MAGICK++_LOCATION}/Magick++"
--  "$ENV{MAGICK++_LOCATION}/include/"
--  "$ENV{MAGICK_LOCATION}/Magick++"
--  "$ENV{MAGICK_LOCATION}/include/Magick++"
--  "$ENV{MAGICK_LOCATION}/include/"
--  "$ENV{MAGICK_HOME}/include/"
--  /usr/include/Magick++
--  /usr/include/GraphicsMagick
--  /usr/include/
--  /opt/local/include/GraphicsMagick/Magick++
--  /opt/local/include/GraphicsMagick
-+  "$ENV{MAGICK_LOCATION}"
-   )
-   
- FIND_LIBRARY( Magick GraphicsMagick
-@@ -55,12 +38,7 @@
- 
- FIND_LIBRARY( Magick++ GraphicsMagick++
-   PATHS 
--  "$ENV{MAGICK++_LOCATION}/.libs"
--  "$ENV{MAGICK_LOCATION}/.libs"
--  "$ENV{MAGICK++_LOCATION}/lib"
-   "$ENV{MAGICK_LOCATION}/lib"
--  "$ENV{MAGICK_HOME}/lib"
--  /opt/local/lib
-   DOC   "GraphicsMagick Magick++ library"
- )
- 
diff --git a/pkgs/applications/graphics/potrace/default.nix b/pkgs/applications/graphics/potrace/default.nix
index f58fe0e28c1..13636e1f1fe 100644
--- a/pkgs/applications/graphics/potrace/default.nix
+++ b/pkgs/applications/graphics/potrace/default.nix
@@ -1,16 +1,15 @@
 { stdenv, fetchurl, zlib }:
 
-let version = "1.11"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   name = "potrace-${version}";
+  version = "1.12";
 
   src = fetchurl {
-    url = "http://potrace.sourceforge.net/download/potrace-${version}.tar.gz";
-    sha256 = "1bbyl7jgigawmwc8r14znv8lb6lrcxh8zpvynrl6s800dr4yp9as";
+    url = "http://potrace.sourceforge.net/download/${version}/potrace-${version}.tar.gz";
+    sha256 = "0fqpfq5wwqz8j6pfh4p2pbflf6r86s4h63r8jawzrsyvpbbz3fxh";
   };
 
-  configureFlags = ["--with-libpotrace"];
+  configureFlags = [ "--with-libpotrace" ];
 
   buildInputs = [ zlib ];
 
diff --git a/pkgs/applications/graphics/processing/default.nix b/pkgs/applications/graphics/processing/default.nix
index ecce0e260bb..69e5ccb85ec 100644
--- a/pkgs/applications/graphics/processing/default.nix
+++ b/pkgs/applications/graphics/processing/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, ant, jre, makeWrapper, libXxf86vm, which }:
+{ fetchurl, stdenv, ant, jdk, makeWrapper, libXxf86vm, which }:
 
 stdenv.mkDerivation rec {
   name = "processing-${version}";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   # Stop it trying to download its own version of java
   patches = [ ./use-nixpkgs-jre.patch ];
 
-  buildInputs = [ ant jre makeWrapper libXxf86vm which ];
+  buildInputs = [ ant jdk makeWrapper libXxf86vm which ];
 
   buildPhase = "cd build && ant build";
 
@@ -21,12 +21,12 @@ stdenv.mkDerivation rec {
     mkdir -p $out/bin
    cp -r linux/work/* $out/${name}/
    makeWrapper $out/${name}/processing $out/bin/processing \
-     --prefix PATH : "${jre}/bin:${which}/bin" \
+     --prefix PATH : "${jdk}/bin:${which}/bin" \
      --prefix LD_LIBRARY_PATH : ${libXxf86vm}/lib
    makeWrapper $out/${name}/processing-java $out/bin/processing-java \
-     --prefix PATH : "${jre}/bin:${which}/bin" \
+     --prefix PATH : "${jdk}/bin:${which}/bin" \
      --prefix LD_LIBRARY_PATH : ${libXxf86vm}/lib
-   ln -s ${jre} $out/${name}/java
+   ln -s ${jdk} $out/${name}/java
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/graphics/sane/backends.nix b/pkgs/applications/graphics/sane/backends.nix
index 74321549318..66fc4810e7d 100644
--- a/pkgs/applications/graphics/sane/backends.nix
+++ b/pkgs/applications/graphics/sane/backends.nix
@@ -20,6 +20,8 @@ stdenv.mkDerivation rec {
     sha256 = "0ba68m6bzni54axjk15i51rya7hfsdliwvqyan5msl7iaid0iir7";
   };
 
+  outputs = [ "out" "doc" "man" ];
+
   udevSupport = hotplugSupport;
 
   configureFlags = stdenv.lib.optional (libusb != null) "--enable-libusb_1_0";
diff --git a/pkgs/applications/graphics/sane/config.nix b/pkgs/applications/graphics/sane/config.nix
index fc1cd81ebc6..4b8c7a4fe92 100644
--- a/pkgs/applications/graphics/sane/config.nix
+++ b/pkgs/applications/graphics/sane/config.nix
@@ -4,17 +4,27 @@
 
 with stdenv.lib;
 let installSanePath = path: ''
-      find "${path}/lib/sane" -not -type d -maxdepth 1 | while read backend; do
-        ln -s $backend $out/lib/sane/$(basename $backend)
-      done
+      if test -e "${path}/lib/sane"; then
+        find "${path}/lib/sane" -maxdepth 1 -not -type d | while read backend; do
+          ln -s $backend $out/lib/sane/$(basename $backend)
+        done
+      fi
 
-      find "${path}/etc/sane.d" -not -type d -maxdepth 1 | while read conf; do
-        ln -s $conf $out/etc/sane.d/$(basename $conf)
-      done
+      if test -e "${path}/etc/sane.d"; then
+        find "${path}/etc/sane.d" -maxdepth 1 -not -type d | while read conf; do
+          if test $(basename $conf) = "dll.conf"; then
+            cat $conf >> $out/etc/sane.d/dll.conf
+          else
+            ln -s $conf $out/etc/sane.d/$(basename $conf)
+          fi
+        done
+      fi
 
-      find "${path}/etc/sane.d/dll.d" -not -type d -maxdepth 1 | while read conf; do
-        ln -s $conf $out/etc/sane.d/dll.d/$(basename $conf)
-      done
+      if test -e "${path}/etc/sane.d/dll.d"; then
+        find "${path}/etc/sane.d/dll.d" -maxdepth 1 -not -type d | while read conf; do
+          ln -s $conf $out/etc/sane.d/dll.d/$(basename $conf)
+        done
+      fi
     '';
 in
 stdenv.mkDerivation {
diff --git a/pkgs/applications/graphics/shotwell/default.nix b/pkgs/applications/graphics/shotwell/default.nix
index 629126503c9..052ba9402be 100644
--- a/pkgs/applications/graphics/shotwell/default.nix
+++ b/pkgs/applications/graphics/shotwell/default.nix
@@ -1,23 +1,11 @@
-{ fetchurl, stdenv, m4, glibc, gtk3, libexif, libgphoto2, libsoup, libxml2, vala, sqlite, webkitgtk24x
-, pkgconfig, gnome3, gst_all_1, which, udev, libraw, glib, json_glib, gettext, desktop_file_utils
-, lcms2, gdk_pixbuf, librsvg, makeWrapper, gnome_doc_utils, hicolor_icon_theme }:
+{ fetchurl, stdenv, m4, glibc, gtk3, libexif, libgphoto2, libsoup, libxml2, vala, sqlite
+, webkitgtk24x, pkgconfig, gnome3, gst_all_1, which, udev, libraw, glib, json_glib
+, gettext, desktop_file_utils, lcms2, gdk_pixbuf, librsvg, makeWrapper
+, gnome_doc_utils, hicolor_icon_theme }:
 
 # for dependencies see http://www.yorba.org/projects/shotwell/install/
 
-let
-  rest = stdenv.mkDerivation rec {
-    name = "rest-0.7.12";
-
-    src = fetchurl {
-      url = "mirror://gnome/sources/rest/0.7/${name}.tar.xz";
-      sha256 = "0fmg7fq5fx0jg3ryk71kwdkspsvj42acxy9imk7vznkqj29a9zqn";
-    };
-    
-    configureFlags = "--with-ca-certificates=/etc/ssl/certs/ca-bundle.crt";
-    
-    buildInputs = [ pkgconfig glib libsoup ];
-  };
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   version = "0.20.2";
   name = "shotwell-${version}";
 
@@ -27,9 +15,9 @@ in stdenv.mkDerivation rec {
   };
 
   NIX_CFLAGS_COMPILE = "-I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include";
-  
+
   configureFlags = [ "--disable-gsettings-convert-install" ];
-  
+
   preConfigure = ''
     patchShebangs .
   '';
@@ -47,12 +35,12 @@ in stdenv.mkDerivation rec {
   '';
 
 
-  buildInputs = [ m4 glibc gtk3 libexif libgphoto2 libsoup libxml2 vala sqlite webkitgtk24x pkgconfig
-                  gst_all_1.gstreamer gst_all_1.gst-plugins-base gnome3.libgee which udev gnome3.gexiv2
-                  libraw rest json_glib gettext desktop_file_utils glib lcms2 gdk_pixbuf librsvg
-                  makeWrapper gnome_doc_utils
-                  gnome3.gnome_icon_theme gnome3.gnome_icon_theme_symbolic
-                  hicolor_icon_theme ];
+  buildInputs = [ m4 glibc gtk3 libexif libgphoto2 libsoup libxml2 vala sqlite webkitgtk24x
+                  pkgconfig gst_all_1.gstreamer gst_all_1.gst-plugins-base gnome3.libgee
+                  which udev gnome3.gexiv2 hicolor_icon_theme
+                  libraw json_glib gettext desktop_file_utils glib lcms2 gdk_pixbuf librsvg
+                  makeWrapper gnome_doc_utils gnome3.rest
+                  gnome3.defaultIconTheme ];
 
   meta = with stdenv.lib; {
     description = "Popular photo organizer for the GNOME desktop";
diff --git a/pkgs/applications/graphics/simple-scan/default.nix b/pkgs/applications/graphics/simple-scan/default.nix
index b47a8215fd4..c5d1b936233 100644
--- a/pkgs/applications/graphics/simple-scan/default.nix
+++ b/pkgs/applications/graphics/simple-scan/default.nix
@@ -1,16 +1,30 @@
-{ stdenv, fetchurl, cairo, colord, glib, gtk3, intltool, itstool, libxml2
-, makeWrapper, pkgconfig, saneBackends, systemd, vala }:
+{ stdenv, fetchurl, cairo, colord, glib, gtk3, gusb, intltool, itstool, libusb
+, libxml2, makeWrapper, packagekit, pkgconfig, saneBackends, systemd, vala }:
 
-let version = "3.16.0.1"; in
+let version = "3.18.0"; in
 stdenv.mkDerivation rec {
   name = "simple-scan-${version}";
 
   src = fetchurl {
-    sha256 = "0p1knmbrdwrnjjk5x0szh3ja2lfamaaynj2ai92zgci2ma5xh2ma";
-    url = "https://launchpad.net/simple-scan/3.16/${version}/+download/${name}.tar.xz";
+    sha256 = "09qki4h1px65fxwpr7jppzqsi5cfcb8168p13blp3wcfizjgb9gl";
+    url = "https://launchpad.net/simple-scan/3.18/${version}/+download/${name}.tar.xz";
   };
 
+  buildInputs = [ cairo colord glib gusb gtk3 libusb libxml2 packagekit
+    saneBackends systemd vala ];
+  nativeBuildInputs = [ intltool itstool makeWrapper pkgconfig ];
+
+  enableParallelBuilding = true;
+
+  doCheck = true;
+
+  preFixup = ''
+    wrapProgram "$out/bin/simple-scan" \
+      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
+  '';
+
   meta = with stdenv.lib; {
+    inherit version;
     description = "Simple scanning utility";
     longDescription = ''
       A really easy way to scan both documents and photos. You can crop out the
@@ -21,20 +35,8 @@ stdenv.mkDerivation rec {
       interface is well tested.
     '';
     homepage = https://launchpad.net/simple-scan;
-    license = with licenses; gpl3Plus;
-    platforms = with platforms; linux;
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
     maintainers = with maintainers; [ nckx ];
   };
-
-  buildInputs = [ cairo colord glib gtk3 intltool itstool libxml2 makeWrapper
-    pkgconfig saneBackends systemd vala ];
-
-  enableParallelBuilding = true;
-
-  doCheck = true;
-
-  preFixup = ''
-    wrapProgram "$out/bin/simple-scan" \
-      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
-  '';
 }
diff --git a/pkgs/applications/graphics/solvespace/default.nix b/pkgs/applications/graphics/solvespace/default.nix
index cba69c476b5..67513bcf923 100644
--- a/pkgs/applications/graphics/solvespace/default.nix
+++ b/pkgs/applications/graphics/solvespace/default.nix
@@ -4,7 +4,7 @@
 stdenv.mkDerivation {
   name = "solvespace-2.0";
   src = fetchgit {
-    url = "https://gitorious.org/solvespace/solvespace.git";
+    url = "https://github.com/jwesthues/solvespace.git";
     sha256 = "0sakxkmj2f0k27f67wy1xz2skpnwzg15yqrf7av97pgc5s8xb3da";
     rev = "e587d0e";
   };
diff --git a/pkgs/applications/graphics/synfigstudio/default.nix b/pkgs/applications/graphics/synfigstudio/default.nix
index 9fa624435ed..372c11b5bda 100644
--- a/pkgs/applications/graphics/synfigstudio/default.nix
+++ b/pkgs/applications/graphics/synfigstudio/default.nix
@@ -1,17 +1,17 @@
-{ stdenv, fetchurl, boost, cairo, fontsConf, gettext, glibmm, gtk, gtkmm
-, libsigcxx, libtool, libxmlxx, pango, pkgconfig, imagemagick
-, intltool
+{ stdenv, fetchurl, boost, cairo, fontsConf, gettext, glibmm, gtk3, gtkmm3
+, libjack2, libsigcxx, libtool, libxmlxx, makeWrapper, mlt-qt5, pango, pkgconfig
+, imagemagick, intltool
 }:
 
 let
-  version = "0.64.3";
+  version = "1.0.1";
 
   ETL = stdenv.mkDerivation rec {
-    name = "ETL-0.04.17";
+    name = "ETL-0.04.19";
 
     src = fetchurl {
-       url = "mirror://sourceforge/synfig/${name}.tar.gz";
-       sha256 = "0rb9czkgan41q6xlck97kh77g176vjm1wnq620sqky7k2hiahr3s";
+       url = "http://download.tuxfamily.org/synfig/releases/${version}/${name}.tar.gz";
+       sha256 = "1zmqv2fa5zxprza3wbhk5mxjk7491jqshxxai92s7fdiza0nhs91";
     };
   };
 
@@ -19,8 +19,8 @@ let
     name = "synfig-${version}";
 
     src = fetchurl {
-       url = "mirror://sourceforge/synfig/synfig-${version}.tar.gz";
-       sha256 = "0p4wqjidb4k3viahck4wzbh777f5ifpivn4vxhxs5fbq8nsvqksh";
+       url = "http://download.tuxfamily.org/synfig/releases/${version}/${name}.tar.gz";
+       sha256 = "0l1f2xwmzds32g46fqwsq7j5qlnfps6944chbv14d3ynzgyyp1i3";
     };
 
     configureFlags = [
@@ -28,10 +28,8 @@ let
       "--with-boost-libdir=${boost.lib}/lib"
     ];
 
-    patches = [ ./synfig-cstring.patch ];
-
     buildInputs = [
-      ETL boost cairo gettext glibmm libsigcxx libtool libxmlxx pango
+      ETL boost cairo gettext glibmm mlt-qt5 libsigcxx libtool libxmlxx pango
       pkgconfig
     ];
   };
@@ -40,22 +38,19 @@ stdenv.mkDerivation rec {
   name = "synfigstudio-${version}";
 
   src = fetchurl {
-    url = "mirror://sourceforge/synfig/${name}.tar.gz";
-    sha256 = "1li3ac8qvg25h9fgym0zywnq5bg3sgbv162xs4c6pwksn75i6gsv";
+    url = "http://download.tuxfamily.org/synfig/releases/${version}/${name}.tar.gz";
+    sha256 = "0jfa946rfh0dbagp18zknlj9ffrd4h45xcy2dh2vlhn6jdm08yfi";
   };
 
   buildInputs = [
-    ETL boost cairo gettext glibmm gtk gtkmm imagemagick intltool
-    intltool libsigcxx libtool libxmlxx pkgconfig synfig
-  ];
-
-  configureFlags = [
-    "--with-boost=${boost.dev}"
-    "--with-boost-libdir=${boost.lib}/lib"
+    ETL boost cairo gettext glibmm gtk3 gtkmm3 imagemagick intltool
+    libjack2 libsigcxx libtool libxmlxx makeWrapper mlt-qt5 pkgconfig
+    synfig
   ];
 
-  preBuild = ''
-    export FONTCONFIG_FILE=${fontsConf}
+  postInstall = ''
+    wrapProgram "$out/bin/synfigstudio" \
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/graphics/synfigstudio/synfig-cstring.patch b/pkgs/applications/graphics/synfigstudio/synfig-cstring.patch
deleted file mode 100644
index 51eb7704216..00000000000
--- a/pkgs/applications/graphics/synfigstudio/synfig-cstring.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-http://www.synfig.org/issues/thebuggenie/synfig/issues/438
---- a/src/modules/mod_png/trgt_png.cpp
-+++ b/src/modules/mod_png/trgt_png.cpp
-@@ -39,6 +39,7 @@
- #include <algorithm>
- #include <functional>
- #include <ETL/misc>
-+#include <cstring>
- 
- #endif
- 
-
diff --git a/pkgs/applications/graphics/tesseract/default.nix b/pkgs/applications/graphics/tesseract/default.nix
index 83aff09e2aa..b531c41e2d8 100644
--- a/pkgs/applications/graphics/tesseract/default.nix
+++ b/pkgs/applications/graphics/tesseract/default.nix
@@ -1,26 +1,31 @@
-{ stdenv, fetchurl, autoconf, automake, libtool, leptonica, libpng, libtiff }:
+{ stdenv, fetchurl, autoconf, automake, libtool, leptonica, libpng, libtiff
+, enableLanguages ? null
+}:
+
+with stdenv.lib;
 
 let
   majVersion = "3.02";
   version = "${majVersion}.02";
 
-  f = lang : sha256 : let
-      src = fetchurl {
-        url = "http://tesseract-ocr.googlecode.com/files/tesseract-ocr-${majVersion}.${lang}.tar.gz";
-        inherit sha256;
-      };
-    in
-      "tar xfvz ${src} -C $out/share/ --strip=1";
-
-  extraLanguages = ''
-    ${f "cat" "0d1smiv1b3k9ay2s05sl7q08mb3ln4w5iiiymv2cs8g8333z8jl9"}
-    ${f "rus" "059336mkhsj9m3hwfb818xjlxkcdpy7wfgr62qwz65cx914xl709"}
-    ${f "spa" "1c9iza5mbahd9pa7znnq8yv09v5kz3gbd2sarcgcgc1ps1jc437l"}
-    ${f "nld" "162acxp1yb6gyki2is3ay2msalmfcsnrlsd9wml2ja05k94m6bjy"}
-    ${f "eng" "1y5xf794n832s3lymzlsdm2s9nlrd2v27jjjp0fd9xp7c2ah4461"}
-    ${f "slv" "0rqng43435cly32idxm1lvxkcippvc3xpxbfizwq5j0155ym00dr"}
-    ${f "jpn" "07v8pymd0iwyzh946lxylybda20gsw7p4fsb09jw147955x49gq9"}
-  '';
+  mkLang = lang: sha256: let
+    src = fetchurl {
+      url = "http://tesseract-ocr.googlecode.com/files/tesseract-ocr-${majVersion}.${lang}.tar.gz";
+      inherit sha256;
+    };
+  in "tar xfvz ${src} -C $out/share/ --strip=1";
+
+  wantLang = name: const (enableLanguages == null || elem name enableLanguages);
+
+  extraLanguages = mapAttrsToList mkLang (filterAttrs wantLang {
+    cat = "0d1smiv1b3k9ay2s05sl7q08mb3ln4w5iiiymv2cs8g8333z8jl9";
+    rus = "059336mkhsj9m3hwfb818xjlxkcdpy7wfgr62qwz65cx914xl709";
+    spa = "1c9iza5mbahd9pa7znnq8yv09v5kz3gbd2sarcgcgc1ps1jc437l";
+    nld = "162acxp1yb6gyki2is3ay2msalmfcsnrlsd9wml2ja05k94m6bjy";
+    eng = "1y5xf794n832s3lymzlsdm2s9nlrd2v27jjjp0fd9xp7c2ah4461";
+    slv = "0rqng43435cly32idxm1lvxkcippvc3xpxbfizwq5j0155ym00dr";
+    jpn = "07v8pymd0iwyzh946lxylybda20gsw7p4fsb09jw147955x49gq9";
+  });
 in
 
 stdenv.mkDerivation rec {
@@ -40,7 +45,7 @@ stdenv.mkDerivation rec {
                   'LIBLEPT_HEADERSDIR=${leptonica}/include'
   '';
 
-  postInstall = extraLanguages;
+  postInstall = concatStringsSep "; " extraLanguages;
 
   meta = {
     description = "OCR engine";
diff --git a/pkgs/applications/graphics/xaos/default.nix b/pkgs/applications/graphics/xaos/default.nix
index cacefc9bcc1..7e01d3847d5 100644
--- a/pkgs/applications/graphics/xaos/default.nix
+++ b/pkgs/applications/graphics/xaos/default.nix
@@ -1,4 +1,4 @@
-a :
+a @ { libXt, libX11, libXext, xextproto, xproto, gsl, aalib, zlib, intltool, gettext, perl, ... }:
 let
   fetchurl = a.fetchurl;
 
diff --git a/pkgs/applications/graphics/xfig/builder.sh b/pkgs/applications/graphics/xfig/builder.sh
index bb1cd7f49c4..9d95eca0122 100644
--- a/pkgs/applications/graphics/xfig/builder.sh
+++ b/pkgs/applications/graphics/xfig/builder.sh
@@ -5,8 +5,7 @@ makeFlags="XAWLIB=-lXaw3d BINDIR=$out/bin XAPPLOADDIR=$out/etc/X11/app-defaults
 # We need chmod +wx on dirs, not just chmod +w
 dontMakeSourcesWritable=1
 postUnpack() {
-	find . -type d | xargs -n1 chmod +x
-	find . -type d | xargs -n1 chmod +x
+    find . -type d -exec chmod +x '{}' \;
 }
 
 preBuild() {
diff --git a/pkgs/applications/graphics/xfig/default.nix b/pkgs/applications/graphics/xfig/default.nix
index 88183c5e5a3..9e53fe3efe2 100644
--- a/pkgs/applications/graphics/xfig/default.nix
+++ b/pkgs/applications/graphics/xfig/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, makeWrapper, imake
-, x11, libXpm, libXmu, libXi, libXp, Xaw3d, libpng, libjpeg}:
+, xlibsWrapper, libXpm, libXmu, libXi, libXp, Xaw3d, libpng, libjpeg}:
 
 let version = "3.2.5b"; in
 stdenv.mkDerivation {
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
 
   builder = ./builder.sh;
 
-  buildInputs = [x11 libXpm libXmu libXi libXp Xaw3d libpng libjpeg];
+  buildInputs = [xlibsWrapper libXpm libXmu libXi libXp Xaw3d libpng libjpeg];
 
   nativeBuildInputs = [ imake makeWrapper ];
 
diff --git a/pkgs/applications/graphics/yed/default.nix b/pkgs/applications/graphics/yed/default.nix
index 6e9a1fdeb09..e3b7d001174 100644
--- a/pkgs/applications/graphics/yed/default.nix
+++ b/pkgs/applications/graphics/yed/default.nix
@@ -1,11 +1,12 @@
-{ stdenv, fetchurl, makeWrapper, unzip, jre }:
+{ stdenv, fetchurl, requireFile, makeWrapper, unzip, jre }:
 
 stdenv.mkDerivation rec {
-  name = "yEd-3.14.1";
+  name = "yEd-3.14.3";
 
-  src = fetchurl {
-    url = "http://www.yworks.com/products/yed/demo/${name}.zip";
-    sha256 = "09zik3pjs5x0vc0jvndm762blk85y44lxac3vdfqqbinwd9gfnm2";
+  src = requireFile {
+    name = "${name}.zip";
+    url = "https://www.yworks.com/en/products/yfiles/yed/";
+    sha256 = "0xgazknbz82sgk65hxmvbycl1vd25z80a7jgwjgw7syicrgmplcl";
   };
 
   nativeBuildInputs = [ unzip makeWrapper ];
@@ -20,7 +21,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    license = licenses.unfreeRedistributable;
+    license = licenses.unfree;
     homepage = http://www.yworks.com/en/products/yfiles/yed/;
     description = "A powerful desktop application that can be used to quickly and effectively generate high-quality diagrams";
     platforms = jre.meta.platforms;
diff --git a/pkgs/applications/graphics/zgrviewer/default.nix b/pkgs/applications/graphics/zgrviewer/default.nix
index a6c299d1ab3..724bddda6cf 100644
--- a/pkgs/applications/graphics/zgrviewer/default.nix
+++ b/pkgs/applications/graphics/zgrviewer/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     # Quicker to unpack locally than load Hydra
     hydraPlatforms = [];
     maintainers = with stdenv.lib.maintainers; [raskin];
-    license = with stdenv.lib.licenses; lgpl21Plus;
+    license = stdenv.lib.licenses.lgpl21Plus;
     description = "GraphViz graph viewer/navigator";
   };
 }
diff --git a/pkgs/applications/inferno/default.nix b/pkgs/applications/inferno/default.nix
index 0d61d5635a5..a0e2796a302 100644
--- a/pkgs/applications/inferno/default.nix
+++ b/pkgs/applications/inferno/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, fetchhg, stdenv, xlibs, gcc46, makeWrapper }:
+{ fetchurl, fetchhg, stdenv, xorg, gcc46, makeWrapper }:
 
 stdenv.mkDerivation rec {
   # Inferno is a rolling release from a mercurial repository. For the verison number
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   };
 
   # Fails with gcc48 due to inferno triggering an optimisation issue with floating point.
-  buildInputs = [ gcc46 xlibs.libX11 xlibs.libXpm xlibs.libXext xlibs.xextproto makeWrapper ];
+  buildInputs = [ gcc46 xorg.libX11 xorg.libXpm xorg.libXext xorg.xextproto makeWrapper ];
 
   infernoWrapper = ./inferno;
 
diff --git a/pkgs/applications/kde-apps-15.04/cantor/0001-qalculate-filename-string-type.patch b/pkgs/applications/kde-apps-15.04/cantor/0001-qalculate-filename-string-type.patch
new file mode 100644
index 00000000000..b2679b95a86
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.04/cantor/0001-qalculate-filename-string-type.patch
@@ -0,0 +1,28 @@
+From 1a526e40ffc1d6cb050334e8641d8b90d9858a54 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel <ttuegel@gmail.com>
+Date: Sun, 30 Aug 2015 07:05:03 -0500
+Subject: [PATCH] qalculate filename string type
+
+---
+ src/backends/qalculate/qalculateexpression.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/backends/qalculate/qalculateexpression.cpp b/src/backends/qalculate/qalculateexpression.cpp
+index 1891baa..b2a1984 100644
+--- a/src/backends/qalculate/qalculateexpression.cpp
++++ b/src/backends/qalculate/qalculateexpression.cpp
+@@ -771,9 +771,9 @@ void QalculateExpression::evaluatePlotCommand()
+ 	if (plotParameters.filetype == PLOT_FILETYPE_EPS ||
+ 	    plotParameters.filetype == PLOT_FILETYPE_PS  ||
+ 	    (plotParameters.filetype == PLOT_FILETYPE_AUTO && p >= 4 &&
+-	     plotParameters.filename.substr(p-4,4) == QLatin1String(".eps")) ||
++	     plotParameters.filename.substr(p-4,4) == basic_string<char>(".eps")) ||
+ 	    (plotParameters.filetype == PLOT_FILETYPE_AUTO && p >= 3 &&
+-	     plotParameters.filename.substr(p-3,3) == QLatin1String(".ps")))
++	     plotParameters.filename.substr(p-3,3) == basic_string<char>(".ps")))
+ 	    setResult(new Cantor::EpsResult(KUrl(plotParameters.filename.c_str())));
+ 	else
+ 	    setResult(new Cantor::ImageResult(KUrl(plotParameters.filename.c_str())));
+-- 
+2.5.0
+
diff --git a/pkgs/applications/kde-apps-15.04/default.nix b/pkgs/applications/kde-apps-15.04/default.nix
index 1e94ffe11a2..4bae82976af 100644
--- a/pkgs/applications/kde-apps-15.04/default.nix
+++ b/pkgs/applications/kde-apps-15.04/default.nix
@@ -12,314 +12,529 @@
 #  make a copy of this directory first. After copying, be sure to delete ./tmp
 #  if it exists. Then follow the minor update instructions.
 
-{ autonix, symlinkJoin, kde4, kf5, pkgs, qt4, qt5, stdenv, debug ? false }:
+{ pkgs, newScope, kf5 ? null, plasma5 ? null, qt5 ? null, debug ? false }:
 
-with stdenv.lib; with autonix;
+let inherit (pkgs) autonix kde4 stdenv symlinkJoin; in
 
-let kf5Orig = kf5; in
+with autonix; let inherit (stdenv) lib; in
 
 let
+  kf5_ = if kf5 != null then kf5 else pkgs.kf510;
+  plasma5_ = if plasma5 != null then plasma5 else pkgs.plasma53;
+  qt5_ = if qt5 != null then qt5 else pkgs.qt54;
+in
 
-  kf5 = kf5Orig.override { inherit debug qt5; };
-
-  mirror = "mirror://kde";
-
-  renames =
-    (builtins.removeAttrs
-      (import ./renames.nix {})
-      ["Backend" "CTest"])
-    // {
-      "KDE4" = "kdelibs";
-      "KF5KDEGames" = "libkdegames";
-      "Kexiv2" = "libkexiv2";
-      "Kdcraw" = "libkdcraw";
-      "Kipi" = "libkipi";
-      "LibKMahjongg" = "libkmahjongg";
-      "LibKonq" = "kde-baseapps";
-    };
-
-  mkDerivation = drv: kf5.mkDerivation (drv // {
-    preHook = (drv.preHook or "") + ''
-      addQt4Plugins() {
-        if [[ -d "$1/lib/qt4/plugins" ]]; then
-            propagatedUserEnvPkgs+=" $1"
-        fi
-
-        if [[ -d "$1/lib/kde4/plugins" ]]; then
-            propagatedUserEnvPkgs+=" $1"
-        fi
-      }
+let
 
-      envHooks+=(addQt4Plugins)
-    '';
+  kf5 = kf5_.override { inherit debug qt5; };
+  plasma5 = plasma5_.override { inherit debug kf5 qt5; };
+  qt5 = qt5_;
+
+  kdeOrL10nPackage = name: pkg:
+    assert (builtins.isAttrs pkg);
+    if lib.hasPrefix "kde-l10n" pkg.name
+      then l10nPackage name pkg
+    else kdePackage name pkg;
+
+  kdePackage = name: pkg:
+    let defaultOverride = drv: drv // {
+          setupHook = ./setup-hook.sh;
+          cmakeFlags =
+            (drv.cmakeFlags or [])
+            ++ [ "-DBUILD_TESTING=OFF" ]
+            ++ lib.optional debug "-DCMAKE_BUILD_TYPE=Debug";
+          meta = {
+            license = with stdenv.lib.licenses; [
+              lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12
+            ];
+            platforms = stdenv.lib.platforms.linux;
+            maintainers = with stdenv.lib.maintainers; [ ttuegel ];
+            homepage = "http://www.kde.org";
+          };
+        };
+        callPackage = newScope {
+          inherit (stdenv) mkDerivation;
+          inherit (pkgs) fetchurl;
+          inherit scope;
+        };
+    in mkPackage callPackage defaultOverride name pkg;
+
+  l10nPackage = name: pkg:
+    let nameVersion = builtins.parseDrvName pkg.name;
+
+        pkgQt4 = pkg // {
+          name = "${nameVersion.name}-qt4-${nameVersion.version}";
+          buildInputs = [ "kdelibs" "qt4" ];
+          nativeBuildInputs = [ "cmake" "gettext" "perl" ];
+          propagatedBuildInputs = [];
+          propagatedNativeBuildInputs = [];
+          propagatedUserEnvPkgs = [];
+        };
+        drvQt4 = overrideDerivation (kdePackage name pkgQt4) (drv: {
+          preConfigure = (drv.preConfigure or "") + ''
+            cd 4/
+          '';
+        });
+
+        pkgQt5 = pkg // {
+          name = "${nameVersion.name}-qt5-${nameVersion.version}";
+          buildInputs = [ "kdoctools" "ki18n" ];
+          nativeBuildInputs = [ "cmake" "extra-cmake-modules" "gettext" "perl" ];
+          propagatedBuildInputs = [];
+          propagatedNativeBuildInputs = [];
+          propagatedUserEnvPkgs = [];
+        };
+        drvQt5 = overrideDerivation (kdePackage name pkgQt5) (drv: {
+          preConfigure = (drv.preConfigure or "") + ''
+            cd 5/
+          '';
+        });
+    in symlinkJoin pkg.name [ drvQt4 drvQt5 ];
+
+  super =
+    let json = builtins.fromJSON (builtins.readFile ./packages.json);
+        mirrorUrl = n: pkg: pkg // {
+          src = pkg.src // { url = "mirror://kde/${pkg.src.url}"; };
+        };
+        renames =
+          (builtins.fromJSON (builtins.readFile ./kf5-renames.json))
+          // (builtins.fromJSON (builtins.readFile ./plasma5-renames.json))
+          // (builtins.fromJSON (builtins.readFile ./renames.json));
+        propagated = [ "extra-cmake-modules" ];
+        native = [
+          "bison"
+          "extra-cmake-modules"
+          "flex"
+          "kdoctools"
+          "ki18n"
+          "libxslt"
+          "perl"
+          "pythoninterp"
+        ];
+        user = [
+          "qt5"
+          "qt5core"
+          "qt5dbus"
+          "qt5gui"
+          "qt5qml"
+          "qt5quick"
+          "qt5svg"
+          "qt5webkitwidgets"
+          "qt5widgets"
+          "qt5x11extras"
+          "shareddesktopontologies"
+          "sharedmimeinfo"
+        ];
+    in lib.fold (f: attrs: f attrs) json [
+      (lib.mapAttrs kdeOrL10nPackage)
+      (userEnvDeps user)
+      (nativeDeps native)
+      (propagateDeps propagated)
+      (renameDeps renames)
+      (lib.mapAttrs mirrorUrl)
+    ];
+
+  kde4Package = pkg: overrideScope pkg (with kde4; {
+    inherit akonadi baloo kactivities libkdegames libkmahjongg;
+    kde4 = self.kdelibs;
   });
 
   scope =
+    # KDE Frameworks 5
+    kf5 //
     # packages in this collection
-    (mapAttrs (dep: name: kdeApps."${name}") renames) //
-    # packages from KDE Frameworks 5
-    kf5.scope //
+    self //
+    {
+      kf5baloo = plasma5.baloo;
+      kf5kdcraw = self.libkdcraw;
+      kf5kdegames = self.libkdegames;
+      kf5kipi = self.libkipi;
+      libkonq = self.kde-baseapps;
+    } //
+    # packages requiring same Qt 5
+    (with pkgs; {
+      accountsqt5 = accounts-qt.override { inherit qt5; };
+      dbusmenuqt = libdbusmenu_qt;
+      grantlee5 = grantlee5.override { inherit qt5; };
+      mlt = pkgs.mlt-qt5.override { inherit qt5; };
+      phonon4qt5 = pkgs.phonon_qt5.override { inherit qt5; };
+      qca-qt5 = qca-qt5.override { inherit qt5; };
+      qt5script = qt5.script;
+      qt5x11extras = qt5.x11extras;
+      signonqt5 = signon.override { inherit qt5; };
+      telepathyqt5 = telepathy_qt5.override { inherit qt5; };
+    }) //
     # packages from nixpkgs
-    (with pkgs;
-      {
-        ACL = acl;
-        Akonadi = kde4.akonadi;
-        Alsa = alsaLib;
-        Automoc4 = automoc4;
-        Avahi = avahi;
-        BISON = bison;
-        Baloo = kde4.baloo;
-        Boost = boost156;
-        Canberra = libcanberra;
-        Cdparanoia = cdparanoia;
-        CUPS = cups;
-        DBusMenuQt = libdbusmenu_qt;
-        DjVuLibre = djvulibre;
-        ENCHANT = enchant;
-        EPub = ebook_tools;
-        Eigen2 = eigen2;
-        Eigen3 = eigen;
-        Exiv2 = exiv2;
-        FAM = fam;
-        FFmpeg = ffmpeg;
-        Flac = flac;
-        FLEX = flex;
-        Freetype = freetype;
-        GMP = gmp;
-        Gettext = gettext;
-        Gpgme = gpgme;
-        Gphoto2 = libgphoto2;
-        Grantlee = grantlee;
-        GSL = gsl;
-        HUNSPELL = hunspell;
-        HUpnp = herqq;
-        Jasper = jasper;
-        KActivities = kde4.kactivities;
-        LCMS2 = lcms2;
-        Ldap = openldap;
-        LibAttica = attica;
-        LibGcrypt = libgcrypt;
-        LibSSH = libssh;
-        LibSpectre = libspectre;
-        LibVNCServer = libvncserver;
-        Libical = libical;
-        MusicBrainz3 = libmusicbrainz;
-        NetworkManager = networkmanager;
-        OggVorbis = libvorbis;
-        OpenAL = openal;
-        OpenEXR = openexr;
-        Poppler = poppler_qt4;
-        Prison = prison;
-        PulseAudio = pulseaudio;
-        PythonLibrary = python;
-        Qalculate = libqalculate;
-        QCA2 = qca2;
-        QImageBlitz = qimageblitz;
-        QJSON = qjson;
-        Qt4 = qt4;
-        Samba = samba;
-        Sasl2 = cyrus_sasl;
-        SharedDesktopOntologies = shared_desktop_ontologies;
-        SndFile = libsndfile;
-        Speechd = speechd;
-        TIFF = libtiff;
-        Taglib = taglib;
-        TelepathyQt4 = telepathy_qt;
-        TunePimp = libtunepimp;
-        UDev = udev;
-        USB = libusb;
-        Xscreensaver = xscreensaver;
-        Xsltproc = libxslt;
-      }
-    );
-
-  qt5Only = tgt:
-    let qt4Deps = [ "KDE4" "Phonon" ];
-    in mapAttrs (name: if name == tgt then removePkgDeps qt4Deps else id);
-
-  preResolve = super:
-    fold (f: x: f x) super
-      [
-        (qt5Only "kmix")
-        (userEnvPkg "SharedMimeInfo")
-        (userEnvPkg "SharedDesktopOntologies")
-        (blacklist ["artikulate"]) # build failure, wrong boost?
-        (blacklist ["kde-dev-scripts" "kde-dev-utils"]) # docbook errors
-        (blacklist ["kdewebdev"]) # unknown build failure
-      ];
-
-  l10nPkgQt4 = orig:
-    let drvName = builtins.parseDrvName orig.name; in
-    mkDerivation {
-      name = "${drvName.name}-qt4-${drvName.version}";
-      inherit (orig) src;
-      buildInputs = [ kdeApps.kdelibs ];
-      nativeBuildInputs = with pkgs; [ cmake gettext perl ];
-      preConfigure = ''
-        cd 4/
-      '';
-    };
+    (with pkgs; {
+      inherit acl attr automoc4 avahi bison cdparanoia cfitsio cmake cups
+              djvulibre docbook_xml_dtd_42 docbook_xsl enchant eigen2
+              exiv2 fam ffmpeg flac flex freetype gmp gettext gpgme
+              grantlee gsl hunspell ilmbase intltool jasper lcms2
+              libaccounts-glib libgcrypt libotr libraw libssh libspectre
+              libvncserver libical networkmanager openal opencv
+              openexr perl phonon pkgconfig polkit_qt4 prison python qca2
+              qimageblitz qjson qt4 samba saneBackends soprano speechd
+              strigi taglib udev xorg xplanet xscreensaver xz;
+      alsa = alsaLib;
+      assuan = libassuan;
+      boost = boost155;
+      canberra = libcanberra;
+      eigen3 = eigen;
+      epub = ebook_tools;
+      gif = giflib;
+      gphoto2 = libgphoto2;
+      hupnp = herqq;
+      indi = indilib;
+      jpeg = libjpeg;
+      ldap = openldap;
+      libattica = attica;
+      musicbrainz3 = libmusicbrainz;
+      oggvorbis = libvorbis;
+      poppler = poppler_qt4;
+      pulseaudio = libpulseaudio;
+      qalculate = libqalculate;
+      sasl2 = cyrus_sasl;
+      shareddesktopontologies = shared_desktop_ontologies;
+      sharedmimeinfo = shared_mime_info;
+      sndfile = libsndfile;
+      tiff = libtiff;
+      telepathyqt4 = telepathy_qt;
+      tunepimp = libtunepimp;
+      usb = libusb;
+      xsltproc = libxslt;
+    });
+
+  self =
+    (builtins.removeAttrs super [
+      "artikulate" # build failure; wrong boost?
+      "kde-dev-scripts" "kde-dev-utils" # docbook errors
+      "kdewebdev" # unknown build failure
+      "kde-l10n-sr" # missing CMake command
+    ]) // {
+      audiocd-kio = kde4Package super.audiocd-kio;
+
+      amor = kde4Package super.amor;
+
+      ark = extendDerivation (kde4Package super.ark) {
+        buildInputs = [ pkgs.makeWrapper ];
+        # runtime dependency
+        postInstall = ''
+          wrapProgram $out/bin/ark --prefix PATH : "${pkgs.unzipNLS}/bin"
+        '';
+      };
 
-  l10nPkgQt5 = orig:
-    let drvName = builtins.parseDrvName orig.name; in
-    mkDerivation {
-      name = "${drvName.name}-qt5-${drvName.version}";
-      inherit (orig) src;
-      buildInputs = with kf5; [ kdoctools ki18n ];
-      nativeBuildInputs = with pkgs; [ cmake kf5.extra-cmake-modules gettext perl ];
-      preConfigure = ''
-        cd 5/
-      '';
-    };
+      cantor = extendDerivation (kde4Package super.cantor) {
+        patches = [ ./cantor/0001-qalculate-filename-string-type.patch ];
+      };
 
-  l10nPkg = name: orig: symlinkJoin orig.name [(l10nPkgQt4 orig) (l10nPkgQt5 orig)];
+      cervisia = kde4Package super.cervisia;
 
-  removeL10nPkgs = filterAttrs (n: v: !(hasPrefix "kde-l10n") n);
+      dolphin-plugins = kde4Package super.dolphin-plugins;
 
-  postResolve = super:
-    (removeL10nPkgs super) // {
+      dragon = kde4Package super.dragon;
 
-      ark = with pkgs; super.ark // {
-        buildInputs = (super.ark.buildInputs or []) ++ [ makeWrapper ];
-        postInstall = ''
-          wrapProgram $out/bin/ark --prefix PATH : "${unzipNLS}/bin"
+      ffmpegthumbs = extendDerivation (kde4Package super.ffmpegthumbs) {
+        nativeBuildInputs = [ scope.pkgconfig ];
+      };
+
+      juk = kde4Package super.juk;
+
+      jovie = kde4Package super.jovie;
+
+      kaccessible = kde4Package super.kaccessible;
+
+      kaccounts-providers = extendDerivation super.kaccounts-providers {
+        buildInputs = [ pkgs.libaccounts-glib ];
+        # hard-coded install path
+        preConfigure = ''
+          substituteInPlace webkit-options/CMakeLists.txt \
+            --replace "/etc/signon-ui/webkit-options.d/" \
+                      "$out/etc/signon-ui/webkit-options.d/"
         '';
       };
 
-      ffmpegthumbs = with pkgs; super.ffmpegthumbs // {
-        nativeBuildInputs = super.ffmpegthumbs.nativeBuildInputs ++ [pkgconfig];
+      kajongg = kde4Package super.kajongg;
+
+      kalzium = extendDerivation (kde4Package super.kalzium) {
+        nativeBuildInputs = [ scope.pkgconfig ];
       };
 
-      kalzium = with pkgs; super.kalzium // {
-        nativeBuildInputs = super.kalzium.nativeBuildInputs ++ [pkgconfig];
+      kamera = kde4Package super.kamera;
+
+      kate = extendDerivation super.kate {
+        buildInputs = with scope; [
+          kconfig kguiaddons kiconthemes ki18n kinit kjobwidgets kio
+          kparts ktexteditor kwindowsystem kxmlgui
+        ];
+        nativeBuildInputs = [ scope.kdoctools ];
       };
 
-      kde-runtime = with pkgs; super.kde-runtime // {
-        buildInputs =
-          super.kde-runtime.buildInputs ++ [libcanberra];
-        nativeBuildInputs =
-          super.kde-runtime.nativeBuildInputs ++ [pkgconfig];
-        NIX_CFLAGS_COMPILE =
-          (super.kde-runtime.NIX_CFLAGS_COMPILE or "")
-          + " -I${ilmbase}/include/OpenEXR";
+      kcachegrind = kde4Package super.kcachegrind;
+
+      kcolorchooser = kde4Package super.kcolorchooser;
+
+      kde-base-artwork = kde4Package super.kde-base-artwork;
+
+      kde-baseapps = kde4Package super.kde-baseapps;
+
+      kde-runtime = extendDerivation (kde4Package super.kde-runtime) {
+        buildInputs = [ scope.canberra ];
+        nativeBuildInputs = [ scope.pkgconfig ];
+        # cmake does not detect path to `ilmbase`
+        NIX_CFLAGS_COMPILE = "-I${scope.ilmbase}/include/OpenEXR";
+        # some components of this package have been replaced in other packages
         meta = { priority = 10; };
       };
 
-      kde-workspace = with pkgs; super.kde-workspace // {
-        buildInputs = with xlibs;
-          super.kde-workspace.buildInputs
-          ++
-          [
-            libxkbfile libXcomposite xcbutilimage xcbutilkeysyms
-            xcbutilrenderutil
-          ];
-        nativeBuildInputs =
-          super.kde-workspace.nativeBuildInputs
-          ++ [ pkgconfig ];
+      kde-wallpapers = kde4Package super.kde-wallpapers;
+
+      kde-workspace = extendDerivation (kde4Package super.kde-workspace) {
+        patches = [ ./kde-workspace/ksysguard-0001-disable-signalplottertest.patch ];
+        buildInputs = with scope.xorg; [
+            libxkbfile libXcomposite xcbutilimage xcbutilkeysyms xcbutilrenderutil
+        ];
+        nativeBuildInputs = [ scope.pkgconfig ];
+        # some components of this package have been replaced in other packages
         meta = { priority = 10; };
       };
 
-      kdelibs = with pkgs; super.kdelibs // {
-        buildInputs =
-          super.kdelibs.buildInputs ++ [ attr libxslt polkit_qt4 xz pcre ];
+      kdeartwork = kde4Package super.kdeartwork;
 
-        nativeBuildInputs =
-          super.kdelibs.nativeBuildInputs ++ [ pkgconfig ];
+      kdegraphics-mobipocket = kde4Package super.kdegraphics-mobipocket;
 
-        NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR";
+      kdegraphics-strigi-analyzer = kde4Package super.kdegraphics-strigi-analyzer;
 
-        propagatedBuildInputs =
-          super.kdelibs.propagatedBuildInputs ++ [ qt4 soprano phonon strigi ];
+      kdegraphics-thumbnailers = kde4Package super.kdegraphics-thumbnailers;
 
-        propagatedNativeBuildInputs =
-          super.kdelibs.propagatedNativeBuildInputs
-          ++ [ automoc4 cmake perl shared_mime_info ];
+      kdelibs = extendDerivation super.kdelibs {
+        buildInputs = with scope; [ attr polkit_qt4 xsltproc xz ];
+        propagatedBuildInputs = with scope; [ qt4 soprano phonon strigi ];
+        nativeBuildInputs = [ scope.pkgconfig ];
+        propagatedNativeBuildInputs = with scope; [
+          automoc4 cmake perl sharedmimeinfo
+        ];
 
         patches = [ ./kdelibs/polkit-install.patch ];
 
+        # cmake does not detect path to `ilmbase`
+        NIX_CFLAGS_COMPILE = "-I${scope.ilmbase}/include/OpenEXR";
+
         cmakeFlags = [
-          "-DDOCBOOKXML_CURRENTDTD_DIR=${docbook_xml_dtd_42}/xml/dtd/docbook"
-          "-DDOCBOOKXSL_DIR=${docbook_xsl}/xml/xsl/docbook"
+          "-DDOCBOOKXML_CURRENTDTD_DIR=${scope.docbook_xml_dtd_42}/xml/dtd/docbook"
+          "-DDOCBOOKXSL_DIR=${scope.docbook_xsl}/xml/xsl/docbook"
           "-DHUPNP_ENABLED=ON"
           "-DWITH_SOLID_UDISKS2=ON"
           "-DKDE_DEFAULT_HOME=.kde"
         ];
       };
 
-      kdepim = with pkgs; super.kdepim // {
-        buildInputs =
-          super.kdepim.buildInputs ++ [ gpgme libassuan ];
-        nativeBuildInputs =
-          super.kdepim.nativeBuildInputs ++ [ pkgconfig ];
-      };
+      kdenetwork-filesharing = kde4Package super.kdenetwork-filesharing;
 
-      kdepimlibs = with pkgs; super.kdepimlibs // {
-        nativeBuildInputs =
-          super.kdepimlibs.nativeBuildInputs ++ [ pkgconfig ];
+      kdenetwork-strigi-analyzers = kde4Package super.kdenetwork-strigi-analyzers;
+
+      kdenlive = extendDerivation super.kdenlive { buildInputs = [ scope.mlt ]; };
+
+      kdepim = extendDerivation (kde4Package super.kdepim) {
+        buildInputs = with scope; [ gpgme assuan ];
+        nativeBuildInputs = [ scope.pkgconfig ];
       };
 
-      kdesdk-thumbnailers = with pkgs; super.kdesdk-thumbnailers // {
-        nativeBuildInputs =
-          super.kdesdk-thumbnailers.nativeBuildInputs
-          ++ [gettext];
+      kdepim-runtime = kde4Package super.kdepim-runtime;
+
+      kdepimlibs = extendDerivation (kde4Package super.kdepimlibs) {
+        nativeBuildInputs = [ scope.pkgconfig ];
       };
 
-      kgpg = with pkgs; super.kgpg // {
-        buildInputs = super.kgpg.buildInputs ++ [boost];
+      kdesdk-kioslaves = kde4Package super.kdesdk-kioslaves;
+
+      kdesdk-strigi-analyzers = kde4Package super.kdesdk-strigi-analyzers;
+
+      kdesdk-thumbnailers =
+        extendDerivation (kde4Package super.kdesdk-thumbnailers) {
+          nativeBuildInputs = [ scope.gettext ];
+        };
+
+      kdf = kde4Package super.kdf;
+
+      kfloppy = kde4Package super.kfloppy;
+
+      kgamma = kde4Package super.kgamma;
+
+      kget = kde4Package super.kget;
+
+      kgoldrunner = kde4Package super.kgoldrunner;
+
+      kgpg = extendDerivation (kde4Package super.kgpg) {
+        buildInputs = [ scope.boost ];
       };
 
-      kmix = with pkgs; super.kmix // {
-        nativeBuildInputs = super.kmix.nativeBuildInputs ++ [pkgconfig];
+      khangman = extendDerivation super.khangman { buildInputs = [ scope.kio ]; };
+
+      kigo = kde4Package super.kigo;
+
+      kiriki = kde4Package super.kiriki;
+
+      klickety = kde4Package super.klickety;
+
+      kmag = kde4Package super.kmag;
+
+      kmahjongg = kde4Package super.kmahjongg;
+
+      kmix = extendDerivation super.kmix {
+        nativeBuildInputs = [ scope.pkgconfig ];
         cmakeFlags = [ "-DKMIX_KF5_BUILD=ON" ];
       };
 
-      kmousetool = with pkgs; super.kmousetool // {
-        buildInputs = with xlibs;
-          super.kmousetool.buildInputs
-          ++ [libXtst libXt];
+      kmousetool = extendDerivation (kde4Package super.kmousetool) {
+        buildInputs = with scope.xorg; [ libXtst libXt ];
+      };
+
+      kmouth = kde4Package super.kmouth;
+
+      knavalbattle = kde4Package super.knavalbattle;
+
+      kolf = kde4Package super.kolf;
+
+      kolourpaint = kde4Package super.kolourpaint;
+
+      konquest = kde4Package super.konquest;
+
+      kopete = kde4Package super.kopete;
+
+      kppp = kde4Package super.kppp;
+
+      kqtquickcharts = kde4Package super.kqtquickcharts;
+
+      krdc = kde4Package super.krdc;
+
+      kremotecontrol = extendDerivation (kde4Package super.kremotecontrol) {
+        buildInputs = [ scope.xorg.libXtst ];
+      };
+
+      kreversi = kde4Package super.kreversi;
+
+      krfb = extendDerivation (kde4Package super.krfb) {
+        buildInputs = with scope; [ xorg.libXtst ktp-common-internals ];
       };
 
-      kremotecontrol = with pkgs; super.kremotecontrol // {
-        buildInputs = super.kremotecontrol.buildInputs ++ [xlibs.libXtst];
+      ksaneplugin = kde4Package super.ksaneplugin;
+
+      kscd = kde4Package super.kscd;
+
+      ksirk = kde4Package super.ksirk;
+
+      ksnakeduel = kde4Package super.ksnakeduel;
+
+      ksnapshot = kde4Package super.ksnapshot;
+
+      kspaceduel = kde4Package super.kspaceduel;
+
+      kstars = extendDerivation super.kstars {
+        buildInputs = with scope; [ kparts cfitsio ];
       };
 
-      krfb = super.krfb // {
-        buildInputs =
-          super.krfb.buildInputs
-          ++ [pkgs.xlibs.libXtst kde4.telepathy.common_internals];
+      ksudoku = kde4Package super.ksudoku;
+
+      ksystemlog = kde4Package super.ksystemlog;
+
+      ktp-accounts-kcm = extendDerivation super.ktp-accounts-kcm {
+        buildInputs = [ scope.libaccounts-glib ];
       };
 
-      libkdcraw = with pkgs; super.libkdcraw // {
-        buildInputs = super.libkdcraw.buildInputs ++ [scope.KDE4 libraw];
-        nativeBuildInputs = super.libkdcraw.nativeBuildInputs ++ [pkgconfig];
+      ktp-common-internals = extendDerivation super.ktp-common-internals {
+        buildInputs = with scope; [ kdelibs4support kparts libotr ];
       };
 
-      libkexiv2 = with pkgs; super.libkexiv2 // {
-        buildInputs = super.libkexiv2.buildInputs ++ [exiv2 scope.KDE4];
+      ktp-text-ui = extendDerivation super.ktp-text-ui {
+        buildInputs = [ scope.kdbusaddons ];
       };
 
-      libkface = with pkgs; super.libkface // {
-        buildInputs = super.libkface.buildInputs ++ [scope.KDE4 opencv];
+      ktuberling = kde4Package super.ktuberling;
+
+      ktux = kde4Package super.ktux;
+
+      kubrick = kde4Package super.kubrick;
+
+      kuser = kde4Package super.kuser;
+
+      kwalletmanager = kde4Package super.kwalletmanager;
+
+      lokalize = extendDerivation super.lokalize {
+        buildInputs = [ scope.kdbusaddons ];
       };
 
-      libkipi = with pkgs; super.libkipi // {
-        buildInputs = super.libkipi.buildInputs ++ [scope.KDE4];
+      libkcddb = kde4Package super.libkcddb;
+
+      libkcompactdisc = kde4Package super.libkcompactdisc;
+
+      libkdcraw = extendDerivation super.libkdcraw {
+        buildInputs = with scope; [ kdelibs libraw ];
+        nativeBuildInputs = [ scope.pkgconfig ];
       };
 
-      libksane = with pkgs; super.libksane // {
-        buildInputs = super.libksane.buildInputs ++ [scope.KDE4 saneBackends];
+      libkdeedu = kde4Package super.libkdeedu;
+
+      libkexiv2 = extendDerivation super.libkexiv2 {
+        buildInputs = with scope; [ exiv2 kdelibs ];
       };
 
-    };
+      libkface = extendDerivation super.libkface {
+        buildInputs = with scope; [ kdelibs opencv ];
+      };
+
+      libkgeomap = extendDerivation (kde4Package super.libkgeomap) {
+        cmakeFlags =
+          [ "-DCMAKE_MODULE_PATH=${scope.marble}/share/apps/cmake/modules" ];
+      };
+
+      libkipi = extendDerivation super.libkipi {
+        buildInputs = [ scope.kdelibs ];
+      };
+
+      libksane = extendDerivation super.libksane {
+        buildInputs = with scope; [ kdelibs saneBackends];
+      };
+
+      lskat = kde4Package super.lskat;
+
+      marble = kde4Package super.marble;
+
+      mplayerthumbs = kde4Package super.mplayerthumbs;
+
+      okular = extendDerivation (kde4Package super.okular) {
+        nativeBuildInputs = [ scope.pkgconfig ];
+      };
+
+      pairs = kde4Package super.pairs;
 
-  l10nManifest =
-    filterAttrs
-      (n: v: hasPrefix "kde-l10n" n)
-      (importManifest ./manifest.nix { inherit mirror; });
+      palapeli = kde4Package super.palapeli;
 
-  kdeApps = generateCollection ./. {
-    inherit mkDerivation;
-    inherit mirror preResolve postResolve renames scope;
-  };
+      picmi = kde4Package super.picmi;
+
+      poxml = kde4Package super.poxml;
+
+      rocs = extendDerivation super.rocs {
+        buildInputs = [ scope.kdelibs4support ];
+      };
+
+      signon-kwallet-extension = extendDerivation super.signon-kwallet-extension {
+        buildInputs = [ scope.signonqt5 ];
+        preConfigure = ''
+          sed -i src/CMakeLists.txt \
+              -e "s,\''${SIGNONEXTENSION_PLUGINDIR},$out/lib/signon/extensions,"
+        '';
+      };
+
+      superkaramba = kde4Package super.superkaramba;
+
+      svgpart = kde4Package super.svgpart;
+
+      sweeper = kde4Package super.sweeper;
+
+      umbrello = kde4Package super.umbrello;
+
+      zeroconf-ioslave = kde4Package super.zeroconf-ioslave;
+
+    };
 
-in kdeApps // (mapAttrs l10nPkg l10nManifest)
+in self
diff --git a/pkgs/applications/kde-apps-15.04/dependencies.nix b/pkgs/applications/kde-apps-15.04/dependencies.nix
deleted file mode 100644
index a66843197f7..00000000000
--- a/pkgs/applications/kde-apps-15.04/dependencies.nix
+++ /dev/null
@@ -1,1812 +0,0 @@
-# DO NOT EDIT! This file is generated automatically.
-{ }:
-{
-  amor = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  analitza = {
-    buildInputs = [ "ECM" "Eigen3" "GLEW" "OpenGL" "Qt5" "Qt5NO_MODULE" "Qt5OpenGL" "Qt5Qml" "Qt5Quick" "Qt5Svg" "Qt5Test" "Qt5Widgets" "Qt5Xml" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [ "Qt5Core" ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ark = {
-    buildInputs = [ "BZip2" "KDE4" "LibArchive" "LibKonq" "LibLZMA" "QJSON" "ZLIB" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  artikulate = {
-    buildInputs = [ "KDE4" "KDeclarative" "QtGStreamer" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  audiocd-kio = {
-    buildInputs = [ "Cdparanoia" "Flac" "KDE4" "Libkcddb" "Libkcompactdisc" "OggVorbis" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  blinken = {
-    buildInputs = [ "ECM" "KF5" "KF5DBusAddons" "KF5DocTools" "KF5GuiAddons" "KF5I18n" "KF5XmlGui" "Phonon4Qt5" "Qt5" "Qt5Core" "Qt5Svg" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  bomber = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5I18n" "KF5KDEGames" "KF5KIO" "KF5XmlGui" "Phonon4Qt5" "Qt5" "Qt5NO_MODULE" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  bovo = {
-    buildInputs = [ "ECM" "KF5" "KF5CoreAddons" "KF5Declarative" "KF5KDEGames" "KF5NewStuff" "KF5XmlGui" "Qt5" "Qt5Concurrent" "Qt5NO_MODULE" "Qt5Qml" "Qt5Quick" "Qt5QuickWidgets" "Qt5Svg" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  cantor = {
-    buildInputs = [ "Analitza5" "ECM" "KDE4" "KF5" "KF5Archive" "KF5Config" "KF5CoreAddons" "KF5KDELibs4Support" "KF5NewStuff" "KF5Parts" "KF5Pty" "KF5TextEditor" "LibSpectre" "LuaJIT" "PythonLibs" "PythonLibs3" "Qalculate" "Qt5" "Qt5Core" "Qt5Svg" "Qt5Test" "Qt5Widgets" "Qt5Xml" "Qt5XmlPatterns" "R" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  cervisia = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  dolphin-plugins = {
-    buildInputs = [ "KDE4" "LibKonq" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  dragon = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ffmpegthumbs = {
-    buildInputs = [ "FFmpeg" "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  filelight = {
-    buildInputs = [ "ECM" "KF5" "KF5CoreAddons" "KF5DocTools" "KF5I18n" "KF5KIO" "KF5Parts" "KF5Solid" "KF5XmlGui" "Qt5" "Qt5Core" "Qt5DBus" "Qt5Script" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  granatier = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5KDEGames" "KF5KIO" "KF5NewStuff" "KF5NotifyConfig" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5NO_MODULE" "Qt5Svg" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  gwenview = {
-    buildInputs = [ "ECM" "Exiv2" "JPEG" "KF5" "KF5Activities" "KF5Baloo" "KF5KDELibs4Support" "KF5KDcraw" "KF5KIO" "KF5Kipi" "LCMS2" "PNG" "Phonon4Qt5" "Qt5" "Qt5Concurrent" "Qt5Core" "Qt5DBus" "Qt5OpenGL" "Qt5QUIET" "Qt5Script" "Qt5Svg" "Qt5Test" "Qt5Widgets" "Qt5X11Extras" "X11" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  jovie = {
-    buildInputs = [ "KDE4" "Qt4" "Speechd" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  juk = {
-    buildInputs = [ "KDE4" "Taglib" "TunePimp" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kaccessible = {
-    buildInputs = [ "KDE4" "Qt4" "Speechd" "X11" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kaccounts-integration = {
-    buildInputs = [ "AccountsQt5" "ECM" "KF5" "KF5Akonadi" "KF5Config" "KF5CoreAddons" "KF5DBusAddons" "KF5I18n" "KF5IconThemes" "KF5KCMUtils" "KF5KIO" "KF5Wallet" "KF5WidgetsAddons" "Qt5" "Qt5Core" "Qt5Test" "Qt5Widgets" "SignOnQt5" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [ "AccountsQt5" "KF5CoreAddons" "Qt5Widgets" "SignOnQt5" ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kaccounts-providers = {
-    buildInputs = [ "AccountsFileDir" "ECM" "Intltool" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kajongg = {
-    buildInputs = [ "KDE4" "Twisted" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kalgebra = {
-    buildInputs = [ "Analitza5" "Curses" "ECM" "KF5ConfigWidgets" "KF5DocTools" "KF5I18n" "KF5KIO" "KF5WidgetsAddons" "OpenGL" "Qt5" "Qt5NO_MODULE" "Qt5OpenGL" "Qt5PrintSupport" "Qt5Qml" "Qt5Quick" "Qt5Svg" "Qt5Test" "Qt5WebKitWidgets" "Qt5Xml" "Readline" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kalzium = {
-    buildInputs = [ "KDE4" "KDEWIN32" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kamera = {
-    buildInputs = [ "Gphoto2" "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kanagram = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5Crash" "KF5Declarative" "KF5DocTools" "KF5I18n" "KF5KIO" "KF5NewStuff" "KF5Sonnet" "LibKEduVocDocument" "Qt5" "Qt5Core" "Qt5OPTIONAL_COMPONENTS" "Qt5OpenGL" "Qt5QUIET" "Qt5Qml" "Qt5Quick" "Qt5TextToSpeech" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kapman = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5I18n" "KF5KDEGames" "KF5KIO" "KF5NotifyConfig" "KF5WindowSystem" "KF5XmlGui" "Phonon4Qt5" "Qt5" "Qt5NO_MODULE" "Qt5Svg" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kapptemplate = {
-    buildInputs = [ "ECM" "KDE4" "KF5" "KF5Archive" "KF5Completion" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DocTools" "KF5I18n" "KF5KIO" "KF5Plasma" "KF5XmlGui" "KdepimLibs" "Qt5" "Qt5Core" "Qt5Gui" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "RBKCONFIG_COMPILER4" "RBUIC4" "XSLTPROC_EXECUTABLE" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kate = {
-    buildInputs = [ "ECM" "KF5" "KF5DBusAddons" "LibGit2" "PyKDE4" "PyQt4" "PythonLibrary" "Qt5" "Qt5Core" "Qt5DBus" "Qt5Script" "Qt5Sql" "Qt5Test" "Qt5Widgets" "SIP" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  katomic = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5KDEGames" "KF5KIO" "KF5NewStuff" "KF5NotifyConfig" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5NO_MODULE" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kblackbox = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5CoreAddons" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5KDEGames" "KF5XmlGui" "Qt5" "Qt5NO_MODULE" "Qt5Svg" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kblocks = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5I18n" "KF5ItemModels" "KF5KDEGames" "KF5KIO" "KF5NewStuff" "KF5NotifyConfig" "KF5TextWidgets" "KF5WidgetsAddons" "KF5WindowSystem" "KF5XmlGui" "Phonon4Qt5" "Qt5" "Qt5NO_MODULE" "Qt5Qml" "Qt5Quick" "Qt5QuickWidgets" "Qt5Svg" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kbounce = {
-    buildInputs = [ "ECM" "KF5" "KF5Completion" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5KDEGames" "KF5KIO" "KF5NotifyConfig" "KF5TextWidgets" "KF5WidgetsAddons" "KF5XmlGui" "Phonon4Qt5" "Qt5" "Qt5NO_MODULE" "Qt5Svg" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kbreakout = {
-    buildInputs = [ "ECM" "KF5" "KF5Completion" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5JobWidgets" "KF5KDEGames" "KF5KIO" "KF5Service" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5NO_MODULE" "Qt5Qml" "Qt5Quick" "Qt5QuickWidgets" "Qt5Svg" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kbruch = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5Crash" "KF5DocTools" "KF5I18n" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5Core" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kcachegrind = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kcalc = {
-    buildInputs = [ "ECM" "GMP" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5DocTools" "KF5GuiAddons" "KF5I18n" "KF5Init" "KF5Notifications" "KF5XmlGui" "Qt5" "Qt5Core" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kcharselect = {
-    buildInputs = [ "ECM" "KF5" "KF5DocTools" "KF5I18n" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5Core" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kcolorchooser = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kcron = {
-    buildInputs = [ "ECM" "KF5" "KF5DocTools" "KF5I18n" "KF5IconThemes" "KF5KIO" "KF5XmlGui" "Qt5" "Qt5Core" "Qt5PrintSupport" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-base-artwork = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-baseapps = {
-    buildInputs = [ "Baloo" "BalooWidgets" "GLIB2" "KActivities" "KDE4" "KFileMetaData" "LibTidy" "X11" "ZLIB" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-dev-scripts = {
-    buildInputs = [ "ECM" "KDE4" "KF5DocTools" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-dev-utils = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-ar = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-bg = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-bs = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-ca = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-ca_valencia = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-cs = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-da = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-de = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-el = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-en_gb = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-eo = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-es = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-et = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-eu = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-fa = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-fi = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-fr = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-ga = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-gl = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-he = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-hi = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-hr = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-hu = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-ia = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-id = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-is = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-it = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-ja = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-kk = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-km = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-ko = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-lt = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-lv = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-mr = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-nb = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-nds = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-nl = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-nn = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-pa = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-pl = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-pt = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-pt_br = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-ro = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-ru = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-sk = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-sl = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-sr = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-sv = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-tr = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-ug = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-uk = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-wa = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-zh_cn = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-l10n-zh_tw = {
-    buildInputs = [ "ECM" "Gettext" "KDE4" "KF5DocTools" "KF5I18n" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-runtime = {
-    buildInputs = [ "Alsa" "BZip2" "Exiv2" "GLIB2" "Gpgme" "JPEG" "KActivities" "KDE4" "KDeclarative" "KdepimLibs" "LibAttica" "LibGcrypt" "LibLZMA" "LibSSH" "NepomukCore" "NetworkManager" "OpenEXR" "PulseAudio" "QCA2" "QGpgme" "QNtrack" "SLP" "Samba" "SharedMimeInfo" "Soprano" ];
-    nativeBuildInputs = [ "MD5SUM_EXECUTABLE" "WINDRES_EXECUTABLE" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [ "SharedMimeInfo" ];
-  };
-
-  kde-wallpapers = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kde-workspace = {
-    buildInputs = [ "Akonadi" "Boost" "DBusMenuQt" "Fontconfig" "Freetype" "GLIB2" "JPEG" "KActivities" "KDE4" "KDeclarative" "KdepimLibs" "NepomukCore" "OpenGL" "OpenGLES" "PCIUTILS" "PNG" "Prison" "PythonLibrary" "QImageBlitz" "QJSON" "Qalculate" "Qt4" "RAW1394" "Sensors" "Soprano" "Strigi" "UDev" "USB" "Wayland" "X11" "X11_XCB" "XCB" "Xmms" "ZLIB" "libgps" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdeartwork = {
-    buildInputs = [ "Eigen3" "KDE4" "KDE4Workspace" "Kexiv2" "OpenGL" "Xscreensaver" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdeedu-data = {
-    buildInputs = [ "ECM" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdegraphics-mobipocket = {
-    buildInputs = [ "KDE4" "Strigi" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdegraphics-strigi-analyzer = {
-    buildInputs = [ "KDE4" "OpenEXR" "Strigi" "TIFF" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdegraphics-thumbnailers = {
-    buildInputs = [ "KDE4" "Kdcraw" "Kexiv2" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdelibs = {
-    buildInputs = [ "ACL" "AGG" "ASPELL" "Automoc4" "Avahi" "BZip2" "Blitz" "BlueZ" "Carbon" "DBusMenuQt" "DNSSD" "DocBookXML" "DocBookXSL" "ENCHANT" "Eigen2" "FAM" "FFmpeg" "Flac" "Flex" "GIF" "GObject" "GSSAPI" "GStreamer" "Grantlee" "HSPELL" "HUNSPELL" "HUpnp" "IOKit" "JPEG" "Jasper" "KDE4" "KDE4Internal" "LCMS" "LibArt" "LibAttica" "LibXml2" "Libintl" "OpenEXR" "OpenSSL" "PCRE" "PNG" "QCA2" "QImageBlitz" "Qt4" "SharedDesktopOntologies" "SharedMimeInfo" "Soprano" "Sqlite" "Strigi" "UDev" "USB" "Xine" "Xmms" "ZLIB" ];
-    nativeBuildInputs = [ "BISON" "FLEX" "LibXslt" "Perl" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [ "SharedMimeInfo" ];
-  };
-
-  kdenetwork-filesharing = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdenetwork-strigi-analyzers = {
-    buildInputs = [ "Boost" "KDE4" "Strigi" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdenlive = {
-    buildInputs = [ "ECM" "Git" "KF5" "KF5Archive" "KF5Bookmarks" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5DocTools" "KF5GuiAddons" "KF5IconThemes" "KF5KIO" "KF5NewStuff" "KF5Notifications" "KF5NotifyConfig" "KF5Plotting" "KF5TextWidgets" "KF5WidgetsAddons" "KF5XmlGui" "LibV4L2" "MLT" "OpenGL" "Qt5" "Qt5Core" "Qt5DBus" "Qt5OpenGL" "Qt5Script" "Qt5Svg" "Qt5Test" "Qt5Widgets" "SDL" "SharedMimeInfo" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [ "SharedMimeInfo" ];
-  };
-
-  kdepim = {
-    buildInputs = [ "Akonadi" "Baloo" "Boost" "Git" "Grantlee" "KDE4" "KdepimLibs" "LibKGAPI2" "Prison" "QGpgme" "QJSON" "Sasl2" "Xsltproc" "ZLIB" ];
-    nativeBuildInputs = [ "DBLATEX_EXECUTABLE" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdepim-runtime = {
-    buildInputs = [ "AccountsQt" "Akonadi" "Boost" "KDE4" "KdepimLibs" "LibKFbAPI" "LibKGAPI2" "Libkolab" "Libkolabxml" "QJSON" "Qt4" "Sasl2" "SharedMimeInfo" "SignOnQt" "Xsltproc" ];
-    nativeBuildInputs = [ "_testrunner" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [ "SharedMimeInfo" ];
-  };
-
-  kdepimlibs = {
-    buildInputs = [ "Akonadi" "Boost" "Gpgme" "KDE4" "Ldap" "LibXml2" "Libical" "Prison" "QJSON" "Sasl2" "SharedMimeInfo" "Xsltproc" ];
-    nativeBuildInputs = [ "LibXslt" "PERL_EXECUTABLE" "_testrunner" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [ "SharedMimeInfo" ];
-  };
-
-  kdesdk-kioslaves = {
-    buildInputs = [ "KDE4" "SVN" ];
-    nativeBuildInputs = [ "Perl" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdesdk-strigi-analyzers = {
-    buildInputs = [ "KDE4" "Strigi" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdesdk-thumbnailers = {
-    buildInputs = [ "GettextPO" "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdewebdev = {
-    buildInputs = [ "KDE4" "KdepimLibs" "LibTidy" "RUBY" "ZLIB" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdf = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kdiamond = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5KDEGames" "KF5NotifyConfig" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5NO_MODULE" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kfloppy = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kfourinline = {
-    buildInputs = [ "ECM" "KF5" "KF5Completion" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5DNSSD" "KF5Declarative" "KF5I18n" "KF5IconThemes" "KF5ItemModels" "KF5ItemViews" "KF5KDEGames" "KF5KDELibs4Support" "KF5KIO" "KF5NotifyConfig" "KF5XmlGui" "Qt5" "Qt5NO_MODULE" "Qt5Qml" "Qt5Quick" "Qt5QuickWidgets" "Qt5Svg" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kgamma = {
-    buildInputs = [ "KDE4" "X11" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kgeography = {
-    buildInputs = [ "ECM" "KF5" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DocTools" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5Service" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5Core" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kget = {
-    buildInputs = [ "Boost" "KDE4" "KDE4Workspace" "KTorrent" "LibMms" "NepomukCore" "NepomukWidgets" "QCA2" "QGpgme" "SharedDesktopOntologies" "Soprano" "Sqlite" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kgoldrunner = {
-    buildInputs = [ "KDE4" "KDEGames" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kgpg = {
-    buildInputs = [ "Gpgme" "KDE4" "KdepimLibs" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  khangman = {
-    buildInputs = [ "ECM" "KF5" "KF5Completion" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5Crash" "KF5Declarative" "KF5DocTools" "KF5I18n" "KF5NewStuff" "KF5Notifications" "KF5XmlGui" "LibKEduVocDocument" "Qt5" "Qt5Core" "Qt5Qml" "Qt5Quick" "Qt5QuickWidgets" "Qt5Svg" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kig = {
-    buildInputs = [ "BoostPython" "ECM" "KF5Archive" "KF5ConfigWidgets" "KF5DocTools" "KF5Emoticons" "KF5I18n" "KF5IconThemes" "KF5ItemModels" "KF5KDELibs4Support" "KF5Parts" "KF5TextEditor" "KF5XmlGui" "Qt5PrintSupport" "Qt5Svg" "Qt5Test" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kigo = {
-    buildInputs = [ "KDE4" "KDEGames" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  killbots = {
-    buildInputs = [ "ECM" "KF5" "KF5Completion" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5KDEGames" "KF5KIO" "KF5NotifyConfig" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5NO_MODULE" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kiriki = {
-    buildInputs = [ "KDE4" "KDEGames" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kiten = {
-    buildInputs = [ "ECM" "KF5" "KF5Archive" "KF5Completion" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DocTools" "KF5I18n" "KF5KHtml" "KF5XmlGui" "Qt5" "Qt5Core" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kjumpingcube = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5I18n" "KF5ItemModels" "KF5KDEGames" "KF5KDELibs4Support" "KF5KIO" "KF5NewStuff" "KF5NotifyConfig" "KF5TextWidgets" "KF5WidgetsAddons" "KF5WindowSystem" "KF5XmlGui" "Phonon4Qt5" "Qt5" "Qt5NO_MODULE" "Qt5Qml" "Qt5Quick" "Qt5QuickWidgets" "Qt5Svg" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  klettres = {
-    buildInputs = [ "ECM" "KF5" "KF5Completion" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DocTools" "KF5Emoticons" "KF5I18n" "KF5ItemModels" "KF5KDELibs4Support" "KF5NewStuff" "KF5WidgetsAddons" "Phonon4Qt5" "Qt5" "Qt5Core" "Qt5Svg" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  klickety = {
-    buildInputs = [ "KDE4" "KDEGames" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  klines = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5KDEGames" "KF5KIO" "KF5NewStuff" "KF5Service" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5NO_MODULE" "Qt5Qml" "Qt5Quick" "Qt5QuickWidgets" "Qt5Svg" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kmag = {
-    buildInputs = [ "KDE4" "QAccessibilityClient" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kmahjongg = {
-    buildInputs = [ "KDE4" "KDEGames" "LibKMahjongg" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kmines = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5I18n" "KF5KDEGames" "KF5KIO" "KF5NotifyConfig" "KF5TextWidgets" "KF5WidgetsAddons" "KF5XmlGui" "Phonon4Qt5" "Qt5" "Qt5NO_MODULE" "Qt5Qml" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kmix = {
-    buildInputs = [ "Alsa" "Canberra" "ECM" "GLIB2" "KDE4" "KF5" "KF5ConfigWidgets" "KF5DBusAddons" "KF5GlobalAccel" "KF5I18n" "KF5IconThemes" "KF5KCMUtils" "KF5KDELibs4Support" "KF5XmlGui" "Phonon" "PulseAudio" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kmousetool = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kmouth = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kmplot = {
-    buildInputs = [ "ECM" "KF5" "KF5GuiAddons" "KF5I18n" "KF5KDELibs4Support" "KF5Parts" "KF5WidgetsAddons" "Qt5" "Qt5Core" "Qt5Gui" "Qt5PrintSupport" "Qt5Svg" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  knavalbattle = {
-    buildInputs = [ "KDE4" "KDEGames" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  knetwalk = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5KDEGames" "KF5KIO" "KF5NotifyConfig" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5NO_MODULE" "Qt5Qml" "Qt5Quick" "Qt5QuickWidgets" "Qt5Svg" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kolf = {
-    buildInputs = [ "KDE4" "KDEGames" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kollision = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5I18n" "KF5KDEGames" "KF5KIO" "KF5NewStuff" "KF5NotifyConfig" "KF5TextWidgets" "KF5WidgetsAddons" "KF5XmlGui" "Phonon4Qt5" "Qt5" "Qt5NO_MODULE" "Qt5Qml" "Qt5Quick" "Qt5QuickWidgets" "Qt5Svg" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kolourpaint = {
-    buildInputs = [ "KDE4" "QImageBlitz" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kompare = {
-    buildInputs = [ "ECM" "KF5" "KF5Codecs" "KF5Config" "KF5CoreAddons" "KF5DocTools" "KF5IconThemes" "KF5JobWidgets" "KF5Parts" "KF5TextEditor" "KF5WidgetsAddons" "LibKompareDiff2" "Qt5" "Qt5Core" "Qt5PrintSupport" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  konquest = {
-    buildInputs = [ "KDE4" "KDEGames" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  konsole = {
-    buildInputs = [ "ECM" "KF5" "KF5Bookmarks" "KF5Completion" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DocTools" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5Init" "KF5KDELibs4Support" "KF5KIO" "KF5Notifications" "KF5NotifyConfig" "KF5Parts" "KF5Pty" "KF5Service" "KF5TextWidgets" "KF5WidgetsAddons" "KF5WindowSystem" "KF5XmlGui" "Qt5" "Qt5Core" "Qt5DBus" "Qt5Script" "Qt5Test" "Qt5Widgets" "X11" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kopete = {
-    buildInputs = [ "Alsa" "Boost" "Expat" "GIF" "GLIB2" "IDN" "Jasper" "JsonCpp" "KDE4" "KdepimLibs" "Kleopatra" "LibMeanwhile" "LibOTR" "LibV4L2" "LibXml2" "Libgadu" "Libmsn" "LiboRTP" "Mediastreamer" "OpenSSL" "QCA2" "QGpgme" "QImageBlitz" "Qt4" "Qt5Core" "Qt5Network" "Qt5QUIET" "SRTP" "Speex" "Sqlite" "Xmms" "ZLIB" ];
-    nativeBuildInputs = [ "LibXslt" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kpat = {
-    buildInputs = [ "ECM" "KF5" "KF5Completion" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5Declarative" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5KDEGames" "KF5KIO" "KF5NewStuff" "KF5NotifyConfig" "KF5TextWidgets" "KF5WidgetsAddons" "KF5XmlGui" "Phonon4Qt5" "Qt5" "Qt5NO_MODULE" "Qt5Qml" "Qt5Quick" "Qt5QuickWidgets" "Qt5Svg" "Qt5Test" "Qt5Widgets" "SharedMimeInfo" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [ "SharedMimeInfo" ];
-  };
-
-  kppp = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kqtquickcharts = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  krdc = {
-    buildInputs = [ "KDE4" "LibNXCL" "LibVNCServer" "TelepathyQt4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kremotecontrol = {
-    buildInputs = [ "KDE4" "Qt4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kreversi = {
-    buildInputs = [ "KDE4" "KDEGames" "KDeclarative" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  krfb = {
-    buildInputs = [ "KDE4" "KTp" "LibVNCServer" "TelepathyQt4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kruler = {
-    buildInputs = [ "ECM" "KF5" "KF5DocTools" "KF5I18n" "KF5Notifications" "KF5WindowSystem" "KF5XmlGui" "Qt5" "Qt5Core" "Qt5Widgets" "Qt5X11Extras" "X11" "XCB" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ksaneplugin = {
-    buildInputs = [ "KDE4" "KSane" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kscd = {
-    buildInputs = [ "Alsa" "KDE4" "MusicBrainz3" "Qt4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kshisen = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5CoreAddons" "KF5DNSSD" "KF5Declarative" "KF5DocTools" "KF5KDEGames" "KF5KIO" "KF5KMahjongglib" "KF5NewStuff" "KF5XmlGui" "Phonon4Qt5" "Qt5" "Qt5Core" "Qt5Gui" "Qt5NO_MODULE" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ksirk = {
-    buildInputs = [ "KDE4" "KDEGames" "QCA2" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ksnakeduel = {
-    buildInputs = [ "KDE4" "KDEGames" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ksnapshot = {
-    buildInputs = [ "KDE4" "Kipi" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kspaceduel = {
-    buildInputs = [ "KDE4" "KDEGames" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ksquares = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5KDEGames" "KF5KIO" "KF5NotifyConfig" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5NO_MODULE" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kstars = {
-    buildInputs = [ "AstrometryNet" "CFitsio" "ECM" "Eigen3" "INDI" "KF5" "KF5Config" "KF5DBusAddons" "KF5DocTools" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5Init" "KF5JobWidgets" "KF5KIO" "KF5NewStuff" "KF5Plotting" "KF5TextEditor" "KF5WidgetsAddons" "KF5WindowSystem" "KF5XmlGui" "OpenGL" "Qt5" "Qt5Gui" "Qt5Multimedia" "Qt5OpenGL" "Qt5PrintSupport" "Qt5Qml" "Qt5Quick" "Qt5Sql" "Qt5Svg" "Qt5Test" "Qt5Xml" "WCSLIB" "Xplanet" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ksudoku = {
-    buildInputs = [ "KDE4" "KDEGames" "OpenGL" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ksystemlog = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kteatime = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5Crash" "KF5DocTools" "KF5I18n" "KF5IconThemes" "KF5Notifications" "KF5NotifyConfig" "KF5TextWidgets" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5Core" "Qt5DBus" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktimer = {
-    buildInputs = [ "ECM" "KF5" "KF5DBusAddons" "KF5DocTools" "KF5I18n" "KF5IconThemes" "KF5KIO" "KF5Notifications" "KF5WidgetsAddons" "KF5XmlGui" "Qt5" "Qt5Core" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktouch = {
-    buildInputs = [ "KDE4" "KDeclarative" "X11" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktp-accounts-kcm = {
-    buildInputs = [ "AccountsFileDir" "AccountsQt5" "ECM" "Intltool" "KAccounts" "KF5" "KF5Codecs" "KF5ConfigWidgets" "KF5CoreAddons" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5KCMUtils" "KF5KIO" "KF5WidgetsAddons" "Qt5" "Qt5Core" "Qt5DBus" "Qt5Widgets" "SignOnQt5" "TelepathyQt5" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktp-approver = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5DBusAddons" "KF5I18n" "KF5Notifications" "KF5Service" "Qt5" "Qt5Network" "Qt5Widgets" "TelepathyQt5" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktp-auth-handler = {
-    buildInputs = [ "AccountsQt5" "ECM" "KAccounts" "KF5" "KF5I18n" "KF5KIO" "KF5Wallet" "KF5WebKit" "KF5WidgetsAddons" "KTp" "Qca-qt5" "Qca-qt5-ossl" "Qt5" "Qt5Core" "Qt5DBus" "Qt5Gui" "Qt5Network" "SignOnQt5" "TelepathyQt5" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktp-common-internals = {
-    buildInputs = [ "AccountsQt5" "Doxygen" "ECM" "KAccounts" "KF5" "KF5Config" "KF5CoreAddons" "KF5IconThemes" "KF5KCMUtils" "KF5KIO" "KF5Notifications" "KF5NotifyConfig" "KF5People" "KF5TextEditor" "KF5Wallet" "KF5WidgetsAddons" "KF5WindowSystem" "LibOTR" "Libgcrypt" "Qt5" "Qt5Qml" "Qt5Sql" "Qt5Test" "TelepathyLoggerQt" "TelepathyQt5" "TelepathyQt5Service" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [ "KF5Wallet" "TelepathyLoggerQt" "TelepathyQt5" ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktp-contact-list = {
-    buildInputs = [ "ECM" "KF5" "KF5DBusAddons" "KF5I18n" "KF5IconThemes" "KF5KCMUtils" "KF5KIO" "KF5Notifications" "KF5NotifyConfig" "KF5People" "KF5WindowSystem" "KF5XmlGui" "KTp" "Qt5" "Qt5Widgets" "Qt5Xml" "TelepathyQt5" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktp-contact-runner = {
-    buildInputs = [ "ECM" "KF5" "KF5I18n" "KF5Runner" "KF5Service" "KTp" "Qt5" "Qt5Core" "Qt5DBus" "Qt5Network" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktp-desktop-applets = {
-    buildInputs = [ "ECM" "KF5" "KF5Plasma" "KF5WindowSystem" "Qt5" "Qt5Qml" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktp-filetransfer-handler = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5CoreAddons" "KF5I18n" "KF5KIO" "KTp" "Qt5" "Qt5Core" "Qt5DBus" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktp-kded-module = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5DBusAddons" "KF5I18n" "KF5IdleTime" "KF5KCMUtils" "KF5KIO" "KF5Notifications" "KF5WidgetsAddons" "KTp" "Qt5" "Qt5Concurrent" "Qt5Network" "Qt5Sql" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktp-send-file = {
-    buildInputs = [ "ECM" "KF5" "KF5I18n" "KF5IconThemes" "KF5KCMUtils" "KF5KIO" "KTp" "Qt5" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktp-text-ui = {
-    buildInputs = [ "ECM" "KF5" "KF5Archive" "KF5Emoticons" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5KCMUtils" "KF5KIO" "KF5Notifications" "KF5NotifyConfig" "KF5People" "KF5Service" "KF5Sonnet" "KF5TextWidgets" "KF5WebKit" "KF5WidgetsAddons" "KF5WindowSystem" "KF5XmlGui" "KTp" "Qt5" "Qt5WebKitWidgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktuberling = {
-    buildInputs = [ "KDE4" "KDEGames" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kturtle = {
-    buildInputs = [ "ECM" "KF5" "KF5I18n" "KF5KDELibs4Support" "KF5KIO" "KF5NewStuff" "Qt5" "Qt5Core" "Qt5Gui" "Qt5Svg" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  ktux = {
-    buildInputs = [ "KDE4" "KDE4Workspace" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kubrick = {
-    buildInputs = [ "KDE4" "KDEGames" "OpenGL" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kuser = {
-    buildInputs = [ "KDE4" "KdepimLibs" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kwalletmanager = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  kwordquiz = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5Crash" "KF5Declarative" "KF5DocTools" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5KDELibs4Support" "KF5KIO" "KF5NewStuff" "KF5Notifications" "KF5NotifyConfig" "KF5Sonnet" "KF5XmlGui" "LibKEduVocDocument" "Phonon4Qt5" "Qt5" "Qt5Core" "Qt5PrintSupport" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libkcddb = {
-    buildInputs = [ "KDE4" "MusicBrainz5" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libkcompactdisc = {
-    buildInputs = [ "Alsa" "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libkdcraw = {
-    buildInputs = [ "KDE4" "LibRaw" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libkdeedu = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libkdegames = {
-    buildInputs = [ "ECM" "KF5" "KF5Archive" "KF5Bookmarks" "KF5Codecs" "KF5Completion" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5Crash" "KF5DBusAddons" "KF5DNSSD" "KF5Declarative" "KF5GlobalAccel" "KF5GuiAddons" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5JobWidgets" "KF5KDELibs4Support" "KF5KIO" "KF5NewStuff" "KF5Service" "KF5TextWidgets" "KF5WidgetsAddons" "KF5XmlGui" "OpenAL" "Qt5" "Qt5NO_MODULE" "Qt5Qml" "Qt5Quick" "Qt5QuickWidgets" "Qt5Svg" "Qt5Test" "Qt5Widgets" "SndFile" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [ "KF5Completion" "KF5Config" "KF5ConfigWidgets" "KF5I18n" "KF5KDELibs4Support" "KF5WidgetsAddons" "Qt5Network" "Qt5Qml" "Qt5QuickWidgets" "Qt5Widgets" "Qt5Xml" ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libkeduvocdocument = {
-    buildInputs = [ "ECM" "KF5" "KF5Archive" "KF5I18n" "KF5KIO" "Qt5" "Qt5NO_MODULE" "Qt5Test" "Qt5Xml" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libkexiv2 = {
-    buildInputs = [ "Exiv2" "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libkface = {
-    buildInputs = [ "KDE4" "Qt4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libkgeomap = {
-    buildInputs = [ "KDE4" "Marble" "MarbleWidget" "Qt4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libkipi = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libkmahjongg = {
-    buildInputs = [ "ECM" "KF5" "KF5Completion" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5I18n" "KF5WidgetsAddons" "Qt5" "Qt5Core" "Qt5Gui" "Qt5NO_MODULE" "Qt5Svg" "Qt5Test" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [ "KF5ConfigWidgets" "Qt5Gui" ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libkomparediff2 = {
-    buildInputs = [ "ECM" "KF5" "KF5Codecs" "KF5Config" "KF5CoreAddons" "KF5I18n" "KF5KIO" "KF5Parts" "KF5XmlGui" "Qt5Core" "Qt5NO_MODULE" "Qt5Test" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  libksane = {
-    buildInputs = [  ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  lokalize = {
-    buildInputs = [ "ECM" "HUNSPELL" "KF5" "KF5Config" "KF5CoreAddons" "KF5DocTools" "KF5I18n" "KF5KIO" "KF5Kross" "KF5Notifications" "KF5Sonnet" "KF5XmlGui" "Qt5" "Qt5Core" "Qt5DBus" "Qt5Script" "Qt5Sql" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  lskat = {
-    buildInputs = [ "KDE4" "KDEGames" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  marble = {
-    buildInputs = [ "KDE4" "Phonon" "Protobuf" "PyQt4" "PythonLibrary" "QextSerialPort" "Qt4" "Qt5Concurrent" "Qt5Core" "Qt5Designer" "Qt5Network" "Qt5PrintSupport" "Qt5Quick" "Qt5Script" "Qt5Sql" "Qt5Svg" "Qt5Test" "Qt5WebKitWidgets" "Qt5Widgets" "Qt5Xml" "QtLocation" "SIP" "SharedMimeInfo" "ZLIB" "libgps" "liblocation" "libshp" "libwlocate" "quazip" ];
-    nativeBuildInputs = [ "Perl" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [ "SharedMimeInfo" ];
-  };
-
-  mplayerthumbs = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  okteta = {
-    buildInputs = [ "ECM" "KF5" "KF5Bookmarks" "KF5Codecs" "KF5Completion" "KF5ConfigWidgets" "KF5DBusAddons" "KF5DocTools" "KF5I18n" "KF5IconThemes" "KF5KCMUtils" "KF5KIO" "KF5NewStuff" "KF5Parts" "KF5Service" "KF5WidgetsAddons" "KF5XmlGui" "Qca-qt5" "Qt5" "Qt5Core" "Qt5Designer" "Qt5NO_MODULE" "Qt5Network" "Qt5PrintSupport" "Qt5QUIET" "Qt5Script" "Qt5ScriptTools" "Qt5Test" "Qt5Widgets" "Qt5Xml" "SharedMimeInfo" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [ "KF5KIO" "KastenCore" "KastenGui" "OktetaCore" "OktetaGui" "OktetaKastenCore" "OktetaKastenGui" "Qt5Core" "Qt5Gui" "Qt5Widgets" ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [ "SharedMimeInfo" ];
-  };
-
-  okular = {
-    buildInputs = [ "ActiveApp" "CHM" "DjVuLibre" "EPub" "Freetype" "JPEG" "KActivities" "KDE4" "Kexiv2" "LibKScreen" "LibSpectre" "Poppler" "QCA2" "QImageBlitz" "QMobipocket" "TIFF" "ZLIB" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  oxygen-icons = {
-    buildInputs = [  ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  pairs = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  palapeli = {
-    buildInputs = [ "KDE4" "KDEGames" "SharedMimeInfo" ];
-    nativeBuildInputs = [ "QVORONOI_EXECUTABLE" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [ "SharedMimeInfo" ];
-  };
-
-  parley = {
-    buildInputs = [ "ECM" "KF5" "KF5Config" "KF5CoreAddons" "KF5Crash" "KF5DocTools" "KF5I18n" "KF5KCMUtils" "KF5KHtml" "KF5KIO" "KF5Kross" "KF5MODULE" "KF5NewStuff" "KF5Notifications" "KF5Sonnet" "KF5XmlGui" "KF5docbook" "KF5produce" "KF5the" "LibAttica" "LibKEduVocDocument" "LibXml2" "Qt5" "Qt5Concurrent" "Qt5Core" "Qt5Multimedia" "Qt5Svg" "Qt5Test" ];
-    nativeBuildInputs = [ "LibXslt" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  picmi = {
-    buildInputs = [ "KDE4" "KDEGames" "Qt4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  poxml = {
-    buildInputs = [ "Gettext" "GettextPO" "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  print-manager = {
-    buildInputs = [ "CUPS" "ECM" "KF5" "KF5Config" "KF5ConfigWidgets" "KF5CoreAddons" "KF5DBusAddons" "KF5I18n" "KF5IconThemes" "KF5ItemViews" "KF5KCMUtils" "KF5KIO" "KF5Notifications" "KF5Plasma" "KF5WidgetsAddons" "KF5WindowSystem" "Qt5" "Qt5Core" "Qt5DBus" "Qt5Network" "Qt5Qml" "Qt5Quick" "Qt5Widgets" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  rocs = {
-    buildInputs = [ "Boost" "ECM" "Grantlee5" "KF5" "KF5Archive" "KF5Config" "KF5CoreAddons" "KF5Declarative" "KF5DocTools" "KF5I18n" "KF5ItemViews" "KF5TextEditor" "KF5XmlGui" "Qt5" "Qt5Concurrent" "Qt5Core" "Qt5Gui" "Qt5NO_MODULE" "Qt5QUIET" "Qt5QuickWidgets" "Qt5Script" "Qt5ScriptTools" "Qt5Svg" "Qt5Test" "Qt5WebKit" "Qt5WebKitWidgets" "Qt5Widgets" "Qt5XmlPatterns" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  signon-kwallet-extension = {
-    buildInputs = [ "ECM" "KF5" "KF5Wallet" "Qt5" "Qt5Core" "Qt5DBus" "Qt5QUIET" "Qt5Test" "SignOnExtension" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  step = {
-    buildInputs = [ "ECM" "Eigen3" "GSL" "KF5" "KF5Config" "KF5DocTools" "KF5KDELibs4Support" "KF5KHtml" "KF5NewStuff" "KF5Plotting" "Qalculate" "Qt5" "Qt5NO_MODULE" "Qt5OpenGL" "Qt5PrintSupport" "Qt5QUIET" "Qt5Qml" "Qt5Quick" "Qt5Svg" "Qt5Test" "Qt5Xml" ];
-    nativeBuildInputs = [ "PythonInterp" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  superkaramba = {
-    buildInputs = [ "KDE4" "PythonLibs" "QImageBlitz" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  svgpart = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  sweeper = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  umbrello = {
-    buildInputs = [ "KDE4" "LibXml2" ];
-    nativeBuildInputs = [ "LibXslt" "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-  zeroconf-ioslave = {
-    buildInputs = [ "KDE4" ];
-    nativeBuildInputs = [ "cmake" ];
-    propagatedBuildInputs = [  ];
-    propagatedNativeBuildInputs = [  ];
-    propagatedUserEnvPkgs = [  ];
-  };
-
-}
diff --git a/pkgs/applications/kde-apps-15.04/dependencies.sh b/pkgs/applications/kde-apps-15.04/dependencies.sh
deleted file mode 100755
index e00c7770ab8..00000000000
--- a/pkgs/applications/kde-apps-15.04/dependencies.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/sh
-
-manifestXML=$(nix-build -E 'with (import ../../.. {}); autonix.writeManifestXML ./manifest.nix')
-
-autonixDepsKf5=""
-if [[ -z $1 ]]; then
-    autonixDepsKF5=$(nix-build ../../.. -A haskellngPackages.autonix-deps-kf5)/bin
-else
-    autonixDepsKF5="$1/dist/build/kf5-deps"
-fi
-
-exec ${autonixDepsKF5}/kf5-deps "${manifestXML}"
diff --git a/pkgs/applications/kde-apps-15.04/kde-workspace/ksysguard-0001-disable-signalplottertest.patch b/pkgs/applications/kde-apps-15.04/kde-workspace/ksysguard-0001-disable-signalplottertest.patch
new file mode 100644
index 00000000000..cd19b7e2d72
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.04/kde-workspace/ksysguard-0001-disable-signalplottertest.patch
@@ -0,0 +1,36 @@
+From 38f35dcec38458f7192424b3d63bc0c614bb86e0 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel <ttuegel@gmail.com>
+Date: Mon, 7 Sep 2015 18:55:44 -0500
+Subject: [PATCH] ksysguard disable signalplottertest
+
+---
+ libs/ksysguard/tests/CMakeLists.txt | 16 ----------------
+ 1 file changed, 16 deletions(-)
+
+diff --git a/libs/ksysguard/tests/CMakeLists.txt b/libs/ksysguard/tests/CMakeLists.txt
+index d472fd7..f178b71 100644
+--- a/libs/ksysguard/tests/CMakeLists.txt
++++ b/libs/ksysguard/tests/CMakeLists.txt
+@@ -14,19 +14,3 @@ target_link_libraries(processtest processui ${KDE4_KDECORE_LIBS} ${QT_QTTEST_LIB
+ set( signalplotterbenchmark_SRCS signalplotterbenchmark.cpp ../signalplotter/ksignalplotter.cpp)
+ kde4_add_unit_test( signalplotterbenchmark TESTNAME ksysguard-signalplottertest ${signalplotterbenchmark_SRCS} )
+ target_link_libraries( signalplotterbenchmark ${KDE4_KDEUI_LIBS} ${QT_QTTEST_LIBRARY} ${QT_QTBENCHMARK_LIBRARY} )
+-
+-
+-# KGraphicsSignalPlotter benchmark
+-set( graphicssignalplotterbenchmark_SRCS graphicssignalplotterbenchmark.cpp ../signalplotter/kgraphicssignalplotter.cpp)
+-kde4_add_unit_test( graphicssignalplotterbenchmark TESTNAME ksysguard-signalplottertest ${graphicssignalplotterbenchmark_SRCS} )
+-target_link_libraries( graphicssignalplotterbenchmark ${KDE4_KDEUI_LIBS} ${QT_QTTEST_LIBRARY} ${QT_QTBENCHMARK_LIBRARY} )
+-
+-
+-# KSignalPlotter unit test
+-set( signalplottertest_SRCS signalplottertest.cpp ../signalplotter/ksignalplotter.cpp)
+-kde4_add_unit_test( signalplottertest TESTNAME ksysguard-signalplottertest ${signalplottertest_SRCS} )
+-target_link_libraries( signalplottertest ${KDE4_KDEUI_LIBS} ${QT_QTTEST_LIBRARY} )
+-
+-
+-
+-
+-- 
+2.5.0
+
diff --git a/pkgs/applications/kde-apps-15.04/kf5-renames.json b/pkgs/applications/kde-apps-15.04/kf5-renames.json
new file mode 100644
index 00000000000..4da5f8272ee
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.04/kf5-renames.json
@@ -0,0 +1,70 @@
+{
+    "kf5widgetsaddons": "kwidgetsaddons",
+    "kf5texteditor": "ktexteditor",
+    "kf5designerplugin": "kdesignerplugin",
+    "kf5bookmarks": "kbookmarks",
+    "kf5frameworkintegration": "frameworkintegration",
+    "kf5package": "kpackage",
+    "kf5archive": "karchive",
+    "kf5plasma": "plasma-framework",
+    "kf5kcmutils": "kcmutils",
+    "kf5configwidgets": "kconfigwidgets",
+    "ctest": "attica",
+    "kf5kio": "kio",
+    "kf5networkmanagerqt": "networkmanager-qt",
+    "kf5coreaddons": "kcoreaddons",
+    "kf5guiaddons": "kguiaddons",
+    "kf5jobwidgets": "kjobwidgets",
+    "kf5modemmanagerqt": "modemmanager-qt",
+    "kf5runner": "krunner",
+    "kf5globalaccel": "kglobalaccel",
+    "kf5dbusaddons": "kdbusaddons",
+    "kf5crash": "kcrash",
+    "kf5itemviews": "kitemviews",
+    "kf5doctools": "kdoctools",
+    "kf5i18n": "ki18n",
+    "kf5webkit": "kdewebkit",
+    "kf5newstuff": "knewstuff",
+    "kded": "kded",
+    "kf5notifications": "knotifications",
+    "kf5activitiesexperimentalstats": "kactivities",
+    "kf5dnssd": "kdnssd",
+    "kf5notifyconfig": "knotifyconfig",
+    "kf5iconthemes": "kiconthemes",
+    "kf5js": "kjs",
+    "kf5kde4support": "kdelibs4support",
+    "kf5parts": "kparts",
+    "backend": "plasma-framework",
+    "kf5completion": "kcompletion",
+    "kf5threadweaver": "threadweaver",
+    "kf5mediaplayer": "kmediaplayer",
+    "kf5plasmaquick": "plasma-framework",
+    "kf5wallet": "kwallet",
+    "kf5xmlgui": "kxmlgui",
+    "kf5attica": "attica",
+    "kf5declarative": "kdeclarative",
+    "kf5config": "kconfig",
+    "kf5init": "kinit",
+    "kf5textwidgets": "ktextwidgets",
+    "kf5jsembed": "kjsembed",
+    "kf5codecs": "kcodecs",
+    "kf5service": "kservice",
+    "kf5sonnet": "sonnet",
+    "kf5kdelibs4support": "kdelibs4support",
+    "kf5pty": "kpty",
+    "kf5solid": "solid",
+    "kf5auth": "kauth",
+    "ecm": "extra-cmake-modules",
+    "kf5activities": "kactivities",
+    "kf5plotting": "kplotting",
+    "kf5people": "kpeople",
+    "kf5emoticons": "kemoticons",
+    "kf5kross": "kross",
+    "kf5su": "kdesu",
+    "kf5khtml": "khtml",
+    "kf5unitconversion": "kunitconversion",
+    "kf5idletime": "kidletime",
+    "kf5windowsystem": "kwindowsystem",
+    "kf5xmlrpcclient": "kxmlrpcclient",
+    "kf5itemmodels": "kitemmodels"
+}
\ No newline at end of file
diff --git a/pkgs/applications/kde-apps-15.04/manifest.nix b/pkgs/applications/kde-apps-15.04/manifest.nix
deleted file mode 100644
index 09d89ef7045..00000000000
--- a/pkgs/applications/kde-apps-15.04/manifest.nix
+++ /dev/null
@@ -1,4072 +0,0 @@
-# This file is generated automatically. DO NOT EDIT!
-{ stdenv, fetchurl, mirror }:
-[
-  {
-    name = stdenv.lib.nameFromURL "kaccessible-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/51djz0y5i1mr90pv9fmxi0vwzrrj2ygq-kaccessible-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kaccessible-15.04.0.tar.xz";
-      sha256 = "1q90ak7yxvvi5scxajb3d4nid2h7y7xfvdbqfd9a6w312r6lcvz8";
-      name = "kaccessible-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kuser-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/4q0xn6h1mf6plwikl16v490hbcm1c3jf-kuser-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kuser-15.04.0.tar.xz";
-      sha256 = "0fgjfd76iiyp98013x9la61qxnw454kcrl7vpikg37hqaqbzmgkh";
-      name = "kuser-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kiriki-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/p393dfammjyxak0wm3vblzcb8n7r0gnw-kiriki-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kiriki-15.04.0.tar.xz";
-      sha256 = "0cg4iijyk96lwc48ifs5arip3y51wpb4fd4slgjbkhvg4fc859sa";
-      name = "kiriki-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdepimlibs-4.14.7.tar.xz" ".tar";
-    store = "/nix/store/819bf5a5q4b4l0w9yi099capf9il9whz-kdepimlibs-4.14.7.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdepimlibs-4.14.7.tar.xz";
-      sha256 = "1cmqyx0shm0ss48pjh9jm9g9bghkkl6fg5wgw4yhs4dgz1nj9qn1";
-      name = "kdepimlibs-4.14.7.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "amor-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/fmbdfhm9703yaq7x619d1s97il6prp7r-amor-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/amor-15.04.0.tar.xz";
-      sha256 = "167j2qqkivrc2pid11nmnllw2m2amr8d9jvafy54j3i7mcbs788k";
-      name = "amor-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "knavalbattle-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/y9k66adhrcr1vxyzdvsx3zymkd7b4zaa-knavalbattle-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/knavalbattle-15.04.0.tar.xz";
-      sha256 = "0hgwx63g1lrzrszajya4va2pidh2xm1qy7b8iw5xi1yz1khn6cvd";
-      name = "knavalbattle-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kiten-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zb4wpb0g4vbkrnwrk7d54l2dd88cz4b2-kiten-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kiten-15.04.0.tar.xz";
-      sha256 = "0lpvwm20zr7zq7p09igbacqhm7pv4bv7r701nijw5l9l4d58hq3y";
-      name = "kiten-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kwalletmanager-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/4i8v7c1a44idrlpdqc6yk41w6r34259x-kwalletmanager-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kwalletmanager-15.04.0.tar.xz";
-      sha256 = "0c5r6pfinb509a0mn2k31wksiya9b52pjm77bbaq60k1y39fsizc";
-      name = "kwalletmanager-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kalzium-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/6ivi9a4yilhb621zj0kz07yzbxa5wpxs-kalzium-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kalzium-15.04.0.tar.xz";
-      sha256 = "1x3vdi9h5px84cm7k1nbrlakkb13xrc25d6yw22pnfsf3v4n66f5";
-      name = "kalzium-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kfloppy-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7w91cal36byklnn0mzzclgjj5hpjzb2j-kfloppy-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kfloppy-15.04.0.tar.xz";
-      sha256 = "1nmcdzd7zhr4vfxb8lgl7dxfs01wy81kcag36s43hg7mfs5xb0k4";
-      name = "kfloppy-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kolf-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/76g0y1k03dlc50d5wfdgpb2grsy9p0qa-kolf-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kolf-15.04.0.tar.xz";
-      sha256 = "0nzqvq5y2mvh7x2lsq8prkyn99j8137hq5pyk5d9yhla4lpq2lr4";
-      name = "kolf-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "print-manager-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/rmvqcnl3b77hxhcw7z22vx03pi1gk3gp-print-manager-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/print-manager-15.04.0.tar.xz";
-      sha256 = "0yn8dhvpxv5dxdn41c6rzar66gvlqmgb3m9f0rdrxzqmw9xidzrg";
-      name = "print-manager-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "poxml-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/kinljjyys5d6s5rfyhl6jzmh8z5bm92d-poxml-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/poxml-15.04.0.tar.xz";
-      sha256 = "1cziw2ydylsx45s5hrg1bfwk8qv9jbvji3hyzwi6jqc72fpv9q5x";
-      name = "poxml-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kblocks-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/jjkr9khw6fzh7hb4xss9jx2qwz05jral-kblocks-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kblocks-15.04.0.tar.xz";
-      sha256 = "0q32xvajnv7x3fmhax1bmc4f7530cijisn48hpnpkm4g4mn68qb0";
-      name = "kblocks-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdf-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1wrgspd1n890ln1dffghslw86z2ynfz3-kdf-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdf-15.04.0.tar.xz";
-      sha256 = "18i9rbl210vj370n3irjy2ai4vrhg26ivfs37wl0zdvz4i81ncg7";
-      name = "kdf-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkomparediff2-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/krsghsp3cs3wmib774g36933smh1bldv-libkomparediff2-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libkomparediff2-15.04.0.tar.xz";
-      sha256 = "0i9vyc4bfqj22a1v48f3gyfkxl3pi9smsg0lql1bs0x8rsn7iznd";
-      name = "libkomparediff2-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-dev-scripts-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/659kk26hrkssc4xkyda1kwf41ri00csx-kde-dev-scripts-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-dev-scripts-15.04.0.tar.xz";
-      sha256 = "09r8wcln0m5akwjs939dbbz20kdqyxag91028vfmwzkw9r99604y";
-      name = "kde-dev-scripts-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdepim-4.14.7.tar.xz" ".tar";
-    store = "/nix/store/i8i89jlpkd3rmgyfbw8xbv67az4xkmjq-kdepim-4.14.7.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdepim-4.14.7.tar.xz";
-      sha256 = "0hnmpjrcv0qcyn6hagpayza2bjkyd2v8y02rriifq9q99j7rwyj0";
-      name = "kdepim-4.14.7.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-km-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/xdmcjjrfxhwwigf32sbafbakczc9jfyd-kde-l10n-km-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-km-15.04.0.tar.xz";
-      sha256 = "1rv7pp35sgqppqs320pnlpqrjs0ljix9dd92fl2jrfpag15fi887";
-      name = "kde-l10n-km-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-es-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0kz1fd8ha3m8r5kmqa9phr607ayry1ds-kde-l10n-es-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-es-15.04.0.tar.xz";
-      sha256 = "0bjh1x3snldbmfvdamgid23cxv1sn3qwsdpy92h1djb49zbm51a0";
-      name = "kde-l10n-es-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-fi-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/brvc7zjfmcvif2y8n4zrmlva72v243md-kde-l10n-fi-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-fi-15.04.0.tar.xz";
-      sha256 = "0xh66i7wgapi6bhig712mlq8dkaml9dpzsj43dic58xw8bx4n6s4";
-      name = "kde-l10n-fi-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-nn-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/h0hfrfigk06zqqgl0crsah3sqgh05syp-kde-l10n-nn-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-nn-15.04.0.tar.xz";
-      sha256 = "1d2yvvl6rralsw77vg6hmbi84dswf116dpab7r5039nqgxnr8k81";
-      name = "kde-l10n-nn-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-it-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/r2mbi7gj1a4f71cp6xgjxfkbmx1qzzrp-kde-l10n-it-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-it-15.04.0.tar.xz";
-      sha256 = "1izidgcrzyvxka143cpnvrcnf2ddzp8384sjw6bvw32wsxi3v0mp";
-      name = "kde-l10n-it-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-pt_BR-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/kxaxpwzy0bs1675by3qhhvj1hlvvig7a-kde-l10n-pt_BR-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-pt_BR-15.04.0.tar.xz";
-      sha256 = "0s6pc40ig83zjqbgqwhfkxzhp9wcrgac6hs5qhcxbs3awfmxi5hn";
-      name = "kde-l10n-pt_BR-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-kk-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/mxmsybkjr2pr2xwfrxciwf6jjn2mp1vj-kde-l10n-kk-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-kk-15.04.0.tar.xz";
-      sha256 = "0czb1dmrdciim910bnazvsvi7lcvq27bj055f36w6y6l1zgvv8c3";
-      name = "kde-l10n-kk-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-fr-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/cj9bhf10x4rcvcia97l9qhjnzll979ls-kde-l10n-fr-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-fr-15.04.0.tar.xz";
-      sha256 = "0g94wik9q6c9w5x851k76qfk0fknv6ga497vwqka1h4yrmdmc1vl";
-      name = "kde-l10n-fr-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-he-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/pyl52lwdrvfi3xpby5yyi93204jp3mjx-kde-l10n-he-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-he-15.04.0.tar.xz";
-      sha256 = "0hpnn6rci0bavl6hqs6v2ylz26sjyf5siwi2klfc3fsw6a04in43";
-      name = "kde-l10n-he-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-nb-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/rn2hih1b8fdbjahg1va76kn7cdjq05g9-kde-l10n-nb-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-nb-15.04.0.tar.xz";
-      sha256 = "1mz3bcm92745zr6gn7q85p72l57sh19bcvvkpg40c63k34xpwpan";
-      name = "kde-l10n-nb-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-fa-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8mvkdlcf0azzq8y5g1r2bbq15z92b8df-kde-l10n-fa-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-fa-15.04.0.tar.xz";
-      sha256 = "1jmwjlbnlciy4k9szqi7vjwjpx94faixjg2mmg42cjfx5as9ws5x";
-      name = "kde-l10n-fa-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-nl-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/01ryc8gdgvjawaki8qaw5dpbyibvng63-kde-l10n-nl-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-nl-15.04.0.tar.xz";
-      sha256 = "0a3c7fkw0cczdd5733c7klfsffpi5ah1i6alqknm15y534bsigzc";
-      name = "kde-l10n-nl-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-cs-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/g71kfpca8y88a0dmcrphban2vjvyr85m-kde-l10n-cs-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-cs-15.04.0.tar.xz";
-      sha256 = "1bl0w1qhk05xqniv1piik9gkj5nlcsb90bpxlvj0sd5ivcqxma53";
-      name = "kde-l10n-cs-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ko-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/afq8qa9cr7yli1djasn7xs9fg781b3dd-kde-l10n-ko-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ko-15.04.0.tar.xz";
-      sha256 = "181gzqhg6lc5z045l05zxz4zrc6hx36fmb91v62sfn2w70dc6jmd";
-      name = "kde-l10n-ko-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-is-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0whvwp9h1lrnqcf68qihaq5mlz73lm5b-kde-l10n-is-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-is-15.04.0.tar.xz";
-      sha256 = "050fdym6mlj1m1m594jglhjcxwk8dx4hc6p1428ldc19m4b9q06c";
-      name = "kde-l10n-is-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-zh_CN-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/fd72fjmwlgy7znmi7gz71qzd6fb9w5k7-kde-l10n-zh_CN-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-zh_CN-15.04.0.tar.xz";
-      sha256 = "0klkxznhfc5sfrlnz80fqf06lzk8g411cz2v0wpd2wjafk1pyf56";
-      name = "kde-l10n-zh_CN-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-hi-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/g1nxxpcihfcb0kwk0bm53acvv8b0yfgh-kde-l10n-hi-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-hi-15.04.0.tar.xz";
-      sha256 = "12qgzwiy0igz7i352dwk5ipsxhia0spi74ibk70xr7irr9axgidr";
-      name = "kde-l10n-hi-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ja-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/knj0hcr1dirq6rlhmw9dg1vl5ag52h6k-kde-l10n-ja-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ja-15.04.0.tar.xz";
-      sha256 = "1b8741fzhimf3bch6mc9hzdj040y50gf7fgd7ja5n5ipi0ma2drf";
-      name = "kde-l10n-ja-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-mr-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lg8jgickpm35z3mfypigxhngq4r93c2h-kde-l10n-mr-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-mr-15.04.0.tar.xz";
-      sha256 = "0v2mcmrpqz31yix7z7kcjcfpwpghsifnvwmdf1k1lif0a9mq5qq1";
-      name = "kde-l10n-mr-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-pl-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/yq2f4v4vfafxk8j1j1v97jbh39bklnag-kde-l10n-pl-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-pl-15.04.0.tar.xz";
-      sha256 = "002nladxsgh9pamcaibsx7z7dcvcpbii9dyql8v3845wqjpgj8wk";
-      name = "kde-l10n-pl-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ug-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1i36fnf4018v9zc0awz7raqbv7269cay-kde-l10n-ug-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ug-15.04.0.tar.xz";
-      sha256 = "094x3jnaby75q1j7q6c79y0sw63hsqqvw1qv0dzjgghky7qs584s";
-      name = "kde-l10n-ug-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-pt-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0svv0vq2dl7cm4wihdsp459m404jvimk-kde-l10n-pt-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-pt-15.04.0.tar.xz";
-      sha256 = "177b455rgdrm021lvwlx6xgbnk3mh38l6080i2v52rzjm6bmchsy";
-      name = "kde-l10n-pt-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-gl-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/h1i1cg1qhsxfiffalx4j4bar3nbwjpjr-kde-l10n-gl-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-gl-15.04.0.tar.xz";
-      sha256 = "0l27hrsd1pbk3w0lgz34zspmc6b4cs4y0p8i6y1sq51sd5p8qwd4";
-      name = "kde-l10n-gl-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ar-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/vsqwvz9r39nypa1hcxnn3figzyngpf6v-kde-l10n-ar-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ar-15.04.0.tar.xz";
-      sha256 = "04djbcdq3z4iysbvdiai2qd7wm9zx5fp400k3zsw36150g93ar7q";
-      name = "kde-l10n-ar-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ca_valencia-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/vaih1nkjz81vm6vgfy25iqd8dxrivsqc-kde-l10n-ca_valencia-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ca_valencia-15.04.0.tar.xz";
-      sha256 = "0ij9xp47mv63hgdbri7cmvld3zgg0sfgip0gg7iqinzkj1cifj9f";
-      name = "kde-l10n-ca_valencia-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-uk-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/sc5haa7ci8zwglc03s60bc5and8ydqgi-kde-l10n-uk-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-uk-15.04.0.tar.xz";
-      sha256 = "0n01ypzyqr8k30hakahpm68430bgr207yv5mbw2parzj3xbwzpbl";
-      name = "kde-l10n-uk-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-el-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/fn45av76smcp2bj01aphy1m49na74jlz-kde-l10n-el-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-el-15.04.0.tar.xz";
-      sha256 = "0xxfqc1hzf3nbvja8c6aq6axpwx64ifqz32nxw4171valjj1faqv";
-      name = "kde-l10n-el-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-eo-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ijscp8qiliavdzda0k4vzgmfp30a065q-kde-l10n-eo-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-eo-15.04.0.tar.xz";
-      sha256 = "12j9ggkgjbz229iwzpb19hjnl6zy2fvgkk68mh133ij3ik70i3bd";
-      name = "kde-l10n-eo-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-hr-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lm8d1vbsplg0r6z7ksir7z9nqjy7c0pj-kde-l10n-hr-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-hr-15.04.0.tar.xz";
-      sha256 = "0a0p1bspv849zdja86rw7lvg60h6rgl1g5hc4zajmq9sviknsy3k";
-      name = "kde-l10n-hr-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-lt-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/bm9c9n9jln8aadmjmqhjqh67vd2d3126-kde-l10n-lt-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-lt-15.04.0.tar.xz";
-      sha256 = "1l899bj9zw5db9wf6zhd6f9mpyynwagk907q8ws2xh6nlgrs9ydx";
-      name = "kde-l10n-lt-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-de-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/bp31anbdx5f3blgdnhl205vrqw9jgfx0-kde-l10n-de-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-de-15.04.0.tar.xz";
-      sha256 = "1hd0pz2n0l1hs5dy8426n53w8d0a4mys7m7wyihs0a7akf76cy4s";
-      name = "kde-l10n-de-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ia-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0a57w09ilczqr5dwwz8x8qvgqq4wbzpj-kde-l10n-ia-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ia-15.04.0.tar.xz";
-      sha256 = "03wir3y5hz3fnkqqv97bcjv4rc768f953y8dqsc362a61zidw70l";
-      name = "kde-l10n-ia-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-tr-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/whhz3930c4q5n50v7n9xbzc6l4xblf3m-kde-l10n-tr-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-tr-15.04.0.tar.xz";
-      sha256 = "0h1997x62ycisnfnbawjfqfwblh6fhqqscns79f7d7krxhfyq7cr";
-      name = "kde-l10n-tr-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-zh_TW-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/22fjrzh19zha3ldbwkb7l64gnnq60i5h-kde-l10n-zh_TW-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-zh_TW-15.04.0.tar.xz";
-      sha256 = "077pr968z7d8ldnv87vsfn9j13llx3qqw9gwc041c9av73vp4ccg";
-      name = "kde-l10n-zh_TW-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-sr-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/16bpvmlzzw1cqjmrlvznd5751p1fsi18-kde-l10n-sr-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-sr-15.04.0.tar.xz";
-      sha256 = "0yicfyaj6zckk0x9skw9q3qnh0f0vz6pmahgh1pd5ayl3sqs8dhk";
-      name = "kde-l10n-sr-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-lv-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zv04hsibpg539rzkg1g7h2nfm946pz8h-kde-l10n-lv-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-lv-15.04.0.tar.xz";
-      sha256 = "1r2fahydjybk5zparmn4wjciys5kjsjps2mkhlk1x5k9aa0wimjg";
-      name = "kde-l10n-lv-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-hu-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/04hs3q4dknk3b305zqibxskqnzm4f6r0-kde-l10n-hu-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-hu-15.04.0.tar.xz";
-      sha256 = "010d3x7l1kadp3wj2v9jg0bjd9d3xw2q3ql7i21705s2zi2any7k";
-      name = "kde-l10n-hu-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-nds-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/5n06i2kass6wqnl6ql28s1ryrbj2399y-kde-l10n-nds-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-nds-15.04.0.tar.xz";
-      sha256 = "0asgj3dkbjgcabl4qrz3i8dv0i0348dg6q0fk1sgicm4257y0a7l";
-      name = "kde-l10n-nds-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-sl-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ai53nz76fbqj1adsl4lb0byvvcn8bg2v-kde-l10n-sl-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-sl-15.04.0.tar.xz";
-      sha256 = "0jm6b37irpp0jabad4jpqlvpw6ir5ygc0cs49138hb58kcjwi54v";
-      name = "kde-l10n-sl-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ro-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/p18pga44549fxqa0ksijc057dd5phbd6-kde-l10n-ro-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ro-15.04.0.tar.xz";
-      sha256 = "1lmjz5578b1xbgdgrrlgv6vyiara2n5595kd0pg70s1ixvd986as";
-      name = "kde-l10n-ro-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ca-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/6grb8a1wydjjdkn2vkv2sj1dd8wp4317-kde-l10n-ca-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ca-15.04.0.tar.xz";
-      sha256 = "16n29ja4d83g001js682ijibblhfwfb8pww561bcvda84qbvhham";
-      name = "kde-l10n-ca-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ga-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/izn9fzf1r2xyc57rj889rc6ziv9kjsiz-kde-l10n-ga-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ga-15.04.0.tar.xz";
-      sha256 = "1n8prxqxxr8r76ry0jaszsn446y8vdk9b629ypj8s4d0byz336bq";
-      name = "kde-l10n-ga-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-pa-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/pbaf3bd49drbap8bx58pgz85xllqvjhh-kde-l10n-pa-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-pa-15.04.0.tar.xz";
-      sha256 = "18rqlh26qc4h7jbsa6jq27k5d1d5kwdbrd1slm8fcw67r6iw72ai";
-      name = "kde-l10n-pa-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-et-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/311y10ml4kxpkicjlja7k6wwm05yd75p-kde-l10n-et-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-et-15.04.0.tar.xz";
-      sha256 = "0hkh800rx03w5gvy1lc7fn0s5kldihcaml5ryvx0g1qrj5k61b3r";
-      name = "kde-l10n-et-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-wa-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lld8r34x3lclrb30p8w0qr6gw117h923-kde-l10n-wa-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-wa-15.04.0.tar.xz";
-      sha256 = "0mivzilb2f3fp5wn2vc6c3z20n0l4cdpckyk43fdb4h9sys02xs3";
-      name = "kde-l10n-wa-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-bs-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ajsr93ly7db9pwjjbrkvr5r4n0cx03fx-kde-l10n-bs-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-bs-15.04.0.tar.xz";
-      sha256 = "0zw2q22lm73k04c3nb0596xd3hknfhc7gq9i4n7kj55sblv0mqzz";
-      name = "kde-l10n-bs-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-da-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/45bg2qd1nyjnnqi4yzpkkwcimlnr5fs5-kde-l10n-da-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-da-15.04.0.tar.xz";
-      sha256 = "1v07bazlq6420zkfy6m3jvwcyy2snz93967209204jnxkzf3ssk6";
-      name = "kde-l10n-da-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-id-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ack1f3vdjkjbzpdsai22ki3lncc5v6s9-kde-l10n-id-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-id-15.04.0.tar.xz";
-      sha256 = "10mr2d24akz5la2bz88y827dcv061sqrbi9awbiirgd2wqisnn8z";
-      name = "kde-l10n-id-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-sk-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/gcnmv26q44ya6jb2xwhm4kvp8aqr059l-kde-l10n-sk-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-sk-15.04.0.tar.xz";
-      sha256 = "13v871ahfj3bwaj0ha6fm6gpn7x9qw9m5dz89mfg3h5vskqv7akl";
-      name = "kde-l10n-sk-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-bg-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/v7ln63jsr0v32l86rqyg6fpinzpjpns0-kde-l10n-bg-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-bg-15.04.0.tar.xz";
-      sha256 = "1p4y9rbxwwnghslwjk1m32a26h6pnssyj73ns1az3saqyfb85gkw";
-      name = "kde-l10n-bg-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-eu-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/rkbbjy12la1p7l7vm5xk4hwy72f4piys-kde-l10n-eu-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-eu-15.04.0.tar.xz";
-      sha256 = "129k6m59x8f63f393jxx61s67f9gmaab9ilaqy2978d64l3z0bpv";
-      name = "kde-l10n-eu-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-en_GB-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/fzwxz4747hfpjisg7n5kc77gb92dm3c8-kde-l10n-en_GB-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-en_GB-15.04.0.tar.xz";
-      sha256 = "16c255j3klss711iqk41k1kcf5nn0lwg0qr74c1abvgrnpsm261h";
-      name = "kde-l10n-en_GB-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-sv-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/49fv8h0b5lzf4cm5qc6baj9sk9k29pnz-kde-l10n-sv-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-sv-15.04.0.tar.xz";
-      sha256 = "17z9yvw9mrjb7h3qa4zc18f5z2n6b0gr4y76s7jfnh8kpjgm1sgr";
-      name = "kde-l10n-sv-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ru-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/30j0lkfk4p7pwv4nyknvm1wbd93cfji7-kde-l10n-ru-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ru-15.04.0.tar.xz";
-      sha256 = "18l7wnfr1indy8im131lxd45da9x49ii1iavi8g1lzmqq0av097z";
-      name = "kde-l10n-ru-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kcalc-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/4qsl43z86wq82bpspki2y4gfn8iy6xag-kcalc-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kcalc-15.04.0.tar.xz";
-      sha256 = "0rkvxbz9s5wqa054bf1xg3rza95plvnakydlny04iw5w8i33i5yc";
-      name = "kcalc-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkexiv2-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/dnl3qi3ldzmf1yl7m8yzlgxyzvj6bm4k-libkexiv2-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libkexiv2-15.04.0.tar.xz";
-      sha256 = "0zv8yjgwfdvkl2ss2gyv6bqbc3qgnz3hryhcjdyfa56kys6xz7n3";
-      name = "libkexiv2-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kigo-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/yvj9sxfh55nvnlvcz4b12iqqgnd3p33y-kigo-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kigo-15.04.0.tar.xz";
-      sha256 = "00ggvrs3mm5f2q6zkdsxbrhw8vgb0h4p4dk3v0agf3q4bqr86akr";
-      name = "kigo-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kopete-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/9yn7mj3csimgx1r4q6bp9gknh5bqnw49-kopete-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kopete-15.04.0.tar.xz";
-      sha256 = "01wl7n535j9l21zbzjhix33rhr0i4rg2bb25zxwk6sc2ahbsqcp7";
-      name = "kopete-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kaccounts-integration-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/qpc0c00mhc367aivilvkp329a4g6iqj4-kaccounts-integration-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kaccounts-integration-15.04.0.tar.xz";
-      sha256 = "1g2rn256wfl78ajxircaikq3hpj5nxfnk0294wz10srmg5a4hgji";
-      name = "kaccounts-integration-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkdeedu-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/wyk34ah7lc3vvrcq4ldik6brm2jk9fiv-libkdeedu-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libkdeedu-15.04.0.tar.xz";
-      sha256 = "140ri9whmvxjlj2i0bdpyr07zwspyl5d1bh91vm8hv2zdgmxh1rl";
-      name = "libkdeedu-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "superkaramba-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1ck2s3vi0dksdlis3cghy8advap8y5a3-superkaramba-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/superkaramba-15.04.0.tar.xz";
-      sha256 = "05j93sa39m78vlxdy4haqj5913dyi6kab5sspi8ky0why17zmaav";
-      name = "superkaramba-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "klines-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1zsl1wawlhzgyr53hfrn5dzqwii51ib8-klines-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/klines-15.04.0.tar.xz";
-      sha256 = "0c0saaybxjshwap5rydc0606xkwmzl696r41fhkvr26c077p09p4";
-      name = "klines-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "cervisia-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/qmkqp9sgai9djwishibis5qckhl9dnrf-cervisia-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/cervisia-15.04.0.tar.xz";
-      sha256 = "097hayf2k2fv3d90jnhlh4iq4qvk3v0qg7ywchgipzsz0w6nayki";
-      name = "cervisia-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ark-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/nms2hq3a33k03lmhh8y7swiggglcysxv-ark-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ark-15.04.0.tar.xz";
-      sha256 = "09jcz7x5rjazz8xvxy3kx32v21ig736m5gxyxhl48inxaypxxd21";
-      name = "ark-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "palapeli-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zsh3ssjxmxggzf54kw9f73kzpy7y3n9d-palapeli-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/palapeli-15.04.0.tar.xz";
-      sha256 = "1iql188gysjnhym1mj9h2cizydgd97pal37zkxljc9qhqb58wq3d";
-      name = "palapeli-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksnakeduel-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/9qg39s2sb7r8sdy37hm185jn7dsv24q1-ksnakeduel-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ksnakeduel-15.04.0.tar.xz";
-      sha256 = "1i32mrc50isz0q0gzfkd0fz8in2hhc8d61q55dprq3ps28lgd77n";
-      name = "ksnakeduel-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kollision-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/qxc07ckfn60wcyb8cs75dy2d8gbj211z-kollision-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kollision-15.04.0.tar.xz";
-      sha256 = "0ch3h3g0hgm52l13v6wdrvacabwkvzx537bhfib05prb9604vkn8";
-      name = "kollision-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kamera-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/6l8pgg55qph99rmprrgz56vvv621zbjk-kamera-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kamera-15.04.0.tar.xz";
-      sha256 = "1mjpbcslba9wnxrvm4xg6kfy11msn7kvxln98ak55gvpfh7zhm5r";
-      name = "kamera-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "klickety-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/iwlkabdklb3v1md6vdsjw8x09vv0kzzv-klickety-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/klickety-15.04.0.tar.xz";
-      sha256 = "0l8vk4gkfjs71xfzw9lg18g9xg4yf4l9jy1f9plikw9gfm7br90p";
-      name = "klickety-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kolourpaint-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/h5x9pzbiq62jgwfln5gx6agzcfyz2j3s-kolourpaint-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kolourpaint-15.04.0.tar.xz";
-      sha256 = "00vyblqgp7hqigid6xgj31b8jkqb8jlsvnbd2ci4zg7s778l10sz";
-      name = "kolourpaint-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-base-artwork-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zdqama1r97132n4ks422yzr4zhh6fjmq-kde-base-artwork-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-base-artwork-15.04.0.tar.xz";
-      sha256 = "1r3w4ab9vls7wyzy6g7ashnnixxid894ghqc5yzhpn4x999y65lp";
-      name = "kde-base-artwork-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "gwenview-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/3wkajcx7p2wdzldbjb94brqlfqhdn54k-gwenview-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/gwenview-15.04.0.tar.xz";
-      sha256 = "0h8ndywh8w9wx0zisl1b9681d7zqx2d3ki40zxdgk4clyl34aijb";
-      name = "gwenview-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-desktop-applets-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lgapni2v7qsl3wsi8wx0vwcav9almhs8-ktp-desktop-applets-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktp-desktop-applets-15.04.0.tar.xz";
-      sha256 = "1byv8dk864vwl4s5c18xjh3ckdzr9d7gq1mjrlaslxang7fr97cx";
-      name = "ktp-desktop-applets-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdesdk-kioslaves-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lqdl7ks619gxdhnaa9q0axni4pz3h5v5-kdesdk-kioslaves-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdesdk-kioslaves-15.04.0.tar.xz";
-      sha256 = "116xj9i3iwzbz41n3bka6xg0yq88iwzw066dy5dbs3yxbpmky19g";
-      name = "kdesdk-kioslaves-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdenetwork-strigi-analyzers-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/dymdah33hpq9qn07qcz402ijmwc67bvd-kdenetwork-strigi-analyzers-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdenetwork-strigi-analyzers-15.04.0.tar.xz";
-      sha256 = "1zsa3ky6plfksm8k8hgd93d0awrsi5gqz3qbqfbzj3a2qic7nim6";
-      name = "kdenetwork-strigi-analyzers-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmix-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ql4a0i42ij33kd9y7qg4ng1a0p5j2sqs-kmix-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kmix-15.04.0.tar.xz";
-      sha256 = "0yj0byy98243c83bw938i1x8yxgbib8vr2s831hpmqi8h3v7xvyg";
-      name = "kmix-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktuberling-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7cp8mnviqns6ij94xxz3mpizdc1avln9-ktuberling-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktuberling-15.04.0.tar.xz";
-      sha256 = "1kqz1g0r3icgx3brd8qlln29mxcx9b54kvl8wdar04r8ckk0m733";
-      name = "ktuberling-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kturtle-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0a3rrj74sfwhqwjql88gqzw8qbmf8llr-kturtle-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kturtle-15.04.0.tar.xz";
-      sha256 = "00r3lzqa0sazccy28kmackqgqwcyqsl3mzjs7vpg4i76f0agfx4h";
-      name = "kturtle-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-dev-utils-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/gszm27h7rghsvkvhyf15xnp5bgjj18in-kde-dev-utils-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-dev-utils-15.04.0.tar.xz";
-      sha256 = "1vvrrb4c94apc67fg3gpzgfmhylx6m7xfyq0y5kjxk8l91fl2bdi";
-      name = "kde-dev-utils-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktux-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/cd126p5pizh2ha1jadg82csdzazlln49-ktux-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktux-15.04.0.tar.xz";
-      sha256 = "1j5h65vdigym6ldz7fpn2kidxphfl02l4afg0jmj55wrym1vvc0r";
-      name = "ktux-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "mplayerthumbs-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/xbdr5s1xf4f58lpshppamii1j5rl5ll8-mplayerthumbs-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/mplayerthumbs-15.04.0.tar.xz";
-      sha256 = "12d60nkmfp16pgrfh5brl80n1y7crmdzk5k3ad313l4ani99z45r";
-      name = "mplayerthumbs-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kblackbox-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/72rhcbzax6ahi3myznpi1fkh0x9cq6ay-kblackbox-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kblackbox-15.04.0.tar.xz";
-      sha256 = "1w55nzadmkgspngxwazm6nfdf3s72rw4l0absx1jhinln7mif8w8";
-      name = "kblackbox-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktouch-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0p1m96gmy2rw5pyy029j4257b32ziyvx-ktouch-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktouch-15.04.0.tar.xz";
-      sha256 = "16gd6rghz1caw88yh32728kcxj79688g4hw3dkmgkayb5wcwnwl0";
-      name = "ktouch-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "dragon-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ha0s2dfbqb6gjgwq5451gbcgq6h3q16r-dragon-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/dragon-15.04.0.tar.xz";
-      sha256 = "0rzyra1xqjyrnx7926dql2fw9avy7rwx9x86v894xppcjqsyr3jx";
-      name = "dragon-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "katomic-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/dzv478dhlwj11gpfd0k7npmyw8z09yfw-katomic-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/katomic-15.04.0.tar.xz";
-      sha256 = "0vbcv973ppijip8l1y2kkj93rjxbcj3xw6pypw50w3pg168s1ylv";
-      name = "katomic-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmousetool-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8ws0s6acsrrq7x0lvy61vy4sqhndbakm-kmousetool-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kmousetool-15.04.0.tar.xz";
-      sha256 = "005y7jp52f4x9193dxql8wwmimbylkazl671di2gfvrmcrh164n6";
-      name = "kmousetool-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "rocs-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/palrbcvrwp2vxf67myadgcvr5wl8v3pq-rocs-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/rocs-15.04.0.tar.xz";
-      sha256 = "03ibi17331vcjzfc38agalbybn7k06favm0sgcyg68qribpcwmg1";
-      name = "rocs-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-wallpapers-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/b7716r5kxhznfdlp9cwp3vf2vhsv1r1c-kde-wallpapers-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-wallpapers-15.04.0.tar.xz";
-      sha256 = "0ckvbsdim0485h4f9sz1z0qgbb61n8l7ncwr80zm7vpnx46xzavm";
-      name = "kde-wallpapers-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdiamond-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/p1f9xs4wkbdi9cmry7wc5686dxy2fvsg-kdiamond-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdiamond-15.04.0.tar.xz";
-      sha256 = "01ri6nj217dmg2xgm4ra4gdsabk28c8bkw6z69x5smbczjshdcr4";
-      name = "kdiamond-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkipi-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/jckns8avmk0k34k62f77bdrl9cbf01nr-libkipi-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libkipi-15.04.0.tar.xz";
-      sha256 = "0c90y8f70k83pxxfx6mk6ar6zw7lf2l7mib526x8s7j534ya57ad";
-      name = "libkipi-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdewebdev-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/wlx7pxcwlq5f0w2hrlms5gfxfixzfzbc-kdewebdev-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdewebdev-15.04.0.tar.xz";
-      sha256 = "17gizsgvw5ihibsf8z2rmczzkqp1gp5jbyvvsairgzv1izryi6ah";
-      name = "kdewebdev-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kaccounts-providers-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/3vyd044k6qmjnxc7sfig6q90g2dr58lf-kaccounts-providers-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kaccounts-providers-15.04.0.tar.xz";
-      sha256 = "1b5cp6winxa9slqaq6mrf4y4py1d7ps55088gs35qcwrzyna04l7";
-      name = "kaccounts-providers-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "marble-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7kh58mg7dnd0yr6nksbfki20rncdqm1w-marble-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/marble-15.04.0.tar.xz";
-      sha256 = "0d6i7wwf220790ld5qgd30gph9y71a75ybjjfg81k13a4jg0ndk4";
-      name = "marble-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkcompactdisc-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/rrdyv611nn7kbnkr1fnvn6xkd01k8zwb-libkcompactdisc-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libkcompactdisc-15.04.0.tar.xz";
-      sha256 = "0nisrgpcgf4r83q7p82b8xfpzq96qjk8362i6dalsb0jcakia4c2";
-      name = "libkcompactdisc-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdepim-runtime-4.14.7.tar.xz" ".tar";
-    store = "/nix/store/fjrkx2vwb6m4kfl01sa4r23wbvmsmh05-kdepim-runtime-4.14.7.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdepim-runtime-4.14.7.tar.xz";
-      sha256 = "0ywg703sqidxif853gfmqriymkkp9xzkfxd863p1sw35n1zhfkam";
-      name = "kdepim-runtime-4.14.7.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "oxygen-icons-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/akq8y3wjkvbzwyzwxyd1vkmqygmc78p4-oxygen-icons-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/oxygen-icons-15.04.0.tar.xz";
-      sha256 = "1ysy82war9n1dm5nwj69aasz9abp2zf5dmw92gv8brzyrn8svn9d";
-      name = "oxygen-icons-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kpat-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/af38swaxzd4yavh6iaxq3ha8xn3q9gmf-kpat-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kpat-15.04.0.tar.xz";
-      sha256 = "076jrjrs97353pw39gbanjf5s8l4cj8g2zapngyc1kwm6q0jry5w";
-      name = "kpat-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "juk-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/bbvywnmrg713gdmzxkndkcyjs7jmdazj-juk-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/juk-15.04.0.tar.xz";
-      sha256 = "160n9wpx0krf1nlpa3hbj0b1yblgq68mw3c9is2j41k0p2b7divi";
-      name = "juk-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kspaceduel-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zx8jk8s9mrfga1467a42hfdz0w144p66-kspaceduel-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kspaceduel-15.04.0.tar.xz";
-      sha256 = "0drb3628l47qp35h8vyz66ma6ph5v9sg2k9dp0fghrhwp1x983fv";
-      name = "kspaceduel-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "picmi-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/rrqb0hx0kb96y9x2j65vbyq12pk4m875-picmi-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/picmi-15.04.0.tar.xz";
-      sha256 = "0abas2qx83a35dghrr5gbsvgc0lg0vk0br18nizi82sbiawls24w";
-      name = "picmi-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "artikulate-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/a4vr2g2m7hr6svmbdkg89na3zvsh4fg5-artikulate-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/artikulate-15.04.0.tar.xz";
-      sha256 = "1ghffybaq2p9jx7cppbji8jk0dbblw3mh3czfzfms92ahy9xzcbz";
-      name = "artikulate-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdeartwork-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/3yyj9dcqj7b2zjrz5w7j20h0pv10gnid-kdeartwork-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdeartwork-15.04.0.tar.xz";
-      sha256 = "0kwscj036gjvai5knw1jpxjacllza4y8wnlv24lp19f2s61jqq24";
-      name = "kdeartwork-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksquares-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ayr2hry1z8z3v8q8a4iamck9bsxy1pdw-ksquares-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ksquares-15.04.0.tar.xz";
-      sha256 = "15a605pc7jfsrsj1jj3lqy42z1bnw4pppx0hv51xlhiza00s2kww";
-      name = "ksquares-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "zeroconf-ioslave-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/4kb7k1cfzksinnw0d08nginvli44rwx8-zeroconf-ioslave-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/zeroconf-ioslave-15.04.0.tar.xz";
-      sha256 = "0fqqx0ji1v0cz87qb0kig9kkfdigmdfmz5qw1y2kx25mb0rp1g2i";
-      name = "zeroconf-ioslave-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "svgpart-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/n8v8kbzq9vsghk0nc47rl49zqfz1w182-svgpart-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/svgpart-15.04.0.tar.xz";
-      sha256 = "0985jjy2mghs57sy53mkas5p9ya0makrkklq99s04rgl93f2akj1";
-      name = "svgpart-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "bovo-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/sigbrnva6hymkgnjd48aw65s7vrysi2g-bovo-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/bovo-15.04.0.tar.xz";
-      sha256 = "0iffvb4m9bszpxh8s8yrpyzawyflwcbkajib5h1lw8xsgi6vcqhc";
-      name = "bovo-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kig-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lv7d5hvgs42razrzhd3g60i1gpzb8w06-kig-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kig-15.04.0.tar.xz";
-      sha256 = "1v9p9f9dk3f2bfbwic1vf8ky5ziac4vx0vh8wxshzbjjb89kxkq6";
-      name = "kig-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ffmpegthumbs-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8g1l1dd5cccy6ncaywfhpf1x2633dk37-ffmpegthumbs-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ffmpegthumbs-15.04.0.tar.xz";
-      sha256 = "0j0x8b0gcwyzx307rvhrx4k4g530lgyl5rzvdpkjqpga2qjg8q96";
-      name = "ffmpegthumbs-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "parley-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/piznlrz9g0kvy1262p87db03830mx6by-parley-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/parley-15.04.0.tar.xz";
-      sha256 = "1f6nmnjz84cm8yk53whjm7k471y2vj106m7q230xj1g56mb5adrc";
-      name = "parley-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "lskat-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/6bdihbmhk9vdr9mzj52alqhvav2x1lc5-lskat-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/lskat-15.04.0.tar.xz";
-      sha256 = "12mnvbisbaiychdgk6fb464lwvpjlkrwdz5101sdrw466c16a2a2";
-      name = "lskat-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kgpg-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/fys5hj4c13arjjqrh4kn8vyk92zrgz25-kgpg-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kgpg-15.04.0.tar.xz";
-      sha256 = "1n37jh3zl4zb3dnb9lvjpni7gl6sb9s1jwmvf4jvqmqnlqny1b4f";
-      name = "kgpg-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kruler-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/2c9221fqxkz6ajx8g2l7xnhcfj8iivki-kruler-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kruler-15.04.0.tar.xz";
-      sha256 = "1pnhram0g6hfi2k13xhixwpr9vx1dhkvivn1y1ydvwk26klala1w";
-      name = "kruler-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kscd-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/9yidmqhziwp6sj4l0pzh1gvmhi5g1ny6-kscd-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kscd-15.04.0.tar.xz";
-      sha256 = "079sj1g5mn32b2l2l9qap55s5sr6bv44a9ncswibkr49vwq7va10";
-      name = "kscd-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkdcraw-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/5y5x3vr7zibkhk5pk7hz5ibkza56d54s-libkdcraw-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libkdcraw-15.04.0.tar.xz";
-      sha256 = "0h7m6m27jsp4xh6ywrbxad3c413ipzfgz357ahffqcafdjw6yfx5";
-      name = "libkdcraw-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksaneplugin-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0z48pwb041r7sfwzvsxdqyw46bxy6d7d-ksaneplugin-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ksaneplugin-15.04.0.tar.xz";
-      sha256 = "1wh83c31x1n7vipi6m29hsinrpzwsvjnj3psg6s7bywnb6if2ir7";
-      name = "ksaneplugin-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "lokalize-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/5by08m2jgiap41wrk8kg7lc8b6q6ifwh-lokalize-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/lokalize-15.04.0.tar.xz";
-      sha256 = "1nikpfjnmm3ws2qd46zq6g5v64dbfa7pmbp8nw1sv7dcin3k42ll";
-      name = "lokalize-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "granatier-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/w9bkpa3frqgnh07gbaln9m15nhj0vdcj-granatier-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/granatier-15.04.0.tar.xz";
-      sha256 = "1s5jkwqzjlcd343sm6akzx56a48yvx7z9n3cww9gxrjl76q1a19c";
-      name = "granatier-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksudoku-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0ssavwdndi5h0mc3cjrgn1vpfz20wmdm-ksudoku-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ksudoku-15.04.0.tar.xz";
-      sha256 = "0bxcjqpkqr5zbjrx8drmjvjgnyjvpqbvmqgyfsidm8rgfg6mi3fz";
-      name = "ksudoku-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmplot-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/76appqh3cg62681baq1cy6fymadaq2c8-kmplot-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kmplot-15.04.0.tar.xz";
-      sha256 = "0fnvjixnp2iyjg0hgm6lkry407f0fh39kb184jzaakrp703m3jmi";
-      name = "kmplot-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kcachegrind-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ys2xzw0hck8gp7g79m933580y7rix754-kcachegrind-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kcachegrind-15.04.0.tar.xz";
-      sha256 = "1q1z0w7c7j8ii97n4vcd80qi6hb7gsg6j9l3md37ls8c4qvhknx7";
-      name = "kcachegrind-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kbreakout-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/x4rsvf3qzl921vgamzjxkvwjw971r917-kbreakout-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kbreakout-15.04.0.tar.xz";
-      sha256 = "039g4qmmkf3lq8jx5vgasvqx19k3xbvfkm0j9his61z021ldjxla";
-      name = "kbreakout-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kapman-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/82vlfb4yna41mip5zpkal4kpy67w4kjv-kapman-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kapman-15.04.0.tar.xz";
-      sha256 = "0glc8hcjs89s5cxa77f12pzlnmvr74kiqhcrk7djz98pnqwlsn5v";
-      name = "kapman-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kalgebra-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/346qqpdqx5hdzyvd4dlkag3ir951fjp7-kalgebra-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kalgebra-15.04.0.tar.xz";
-      sha256 = "07czg7i344qq93y95f46qvk3zpghkl3gcr8cd8wgc0v0b1mdmyfm";
-      name = "kalgebra-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "pairs-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/cd5q5wchjl2ncm44pwl156jks832y96z-pairs-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/pairs-15.04.0.tar.xz";
-      sha256 = "1d1va0b55fwivsvcz3izr680nl4zbyn44fdnirglw7q25278p7bh";
-      name = "pairs-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "khangman-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/krpgzhpksq4kr9r78w9f6rk2q0963lwv-khangman-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/khangman-15.04.0.tar.xz";
-      sha256 = "0cnaih6xhg11wrg0c3v7lir2yknc4k6m490aw7bhraz98kfxr905";
-      name = "khangman-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "konsole-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/qb3gypyd97v9cakicf44q7xnwfmyqsyz-konsole-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/konsole-15.04.0.tar.xz";
-      sha256 = "10qgynn6x7cxyp6lgri0vggmzmcvckwvrg9mrycdnwwrsfabscrc";
-      name = "konsole-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "analitza-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/c9xwpgl8bdp582w91zrchhywr1j9xm9r-analitza-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/analitza-15.04.0.tar.xz";
-      sha256 = "03kaaa8kp92lsva5shzqb9497wmhksm79pc39ip5l50lqac9gr1l";
-      name = "analitza-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libksane-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/6qn668dc4yppjwyc1ms0698nkmxj4sxm-libksane-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libksane-15.04.0.tar.xz";
-      sha256 = "0rnja700hwjn4bvy06lijndic2zryn64kybvj71ip6knq3nx77x6";
-      name = "libksane-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kbruch-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/g1hbkl20wkzglhaabxizzhrl1xpkfiy2-kbruch-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kbruch-15.04.0.tar.xz";
-      sha256 = "1662hqqsf1rnfwrqwx5wpl0cvr9313sh8bla2sig8v2s8v2lyyi6";
-      name = "kbruch-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmouth-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/dwkbfqj5a21hcryw42dwqw9lq1r4ld0d-kmouth-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kmouth-15.04.0.tar.xz";
-      sha256 = "1swvdrlcfxv312kncihvxba0cklmv47qyr2dbrkhb9s9v6jbiqb3";
-      name = "kmouth-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kppp-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8c2srwnwg41aypvjqzs08129wm391p2q-kppp-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kppp-15.04.0.tar.xz";
-      sha256 = "1ml5lc20jg05zfq9d274vqp7k7fh5369zshp073bi6zjj4cm7gss";
-      name = "kppp-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmag-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/gi6kw8zlmpy8gjijr34620dzp858h657-kmag-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kmag-15.04.0.tar.xz";
-      sha256 = "0wmarmybn56mppwb33cjg96906hh4vbnwxqpw2441axn5vqmf90j";
-      name = "kmag-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-workspace-4.11.18.tar.xz" ".tar";
-    store = "/nix/store/b65xpr56hpmfinssggl4fq88lky5czlm-kde-workspace-4.11.18.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-workspace-4.11.18.tar.xz";
-      sha256 = "1rvi88flk8c1j6qdkxak3sy1yf646ql3zipxw2azchwzd4k54mzv";
-      name = "kde-workspace-4.11.18.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksnapshot-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zim1ydmdxhwv0cypdviqdnn0nwz2d66q-ksnapshot-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ksnapshot-15.04.0.tar.xz";
-      sha256 = "1577ybwpa52lmv5pd0223pz5l3q4h3475fz5qp3sm1rwi0nzmawq";
-      name = "ksnapshot-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "okteta-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8z78fks7wl0rf3077yrz8hzvqvmxn516-okteta-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/okteta-15.04.0.tar.xz";
-      sha256 = "0svgsy838dlc2krn2rzb65a6i0dfav4xlmi4174d23qhaikl1z42";
-      name = "okteta-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "step-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/argcpdljdar6ga3psyz4wzr3kmvkmf07-step-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/step-15.04.0.tar.xz";
-      sha256 = "1fl4zmj4k3g8c7bas7dj2n82qlbq8k5p3s5bflcillrz6pdd4s50";
-      name = "step-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-kded-module-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/n3b0rfacc8i5p5hlgal66zr9gjfrkda1-ktp-kded-module-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktp-kded-module-15.04.0.tar.xz";
-      sha256 = "0ijinvp48aixx8fjdc8fxpm8ilzsn9pkhsiinh47wiabyjb8rj3z";
-      name = "ktp-kded-module-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kwordquiz-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/yik5ibmcy9k87y41nk3b03w1j2p3012c-kwordquiz-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kwordquiz-15.04.0.tar.xz";
-      sha256 = "10rq7zdd8i8dgmjzxgn6139ixzm5kzwiswal0cmkd42wwbdn6fml";
-      name = "kwordquiz-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdelibs-4.14.7.tar.xz" ".tar";
-    store = "/nix/store/xd5jr85rzdnsrw18ab811q6hcwq1f4vk-kdelibs-4.14.7.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdelibs-4.14.7.tar.xz";
-      sha256 = "1zhqvyx8gq7514mr0423z0gl1yn33snh53fj2ijkk4blhjga601q";
-      name = "kdelibs-4.14.7.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "killbots-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/nshwyzk14mam2av602sqzcxnwjzpny6k-killbots-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/killbots-15.04.0.tar.xz";
-      sha256 = "0a9jn8i5hw3v7kr6vqagxkqvvjs6qsb23g2khaxgbw0x0cz5nqx4";
-      name = "killbots-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdesdk-strigi-analyzers-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/55ksfn4hq342qbl8cm4jf8k8mmra096n-kdesdk-strigi-analyzers-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdesdk-strigi-analyzers-15.04.0.tar.xz";
-      sha256 = "0k00ip8ll1i96cazs78c6al1yjcnvpr1awb6g7yvvq019icjmzvn";
-      name = "kdesdk-strigi-analyzers-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-send-file-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/90s1naljnqa6r99nl2dpjsf8rjb3k7cp-ktp-send-file-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktp-send-file-15.04.0.tar.xz";
-      sha256 = "03i6irask1ccngwapirnc9vpk4nw7r82zl6jdnh7w9988c2wdl22";
-      name = "ktp-send-file-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "dolphin-plugins-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/n2vy60sdgnx3gb6fmmgd03d4jnn29nmz-dolphin-plugins-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/dolphin-plugins-15.04.0.tar.xz";
-      sha256 = "0a1f1si598cmqd0j9v6pz0w8s6286xg2wcfxzrmkr994bfkydd8c";
-      name = "dolphin-plugins-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksystemlog-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1wy9hsww32i53nv94bnzj83hfqw3x1ir-ksystemlog-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ksystemlog-15.04.0.tar.xz";
-      sha256 = "104yg6mjnhznsylpv8faqih9rpdxyp4667dagq7f1kfajy59jh1y";
-      name = "ksystemlog-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkeduvocdocument-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/x1qmhlskhz0ibs1pnxcb30bj1yk3f447-libkeduvocdocument-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libkeduvocdocument-15.04.0.tar.xz";
-      sha256 = "0lqp2qfsdjkchnb5xrbj9hax2bf4ls1wk7pmb364qvkkhfia8qv4";
-      name = "libkeduvocdocument-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmines-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/3vf7rffgww1k7byna7p05d0115p6924y-kmines-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kmines-15.04.0.tar.xz";
-      sha256 = "015xximi3xydkbygzlka7y8nmls3dc8jvr3dvvidl57gl1szmx73";
-      name = "kmines-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkgeomap-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/amqrx3hwvwrz8rgk3dljj11bvfpx4plm-libkgeomap-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libkgeomap-15.04.0.tar.xz";
-      sha256 = "0yd17xa085rvxsnsah6ny7w88lbs7c1ilxrvbpsf2rvjkbl96giv";
-      name = "libkgeomap-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "umbrello-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/5lahf10pz3vdh0dngi3fsmyn9g8cmk5v-umbrello-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/umbrello-15.04.0.tar.xz";
-      sha256 = "14lw9rnqv7bgni1rxwmgm4jnx2l2x5524wysqlhyp7np35mzdnlc";
-      name = "umbrello-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "bomber-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7mf874dsxa6wj59zfr6s1n7399rvl7m9-bomber-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/bomber-15.04.0.tar.xz";
-      sha256 = "1hpss9jmjsjl2shm2y50s5js33rpn0gd20il6wq454wm0k0q7rpj";
-      name = "bomber-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "jovie-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/35zcglbjikb4ayp14d9l6hgs5myv5i6l-jovie-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/jovie-15.04.0.tar.xz";
-      sha256 = "1sa6agn9zp12n98v7i9rxng2yn25b4yf2s8q8rjb3qg93kmzzx4v";
-      name = "jovie-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-auth-handler-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/9vacywnw3knldygpgxjghjbw2nfqdszn-ktp-auth-handler-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktp-auth-handler-15.04.0.tar.xz";
-      sha256 = "1hj3vc6wj768xdpr02v64p9wbrh1y61zg2fal3bk3fzrlz2yslg5";
-      name = "ktp-auth-handler-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kubrick-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/9rjk1xbzbnc2qqrni0ng2spbzailrb25-kubrick-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kubrick-15.04.0.tar.xz";
-      sha256 = "1qxyymrqav9hwa2ldqqpr49aj5sqzmiin6c4rmbirxmaasmyqn6a";
-      name = "kubrick-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kgoldrunner-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/l2lbbhnr6r0q1sf3rzzjnwina7gvlllg-kgoldrunner-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kgoldrunner-15.04.0.tar.xz";
-      sha256 = "1hsrjszck17gqnnpxzbdknj579n7xpmbq813a77736cmi95qr4h3";
-      name = "kgoldrunner-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "filelight-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/pr78axnbpxwah326z7jqhq4cz1p7h7wr-filelight-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/filelight-15.04.0.tar.xz";
-      sha256 = "18vcm8f8wgl0hqlycljv7kbq8iip5vadrsyhr58pw60cr8h36n0s";
-      name = "filelight-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kajongg-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/13030n2xwx0rnbd0myy87pfzrd93rpkw-kajongg-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kajongg-15.04.0.tar.xz";
-      sha256 = "0aa2c2c4322lv4prwxkhanw0lbrv1145w6fz473f6ybfhg9isc7d";
-      name = "kajongg-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-contact-runner-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/kw08x6m9wzrmhm6av38hz2nd18agxapj-ktp-contact-runner-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktp-contact-runner-15.04.0.tar.xz";
-      sha256 = "179q9707cxmd57iyadasdr9rvcqxwrahccc8vjylzh1x5p2arib8";
-      name = "ktp-contact-runner-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "sweeper-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/yz48bx3mdyvapyz52aa846f32102jh7w-sweeper-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/sweeper-15.04.0.tar.xz";
-      sha256 = "15amamnrg7d52l0agkw66k96xk0j5shk2667wc9p2jy6g96cw53c";
-      name = "sweeper-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kfourinline-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/s96mhycwzwrv5w708mz6appsbf1vivz7-kfourinline-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kfourinline-15.04.0.tar.xz";
-      sha256 = "1wpcdzlpy8jdnlzzhys8n08pknk7ncq41dchs2ii3v30w1dnwln2";
-      name = "kfourinline-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-common-internals-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0q8wks5hqas02y3j384lwqy2a1npvmch-ktp-common-internals-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktp-common-internals-15.04.0.tar.xz";
-      sha256 = "0y6jwqaxvkzjqdz4j3b4z5ybz4d3ci09x8apfr3h0q5pf4crkv8p";
-      name = "ktp-common-internals-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "krdc-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ch18h2226p60xnyjndy40r8fgwajd80p-krdc-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/krdc-15.04.0.tar.xz";
-      sha256 = "1ikm5a8lb65iljdvs16ipclkassjjdf7i49whcvz71rx8agp01hr";
-      name = "krdc-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdeedu-data-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/05dzvpk81hhrfp0yncmgnq8q8nlps3z3-kdeedu-data-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdeedu-data-15.04.0.tar.xz";
-      sha256 = "1r157dbi75ayxww57vhww3cjxv1z2y2mv54xh2cf3zfjv6kmp7lc";
-      name = "kdeedu-data-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "signon-kwallet-extension-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1z4nb0mp0d654n7wmyddxslx82rh2y10-signon-kwallet-extension-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/signon-kwallet-extension-15.04.0.tar.xz";
-      sha256 = "1s3nm7vrwwgin278vif6w8yyi1vg9hk401swvlhwmn9305bxqm01";
-      name = "signon-kwallet-extension-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kcron-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8qjk4ri8l2cvvqaf5qpmzwz33gx0n9kn-kcron-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kcron-15.04.0.tar.xz";
-      sha256 = "0srq463k37klfbvrclhrni1kbn2bxxsfzp8l8lbx4dz8p93fcvdp";
-      name = "kcron-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksirk-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/hngc4aajjzr5qszkxi745fi8l28k8wp4-ksirk-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ksirk-15.04.0.tar.xz";
-      sha256 = "1rl2c1yjiiw3gy4kblxgf2lh2sd5bpwz36hi9kv1dvf00bwi1w0x";
-      name = "ksirk-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdenetwork-filesharing-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/br98dpkixyvcr4dwp6fqfcgzrvgqvps1-kdenetwork-filesharing-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdenetwork-filesharing-15.04.0.tar.xz";
-      sha256 = "1296rg0axk6gc765kv3wnqqb7mp45sqw8rvhz631ybbsvcy9vk6c";
-      name = "kdenetwork-filesharing-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "okular-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8lzrv2slw0ck39i94w8ms8zm5vfx2x9v-okular-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/okular-15.04.0.tar.xz";
-      sha256 = "1xfj7hm8149xn5g9yy56zd93bjs38k10009l6d2xynvqcd2k5sl7";
-      name = "okular-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-runtime-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1zj95rkrgbp4s8khzd7hjdnz9ndib9q3-kde-runtime-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-runtime-15.04.0.tar.xz";
-      sha256 = "0dpbmg8w5b2hq3fw38v3fa4w45lm1p06sh72rscsz2mc2ly6bkxr";
-      name = "kde-runtime-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "konquest-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/p08rr4gqznxl4w3gfd7na11v8l1s8afq-konquest-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/konquest-15.04.0.tar.xz";
-      sha256 = "154vbny41axcckdi4dw928kvhfvw8j5b34l79dqa15lnsml92m6f";
-      name = "konquest-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-baseapps-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/g2j9js2pgakja03ljw9zl4xp9v2pn8l4-kde-baseapps-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kde-baseapps-15.04.0.tar.xz";
-      sha256 = "1xiv9qmv7x6djv7fg7khsqhzrnypr8dg1c3ximi9r32jvcfcda7q";
-      name = "kde-baseapps-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kreversi-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/h39cafz2080k7xih81jn5f7scfpvszdw-kreversi-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kreversi-15.04.0.tar.xz";
-      sha256 = "0z7rp0d52cgc8lsnjj0p0qh7fydgk1348ljymfmw8kr41848fag7";
-      name = "kreversi-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kate-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/17j3xfw2gjbvkb6k09ykyf8avx7fip38-kate-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kate-15.04.0.tar.xz";
-      sha256 = "1g4dh9d55mbdnxrxp8kyid52gg649rnd6xhv1di3k1zz6x5jjnr1";
-      name = "kate-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkface-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/f6n75hb70xfprv3rpa78n59icxglv3n8-libkface-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libkface-15.04.0.tar.xz";
-      sha256 = "0hm3llyjprfhj5l7y97kyyk61cbis7hmlgpf3qfin958hmip7kds";
-      name = "libkface-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdesdk-thumbnailers-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/frl8ikxyck6mv44rdwlca5dg64vlar20-kdesdk-thumbnailers-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdesdk-thumbnailers-15.04.0.tar.xz";
-      sha256 = "1y3wix763ndi3xfwpm3h3cfj3r446jkrslgn09bplm4x36jdd2wv";
-      name = "kdesdk-thumbnailers-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kremotecontrol-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/mxrd14q1c9hbw5lnpvk32s2jb18cjyrn-kremotecontrol-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kremotecontrol-15.04.0.tar.xz";
-      sha256 = "110bcp9b4y1mwpvd6r09zlrr54f1qdncxixliivclx9y0nrf9ljf";
-      name = "kremotecontrol-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmahjongg-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/gaj2cqkjp0ynwsywrshpy7glfagz37ds-kmahjongg-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kmahjongg-15.04.0.tar.xz";
-      sha256 = "0agqvghlvw3n8xr15n44zjidxqghpmpzf5834n7d18yllnkmyqzz";
-      name = "kmahjongg-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-text-ui-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/5vsvkxwxycdr0qk54ksiyrlbdfqxc7qq-ktp-text-ui-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktp-text-ui-15.04.0.tar.xz";
-      sha256 = "0az6ziraqslcidjflljc25scrg1i2kgkppm93bd8y8zy4a2q1wns";
-      name = "ktp-text-ui-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kshisen-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/jdmiqffbirvn2pzxx0vfia6v9mq9q1jx-kshisen-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kshisen-15.04.0.tar.xz";
-      sha256 = "011a3gqij509vl74v03s24in83i2qyylrpasi8cpx81hgbwd7zkd";
-      name = "kshisen-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "krfb-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/r0b24gfzlljxq2wxxs6pyfvgacarvp7n-krfb-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/krfb-15.04.0.tar.xz";
-      sha256 = "1j1mfjgza7zs3dsvm7aqr0w3lnia1svxrc47gd5imagqxzi5xb5i";
-      name = "krfb-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-accounts-kcm-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/qqn7jza6dgshhapkvj97a4i4960dy5da-ktp-accounts-kcm-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktp-accounts-kcm-15.04.0.tar.xz";
-      sha256 = "1a45apf4vmjpsrbm98ym8k7qivmfaiwsdsf0f65vi91imlkfdd2x";
-      name = "ktp-accounts-kcm-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kgeography-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/arp2vca2a13jqqc37cv5pa03s4aayg1y-kgeography-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kgeography-15.04.0.tar.xz";
-      sha256 = "1gm17z7a4dgmqds3gvwf1scgxb2js5xvaq4f74hr1042jq2br0dk";
-      name = "kgeography-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kqtquickcharts-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7iwcjypw2l9kkgm8l3dbchm47jziyjh0-kqtquickcharts-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kqtquickcharts-15.04.0.tar.xz";
-      sha256 = "08p53xa49hwgwcp1vgp1c0pghj2l5a2g71s0q30xn7vz7y91bi92";
-      name = "kqtquickcharts-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdegraphics-strigi-analyzer-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/28krw7dahfrcmwlbfqabzd6bmxqx9fia-kdegraphics-strigi-analyzer-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdegraphics-strigi-analyzer-15.04.0.tar.xz";
-      sha256 = "02zpwqcfi0v0f53y4i2x1yn6d3nynlp8x7xb4ciacvmxzssh9g0i";
-      name = "kdegraphics-strigi-analyzer-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "blinken-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/pr2d0pipsss9n5xdd9zrgv939smlrvwk-blinken-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/blinken-15.04.0.tar.xz";
-      sha256 = "1475yf37nlmnqq5sh2gc8x1nbkypxy560qmdyar3m5cs69r77679";
-      name = "blinken-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkdegames-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/w7f148vp2gdz22fhs5g65qjzbl9h36kh-libkdegames-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libkdegames-15.04.0.tar.xz";
-      sha256 = "1rwbr5pqn347rfhz56phswfzxmm37xpnw699si1612mkmmbl92ba";
-      name = "libkdegames-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdegraphics-thumbnailers-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/jn27x6czz0lripamkjgkwga4cxyicmcm-kdegraphics-thumbnailers-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdegraphics-thumbnailers-15.04.0.tar.xz";
-      sha256 = "1p0alpdmhl3fm1r27cqiz80w9r1zmwj7pmdxf4f6mv2pf5q7z5kw";
-      name = "kdegraphics-thumbnailers-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kcharselect-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1xvdiwnp84qn7cvcissssf92w4nx8y7g-kcharselect-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kcharselect-15.04.0.tar.xz";
-      sha256 = "1jfh1kzcazb4b4wqv6mjy69h8fx78zzf7xk60vzaks07b4c7x9x7";
-      name = "kcharselect-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkcddb-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7in63wvw5njm2gqxqbsjvj8sh7j5zbsf-libkcddb-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libkcddb-15.04.0.tar.xz";
-      sha256 = "1ldjfkppfhknln6hn3py8519p5jc63pf9apwx7h5jf3z6ci1k29p";
-      name = "libkcddb-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kstars-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/vqrsgg7jlr6h8y6m2cp2fvv0jpbv8jvk-kstars-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kstars-15.04.0.tar.xz";
-      sha256 = "0mj6haknp9y03md9j007w5sf66529chififw0xy6a7bvnagaph2g";
-      name = "kstars-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kget-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/cglfzvjxh6b61dyvla9q9g0qnw6rzlm9-kget-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kget-15.04.0.tar.xz";
-      sha256 = "0v4gfik9ddzpddknrj9vp2d2awn2bjzn74n173njf90pbfnql3y5";
-      name = "kget-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kanagram-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/dh926v6zz23z9lqqqvhia5ilwxazd4lq-kanagram-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kanagram-15.04.0.tar.xz";
-      sha256 = "1iw2vp82ax93kbc7ffmh9wsgjp0a772vb2bxsmm5g5jcmjd8vcr4";
-      name = "kanagram-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kteatime-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/mrdsmb6qaj32np3p3mcwi3sx38kmgvjj-kteatime-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kteatime-15.04.0.tar.xz";
-      sha256 = "0g1hhlqhag0lllm8s10ylw5a6qwgsmb5hj33l2knbifa2sdg4v0c";
-      name = "kteatime-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-contact-list-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/44z86p3l3axqq54wnvbbjavifp6jrnxn-ktp-contact-list-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktp-contact-list-15.04.0.tar.xz";
-      sha256 = "08k2yplr67s66y4134n007kzsdxnrwgjhv09babprb4cbcm7pdgm";
-      name = "ktp-contact-list-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-filetransfer-handler-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/a66l0r6622i36x7njknq4rw77wq1z8f1-ktp-filetransfer-handler-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktp-filetransfer-handler-15.04.0.tar.xz";
-      sha256 = "0z50v3bq4i618c1sh5fa67il4vhn8mk5c55wlhxc2q8srr85ii92";
-      name = "ktp-filetransfer-handler-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kompare-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lmbjfk56h71c44paw60x7wl6pd58yc0w-kompare-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kompare-15.04.0.tar.xz";
-      sha256 = "1pf693s580p208dbjj6d4w11i62bwfifjn3wmn2fd8fip3ajdgxh";
-      name = "kompare-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdegraphics-mobipocket-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/54xdq0xdkmw2z3j0zhfxi6gjvm60g919-kdegraphics-mobipocket-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdegraphics-mobipocket-15.04.0.tar.xz";
-      sha256 = "00m5i5jdnj92jnjm32ryh8dlf3fzl2mzybm5w5y1a82fq9l7j774";
-      name = "kdegraphics-mobipocket-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdenlive-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/dacxkxjxhz3afz4165nv4siyn6sb5jws-kdenlive-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kdenlive-15.04.0.tar.xz";
-      sha256 = "1ski64rqa1h1aqr16vwnvpqpww7vgfzbnlki3998k8gbc703q512";
-      name = "kdenlive-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktimer-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/nab346b2rb5dwkj4gdnjm2pyhnzf0i4h-ktimer-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktimer-15.04.0.tar.xz";
-      sha256 = "014jfyx4lizq2bh5yx73zarn9mzp4lkyaxvml0m8i53zdnacnqvr";
-      name = "ktimer-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkmahjongg-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1rqzjg16kl3m8cc6pjf2cakhjx90kkhw-libkmahjongg-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/libkmahjongg-15.04.0.tar.xz";
-      sha256 = "1912k9h4j8rhly5x03anf4gzjs0aypbwh8ifvhn289gydccqfcyy";
-      name = "libkmahjongg-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-approver-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ijsjgpid0pnrq1d174gpbma6xfik9989-ktp-approver-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/ktp-approver-15.04.0.tar.xz";
-      sha256 = "0sfi4i071iini7bv9i7d4f952rnd5r89vqnhkqqrzbnmi9bh4rx4";
-      name = "ktp-approver-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "cantor-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7rf8al4ncyxkhzg899mssimw3lwf0qy8-cantor-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/cantor-15.04.0.tar.xz";
-      sha256 = "0npl1p3gwflfl9rrvbi9ql28af6m1h2w46vkqh4ksp4d6jh9lx3p";
-      name = "cantor-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kbounce-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/9b915jv5dcm7kinwvj9yrxs72vbsravw-kbounce-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kbounce-15.04.0.tar.xz";
-      sha256 = "1jllvam65kjfanry4wl2yhhgi5hak0swiradyh15b73rb89w2lj2";
-      name = "kbounce-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kcolorchooser-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zhlxa8x34g7yz6wwqnhn062d4yxgl214-kcolorchooser-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kcolorchooser-15.04.0.tar.xz";
-      sha256 = "0g51v8641712fyycm3d6pkx8mlxkpp832l5i77f557lgi3dqfnh8";
-      name = "kcolorchooser-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "audiocd-kio-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/gcg36nagmfjc9w510pbihc44gz765nh6-audiocd-kio-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/audiocd-kio-15.04.0.tar.xz";
-      sha256 = "05by4zrd3s2rkv915dq3ri6rhq39sl9wkw46diajkwzqdg6ajbiz";
-      name = "audiocd-kio-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kgamma-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zd7r3mali9j223lm28w0xx6fl4jkiyfd-kgamma-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kgamma-15.04.0.tar.xz";
-      sha256 = "17xfiaz751q38q29s20k6fffshd3jndydnj54q4bd5l08fwmxmq6";
-      name = "kgamma-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "knetwalk-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/65sm832j0rnm215vmd7gcrnnbj1gd2cj-knetwalk-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/knetwalk-15.04.0.tar.xz";
-      sha256 = "0ljwgb5sb8x2g2qrvnl1lzmk34zcg6g1qfyp6p74h8lbhfk1vbgl";
-      name = "knetwalk-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "klettres-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/bnd0dnbv8ybywwzaskjlx2dvdw3l9afc-klettres-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/klettres-15.04.0.tar.xz";
-      sha256 = "1kzcqj1w5dcmc54v96q3s6v4fj86kgc9vdllg7l98bv9d2zcxpph";
-      name = "klettres-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kapptemplate-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/qg0q54wpsmr1y9dfa72y24fjr1faqd8y-kapptemplate-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kapptemplate-15.04.0.tar.xz";
-      sha256 = "01ldjxgsv422l9lay5yg5b9y0cbbwpfl8x41a1wvm9h2l4k0mn3r";
-      name = "kapptemplate-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kjumpingcube-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/g3mfvybxvh2rws76bdsvd7fcnkc3cjdh-kjumpingcube-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/kde/stable/applications/15.04.0/src/kjumpingcube-15.04.0.tar.xz";
-      sha256 = "0mj33yz2565px6ljlw6k0pgd2ljq9gsjx4x9jzq6wbcjg6vbiyah";
-      name = "kjumpingcube-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kaccessible-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/51djz0y5i1mr90pv9fmxi0vwzrrj2ygq-kaccessible-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kaccessible-15.04.0.tar.xz";
-      sha256 = "1q90ak7yxvvi5scxajb3d4nid2h7y7xfvdbqfd9a6w312r6lcvz8";
-      name = "kaccessible-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kuser-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/4q0xn6h1mf6plwikl16v490hbcm1c3jf-kuser-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kuser-15.04.0.tar.xz";
-      sha256 = "0fgjfd76iiyp98013x9la61qxnw454kcrl7vpikg37hqaqbzmgkh";
-      name = "kuser-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kiriki-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/p393dfammjyxak0wm3vblzcb8n7r0gnw-kiriki-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kiriki-15.04.0.tar.xz";
-      sha256 = "0cg4iijyk96lwc48ifs5arip3y51wpb4fd4slgjbkhvg4fc859sa";
-      name = "kiriki-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdepimlibs-4.14.7.tar.xz" ".tar";
-    store = "/nix/store/819bf5a5q4b4l0w9yi099capf9il9whz-kdepimlibs-4.14.7.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdepimlibs-4.14.7.tar.xz";
-      sha256 = "1cmqyx0shm0ss48pjh9jm9g9bghkkl6fg5wgw4yhs4dgz1nj9qn1";
-      name = "kdepimlibs-4.14.7.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "amor-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/fmbdfhm9703yaq7x619d1s97il6prp7r-amor-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/amor-15.04.0.tar.xz";
-      sha256 = "167j2qqkivrc2pid11nmnllw2m2amr8d9jvafy54j3i7mcbs788k";
-      name = "amor-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "knavalbattle-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/y9k66adhrcr1vxyzdvsx3zymkd7b4zaa-knavalbattle-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/knavalbattle-15.04.0.tar.xz";
-      sha256 = "0hgwx63g1lrzrszajya4va2pidh2xm1qy7b8iw5xi1yz1khn6cvd";
-      name = "knavalbattle-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kiten-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zb4wpb0g4vbkrnwrk7d54l2dd88cz4b2-kiten-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kiten-15.04.0.tar.xz";
-      sha256 = "0lpvwm20zr7zq7p09igbacqhm7pv4bv7r701nijw5l9l4d58hq3y";
-      name = "kiten-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kwalletmanager-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/4i8v7c1a44idrlpdqc6yk41w6r34259x-kwalletmanager-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kwalletmanager-15.04.0.tar.xz";
-      sha256 = "0c5r6pfinb509a0mn2k31wksiya9b52pjm77bbaq60k1y39fsizc";
-      name = "kwalletmanager-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kalzium-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/6ivi9a4yilhb621zj0kz07yzbxa5wpxs-kalzium-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kalzium-15.04.0.tar.xz";
-      sha256 = "1x3vdi9h5px84cm7k1nbrlakkb13xrc25d6yw22pnfsf3v4n66f5";
-      name = "kalzium-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kfloppy-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7w91cal36byklnn0mzzclgjj5hpjzb2j-kfloppy-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kfloppy-15.04.0.tar.xz";
-      sha256 = "1nmcdzd7zhr4vfxb8lgl7dxfs01wy81kcag36s43hg7mfs5xb0k4";
-      name = "kfloppy-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kolf-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/76g0y1k03dlc50d5wfdgpb2grsy9p0qa-kolf-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kolf-15.04.0.tar.xz";
-      sha256 = "0nzqvq5y2mvh7x2lsq8prkyn99j8137hq5pyk5d9yhla4lpq2lr4";
-      name = "kolf-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "print-manager-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/rmvqcnl3b77hxhcw7z22vx03pi1gk3gp-print-manager-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/print-manager-15.04.0.tar.xz";
-      sha256 = "0yn8dhvpxv5dxdn41c6rzar66gvlqmgb3m9f0rdrxzqmw9xidzrg";
-      name = "print-manager-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "poxml-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/kinljjyys5d6s5rfyhl6jzmh8z5bm92d-poxml-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/poxml-15.04.0.tar.xz";
-      sha256 = "1cziw2ydylsx45s5hrg1bfwk8qv9jbvji3hyzwi6jqc72fpv9q5x";
-      name = "poxml-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kblocks-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/jjkr9khw6fzh7hb4xss9jx2qwz05jral-kblocks-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kblocks-15.04.0.tar.xz";
-      sha256 = "0q32xvajnv7x3fmhax1bmc4f7530cijisn48hpnpkm4g4mn68qb0";
-      name = "kblocks-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdf-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1wrgspd1n890ln1dffghslw86z2ynfz3-kdf-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdf-15.04.0.tar.xz";
-      sha256 = "18i9rbl210vj370n3irjy2ai4vrhg26ivfs37wl0zdvz4i81ncg7";
-      name = "kdf-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkomparediff2-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/krsghsp3cs3wmib774g36933smh1bldv-libkomparediff2-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libkomparediff2-15.04.0.tar.xz";
-      sha256 = "0i9vyc4bfqj22a1v48f3gyfkxl3pi9smsg0lql1bs0x8rsn7iznd";
-      name = "libkomparediff2-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-dev-scripts-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/659kk26hrkssc4xkyda1kwf41ri00csx-kde-dev-scripts-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-dev-scripts-15.04.0.tar.xz";
-      sha256 = "09r8wcln0m5akwjs939dbbz20kdqyxag91028vfmwzkw9r99604y";
-      name = "kde-dev-scripts-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdepim-4.14.7.tar.xz" ".tar";
-    store = "/nix/store/i8i89jlpkd3rmgyfbw8xbv67az4xkmjq-kdepim-4.14.7.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdepim-4.14.7.tar.xz";
-      sha256 = "0hnmpjrcv0qcyn6hagpayza2bjkyd2v8y02rriifq9q99j7rwyj0";
-      name = "kdepim-4.14.7.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-km-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/xdmcjjrfxhwwigf32sbafbakczc9jfyd-kde-l10n-km-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-km-15.04.0.tar.xz";
-      sha256 = "1rv7pp35sgqppqs320pnlpqrjs0ljix9dd92fl2jrfpag15fi887";
-      name = "kde-l10n-km-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-es-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0kz1fd8ha3m8r5kmqa9phr607ayry1ds-kde-l10n-es-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-es-15.04.0.tar.xz";
-      sha256 = "0bjh1x3snldbmfvdamgid23cxv1sn3qwsdpy92h1djb49zbm51a0";
-      name = "kde-l10n-es-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-fi-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/brvc7zjfmcvif2y8n4zrmlva72v243md-kde-l10n-fi-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-fi-15.04.0.tar.xz";
-      sha256 = "0xh66i7wgapi6bhig712mlq8dkaml9dpzsj43dic58xw8bx4n6s4";
-      name = "kde-l10n-fi-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-nn-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/h0hfrfigk06zqqgl0crsah3sqgh05syp-kde-l10n-nn-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-nn-15.04.0.tar.xz";
-      sha256 = "1d2yvvl6rralsw77vg6hmbi84dswf116dpab7r5039nqgxnr8k81";
-      name = "kde-l10n-nn-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-it-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/r2mbi7gj1a4f71cp6xgjxfkbmx1qzzrp-kde-l10n-it-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-it-15.04.0.tar.xz";
-      sha256 = "1izidgcrzyvxka143cpnvrcnf2ddzp8384sjw6bvw32wsxi3v0mp";
-      name = "kde-l10n-it-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-pt_BR-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/kxaxpwzy0bs1675by3qhhvj1hlvvig7a-kde-l10n-pt_BR-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-pt_BR-15.04.0.tar.xz";
-      sha256 = "0s6pc40ig83zjqbgqwhfkxzhp9wcrgac6hs5qhcxbs3awfmxi5hn";
-      name = "kde-l10n-pt_BR-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-kk-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/mxmsybkjr2pr2xwfrxciwf6jjn2mp1vj-kde-l10n-kk-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-kk-15.04.0.tar.xz";
-      sha256 = "0czb1dmrdciim910bnazvsvi7lcvq27bj055f36w6y6l1zgvv8c3";
-      name = "kde-l10n-kk-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-fr-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/cj9bhf10x4rcvcia97l9qhjnzll979ls-kde-l10n-fr-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-fr-15.04.0.tar.xz";
-      sha256 = "0g94wik9q6c9w5x851k76qfk0fknv6ga497vwqka1h4yrmdmc1vl";
-      name = "kde-l10n-fr-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-he-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/pyl52lwdrvfi3xpby5yyi93204jp3mjx-kde-l10n-he-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-he-15.04.0.tar.xz";
-      sha256 = "0hpnn6rci0bavl6hqs6v2ylz26sjyf5siwi2klfc3fsw6a04in43";
-      name = "kde-l10n-he-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-nb-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/rn2hih1b8fdbjahg1va76kn7cdjq05g9-kde-l10n-nb-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-nb-15.04.0.tar.xz";
-      sha256 = "1mz3bcm92745zr6gn7q85p72l57sh19bcvvkpg40c63k34xpwpan";
-      name = "kde-l10n-nb-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-fa-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8mvkdlcf0azzq8y5g1r2bbq15z92b8df-kde-l10n-fa-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-fa-15.04.0.tar.xz";
-      sha256 = "1jmwjlbnlciy4k9szqi7vjwjpx94faixjg2mmg42cjfx5as9ws5x";
-      name = "kde-l10n-fa-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-nl-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/01ryc8gdgvjawaki8qaw5dpbyibvng63-kde-l10n-nl-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-nl-15.04.0.tar.xz";
-      sha256 = "0a3c7fkw0cczdd5733c7klfsffpi5ah1i6alqknm15y534bsigzc";
-      name = "kde-l10n-nl-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-cs-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/g71kfpca8y88a0dmcrphban2vjvyr85m-kde-l10n-cs-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-cs-15.04.0.tar.xz";
-      sha256 = "1bl0w1qhk05xqniv1piik9gkj5nlcsb90bpxlvj0sd5ivcqxma53";
-      name = "kde-l10n-cs-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ko-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/afq8qa9cr7yli1djasn7xs9fg781b3dd-kde-l10n-ko-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ko-15.04.0.tar.xz";
-      sha256 = "181gzqhg6lc5z045l05zxz4zrc6hx36fmb91v62sfn2w70dc6jmd";
-      name = "kde-l10n-ko-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-is-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0whvwp9h1lrnqcf68qihaq5mlz73lm5b-kde-l10n-is-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-is-15.04.0.tar.xz";
-      sha256 = "050fdym6mlj1m1m594jglhjcxwk8dx4hc6p1428ldc19m4b9q06c";
-      name = "kde-l10n-is-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-zh_CN-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/fd72fjmwlgy7znmi7gz71qzd6fb9w5k7-kde-l10n-zh_CN-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-zh_CN-15.04.0.tar.xz";
-      sha256 = "0klkxznhfc5sfrlnz80fqf06lzk8g411cz2v0wpd2wjafk1pyf56";
-      name = "kde-l10n-zh_CN-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-hi-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/g1nxxpcihfcb0kwk0bm53acvv8b0yfgh-kde-l10n-hi-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-hi-15.04.0.tar.xz";
-      sha256 = "12qgzwiy0igz7i352dwk5ipsxhia0spi74ibk70xr7irr9axgidr";
-      name = "kde-l10n-hi-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ja-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/knj0hcr1dirq6rlhmw9dg1vl5ag52h6k-kde-l10n-ja-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ja-15.04.0.tar.xz";
-      sha256 = "1b8741fzhimf3bch6mc9hzdj040y50gf7fgd7ja5n5ipi0ma2drf";
-      name = "kde-l10n-ja-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-mr-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lg8jgickpm35z3mfypigxhngq4r93c2h-kde-l10n-mr-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-mr-15.04.0.tar.xz";
-      sha256 = "0v2mcmrpqz31yix7z7kcjcfpwpghsifnvwmdf1k1lif0a9mq5qq1";
-      name = "kde-l10n-mr-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-pl-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/yq2f4v4vfafxk8j1j1v97jbh39bklnag-kde-l10n-pl-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-pl-15.04.0.tar.xz";
-      sha256 = "002nladxsgh9pamcaibsx7z7dcvcpbii9dyql8v3845wqjpgj8wk";
-      name = "kde-l10n-pl-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ug-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1i36fnf4018v9zc0awz7raqbv7269cay-kde-l10n-ug-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ug-15.04.0.tar.xz";
-      sha256 = "094x3jnaby75q1j7q6c79y0sw63hsqqvw1qv0dzjgghky7qs584s";
-      name = "kde-l10n-ug-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-pt-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0svv0vq2dl7cm4wihdsp459m404jvimk-kde-l10n-pt-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-pt-15.04.0.tar.xz";
-      sha256 = "177b455rgdrm021lvwlx6xgbnk3mh38l6080i2v52rzjm6bmchsy";
-      name = "kde-l10n-pt-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-gl-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/h1i1cg1qhsxfiffalx4j4bar3nbwjpjr-kde-l10n-gl-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-gl-15.04.0.tar.xz";
-      sha256 = "0l27hrsd1pbk3w0lgz34zspmc6b4cs4y0p8i6y1sq51sd5p8qwd4";
-      name = "kde-l10n-gl-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ar-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/vsqwvz9r39nypa1hcxnn3figzyngpf6v-kde-l10n-ar-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ar-15.04.0.tar.xz";
-      sha256 = "04djbcdq3z4iysbvdiai2qd7wm9zx5fp400k3zsw36150g93ar7q";
-      name = "kde-l10n-ar-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-uk-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/sc5haa7ci8zwglc03s60bc5and8ydqgi-kde-l10n-uk-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-uk-15.04.0.tar.xz";
-      sha256 = "0n01ypzyqr8k30hakahpm68430bgr207yv5mbw2parzj3xbwzpbl";
-      name = "kde-l10n-uk-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-el-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/fn45av76smcp2bj01aphy1m49na74jlz-kde-l10n-el-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-el-15.04.0.tar.xz";
-      sha256 = "0xxfqc1hzf3nbvja8c6aq6axpwx64ifqz32nxw4171valjj1faqv";
-      name = "kde-l10n-el-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-eo-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ijscp8qiliavdzda0k4vzgmfp30a065q-kde-l10n-eo-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-eo-15.04.0.tar.xz";
-      sha256 = "12j9ggkgjbz229iwzpb19hjnl6zy2fvgkk68mh133ij3ik70i3bd";
-      name = "kde-l10n-eo-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-hr-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lm8d1vbsplg0r6z7ksir7z9nqjy7c0pj-kde-l10n-hr-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-hr-15.04.0.tar.xz";
-      sha256 = "0a0p1bspv849zdja86rw7lvg60h6rgl1g5hc4zajmq9sviknsy3k";
-      name = "kde-l10n-hr-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-lt-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/bm9c9n9jln8aadmjmqhjqh67vd2d3126-kde-l10n-lt-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-lt-15.04.0.tar.xz";
-      sha256 = "1l899bj9zw5db9wf6zhd6f9mpyynwagk907q8ws2xh6nlgrs9ydx";
-      name = "kde-l10n-lt-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-de-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/bp31anbdx5f3blgdnhl205vrqw9jgfx0-kde-l10n-de-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-de-15.04.0.tar.xz";
-      sha256 = "1hd0pz2n0l1hs5dy8426n53w8d0a4mys7m7wyihs0a7akf76cy4s";
-      name = "kde-l10n-de-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ia-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0a57w09ilczqr5dwwz8x8qvgqq4wbzpj-kde-l10n-ia-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ia-15.04.0.tar.xz";
-      sha256 = "03wir3y5hz3fnkqqv97bcjv4rc768f953y8dqsc362a61zidw70l";
-      name = "kde-l10n-ia-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-tr-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/whhz3930c4q5n50v7n9xbzc6l4xblf3m-kde-l10n-tr-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-tr-15.04.0.tar.xz";
-      sha256 = "0h1997x62ycisnfnbawjfqfwblh6fhqqscns79f7d7krxhfyq7cr";
-      name = "kde-l10n-tr-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-zh_TW-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/22fjrzh19zha3ldbwkb7l64gnnq60i5h-kde-l10n-zh_TW-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-zh_TW-15.04.0.tar.xz";
-      sha256 = "077pr968z7d8ldnv87vsfn9j13llx3qqw9gwc041c9av73vp4ccg";
-      name = "kde-l10n-zh_TW-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-sr-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/16bpvmlzzw1cqjmrlvznd5751p1fsi18-kde-l10n-sr-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-sr-15.04.0.tar.xz";
-      sha256 = "0yicfyaj6zckk0x9skw9q3qnh0f0vz6pmahgh1pd5ayl3sqs8dhk";
-      name = "kde-l10n-sr-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-lv-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zv04hsibpg539rzkg1g7h2nfm946pz8h-kde-l10n-lv-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-lv-15.04.0.tar.xz";
-      sha256 = "1r2fahydjybk5zparmn4wjciys5kjsjps2mkhlk1x5k9aa0wimjg";
-      name = "kde-l10n-lv-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-hu-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/04hs3q4dknk3b305zqibxskqnzm4f6r0-kde-l10n-hu-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-hu-15.04.0.tar.xz";
-      sha256 = "010d3x7l1kadp3wj2v9jg0bjd9d3xw2q3ql7i21705s2zi2any7k";
-      name = "kde-l10n-hu-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-nds-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/5n06i2kass6wqnl6ql28s1ryrbj2399y-kde-l10n-nds-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-nds-15.04.0.tar.xz";
-      sha256 = "0asgj3dkbjgcabl4qrz3i8dv0i0348dg6q0fk1sgicm4257y0a7l";
-      name = "kde-l10n-nds-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-sl-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ai53nz76fbqj1adsl4lb0byvvcn8bg2v-kde-l10n-sl-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-sl-15.04.0.tar.xz";
-      sha256 = "0jm6b37irpp0jabad4jpqlvpw6ir5ygc0cs49138hb58kcjwi54v";
-      name = "kde-l10n-sl-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ro-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/p18pga44549fxqa0ksijc057dd5phbd6-kde-l10n-ro-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ro-15.04.0.tar.xz";
-      sha256 = "1lmjz5578b1xbgdgrrlgv6vyiara2n5595kd0pg70s1ixvd986as";
-      name = "kde-l10n-ro-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ca-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/6grb8a1wydjjdkn2vkv2sj1dd8wp4317-kde-l10n-ca-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ca-15.04.0.tar.xz";
-      sha256 = "16n29ja4d83g001js682ijibblhfwfb8pww561bcvda84qbvhham";
-      name = "kde-l10n-ca-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ga-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/izn9fzf1r2xyc57rj889rc6ziv9kjsiz-kde-l10n-ga-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ga-15.04.0.tar.xz";
-      sha256 = "1n8prxqxxr8r76ry0jaszsn446y8vdk9b629ypj8s4d0byz336bq";
-      name = "kde-l10n-ga-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-pa-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/pbaf3bd49drbap8bx58pgz85xllqvjhh-kde-l10n-pa-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-pa-15.04.0.tar.xz";
-      sha256 = "18rqlh26qc4h7jbsa6jq27k5d1d5kwdbrd1slm8fcw67r6iw72ai";
-      name = "kde-l10n-pa-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-et-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/311y10ml4kxpkicjlja7k6wwm05yd75p-kde-l10n-et-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-et-15.04.0.tar.xz";
-      sha256 = "0hkh800rx03w5gvy1lc7fn0s5kldihcaml5ryvx0g1qrj5k61b3r";
-      name = "kde-l10n-et-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-wa-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lld8r34x3lclrb30p8w0qr6gw117h923-kde-l10n-wa-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-wa-15.04.0.tar.xz";
-      sha256 = "0mivzilb2f3fp5wn2vc6c3z20n0l4cdpckyk43fdb4h9sys02xs3";
-      name = "kde-l10n-wa-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-bs-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ajsr93ly7db9pwjjbrkvr5r4n0cx03fx-kde-l10n-bs-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-bs-15.04.0.tar.xz";
-      sha256 = "0zw2q22lm73k04c3nb0596xd3hknfhc7gq9i4n7kj55sblv0mqzz";
-      name = "kde-l10n-bs-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-da-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/45bg2qd1nyjnnqi4yzpkkwcimlnr5fs5-kde-l10n-da-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-da-15.04.0.tar.xz";
-      sha256 = "1v07bazlq6420zkfy6m3jvwcyy2snz93967209204jnxkzf3ssk6";
-      name = "kde-l10n-da-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-id-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ack1f3vdjkjbzpdsai22ki3lncc5v6s9-kde-l10n-id-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-id-15.04.0.tar.xz";
-      sha256 = "10mr2d24akz5la2bz88y827dcv061sqrbi9awbiirgd2wqisnn8z";
-      name = "kde-l10n-id-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-sk-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/gcnmv26q44ya6jb2xwhm4kvp8aqr059l-kde-l10n-sk-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-sk-15.04.0.tar.xz";
-      sha256 = "13v871ahfj3bwaj0ha6fm6gpn7x9qw9m5dz89mfg3h5vskqv7akl";
-      name = "kde-l10n-sk-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-bg-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/v7ln63jsr0v32l86rqyg6fpinzpjpns0-kde-l10n-bg-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-bg-15.04.0.tar.xz";
-      sha256 = "1p4y9rbxwwnghslwjk1m32a26h6pnssyj73ns1az3saqyfb85gkw";
-      name = "kde-l10n-bg-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ca_valencia-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/vaih1nkjz81vm6vgfy25iqd8dxrivsqc-kde-l10n-ca_valencia-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ca@valencia-15.04.0.tar.xz";
-      sha256 = "0ij9xp47mv63hgdbri7cmvld3zgg0sfgip0gg7iqinzkj1cifj9f";
-      name = "kde-l10n-ca_valencia-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-eu-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/rkbbjy12la1p7l7vm5xk4hwy72f4piys-kde-l10n-eu-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-eu-15.04.0.tar.xz";
-      sha256 = "129k6m59x8f63f393jxx61s67f9gmaab9ilaqy2978d64l3z0bpv";
-      name = "kde-l10n-eu-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-en_GB-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/fzwxz4747hfpjisg7n5kc77gb92dm3c8-kde-l10n-en_GB-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-en_GB-15.04.0.tar.xz";
-      sha256 = "16c255j3klss711iqk41k1kcf5nn0lwg0qr74c1abvgrnpsm261h";
-      name = "kde-l10n-en_GB-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-sv-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/49fv8h0b5lzf4cm5qc6baj9sk9k29pnz-kde-l10n-sv-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-sv-15.04.0.tar.xz";
-      sha256 = "17z9yvw9mrjb7h3qa4zc18f5z2n6b0gr4y76s7jfnh8kpjgm1sgr";
-      name = "kde-l10n-sv-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-l10n-ru-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/30j0lkfk4p7pwv4nyknvm1wbd93cfji7-kde-l10n-ru-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-l10n/kde-l10n-ru-15.04.0.tar.xz";
-      sha256 = "18l7wnfr1indy8im131lxd45da9x49ii1iavi8g1lzmqq0av097z";
-      name = "kde-l10n-ru-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kcalc-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/4qsl43z86wq82bpspki2y4gfn8iy6xag-kcalc-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kcalc-15.04.0.tar.xz";
-      sha256 = "0rkvxbz9s5wqa054bf1xg3rza95plvnakydlny04iw5w8i33i5yc";
-      name = "kcalc-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkexiv2-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/dnl3qi3ldzmf1yl7m8yzlgxyzvj6bm4k-libkexiv2-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libkexiv2-15.04.0.tar.xz";
-      sha256 = "0zv8yjgwfdvkl2ss2gyv6bqbc3qgnz3hryhcjdyfa56kys6xz7n3";
-      name = "libkexiv2-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kigo-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/yvj9sxfh55nvnlvcz4b12iqqgnd3p33y-kigo-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kigo-15.04.0.tar.xz";
-      sha256 = "00ggvrs3mm5f2q6zkdsxbrhw8vgb0h4p4dk3v0agf3q4bqr86akr";
-      name = "kigo-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kopete-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/9yn7mj3csimgx1r4q6bp9gknh5bqnw49-kopete-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kopete-15.04.0.tar.xz";
-      sha256 = "01wl7n535j9l21zbzjhix33rhr0i4rg2bb25zxwk6sc2ahbsqcp7";
-      name = "kopete-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kaccounts-integration-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/qpc0c00mhc367aivilvkp329a4g6iqj4-kaccounts-integration-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kaccounts-integration-15.04.0.tar.xz";
-      sha256 = "1g2rn256wfl78ajxircaikq3hpj5nxfnk0294wz10srmg5a4hgji";
-      name = "kaccounts-integration-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkdeedu-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/wyk34ah7lc3vvrcq4ldik6brm2jk9fiv-libkdeedu-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libkdeedu-15.04.0.tar.xz";
-      sha256 = "140ri9whmvxjlj2i0bdpyr07zwspyl5d1bh91vm8hv2zdgmxh1rl";
-      name = "libkdeedu-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "superkaramba-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1ck2s3vi0dksdlis3cghy8advap8y5a3-superkaramba-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/superkaramba-15.04.0.tar.xz";
-      sha256 = "05j93sa39m78vlxdy4haqj5913dyi6kab5sspi8ky0why17zmaav";
-      name = "superkaramba-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "klines-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1zsl1wawlhzgyr53hfrn5dzqwii51ib8-klines-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/klines-15.04.0.tar.xz";
-      sha256 = "0c0saaybxjshwap5rydc0606xkwmzl696r41fhkvr26c077p09p4";
-      name = "klines-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "cervisia-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/qmkqp9sgai9djwishibis5qckhl9dnrf-cervisia-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/cervisia-15.04.0.tar.xz";
-      sha256 = "097hayf2k2fv3d90jnhlh4iq4qvk3v0qg7ywchgipzsz0w6nayki";
-      name = "cervisia-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ark-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/nms2hq3a33k03lmhh8y7swiggglcysxv-ark-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ark-15.04.0.tar.xz";
-      sha256 = "09jcz7x5rjazz8xvxy3kx32v21ig736m5gxyxhl48inxaypxxd21";
-      name = "ark-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "palapeli-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zsh3ssjxmxggzf54kw9f73kzpy7y3n9d-palapeli-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/palapeli-15.04.0.tar.xz";
-      sha256 = "1iql188gysjnhym1mj9h2cizydgd97pal37zkxljc9qhqb58wq3d";
-      name = "palapeli-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksnakeduel-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/9qg39s2sb7r8sdy37hm185jn7dsv24q1-ksnakeduel-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ksnakeduel-15.04.0.tar.xz";
-      sha256 = "1i32mrc50isz0q0gzfkd0fz8in2hhc8d61q55dprq3ps28lgd77n";
-      name = "ksnakeduel-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kollision-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/qxc07ckfn60wcyb8cs75dy2d8gbj211z-kollision-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kollision-15.04.0.tar.xz";
-      sha256 = "0ch3h3g0hgm52l13v6wdrvacabwkvzx537bhfib05prb9604vkn8";
-      name = "kollision-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kamera-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/6l8pgg55qph99rmprrgz56vvv621zbjk-kamera-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kamera-15.04.0.tar.xz";
-      sha256 = "1mjpbcslba9wnxrvm4xg6kfy11msn7kvxln98ak55gvpfh7zhm5r";
-      name = "kamera-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "klickety-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/iwlkabdklb3v1md6vdsjw8x09vv0kzzv-klickety-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/klickety-15.04.0.tar.xz";
-      sha256 = "0l8vk4gkfjs71xfzw9lg18g9xg4yf4l9jy1f9plikw9gfm7br90p";
-      name = "klickety-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kolourpaint-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/h5x9pzbiq62jgwfln5gx6agzcfyz2j3s-kolourpaint-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kolourpaint-15.04.0.tar.xz";
-      sha256 = "00vyblqgp7hqigid6xgj31b8jkqb8jlsvnbd2ci4zg7s778l10sz";
-      name = "kolourpaint-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-base-artwork-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zdqama1r97132n4ks422yzr4zhh6fjmq-kde-base-artwork-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-base-artwork-15.04.0.tar.xz";
-      sha256 = "1r3w4ab9vls7wyzy6g7ashnnixxid894ghqc5yzhpn4x999y65lp";
-      name = "kde-base-artwork-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "gwenview-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/3wkajcx7p2wdzldbjb94brqlfqhdn54k-gwenview-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/gwenview-15.04.0.tar.xz";
-      sha256 = "0h8ndywh8w9wx0zisl1b9681d7zqx2d3ki40zxdgk4clyl34aijb";
-      name = "gwenview-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-desktop-applets-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lgapni2v7qsl3wsi8wx0vwcav9almhs8-ktp-desktop-applets-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktp-desktop-applets-15.04.0.tar.xz";
-      sha256 = "1byv8dk864vwl4s5c18xjh3ckdzr9d7gq1mjrlaslxang7fr97cx";
-      name = "ktp-desktop-applets-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdesdk-kioslaves-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lqdl7ks619gxdhnaa9q0axni4pz3h5v5-kdesdk-kioslaves-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdesdk-kioslaves-15.04.0.tar.xz";
-      sha256 = "116xj9i3iwzbz41n3bka6xg0yq88iwzw066dy5dbs3yxbpmky19g";
-      name = "kdesdk-kioslaves-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdenetwork-strigi-analyzers-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/dymdah33hpq9qn07qcz402ijmwc67bvd-kdenetwork-strigi-analyzers-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdenetwork-strigi-analyzers-15.04.0.tar.xz";
-      sha256 = "1zsa3ky6plfksm8k8hgd93d0awrsi5gqz3qbqfbzj3a2qic7nim6";
-      name = "kdenetwork-strigi-analyzers-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmix-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ql4a0i42ij33kd9y7qg4ng1a0p5j2sqs-kmix-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kmix-15.04.0.tar.xz";
-      sha256 = "0yj0byy98243c83bw938i1x8yxgbib8vr2s831hpmqi8h3v7xvyg";
-      name = "kmix-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktuberling-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7cp8mnviqns6ij94xxz3mpizdc1avln9-ktuberling-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktuberling-15.04.0.tar.xz";
-      sha256 = "1kqz1g0r3icgx3brd8qlln29mxcx9b54kvl8wdar04r8ckk0m733";
-      name = "ktuberling-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kturtle-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0a3rrj74sfwhqwjql88gqzw8qbmf8llr-kturtle-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kturtle-15.04.0.tar.xz";
-      sha256 = "00r3lzqa0sazccy28kmackqgqwcyqsl3mzjs7vpg4i76f0agfx4h";
-      name = "kturtle-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-dev-utils-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/gszm27h7rghsvkvhyf15xnp5bgjj18in-kde-dev-utils-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-dev-utils-15.04.0.tar.xz";
-      sha256 = "1vvrrb4c94apc67fg3gpzgfmhylx6m7xfyq0y5kjxk8l91fl2bdi";
-      name = "kde-dev-utils-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktux-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/cd126p5pizh2ha1jadg82csdzazlln49-ktux-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktux-15.04.0.tar.xz";
-      sha256 = "1j5h65vdigym6ldz7fpn2kidxphfl02l4afg0jmj55wrym1vvc0r";
-      name = "ktux-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "mplayerthumbs-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/xbdr5s1xf4f58lpshppamii1j5rl5ll8-mplayerthumbs-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/mplayerthumbs-15.04.0.tar.xz";
-      sha256 = "12d60nkmfp16pgrfh5brl80n1y7crmdzk5k3ad313l4ani99z45r";
-      name = "mplayerthumbs-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kblackbox-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/72rhcbzax6ahi3myznpi1fkh0x9cq6ay-kblackbox-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kblackbox-15.04.0.tar.xz";
-      sha256 = "1w55nzadmkgspngxwazm6nfdf3s72rw4l0absx1jhinln7mif8w8";
-      name = "kblackbox-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktouch-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0p1m96gmy2rw5pyy029j4257b32ziyvx-ktouch-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktouch-15.04.0.tar.xz";
-      sha256 = "16gd6rghz1caw88yh32728kcxj79688g4hw3dkmgkayb5wcwnwl0";
-      name = "ktouch-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "dragon-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ha0s2dfbqb6gjgwq5451gbcgq6h3q16r-dragon-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/dragon-15.04.0.tar.xz";
-      sha256 = "0rzyra1xqjyrnx7926dql2fw9avy7rwx9x86v894xppcjqsyr3jx";
-      name = "dragon-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "katomic-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/dzv478dhlwj11gpfd0k7npmyw8z09yfw-katomic-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/katomic-15.04.0.tar.xz";
-      sha256 = "0vbcv973ppijip8l1y2kkj93rjxbcj3xw6pypw50w3pg168s1ylv";
-      name = "katomic-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmousetool-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8ws0s6acsrrq7x0lvy61vy4sqhndbakm-kmousetool-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kmousetool-15.04.0.tar.xz";
-      sha256 = "005y7jp52f4x9193dxql8wwmimbylkazl671di2gfvrmcrh164n6";
-      name = "kmousetool-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "rocs-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/palrbcvrwp2vxf67myadgcvr5wl8v3pq-rocs-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/rocs-15.04.0.tar.xz";
-      sha256 = "03ibi17331vcjzfc38agalbybn7k06favm0sgcyg68qribpcwmg1";
-      name = "rocs-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-wallpapers-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/b7716r5kxhznfdlp9cwp3vf2vhsv1r1c-kde-wallpapers-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-wallpapers-15.04.0.tar.xz";
-      sha256 = "0ckvbsdim0485h4f9sz1z0qgbb61n8l7ncwr80zm7vpnx46xzavm";
-      name = "kde-wallpapers-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdiamond-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/p1f9xs4wkbdi9cmry7wc5686dxy2fvsg-kdiamond-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdiamond-15.04.0.tar.xz";
-      sha256 = "01ri6nj217dmg2xgm4ra4gdsabk28c8bkw6z69x5smbczjshdcr4";
-      name = "kdiamond-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkipi-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/jckns8avmk0k34k62f77bdrl9cbf01nr-libkipi-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libkipi-15.04.0.tar.xz";
-      sha256 = "0c90y8f70k83pxxfx6mk6ar6zw7lf2l7mib526x8s7j534ya57ad";
-      name = "libkipi-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdewebdev-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/wlx7pxcwlq5f0w2hrlms5gfxfixzfzbc-kdewebdev-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdewebdev-15.04.0.tar.xz";
-      sha256 = "17gizsgvw5ihibsf8z2rmczzkqp1gp5jbyvvsairgzv1izryi6ah";
-      name = "kdewebdev-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kaccounts-providers-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/3vyd044k6qmjnxc7sfig6q90g2dr58lf-kaccounts-providers-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kaccounts-providers-15.04.0.tar.xz";
-      sha256 = "1b5cp6winxa9slqaq6mrf4y4py1d7ps55088gs35qcwrzyna04l7";
-      name = "kaccounts-providers-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "marble-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7kh58mg7dnd0yr6nksbfki20rncdqm1w-marble-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/marble-15.04.0.tar.xz";
-      sha256 = "0d6i7wwf220790ld5qgd30gph9y71a75ybjjfg81k13a4jg0ndk4";
-      name = "marble-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkcompactdisc-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/rrdyv611nn7kbnkr1fnvn6xkd01k8zwb-libkcompactdisc-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libkcompactdisc-15.04.0.tar.xz";
-      sha256 = "0nisrgpcgf4r83q7p82b8xfpzq96qjk8362i6dalsb0jcakia4c2";
-      name = "libkcompactdisc-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdepim-runtime-4.14.7.tar.xz" ".tar";
-    store = "/nix/store/fjrkx2vwb6m4kfl01sa4r23wbvmsmh05-kdepim-runtime-4.14.7.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdepim-runtime-4.14.7.tar.xz";
-      sha256 = "0ywg703sqidxif853gfmqriymkkp9xzkfxd863p1sw35n1zhfkam";
-      name = "kdepim-runtime-4.14.7.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "oxygen-icons-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/akq8y3wjkvbzwyzwxyd1vkmqygmc78p4-oxygen-icons-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/oxygen-icons-15.04.0.tar.xz";
-      sha256 = "1ysy82war9n1dm5nwj69aasz9abp2zf5dmw92gv8brzyrn8svn9d";
-      name = "oxygen-icons-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kpat-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/af38swaxzd4yavh6iaxq3ha8xn3q9gmf-kpat-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kpat-15.04.0.tar.xz";
-      sha256 = "076jrjrs97353pw39gbanjf5s8l4cj8g2zapngyc1kwm6q0jry5w";
-      name = "kpat-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "juk-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/bbvywnmrg713gdmzxkndkcyjs7jmdazj-juk-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/juk-15.04.0.tar.xz";
-      sha256 = "160n9wpx0krf1nlpa3hbj0b1yblgq68mw3c9is2j41k0p2b7divi";
-      name = "juk-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kspaceduel-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zx8jk8s9mrfga1467a42hfdz0w144p66-kspaceduel-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kspaceduel-15.04.0.tar.xz";
-      sha256 = "0drb3628l47qp35h8vyz66ma6ph5v9sg2k9dp0fghrhwp1x983fv";
-      name = "kspaceduel-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "picmi-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/rrqb0hx0kb96y9x2j65vbyq12pk4m875-picmi-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/picmi-15.04.0.tar.xz";
-      sha256 = "0abas2qx83a35dghrr5gbsvgc0lg0vk0br18nizi82sbiawls24w";
-      name = "picmi-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "artikulate-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/a4vr2g2m7hr6svmbdkg89na3zvsh4fg5-artikulate-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/artikulate-15.04.0.tar.xz";
-      sha256 = "1ghffybaq2p9jx7cppbji8jk0dbblw3mh3czfzfms92ahy9xzcbz";
-      name = "artikulate-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdeartwork-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/3yyj9dcqj7b2zjrz5w7j20h0pv10gnid-kdeartwork-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdeartwork-15.04.0.tar.xz";
-      sha256 = "0kwscj036gjvai5knw1jpxjacllza4y8wnlv24lp19f2s61jqq24";
-      name = "kdeartwork-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksquares-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ayr2hry1z8z3v8q8a4iamck9bsxy1pdw-ksquares-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ksquares-15.04.0.tar.xz";
-      sha256 = "15a605pc7jfsrsj1jj3lqy42z1bnw4pppx0hv51xlhiza00s2kww";
-      name = "ksquares-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "zeroconf-ioslave-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/4kb7k1cfzksinnw0d08nginvli44rwx8-zeroconf-ioslave-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/zeroconf-ioslave-15.04.0.tar.xz";
-      sha256 = "0fqqx0ji1v0cz87qb0kig9kkfdigmdfmz5qw1y2kx25mb0rp1g2i";
-      name = "zeroconf-ioslave-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "svgpart-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/n8v8kbzq9vsghk0nc47rl49zqfz1w182-svgpart-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/svgpart-15.04.0.tar.xz";
-      sha256 = "0985jjy2mghs57sy53mkas5p9ya0makrkklq99s04rgl93f2akj1";
-      name = "svgpart-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "bovo-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/sigbrnva6hymkgnjd48aw65s7vrysi2g-bovo-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/bovo-15.04.0.tar.xz";
-      sha256 = "0iffvb4m9bszpxh8s8yrpyzawyflwcbkajib5h1lw8xsgi6vcqhc";
-      name = "bovo-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kig-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lv7d5hvgs42razrzhd3g60i1gpzb8w06-kig-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kig-15.04.0.tar.xz";
-      sha256 = "1v9p9f9dk3f2bfbwic1vf8ky5ziac4vx0vh8wxshzbjjb89kxkq6";
-      name = "kig-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ffmpegthumbs-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8g1l1dd5cccy6ncaywfhpf1x2633dk37-ffmpegthumbs-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ffmpegthumbs-15.04.0.tar.xz";
-      sha256 = "0j0x8b0gcwyzx307rvhrx4k4g530lgyl5rzvdpkjqpga2qjg8q96";
-      name = "ffmpegthumbs-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "parley-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/piznlrz9g0kvy1262p87db03830mx6by-parley-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/parley-15.04.0.tar.xz";
-      sha256 = "1f6nmnjz84cm8yk53whjm7k471y2vj106m7q230xj1g56mb5adrc";
-      name = "parley-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "lskat-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/6bdihbmhk9vdr9mzj52alqhvav2x1lc5-lskat-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/lskat-15.04.0.tar.xz";
-      sha256 = "12mnvbisbaiychdgk6fb464lwvpjlkrwdz5101sdrw466c16a2a2";
-      name = "lskat-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kgpg-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/fys5hj4c13arjjqrh4kn8vyk92zrgz25-kgpg-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kgpg-15.04.0.tar.xz";
-      sha256 = "1n37jh3zl4zb3dnb9lvjpni7gl6sb9s1jwmvf4jvqmqnlqny1b4f";
-      name = "kgpg-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kruler-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/2c9221fqxkz6ajx8g2l7xnhcfj8iivki-kruler-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kruler-15.04.0.tar.xz";
-      sha256 = "1pnhram0g6hfi2k13xhixwpr9vx1dhkvivn1y1ydvwk26klala1w";
-      name = "kruler-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kscd-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/9yidmqhziwp6sj4l0pzh1gvmhi5g1ny6-kscd-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kscd-15.04.0.tar.xz";
-      sha256 = "079sj1g5mn32b2l2l9qap55s5sr6bv44a9ncswibkr49vwq7va10";
-      name = "kscd-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkdcraw-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/5y5x3vr7zibkhk5pk7hz5ibkza56d54s-libkdcraw-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libkdcraw-15.04.0.tar.xz";
-      sha256 = "0h7m6m27jsp4xh6ywrbxad3c413ipzfgz357ahffqcafdjw6yfx5";
-      name = "libkdcraw-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksaneplugin-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0z48pwb041r7sfwzvsxdqyw46bxy6d7d-ksaneplugin-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ksaneplugin-15.04.0.tar.xz";
-      sha256 = "1wh83c31x1n7vipi6m29hsinrpzwsvjnj3psg6s7bywnb6if2ir7";
-      name = "ksaneplugin-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "lokalize-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/5by08m2jgiap41wrk8kg7lc8b6q6ifwh-lokalize-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/lokalize-15.04.0.tar.xz";
-      sha256 = "1nikpfjnmm3ws2qd46zq6g5v64dbfa7pmbp8nw1sv7dcin3k42ll";
-      name = "lokalize-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "granatier-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/w9bkpa3frqgnh07gbaln9m15nhj0vdcj-granatier-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/granatier-15.04.0.tar.xz";
-      sha256 = "1s5jkwqzjlcd343sm6akzx56a48yvx7z9n3cww9gxrjl76q1a19c";
-      name = "granatier-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksudoku-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0ssavwdndi5h0mc3cjrgn1vpfz20wmdm-ksudoku-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ksudoku-15.04.0.tar.xz";
-      sha256 = "0bxcjqpkqr5zbjrx8drmjvjgnyjvpqbvmqgyfsidm8rgfg6mi3fz";
-      name = "ksudoku-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmplot-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/76appqh3cg62681baq1cy6fymadaq2c8-kmplot-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kmplot-15.04.0.tar.xz";
-      sha256 = "0fnvjixnp2iyjg0hgm6lkry407f0fh39kb184jzaakrp703m3jmi";
-      name = "kmplot-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kcachegrind-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ys2xzw0hck8gp7g79m933580y7rix754-kcachegrind-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kcachegrind-15.04.0.tar.xz";
-      sha256 = "1q1z0w7c7j8ii97n4vcd80qi6hb7gsg6j9l3md37ls8c4qvhknx7";
-      name = "kcachegrind-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kbreakout-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/x4rsvf3qzl921vgamzjxkvwjw971r917-kbreakout-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kbreakout-15.04.0.tar.xz";
-      sha256 = "039g4qmmkf3lq8jx5vgasvqx19k3xbvfkm0j9his61z021ldjxla";
-      name = "kbreakout-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kapman-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/82vlfb4yna41mip5zpkal4kpy67w4kjv-kapman-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kapman-15.04.0.tar.xz";
-      sha256 = "0glc8hcjs89s5cxa77f12pzlnmvr74kiqhcrk7djz98pnqwlsn5v";
-      name = "kapman-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kalgebra-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/346qqpdqx5hdzyvd4dlkag3ir951fjp7-kalgebra-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kalgebra-15.04.0.tar.xz";
-      sha256 = "07czg7i344qq93y95f46qvk3zpghkl3gcr8cd8wgc0v0b1mdmyfm";
-      name = "kalgebra-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "pairs-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/cd5q5wchjl2ncm44pwl156jks832y96z-pairs-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/pairs-15.04.0.tar.xz";
-      sha256 = "1d1va0b55fwivsvcz3izr680nl4zbyn44fdnirglw7q25278p7bh";
-      name = "pairs-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "khangman-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/krpgzhpksq4kr9r78w9f6rk2q0963lwv-khangman-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/khangman-15.04.0.tar.xz";
-      sha256 = "0cnaih6xhg11wrg0c3v7lir2yknc4k6m490aw7bhraz98kfxr905";
-      name = "khangman-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "konsole-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/qb3gypyd97v9cakicf44q7xnwfmyqsyz-konsole-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/konsole-15.04.0.tar.xz";
-      sha256 = "10qgynn6x7cxyp6lgri0vggmzmcvckwvrg9mrycdnwwrsfabscrc";
-      name = "konsole-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "analitza-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/c9xwpgl8bdp582w91zrchhywr1j9xm9r-analitza-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/analitza-15.04.0.tar.xz";
-      sha256 = "03kaaa8kp92lsva5shzqb9497wmhksm79pc39ip5l50lqac9gr1l";
-      name = "analitza-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libksane-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/6qn668dc4yppjwyc1ms0698nkmxj4sxm-libksane-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libksane-15.04.0.tar.xz";
-      sha256 = "0rnja700hwjn4bvy06lijndic2zryn64kybvj71ip6knq3nx77x6";
-      name = "libksane-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kbruch-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/g1hbkl20wkzglhaabxizzhrl1xpkfiy2-kbruch-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kbruch-15.04.0.tar.xz";
-      sha256 = "1662hqqsf1rnfwrqwx5wpl0cvr9313sh8bla2sig8v2s8v2lyyi6";
-      name = "kbruch-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmouth-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/dwkbfqj5a21hcryw42dwqw9lq1r4ld0d-kmouth-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kmouth-15.04.0.tar.xz";
-      sha256 = "1swvdrlcfxv312kncihvxba0cklmv47qyr2dbrkhb9s9v6jbiqb3";
-      name = "kmouth-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kppp-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8c2srwnwg41aypvjqzs08129wm391p2q-kppp-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kppp-15.04.0.tar.xz";
-      sha256 = "1ml5lc20jg05zfq9d274vqp7k7fh5369zshp073bi6zjj4cm7gss";
-      name = "kppp-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmag-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/gi6kw8zlmpy8gjijr34620dzp858h657-kmag-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kmag-15.04.0.tar.xz";
-      sha256 = "0wmarmybn56mppwb33cjg96906hh4vbnwxqpw2441axn5vqmf90j";
-      name = "kmag-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-workspace-4.11.18.tar.xz" ".tar";
-    store = "/nix/store/b65xpr56hpmfinssggl4fq88lky5czlm-kde-workspace-4.11.18.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-workspace-4.11.18.tar.xz";
-      sha256 = "1rvi88flk8c1j6qdkxak3sy1yf646ql3zipxw2azchwzd4k54mzv";
-      name = "kde-workspace-4.11.18.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksnapshot-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zim1ydmdxhwv0cypdviqdnn0nwz2d66q-ksnapshot-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ksnapshot-15.04.0.tar.xz";
-      sha256 = "1577ybwpa52lmv5pd0223pz5l3q4h3475fz5qp3sm1rwi0nzmawq";
-      name = "ksnapshot-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "okteta-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8z78fks7wl0rf3077yrz8hzvqvmxn516-okteta-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/okteta-15.04.0.tar.xz";
-      sha256 = "0svgsy838dlc2krn2rzb65a6i0dfav4xlmi4174d23qhaikl1z42";
-      name = "okteta-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "step-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/argcpdljdar6ga3psyz4wzr3kmvkmf07-step-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/step-15.04.0.tar.xz";
-      sha256 = "1fl4zmj4k3g8c7bas7dj2n82qlbq8k5p3s5bflcillrz6pdd4s50";
-      name = "step-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-kded-module-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/n3b0rfacc8i5p5hlgal66zr9gjfrkda1-ktp-kded-module-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktp-kded-module-15.04.0.tar.xz";
-      sha256 = "0ijinvp48aixx8fjdc8fxpm8ilzsn9pkhsiinh47wiabyjb8rj3z";
-      name = "ktp-kded-module-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kwordquiz-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/yik5ibmcy9k87y41nk3b03w1j2p3012c-kwordquiz-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kwordquiz-15.04.0.tar.xz";
-      sha256 = "10rq7zdd8i8dgmjzxgn6139ixzm5kzwiswal0cmkd42wwbdn6fml";
-      name = "kwordquiz-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdelibs-4.14.7.tar.xz" ".tar";
-    store = "/nix/store/xd5jr85rzdnsrw18ab811q6hcwq1f4vk-kdelibs-4.14.7.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdelibs-4.14.7.tar.xz";
-      sha256 = "1zhqvyx8gq7514mr0423z0gl1yn33snh53fj2ijkk4blhjga601q";
-      name = "kdelibs-4.14.7.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "killbots-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/nshwyzk14mam2av602sqzcxnwjzpny6k-killbots-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/killbots-15.04.0.tar.xz";
-      sha256 = "0a9jn8i5hw3v7kr6vqagxkqvvjs6qsb23g2khaxgbw0x0cz5nqx4";
-      name = "killbots-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdesdk-strigi-analyzers-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/55ksfn4hq342qbl8cm4jf8k8mmra096n-kdesdk-strigi-analyzers-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdesdk-strigi-analyzers-15.04.0.tar.xz";
-      sha256 = "0k00ip8ll1i96cazs78c6al1yjcnvpr1awb6g7yvvq019icjmzvn";
-      name = "kdesdk-strigi-analyzers-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-send-file-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/90s1naljnqa6r99nl2dpjsf8rjb3k7cp-ktp-send-file-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktp-send-file-15.04.0.tar.xz";
-      sha256 = "03i6irask1ccngwapirnc9vpk4nw7r82zl6jdnh7w9988c2wdl22";
-      name = "ktp-send-file-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "dolphin-plugins-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/n2vy60sdgnx3gb6fmmgd03d4jnn29nmz-dolphin-plugins-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/dolphin-plugins-15.04.0.tar.xz";
-      sha256 = "0a1f1si598cmqd0j9v6pz0w8s6286xg2wcfxzrmkr994bfkydd8c";
-      name = "dolphin-plugins-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksystemlog-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1wy9hsww32i53nv94bnzj83hfqw3x1ir-ksystemlog-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ksystemlog-15.04.0.tar.xz";
-      sha256 = "104yg6mjnhznsylpv8faqih9rpdxyp4667dagq7f1kfajy59jh1y";
-      name = "ksystemlog-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkeduvocdocument-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/x1qmhlskhz0ibs1pnxcb30bj1yk3f447-libkeduvocdocument-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libkeduvocdocument-15.04.0.tar.xz";
-      sha256 = "0lqp2qfsdjkchnb5xrbj9hax2bf4ls1wk7pmb364qvkkhfia8qv4";
-      name = "libkeduvocdocument-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmines-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/3vf7rffgww1k7byna7p05d0115p6924y-kmines-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kmines-15.04.0.tar.xz";
-      sha256 = "015xximi3xydkbygzlka7y8nmls3dc8jvr3dvvidl57gl1szmx73";
-      name = "kmines-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkgeomap-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/amqrx3hwvwrz8rgk3dljj11bvfpx4plm-libkgeomap-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libkgeomap-15.04.0.tar.xz";
-      sha256 = "0yd17xa085rvxsnsah6ny7w88lbs7c1ilxrvbpsf2rvjkbl96giv";
-      name = "libkgeomap-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "umbrello-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/5lahf10pz3vdh0dngi3fsmyn9g8cmk5v-umbrello-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/umbrello-15.04.0.tar.xz";
-      sha256 = "14lw9rnqv7bgni1rxwmgm4jnx2l2x5524wysqlhyp7np35mzdnlc";
-      name = "umbrello-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "bomber-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7mf874dsxa6wj59zfr6s1n7399rvl7m9-bomber-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/bomber-15.04.0.tar.xz";
-      sha256 = "1hpss9jmjsjl2shm2y50s5js33rpn0gd20il6wq454wm0k0q7rpj";
-      name = "bomber-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "jovie-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/35zcglbjikb4ayp14d9l6hgs5myv5i6l-jovie-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/jovie-15.04.0.tar.xz";
-      sha256 = "1sa6agn9zp12n98v7i9rxng2yn25b4yf2s8q8rjb3qg93kmzzx4v";
-      name = "jovie-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-auth-handler-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/9vacywnw3knldygpgxjghjbw2nfqdszn-ktp-auth-handler-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktp-auth-handler-15.04.0.tar.xz";
-      sha256 = "1hj3vc6wj768xdpr02v64p9wbrh1y61zg2fal3bk3fzrlz2yslg5";
-      name = "ktp-auth-handler-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kubrick-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/9rjk1xbzbnc2qqrni0ng2spbzailrb25-kubrick-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kubrick-15.04.0.tar.xz";
-      sha256 = "1qxyymrqav9hwa2ldqqpr49aj5sqzmiin6c4rmbirxmaasmyqn6a";
-      name = "kubrick-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kgoldrunner-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/l2lbbhnr6r0q1sf3rzzjnwina7gvlllg-kgoldrunner-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kgoldrunner-15.04.0.tar.xz";
-      sha256 = "1hsrjszck17gqnnpxzbdknj579n7xpmbq813a77736cmi95qr4h3";
-      name = "kgoldrunner-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "filelight-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/pr78axnbpxwah326z7jqhq4cz1p7h7wr-filelight-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/filelight-15.04.0.tar.xz";
-      sha256 = "18vcm8f8wgl0hqlycljv7kbq8iip5vadrsyhr58pw60cr8h36n0s";
-      name = "filelight-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kajongg-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/13030n2xwx0rnbd0myy87pfzrd93rpkw-kajongg-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kajongg-15.04.0.tar.xz";
-      sha256 = "0aa2c2c4322lv4prwxkhanw0lbrv1145w6fz473f6ybfhg9isc7d";
-      name = "kajongg-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-contact-runner-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/kw08x6m9wzrmhm6av38hz2nd18agxapj-ktp-contact-runner-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktp-contact-runner-15.04.0.tar.xz";
-      sha256 = "179q9707cxmd57iyadasdr9rvcqxwrahccc8vjylzh1x5p2arib8";
-      name = "ktp-contact-runner-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "sweeper-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/yz48bx3mdyvapyz52aa846f32102jh7w-sweeper-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/sweeper-15.04.0.tar.xz";
-      sha256 = "15amamnrg7d52l0agkw66k96xk0j5shk2667wc9p2jy6g96cw53c";
-      name = "sweeper-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kfourinline-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/s96mhycwzwrv5w708mz6appsbf1vivz7-kfourinline-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kfourinline-15.04.0.tar.xz";
-      sha256 = "1wpcdzlpy8jdnlzzhys8n08pknk7ncq41dchs2ii3v30w1dnwln2";
-      name = "kfourinline-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-common-internals-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/0q8wks5hqas02y3j384lwqy2a1npvmch-ktp-common-internals-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktp-common-internals-15.04.0.tar.xz";
-      sha256 = "0y6jwqaxvkzjqdz4j3b4z5ybz4d3ci09x8apfr3h0q5pf4crkv8p";
-      name = "ktp-common-internals-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "krdc-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ch18h2226p60xnyjndy40r8fgwajd80p-krdc-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/krdc-15.04.0.tar.xz";
-      sha256 = "1ikm5a8lb65iljdvs16ipclkassjjdf7i49whcvz71rx8agp01hr";
-      name = "krdc-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdeedu-data-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/05dzvpk81hhrfp0yncmgnq8q8nlps3z3-kdeedu-data-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdeedu-data-15.04.0.tar.xz";
-      sha256 = "1r157dbi75ayxww57vhww3cjxv1z2y2mv54xh2cf3zfjv6kmp7lc";
-      name = "kdeedu-data-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "signon-kwallet-extension-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1z4nb0mp0d654n7wmyddxslx82rh2y10-signon-kwallet-extension-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/signon-kwallet-extension-15.04.0.tar.xz";
-      sha256 = "1s3nm7vrwwgin278vif6w8yyi1vg9hk401swvlhwmn9305bxqm01";
-      name = "signon-kwallet-extension-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kcron-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8qjk4ri8l2cvvqaf5qpmzwz33gx0n9kn-kcron-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kcron-15.04.0.tar.xz";
-      sha256 = "0srq463k37klfbvrclhrni1kbn2bxxsfzp8l8lbx4dz8p93fcvdp";
-      name = "kcron-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ksirk-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/hngc4aajjzr5qszkxi745fi8l28k8wp4-ksirk-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ksirk-15.04.0.tar.xz";
-      sha256 = "1rl2c1yjiiw3gy4kblxgf2lh2sd5bpwz36hi9kv1dvf00bwi1w0x";
-      name = "ksirk-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdenetwork-filesharing-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/br98dpkixyvcr4dwp6fqfcgzrvgqvps1-kdenetwork-filesharing-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdenetwork-filesharing-15.04.0.tar.xz";
-      sha256 = "1296rg0axk6gc765kv3wnqqb7mp45sqw8rvhz631ybbsvcy9vk6c";
-      name = "kdenetwork-filesharing-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "okular-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/8lzrv2slw0ck39i94w8ms8zm5vfx2x9v-okular-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/okular-15.04.0.tar.xz";
-      sha256 = "1xfj7hm8149xn5g9yy56zd93bjs38k10009l6d2xynvqcd2k5sl7";
-      name = "okular-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-runtime-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1zj95rkrgbp4s8khzd7hjdnz9ndib9q3-kde-runtime-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-runtime-15.04.0.tar.xz";
-      sha256 = "0dpbmg8w5b2hq3fw38v3fa4w45lm1p06sh72rscsz2mc2ly6bkxr";
-      name = "kde-runtime-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "konquest-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/p08rr4gqznxl4w3gfd7na11v8l1s8afq-konquest-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/konquest-15.04.0.tar.xz";
-      sha256 = "154vbny41axcckdi4dw928kvhfvw8j5b34l79dqa15lnsml92m6f";
-      name = "konquest-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kde-baseapps-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/g2j9js2pgakja03ljw9zl4xp9v2pn8l4-kde-baseapps-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kde-baseapps-15.04.0.tar.xz";
-      sha256 = "1xiv9qmv7x6djv7fg7khsqhzrnypr8dg1c3ximi9r32jvcfcda7q";
-      name = "kde-baseapps-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kreversi-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/h39cafz2080k7xih81jn5f7scfpvszdw-kreversi-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kreversi-15.04.0.tar.xz";
-      sha256 = "0z7rp0d52cgc8lsnjj0p0qh7fydgk1348ljymfmw8kr41848fag7";
-      name = "kreversi-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kate-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/17j3xfw2gjbvkb6k09ykyf8avx7fip38-kate-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kate-15.04.0.tar.xz";
-      sha256 = "1g4dh9d55mbdnxrxp8kyid52gg649rnd6xhv1di3k1zz6x5jjnr1";
-      name = "kate-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkface-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/f6n75hb70xfprv3rpa78n59icxglv3n8-libkface-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libkface-15.04.0.tar.xz";
-      sha256 = "0hm3llyjprfhj5l7y97kyyk61cbis7hmlgpf3qfin958hmip7kds";
-      name = "libkface-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdesdk-thumbnailers-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/frl8ikxyck6mv44rdwlca5dg64vlar20-kdesdk-thumbnailers-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdesdk-thumbnailers-15.04.0.tar.xz";
-      sha256 = "1y3wix763ndi3xfwpm3h3cfj3r446jkrslgn09bplm4x36jdd2wv";
-      name = "kdesdk-thumbnailers-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kremotecontrol-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/mxrd14q1c9hbw5lnpvk32s2jb18cjyrn-kremotecontrol-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kremotecontrol-15.04.0.tar.xz";
-      sha256 = "110bcp9b4y1mwpvd6r09zlrr54f1qdncxixliivclx9y0nrf9ljf";
-      name = "kremotecontrol-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kmahjongg-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/gaj2cqkjp0ynwsywrshpy7glfagz37ds-kmahjongg-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kmahjongg-15.04.0.tar.xz";
-      sha256 = "0agqvghlvw3n8xr15n44zjidxqghpmpzf5834n7d18yllnkmyqzz";
-      name = "kmahjongg-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-text-ui-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/5vsvkxwxycdr0qk54ksiyrlbdfqxc7qq-ktp-text-ui-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktp-text-ui-15.04.0.tar.xz";
-      sha256 = "0az6ziraqslcidjflljc25scrg1i2kgkppm93bd8y8zy4a2q1wns";
-      name = "ktp-text-ui-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kshisen-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/jdmiqffbirvn2pzxx0vfia6v9mq9q1jx-kshisen-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kshisen-15.04.0.tar.xz";
-      sha256 = "011a3gqij509vl74v03s24in83i2qyylrpasi8cpx81hgbwd7zkd";
-      name = "kshisen-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "krfb-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/r0b24gfzlljxq2wxxs6pyfvgacarvp7n-krfb-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/krfb-15.04.0.tar.xz";
-      sha256 = "1j1mfjgza7zs3dsvm7aqr0w3lnia1svxrc47gd5imagqxzi5xb5i";
-      name = "krfb-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-accounts-kcm-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/qqn7jza6dgshhapkvj97a4i4960dy5da-ktp-accounts-kcm-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktp-accounts-kcm-15.04.0.tar.xz";
-      sha256 = "1a45apf4vmjpsrbm98ym8k7qivmfaiwsdsf0f65vi91imlkfdd2x";
-      name = "ktp-accounts-kcm-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kgeography-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/arp2vca2a13jqqc37cv5pa03s4aayg1y-kgeography-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kgeography-15.04.0.tar.xz";
-      sha256 = "1gm17z7a4dgmqds3gvwf1scgxb2js5xvaq4f74hr1042jq2br0dk";
-      name = "kgeography-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kqtquickcharts-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7iwcjypw2l9kkgm8l3dbchm47jziyjh0-kqtquickcharts-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kqtquickcharts-15.04.0.tar.xz";
-      sha256 = "08p53xa49hwgwcp1vgp1c0pghj2l5a2g71s0q30xn7vz7y91bi92";
-      name = "kqtquickcharts-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdegraphics-strigi-analyzer-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/28krw7dahfrcmwlbfqabzd6bmxqx9fia-kdegraphics-strigi-analyzer-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdegraphics-strigi-analyzer-15.04.0.tar.xz";
-      sha256 = "02zpwqcfi0v0f53y4i2x1yn6d3nynlp8x7xb4ciacvmxzssh9g0i";
-      name = "kdegraphics-strigi-analyzer-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "blinken-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/pr2d0pipsss9n5xdd9zrgv939smlrvwk-blinken-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/blinken-15.04.0.tar.xz";
-      sha256 = "1475yf37nlmnqq5sh2gc8x1nbkypxy560qmdyar3m5cs69r77679";
-      name = "blinken-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkdegames-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/w7f148vp2gdz22fhs5g65qjzbl9h36kh-libkdegames-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libkdegames-15.04.0.tar.xz";
-      sha256 = "1rwbr5pqn347rfhz56phswfzxmm37xpnw699si1612mkmmbl92ba";
-      name = "libkdegames-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdegraphics-thumbnailers-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/jn27x6czz0lripamkjgkwga4cxyicmcm-kdegraphics-thumbnailers-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdegraphics-thumbnailers-15.04.0.tar.xz";
-      sha256 = "1p0alpdmhl3fm1r27cqiz80w9r1zmwj7pmdxf4f6mv2pf5q7z5kw";
-      name = "kdegraphics-thumbnailers-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kcharselect-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1xvdiwnp84qn7cvcissssf92w4nx8y7g-kcharselect-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kcharselect-15.04.0.tar.xz";
-      sha256 = "1jfh1kzcazb4b4wqv6mjy69h8fx78zzf7xk60vzaks07b4c7x9x7";
-      name = "kcharselect-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkcddb-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7in63wvw5njm2gqxqbsjvj8sh7j5zbsf-libkcddb-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libkcddb-15.04.0.tar.xz";
-      sha256 = "1ldjfkppfhknln6hn3py8519p5jc63pf9apwx7h5jf3z6ci1k29p";
-      name = "libkcddb-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kstars-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/vqrsgg7jlr6h8y6m2cp2fvv0jpbv8jvk-kstars-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kstars-15.04.0.tar.xz";
-      sha256 = "0mj6haknp9y03md9j007w5sf66529chififw0xy6a7bvnagaph2g";
-      name = "kstars-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kget-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/cglfzvjxh6b61dyvla9q9g0qnw6rzlm9-kget-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kget-15.04.0.tar.xz";
-      sha256 = "0v4gfik9ddzpddknrj9vp2d2awn2bjzn74n173njf90pbfnql3y5";
-      name = "kget-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kanagram-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/dh926v6zz23z9lqqqvhia5ilwxazd4lq-kanagram-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kanagram-15.04.0.tar.xz";
-      sha256 = "1iw2vp82ax93kbc7ffmh9wsgjp0a772vb2bxsmm5g5jcmjd8vcr4";
-      name = "kanagram-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kteatime-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/mrdsmb6qaj32np3p3mcwi3sx38kmgvjj-kteatime-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kteatime-15.04.0.tar.xz";
-      sha256 = "0g1hhlqhag0lllm8s10ylw5a6qwgsmb5hj33l2knbifa2sdg4v0c";
-      name = "kteatime-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-contact-list-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/44z86p3l3axqq54wnvbbjavifp6jrnxn-ktp-contact-list-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktp-contact-list-15.04.0.tar.xz";
-      sha256 = "08k2yplr67s66y4134n007kzsdxnrwgjhv09babprb4cbcm7pdgm";
-      name = "ktp-contact-list-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-filetransfer-handler-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/a66l0r6622i36x7njknq4rw77wq1z8f1-ktp-filetransfer-handler-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktp-filetransfer-handler-15.04.0.tar.xz";
-      sha256 = "0z50v3bq4i618c1sh5fa67il4vhn8mk5c55wlhxc2q8srr85ii92";
-      name = "ktp-filetransfer-handler-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kompare-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/lmbjfk56h71c44paw60x7wl6pd58yc0w-kompare-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kompare-15.04.0.tar.xz";
-      sha256 = "1pf693s580p208dbjj6d4w11i62bwfifjn3wmn2fd8fip3ajdgxh";
-      name = "kompare-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdegraphics-mobipocket-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/54xdq0xdkmw2z3j0zhfxi6gjvm60g919-kdegraphics-mobipocket-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdegraphics-mobipocket-15.04.0.tar.xz";
-      sha256 = "00m5i5jdnj92jnjm32ryh8dlf3fzl2mzybm5w5y1a82fq9l7j774";
-      name = "kdegraphics-mobipocket-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kdenlive-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/dacxkxjxhz3afz4165nv4siyn6sb5jws-kdenlive-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kdenlive-15.04.0.tar.xz";
-      sha256 = "1ski64rqa1h1aqr16vwnvpqpww7vgfzbnlki3998k8gbc703q512";
-      name = "kdenlive-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktimer-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/nab346b2rb5dwkj4gdnjm2pyhnzf0i4h-ktimer-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktimer-15.04.0.tar.xz";
-      sha256 = "014jfyx4lizq2bh5yx73zarn9mzp4lkyaxvml0m8i53zdnacnqvr";
-      name = "ktimer-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "libkmahjongg-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/1rqzjg16kl3m8cc6pjf2cakhjx90kkhw-libkmahjongg-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/libkmahjongg-15.04.0.tar.xz";
-      sha256 = "1912k9h4j8rhly5x03anf4gzjs0aypbwh8ifvhn289gydccqfcyy";
-      name = "libkmahjongg-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "ktp-approver-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/ijsjgpid0pnrq1d174gpbma6xfik9989-ktp-approver-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/ktp-approver-15.04.0.tar.xz";
-      sha256 = "0sfi4i071iini7bv9i7d4f952rnd5r89vqnhkqqrzbnmi9bh4rx4";
-      name = "ktp-approver-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "cantor-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/7rf8al4ncyxkhzg899mssimw3lwf0qy8-cantor-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/cantor-15.04.0.tar.xz";
-      sha256 = "0npl1p3gwflfl9rrvbi9ql28af6m1h2w46vkqh4ksp4d6jh9lx3p";
-      name = "cantor-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kbounce-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/9b915jv5dcm7kinwvj9yrxs72vbsravw-kbounce-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kbounce-15.04.0.tar.xz";
-      sha256 = "1jllvam65kjfanry4wl2yhhgi5hak0swiradyh15b73rb89w2lj2";
-      name = "kbounce-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kcolorchooser-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zhlxa8x34g7yz6wwqnhn062d4yxgl214-kcolorchooser-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kcolorchooser-15.04.0.tar.xz";
-      sha256 = "0g51v8641712fyycm3d6pkx8mlxkpp832l5i77f557lgi3dqfnh8";
-      name = "kcolorchooser-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "audiocd-kio-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/gcg36nagmfjc9w510pbihc44gz765nh6-audiocd-kio-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/audiocd-kio-15.04.0.tar.xz";
-      sha256 = "05by4zrd3s2rkv915dq3ri6rhq39sl9wkw46diajkwzqdg6ajbiz";
-      name = "audiocd-kio-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kgamma-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/zd7r3mali9j223lm28w0xx6fl4jkiyfd-kgamma-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kgamma-15.04.0.tar.xz";
-      sha256 = "17xfiaz751q38q29s20k6fffshd3jndydnj54q4bd5l08fwmxmq6";
-      name = "kgamma-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "knetwalk-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/65sm832j0rnm215vmd7gcrnnbj1gd2cj-knetwalk-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/knetwalk-15.04.0.tar.xz";
-      sha256 = "0ljwgb5sb8x2g2qrvnl1lzmk34zcg6g1qfyp6p74h8lbhfk1vbgl";
-      name = "knetwalk-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "klettres-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/bnd0dnbv8ybywwzaskjlx2dvdw3l9afc-klettres-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/klettres-15.04.0.tar.xz";
-      sha256 = "1kzcqj1w5dcmc54v96q3s6v4fj86kgc9vdllg7l98bv9d2zcxpph";
-      name = "klettres-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kapptemplate-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/qg0q54wpsmr1y9dfa72y24fjr1faqd8y-kapptemplate-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kapptemplate-15.04.0.tar.xz";
-      sha256 = "01ldjxgsv422l9lay5yg5b9y0cbbwpfl8x41a1wvm9h2l4k0mn3r";
-      name = "kapptemplate-15.04.0.tar.xz";
-    };
-  }
-  {
-    name = stdenv.lib.nameFromURL "kjumpingcube-15.04.0.tar.xz" ".tar";
-    store = "/nix/store/g3mfvybxvh2rws76bdsvd7fcnkc3cjdh-kjumpingcube-15.04.0.tar.xz";
-    src = fetchurl {
-      url = "${mirror}/stable/applications/15.04.0/src/kjumpingcube-15.04.0.tar.xz";
-      sha256 = "0mj33yz2565px6ljlw6k0pgd2ljq9gsjx4x9jzq6wbcjg6vbiyah";
-      name = "kjumpingcube-15.04.0.tar.xz";
-    };
-  }
-]
diff --git a/pkgs/applications/kde-apps-15.04/manifest.sh b/pkgs/applications/kde-apps-15.04/manifest.sh
deleted file mode 100755
index 3ef8c11c3a1..00000000000
--- a/pkgs/applications/kde-apps-15.04/manifest.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/sh
-
-# if setting KDE_MIRROR, be sure to set --cut-dirs=N in MANIFEST_EXTRA_ARGS
-KDE_MIRROR="${KDE_MIRROR:-http://download.kde.org}"
-
-if [ $# -eq 0 ]; then
-
-  # The extra slash at the end of the URL is necessary to stop wget
-  # from recursing over the whole server! (No, it's not a bug.)
-  $(nix-build ../../.. -A autonix.manifest) \
-      "${KDE_MIRROR}/stable/applications/15.04.0/" \
-      $MANIFEST_EXTRA_ARGS -A '*.tar.xz'
-
-else
-
-  $(nix-build ../../.. -A autonix.manifest) -A '*.tar.xz' "$@"
-
-fi
diff --git a/pkgs/applications/kde-apps-15.04/packages.json b/pkgs/applications/kde-apps-15.04/packages.json
new file mode 100644
index 00000000000..fef1a4610bf
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.04/packages.json
@@ -0,0 +1,5693 @@
+{
+    "libkexiv2": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "libkexiv2-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libkexiv2-15.04.3.tar.xz",
+            "name": "libkexiv2-15.04.3.tar.xz",
+            "sha256": "0f5cfkdlqmngpj0sr9i6w2n57jgnhj6j6gvr8cc26n11zrdv9w04"
+        },
+        "buildInputs": [
+            "exiv2",
+            "kde4"
+        ]
+    },
+    "kde-l10n-bg": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-bg-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-bg-15.04.3.tar.xz",
+            "name": "kde-l10n-bg-15.04.3.tar.xz",
+            "sha256": "1s2qm9dlih7yfs83pywkn1q5mk9xik70rmzqvp1fj0zj66gxhf9i"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kqtquickcharts": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kqtquickcharts-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kqtquickcharts-15.04.3.tar.xz",
+            "name": "kqtquickcharts-15.04.3.tar.xz",
+            "sha256": "1fmyyiy2ahxxbf9cy5aqpb5zvcqk0yrig9h586hzhw028mdblj5a"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "palapeli": {
+        "nativeBuildInputs": [
+            "cmake",
+            "qvoronoi_executable"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "palapeli-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/palapeli-15.04.3.tar.xz",
+            "name": "palapeli-15.04.3.tar.xz",
+            "sha256": "04l94nwwzqgsf54hg0yrbmv5fc2lljcgpxg4fcfbp8j58ypqv6kq"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames",
+            "sharedmimeinfo"
+        ]
+    },
+    "kmahjongg": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kmahjongg-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kmahjongg-15.04.3.tar.xz",
+            "name": "kmahjongg-15.04.3.tar.xz",
+            "sha256": "1066qmvkxzi83mnd736ldfqm6qmdwwj7bw1daixfarkr2mws7i51"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames",
+            "libkmahjongg"
+        ]
+    },
+    "analitza": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [
+            "qt5core"
+        ],
+        "name": "analitza-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/analitza-15.04.3.tar.xz",
+            "name": "analitza-15.04.3.tar.xz",
+            "sha256": "0ljydfchs0928damms87k5v049w9g021k42y1a000z3z09154rm2"
+        },
+        "buildInputs": [
+            "ecm",
+            "eigen3",
+            "glew",
+            "opengl",
+            "qt5",
+            "qt5opengl",
+            "qt5qml",
+            "qt5quick",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets",
+            "qt5xml"
+        ]
+    },
+    "kfourinline": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kfourinline-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kfourinline-15.04.3.tar.xz",
+            "name": "kfourinline-15.04.3.tar.xz",
+            "sha256": "07rxjp7i9nhgy57zrh21qmc8352b915ykny6jsds80jrc2fl8hbs"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5completion",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5declarative",
+            "kf5dnssd",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemmodels",
+            "kf5itemviews",
+            "kf5kdegames",
+            "kf5kdelibs4support",
+            "kf5kio",
+            "kf5notifyconfig",
+            "kf5xmlgui",
+            "qt5",
+            "qt5qml",
+            "qt5quick",
+            "qt5quickwidgets",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "juk": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "juk-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/juk-15.04.3.tar.xz",
+            "name": "juk-15.04.3.tar.xz",
+            "sha256": "1zdax89bzpmxs6yi196ybd805y9k6p7cgnnn9c7kba35zn96wj91"
+        },
+        "buildInputs": [
+            "kde4",
+            "taglib",
+            "tunepimp"
+        ]
+    },
+    "kde-l10n-id": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-id-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-id-15.04.3.tar.xz",
+            "name": "kde-l10n-id-15.04.3.tar.xz",
+            "sha256": "1rhn68s7zxaifm92i33ik99hc51p242hpqr4d0pdsgwnjbp2n76w"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-wallpapers": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-wallpapers-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-wallpapers-15.04.3.tar.xz",
+            "name": "kde-wallpapers-15.04.3.tar.xz",
+            "sha256": "1s2kgxx97jvl2xsnpz7cqzpg22j1mvybbvv793gpa8awsfsvhddw"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "libkipi": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "libkipi-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libkipi-15.04.3.tar.xz",
+            "name": "libkipi-15.04.3.tar.xz",
+            "sha256": "05ryh1lkghlkn7877k5nspmrny1ijx0vgwimv4bmlc6faifpgfjx"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "artikulate": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "artikulate-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/artikulate-15.04.3.tar.xz",
+            "name": "artikulate-15.04.3.tar.xz",
+            "sha256": "17nmlh58vxlidgw2g060kvpscch14813zcpzhdykq0mr3293a05z"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdeclarative",
+            "qtgstreamer"
+        ]
+    },
+    "kde-l10n-it": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-it-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-it-15.04.3.tar.xz",
+            "name": "kde-l10n-it-15.04.3.tar.xz",
+            "sha256": "1azijn9zz650r899d1ybvlj0qmiwgsyg9m5qd7iln0hxa01fw89i"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-da": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-da-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-da-15.04.3.tar.xz",
+            "name": "kde-l10n-da-15.04.3.tar.xz",
+            "sha256": "182dyyx7knny4rs19aiwxd19c355z2fm93psck0ja4rgwhs1qxr3"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-km": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-km-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-km-15.04.3.tar.xz",
+            "name": "kde-l10n-km-15.04.3.tar.xz",
+            "sha256": "0f9wkks5mrh9ap8810d9k46dbhqvhn6g8wwfb777iss18jx6g8jd"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-ca_valencia": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-ca_valencia-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-ca@valencia-15.04.3.tar.xz",
+            "name": "kde-l10n-ca_valencia-15.04.3.tar.xz",
+            "sha256": "0h21x45hbm0iahf3c8qjfc9cdx5z36js40bqr5klzm7xvwpc596p"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-wa": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-wa-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-wa-15.04.3.tar.xz",
+            "name": "kde-l10n-wa-15.04.3.tar.xz",
+            "sha256": "10lidmp54db9f8f3xzf2samvi6s0mck0azhyyiz17amcrfj28nkp"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "libkomparediff2": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "libkomparediff2-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libkomparediff2-15.04.3.tar.xz",
+            "name": "libkomparediff2-15.04.3.tar.xz",
+            "sha256": "1i9y5qjxcg5yl5q8ldczy3cssn3rw9p04wcjqx347faqv3dy4nxf"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5codecs",
+            "kf5config",
+            "kf5coreaddons",
+            "kf5i18n",
+            "kf5kio",
+            "kf5parts",
+            "kf5xmlgui",
+            "qt5core",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "kwalletmanager": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kwalletmanager-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kwalletmanager-15.04.3.tar.xz",
+            "name": "kwalletmanager-15.04.3.tar.xz",
+            "sha256": "1h5c4vjspzw29j0xqlwaxpdk7k3n0zlkjram25hy3c3vs40hihil"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "ktp-auth-handler": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktp-auth-handler-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktp-auth-handler-15.04.3.tar.xz",
+            "name": "ktp-auth-handler-15.04.3.tar.xz",
+            "sha256": "0782lzh3ykk50cpdrh5djvxlgsp88hirbhivdpnwp8bcck3iiha9"
+        },
+        "buildInputs": [
+            "accountsqt5",
+            "ecm",
+            "kaccounts",
+            "kf5",
+            "kf5i18n",
+            "kf5kio",
+            "kf5wallet",
+            "kf5webkit",
+            "kf5widgetsaddons",
+            "ktp",
+            "qca-qt5",
+            "qca-qt5-ossl",
+            "qt5",
+            "qt5core",
+            "qt5dbus",
+            "qt5gui",
+            "qt5network",
+            "signonqt5",
+            "telepathyqt5"
+        ]
+    },
+    "kde-l10n-ga": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-ga-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-ga-15.04.3.tar.xz",
+            "name": "kde-l10n-ga-15.04.3.tar.xz",
+            "sha256": "1h83illxc04i0m116rxy8x23s22fksmxb9kaimn3bglbcd5jgi95"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "ksnapshot": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ksnapshot-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ksnapshot-15.04.3.tar.xz",
+            "name": "ksnapshot-15.04.3.tar.xz",
+            "sha256": "00mj98bdbldw9klfw7qd332migh0gfzdy7pq89am8n2rbp84a0jw"
+        },
+        "buildInputs": [
+            "kde4",
+            "kipi"
+        ]
+    },
+    "kreversi": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kreversi-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kreversi-15.04.3.tar.xz",
+            "name": "kreversi-15.04.3.tar.xz",
+            "sha256": "0nhg2jz0y79yhq68ax10l06sh1dkwn1mjh2qmkhsc6ks80wfq0lp"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdeclarative",
+            "kdegames"
+        ]
+    },
+    "kmix": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kmix-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kmix-15.04.3.tar.xz",
+            "name": "kmix-15.04.3.tar.xz",
+            "sha256": "1sjh9a4xp981h91ydlxbsxhz0sxdd5ajwn5zn39r3hnfnxh8vx9l"
+        },
+        "buildInputs": [
+            "alsa",
+            "canberra",
+            "ecm",
+            "glib2",
+            "kde4",
+            "kf5",
+            "kf5configwidgets",
+            "kf5dbusaddons",
+            "kf5globalaccel",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5kcmutils",
+            "kf5kdelibs4support",
+            "kf5xmlgui",
+            "phonon",
+            "pulseaudio"
+        ]
+    },
+    "signon-kwallet-extension": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "signon-kwallet-extension-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/signon-kwallet-extension-15.04.3.tar.xz",
+            "name": "signon-kwallet-extension-15.04.3.tar.xz",
+            "sha256": "07waf72xwgpdska42ydi9pifs2d2l7idaf0jwamrqrwf5s19vdf0"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5wallet",
+            "qt5",
+            "qt5core",
+            "qt5dbus",
+            "qt5test",
+            "signonextension"
+        ]
+    },
+    "kde-l10n-es": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-es-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-es-15.04.3.tar.xz",
+            "name": "kde-l10n-es-15.04.3.tar.xz",
+            "sha256": "0nqz9lal9f2s0ryydyy0xxh53q2pxjmpbhkad1l9107shjsy9ry7"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kompare": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kompare-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kompare-15.04.3.tar.xz",
+            "name": "kompare-15.04.3.tar.xz",
+            "sha256": "1dl0sddskmxm2h6qshgmv06glk740ih0ldw6d9vvlk9a4mnpk3yw"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5codecs",
+            "kf5config",
+            "kf5coreaddons",
+            "kf5doctools",
+            "kf5iconthemes",
+            "kf5jobwidgets",
+            "kf5parts",
+            "kf5texteditor",
+            "kf5widgetsaddons",
+            "libkomparediff2",
+            "qt5",
+            "qt5core",
+            "qt5printsupport",
+            "qt5widgets"
+        ]
+    },
+    "kdiamond": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdiamond-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdiamond-15.04.3.tar.xz",
+            "name": "kdiamond-15.04.3.tar.xz",
+            "sha256": "066bf4vjcfnidj7yw04g0wdz09wqskvbjskljwndgx178bwb1zn1"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5kdegames",
+            "kf5notifyconfig",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5widgets"
+        ]
+    },
+    "kaccounts-integration": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [
+            "accountsqt5",
+            "kf5coreaddons",
+            "qt5widgets",
+            "signonqt5"
+        ],
+        "name": "kaccounts-integration-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kaccounts-integration-15.04.3.tar.xz",
+            "name": "kaccounts-integration-15.04.3.tar.xz",
+            "sha256": "1rx957mbx8fjy0i9al3axpwsqkydgzp2ksqa0lisjcp59sw93zsf"
+        },
+        "buildInputs": [
+            "accountsqt5",
+            "ecm",
+            "kf5",
+            "kf5akonadi",
+            "kf5config",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5kcmutils",
+            "kf5kio",
+            "kf5wallet",
+            "kf5widgetsaddons",
+            "qt5",
+            "qt5core",
+            "qt5test",
+            "qt5widgets",
+            "signonqt5"
+        ]
+    },
+    "kde-l10n-gl": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-gl-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-gl-15.04.3.tar.xz",
+            "name": "kde-l10n-gl-15.04.3.tar.xz",
+            "sha256": "09j27a65nbk4l96yjhfpk409va7vk5cq7s77h6wpy8pa1vdgl944"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kwordquiz": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kwordquiz-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kwordquiz-15.04.3.tar.xz",
+            "name": "kwordquiz-15.04.3.tar.xz",
+            "sha256": "00r977c2pi7v512j1h7lr3vs4mxqz6cvfz94a5nicp7khnqy9ysq"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5crash",
+            "kf5declarative",
+            "kf5doctools",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5kdelibs4support",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5notifications",
+            "kf5notifyconfig",
+            "kf5sonnet",
+            "kf5xmlgui",
+            "libkeduvocdocument",
+            "phonon4qt5",
+            "qt5",
+            "qt5core",
+            "qt5printsupport",
+            "qt5widgets"
+        ]
+    },
+    "kigo": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kigo-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kigo-15.04.3.tar.xz",
+            "name": "kigo-15.04.3.tar.xz",
+            "sha256": "0zhs5lhmd44kzr50ccb9f0dbdpnb2g2cgc7fwr4jsccfd5yz6974"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames"
+        ]
+    },
+    "ktp-desktop-applets": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktp-desktop-applets-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktp-desktop-applets-15.04.3.tar.xz",
+            "name": "ktp-desktop-applets-15.04.3.tar.xz",
+            "sha256": "038d7wlgrzwyyldxb1iq2yha8plkmxwvmi7wf6gs8q1nwy7dfwvw"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5plasma",
+            "kf5windowsystem",
+            "qt5",
+            "qt5qml"
+        ]
+    },
+    "kolourpaint": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kolourpaint-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kolourpaint-15.04.3.tar.xz",
+            "name": "kolourpaint-15.04.3.tar.xz",
+            "sha256": "0lyik49wpa9wngj7y2yraklkl2fl1g7jnbyjzcircczaq9s644fk"
+        },
+        "buildInputs": [
+            "kde4",
+            "qimageblitz"
+        ]
+    },
+    "kapptemplate": {
+        "nativeBuildInputs": [
+            "cmake",
+            "rbkconfig_compiler4",
+            "rbuic4",
+            "xsltproc_executable"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kapptemplate-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kapptemplate-15.04.3.tar.xz",
+            "name": "kapptemplate-15.04.3.tar.xz",
+            "sha256": "0hs063g2khrghrglwy7r1amrj46xr39dlh1gnbbfpadc5fmk2x6s"
+        },
+        "buildInputs": [
+            "ecm",
+            "kde4",
+            "kdepimlibs",
+            "kf5",
+            "kf5archive",
+            "kf5completion",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5kio",
+            "kf5plasma",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5gui",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "kdegraphics-thumbnailers": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdegraphics-thumbnailers-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdegraphics-thumbnailers-15.04.3.tar.xz",
+            "name": "kdegraphics-thumbnailers-15.04.3.tar.xz",
+            "sha256": "07cc7mp1c59hccn30670yzvmbr14f78whyxz5dwcwxpbcgaklq1a"
+        },
+        "buildInputs": [
+            "kdcraw",
+            "kde4",
+            "kexiv2"
+        ]
+    },
+    "kde-l10n-pt_BR": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-pt_BR-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-pt_BR-15.04.3.tar.xz",
+            "name": "kde-l10n-pt_BR-15.04.3.tar.xz",
+            "sha256": "0yyfk4whymblp4gy0zxvyri254x898lmg78n07amzddxz22dml5f"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "ksystemlog": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ksystemlog-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ksystemlog-15.04.3.tar.xz",
+            "name": "ksystemlog-15.04.3.tar.xz",
+            "sha256": "117xkjgqrivyjyzh4jz3z5xvcj2l1f3x665kgc3rrw4y4zpwwcnm"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "kuser": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kuser-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kuser-15.04.3.tar.xz",
+            "name": "kuser-15.04.3.tar.xz",
+            "sha256": "1q1f9l3lwcszpfiyfjaf7cjbw325cfjpbkc6rfvl3jp157w5nr4m"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdepimlibs"
+        ]
+    },
+    "libksane": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "libksane-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libksane-15.04.3.tar.xz",
+            "name": "libksane-15.04.3.tar.xz",
+            "sha256": "0i5ynf3g2i6vlhzl5cga8imprblmdz418cfkznwkw1yj35g236c3"
+        },
+        "buildInputs": []
+    },
+    "knavalbattle": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "knavalbattle-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/knavalbattle-15.04.3.tar.xz",
+            "name": "knavalbattle-15.04.3.tar.xz",
+            "sha256": "10nri1fvi057cvb6qwlhqyv9x1rjavsdhhipgrdhqpzmm0y84sd1"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames"
+        ]
+    },
+    "kaccessible": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kaccessible-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kaccessible-15.04.3.tar.xz",
+            "name": "kaccessible-15.04.3.tar.xz",
+            "sha256": "1a413cv32xsqx9aalkrqh3ybw6phvh4ckgzr15kxca3lc78zw00s"
+        },
+        "buildInputs": [
+            "kde4",
+            "qt4",
+            "speechd",
+            "x11"
+        ]
+    },
+    "knetwalk": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "knetwalk-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/knetwalk-15.04.3.tar.xz",
+            "name": "knetwalk-15.04.3.tar.xz",
+            "sha256": "1bmn1avq2xpvrvaryzl25izdh7xn1c5pdxll51kj7l017590pa43"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5notifyconfig",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5qml",
+            "qt5quick",
+            "qt5quickwidgets",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "kdewebdev": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdewebdev-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdewebdev-15.04.3.tar.xz",
+            "name": "kdewebdev-15.04.3.tar.xz",
+            "sha256": "05wxb6swr3dpjw8vvsz9ylznx2rcjg2glzj9blnckkd7wl35r3q1"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdepimlibs",
+            "libtidy",
+            "ruby",
+            "zlib"
+        ]
+    },
+    "kget": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kget-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kget-15.04.3.tar.xz",
+            "name": "kget-15.04.3.tar.xz",
+            "sha256": "17wlqx55r3yrnl149rydmmdksll9wg40dnqqq45knv2gx9mdxlwg"
+        },
+        "buildInputs": [
+            "boost",
+            "kde4",
+            "kde4workspace",
+            "ktorrent",
+            "libmms",
+            "nepomukcore",
+            "nepomukwidgets",
+            "qca2",
+            "qgpgme",
+            "shareddesktopontologies",
+            "soprano",
+            "sqlite"
+        ]
+    },
+    "kalzium": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kalzium-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kalzium-15.04.3.tar.xz",
+            "name": "kalzium-15.04.3.tar.xz",
+            "sha256": "0hdffpyhg8dk4hhnkg0isizrdz65wbgndr6zja733p7n3gsrias6"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdewin32"
+        ]
+    },
+    "marble": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "marble-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/marble-15.04.3.tar.xz",
+            "name": "marble-15.04.3.tar.xz",
+            "sha256": "1fjbfarf8zp1d7ailvx017qb28sjk318r2jdb7pz5x8x4yl6b82s"
+        },
+        "buildInputs": [
+            "kde4",
+            "libgps",
+            "liblocation",
+            "libshp",
+            "libwlocate",
+            "perl",
+            "phonon",
+            "protobuf",
+            "pyqt4",
+            "pythonlibrary",
+            "qextserialport",
+            "qt4",
+            "qt5concurrent",
+            "qt5core",
+            "qt5designer",
+            "qt5network",
+            "qt5printsupport",
+            "qt5quick",
+            "qt5script",
+            "qt5sql",
+            "qt5svg",
+            "qt5test",
+            "qt5webkitwidgets",
+            "qt5widgets",
+            "qt5xml",
+            "qtlocation",
+            "quazip",
+            "sharedmimeinfo",
+            "sip",
+            "zlib"
+        ]
+    },
+    "kig": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kig-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kig-15.04.3.tar.xz",
+            "name": "kig-15.04.3.tar.xz",
+            "sha256": "1k19pfp8b4k3spfcs70fgjhk78jkhbb7bfilyzf0ahzrjcpgp8c8"
+        },
+        "buildInputs": [
+            "boostpython",
+            "ecm",
+            "kf5archive",
+            "kf5configwidgets",
+            "kf5doctools",
+            "kf5emoticons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemmodels",
+            "kf5kdelibs4support",
+            "kf5parts",
+            "kf5texteditor",
+            "kf5xmlgui",
+            "qt5printsupport",
+            "qt5svg",
+            "qt5test"
+        ]
+    },
+    "kiten": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kiten-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kiten-15.04.3.tar.xz",
+            "name": "kiten-15.04.3.tar.xz",
+            "sha256": "0f4kmm01ikn54dy2z2lnv0kdqx7rn77mnfrwv25470h6ar4w89w1"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5archive",
+            "kf5completion",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5khtml",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5widgets"
+        ]
+    },
+    "ktp-contact-list": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktp-contact-list-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktp-contact-list-15.04.3.tar.xz",
+            "name": "ktp-contact-list-15.04.3.tar.xz",
+            "sha256": "02vvp0i2bi3j7gk037pqzfhn44khln0wddwbql3kq49v4q2i5s7d"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5dbusaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5kcmutils",
+            "kf5kio",
+            "kf5notifications",
+            "kf5notifyconfig",
+            "kf5people",
+            "kf5windowsystem",
+            "kf5xmlgui",
+            "ktp",
+            "qt5",
+            "qt5widgets",
+            "qt5xml",
+            "telepathyqt5"
+        ]
+    },
+    "kde-l10n-pt": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-pt-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-pt-15.04.3.tar.xz",
+            "name": "kde-l10n-pt-15.04.3.tar.xz",
+            "sha256": "0gy7y8xns0kxl7n8wa073xypnyvdyq56gz1ahj0k8mpadfak6vk0"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-fr": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-fr-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-fr-15.04.3.tar.xz",
+            "name": "kde-l10n-fr-15.04.3.tar.xz",
+            "sha256": "0z1ga48y5zih85cdmb165kyxm9z7ydhxykj4ci40ckdqiwzjhkag"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kmouth": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kmouth-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kmouth-15.04.3.tar.xz",
+            "name": "kmouth-15.04.3.tar.xz",
+            "sha256": "1ak1nvc0y0yi1gd9kdhhjw64j6fkf7bw11nnxxhpq9gvgmyyfm7r"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "filelight": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "filelight-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/filelight-15.04.3.tar.xz",
+            "name": "filelight-15.04.3.tar.xz",
+            "sha256": "05ak727bkij70zc5lr458snq346ndc32r5icjz6jgmyxqxsdk17d"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5coreaddons",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5kio",
+            "kf5parts",
+            "kf5solid",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5dbus",
+            "qt5script",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "kdesdk-kioslaves": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdesdk-kioslaves-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdesdk-kioslaves-15.04.3.tar.xz",
+            "name": "kdesdk-kioslaves-15.04.3.tar.xz",
+            "sha256": "0f5cjlssylgr42bnrsdaw64xl17zr0sl989digqg47hrd7np1zf7"
+        },
+        "buildInputs": [
+            "kde4",
+            "perl",
+            "svn"
+        ]
+    },
+    "kde-baseapps": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-baseapps-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-baseapps-15.04.3.tar.xz",
+            "name": "kde-baseapps-15.04.3.tar.xz",
+            "sha256": "1inkzj984qy0ab4ks5m002phs6a00cjfn25gri9jglcqn3jzy85a"
+        },
+        "buildInputs": [
+            "baloo",
+            "baloowidgets",
+            "glib2",
+            "kactivities",
+            "kde4",
+            "kfilemetadata",
+            "libtidy",
+            "x11",
+            "zlib"
+        ]
+    },
+    "ksirk": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ksirk-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ksirk-15.04.3.tar.xz",
+            "name": "ksirk-15.04.3.tar.xz",
+            "sha256": "1km9423k6hdkb58and8sqz0wwyab8k6k4jg534xppjph7x8a3rm0"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames",
+            "qca2"
+        ]
+    },
+    "killbots": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "killbots-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/killbots-15.04.3.tar.xz",
+            "name": "killbots-15.04.3.tar.xz",
+            "sha256": "10pvgwmc2s8cz6cz7lr3gracia654qzwjh3b01z3sha7gjfd5ly2"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5completion",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5notifyconfig",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "kjumpingcube": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kjumpingcube-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kjumpingcube-15.04.3.tar.xz",
+            "name": "kjumpingcube-15.04.3.tar.xz",
+            "sha256": "0ls4v7ip4vh5h9jn9966bwr00aic64psmwnp96j6zmvrlkmz5saf"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5i18n",
+            "kf5itemmodels",
+            "kf5kdegames",
+            "kf5kdelibs4support",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5notifyconfig",
+            "kf5textwidgets",
+            "kf5widgetsaddons",
+            "kf5windowsystem",
+            "kf5xmlgui",
+            "phonon4qt5",
+            "qt5",
+            "qt5qml",
+            "qt5quick",
+            "qt5quickwidgets",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "kde-l10n-sr": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-sr-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-sr-15.04.3.tar.xz",
+            "name": "kde-l10n-sr-15.04.3.tar.xz",
+            "sha256": "03mpd7cf4zh144jwl0lzv68jbl2805idx68a2zfy50jifbx9k8qa"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-et": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-et-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-et-15.04.3.tar.xz",
+            "name": "kde-l10n-et-15.04.3.tar.xz",
+            "sha256": "10jqj02dz1bklabrda8h0hd6gvfxhfxa7mfl7zdn142xz6qs1194"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kmag": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kmag-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kmag-15.04.3.tar.xz",
+            "name": "kmag-15.04.3.tar.xz",
+            "sha256": "1k2jnqjm1ky6mgqlyz47c4n6ivqlnyva25siyrx466anzbjn5ffp"
+        },
+        "buildInputs": [
+            "kde4",
+            "qaccessibilityclient"
+        ]
+    },
+    "kdenetwork-strigi-analyzers": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdenetwork-strigi-analyzers-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdenetwork-strigi-analyzers-15.04.3.tar.xz",
+            "name": "kdenetwork-strigi-analyzers-15.04.3.tar.xz",
+            "sha256": "04xikfhzdl56vkz9zsk1whcikwdwqbs72y9mam40wd9qr0pzfxcw"
+        },
+        "buildInputs": [
+            "boost",
+            "kde4",
+            "strigi"
+        ]
+    },
+    "kcharselect": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kcharselect-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kcharselect-15.04.3.tar.xz",
+            "name": "kcharselect-15.04.3.tar.xz",
+            "sha256": "12p85b7yplmm4v8v9znq0r4p8y3m2f088brdvlxgmb04x5158m9s"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5widgets"
+        ]
+    },
+    "kdegraphics-strigi-analyzer": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdegraphics-strigi-analyzer-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdegraphics-strigi-analyzer-15.04.3.tar.xz",
+            "name": "kdegraphics-strigi-analyzer-15.04.3.tar.xz",
+            "sha256": "1mya983vbkxa1q0lwn7gz0fc52y8cdkpadkvfnzal5kpbwvbh96r"
+        },
+        "buildInputs": [
+            "kde4",
+            "openexr",
+            "strigi",
+            "tiff"
+        ]
+    },
+    "libkmahjongg": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [
+            "kf5configwidgets",
+            "qt5gui"
+        ],
+        "name": "libkmahjongg-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libkmahjongg-15.04.3.tar.xz",
+            "name": "libkmahjongg-15.04.3.tar.xz",
+            "sha256": "0b0zrb3bbkphqq96gc8y5xn28g19l5c60pr0s1h5rmm70021ixk6"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5completion",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5i18n",
+            "kf5widgetsaddons",
+            "qt5",
+            "qt5core",
+            "qt5gui",
+            "qt5svg",
+            "qt5test"
+        ]
+    },
+    "ktp-kded-module": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktp-kded-module-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktp-kded-module-15.04.3.tar.xz",
+            "name": "ktp-kded-module-15.04.3.tar.xz",
+            "sha256": "1zr0h1yzn9m4b4xld8lp5dx4xx6phw6fnp0z3i27mjbr0a1n6qa1"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5dbusaddons",
+            "kf5i18n",
+            "kf5idletime",
+            "kf5kcmutils",
+            "kf5kio",
+            "kf5notifications",
+            "kf5widgetsaddons",
+            "ktp",
+            "qt5",
+            "qt5concurrent",
+            "qt5network",
+            "qt5sql",
+            "qt5widgets"
+        ]
+    },
+    "ktuberling": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktuberling-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktuberling-15.04.3.tar.xz",
+            "name": "ktuberling-15.04.3.tar.xz",
+            "sha256": "0alxdrjzalngg2y1fyzcsgglsqjk4gcihkndmr25s0c663fzdrrn"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames"
+        ]
+    },
+    "kcron": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kcron-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kcron-15.04.3.tar.xz",
+            "name": "kcron-15.04.3.tar.xz",
+            "sha256": "0kwhzfmlgcj3fbi9kj08lnikz37z3gpywfcx940d4gw4n9hg26av"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5kio",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5printsupport",
+            "qt5widgets"
+        ]
+    },
+    "kde-l10n-nl": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-nl-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-nl-15.04.3.tar.xz",
+            "name": "kde-l10n-nl-15.04.3.tar.xz",
+            "sha256": "0id9rl05jp3ff6jd22qnfzs40dlnijsr2mkfwzvnf08h3nk6c8id"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "parley": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "parley-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/parley-15.04.3.tar.xz",
+            "name": "parley-15.04.3.tar.xz",
+            "sha256": "1lvqih1vav234jvf18z00kdd6hn8vq7pm9659bchn02j5ic110d3"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5coreaddons",
+            "kf5crash",
+            "kf5docbook",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5kcmutils",
+            "kf5khtml",
+            "kf5kio",
+            "kf5kross",
+            "kf5module",
+            "kf5newstuff",
+            "kf5notifications",
+            "kf5produce",
+            "kf5sonnet",
+            "kf5the",
+            "kf5xmlgui",
+            "libattica",
+            "libkeduvocdocument",
+            "libxml2",
+            "libxslt",
+            "qt5",
+            "qt5concurrent",
+            "qt5core",
+            "qt5multimedia",
+            "qt5svg",
+            "qt5test"
+        ]
+    },
+    "kgoldrunner": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kgoldrunner-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kgoldrunner-15.04.3.tar.xz",
+            "name": "kgoldrunner-15.04.3.tar.xz",
+            "sha256": "171q6v3nivr64vq2wn25hfv1zhrrmlf97rd128nxscb4qzk0zcnm"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames"
+        ]
+    },
+    "kiriki": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kiriki-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kiriki-15.04.3.tar.xz",
+            "name": "kiriki-15.04.3.tar.xz",
+            "sha256": "14s37qs7f0qgpms1syakjj9amkwa0d1va8yrbmlwfbk5dvx953ls"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames"
+        ]
+    },
+    "sweeper": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "sweeper-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/sweeper-15.04.3.tar.xz",
+            "name": "sweeper-15.04.3.tar.xz",
+            "sha256": "156vmxapddlbdhwpdal2s2jr8i4zbn1yccpafqnn8qf0k0384v0l"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "lokalize": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "lokalize-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/lokalize-15.04.3.tar.xz",
+            "name": "lokalize-15.04.3.tar.xz",
+            "sha256": "1dpbzcgx32n27v2k39w944dzl0i2pph84a02ck4c8864w31d0vf5"
+        },
+        "buildInputs": [
+            "ecm",
+            "hunspell",
+            "kf5",
+            "kf5config",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5kio",
+            "kf5kross",
+            "kf5notifications",
+            "kf5sonnet",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5dbus",
+            "qt5script",
+            "qt5sql",
+            "qt5widgets"
+        ]
+    },
+    "kbounce": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kbounce-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kbounce-15.04.3.tar.xz",
+            "name": "kbounce-15.04.3.tar.xz",
+            "sha256": "1i0hyc3hb9qibqynkvi9n98a1gcvanw8k6rg0vngifzc3nv4750g"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5completion",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5notifyconfig",
+            "kf5textwidgets",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "phonon4qt5",
+            "qt5",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "kde-l10n-eo": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-eo-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-eo-15.04.3.tar.xz",
+            "name": "kde-l10n-eo-15.04.3.tar.xz",
+            "sha256": "0ac3mmflgnfy3qgsbl8938cf2j0961xh5vvhxwk7wp5j0y1g7nd0"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-is": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-is-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-is-15.04.3.tar.xz",
+            "name": "kde-l10n-is-15.04.3.tar.xz",
+            "sha256": "0lv7hcq6qp422y0byv8sak7wf62ws1ssmyggm6izsxaw01z6di9m"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-sl": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-sl-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-sl-15.04.3.tar.xz",
+            "name": "kde-l10n-sl-15.04.3.tar.xz",
+            "sha256": "12zg0wbdrvx61qqdv11mx99ncxsnbs6ywf2qa2s5pv9ccj81zl0y"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "libkcompactdisc": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "libkcompactdisc-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libkcompactdisc-15.04.3.tar.xz",
+            "name": "libkcompactdisc-15.04.3.tar.xz",
+            "sha256": "0xfb10zvrmvp9hxzh05mk75wd2q8c17kd28kxzy6vzsys1ml23fy"
+        },
+        "buildInputs": [
+            "alsa",
+            "kde4"
+        ]
+    },
+    "picmi": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "picmi-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/picmi-15.04.3.tar.xz",
+            "name": "picmi-15.04.3.tar.xz",
+            "sha256": "08r5k1hs4ja724d3hgq17cwjr96xqhi09l1fr1ls6hrij6vw2qaj"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames",
+            "qt4"
+        ]
+    },
+    "superkaramba": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "superkaramba-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/superkaramba-15.04.3.tar.xz",
+            "name": "superkaramba-15.04.3.tar.xz",
+            "sha256": "1qd2gi0jllqr2f3wmv5n3smljfgirray8hba5k062ka3fjl6ssqx"
+        },
+        "buildInputs": [
+            "kde4",
+            "pythonlibs",
+            "qimageblitz"
+        ]
+    },
+    "gwenview": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "gwenview-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/gwenview-15.04.3.tar.xz",
+            "name": "gwenview-15.04.3.tar.xz",
+            "sha256": "16p6dz8z63h5d6l5cjz61shpd30bawxgcasn55g6v7gk6rxdrvn2"
+        },
+        "buildInputs": [
+            "ecm",
+            "exiv2",
+            "jpeg",
+            "kf5",
+            "kf5activities",
+            "kf5baloo",
+            "kf5kdcraw",
+            "kf5kdelibs4support",
+            "kf5kio",
+            "kf5kipi",
+            "lcms2",
+            "phonon4qt5",
+            "png",
+            "qt5",
+            "qt5concurrent",
+            "qt5core",
+            "qt5dbus",
+            "qt5opengl",
+            "qt5script",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets",
+            "qt5x11extras",
+            "x11"
+        ]
+    },
+    "kde-l10n-fa": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-fa-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-fa-15.04.3.tar.xz",
+            "name": "kde-l10n-fa-15.04.3.tar.xz",
+            "sha256": "0fslss3bz1kzjca3zy923sq8p54jyl1bvqk1qsmv3lmws2881djl"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kpat": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kpat-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kpat-15.04.3.tar.xz",
+            "name": "kpat-15.04.3.tar.xz",
+            "sha256": "08zb9r291wig1iwh3j7h493ncjfj55255f3pf5ag9nrq44ykvk11"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5completion",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5declarative",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5notifyconfig",
+            "kf5textwidgets",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "phonon4qt5",
+            "qt5",
+            "qt5qml",
+            "qt5quick",
+            "qt5quickwidgets",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets",
+            "sharedmimeinfo"
+        ]
+    },
+    "klettres": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "klettres-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/klettres-15.04.3.tar.xz",
+            "name": "klettres-15.04.3.tar.xz",
+            "sha256": "0pqdjm5ixkfrxbp20ypgqx18wxyk0mnrmv2bqf6nk3ybwrdfb5y5"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5completion",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5doctools",
+            "kf5emoticons",
+            "kf5i18n",
+            "kf5itemmodels",
+            "kf5kdelibs4support",
+            "kf5newstuff",
+            "kf5widgetsaddons",
+            "phonon4qt5",
+            "qt5",
+            "qt5core",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "kdelibs": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdelibs-4.14.10",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdelibs-4.14.10.tar.xz",
+            "name": "kdelibs-4.14.10.tar.xz",
+            "sha256": "156ajl4al6s2vqyl920yxd2rrs7b77348233xa3bgg5jn2ysgx80"
+        },
+        "buildInputs": [
+            "acl",
+            "agg",
+            "aspell",
+            "automoc4",
+            "avahi",
+            "bison",
+            "blitz",
+            "bluez",
+            "bzip2",
+            "carbon",
+            "dbusmenuqt",
+            "dnssd",
+            "docbookxml",
+            "docbookxsl",
+            "eigen2",
+            "enchant",
+            "fam",
+            "ffmpeg",
+            "flac",
+            "flex",
+            "gif",
+            "gobject",
+            "grantlee",
+            "gssapi",
+            "gstreamer",
+            "hspell",
+            "hunspell",
+            "hupnp",
+            "iokit",
+            "jasper",
+            "jpeg",
+            "kde4",
+            "kde4internal",
+            "lcms",
+            "libart",
+            "libattica",
+            "libintl",
+            "libxml2",
+            "libxslt",
+            "openexr",
+            "openssl",
+            "pcre",
+            "perl",
+            "png",
+            "qca2",
+            "qimageblitz",
+            "qt4",
+            "shareddesktopontologies",
+            "sharedmimeinfo",
+            "soprano",
+            "sqlite",
+            "strigi",
+            "udev",
+            "usb",
+            "xine",
+            "xmms",
+            "zlib"
+        ]
+    },
+    "katomic": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "katomic-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/katomic-15.04.3.tar.xz",
+            "name": "katomic-15.04.3.tar.xz",
+            "sha256": "0j3khd1yiyq2y9c4rm36cf79frml7xhzb1jgxab6hshyzcr10lc3"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5notifyconfig",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5widgets"
+        ]
+    },
+    "kollision": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kollision-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kollision-15.04.3.tar.xz",
+            "name": "kollision-15.04.3.tar.xz",
+            "sha256": "0x45mjm6irhgrv0jmpaxa55d38h1m3c4jry5hmv8r8x4c7l7z565"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5i18n",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5notifyconfig",
+            "kf5textwidgets",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "phonon4qt5",
+            "qt5",
+            "qt5qml",
+            "qt5quick",
+            "qt5quickwidgets",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "klines": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "klines-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/klines-15.04.3.tar.xz",
+            "name": "klines-15.04.3.tar.xz",
+            "sha256": "0v5r720i996qq8hrlz8x9avrdh0dnqxbxz7h1wr4mhmz5iqj2s9c"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5service",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5qml",
+            "qt5quick",
+            "qt5quickwidgets",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "kde-l10n-ru": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-ru-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-ru-15.04.3.tar.xz",
+            "name": "kde-l10n-ru-15.04.3.tar.xz",
+            "sha256": "0blm1fmvx7i0dzvf46qngq7cb9p16pw93v3j4bf63r24671w40xj"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kcalc": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kcalc-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kcalc-15.04.3.tar.xz",
+            "name": "kcalc-15.04.3.tar.xz",
+            "sha256": "0hxva8l2x5v6k2ry25zzzral6cdia1ypk1iz37qfnb20myfv7x6q"
+        },
+        "buildInputs": [
+            "ecm",
+            "gmp",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5doctools",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5init",
+            "kf5notifications",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5widgets"
+        ]
+    },
+    "kde-l10n-mr": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-mr-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-mr-15.04.3.tar.xz",
+            "name": "kde-l10n-mr-15.04.3.tar.xz",
+            "sha256": "1yvjwcdsnf5pf8izb8fifsd2rsrvmkw704iw5m6yzh7fzdy6qyhg"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "lskat": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "lskat-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/lskat-15.04.3.tar.xz",
+            "name": "lskat-15.04.3.tar.xz",
+            "sha256": "188pq09afxyapwnx7bc4v5hc5224049q2nkywgnl161sl8jhb40v"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames"
+        ]
+    },
+    "kcolorchooser": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kcolorchooser-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kcolorchooser-15.04.3.tar.xz",
+            "name": "kcolorchooser-15.04.3.tar.xz",
+            "sha256": "1rq4r3sn3rhd6whqhchzy2cvpqik43naikh8sdzinwpp968sbz0l"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "kde-l10n-kk": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-kk-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-kk-15.04.3.tar.xz",
+            "name": "kde-l10n-kk-15.04.3.tar.xz",
+            "sha256": "0ywz646pv3dfbhbsijrk7l47l96hw3n7mds2zplmw5624wlfz7dn"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kblocks": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kblocks-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kblocks-15.04.3.tar.xz",
+            "name": "kblocks-15.04.3.tar.xz",
+            "sha256": "1iizgcj75ayr4ckpw85igcy8r6ia594sshgy1x5yir4i2jiaxr1m"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5i18n",
+            "kf5itemmodels",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5notifyconfig",
+            "kf5textwidgets",
+            "kf5widgetsaddons",
+            "kf5windowsystem",
+            "kf5xmlgui",
+            "phonon4qt5",
+            "qt5",
+            "qt5qml",
+            "qt5quick",
+            "qt5quickwidgets",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "kde-l10n-lt": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-lt-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-lt-15.04.3.tar.xz",
+            "name": "kde-l10n-lt-15.04.3.tar.xz",
+            "sha256": "1y8a7py2r3b35kvjmzpw4vgzjjmfhl44bjd0qjsyh4323q6mc4lw"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-cs": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-cs-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-cs-15.04.3.tar.xz",
+            "name": "kde-l10n-cs-15.04.3.tar.xz",
+            "sha256": "0pjvyhg2x85l2ns5zhhyn4ij26l3kaq7yf4nb3qh67radqm4kd3w"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kblackbox": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kblackbox-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kblackbox-15.04.3.tar.xz",
+            "name": "kblackbox-15.04.3.tar.xz",
+            "sha256": "1al2qzfy9773zqs6f98zqi110dmzlaa60a45pzfmmamjlh0nf5ay"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5coreaddons",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5kdegames",
+            "kf5xmlgui",
+            "qt5",
+            "qt5svg",
+            "qt5widgets"
+        ]
+    },
+    "libkdeedu": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "libkdeedu-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libkdeedu-15.04.3.tar.xz",
+            "name": "libkdeedu-15.04.3.tar.xz",
+            "sha256": "0sm3aqchxmv6nap003mpklk6yrkqlqrp5zlyvc6hn764mjm80mxr"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "amor": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "amor-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/amor-15.04.3.tar.xz",
+            "name": "amor-15.04.3.tar.xz",
+            "sha256": "197vvdw6zsn19j5xnddaz60xsmk6hv4846hxvqsybi3k0sldnb8f"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "kde-l10n-eu": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-eu-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-eu-15.04.3.tar.xz",
+            "name": "kde-l10n-eu-15.04.3.tar.xz",
+            "sha256": "0cq453v58yw4nkj3a3zmk0994779f6ay1vvgmk8fz6ychy1sx4mw"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kamera": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kamera-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kamera-15.04.3.tar.xz",
+            "name": "kamera-15.04.3.tar.xz",
+            "sha256": "1xngcscz2cj3x292gf1fn6yigbq7nafwf4k3f2dgghb8yxnxzqrz"
+        },
+        "buildInputs": [
+            "gphoto2",
+            "kde4"
+        ]
+    },
+    "pairs": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "pairs-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/pairs-15.04.3.tar.xz",
+            "name": "pairs-15.04.3.tar.xz",
+            "sha256": "1pzmxahr82rwahvcn8573qnw843nfyrqpmffngz02lj7fhxc7n9v"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "dragon": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "dragon-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/dragon-15.04.3.tar.xz",
+            "name": "dragon-15.04.3.tar.xz",
+            "sha256": "0i1zl23hsf9rykd415xjh5p2v1cmkifwljxhvqyhn1x4bv729mk1"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "kmplot": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kmplot-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kmplot-15.04.3.tar.xz",
+            "name": "kmplot-15.04.3.tar.xz",
+            "sha256": "1ymhw5iwdksbh6il0ivcagmhv0qchxmh17bawkd20bn2yh8w9njd"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5kdelibs4support",
+            "kf5parts",
+            "kf5widgetsaddons",
+            "qt5",
+            "qt5core",
+            "qt5gui",
+            "qt5printsupport",
+            "qt5svg",
+            "qt5widgets"
+        ]
+    },
+    "kde-base-artwork": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-base-artwork-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-base-artwork-15.04.3.tar.xz",
+            "name": "kde-base-artwork-15.04.3.tar.xz",
+            "sha256": "10g3335ghz4pkyqqym8ay7lm6aw85gkk1y8bykpskyzpgv9kpc7r"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "blinken": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "blinken-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/blinken-15.04.3.tar.xz",
+            "name": "blinken-15.04.3.tar.xz",
+            "sha256": "0ngg0l75vshcw288kd1141038dq1ayggid6g9r1c6djm7is17fn0"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5dbusaddons",
+            "kf5doctools",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5xmlgui",
+            "phonon4qt5",
+            "qt5",
+            "qt5core",
+            "qt5svg",
+            "qt5widgets"
+        ]
+    },
+    "konquest": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "konquest-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/konquest-15.04.3.tar.xz",
+            "name": "konquest-15.04.3.tar.xz",
+            "sha256": "092z41v548yns87n677ic3jqcjs11lya7znakw1wg8il2iq4p8ad"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames"
+        ]
+    },
+    "kde-l10n-he": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-he-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-he-15.04.3.tar.xz",
+            "name": "kde-l10n-he-15.04.3.tar.xz",
+            "sha256": "083c5gxxgvibg5xryyh919h4sli3z129cwqi8x9bjzmqdjd1b3a7"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "bovo": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "bovo-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/bovo-15.04.3.tar.xz",
+            "name": "bovo-15.04.3.tar.xz",
+            "sha256": "0fjvxvz8f3vr8sv8grpkwyhfvbcv7hayvsvmw7f1gpiamq7m7aab"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5coreaddons",
+            "kf5declarative",
+            "kf5kdegames",
+            "kf5newstuff",
+            "kf5xmlgui",
+            "qt5",
+            "qt5concurrent",
+            "qt5qml",
+            "qt5quick",
+            "qt5quickwidgets",
+            "qt5svg",
+            "qt5widgets"
+        ]
+    },
+    "ktimer": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktimer-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktimer-15.04.3.tar.xz",
+            "name": "ktimer-15.04.3.tar.xz",
+            "sha256": "1pixq0nh6n4rm4pvpabrly2wxsq58a719k7fj70w6a541chsmy77"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5dbusaddons",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5kio",
+            "kf5notifications",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5widgets"
+        ]
+    },
+    "kde-l10n-hu": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-hu-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-hu-15.04.3.tar.xz",
+            "name": "kde-l10n-hu-15.04.3.tar.xz",
+            "sha256": "0ql1yh5hmzdxmr6dnzsl08rxmvgrb4zcs6rk1r0jqkcfnwlhdf53"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-ro": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-ro-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-ro-15.04.3.tar.xz",
+            "name": "kde-l10n-ro-15.04.3.tar.xz",
+            "sha256": "0ix4p8alq6xrsgbwv23xijcnwpd8gcf96zsd59bfpmvykxqmwpdq"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-sv": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-sv-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-sv-15.04.3.tar.xz",
+            "name": "kde-l10n-sv-15.04.3.tar.xz",
+            "sha256": "0qpkl0dqw6jwb0xy1adjibhabga32hzk0rhwl75dw7bw257aka6f"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kgamma": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kgamma-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kgamma-15.04.3.tar.xz",
+            "name": "kgamma-15.04.3.tar.xz",
+            "sha256": "0wdx2xv2jkhdlbcy46ylg6c2aib4rj1gfbwc7zxwfcm52amra6a8"
+        },
+        "buildInputs": [
+            "kde4",
+            "x11"
+        ]
+    },
+    "kanagram": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kanagram-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kanagram-15.04.3.tar.xz",
+            "name": "kanagram-15.04.3.tar.xz",
+            "sha256": "18aix8r0ziprk2i8hdp6jis2i5b23q2r46x3y4lncgxs1ldgv74b"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5crash",
+            "kf5declarative",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5sonnet",
+            "libkeduvocdocument",
+            "qt5",
+            "qt5core",
+            "qt5opengl",
+            "qt5optional_components",
+            "qt5qml",
+            "qt5quick",
+            "qt5texttospeech"
+        ]
+    },
+    "kstars": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kstars-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kstars-15.04.3.tar.xz",
+            "name": "kstars-15.04.3.tar.xz",
+            "sha256": "1lnspbgg037id7jq2fjf3p7rr819jd0h4hs21hxqifcsx2qm90qp"
+        },
+        "buildInputs": [
+            "astrometrynet",
+            "cfitsio",
+            "ecm",
+            "eigen3",
+            "indi",
+            "kf5",
+            "kf5config",
+            "kf5dbusaddons",
+            "kf5doctools",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5init",
+            "kf5jobwidgets",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5plotting",
+            "kf5texteditor",
+            "kf5widgetsaddons",
+            "kf5windowsystem",
+            "kf5xmlgui",
+            "opengl",
+            "qt5",
+            "qt5gui",
+            "qt5multimedia",
+            "qt5opengl",
+            "qt5printsupport",
+            "qt5qml",
+            "qt5quick",
+            "qt5sql",
+            "qt5svg",
+            "qt5test",
+            "qt5xml",
+            "wcslib",
+            "xplanet"
+        ]
+    },
+    "kdeartwork": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdeartwork-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdeartwork-15.04.3.tar.xz",
+            "name": "kdeartwork-15.04.3.tar.xz",
+            "sha256": "1ay8xwnniy9gd4vfnnd9h5i1yybv4w5fjpycn58xdkhwf0zi229p"
+        },
+        "buildInputs": [
+            "eigen3",
+            "kde4",
+            "kde4workspace",
+            "kexiv2",
+            "opengl",
+            "xscreensaver"
+        ]
+    },
+    "kfloppy": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kfloppy-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kfloppy-15.04.3.tar.xz",
+            "name": "kfloppy-15.04.3.tar.xz",
+            "sha256": "0jzvcm1kkb0zzvmb96zl2xv0ya4a3ilirqq8zwjgzh36s06y1h7j"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "jovie": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "jovie-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/jovie-15.04.3.tar.xz",
+            "name": "jovie-15.04.3.tar.xz",
+            "sha256": "02bfx985wggmb8bbca6yz5hgfjxg0zniqsbxap3h4baiba5n2rpn"
+        },
+        "buildInputs": [
+            "kde4",
+            "qt4",
+            "speechd"
+        ]
+    },
+    "kde-l10n-zh_TW": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-zh_TW-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-zh_TW-15.04.3.tar.xz",
+            "name": "kde-l10n-zh_TW-15.04.3.tar.xz",
+            "sha256": "1p19mzpa0cm7x5afc6x9j7xr83850hrz9fvn27h4gdc8s0gbmc9m"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kscd": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kscd-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kscd-15.04.3.tar.xz",
+            "name": "kscd-15.04.3.tar.xz",
+            "sha256": "0dy41w2vc53qks0z19azrwmf6p1y4jrh7bycj81prh2dinnpkra1"
+        },
+        "buildInputs": [
+            "alsa",
+            "kde4",
+            "musicbrainz3",
+            "qt4"
+        ]
+    },
+    "kde-l10n-uk": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-uk-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-uk-15.04.3.tar.xz",
+            "name": "kde-l10n-uk-15.04.3.tar.xz",
+            "sha256": "19xwxm3bjwjxzr7axr5my6n6pm12jn9gz6xrxxjpdnf1b8386y48"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "konsole": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "konsole-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/konsole-15.04.3.tar.xz",
+            "name": "konsole-15.04.3.tar.xz",
+            "sha256": "147cx1ana0z5hg0vx0zgqavizk65s17a2pmyxd3fhdy3ad3c2ld0"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5bookmarks",
+            "kf5completion",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5doctools",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5init",
+            "kf5kdelibs4support",
+            "kf5kio",
+            "kf5notifications",
+            "kf5notifyconfig",
+            "kf5parts",
+            "kf5pty",
+            "kf5service",
+            "kf5textwidgets",
+            "kf5widgetsaddons",
+            "kf5windowsystem",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5dbus",
+            "qt5script",
+            "qt5test",
+            "qt5widgets",
+            "x11"
+        ]
+    },
+    "kruler": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kruler-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kruler-15.04.3.tar.xz",
+            "name": "kruler-15.04.3.tar.xz",
+            "sha256": "0ljssj6fqbpzsc7rvm8vyy6mpzll443w1xxbrima0dgvdc656lx0"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5notifications",
+            "kf5windowsystem",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5widgets",
+            "qt5x11extras",
+            "x11",
+            "xcb"
+        ]
+    },
+    "kubrick": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kubrick-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kubrick-15.04.3.tar.xz",
+            "name": "kubrick-15.04.3.tar.xz",
+            "sha256": "1gvamla9pxd0dj0yc8108pr31f1yf79x6ng87gmbi10nriw4dz27"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames",
+            "opengl"
+        ]
+    },
+    "kdenetwork-filesharing": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdenetwork-filesharing-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdenetwork-filesharing-15.04.3.tar.xz",
+            "name": "kdenetwork-filesharing-15.04.3.tar.xz",
+            "sha256": "083j6159sjcq0d8j2n6id6fyha5a4wk4ii7sl177md63xsl4xax1"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "dolphin-plugins": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "dolphin-plugins-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/dolphin-plugins-15.04.3.tar.xz",
+            "name": "dolphin-plugins-15.04.3.tar.xz",
+            "sha256": "0pfrydfb7qn3r5zjs6x83i05fqvzizrw0idh1faqv5br4hra9pzp"
+        },
+        "buildInputs": [
+            "kde4",
+            "libkonq"
+        ]
+    },
+    "kmines": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kmines-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kmines-15.04.3.tar.xz",
+            "name": "kmines-15.04.3.tar.xz",
+            "sha256": "0p8bfk8brh9y32qk9rpqcvpxk8if3y2m9mzh5mmg6d5bqv4r8v5a"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5i18n",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5notifyconfig",
+            "kf5textwidgets",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "phonon4qt5",
+            "qt5",
+            "qt5qml",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "kspaceduel": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kspaceduel-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kspaceduel-15.04.3.tar.xz",
+            "name": "kspaceduel-15.04.3.tar.xz",
+            "sha256": "1w4b1vd6p16fg7j08sbmhd3cqd8n1y6xm761yziz20mkkgr1yvjm"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames"
+        ]
+    },
+    "kde-l10n-tr": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-tr-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-tr-15.04.3.tar.xz",
+            "name": "kde-l10n-tr-15.04.3.tar.xz",
+            "sha256": "0p201cjaf67ixcfdmqvxmigz5frly3w036ry15hmkqq3l2hz6q4l"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "libkdcraw": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "libkdcraw-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libkdcraw-15.04.3.tar.xz",
+            "name": "libkdcraw-15.04.3.tar.xz",
+            "sha256": "0hi5i07qzvw8mbk1yrv8w8l5zhbzgnfvvpv44ym56pcz4a9fmjfg"
+        },
+        "buildInputs": [
+            "kde4",
+            "libraw"
+        ]
+    },
+    "ktp-approver": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktp-approver-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktp-approver-15.04.3.tar.xz",
+            "name": "ktp-approver-15.04.3.tar.xz",
+            "sha256": "051398wxm9cfnid2dvi4sycb61iygj8smg8f5xdfm31mfxdva3hn"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5dbusaddons",
+            "kf5i18n",
+            "kf5notifications",
+            "kf5service",
+            "qt5",
+            "qt5network",
+            "qt5widgets",
+            "telepathyqt5"
+        ]
+    },
+    "ktp-contact-runner": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktp-contact-runner-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktp-contact-runner-15.04.3.tar.xz",
+            "name": "ktp-contact-runner-15.04.3.tar.xz",
+            "sha256": "0bv83if7mwqwsblpnmdf87k6fvvjb21i6kwa7i1q9vnr7avka0yg"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5i18n",
+            "kf5runner",
+            "kf5service",
+            "ktp",
+            "qt5",
+            "qt5core",
+            "qt5dbus",
+            "qt5network",
+            "qt5widgets"
+        ]
+    },
+    "kdepim-runtime": {
+        "nativeBuildInputs": [
+            "_testrunner",
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdepim-runtime-4.14.10",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdepim-runtime-4.14.10.tar.xz",
+            "name": "kdepim-runtime-4.14.10.tar.xz",
+            "sha256": "0lndmza6x4969g9dgyl3p5zqh371nm1x8gciqy13wv34g0r1x3fn"
+        },
+        "buildInputs": [
+            "accountsqt",
+            "akonadi",
+            "boost",
+            "kde4",
+            "kdepimlibs",
+            "libkfbapi",
+            "libkgapi2",
+            "libkolab",
+            "libkolabxml",
+            "qjson",
+            "qt4",
+            "sasl2",
+            "sharedmimeinfo",
+            "signonqt",
+            "xsltproc"
+        ]
+    },
+    "print-manager": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "print-manager-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/print-manager-15.04.3.tar.xz",
+            "name": "print-manager-15.04.3.tar.xz",
+            "sha256": "15mmypcxmgrypapss3nzi3vjrbmw7f547jbpbmsprcpij1klip6q"
+        },
+        "buildInputs": [
+            "cups",
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5kcmutils",
+            "kf5kio",
+            "kf5notifications",
+            "kf5plasma",
+            "kf5widgetsaddons",
+            "kf5windowsystem",
+            "qt5",
+            "qt5core",
+            "qt5dbus",
+            "qt5network",
+            "qt5qml",
+            "qt5quick",
+            "qt5widgets"
+        ]
+    },
+    "oxygen-icons": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "oxygen-icons-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/oxygen-icons-15.04.3.tar.xz",
+            "name": "oxygen-icons-15.04.3.tar.xz",
+            "sha256": "07npzyrbw2fn1qd04imnv7cz0sisk7yllrwr2y21yr2i1gbncfqk"
+        },
+        "buildInputs": []
+    },
+    "umbrello": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "umbrello-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/umbrello-15.04.3.tar.xz",
+            "name": "umbrello-15.04.3.tar.xz",
+            "sha256": "0qil8814zc3pa11xqf0lz3lwkvp57j3iahhjzaw7famn8vfzjpmh"
+        },
+        "buildInputs": [
+            "kde4",
+            "libxml2",
+            "libxslt"
+        ]
+    },
+    "kde-l10n-ar": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-ar-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-ar-15.04.3.tar.xz",
+            "name": "kde-l10n-ar-15.04.3.tar.xz",
+            "sha256": "19kzdyjcrbjp5hwccvzyi2fd3gy3pm8yay64jpg9iln28ahzbx3b"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "ktp-filetransfer-handler": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktp-filetransfer-handler-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktp-filetransfer-handler-15.04.3.tar.xz",
+            "name": "ktp-filetransfer-handler-15.04.3.tar.xz",
+            "sha256": "12z8zcrj2nhlhh1kyx565aaacczh7884hnid6rzrb2fmm58sx39h"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5coreaddons",
+            "kf5i18n",
+            "kf5kio",
+            "ktp",
+            "qt5",
+            "qt5core",
+            "qt5dbus",
+            "qt5widgets"
+        ]
+    },
+    "kdepimlibs": {
+        "nativeBuildInputs": [
+            "_testrunner",
+            "cmake",
+            "perl_executable"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdepimlibs-4.14.10",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdepimlibs-4.14.10.tar.xz",
+            "name": "kdepimlibs-4.14.10.tar.xz",
+            "sha256": "1hl4wmdsp3lswvzvspy8h9x31n38z9gj6l50plhz3v6nmna9dk68"
+        },
+        "buildInputs": [
+            "akonadi",
+            "boost",
+            "gpgme",
+            "kde4",
+            "ldap",
+            "libical",
+            "libxml2",
+            "libxslt",
+            "prison",
+            "qjson",
+            "sasl2",
+            "sharedmimeinfo",
+            "xsltproc"
+        ]
+    },
+    "step": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "step-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/step-15.04.3.tar.xz",
+            "name": "step-15.04.3.tar.xz",
+            "sha256": "1nnjyw4jrqwdx0n34xw897kwq543vzyia8csyiadiqdq9hyzmlpg"
+        },
+        "buildInputs": [
+            "ecm",
+            "eigen3",
+            "gsl",
+            "kf5",
+            "kf5config",
+            "kf5doctools",
+            "kf5kdelibs4support",
+            "kf5khtml",
+            "kf5newstuff",
+            "kf5plotting",
+            "pythoninterp",
+            "qalculate",
+            "qt5",
+            "qt5opengl",
+            "qt5printsupport",
+            "qt5qml",
+            "qt5quick",
+            "qt5svg",
+            "qt5test",
+            "qt5xml"
+        ]
+    },
+    "kmousetool": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kmousetool-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kmousetool-15.04.3.tar.xz",
+            "name": "kmousetool-15.04.3.tar.xz",
+            "sha256": "1allf52fw55fcwxzg43cqjhfan060xyv4avmqjf43bn23h25fmjs"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "kde-l10n-ja": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-ja-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-ja-15.04.3.tar.xz",
+            "name": "kde-l10n-ja-15.04.3.tar.xz",
+            "sha256": "1423jd7lkldnqslvww1ypvmdgzbydlibjy19gmrazlsnmfrp6zzs"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kdenlive": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdenlive-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdenlive-15.04.3.tar.xz",
+            "name": "kdenlive-15.04.3.tar.xz",
+            "sha256": "17v5r0fcb0j52a89v6ygsbap03cg4ah5v5jqy2lpck8y57vslvgv"
+        },
+        "buildInputs": [
+            "ecm",
+            "git",
+            "kf5",
+            "kf5archive",
+            "kf5bookmarks",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5doctools",
+            "kf5guiaddons",
+            "kf5iconthemes",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5notifications",
+            "kf5notifyconfig",
+            "kf5plotting",
+            "kf5textwidgets",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "libv4l2",
+            "mlt",
+            "opengl",
+            "qt5",
+            "qt5core",
+            "qt5dbus",
+            "qt5opengl",
+            "qt5script",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets",
+            "sdl",
+            "sharedmimeinfo"
+        ]
+    },
+    "kbreakout": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kbreakout-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kbreakout-15.04.3.tar.xz",
+            "name": "kbreakout-15.04.3.tar.xz",
+            "sha256": "1wpc1r8xgz985514iiym49268rn4qa6msbslmc55r6bgyawjm1g1"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5completion",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5jobwidgets",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5service",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5qml",
+            "qt5quick",
+            "qt5quickwidgets",
+            "qt5svg",
+            "qt5widgets"
+        ]
+    },
+    "kde-workspace": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-workspace-4.11.21",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-workspace-4.11.21.tar.xz",
+            "name": "kde-workspace-4.11.21.tar.xz",
+            "sha256": "13vwgzz838nlqryh8nhlx70c5msyl5alrqdqlcamncxg0a4cd5ki"
+        },
+        "buildInputs": [
+            "akonadi",
+            "boost",
+            "dbusmenuqt",
+            "fontconfig",
+            "freetype",
+            "glib2",
+            "jpeg",
+            "kactivities",
+            "kde4",
+            "kdeclarative",
+            "kdepimlibs",
+            "libgps",
+            "nepomukcore",
+            "opengl",
+            "opengles",
+            "pciutils",
+            "png",
+            "prison",
+            "pythonlibrary",
+            "qalculate",
+            "qimageblitz",
+            "qjson",
+            "qt4",
+            "raw1394",
+            "sensors",
+            "soprano",
+            "strigi",
+            "udev",
+            "usb",
+            "wayland",
+            "x11",
+            "x11_xcb",
+            "xcb",
+            "xmms",
+            "zlib"
+        ]
+    },
+    "ffmpegthumbs": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ffmpegthumbs-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ffmpegthumbs-15.04.3.tar.xz",
+            "name": "ffmpegthumbs-15.04.3.tar.xz",
+            "sha256": "1di5v6bpf8zvw243dc7rdrzynvvwgnk6pnckg9zafhwsds6br5wc"
+        },
+        "buildInputs": [
+            "ffmpeg",
+            "kde4"
+        ]
+    },
+    "ktux": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktux-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktux-15.04.3.tar.xz",
+            "name": "ktux-15.04.3.tar.xz",
+            "sha256": "00b6fl056pcxdsgqzv81by10l8xpbijk8589nd0dmj74kca31qrn"
+        },
+        "buildInputs": [
+            "kde4",
+            "kde4workspace"
+        ]
+    },
+    "kde-dev-utils": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-dev-utils-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-dev-utils-15.04.3.tar.xz",
+            "name": "kde-dev-utils-15.04.3.tar.xz",
+            "sha256": "0mykd3w2l0yfi18b8jpzdvhy2dzm9avwzfpbsscb8s19vsarqf2x"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "libkeduvocdocument": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "libkeduvocdocument-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libkeduvocdocument-15.04.3.tar.xz",
+            "name": "libkeduvocdocument-15.04.3.tar.xz",
+            "sha256": "1lx72m98x60ddzhqlf5jmnw64jh5pzh02hs4gv9vsgsvbjiizmix"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5archive",
+            "kf5i18n",
+            "kf5kio",
+            "qt5",
+            "qt5test",
+            "qt5xml"
+        ]
+    },
+    "kde-l10n-pl": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-pl-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-pl-15.04.3.tar.xz",
+            "name": "kde-l10n-pl-15.04.3.tar.xz",
+            "sha256": "1kzhwhf2jxmvkr3070qfhn51d7i44ni62dacghssdiisxkcvw0xi"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "ktp-send-file": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktp-send-file-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktp-send-file-15.04.3.tar.xz",
+            "name": "ktp-send-file-15.04.3.tar.xz",
+            "sha256": "1yv4gmgcgi4rlxkispmlrlzi8jp3v1mfansh6w21lafallf3k8kf"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5kcmutils",
+            "kf5kio",
+            "ktp",
+            "qt5",
+            "qt5widgets"
+        ]
+    },
+    "cantor": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "cantor-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/cantor-15.04.3.tar.xz",
+            "name": "cantor-15.04.3.tar.xz",
+            "sha256": "02n2pavs8wqngjm9lnw0g1ipdyv42d2pzii57p3nwplfhr8n0ia4"
+        },
+        "buildInputs": [
+            "analitza5",
+            "ecm",
+            "kde4",
+            "kf5",
+            "kf5archive",
+            "kf5config",
+            "kf5coreaddons",
+            "kf5kdelibs4support",
+            "kf5newstuff",
+            "kf5parts",
+            "kf5pty",
+            "kf5texteditor",
+            "libspectre",
+            "luajit",
+            "pythonlibs",
+            "pythonlibs3",
+            "qalculate",
+            "qt5",
+            "qt5core",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets",
+            "qt5xml",
+            "qt5xmlpatterns",
+            "r"
+        ]
+    },
+    "libkcddb": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "libkcddb-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libkcddb-15.04.3.tar.xz",
+            "name": "libkcddb-15.04.3.tar.xz",
+            "sha256": "0050h4g99wxggiqibfgrmc9zyqkv1l49x0h2k1r32gxl9lf6iid8"
+        },
+        "buildInputs": [
+            "kde4",
+            "musicbrainz5"
+        ]
+    },
+    "bomber": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "bomber-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/bomber-15.04.3.tar.xz",
+            "name": "bomber-15.04.3.tar.xz",
+            "sha256": "15b79l3m280miaf32w9m48w5rysrizv7kqpc4dg8pwp7i4zbjigc"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5i18n",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5xmlgui",
+            "phonon4qt5",
+            "qt5",
+            "qt5widgets"
+        ]
+    },
+    "libkface": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "libkface-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libkface-15.04.3.tar.xz",
+            "name": "libkface-15.04.3.tar.xz",
+            "sha256": "1k3m8qhqw7xlqg0biidp5ckc1z73m0syxw20shjbmzhhwag5qlql"
+        },
+        "buildInputs": [
+            "kde4",
+            "qt4"
+        ]
+    },
+    "kde-l10n-nb": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-nb-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-nb-15.04.3.tar.xz",
+            "name": "kde-l10n-nb-15.04.3.tar.xz",
+            "sha256": "0p07mwcdk2anazcx2f86dxywmkpgxb5qnwlaah9zfqzlv915v4mp"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kturtle": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kturtle-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kturtle-15.04.3.tar.xz",
+            "name": "kturtle-15.04.3.tar.xz",
+            "sha256": "0qxymwmd7fdqqzbkj7jjziddmgr01vhnfhfy891m6mzrmhak6dcb"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5i18n",
+            "kf5kdelibs4support",
+            "kf5kio",
+            "kf5newstuff",
+            "qt5",
+            "qt5core",
+            "qt5gui",
+            "qt5svg",
+            "qt5widgets"
+        ]
+    },
+    "svgpart": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "svgpart-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/svgpart-15.04.3.tar.xz",
+            "name": "svgpart-15.04.3.tar.xz",
+            "sha256": "1b6apnppn2qal1jc0z1mfss71dscvfx2i8wr25wq6mzy8y1ajwzr"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "kdegraphics-mobipocket": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdegraphics-mobipocket-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdegraphics-mobipocket-15.04.3.tar.xz",
+            "name": "kdegraphics-mobipocket-15.04.3.tar.xz",
+            "sha256": "123fa5x6zdnm2c18i02azp9ingr2vkrxsrhfafa38v5b4y3jki6g"
+        },
+        "buildInputs": [
+            "kde4",
+            "strigi"
+        ]
+    },
+    "krfb": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "krfb-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/krfb-15.04.3.tar.xz",
+            "name": "krfb-15.04.3.tar.xz",
+            "sha256": "0pa2xnbgg6rlb3my92kc4kr0sgifrjf8r0j594sdsyfz960hzd2l"
+        },
+        "buildInputs": [
+            "kde4",
+            "ktp",
+            "libvncserver",
+            "telepathyqt4"
+        ]
+    },
+    "kde-l10n-ko": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-ko-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-ko-15.04.3.tar.xz",
+            "name": "kde-l10n-ko-15.04.3.tar.xz",
+            "sha256": "0qs4mcds85rs4kqhck7n450makj295bnfrjlx2hgx1bzk8jpgl19"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "libkgeomap": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "libkgeomap-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libkgeomap-15.04.3.tar.xz",
+            "name": "libkgeomap-15.04.3.tar.xz",
+            "sha256": "1h0w1vdnxawgibp479vh1rsqz17gps459wxcixwxmcgb4xxrf1dk"
+        },
+        "buildInputs": [
+            "kde4",
+            "marble",
+            "marblewidget",
+            "qt4"
+        ]
+    },
+    "kalgebra": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kalgebra-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kalgebra-15.04.3.tar.xz",
+            "name": "kalgebra-15.04.3.tar.xz",
+            "sha256": "1h67lcxsvsccqk66k6xs1ah2nb1p05p1mcdkcbqjfs0bpw8mby5z"
+        },
+        "buildInputs": [
+            "analitza5",
+            "curses",
+            "ecm",
+            "kf5configwidgets",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5kio",
+            "kf5widgetsaddons",
+            "opengl",
+            "qt5",
+            "qt5opengl",
+            "qt5printsupport",
+            "qt5qml",
+            "qt5quick",
+            "qt5svg",
+            "qt5test",
+            "qt5webkitwidgets",
+            "qt5xml",
+            "readline"
+        ]
+    },
+    "rocs": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "rocs-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/rocs-15.04.3.tar.xz",
+            "name": "rocs-15.04.3.tar.xz",
+            "sha256": "123kj345nh1pq1d3w04k2ssf26q2hp6w8mnvlpza4fgav9lrw57m"
+        },
+        "buildInputs": [
+            "boost",
+            "ecm",
+            "grantlee5",
+            "kf5",
+            "kf5archive",
+            "kf5config",
+            "kf5coreaddons",
+            "kf5declarative",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5itemviews",
+            "kf5texteditor",
+            "kf5xmlgui",
+            "qt5",
+            "qt5concurrent",
+            "qt5core",
+            "qt5gui",
+            "qt5quickwidgets",
+            "qt5script",
+            "qt5scripttools",
+            "qt5svg",
+            "qt5test",
+            "qt5webkit",
+            "qt5webkitwidgets",
+            "qt5widgets",
+            "qt5xmlpatterns"
+        ]
+    },
+    "kbruch": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kbruch-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kbruch-15.04.3.tar.xz",
+            "name": "kbruch-15.04.3.tar.xz",
+            "sha256": "0fivkpa5cr5ahhh1h1z90vl1sr35ks0kmw2mnpk42wgpgipdfbfx"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5crash",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5widgets"
+        ]
+    },
+    "ksudoku": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ksudoku-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ksudoku-15.04.3.tar.xz",
+            "name": "ksudoku-15.04.3.tar.xz",
+            "sha256": "130v3fhhcxf2fkrhkgb7lqjdv4h7kwzn6z133hmqd617s53pnmfw"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames",
+            "opengl"
+        ]
+    },
+    "kde-l10n-el": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-el-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-el-15.04.3.tar.xz",
+            "name": "kde-l10n-el-15.04.3.tar.xz",
+            "sha256": "1h5hj8li66h5p309rcyk4f6sahdgs25ihdfy673bd7hjz51hk3da"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kopete": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kopete-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kopete-15.04.3.tar.xz",
+            "name": "kopete-15.04.3.tar.xz",
+            "sha256": "07d51in5h6f07gf12pr2fb2w7gkwyca04ra8vy7m373lrkv71i35"
+        },
+        "buildInputs": [
+            "alsa",
+            "boost",
+            "expat",
+            "gif",
+            "glib2",
+            "idn",
+            "jasper",
+            "jsoncpp",
+            "kde4",
+            "kdepimlibs",
+            "kleopatra",
+            "libgadu",
+            "libmeanwhile",
+            "libmsn",
+            "libortp",
+            "libotr",
+            "libv4l2",
+            "libxml2",
+            "libxslt",
+            "mediastreamer",
+            "openssl",
+            "qca2",
+            "qgpgme",
+            "qimageblitz",
+            "qt4",
+            "qt5core",
+            "qt5network",
+            "speex",
+            "sqlite",
+            "srtp",
+            "xmms",
+            "zlib"
+        ]
+    },
+    "kde-l10n-de": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-de-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-de-15.04.3.tar.xz",
+            "name": "kde-l10n-de-15.04.3.tar.xz",
+            "sha256": "1yvc9z5fzhpv6xvc2r69fvfxhr6p6fp2b7hpfs7l0v2p1vlw59fl"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-nds": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-nds-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-nds-15.04.3.tar.xz",
+            "name": "kde-l10n-nds-15.04.3.tar.xz",
+            "sha256": "135ibbcddyqw65v0gvb1cvd6d736wwdvqy2q819808z44ylah8ha"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-pa": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-pa-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-pa-15.04.3.tar.xz",
+            "name": "kde-l10n-pa-15.04.3.tar.xz",
+            "sha256": "0dksyld8jn3qngnb7r4g0ir2zy6c7dm2gx8ws5zz3k7ism61fqby"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "okteta": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [
+            "kastencore",
+            "kastengui",
+            "kf5kio",
+            "oktetacore",
+            "oktetagui",
+            "oktetakastencore",
+            "oktetakastengui",
+            "qt5core",
+            "qt5gui",
+            "qt5widgets"
+        ],
+        "name": "okteta-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/okteta-15.04.3.tar.xz",
+            "name": "okteta-15.04.3.tar.xz",
+            "sha256": "1z52n88kjkzjdsvyr0sksh0kmjya5gwjra6gnjaqfd25nbralgnc"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5bookmarks",
+            "kf5codecs",
+            "kf5completion",
+            "kf5configwidgets",
+            "kf5dbusaddons",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5kcmutils",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5parts",
+            "kf5service",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qca-qt5",
+            "qt5",
+            "qt5core",
+            "qt5designer",
+            "qt5network",
+            "qt5printsupport",
+            "qt5script",
+            "qt5scripttools",
+            "qt5test",
+            "qt5widgets",
+            "qt5xml",
+            "sharedmimeinfo"
+        ]
+    },
+    "ktp-accounts-kcm": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktp-accounts-kcm-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktp-accounts-kcm-15.04.3.tar.xz",
+            "name": "ktp-accounts-kcm-15.04.3.tar.xz",
+            "sha256": "00gvcps8h5bi612fwyy5xgb855avv7ad4gfhbbpqz2bykgsjfgj7"
+        },
+        "buildInputs": [
+            "accountsfiledir",
+            "accountsqt5",
+            "ecm",
+            "intltool",
+            "kaccounts",
+            "kf5",
+            "kf5codecs",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5kcmutils",
+            "kf5kio",
+            "kf5widgetsaddons",
+            "qt5",
+            "qt5core",
+            "qt5dbus",
+            "qt5widgets",
+            "signonqt5",
+            "telepathyqt5"
+        ]
+    },
+    "zeroconf-ioslave": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "zeroconf-ioslave-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/zeroconf-ioslave-15.04.3.tar.xz",
+            "name": "zeroconf-ioslave-15.04.3.tar.xz",
+            "sha256": "141hfbcikpwsr9il3ysjslprcqp1687ncrrhjw3h1qq5pdm8z96p"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "kremotecontrol": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kremotecontrol-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kremotecontrol-15.04.3.tar.xz",
+            "name": "kremotecontrol-15.04.3.tar.xz",
+            "sha256": "0zia5j0svgprglckfkf9vb7d5dkgggil7a2qc55yhpr2ihnvryvl"
+        },
+        "buildInputs": [
+            "kde4",
+            "qt4"
+        ]
+    },
+    "kde-l10n-bs": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-bs-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-bs-15.04.3.tar.xz",
+            "name": "kde-l10n-bs-15.04.3.tar.xz",
+            "sha256": "0lf1nxf068fyl7vck3vqdzaj8f5mpq3lzs10rg5qkm3a3qli0drc"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "ark": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ark-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ark-15.04.3.tar.xz",
+            "name": "ark-15.04.3.tar.xz",
+            "sha256": "1065i6vs1cswjd0lb7b01b7fl6k5p73pfbp5nfzjxi9a1sl4sql5"
+        },
+        "buildInputs": [
+            "bzip2",
+            "kde4",
+            "libarchive",
+            "libkonq",
+            "liblzma",
+            "qjson",
+            "zlib"
+        ]
+    },
+    "libkdegames": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [
+            "kf5completion",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5i18n",
+            "kf5kdelibs4support",
+            "kf5widgetsaddons",
+            "qt5network",
+            "qt5qml",
+            "qt5quickwidgets",
+            "qt5widgets",
+            "qt5xml"
+        ],
+        "name": "libkdegames-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/libkdegames-15.04.3.tar.xz",
+            "name": "libkdegames-15.04.3.tar.xz",
+            "sha256": "051bn6f3f1blzxkm16lqnplwba9c6q0ig6ah819vadw7qbmls44n"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5archive",
+            "kf5bookmarks",
+            "kf5codecs",
+            "kf5completion",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5crash",
+            "kf5dbusaddons",
+            "kf5declarative",
+            "kf5dnssd",
+            "kf5globalaccel",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5jobwidgets",
+            "kf5kdelibs4support",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5service",
+            "kf5textwidgets",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "openal",
+            "qt5",
+            "qt5qml",
+            "qt5quick",
+            "qt5quickwidgets",
+            "qt5svg",
+            "qt5test",
+            "qt5widgets",
+            "sndfile"
+        ]
+    },
+    "kde-l10n-hi": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-hi-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-hi-15.04.3.tar.xz",
+            "name": "kde-l10n-hi-15.04.3.tar.xz",
+            "sha256": "1xjicw98r69jlby116xy3g5z6kbblry1h0wfrsyp1m8s8fm4f2gm"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "cervisia": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "cervisia-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/cervisia-15.04.3.tar.xz",
+            "name": "cervisia-15.04.3.tar.xz",
+            "sha256": "18fl0krby18y94xqc8g78rplgsidqwzxwvv4j3xypsjvhaalrw7q"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "kde-l10n-en_GB": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-en_GB-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-en_GB-15.04.3.tar.xz",
+            "name": "kde-l10n-en_GB-15.04.3.tar.xz",
+            "sha256": "0wlca0rp01x8z4ff26db8nsiafly2frk4fvxsw86rc7cwb15ck7q"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kapman": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kapman-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kapman-15.04.3.tar.xz",
+            "name": "kapman-15.04.3.tar.xz",
+            "sha256": "0avlvf4nw89xa224g5h53rf4xmmb32z25ia4ilpiaglsm5lavkf8"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5i18n",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5notifyconfig",
+            "kf5windowsystem",
+            "kf5xmlgui",
+            "phonon4qt5",
+            "qt5",
+            "qt5svg",
+            "qt5widgets"
+        ]
+    },
+    "kdeedu-data": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdeedu-data-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdeedu-data-15.04.3.tar.xz",
+            "name": "kdeedu-data-15.04.3.tar.xz",
+            "sha256": "14k0dcbhxkfpb7rwrp08lzd3m201v3gahv1cd9hy1wzga513kbm2"
+        },
+        "buildInputs": [
+            "ecm"
+        ]
+    },
+    "kgeography": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kgeography-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kgeography-15.04.3.tar.xz",
+            "name": "kgeography-15.04.3.tar.xz",
+            "sha256": "1qra3j6zrwihm5c896adh0acy7lgbkpcw8ja22dv519926slbi84"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5service",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5widgets"
+        ]
+    },
+    "kdesdk-thumbnailers": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdesdk-thumbnailers-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdesdk-thumbnailers-15.04.3.tar.xz",
+            "name": "kdesdk-thumbnailers-15.04.3.tar.xz",
+            "sha256": "06vznwg9fhrky5bf46hfaxw4dyh9nfr0v0slh77ys0szn18cns7c"
+        },
+        "buildInputs": [
+            "gettextpo",
+            "kde4"
+        ]
+    },
+    "kppp": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kppp-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kppp-15.04.3.tar.xz",
+            "name": "kppp-15.04.3.tar.xz",
+            "sha256": "0ibmc0axcxg4x4dcwdjhq4mgvfrcm18n2g12qd2b27czhiffbq7b"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "kde-l10n-ug": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-ug-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-ug-15.04.3.tar.xz",
+            "name": "kde-l10n-ug-15.04.3.tar.xz",
+            "sha256": "1mrgcx242jnh32kz522jnc3wihn7a72231pibw6sh2hmykcv5yjl"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kgpg": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kgpg-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kgpg-15.04.3.tar.xz",
+            "name": "kgpg-15.04.3.tar.xz",
+            "sha256": "13hswfxfs4h58aizydl4v8i8zlac0k7qp5br7aqa5p9fpaj8496b"
+        },
+        "buildInputs": [
+            "gpgme",
+            "kde4",
+            "kdepimlibs"
+        ]
+    },
+    "kde-l10n-lv": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-lv-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-lv-15.04.3.tar.xz",
+            "name": "kde-l10n-lv-15.04.3.tar.xz",
+            "sha256": "1ac377lba57wjmnqr9jqjmq8qn9a15hvydbnbj35akqchppcvpk2"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-hr": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-hr-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-hr-15.04.3.tar.xz",
+            "name": "kde-l10n-hr-15.04.3.tar.xz",
+            "sha256": "12n0s8a8iy1bldnjzhg9jiy896c9vyj5zj23mxlbmzchz5gz9bby"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kde-l10n-ca": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-ca-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-ca-15.04.3.tar.xz",
+            "name": "kde-l10n-ca-15.04.3.tar.xz",
+            "sha256": "1yag38xhairw08zm0q5qrwzria3hzs75cipgf4xrwii946rx3g44"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "mplayerthumbs": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "mplayerthumbs-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/mplayerthumbs-15.04.3.tar.xz",
+            "name": "mplayerthumbs-15.04.3.tar.xz",
+            "sha256": "0ah79wl2qi15y874ds39f53pz2qsc0iwy7h33jzrqmy85sx92g71"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "kate": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kate-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kate-15.04.3.tar.xz",
+            "name": "kate-15.04.3.tar.xz",
+            "sha256": "0lr0f23ylv6rlm3yqzkrklnj9c0rsfnsmn0gnkd7bw7hwcgb0wfz"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5dbusaddons",
+            "libgit2",
+            "pykde4",
+            "pyqt4",
+            "pythonlibrary",
+            "qt5",
+            "qt5core",
+            "qt5dbus",
+            "qt5script",
+            "qt5sql",
+            "qt5test",
+            "qt5widgets",
+            "sip"
+        ]
+    },
+    "ksaneplugin": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ksaneplugin-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ksaneplugin-15.04.3.tar.xz",
+            "name": "ksaneplugin-15.04.3.tar.xz",
+            "sha256": "1zy2ybdgihji4blz9vwfmnw0k1b8s60qfhpjcmrgzlbc4kp0wag7"
+        },
+        "buildInputs": [
+            "kde4",
+            "ksane"
+        ]
+    },
+    "kde-runtime": {
+        "nativeBuildInputs": [
+            "cmake",
+            "md5sum_executable",
+            "windres_executable"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-runtime-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-runtime-15.04.3.tar.xz",
+            "name": "kde-runtime-15.04.3.tar.xz",
+            "sha256": "0fyd9wksb7lxqsbq24q2vhy35a7pfr9mqa1xgpx5rjcml3n1vlpq"
+        },
+        "buildInputs": [
+            "alsa",
+            "bzip2",
+            "exiv2",
+            "glib2",
+            "gpgme",
+            "jpeg",
+            "kactivities",
+            "kde4",
+            "kdeclarative",
+            "kdepimlibs",
+            "libattica",
+            "libgcrypt",
+            "liblzma",
+            "libssh",
+            "nepomukcore",
+            "networkmanager",
+            "openexr",
+            "pulseaudio",
+            "qca2",
+            "qgpgme",
+            "qntrack",
+            "samba",
+            "sharedmimeinfo",
+            "slp",
+            "soprano"
+        ]
+    },
+    "ktp-text-ui": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktp-text-ui-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktp-text-ui-15.04.3.tar.xz",
+            "name": "ktp-text-ui-15.04.3.tar.xz",
+            "sha256": "0my4gxw73pmpi45xa2s3ny933kmbfal733iq235vpsqqmdyz7mah"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5archive",
+            "kf5dbusaddons",
+            "kf5emoticons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5kcmutils",
+            "kf5kio",
+            "kf5notifications",
+            "kf5notifyconfig",
+            "kf5people",
+            "kf5service",
+            "kf5sonnet",
+            "kf5textwidgets",
+            "kf5webkit",
+            "kf5widgetsaddons",
+            "kf5windowsystem",
+            "kf5xmlgui",
+            "ktp",
+            "qt5",
+            "qt5webkitwidgets"
+        ]
+    },
+    "kaccounts-providers": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kaccounts-providers-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kaccounts-providers-15.04.3.tar.xz",
+            "name": "kaccounts-providers-15.04.3.tar.xz",
+            "sha256": "0lpdcjqqrl3c9l6asfqjbas79g145i6a8ix6dhzc8s77vp1wqxil"
+        },
+        "buildInputs": [
+            "accountsfiledir",
+            "ecm",
+            "intltool"
+        ]
+    },
+    "kteatime": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kteatime-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kteatime-15.04.3.tar.xz",
+            "name": "kteatime-15.04.3.tar.xz",
+            "sha256": "1359y527nlwzb6jhid5wl3y93ajxawbjd1hf0pmfg5pxpy7aykzg"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5crash",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5notifications",
+            "kf5notifyconfig",
+            "kf5textwidgets",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5core",
+            "qt5dbus",
+            "qt5widgets"
+        ]
+    },
+    "krdc": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "krdc-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/krdc-15.04.3.tar.xz",
+            "name": "krdc-15.04.3.tar.xz",
+            "sha256": "0ylq0dpn45cp1s3y3gb7mrvkjx798knpfmb50lhl3397z1niw4zv"
+        },
+        "buildInputs": [
+            "kde4",
+            "libnxcl",
+            "libvncserver",
+            "telepathyqt4"
+        ]
+    },
+    "klickety": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "klickety-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/klickety-15.04.3.tar.xz",
+            "name": "klickety-15.04.3.tar.xz",
+            "sha256": "0zxnclm74l77f6lwz74wkk831sidwcsd6lc94p853gngmrra5a0c"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames"
+        ]
+    },
+    "kolf": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kolf-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kolf-15.04.3.tar.xz",
+            "name": "kolf-15.04.3.tar.xz",
+            "sha256": "1vhhy3pffp4f92zm1k1ksx18gvv404jfa6p28ybsp23fb22z8f90"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames"
+        ]
+    },
+    "ktouch": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ktouch-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktouch-15.04.3.tar.xz",
+            "name": "ktouch-15.04.3.tar.xz",
+            "sha256": "03xvj2rpamw5b6bpbiqkk01jhnkhcqi3c4rxhd0dxqi3da0r1211"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdeclarative",
+            "x11"
+        ]
+    },
+    "kdepim": {
+        "nativeBuildInputs": [
+            "cmake",
+            "dblatex_executable"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdepim-4.14.10",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdepim-4.14.10.tar.xz",
+            "name": "kdepim-4.14.10.tar.xz",
+            "sha256": "1qmpbgwchjzfrw8nyvx5ibd6zl05w4kn341519w334r5h5dqdbgd"
+        },
+        "buildInputs": [
+            "akonadi",
+            "baloo",
+            "boost",
+            "git",
+            "grantlee",
+            "kde4",
+            "kdepimlibs",
+            "libkgapi2",
+            "prison",
+            "qgpgme",
+            "qjson",
+            "sasl2",
+            "xsltproc",
+            "zlib"
+        ]
+    },
+    "poxml": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "poxml-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/poxml-15.04.3.tar.xz",
+            "name": "poxml-15.04.3.tar.xz",
+            "sha256": "1n49q5rrhi878jwcvgzy8cri2dd2ycv24m4b0js7j1vxl3cy26n9"
+        },
+        "buildInputs": [
+            "gettext",
+            "gettextpo",
+            "kde4"
+        ]
+    },
+    "okular": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "okular-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/okular-15.04.3.tar.xz",
+            "name": "okular-15.04.3.tar.xz",
+            "sha256": "03mmdvnjbaaph4zdpddpfs55v7idn95cf1wvxv540flx3qzn9s7z"
+        },
+        "buildInputs": [
+            "activeapp",
+            "chm",
+            "djvulibre",
+            "epub",
+            "freetype",
+            "jpeg",
+            "kactivities",
+            "kde4",
+            "kexiv2",
+            "libkscreen",
+            "libspectre",
+            "poppler",
+            "qca2",
+            "qimageblitz",
+            "qmobipocket",
+            "tiff",
+            "zlib"
+        ]
+    },
+    "kde-l10n-fi": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-fi-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-fi-15.04.3.tar.xz",
+            "name": "kde-l10n-fi-15.04.3.tar.xz",
+            "sha256": "07vk6c62g1fywpqbvaa29gwgl4prcyxk4l1j15cj2zwrkl35hi20"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "ktp-common-internals": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [
+            "kf5wallet",
+            "telepathyloggerqt",
+            "telepathyqt5"
+        ],
+        "name": "ktp-common-internals-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ktp-common-internals-15.04.3.tar.xz",
+            "name": "ktp-common-internals-15.04.3.tar.xz",
+            "sha256": "1i59k2063590y1nbzbpgdmnxyk4nap2sazr57pi8y4lqzzycr7qv"
+        },
+        "buildInputs": [
+            "accountsqt5",
+            "doxygen",
+            "ecm",
+            "kaccounts",
+            "kf5",
+            "kf5config",
+            "kf5coreaddons",
+            "kf5iconthemes",
+            "kf5kcmutils",
+            "kf5kio",
+            "kf5notifications",
+            "kf5notifyconfig",
+            "kf5people",
+            "kf5texteditor",
+            "kf5wallet",
+            "kf5widgetsaddons",
+            "kf5windowsystem",
+            "libgcrypt",
+            "libotr",
+            "qt5",
+            "qt5qml",
+            "qt5sql",
+            "qt5test",
+            "telepathyloggerqt",
+            "telepathyqt5",
+            "telepathyqt5service"
+        ]
+    },
+    "kcachegrind": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kcachegrind-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kcachegrind-15.04.3.tar.xz",
+            "name": "kcachegrind-15.04.3.tar.xz",
+            "sha256": "1njlky2gsp9ac00id7kk0m19ygwfp5wpzjncmzvkcx65gdafhnwi"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "kdf": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdf-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdf-15.04.3.tar.xz",
+            "name": "kdf-15.04.3.tar.xz",
+            "sha256": "1s8jhz9k4c913fzp88gxsrpxp183vk3rpj497aj0qqh5xrl4pz7a"
+        },
+        "buildInputs": [
+            "kde4"
+        ]
+    },
+    "kajongg": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kajongg-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kajongg-15.04.3.tar.xz",
+            "name": "kajongg-15.04.3.tar.xz",
+            "sha256": "0gs7h6mx9ngvk2vhn4qn3qbcyf18aw97r1j7if4hqc3lr836zpbg"
+        },
+        "buildInputs": [
+            "kde4",
+            "twisted"
+        ]
+    },
+    "ksquares": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ksquares-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ksquares-15.04.3.tar.xz",
+            "name": "ksquares-15.04.3.tar.xz",
+            "sha256": "0pczn92b0bbgqwqcah4dlhsj5qwqcm0v58j5schpxqvsxz7p26jx"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5notifyconfig",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5test",
+            "qt5widgets"
+        ]
+    },
+    "kshisen": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kshisen-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kshisen-15.04.3.tar.xz",
+            "name": "kshisen-15.04.3.tar.xz",
+            "sha256": "0kagbvw8kilv5908d4b20b7ayj8y44p8bm3av3rijvvz0mn7b4zx"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5coreaddons",
+            "kf5declarative",
+            "kf5dnssd",
+            "kf5doctools",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5kmahjongglib",
+            "kf5newstuff",
+            "kf5xmlgui",
+            "phonon4qt5",
+            "qt5",
+            "qt5core",
+            "qt5gui"
+        ]
+    },
+    "kde-l10n-nn": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-nn-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-nn-15.04.3.tar.xz",
+            "name": "kde-l10n-nn-15.04.3.tar.xz",
+            "sha256": "1xizqrxakgfa3hqfcdm4q97vgzj0lsx8np2jr4xvmd94bh2caw56"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "kdesdk-strigi-analyzers": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kdesdk-strigi-analyzers-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kdesdk-strigi-analyzers-15.04.3.tar.xz",
+            "name": "kdesdk-strigi-analyzers-15.04.3.tar.xz",
+            "sha256": "0n821gwvj2il1zf5s6nqaq58i5r4pn2vzcck1yl2y901shqw6vzb"
+        },
+        "buildInputs": [
+            "kde4",
+            "strigi"
+        ]
+    },
+    "kde-l10n-zh_CN": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-zh_CN-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-zh_CN-15.04.3.tar.xz",
+            "name": "kde-l10n-zh_CN-15.04.3.tar.xz",
+            "sha256": "0i3d9dqcb5222k9ys7n14lp9llv7pdcc1fwymnmzrsszr38vd24j"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "ksnakeduel": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "ksnakeduel-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/ksnakeduel-15.04.3.tar.xz",
+            "name": "ksnakeduel-15.04.3.tar.xz",
+            "sha256": "08q6r4r5d29ikiqpbx8mfw79nxjjphw2r2capkbs3bd6ly30bzpx"
+        },
+        "buildInputs": [
+            "kde4",
+            "kdegames"
+        ]
+    },
+    "kde-l10n-ia": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-ia-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-ia-15.04.3.tar.xz",
+            "name": "kde-l10n-ia-15.04.3.tar.xz",
+            "sha256": "17b42p7jw5nb97fp88lbg2f2pqy1zcsavisfp2h8wmd8sk4hfpd1"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "granatier": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "granatier-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/granatier-15.04.3.tar.xz",
+            "name": "granatier-15.04.3.tar.xz",
+            "sha256": "1bi6p2xzgxzn6wdfjmxpxfms8z2cksgkkhsa6p0ngd6ln8plmdj9"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5dbusaddons",
+            "kf5guiaddons",
+            "kf5i18n",
+            "kf5iconthemes",
+            "kf5itemviews",
+            "kf5kdegames",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5notifyconfig",
+            "kf5widgetsaddons",
+            "kf5xmlgui",
+            "qt5",
+            "qt5svg",
+            "qt5widgets"
+        ]
+    },
+    "kde-dev-scripts": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-dev-scripts-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-dev-scripts-15.04.3.tar.xz",
+            "name": "kde-dev-scripts-15.04.3.tar.xz",
+            "sha256": "0isa27ijgcqjcsh30cjg6hbrzpfwm1vjv1zi2blxxnfwmq2n1j0l"
+        },
+        "buildInputs": [
+            "ecm",
+            "kde4",
+            "kf5doctools"
+        ]
+    },
+    "khangman": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "khangman-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/khangman-15.04.3.tar.xz",
+            "name": "khangman-15.04.3.tar.xz",
+            "sha256": "13rbm2g29hvjia1c28r0svw5xjgvr133vqgkhp8b5vsrvz9kqjrn"
+        },
+        "buildInputs": [
+            "ecm",
+            "kf5",
+            "kf5completion",
+            "kf5config",
+            "kf5configwidgets",
+            "kf5coreaddons",
+            "kf5crash",
+            "kf5declarative",
+            "kf5doctools",
+            "kf5i18n",
+            "kf5kio",
+            "kf5newstuff",
+            "kf5notifications",
+            "kf5xmlgui",
+            "libkeduvocdocument",
+            "qt5",
+            "qt5core",
+            "qt5qml",
+            "qt5quick",
+            "qt5quickwidgets",
+            "qt5svg"
+        ]
+    },
+    "kde-l10n-sk": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "kde-l10n-sk-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/kde-l10n/kde-l10n-sk-15.04.3.tar.xz",
+            "name": "kde-l10n-sk-15.04.3.tar.xz",
+            "sha256": "05vvxphhapc4kc90a4p2f7j447varc4jz69n6y0fkh0xg2rpk12j"
+        },
+        "buildInputs": [
+            "ecm",
+            "gettext",
+            "kde4",
+            "kf5doctools",
+            "kf5i18n"
+        ]
+    },
+    "audiocd-kio": {
+        "nativeBuildInputs": [
+            "cmake"
+        ],
+        "propagatedNativeBuildInputs": [],
+        "propagatedUserEnvPkgs": [],
+        "propagatedBuildInputs": [],
+        "name": "audiocd-kio-15.04.3",
+        "src": {
+            "url": "stable/applications/15.04.3/src/audiocd-kio-15.04.3.tar.xz",
+            "name": "audiocd-kio-15.04.3.tar.xz",
+            "sha256": "0fwrjz4bkxinkzk52yv52jx2i6r9rm1nip056kddk718rqr224qi"
+        },
+        "buildInputs": [
+            "cdparanoia",
+            "flac",
+            "kde4",
+            "libkcddb",
+            "libkcompactdisc",
+            "oggvorbis"
+        ]
+    }
+}
\ No newline at end of file
diff --git a/pkgs/applications/kde-apps-15.04/packages.sh b/pkgs/applications/kde-apps-15.04/packages.sh
new file mode 100755
index 00000000000..a18324e513f
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.04/packages.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+set -x
+
+origin="$(pwd)"
+
+# if setting KDE_MIRROR, be sure to set --cut-dirs=N in MANIFEST_EXTRA_ARGS
+KDE_MIRROR="${KDE_MIRROR:-http://download.kde.org}"
+
+alias nix-build="nix-build --no-out-link \"$origin/../../..\""
+
+# The extra slash at the end of the URL is necessary to stop wget
+# from recursing over the whole server! (No, it's not a bug.)
+$(nix-build -A autonix.manifest) \
+    "${KDE_MIRROR}/stable/applications/15.04.3/" \
+    "$@" -A '*.tar.xz'
+
+AUTONIX_DEPS_KF5=${AUTONIX_DEPS_KF5:-"$(nix-build -A haskellPackages.autonix-deps-kf5)/bin/kf5-deps"}
+
+$AUTONIX_DEPS_KF5 manifest.json
+
+rm manifest.json
diff --git a/pkgs/applications/kde-apps-15.04/plasma5-renames.json b/pkgs/applications/kde-apps-15.04/plasma5-renames.json
new file mode 100644
index 00000000000..98141d29cc5
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.04/plasma5-renames.json
@@ -0,0 +1,20 @@
+{
+    "kf5sysguard": "libksysguard",
+    "kf5baloo": "baloo",
+    "krunnerappdbusinterface": "plasma-workspace",
+    "screensaverdbusinterface": "plasma-workspace",
+    "ctest": "kdeplasma-addons",
+    "kf5filemetadata": "kfilemetadata",
+    "kwindbusinterface": "kwin",
+    "kf5activitiesexperimentalstats": "plasma-desktop",
+    "khotkeysdbusinterface": "khotkeys",
+    "libkworkspace": "plasma-workspace",
+    "libtaskmanager": "plasma-workspace",
+    "backend": "powerdevil",
+    "kf5screen": "libkscreen",
+    "ksmserverdbusinterface": "plasma-workspace",
+    "kf5wayland": "kwayland",
+    "kdecoration2": "kdecoration",
+    "kf5bluezqt": "bluez-qt",
+    "oxygenfont": "oxygen-fonts"
+}
\ No newline at end of file
diff --git a/pkgs/applications/kde-apps-15.04/renames.json b/pkgs/applications/kde-apps-15.04/renames.json
new file mode 100644
index 00000000000..42b2e53df9a
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.04/renames.json
@@ -0,0 +1,31 @@
+{
+    "libkomparediff2": "libkomparediff2",
+    "kdegames": "libkdegames",
+    "ksane": "libksane",
+    "ctest": "sweeper",
+    "kastencore": "okteta",
+    "kastengui": "okteta",
+    "gpgmepp": "kdepimlibs",
+    "oktetacore": "okteta",
+    "kf5kmahjongglib": "libkmahjongg",
+    "oktetagui": "okteta",
+    "libkcompactdisc": "libkcompactdisc",
+    "libkdeedu": "libkdeedu",
+    "kaccounts": "kaccounts-integration",
+    "kastencontrollers": "okteta",
+    "backend": "kde-workspace",
+    "ktp": "ktp-common-internals",
+    "kdepimlibs": "kdepimlibs",
+    "qjdns": "kopete",
+    "libkeduvocdocument": "libkeduvocdocument",
+    "oktetakastencore": "okteta",
+    "libkcddb": "libkcddb",
+    "oktetakastengui": "okteta",
+    "kde4workspace": "kde-workspace",
+    "jdns": "kopete",
+    "okular": "okular",
+    "qmobipocket": "kdegraphics-mobipocket",
+    "kdeclarative": "kdelibs",
+    "analitza5": "analitza",
+    "oktetakastencontrollers": "okteta"
+}
\ No newline at end of file
diff --git a/pkgs/applications/kde-apps-15.04/renames.nix b/pkgs/applications/kde-apps-15.04/renames.nix
deleted file mode 100644
index 37b4ef4f8be..00000000000
--- a/pkgs/applications/kde-apps-15.04/renames.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-# DO NOT EDIT! This file is generated automatically.
-{ }:
-{
-"Analitza5" = "analitza";
-"Backend" = "kde-workspace";
-"CTest" = "sweeper";
-"ECM" = "extra-cmake-modules";
-"Gpgmepp" = "kdepimlibs";
-"JDns" = "kopete";
-"KAccounts" = "kaccounts-integration";
-"KDE4Workspace" = "kde-workspace";
-"KDEGames" = "libkdegames";
-"KDeclarative" = "kdelibs";
-"KF5KMahjongglib" = "libkmahjongg";
-"KSane" = "libksane";
-"KTp" = "ktp-common-internals";
-"KastenControllers" = "okteta";
-"KastenCore" = "okteta";
-"KastenGui" = "okteta";
-"KdepimLibs" = "kdepimlibs";
-"LibKEduVocDocument" = "libkeduvocdocument";
-"LibKdeEdu" = "libkdeedu";
-"LibKompareDiff2" = "libkomparediff2";
-"Libkcddb" = "libkcddb";
-"Libkcompactdisc" = "libkcompactdisc";
-"OktetaCore" = "okteta";
-"OktetaGui" = "okteta";
-"OktetaKastenControllers" = "okteta";
-"OktetaKastenCore" = "okteta";
-"OktetaKastenGui" = "okteta";
-"Okular" = "okular";
-"QJDns" = "kopete";
-"QMobipocket" = "kdegraphics-mobipocket";
-}
diff --git a/pkgs/applications/kde-apps-15.04/setup-hook.sh b/pkgs/applications/kde-apps-15.04/setup-hook.sh
index a8d9b7e0e36..636669d4c62 100644
--- a/pkgs/applications/kde-apps-15.04/setup-hook.sh
+++ b/pkgs/applications/kde-apps-15.04/setup-hook.sh
@@ -1 +1,12 @@
 addToSearchPath XDG_DATA_DIRS @out@/share
+
+addQt4Plugins() {
+  if [[ -d "$1/lib/qt4/plugins" ]]; then
+      propagatedUserEnvPkgs+=" $1"
+  fi
+
+  if [[ -d "$1/lib/kde4/plugins" ]]; then
+      propagatedUserEnvPkgs+=" $1"
+  fi
+}
+envHooks+=(addQt4Plugins)
diff --git a/pkgs/applications/kde-apps-15.08/ark.nix b/pkgs/applications/kde-apps-15.08/ark.nix
new file mode 100644
index 00000000000..b0bf81e0b5b
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/ark.nix
@@ -0,0 +1,43 @@
+{ kdeApp
+, lib
+, extra-cmake-modules
+, kdoctools
+, karchive
+, kconfig
+, kcrash
+, kdbusaddons
+, ki18n
+, kiconthemes
+, khtml
+, kio
+, kservice
+, kpty
+, kwidgetsaddons
+, libarchive
+}:
+
+kdeApp {
+  name = "ark";
+  nativeBuildInputs = [
+    extra-cmake-modules
+    kdoctools
+  ];
+  buildInputs = [
+    karchive
+    kconfig
+    kcrash
+    kdbusaddons
+    ki18n
+    kiconthemes
+    khtml
+    kio
+    kservice
+    kpty
+    kwidgetsaddons
+    libarchive
+  ];
+  meta = {
+    license = with lib.licenses; [ gpl2 lgpl3 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/baloo-widgets.nix b/pkgs/applications/kde-apps-15.08/baloo-widgets.nix
new file mode 100644
index 00000000000..d38eea96c59
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/baloo-widgets.nix
@@ -0,0 +1,33 @@
+{ kdeApp
+, lib
+, extra-cmake-modules
+, kdoctools
+, kconfig
+, kio
+, ki18n
+, kservice
+, kfilemetadata
+, baloo
+, kdelibs4support
+}:
+
+kdeApp {
+  name = "baloo-widgets";
+  nativeBuildInputs = [
+    extra-cmake-modules
+    kdoctools
+  ];
+  buildInputs = [
+    kconfig
+    kio
+    ki18n
+    kservice
+    kfilemetadata
+    baloo
+    kdelibs4support
+  ];
+  meta = {
+    license = [ lib.licenses.lgpl21 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/default.nix b/pkgs/applications/kde-apps-15.08/default.nix
new file mode 100644
index 00000000000..45484964ff9
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/default.nix
@@ -0,0 +1,68 @@
+# Maintainer's Notes:
+#
+# Minor updates:
+#  1. Edit ./manifest.sh to point to the updated URL. Upstream sometimes
+#     releases updates that include only the changed packages; in this case,
+#     multiple URLs can be provided and the results will be merged.
+#  2. Run ./manifest.sh and ./dependencies.sh.
+#  3. Build and enjoy.
+#
+# Major updates:
+#  We prefer not to immediately overwrite older versions with major updates, so
+#  make a copy of this directory first. After copying, be sure to delete ./tmp
+#  if it exists. Then follow the minor update instructions.
+
+{ pkgs, debug ? false }:
+
+let
+
+  inherit (pkgs) lib stdenv;
+
+  srcs = import ./srcs.nix { inherit (pkgs) fetchurl; inherit mirror; };
+  mirror = "mirror://kde";
+
+  kdeApp = args:
+    let
+      inherit (args) name;
+      sname = args.sname or name;
+      inherit (srcs."${sname}") src version;
+    in stdenv.mkDerivation (args // {
+      name = "${name}-${version}";
+      inherit src;
+
+      cmakeFlags =
+        (args.cmakeFlags or [])
+        ++ [ "-DBUILD_TESTING=OFF" ]
+        ++ lib.optional debug "-DCMAKE_BUILD_TYPE=Debug";
+
+      meta = {
+        platforms = lib.platforms.linux;
+        homepage = "http://www.kde.org";
+      } // (args.meta or {});
+    });
+
+  packages = self: with self; {
+    kdelibs = callPackage ./kdelibs { inherit (pkgs) attica phonon; };
+
+    ark = callPackage ./ark.nix {};
+    baloo-widgets = callPackage ./baloo-widgets.nix {};
+    dolphin = callPackage ./dolphin.nix {};
+    dolphin-plugins = callPackage ./dolphin-plugins.nix {};
+    ffmpegthumbs = callPackage ./ffmpegthumbs.nix {};
+    gpgmepp = callPackage ./gpgmepp.nix {};
+    gwenview = callPackage ./gwenview.nix {};
+    kate = callPackage ./kate.nix {};
+    kdegraphics-thumbnailers = callPackage ./kdegraphics-thumbnailers.nix {};
+    kgpg = callPackage ./kgpg.nix { inherit (pkgs.kde4) kdepimlibs; };
+    konsole = callPackage ./konsole.nix {};
+    ksnapshot = callPackage ./ksnapshot.nix {};
+    libkdcraw = callPackage ./libkdcraw.nix {};
+    libkexiv2 = callPackage ./libkexiv2.nix {};
+    libkipi = callPackage ./libkipi.nix {};
+    okular = callPackage ./okular.nix {};
+    print-manager = callPackage ./print-manager.nix {};
+  };
+
+  newScope = scope: pkgs.kf513.newScope ({ inherit kdeApp; } // scope);
+
+in lib.makeScope newScope packages
diff --git a/pkgs/applications/kde-apps-15.08/dolphin-plugins.nix b/pkgs/applications/kde-apps-15.08/dolphin-plugins.nix
new file mode 100644
index 00000000000..4eeec1c17e5
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/dolphin-plugins.nix
@@ -0,0 +1,29 @@
+{ kdeApp
+, lib
+, extra-cmake-modules
+, kdoctools
+, kxmlgui
+, ki18n
+, kio
+, kdelibs4support
+, dolphin
+}:
+
+kdeApp {
+  name = "dolphin-plugins";
+  nativeBuildInputs = [
+    extra-cmake-modules
+    kdoctools
+  ];
+  buildInputs = [
+    kxmlgui
+    ki18n
+    kio
+    kdelibs4support
+    dolphin
+  ];
+  meta = {
+    license = [ lib.licenses.gpl2 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/dolphin.nix b/pkgs/applications/kde-apps-15.08/dolphin.nix
new file mode 100644
index 00000000000..1704e9ae272
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/dolphin.nix
@@ -0,0 +1,63 @@
+{ kdeApp
+, lib
+, extra-cmake-modules
+, kdoctools
+, kinit
+, kcmutils
+, kcoreaddons
+, knewstuff
+, ki18n
+, kdbusaddons
+, kbookmarks
+, kconfig
+, kio
+, kparts
+, solid
+, kiconthemes
+, kcompletion
+, ktexteditor
+, kwindowsystem
+, knotifications
+, kactivities
+, phonon
+, baloo
+, baloo-widgets
+, kfilemetadata
+, kdelibs4support
+}:
+
+kdeApp {
+  name = "dolphin";
+  nativeBuildInputs = [
+    extra-cmake-modules
+    kdoctools
+  ];
+  buildInputs = [
+    kinit
+    kcmutils
+    kcoreaddons
+    knewstuff
+    ki18n
+    kdbusaddons
+    kbookmarks
+    kconfig
+    kio
+    kparts
+    solid
+    kiconthemes
+    kcompletion
+    ktexteditor
+    kwindowsystem
+    knotifications
+    kactivities
+    phonon
+    baloo
+    baloo-widgets
+    kfilemetadata
+    kdelibs4support
+  ];
+  meta = {
+    license = with lib.licenses; [ gpl2 fdl12 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/fetchsrcs.sh b/pkgs/applications/kde-apps-15.08/fetchsrcs.sh
new file mode 100755
index 00000000000..e696bb11d93
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/fetchsrcs.sh
@@ -0,0 +1,47 @@
+#! /usr/bin/env nix-shell
+#! nix-shell -i bash -p coreutils findutils gnused nix wget
+
+set -x
+
+# The trailing slash at the end is necessary!
+RELEASE_URL="http://download.kde.org/stable/applications/15.08.1/"
+EXTRA_WGET_ARGS='-A *.tar.xz'
+
+mkdir tmp; cd tmp
+
+wget -nH -r -c --no-parent $RELEASE_URL $EXTRA_WGET_ARGS
+
+cat >../srcs.nix <<EOF
+# DO NOT EDIT! This file is generated automatically by manifest.sh
+{ fetchurl, mirror }:
+
+{
+EOF
+
+workdir=$(pwd)
+
+find . | while read src; do
+    if [[ -f "${src}" ]]; then
+        url="${src:2}"
+        # Sanitize file name
+        filename=$(basename "$src" | tr '@' '_')
+        nameversion="${filename%.tar.*}"
+        name=$(echo "$nameversion" | sed -e 's,-[[:digit:]].*,,' | sed -e 's,-opensource-src$,,')
+        version=$(echo "$nameversion" | sed -e 's,^\([[:alpha:]][[:alnum:]]*-\)\+,,')
+        sha256=$(nix-hash --type sha256 --base32 --flat "$src")
+        cat >>../srcs.nix <<EOF
+  $name = {
+    version = "$version";
+    src = fetchurl {
+      url = "\${mirror}/$url";
+      sha256 = "$sha256";
+      name = "$filename";
+    };
+  };
+EOF
+    fi
+done
+
+echo "}" >>../srcs.nix
+
+cd ..
diff --git a/pkgs/applications/kde-apps-15.08/ffmpegthumbs.nix b/pkgs/applications/kde-apps-15.08/ffmpegthumbs.nix
new file mode 100644
index 00000000000..64f7961e7c7
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/ffmpegthumbs.nix
@@ -0,0 +1,27 @@
+{ kdeApp
+, lib
+, automoc4
+, cmake
+, perl
+, pkgconfig
+, kdelibs
+, ffmpeg
+}:
+
+kdeApp {
+  name = "ffmpegthumbs";
+  nativeBuildInputs = [
+    automoc4
+    cmake
+    perl
+    pkgconfig
+  ];
+  buildInputs = [
+    kdelibs
+    ffmpeg
+  ];
+  meta = {
+    license = with lib.licenses; [ gpl2 bsd3 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/gpgmepp.nix b/pkgs/applications/kde-apps-15.08/gpgmepp.nix
new file mode 100644
index 00000000000..ac14573dcaa
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/gpgmepp.nix
@@ -0,0 +1,21 @@
+{ kdeApp
+, lib
+, extra-cmake-modules
+, boost
+, gpgme
+}:
+
+kdeApp {
+  name = "gpgmepp";
+  nativeBuildInputs = [
+    extra-cmake-modules
+  ];
+  buildInputs = [
+    boost
+    gpgme
+  ];
+  meta = {
+    license = with lib.licenses; [ lgpl21 bsd3 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/gwenview.nix b/pkgs/applications/kde-apps-15.08/gwenview.nix
new file mode 100644
index 00000000000..27d20369128
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/gwenview.nix
@@ -0,0 +1,37 @@
+{ kdeApp
+, lib
+, extra-cmake-modules
+, kdoctools
+, baloo
+, exiv2
+, kactivities
+, kdelibs4support
+, kio
+, lcms2
+, phonon
+, qtsvg
+, qtx11extras
+}:
+
+kdeApp {
+  name = "gwenview";
+  nativeBuildInputs = [
+    extra-cmake-modules
+    kdoctools
+  ];
+  buildInputs = [
+    baloo
+    exiv2
+    kactivities
+    kdelibs4support
+    kio
+    lcms2
+    phonon
+    qtsvg
+    qtx11extras
+  ];
+  meta = {
+    license = with lib.licenses; [ gpl2 fdl12 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/kate.nix b/pkgs/applications/kde-apps-15.08/kate.nix
new file mode 100644
index 00000000000..b24ef0b863f
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/kate.nix
@@ -0,0 +1,63 @@
+{ kdeApp
+, lib
+, extra-cmake-modules
+, kdoctools
+, qtscript
+, kactivities
+, kconfig
+, kcrash
+, kguiaddons
+, kiconthemes
+, ki18n
+, kinit
+, kjobwidgets
+, kio
+, kparts
+, ktexteditor
+, kwindowsystem
+, kxmlgui
+, kdbusaddons
+, kwallet
+, plasma-framework
+, kitemmodels
+, knotifications
+, threadweaver
+, knewstuff
+, libgit2
+}:
+
+kdeApp {
+  name = "kate";
+  nativeBuildInputs = [
+    extra-cmake-modules
+    kdoctools
+  ];
+  buildInputs = [
+    qtscript
+    kactivities
+    kconfig
+    kcrash
+    kguiaddons
+    kiconthemes
+    ki18n
+    kinit
+    kjobwidgets
+    kio
+    kparts
+    ktexteditor
+    kwindowsystem
+    kxmlgui
+    kdbusaddons
+    kwallet
+    plasma-framework
+    kitemmodels
+    knotifications
+    threadweaver
+    knewstuff
+    libgit2
+  ];
+  meta = {
+    license = with lib.licenses; [ gpl3 lgpl3 lgpl2 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/kdegraphics-thumbnailers.nix b/pkgs/applications/kde-apps-15.08/kdegraphics-thumbnailers.nix
new file mode 100644
index 00000000000..027b8248c5c
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/kdegraphics-thumbnailers.nix
@@ -0,0 +1,29 @@
+{ kdeApp
+, lib
+, automoc4
+, cmake
+, perl
+, pkgconfig
+, kdelibs
+, libkexiv2
+, libkdcraw
+}:
+
+kdeApp {
+  name = "kdegraphics-thumbnailers";
+  nativeBuildInputs = [
+    automoc4
+    cmake
+    perl
+    pkgconfig
+  ];
+  buildInputs = [
+    kdelibs
+    libkexiv2
+    libkdcraw
+  ];
+  meta = {
+    license = [ lib.licenses.lgpl21 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/kdelibs/0001-old-kde4-cmake-policies.patch b/pkgs/applications/kde-apps-15.08/kdelibs/0001-old-kde4-cmake-policies.patch
new file mode 100644
index 00000000000..b7d7300e9a8
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/kdelibs/0001-old-kde4-cmake-policies.patch
@@ -0,0 +1,56 @@
+From b43c49109694940f0a26240753e879eb629dd02d Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel <ttuegel@gmail.com>
+Date: Mon, 7 Sep 2015 13:54:57 -0500
+Subject: [PATCH 1/2] old kde4 cmake policies
+
+---
+ cmake/modules/FindKDE4Internal.cmake | 33 +++++++++++++++++++++++++++++++++
+ 1 file changed, 33 insertions(+)
+
+diff --git a/cmake/modules/FindKDE4Internal.cmake b/cmake/modules/FindKDE4Internal.cmake
+index 7d54b9b..c435571 100644
+--- a/cmake/modules/FindKDE4Internal.cmake
++++ b/cmake/modules/FindKDE4Internal.cmake
+@@ -345,6 +345,39 @@
+ # Redistribution and use is allowed according to the terms of the BSD license.
+ # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
+ 
++# this is required now by cmake 2.6 and so must not be skipped by if(KDE4_FOUND) below
++cmake_minimum_required(VERSION 2.8.9 FATAL_ERROR)
++# set the cmake policies to the 2.4.x compatibility settings (may change for KDE 4.3)
++cmake_policy(VERSION 2.4.5)
++
++# CMake 2.6, set compatibility behaviour to cmake 2.4
++# this must be executed always, because the CMAKE_MINIMUM_REQUIRED() command above
++# resets the policy settings, so we get a lot of warnings
++
++# CMP0000: don't require cmake_minimum_version() directly in the top level CMakeLists.txt, FindKDE4Internal.cmake is good enough
++cmake_policy(SET CMP0000 OLD)
++# CMP0002: in KDE4 we have multiple targets with the same name for the unit tests
++cmake_policy(SET CMP0002 OLD)
++# CMP0003: add the link paths to the link command as with cmake 2.4
++cmake_policy(SET CMP0003 OLD)
++# CMP0005: keep escaping behaviour for definitions added via add_definitions()
++cmake_policy(SET CMP0005 OLD)
++# since cmake 2.6.3: NEW behaviour is that setting policies doesn't "escape" the file
++# where this is done, macros and functions are executed with the policies as they
++# were when the were defined. Keep the OLD behaviour so we can set the policies here
++# for all KDE software without the big warning
++cmake_policy(SET CMP0011 OLD)
++
++# since cmake 2.8.4: when include()ing from inside cmake's module dir, prefer the files
++# in this directory over those from CMAKE_MODULE_PATH
++cmake_policy(SET CMP0017 NEW)
++
++# since cmake 3.0: use of the LOCATION target property is disallowed while it is used in KDE4Macros.cmake
++if (POLICY CMP0026)
++  cmake_policy(SET CMP0026 OLD)
++endif (POLICY CMP0026)
++
++
+ # Only do something if it hasn't been found yet
+ if(NOT KDE4_FOUND)
+ 
+-- 
+2.5.0
+
diff --git a/pkgs/applications/kde-apps-15.08/kdelibs/0002-polkit-install-path.patch b/pkgs/applications/kde-apps-15.08/kdelibs/0002-polkit-install-path.patch
new file mode 100644
index 00000000000..ff0306ea148
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/kdelibs/0002-polkit-install-path.patch
@@ -0,0 +1,25 @@
+From fab35bac146a817f3af80f45531355fd70cd226b Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel <ttuegel@gmail.com>
+Date: Mon, 7 Sep 2015 13:56:03 -0500
+Subject: [PATCH 2/2] polkit install path
+
+---
+ kdecore/auth/ConfigureChecks.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/kdecore/auth/ConfigureChecks.cmake b/kdecore/auth/ConfigureChecks.cmake
+index 7cf9cb5..c8334ae 100644
+--- a/kdecore/auth/ConfigureChecks.cmake
++++ b/kdecore/auth/ConfigureChecks.cmake
+@@ -150,7 +150,7 @@ elseif(KDE4_AUTH_BACKEND_NAME STREQUAL "POLKITQT-1")
+         ${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)
+-- 
+2.5.0
+
diff --git a/pkgs/applications/kde-apps-15.08/kdelibs/default.nix b/pkgs/applications/kde-apps-15.08/kdelibs/default.nix
new file mode 100644
index 00000000000..06788006f61
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/kdelibs/default.nix
@@ -0,0 +1,43 @@
+{ kdeApp, attica, attr, automoc4, avahi, bison, cmake
+, docbook_xml_dtd_42, docbook_xsl, flex, giflib, herqq, ilmbase
+, libdbusmenu_qt, libjpeg, libxml2, libxslt, perl, phonon, pkgconfig
+, polkit_qt4, qca2, qt4, shared_desktop_ontologies, shared_mime_info
+, soprano, strigi, udev, xz
+, lib
+}:
+
+kdeApp {
+  name = "kdelibs";
+
+  buildInputs = [
+    attica attr avahi giflib herqq libdbusmenu_qt libjpeg libxml2
+    polkit_qt4 qca2 shared_desktop_ontologies udev xz
+  ];
+  propagatedBuildInputs = [ qt4 soprano phonon strigi ];
+  nativeBuildInputs = [
+    automoc4 bison cmake flex libxslt perl pkgconfig shared_mime_info
+  ];
+
+  patches = [
+    ./0001-old-kde4-cmake-policies.patch
+    ./0002-polkit-install-path.patch
+  ];
+
+  # cmake does not detect path to `ilmbase`
+  NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR";
+
+  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"
+    "-DKDE_DEFAULT_HOME=.kde"
+  ];
+
+  setupHook = ./setup-hook.sh;
+
+  meta = {
+    licenses = with lib.licenses; [ gpl2 fdl12 lgpl21 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/kdelibs/polkit-install.patch b/pkgs/applications/kde-apps-15.08/kdelibs/polkit-install.patch
new file mode 100644
index 00000000000..d2ecac663ec
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/kdelibs/polkit-install.patch
@@ -0,0 +1,12 @@
+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/applications/kde-apps-15.08/kdelibs/setup-hook.sh b/pkgs/applications/kde-apps-15.08/kdelibs/setup-hook.sh
new file mode 100644
index 00000000000..e0a75dc8acd
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/kdelibs/setup-hook.sh
@@ -0,0 +1,10 @@
+addQt4Plugins() {
+  if [[ -d "$1/lib/qt4/plugins" ]]; then
+      propagatedUserEnvPkgs+=" $1"
+  fi
+
+  if [[ -d "$1/lib/kde4/plugins" ]]; then
+      propagatedUserEnvPkgs+=" $1"
+  fi
+}
+envHooks+=(addQt4Plugins)
diff --git a/pkgs/applications/kde-apps-15.08/kgpg.nix b/pkgs/applications/kde-apps-15.08/kgpg.nix
new file mode 100644
index 00000000000..cf3fe20d5d7
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/kgpg.nix
@@ -0,0 +1,31 @@
+{ kdeApp
+, lib
+, automoc4
+, cmake
+, perl
+, pkgconfig
+, boost
+, gpgme
+, kdelibs
+, kdepimlibs
+}:
+
+kdeApp {
+  name = "kgpg";
+  nativeBuildInputs = [
+    automoc4
+    cmake
+    perl
+    pkgconfig
+  ];
+  buildInputs = [
+    boost
+    gpgme
+    kdelibs
+    kdepimlibs
+  ];
+  meta = {
+    license = [ lib.licenses.gpl2 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/konsole.nix b/pkgs/applications/kde-apps-15.08/konsole.nix
new file mode 100644
index 00000000000..05cac334348
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/konsole.nix
@@ -0,0 +1,61 @@
+{ kdeApp
+, lib
+, extra-cmake-modules
+, kdoctools
+, qtscript
+, kbookmarks
+, kcompletion
+, kconfig
+, kconfigwidgets
+, kcoreaddons
+, kguiaddons
+, ki18n
+, kiconthemes
+, kinit
+, kdelibs4support
+, kio
+, knotifications
+, knotifyconfig
+, kparts
+, kpty
+, kservice
+, ktextwidgets
+, kwidgetsaddons
+, kwindowsystem
+, kxmlgui
+}:
+
+kdeApp {
+  name = "konsole";
+  nativeBuildInputs = [
+    extra-cmake-modules
+    kdoctools
+  ];
+  buildInputs = [
+    qtscript
+    kbookmarks
+    kcompletion
+    kconfig
+    kconfigwidgets
+    kcoreaddons
+    kguiaddons
+    ki18n
+    kiconthemes
+    kinit
+    kdelibs4support
+    kio
+    knotifications
+    knotifyconfig
+    kparts
+    kpty
+    kservice
+    ktextwidgets
+    kwidgetsaddons
+    kwindowsystem
+    kxmlgui
+  ];
+  meta = {
+    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/ksnapshot.nix b/pkgs/applications/kde-apps-15.08/ksnapshot.nix
new file mode 100644
index 00000000000..b757f4f0403
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/ksnapshot.nix
@@ -0,0 +1,29 @@
+{ kdeApp
+, lib
+, automoc4
+, cmake
+, perl
+, pkgconfig
+, kdelibs
+, libkipi
+, libXfixes
+}:
+
+kdeApp {
+  name = "ksnapshot";
+  nativeBuildInputs = [
+    automoc4
+    cmake
+    perl
+    pkgconfig
+  ];
+  buildInputs = [
+    kdelibs
+    libkipi
+    libXfixes
+  ];
+  meta = {
+    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/libkdcraw.nix b/pkgs/applications/kde-apps-15.08/libkdcraw.nix
new file mode 100644
index 00000000000..8b19e9f90c6
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/libkdcraw.nix
@@ -0,0 +1,27 @@
+{ kdeApp
+, lib
+, automoc4
+, cmake
+, perl
+, pkgconfig
+, libraw
+, kdelibs
+}:
+
+kdeApp {
+  name = "libkdcraw";
+  nativeBuildInputs = [
+    automoc4
+    cmake
+    perl
+    pkgconfig
+  ];
+  buildInputs = [
+    kdelibs
+    libraw
+  ];
+  meta = {
+    license = with lib.licenses; [ gpl2 lgpl21 bsd3 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/libkexiv2.nix b/pkgs/applications/kde-apps-15.08/libkexiv2.nix
new file mode 100644
index 00000000000..8ed84236955
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/libkexiv2.nix
@@ -0,0 +1,27 @@
+{ kdeApp
+, lib
+, automoc4
+, cmake
+, perl
+, pkgconfig
+, exiv2
+, kdelibs
+}:
+
+kdeApp {
+  name = "libkexiv2";
+  nativeBuildInputs = [
+    automoc4
+    cmake
+    perl
+    pkgconfig
+  ];
+  buildInputs = [
+    exiv2
+    kdelibs
+  ];
+  meta = {
+    license = with lib.licenses; [ gpl2 lgpl21 bsd3 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/libkipi.nix b/pkgs/applications/kde-apps-15.08/libkipi.nix
new file mode 100644
index 00000000000..a9053b467f9
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/libkipi.nix
@@ -0,0 +1,25 @@
+{ kdeApp
+, lib
+, automoc4
+, cmake
+, perl
+, pkgconfig
+, kdelibs
+}:
+
+kdeApp {
+  name = "libkipi";
+  nativeBuildInputs = [
+    automoc4
+    cmake
+    perl
+    pkgconfig
+  ];
+  buildInputs = [
+    kdelibs
+  ];
+  meta = {
+    license = with lib.licenses; [ gpl2 lgpl21 bsd3 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/okular.nix b/pkgs/applications/kde-apps-15.08/okular.nix
new file mode 100644
index 00000000000..0691325d7a5
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/okular.nix
@@ -0,0 +1,41 @@
+{ kdeApp
+, lib
+, automoc4
+, cmake
+, perl
+, pkgconfig
+, kdelibs
+, qimageblitz
+, poppler_qt4
+, libspectre
+, libkexiv2
+, djvulibre
+, libtiff
+, freetype
+, ebook_tools
+}:
+
+kdeApp {
+  name = "okular";
+  nativeBuildInputs = [
+    automoc4
+    cmake
+    perl
+    pkgconfig
+  ];
+  buildInputs = [
+    kdelibs
+    qimageblitz
+    poppler_qt4
+    libspectre
+    libkexiv2
+    djvulibre
+    libtiff
+    freetype
+    ebook_tools
+  ];
+  meta = {
+    license = with lib.licenses; [ gpl2 lgpl21 fdl12 bsd3 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/print-manager.nix b/pkgs/applications/kde-apps-15.08/print-manager.nix
new file mode 100644
index 00000000000..909aea8e716
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/print-manager.nix
@@ -0,0 +1,45 @@
+{ kdeApp
+, lib
+, extra-cmake-modules
+, qtdeclarative
+, cups
+, kconfig
+, kconfigwidgets
+, kdbusaddons
+, kiconthemes
+, ki18n
+, kcmutils
+, kio
+, knotifications
+, plasma-framework
+, kwidgetsaddons
+, kwindowsystem
+, kitemviews
+}:
+
+kdeApp {
+  name = "print-manager";
+  nativeBuildInputs = [
+    extra-cmake-modules
+  ];
+  buildInputs = [
+    qtdeclarative
+    cups
+    kconfig
+    kconfigwidgets
+    kdbusaddons
+    kiconthemes
+    ki18n
+    kcmutils
+    kio
+    knotifications
+    plasma-framework
+    kwidgetsaddons
+    kwindowsystem
+    kitemviews
+  ];
+  meta = {
+    license = [ lib.licenses.gpl2 ];
+    maintainers = [ lib.maintainers.ttuegel ];
+  };
+}
diff --git a/pkgs/applications/kde-apps-15.08/srcs.nix b/pkgs/applications/kde-apps-15.08/srcs.nix
new file mode 100644
index 00000000000..97e1e774303
--- /dev/null
+++ b/pkgs/applications/kde-apps-15.08/srcs.nix
@@ -0,0 +1,1981 @@
+# DO NOT EDIT! This file is generated automatically by manifest.sh
+{ fetchurl, mirror }:
+
+{
+  libkcompactdisc = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libkcompactdisc-15.08.1.tar.xz";
+      sha256 = "19b6zjzdmjagz9d9x1bb46cc59r92qm9g0pbvim9br603crwsasd";
+      name = "libkcompactdisc-15.08.1.tar.xz";
+    };
+  };
+  kollision = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kollision-15.08.1.tar.xz";
+      sha256 = "03bm9ydrfq0kicf7j2bmrvjgcffciq7ys0fz0xpcllkwglidsnar";
+      name = "kollision-15.08.1.tar.xz";
+    };
+  };
+  libkmahjongg = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libkmahjongg-15.08.1.tar.xz";
+      sha256 = "1jpcj2kj9wn6988gzz4csrwy4c2pwbnyi184iq6c39fmbvrv4f2r";
+      name = "libkmahjongg-15.08.1.tar.xz";
+    };
+  };
+  superkaramba = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/superkaramba-15.08.1.tar.xz";
+      sha256 = "0pk7kr2bcj2yasf9af3bdqg207pidkg5m2yafmvp83dz2anyxad9";
+      name = "superkaramba-15.08.1.tar.xz";
+    };
+  };
+  kcharselect = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kcharselect-15.08.1.tar.xz";
+      sha256 = "0g785ab5iclv1db2dwwlzf14a2l6n9yznw6pb8hx589za7yc46v2";
+      name = "kcharselect-15.08.1.tar.xz";
+    };
+  };
+  umbrello = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/umbrello-15.08.1.tar.xz";
+      sha256 = "0pq2d4iz1dmxb7cdmcja65703qlsakp590v5yjvhjsnlasnk8anj";
+      name = "umbrello-15.08.1.tar.xz";
+    };
+  };
+  kde-runtime = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-runtime-15.08.1.tar.xz";
+      sha256 = "04vx2v9m5dz5jihvmqvcd6pvk312hdhgj7pkzv8q0lg3z81fqgyi";
+      name = "kde-runtime-15.08.1.tar.xz";
+    };
+  };
+  kcontacts = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kcontacts-15.08.1.tar.xz";
+      sha256 = "1a9ww08m3k7sdqnkb2dpi2c0fpfihjschyzwx82kcp1z613agx1c";
+      name = "kcontacts-15.08.1.tar.xz";
+    };
+  };
+  kontactinterface = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kontactinterface-15.08.1.tar.xz";
+      sha256 = "1axsixl5yvawrczpgfbrcyax9d9mmc8yjvkxi0hi26mq8zzxkxnm";
+      name = "kontactinterface-15.08.1.tar.xz";
+    };
+  };
+  ktp-desktop-applets = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktp-desktop-applets-15.08.1.tar.xz";
+      sha256 = "16nan7vb2gzpll2fnc4li23sjjxhgy7ijzfp6zcp5gc1bxn86jj4";
+      name = "ktp-desktop-applets-15.08.1.tar.xz";
+    };
+  };
+  kldap = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kldap-15.08.1.tar.xz";
+      sha256 = "13mn0zkyd8qkp2rlcd75g821k3xpvwrj6xwjwvllfn25zsng32yw";
+      name = "kldap-15.08.1.tar.xz";
+    };
+  };
+  kaccounts-providers = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kaccounts-providers-15.08.1.tar.xz";
+      sha256 = "15sl3rwwpshqvzjrkfiray3gg3ja84awsyk3y5n9jbf97rw47v3k";
+      name = "kaccounts-providers-15.08.1.tar.xz";
+    };
+  };
+  signon-kwallet-extension = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/signon-kwallet-extension-15.08.1.tar.xz";
+      sha256 = "1pb73zqs34kygvaphgrvvl08hj882znsws1nzwbyyskyn6gjsw2n";
+      name = "signon-kwallet-extension-15.08.1.tar.xz";
+    };
+  };
+  klines = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/klines-15.08.1.tar.xz";
+      sha256 = "17vnbk0qbiynyjycj5nda9w38ija5cvhlfhji1f580hq156qzsgl";
+      name = "klines-15.08.1.tar.xz";
+    };
+  };
+  kompare = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kompare-15.08.1.tar.xz";
+      sha256 = "0n474f1nvbkxj1ryyv2x0yqm9qg3crdzmr30l2fbagi2fxmjxkli";
+      name = "kompare-15.08.1.tar.xz";
+    };
+  };
+  analitza = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/analitza-15.08.1.tar.xz";
+      sha256 = "0zxkpsccnp0m8r7z1p243h5vh4fz4dzq2dz932vfac8hs45lcaki";
+      name = "analitza-15.08.1.tar.xz";
+    };
+  };
+  kalzium = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kalzium-15.08.1.tar.xz";
+      sha256 = "0jhfv5cw5vhgy13ld5km664r7ydqv52nwd4k450x2d62rvq63nfp";
+      name = "kalzium-15.08.1.tar.xz";
+    };
+  };
+  kcachegrind = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kcachegrind-15.08.1.tar.xz";
+      sha256 = "1nmyw0nld1qasd2zz8dg854br8nqn3kby2xd2afr9a8frhzzmiv2";
+      name = "kcachegrind-15.08.1.tar.xz";
+    };
+  };
+  kuser = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kuser-15.08.1.tar.xz";
+      sha256 = "0qgvjfh1r4ri227zbcb2v9dg7njg1wq3pi189y0l3jzgfa4h1aph";
+      name = "kuser-15.08.1.tar.xz";
+    };
+  };
+  libkgeomap = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libkgeomap-15.08.1.tar.xz";
+      sha256 = "18y3pas4bx16ykf50jlwry7fbrx34cz1s0qflirxyrx6n8kh9lgm";
+      name = "libkgeomap-15.08.1.tar.xz";
+    };
+  };
+  artikulate = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/artikulate-15.08.1.tar.xz";
+      sha256 = "0pz66hrnd89519ivk1cw8gzddjv6043x59nbkhmnlk8f5hvvkk2k";
+      name = "artikulate-15.08.1.tar.xz";
+    };
+  };
+  kscd = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kscd-15.08.1.tar.xz";
+      sha256 = "0alf1088p32spwlpjjj91wpgk48ahzqphvag8adgvh9cp8ij7m7j";
+      name = "kscd-15.08.1.tar.xz";
+    };
+  };
+  akonadi-calendar = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/akonadi-calendar-15.08.1.tar.xz";
+      sha256 = "00iyv123s18157v46y3xdg56lyfr0w6f0zz8qsp6js7vn0fa468j";
+      name = "akonadi-calendar-15.08.1.tar.xz";
+    };
+  };
+  kdesdk-strigi-analyzers = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdesdk-strigi-analyzers-15.08.1.tar.xz";
+      sha256 = "1g2c511ba42mxg955yyh8w45ga5313mvvpkdl7yvbz7ikb2z6ji5";
+      name = "kdesdk-strigi-analyzers-15.08.1.tar.xz";
+    };
+  };
+  killbots = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/killbots-15.08.1.tar.xz";
+      sha256 = "1p7lxi3rh8ghashy04252wc086kxz1crdxgnisfw4dv4kr17qmb2";
+      name = "killbots-15.08.1.tar.xz";
+    };
+  };
+  ksirk = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ksirk-15.08.1.tar.xz";
+      sha256 = "00zlmjyxf31hl910kickgxcc3sh5g2j9grg2mlps8qxdv9m4g1d5";
+      name = "ksirk-15.08.1.tar.xz";
+    };
+  };
+  ark = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ark-15.08.1.tar.xz";
+      sha256 = "0lmqi9qdf46v9yap6f7s5favx4y66w3sixhplby4q1cm085yg5hl";
+      name = "ark-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-el = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-el-15.08.1.tar.xz";
+      sha256 = "0qznnbk6mgbdjz4mm7rpmr04b6i9fya1yjhnmv8hpwlicl8n9sd6";
+      name = "kde-l10n-el-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-ug = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-ug-15.08.1.tar.xz";
+      sha256 = "1brnbjnpwqhh52g058s2hqh77a6p2c81sygdfsjgngc0griahl4q";
+      name = "kde-l10n-ug-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-sl = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-sl-15.08.1.tar.xz";
+      sha256 = "12gg889lhq6l1h5bv6hlcwsq2zkqdfxgicxhkjnm3i7ly5laij4f";
+      name = "kde-l10n-sl-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-ar = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-ar-15.08.1.tar.xz";
+      sha256 = "101c1316wwxl3pf38fb9ch2h5nyra8h2cf79w9l1krdcp6s4776w";
+      name = "kde-l10n-ar-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-wa = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-wa-15.08.1.tar.xz";
+      sha256 = "0z9s118fc0wj2dg2ha7mv0rldvsa3rr8mhwjdgawkmfr9ns82w64";
+      name = "kde-l10n-wa-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-ro = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-ro-15.08.1.tar.xz";
+      sha256 = "0j3qccfwarb9azsvm2pf0ikc12dsbywzfi7hv2xd244qcnjpp289";
+      name = "kde-l10n-ro-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-it = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-it-15.08.1.tar.xz";
+      sha256 = "04blm19llvm2n885p9in4iicaj81ap9vvxsqmfnz7rwb93bsy4wl";
+      name = "kde-l10n-it-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-he = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-he-15.08.1.tar.xz";
+      sha256 = "1fgxnm6l45kcjrgjg19z2fg6fnsbpdy0agllj6rw0ffbcp68l863";
+      name = "kde-l10n-he-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-et = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-et-15.08.1.tar.xz";
+      sha256 = "027vpybfrm6zdmglwlhmyrh6157gmv8i5x1hx5d8f57m8jnh3nfq";
+      name = "kde-l10n-et-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-pa = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-pa-15.08.1.tar.xz";
+      sha256 = "05n9kaalsdx8nvn0p29wf33barhkhb64xxr3xg8cc0d3x21kmhx1";
+      name = "kde-l10n-pa-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-ja = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-ja-15.08.1.tar.xz";
+      sha256 = "0ir82yc2jmy7ijn02y9f2vxnv1cd5a92pjji3fzriqfg6dlgyiw9";
+      name = "kde-l10n-ja-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-bg = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-bg-15.08.1.tar.xz";
+      sha256 = "1r515r3c03328ivwqkm7ijj2264l21liblzllgvjy6zmg7n8ilsp";
+      name = "kde-l10n-bg-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-ko = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-ko-15.08.1.tar.xz";
+      sha256 = "19w7z4j7463lg0yzkf8ndfvf3664hk524qfcrdygf61f03hkp22l";
+      name = "kde-l10n-ko-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-tr = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-tr-15.08.1.tar.xz";
+      sha256 = "1bca3scdg4ma6k6957pq45dmjxgp8hx3bm9jql2rqp0knqf9dwl8";
+      name = "kde-l10n-tr-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-mr = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-mr-15.08.1.tar.xz";
+      sha256 = "0ga55szsi9kbvjdcc2cjl8m15jzcfrpiryak1m78s46p056lfs7n";
+      name = "kde-l10n-mr-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-es = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-es-15.08.1.tar.xz";
+      sha256 = "1bb1vp8k6f323q2rjclxpja9yykfgm2di6wn0qhr787swr6qrxjb";
+      name = "kde-l10n-es-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-hu = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-hu-15.08.1.tar.xz";
+      sha256 = "0jysfqb9pmhcw2kd48n6asmkci56mgk1jcsx8gxn9lcfrqnpc52g";
+      name = "kde-l10n-hu-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-km = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-km-15.08.1.tar.xz";
+      sha256 = "1yjckfma9dj8li9whwfa6bid289z05vllxqigbsjfy12721ahrc6";
+      name = "kde-l10n-km-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-eo = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-eo-15.08.1.tar.xz";
+      sha256 = "07rns0a5bb2sq13hcndvq79zg451lc3rj2cldmdxdyj5axl0c955";
+      name = "kde-l10n-eo-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-pt = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-pt-15.08.1.tar.xz";
+      sha256 = "0z5lginm78i6wrxhcdarv660sszybjih02ra3j4wghflzhwrgrhw";
+      name = "kde-l10n-pt-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-pl = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-pl-15.08.1.tar.xz";
+      sha256 = "0ifjvbvzm5qks35z54i5mdz151347690zg4rn8y033lag81c7ir1";
+      name = "kde-l10n-pl-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-lv = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-lv-15.08.1.tar.xz";
+      sha256 = "105lq8q97dg9y9j5p5zqf78gvk28qn4axr3ppk1j698576l1ihxl";
+      name = "kde-l10n-lv-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-en_GB = {
+    version = "en_GB-15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-en_GB-15.08.1.tar.xz";
+      sha256 = "0rb4pjxds75x84ylc71ci2sj75l5p8vr2hmnrlddmj39j22c3mcj";
+      name = "kde-l10n-en_GB-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-nn = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-nn-15.08.1.tar.xz";
+      sha256 = "01h9xysa8vghaghqpfp7gvps3rymiypb52ffz50srhrhjyh1zq0y";
+      name = "kde-l10n-nn-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-hr = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-hr-15.08.1.tar.xz";
+      sha256 = "0jlnig5rsmdxv3ng352hd8n0vqd020bf00xnjbdihcnvdwq625lv";
+      name = "kde-l10n-hr-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-fi = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-fi-15.08.1.tar.xz";
+      sha256 = "0ajgy01p22h1c2dsarsq7ximwp3blvmxnf9217szikkf5yky2w9m";
+      name = "kde-l10n-fi-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-ia = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-ia-15.08.1.tar.xz";
+      sha256 = "1mgzpzy1s45v6nf2wbqgsam7bdg1x0fkmggnwy8k8f7kx5yxfcw4";
+      name = "kde-l10n-ia-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-ga = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-ga-15.08.1.tar.xz";
+      sha256 = "06l39s9d6y33f4vvcxvry7cxw2m431xgvcz1wcmf6zhlpi5wwlmr";
+      name = "kde-l10n-ga-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-ca = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-ca-15.08.1.tar.xz";
+      sha256 = "0ql4b550wasf31vkvha1kjyv7d0svyxk7wc77v39fbly0agxwbap";
+      name = "kde-l10n-ca-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-de = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-de-15.08.1.tar.xz";
+      sha256 = "11ayw3n392qz1dyblw4gsw4pbdp3wll11z76cawhbmj2jscjd1yb";
+      name = "kde-l10n-de-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-fr = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-fr-15.08.1.tar.xz";
+      sha256 = "1mclsk410ir9y6xvy8j8dswpa3k7hmjng232annq05fzapw7bda6";
+      name = "kde-l10n-fr-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-id = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-id-15.08.1.tar.xz";
+      sha256 = "13lls8w18c8zrfrqfaz2yjn7jcjrv6dsax09l8wda5144xhbsxw3";
+      name = "kde-l10n-id-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-ca_valencia = {
+    version = "ca_valencia-15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-ca@valencia-15.08.1.tar.xz";
+      sha256 = "075j5zbn9fy510bf278j3184niwf8dkdpzihvjsram8xrggl4whl";
+      name = "kde-l10n-ca_valencia-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-nds = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-nds-15.08.1.tar.xz";
+      sha256 = "0ifndqj0d58g6k71qw9n4xhd0a90fqba3xsk2qyd6yhnmygd48xd";
+      name = "kde-l10n-nds-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-nl = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-nl-15.08.1.tar.xz";
+      sha256 = "11jzaf5dbyl52s61031lygn8xf6qjjqaldlyqgljz1scpp13f75b";
+      name = "kde-l10n-nl-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-fa = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-fa-15.08.1.tar.xz";
+      sha256 = "1bai66j03khb6f6y8v72axan6aggdlbwgv3bi91mxwlzhy8ycjxx";
+      name = "kde-l10n-fa-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-da = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-da-15.08.1.tar.xz";
+      sha256 = "10sxs45bvs5qw02pj2qhykymm3ddl6ij3gvwgxj7r1kl84lfkil6";
+      name = "kde-l10n-da-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-uk = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-uk-15.08.1.tar.xz";
+      sha256 = "00f6mjs7nalg8q87ix7h66kqicy7xb9pgkghldbhpal0rqgzscph";
+      name = "kde-l10n-uk-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-eu = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-eu-15.08.1.tar.xz";
+      sha256 = "01jcykc8d7nzlsfjp2xcbf7bkld7skf7mmrig7dllgl0igdkx1qm";
+      name = "kde-l10n-eu-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-sk = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-sk-15.08.1.tar.xz";
+      sha256 = "13fcfrsdn0q7z0p2cxkcl54g597ix17327lyxz0ns4xn9ada198s";
+      name = "kde-l10n-sk-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-kk = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-kk-15.08.1.tar.xz";
+      sha256 = "13zi7yh9hsxmb8v6x2jqlyh4wdb4waj653py27g91rbznsp1fjzp";
+      name = "kde-l10n-kk-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-zh_CN = {
+    version = "zh_CN-15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-zh_CN-15.08.1.tar.xz";
+      sha256 = "0j88zjxihddgi4a53034i5br3jf8v61wp5mcbclci59i4p4cwrh7";
+      name = "kde-l10n-zh_CN-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-lt = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-lt-15.08.1.tar.xz";
+      sha256 = "03g7l9yyw6wajjpkqss16kfyg6piv50xjrzdy8611asdfabhccjs";
+      name = "kde-l10n-lt-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-sv = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-sv-15.08.1.tar.xz";
+      sha256 = "0dvgqf39xiz1fkfxvfn9232j454377d92c72dd0h3yl7mf9nndd7";
+      name = "kde-l10n-sv-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-nb = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-nb-15.08.1.tar.xz";
+      sha256 = "1y51kdmgnirfjsc5ka75rjvbqjbxxchqj2j4430h8jncjgvjvw6d";
+      name = "kde-l10n-nb-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-gl = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-gl-15.08.1.tar.xz";
+      sha256 = "0fapj4gmm4pp5bf3gj6xwnzjxw9094mal7njb0nisshvdfbpgr37";
+      name = "kde-l10n-gl-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-hi = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-hi-15.08.1.tar.xz";
+      sha256 = "0ys05gxcj6vkx4a8xjhwfym6faz6ifh50i5si175rynb6igyydnh";
+      name = "kde-l10n-hi-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-ru = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-ru-15.08.1.tar.xz";
+      sha256 = "1qdgh3y8q7hnkhjfbid35fxy4xjl1hj800kljhif7q4kg4ish86m";
+      name = "kde-l10n-ru-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-sr = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-sr-15.08.1.tar.xz";
+      sha256 = "1ag5fj3iy5kycwgwhxiwcp4xl19j1q1lbk07b6nz69jm12kpsy6i";
+      name = "kde-l10n-sr-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-cs = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-cs-15.08.1.tar.xz";
+      sha256 = "1lmln0q9r7cvkvs0qz2ky01rj8rjbrwl7g3vkz2zyr64gxgnjilz";
+      name = "kde-l10n-cs-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-bs = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-bs-15.08.1.tar.xz";
+      sha256 = "0wyk547g8k3j6lcl1wipw4jwd0wqi8zrnb2h59g55il9rj7782q3";
+      name = "kde-l10n-bs-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-is = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-is-15.08.1.tar.xz";
+      sha256 = "0n3ws9imns4jzvnnrkrm8dk8yzlfjcbxl7ip36m7a09lnnskc4zw";
+      name = "kde-l10n-is-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-zh_TW = {
+    version = "zh_TW-15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-zh_TW-15.08.1.tar.xz";
+      sha256 = "1w4f8wr9c132z4kmqcjknrgp1hh33s08qvyjxysns6ncj6izpaaz";
+      name = "kde-l10n-zh_TW-15.08.1.tar.xz";
+    };
+  };
+  kde-l10n-pt_BR = {
+    version = "pt_BR-15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-l10n/kde-l10n-pt_BR-15.08.1.tar.xz";
+      sha256 = "0dr0h5bxw462mpirzsnvxcy3s14nlk3a2gh5h9r2wis5fii364da";
+      name = "kde-l10n-pt_BR-15.08.1.tar.xz";
+    };
+  };
+  kmix = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kmix-15.08.1.tar.xz";
+      sha256 = "1lpzghasljw07kq9a94lw61l4qlvhif6cd7jypg0vici65lz8k7d";
+      name = "kmix-15.08.1.tar.xz";
+    };
+  };
+  kjumpingcube = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kjumpingcube-15.08.1.tar.xz";
+      sha256 = "1b0mqf9rhbdz4dfd0gbps59zzjqdif30zz642v4yi6mqnc002yv9";
+      name = "kjumpingcube-15.08.1.tar.xz";
+    };
+  };
+  kruler = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kruler-15.08.1.tar.xz";
+      sha256 = "06qlvdyd1cbw8vr2qcqs7q8jylj7kl0y218agp8b60h03nri9psj";
+      name = "kruler-15.08.1.tar.xz";
+    };
+  };
+  poxml = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/poxml-15.08.1.tar.xz";
+      sha256 = "076ksfa9pdjbs8xk38j5z1ysryqcq68fgk5zw157cmxjaxv4ahqm";
+      name = "poxml-15.08.1.tar.xz";
+    };
+  };
+  knavalbattle = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/knavalbattle-15.08.1.tar.xz";
+      sha256 = "1j235kdnb0qx1dkq89gqcwk0qjj16m0iyf502d6p1mz8cskz7fkp";
+      name = "knavalbattle-15.08.1.tar.xz";
+    };
+  };
+  libkexiv2 = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libkexiv2-15.08.1.tar.xz";
+      sha256 = "0cgbh6g5kqi8lzlnidd19yxlyzid71pncpxikmhqfmnwhdgrqq2f";
+      name = "libkexiv2-15.08.1.tar.xz";
+    };
+  };
+  kcalutils = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kcalutils-15.08.1.tar.xz";
+      sha256 = "0l8kzz092wz93j58h52q4icpvhvl2djgagdbx12yl7qlwin7wnd3";
+      name = "kcalutils-15.08.1.tar.xz";
+    };
+  };
+  palapeli = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/palapeli-15.08.1.tar.xz";
+      sha256 = "09sbyw25ngvcg6inhh7ig0x5yyhsi3gw2il1p98sfdabjk2f8736";
+      name = "palapeli-15.08.1.tar.xz";
+    };
+  };
+  ksudoku = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ksudoku-15.08.1.tar.xz";
+      sha256 = "1l6dgackab9k1rnzbwwz3rfpxlqvydp5q632ibpqs449c6pk3kww";
+      name = "ksudoku-15.08.1.tar.xz";
+    };
+  };
+  kdebugsettings = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdebugsettings-15.08.1.tar.xz";
+      sha256 = "1h5wn6ilhkrygjacb592nmdv31791y9r0rx6m3l7xx3nbj9hy12c";
+      name = "kdebugsettings-15.08.1.tar.xz";
+    };
+  };
+  kdegraphics-strigi-analyzer = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdegraphics-strigi-analyzer-15.08.1.tar.xz";
+      sha256 = "12yby24k5crsyz6mhm2r0wnl306gp7422yj1nrl6yqi16wd37rbs";
+      name = "kdegraphics-strigi-analyzer-15.08.1.tar.xz";
+    };
+  };
+  kturtle = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kturtle-15.08.1.tar.xz";
+      sha256 = "0n6vbj2kvcby62cn8i65dq2rl5jv1zfp9xbg827s6vz681an2sqk";
+      name = "kturtle-15.08.1.tar.xz";
+    };
+  };
+  libkcddb = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libkcddb-15.08.1.tar.xz";
+      sha256 = "1x26dpr26d6xc73203dbk3vni7hcn1w6jdk94ffs0aaf3bmifal2";
+      name = "libkcddb-15.08.1.tar.xz";
+    };
+  };
+  bomber = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/bomber-15.08.1.tar.xz";
+      sha256 = "08l8ksqzap8hyza7mmf1wwddj8xkl03hsrc0mwvxsvyp7h7v3rxq";
+      name = "bomber-15.08.1.tar.xz";
+    };
+  };
+  ksquares = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ksquares-15.08.1.tar.xz";
+      sha256 = "17qx89q594w22nd2qhqcmb1wc291b89zs22jh62xrm62yr6h9ijj";
+      name = "ksquares-15.08.1.tar.xz";
+    };
+  };
+  konquest = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/konquest-15.08.1.tar.xz";
+      sha256 = "0ss7gvr8ihk7ip4dhxyps8h1137i5m20m6sf0rv10c2h0y9cy0zk";
+      name = "konquest-15.08.1.tar.xz";
+    };
+  };
+  parley = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/parley-15.08.1.tar.xz";
+      sha256 = "0f88ia58f9lw8rpz1mgr21hslkmwnwwf2ac0affm81b17nxx8zpc";
+      name = "parley-15.08.1.tar.xz";
+    };
+  };
+  kate = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kate-15.08.1.tar.xz";
+      sha256 = "0hrbr4lnmz0hgs856kfb966k85p8ccdzva8h4f6ifvacgxppb5iz";
+      name = "kate-15.08.1.tar.xz";
+    };
+  };
+  baloo-widgets = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/baloo-widgets-15.08.1.tar.xz";
+      sha256 = "021lgivqmahad2b5mwdg4vngyyfi6gcsk3xgn9rbzkxg67k2ivbc";
+      name = "baloo-widgets-15.08.1.tar.xz";
+    };
+  };
+  kbreakout = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kbreakout-15.08.1.tar.xz";
+      sha256 = "1l83iy6iad6npykl4dyh45s5z8pgamdp7aqi2r5c9r4awg16iq48";
+      name = "kbreakout-15.08.1.tar.xz";
+    };
+  };
+  kshisen = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kshisen-15.08.1.tar.xz";
+      sha256 = "1lrn5l4jscbn0ppppshpkh62plskzwy2km9dqp1hp5czpq5zvwk8";
+      name = "kshisen-15.08.1.tar.xz";
+    };
+  };
+  dragon = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/dragon-15.08.1.tar.xz";
+      sha256 = "0ffb0jspckwp8alis70akhrv7kkjq69zba34y61axm67f65izh9l";
+      name = "dragon-15.08.1.tar.xz";
+    };
+  };
+  ktp-common-internals = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktp-common-internals-15.08.1.tar.xz";
+      sha256 = "13alrk7zn3vq6khackdbyqbk209ivvcfza9mpqaxxll8sg9r3i3k";
+      name = "ktp-common-internals-15.08.1.tar.xz";
+    };
+  };
+  ktp-text-ui = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktp-text-ui-15.08.1.tar.xz";
+      sha256 = "1f7r47rbcciq12c5531qb9wr7xqz7nvsy04jk8gaxwdsr9a97ayf";
+      name = "ktp-text-ui-15.08.1.tar.xz";
+    };
+  };
+  kcalcore = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kcalcore-15.08.1.tar.xz";
+      sha256 = "0dpip8hbc5fb8yw876lig19kp2wi71dkwcb1mj8k49lph09k3460";
+      name = "kcalcore-15.08.1.tar.xz";
+    };
+  };
+  kremotecontrol = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kremotecontrol-15.08.1.tar.xz";
+      sha256 = "01fck27b3ilni2h78lmhq27aq4sw89060bh69xhw8z80iad2bxyy";
+      name = "kremotecontrol-15.08.1.tar.xz";
+    };
+  };
+  ktp-kded-module = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktp-kded-module-15.08.1.tar.xz";
+      sha256 = "0l2s07z87q2j92q4w6n16rbvd7xm8k4zgchlk06djb5d9gwdgvl0";
+      name = "ktp-kded-module-15.08.1.tar.xz";
+    };
+  };
+  kapptemplate = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kapptemplate-15.08.1.tar.xz";
+      sha256 = "1pc3dq3h30lx7d51zan52mnz5zwb70g6r84cskkgc2dmws7mrl0k";
+      name = "kapptemplate-15.08.1.tar.xz";
+    };
+  };
+  dolphin-plugins = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/dolphin-plugins-15.08.1.tar.xz";
+      sha256 = "1fpsbxcds2wzivcpc6vf6bqwi658mw4jrlpwd52w2nlsjpmgr31x";
+      name = "dolphin-plugins-15.08.1.tar.xz";
+    };
+  };
+  kpat = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kpat-15.08.1.tar.xz";
+      sha256 = "0cw17agpx23fsmnnvwkjn3xvq59d6hpppgydalnhrqka9321qy2d";
+      name = "kpat-15.08.1.tar.xz";
+    };
+  };
+  akonadi = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/akonadi-15.08.1.tar.xz";
+      sha256 = "19222mzvi34lqdaxavcpx0d1mxfnfynvhv5562rw3d7iqmhvbms6";
+      name = "akonadi-15.08.1.tar.xz";
+    };
+  };
+  kcalc = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kcalc-15.08.1.tar.xz";
+      sha256 = "02xj9n6zv3f3m35g38gsmqnrshbswqkya930sc5nqc0mlyflli6m";
+      name = "kcalc-15.08.1.tar.xz";
+    };
+  };
+  sweeper = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/sweeper-15.08.1.tar.xz";
+      sha256 = "08vk9yq7py576irkg34d3rzkdrzi6bb6zhynbyziyx097sqj5khj";
+      name = "sweeper-15.08.1.tar.xz";
+    };
+  };
+  lokalize = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/lokalize-15.08.1.tar.xz";
+      sha256 = "15xsx430a9w3kr1abvlh4h3spn063992mc76rq17c7a8n1n7zr4b";
+      name = "lokalize-15.08.1.tar.xz";
+    };
+  };
+  step = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/step-15.08.1.tar.xz";
+      sha256 = "15capfa297s4shrr6xwbpg62rn8pimwpmjm11p160g6lqdspwacm";
+      name = "step-15.08.1.tar.xz";
+    };
+  };
+  picmi = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/picmi-15.08.1.tar.xz";
+      sha256 = "16sa0w3bhxbj8f8nl0wh5b639gzi6y45167g3mh62a7di6llw1rm";
+      name = "picmi-15.08.1.tar.xz";
+    };
+  };
+  kig = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kig-15.08.1.tar.xz";
+      sha256 = "0wyvqfsgr1101vmzmsixribvd9plys91dvrx6cj9ji7mf4k5875g";
+      name = "kig-15.08.1.tar.xz";
+    };
+  };
+  ktp-contact-runner = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktp-contact-runner-15.08.1.tar.xz";
+      sha256 = "1m8jc39l9d394x3hqlqvc5msy7wi1aki9q8nd4bg6nmdz8v5dxz9";
+      name = "ktp-contact-runner-15.08.1.tar.xz";
+    };
+  };
+  kimap = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kimap-15.08.1.tar.xz";
+      sha256 = "07q4z16jfddh17khdd39dzasjfmnvd2zgdnph24s171815c2x2ps";
+      name = "kimap-15.08.1.tar.xz";
+    };
+  };
+  ksystemlog = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ksystemlog-15.08.1.tar.xz";
+      sha256 = "1v18f6dcirr6rayaxy8h85swj04g5giafs67h64g9flq5gacykji";
+      name = "ksystemlog-15.08.1.tar.xz";
+    };
+  };
+  kio-extras = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kio-extras-15.08.1.tar.xz";
+      sha256 = "06vnr10a3m4gs5bjz3dqx1bv1sqz3q69ihq1hlih4c8lyy9wd26q";
+      name = "kio-extras-15.08.1.tar.xz";
+    };
+  };
+  blinken = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/blinken-15.08.1.tar.xz";
+      sha256 = "0yh5ay2cpgb45y4any6sanzpwcngfxl98x3gnc5n81zl2kzb9y8m";
+      name = "blinken-15.08.1.tar.xz";
+    };
+  };
+  ktp-send-file = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktp-send-file-15.08.1.tar.xz";
+      sha256 = "07pk6d1rzz0hwfsw7nk4grixvvjja219jvr56j50vpnlmlza29xs";
+      name = "ktp-send-file-15.08.1.tar.xz";
+    };
+  };
+  kdiamond = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdiamond-15.08.1.tar.xz";
+      sha256 = "1f81l6pnwrpirb5v0npcd2452dkdh0llpmzh57gfd8cik0n1agzm";
+      name = "kdiamond-15.08.1.tar.xz";
+    };
+  };
+  kholidays = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kholidays-15.08.1.tar.xz";
+      sha256 = "1i875c7wpp5vlzjyw78bsxgyhmhv2y9846xbv6xi5y4b211iw6lf";
+      name = "kholidays-15.08.1.tar.xz";
+    };
+  };
+  kbounce = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kbounce-15.08.1.tar.xz";
+      sha256 = "127b7c4rpkz04nihqyl7d594k9vwjcvlq0758jfmkxijsgpjc334";
+      name = "kbounce-15.08.1.tar.xz";
+    };
+  };
+  kaccounts-integration = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kaccounts-integration-15.08.1.tar.xz";
+      sha256 = "07kryp71xq2zwfdm05g8mcmkmxhlj2wb2l9fi2sxbhsr360z33mx";
+      name = "kaccounts-integration-15.08.1.tar.xz";
+    };
+  };
+  lskat = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/lskat-15.08.1.tar.xz";
+      sha256 = "13vhfpi34qcv6q56qaxwk89apss8l921a59qvlmadmw999h7ms0s";
+      name = "lskat-15.08.1.tar.xz";
+    };
+  };
+  libkdeedu = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libkdeedu-15.08.1.tar.xz";
+      sha256 = "09fv1fbxlf6n4k0fyiy49avykpnxbmvi833i6ibm90v9csrfv6hf";
+      name = "libkdeedu-15.08.1.tar.xz";
+    };
+  };
+  libkeduvocdocument = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libkeduvocdocument-15.08.1.tar.xz";
+      sha256 = "0fz8fkcai1zdmqhvcic689sbwm07zg69z7jw4m6wgk7yqls8mkvq";
+      name = "libkeduvocdocument-15.08.1.tar.xz";
+    };
+  };
+  akonadi-search = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/akonadi-search-15.08.1.tar.xz";
+      sha256 = "0mzhil4ihs2b7k6dg29d5igpwsiwiv6awzvj6b5xn76i4xax1jk1";
+      name = "akonadi-search-15.08.1.tar.xz";
+    };
+  };
+  katomic = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/katomic-15.08.1.tar.xz";
+      sha256 = "0rj6sgh8v8x57fqbjvhik9xcw563nx0dvv8rin05nr22hlid8l9y";
+      name = "katomic-15.08.1.tar.xz";
+    };
+  };
+  kross-interpreters = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kross-interpreters-15.08.1.tar.xz";
+      sha256 = "1lqkmxxw1kz23q4pmmvrwqgi9vkxp0pw6g3zpr0x4zkzsj62q2ff";
+      name = "kross-interpreters-15.08.1.tar.xz";
+    };
+  };
+  audiocd-kio = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/audiocd-kio-15.08.1.tar.xz";
+      sha256 = "0sqh21x12za743xqmyfyd8h4z0wz0nzd2zjp6fzga76xfcryci5j";
+      name = "audiocd-kio-15.08.1.tar.xz";
+    };
+  };
+  mplayerthumbs = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/mplayerthumbs-15.08.1.tar.xz";
+      sha256 = "01l063iply1d4bfdb04agj11imha4fpnv131dcfd39ixi1icv8yb";
+      name = "mplayerthumbs-15.08.1.tar.xz";
+    };
+  };
+  syndication = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/syndication-15.08.1.tar.xz";
+      sha256 = "1kklbw77iiiqfcv8sydy9jkc8g630xw551y6r1jp1wbvrdkjwq47";
+      name = "syndication-15.08.1.tar.xz";
+    };
+  };
+  kqtquickcharts = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kqtquickcharts-15.08.1.tar.xz";
+      sha256 = "0jjn8nrxqjpsg9cwfazqz7v4lacl99wxhdh9mclqxk4xy54ydxqc";
+      name = "kqtquickcharts-15.08.1.tar.xz";
+    };
+  };
+  kmouth = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kmouth-15.08.1.tar.xz";
+      sha256 = "1w6jgs9skis1y8g07hdzwpdsa7dmzfi5dw82wx0wnnmdm076vg41";
+      name = "kmouth-15.08.1.tar.xz";
+    };
+  };
+  dolphin = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/dolphin-15.08.1.tar.xz";
+      sha256 = "09mr54zbyyq4kd3ddi054c86ji63b0k5fjd3y8x44vnd3id8jpjs";
+      name = "dolphin-15.08.1.tar.xz";
+    };
+  };
+  libkdcraw = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libkdcraw-15.08.1.tar.xz";
+      sha256 = "0kshhch81sqjlashbh3ww3nz9ahv99f1bsxlrly39rvfa8yg6vpv";
+      name = "libkdcraw-15.08.1.tar.xz";
+    };
+  };
+  libksane = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libksane-15.08.1.tar.xz";
+      sha256 = "0ih4axq0pcpvmgs8x12ad22bxixcccqpkqs160vxl7a29327rbdm";
+      name = "libksane-15.08.1.tar.xz";
+    };
+  };
+  kmines = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kmines-15.08.1.tar.xz";
+      sha256 = "12n4im9vqyym5jr0chs4g3wjlr2d2a3i35jhm52j8ibdx7fnpmw6";
+      name = "kmines-15.08.1.tar.xz";
+    };
+  };
+  kiriki = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kiriki-15.08.1.tar.xz";
+      sha256 = "1ighd4bmvgn84misb7zldjg5z75k1i7z8l7yjb0qybh1cc2bw3b3";
+      name = "kiriki-15.08.1.tar.xz";
+    };
+  };
+  kaccessible = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kaccessible-15.08.1.tar.xz";
+      sha256 = "10crgqpiqkbrb0hil1660cy4dcywiljicqhnhr3nns0ncllvw2vi";
+      name = "kaccessible-15.08.1.tar.xz";
+    };
+  };
+  ksnapshot = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ksnapshot-15.08.1.tar.xz";
+      sha256 = "19z3rbvkn55waig6dm1lvan6wlndshhjbiqwwdlc9nh2wng8dcd0";
+      name = "ksnapshot-15.08.1.tar.xz";
+    };
+  };
+  kamera = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kamera-15.08.1.tar.xz";
+      sha256 = "0czpr3wb3irlbczrx0dczph6l9dwhz3wv9amrz2lvb8p9c8j4nmd";
+      name = "kamera-15.08.1.tar.xz";
+    };
+  };
+  kdenetwork-filesharing = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdenetwork-filesharing-15.08.1.tar.xz";
+      sha256 = "03w78qf8sgwypzgwpyl5cfb5441787j6vzzhlddsbmkrl4vnhnff";
+      name = "kdenetwork-filesharing-15.08.1.tar.xz";
+    };
+  };
+  kmag = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kmag-15.08.1.tar.xz";
+      sha256 = "02bhjmmqb28qyacqzikrkxgh1zf4v1012kdjpdczsmnrgb1nmpgl";
+      name = "kmag-15.08.1.tar.xz";
+    };
+  };
+  kalarmcal = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kalarmcal-15.08.1.tar.xz";
+      sha256 = "02m2fd98jdacr7hm71dl6hsshil152c09p1daaa9b58yrgb9dqd9";
+      name = "kalarmcal-15.08.1.tar.xz";
+    };
+  };
+  kstars = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kstars-15.08.1.tar.xz";
+      sha256 = "049pnbqn1ddmqd663vc181yh5z204klbs255w41k7p1z1vl5zszr";
+      name = "kstars-15.08.1.tar.xz";
+    };
+  };
+  ktp-approver = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktp-approver-15.08.1.tar.xz";
+      sha256 = "0qdax2zby93xc694s3s6s21y4bfjbfxsd292ag544cwazcjz8zp5";
+      name = "ktp-approver-15.08.1.tar.xz";
+    };
+  };
+  kdesdk-kioslaves = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdesdk-kioslaves-15.08.1.tar.xz";
+      sha256 = "161885bzayf804pdci5n1xh1n4zw3pddk2j53icn573gzpvczwla";
+      name = "kdesdk-kioslaves-15.08.1.tar.xz";
+    };
+  };
+  kdenetwork-strigi-analyzers = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdenetwork-strigi-analyzers-15.08.1.tar.xz";
+      sha256 = "0w3jlg9idsxi1pwxh97s9iawjyq8m2z51kz5mm0d0irwslkwaygk";
+      name = "kdenetwork-strigi-analyzers-15.08.1.tar.xz";
+    };
+  };
+  juk = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/juk-15.08.1.tar.xz";
+      sha256 = "0l6zq90jvhkhppjq0djmj1ij1c1yjjvhh5ss4czqn39bay33r2a7";
+      name = "juk-15.08.1.tar.xz";
+    };
+  };
+  kolf = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kolf-15.08.1.tar.xz";
+      sha256 = "05xldbfkbbvmq743029cksgdcsfn20xadn91sw1yp9146k0bd97h";
+      name = "kolf-15.08.1.tar.xz";
+    };
+  };
+  print-manager = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/print-manager-15.08.1.tar.xz";
+      sha256 = "0cy5ga11kk11ca4nzpr6wjb4a342ziaflilc9pz6l3b7r8vhjv09";
+      name = "print-manager-15.08.1.tar.xz";
+    };
+  };
+  kppp = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kppp-15.08.1.tar.xz";
+      sha256 = "1v2dqb9bdi1yl4fpyn98iq8pg69r9pfy7z1wbq6b37nwlhlapva8";
+      name = "kppp-15.08.1.tar.xz";
+    };
+  };
+  bovo = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/bovo-15.08.1.tar.xz";
+      sha256 = "1lj2hwjdwkn70gfgyk3v0r8wdrdlpqkx9n17fd15x0jm8xjxc7wj";
+      name = "bovo-15.08.1.tar.xz";
+    };
+  };
+  ktimer = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktimer-15.08.1.tar.xz";
+      sha256 = "07882zpgalf2yzqplg3mzl6sxh84zfkbk1jwlw8kwkr7pr7lmfvv";
+      name = "ktimer-15.08.1.tar.xz";
+    };
+  };
+  kpimtextedit = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kpimtextedit-15.08.1.tar.xz";
+      sha256 = "1djk0gyfdxsqjwhrqf4rnkjvy7hz1rysdm3idjqrnjhnlrjwsiwc";
+      name = "kpimtextedit-15.08.1.tar.xz";
+    };
+  };
+  filelight = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/filelight-15.08.1.tar.xz";
+      sha256 = "085n071j5mpzh2yr4035bdxgfay782g4zx386lr2s03ywc5icsw2";
+      name = "filelight-15.08.1.tar.xz";
+    };
+  };
+  khangman = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/khangman-15.08.1.tar.xz";
+      sha256 = "1g60s028b08vd34l7n8m4sd7d9zl419kz8f1hvdgs2z9zacd5zqg";
+      name = "khangman-15.08.1.tar.xz";
+    };
+  };
+  kteatime = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kteatime-15.08.1.tar.xz";
+      sha256 = "0bsy22dgfpsibkpi0nv4245mxaf0xnh8rpaia8mzrh0d72gf2syb";
+      name = "kteatime-15.08.1.tar.xz";
+    };
+  };
+  gpgmepp = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/gpgmepp-15.08.1.tar.xz";
+      sha256 = "1nr4k3k34cmmvn4mznnr4kgvbi4raan96phbiqzgh6mzkq2rc8yr";
+      name = "gpgmepp-15.08.1.tar.xz";
+    };
+  };
+  ktp-contact-list = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktp-contact-list-15.08.1.tar.xz";
+      sha256 = "0x8fvfqjjrhdnfaa9ybagf33lv1r21bywkipvkp2f81dalsd1sv0";
+      name = "ktp-contact-list-15.08.1.tar.xz";
+    };
+  };
+  klettres = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/klettres-15.08.1.tar.xz";
+      sha256 = "0ykb5pfawiyby2xshfdq2gy7w66dw5vhqdd4vjkix6nyb87n703z";
+      name = "klettres-15.08.1.tar.xz";
+    };
+  };
+  kidentitymanagement = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kidentitymanagement-15.08.1.tar.xz";
+      sha256 = "0aslniqzp8bgayvvrxkdfb9ihvz57n6zf3rh99dsv34z20mfyc59";
+      name = "kidentitymanagement-15.08.1.tar.xz";
+    };
+  };
+  libkdegames = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libkdegames-15.08.1.tar.xz";
+      sha256 = "0khr3rih3yv2vh9q2dkvdc2r1lpxhky5hmh7gachhyjh0296i9nq";
+      name = "libkdegames-15.08.1.tar.xz";
+    };
+  };
+  kmailtransport = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kmailtransport-15.08.1.tar.xz";
+      sha256 = "18gnhw49df0f7j0n0nzfnr5v6wvl37mf82slwbsrjqvhj60b2xsg";
+      name = "kmailtransport-15.08.1.tar.xz";
+    };
+  };
+  kbruch = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kbruch-15.08.1.tar.xz";
+      sha256 = "1mdbrfj7g92v5yzpdi0cccmhf5vdy7y5blbnk50p56qaq8w8avm2";
+      name = "kbruch-15.08.1.tar.xz";
+    };
+  };
+  zeroconf-ioslave = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/zeroconf-ioslave-15.08.1.tar.xz";
+      sha256 = "1h8v78b6fb82brpxkhlwyphb830ndzlq4z5llgav1dy7i0v8pd7r";
+      name = "zeroconf-ioslave-15.08.1.tar.xz";
+    };
+  };
+  kdegraphics-thumbnailers = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdegraphics-thumbnailers-15.08.1.tar.xz";
+      sha256 = "1qavbvczjikad4kg28lq6zbb7dvllfw5nggilrs0s2qar7jqlrkw";
+      name = "kdegraphics-thumbnailers-15.08.1.tar.xz";
+    };
+  };
+  kreversi = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kreversi-15.08.1.tar.xz";
+      sha256 = "0clxm23a0m5j8aj3cp1va5s38y0y5wr7akwmigpk37xjylzp1xdd";
+      name = "kreversi-15.08.1.tar.xz";
+    };
+  };
+  kdewebdev = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdewebdev-15.08.1.tar.xz";
+      sha256 = "00q25xp28m9sfgs7h4g89gyh34v36zwmliz1jvsq18aja45f5hpm";
+      name = "kdewebdev-15.08.1.tar.xz";
+    };
+  };
+  kgoldrunner = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kgoldrunner-15.08.1.tar.xz";
+      sha256 = "18xs36g9gmhzlwyg2gl9cc3842dzwc196dpfp0xshja2f1rlr6fp";
+      name = "kgoldrunner-15.08.1.tar.xz";
+    };
+  };
+  kde-base-artwork = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-base-artwork-15.08.1.tar.xz";
+      sha256 = "081mrc0s2lnbzwmmy9hwqas28cl6jzdycwxx3vfn4rvsgw4cgrp2";
+      name = "kde-base-artwork-15.08.1.tar.xz";
+    };
+  };
+  kiten = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kiten-15.08.1.tar.xz";
+      sha256 = "1pz9frvf23hi2hy7g040prcgjvjssgv3yya2kvapafpmbwnd38dv";
+      name = "kiten-15.08.1.tar.xz";
+    };
+  };
+  kmahjongg = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kmahjongg-15.08.1.tar.xz";
+      sha256 = "193ynx3da2nyaf2ixq7gc93nv8p9djslh8m666kdnqcxarlxd2qn";
+      name = "kmahjongg-15.08.1.tar.xz";
+    };
+  };
+  kcolorchooser = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kcolorchooser-15.08.1.tar.xz";
+      sha256 = "1ig03dg4baf29hhim1m77bzwnm6mqqyzbmyhk6g92mj5883nnfb7";
+      name = "kcolorchooser-15.08.1.tar.xz";
+    };
+  };
+  kapman = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kapman-15.08.1.tar.xz";
+      sha256 = "070zckasm7bm1g01rvp55gbilyzxqs5gsrp56zp3lyids0ycjfgz";
+      name = "kapman-15.08.1.tar.xz";
+    };
+  };
+  gwenview = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/gwenview-15.08.1.tar.xz";
+      sha256 = "0lks7chyd8bylz1m3nv3bfch5jcffkv52aawxv9r5www9wd7jq69";
+      name = "gwenview-15.08.1.tar.xz";
+    };
+  };
+  kcron = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kcron-15.08.1.tar.xz";
+      sha256 = "1s90bmlfbhcfiq6iizp4sq0z3ds8nrqghckcx9zrbyyj852llh0f";
+      name = "kcron-15.08.1.tar.xz";
+    };
+  };
+  kdeartwork = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdeartwork-15.08.1.tar.xz";
+      sha256 = "0j37pzih616fv1k6i3hll6qkxh42v9gkhy5vl57ancx7a5kxikyc";
+      name = "kdeartwork-15.08.1.tar.xz";
+    };
+  };
+  ktp-accounts-kcm = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktp-accounts-kcm-15.08.1.tar.xz";
+      sha256 = "1qk25v0ivxkv8cyq4y44ixz9rx28djfxk06zcvn2m1rwjqhrx204";
+      name = "ktp-accounts-kcm-15.08.1.tar.xz";
+    };
+  };
+  kdepim-runtime = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdepim-runtime-15.08.1.tar.xz";
+      sha256 = "1hcg900bnjryxii3f1c2yjj2nr3z4pn7yigdxclmwpfk6gvlkqm4";
+      name = "kdepim-runtime-15.08.1.tar.xz";
+    };
+  };
+  kfloppy = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kfloppy-15.08.1.tar.xz";
+      sha256 = "0yg94p5gj9xazl9kk503mblawyndv2j6m0scf6na68xksgx0yplv";
+      name = "kfloppy-15.08.1.tar.xz";
+    };
+  };
+  kopete = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kopete-15.08.1.tar.xz";
+      sha256 = "0949m4xw94hnw79c6ar8m9qjcx7r14qs6jww3pcnab7r0ax4xahb";
+      name = "kopete-15.08.1.tar.xz";
+    };
+  };
+  okular = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/okular-15.08.1.tar.xz";
+      sha256 = "0nicpz25srpn9zmwjxrnz8h2ba597ixsqcyhymki465dv5hgx5x7";
+      name = "okular-15.08.1.tar.xz";
+    };
+  };
+  kdf = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdf-15.08.1.tar.xz";
+      sha256 = "062rz8syp7kxc9xyl4ldcqx66fdrjh5fhgdqgdjdgpn273n5v447";
+      name = "kdf-15.08.1.tar.xz";
+    };
+  };
+  kfourinline = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kfourinline-15.08.1.tar.xz";
+      sha256 = "19rssc5mf8hn6fv9pm91pbhdcxp123z9c1wrmay1wmja7fmnyv9s";
+      name = "kfourinline-15.08.1.tar.xz";
+    };
+  };
+  kdeedu-data = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdeedu-data-15.08.1.tar.xz";
+      sha256 = "1yfx8526i753ifmcyh9r481cqiqzs4wh3xm1ys5x8pspg9rpn0wi";
+      name = "kdeedu-data-15.08.1.tar.xz";
+    };
+  };
+  kubrick = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kubrick-15.08.1.tar.xz";
+      sha256 = "1sanlaz70m1jpaxjwlx2gljh57gg4gdcz7y9g2w191667yk0kq8g";
+      name = "kubrick-15.08.1.tar.xz";
+    };
+  };
+  svgpart = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/svgpart-15.08.1.tar.xz";
+      sha256 = "10vvnsm7xlgy5fia8l8cz6cgj4xsjshiqkiiwkzlmyzzx081zi57";
+      name = "svgpart-15.08.1.tar.xz";
+    };
+  };
+  kanagram = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kanagram-15.08.1.tar.xz";
+      sha256 = "0bchwvr87wj9p82v1vgdmfw0a8d1gax08ccq24lzigrny6ljlizr";
+      name = "kanagram-15.08.1.tar.xz";
+    };
+  };
+  klickety = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/klickety-15.08.1.tar.xz";
+      sha256 = "1prbr2401jy4pifcyn8dy6q34f1nrhvhh8gm8p5jbr1jkzxmm1k1";
+      name = "klickety-15.08.1.tar.xz";
+    };
+  };
+  kgpg = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kgpg-15.08.1.tar.xz";
+      sha256 = "0728pb6d70qfrbmd1d16lwxshy3ifb8snx5bi8vp9rrs7ncy8r4a";
+      name = "kgpg-15.08.1.tar.xz";
+    };
+  };
+  kdepim = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdepim-15.08.1.tar.xz";
+      sha256 = "06j6zmizkc8yg59dvnbcla82jb4csrwrvzzk3al18j6js0sdjnqr";
+      name = "kdepim-15.08.1.tar.xz";
+    };
+  };
+  granatier = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/granatier-15.08.1.tar.xz";
+      sha256 = "1ngdjgf3imdbv1hmp88fhnpvpspjgl2zpaig3d96fjlhxh0bgng1";
+      name = "granatier-15.08.1.tar.xz";
+    };
+  };
+  knetwalk = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/knetwalk-15.08.1.tar.xz";
+      sha256 = "0biis3gz943s09dzdxxdpkpizy3qzp9csi72njbm3bapxwmcflr2";
+      name = "knetwalk-15.08.1.tar.xz";
+    };
+  };
+  rocs = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/rocs-15.08.1.tar.xz";
+      sha256 = "1s3mdi9hqhajryax4yg074dn0h5yq9fq4a8j6ksgg7a2ggl4l8kv";
+      name = "rocs-15.08.1.tar.xz";
+    };
+  };
+  kde-dev-utils = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-dev-utils-15.08.1.tar.xz";
+      sha256 = "0jashpk1gjcf74b4vpkyrab2izp18ddwi0xky4v47micicl7wm5n";
+      name = "kde-dev-utils-15.08.1.tar.xz";
+    };
+  };
+  kdesdk-thumbnailers = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdesdk-thumbnailers-15.08.1.tar.xz";
+      sha256 = "0719qaw9whp1aa15cxcz7axfhmcm30iwwrr78xypzcy097f63q4v";
+      name = "kdesdk-thumbnailers-15.08.1.tar.xz";
+    };
+  };
+  kigo = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kigo-15.08.1.tar.xz";
+      sha256 = "1vwkan7zlafisx4kap4bby4d2ndqnqbj7jrc00xgbw43l81kn4ix";
+      name = "kigo-15.08.1.tar.xz";
+    };
+  };
+  jovie = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/jovie-15.08.1.tar.xz";
+      sha256 = "021j7rxbbv5p2jjp4d7m7vsdy5117myng2min42bn6vfz4g6s5rx";
+      name = "jovie-15.08.1.tar.xz";
+    };
+  };
+  amor = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/amor-15.08.1.tar.xz";
+      sha256 = "125s9hsj4s3h21khgri9p52abkaa78a9yz7fnw5ij4i0ivhbks6a";
+      name = "amor-15.08.1.tar.xz";
+    };
+  };
+  kspaceduel = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kspaceduel-15.08.1.tar.xz";
+      sha256 = "0anviqhcmyfnyq9zz6hh8cka75hy5ydxq5yvz7q0g6c3flj34fq2";
+      name = "kspaceduel-15.08.1.tar.xz";
+    };
+  };
+  libkipi = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libkipi-15.08.1.tar.xz";
+      sha256 = "0mmk8zfwffns7gacdjhjh45ki762wpd21nwvgbjclf3rjzgbyxz8";
+      name = "libkipi-15.08.1.tar.xz";
+    };
+  };
+  kgeography = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kgeography-15.08.1.tar.xz";
+      sha256 = "1ilb9l6v8pf7aq9dzs29bbdqb60fzf7a0dwjjdfvjq8jbnhcxa9v";
+      name = "kgeography-15.08.1.tar.xz";
+    };
+  };
+  kajongg = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kajongg-15.08.1.tar.xz";
+      sha256 = "1ialza77fc0a6541yg71b8qbjvq78sww7l0g3s1rn30pj1j1r3rx";
+      name = "kajongg-15.08.1.tar.xz";
+    };
+  };
+  kolourpaint = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kolourpaint-15.08.1.tar.xz";
+      sha256 = "1m0dwv2wxf5nsisg4zc6h1cqbnzv4187il7y45rbkxli430jh43d";
+      name = "kolourpaint-15.08.1.tar.xz";
+    };
+  };
+  marble = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/marble-15.08.1.tar.xz";
+      sha256 = "0dx0r1hjcfn3mvmsw0wgaw57jkn42166aj97ky0zdhdavkqv4j3j";
+      name = "marble-15.08.1.tar.xz";
+    };
+  };
+  kblog = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kblog-15.08.1.tar.xz";
+      sha256 = "0a5ycnk0ljw8k4m5pm7cn37ijjq9x1p2hxf4k77jb7aw1apyqv15";
+      name = "kblog-15.08.1.tar.xz";
+    };
+  };
+  kget = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kget-15.08.1.tar.xz";
+      sha256 = "02npfzdk283930jywhjch6sscnj16w2n3nn4ik04bx8hxv74br74";
+      name = "kget-15.08.1.tar.xz";
+    };
+  };
+  ktuberling = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktuberling-15.08.1.tar.xz";
+      sha256 = "1y9ifgg2086zz45pj32xxjrgnbsgiq7ajbjl8cybjxcx624j66ic";
+      name = "ktuberling-15.08.1.tar.xz";
+    };
+  };
+  krfb = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/krfb-15.08.1.tar.xz";
+      sha256 = "0cpypajr483iwch385240zi5l0vf4j28k0sng0kszhizspkhvp35";
+      name = "krfb-15.08.1.tar.xz";
+    };
+  };
+  ktp-filetransfer-handler = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktp-filetransfer-handler-15.08.1.tar.xz";
+      sha256 = "135zpcl0g81xd9hljch05cjngs6x05cnzngzx5h5hsjf13fgz9cn";
+      name = "ktp-filetransfer-handler-15.08.1.tar.xz";
+    };
+  };
+  ktouch = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktouch-15.08.1.tar.xz";
+      sha256 = "1hlg1l1xpmpwvzz47vmif395pw9szjy93p8yxhqsdhkh1f4mdssq";
+      name = "ktouch-15.08.1.tar.xz";
+    };
+  };
+  kmplot = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kmplot-15.08.1.tar.xz";
+      sha256 = "1a1b6vcxp1wkp6qfidwj42vqkh6wm4m64q0hm7zv6h01l10fzdm2";
+      name = "kmplot-15.08.1.tar.xz";
+    };
+  };
+  okteta = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/okteta-15.08.1.tar.xz";
+      sha256 = "14mbfqc61rw2g89shh0ad38ph24c6nrj76qx9g1diazvr3p9sf1j";
+      name = "okteta-15.08.1.tar.xz";
+    };
+  };
+  kdepimlibs = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdepimlibs-15.08.1.tar.xz";
+      sha256 = "0sjh4n2hgcfd3ngbvzk051yzglkchcjhx0nnn12li0lw2bg7l9w3";
+      name = "kdepimlibs-15.08.1.tar.xz";
+    };
+  };
+  kwalletmanager = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kwalletmanager-15.08.1.tar.xz";
+      sha256 = "1ibfiaglwgqxnsmx1f8pcylv0kzywpd2mvyawcdhcl3yqdpyw4v7";
+      name = "kwalletmanager-15.08.1.tar.xz";
+    };
+  };
+  kmime = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kmime-15.08.1.tar.xz";
+      sha256 = "1rz9nmx01rd4asv8iggh47m7snm0fdvlc9f59jpkbch1wxf70vqc";
+      name = "kmime-15.08.1.tar.xz";
+    };
+  };
+  ktp-auth-handler = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktp-auth-handler-15.08.1.tar.xz";
+      sha256 = "0dwpaw2pvigc0lyqa29gxq49fp6rp5hh2wg6ysr1d00s54lr2qgw";
+      name = "ktp-auth-handler-15.08.1.tar.xz";
+    };
+  };
+  ktux = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktux-15.08.1.tar.xz";
+      sha256 = "1vw0ybkvrcqcng6sz0hw12bhsspig98m0wjn8phlyljfd5d8p4h3";
+      name = "ktux-15.08.1.tar.xz";
+    };
+  };
+  ffmpegthumbs = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ffmpegthumbs-15.08.1.tar.xz";
+      sha256 = "00bk11zq5hkdkwxj7d4fydslh2gybhzxz2gyldjfdd8agjcl1rfm";
+      name = "ffmpegthumbs-15.08.1.tar.xz";
+    };
+  };
+  libkomparediff2 = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libkomparediff2-15.08.1.tar.xz";
+      sha256 = "1g8j5idy18a4fnc2m9cjg3xzq6kck070yq5ki4l9lbjinrhl3jpr";
+      name = "libkomparediff2-15.08.1.tar.xz";
+    };
+  };
+  kalgebra = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kalgebra-15.08.1.tar.xz";
+      sha256 = "1an9lc9h1178d94pq2a60pnw9wadxdni3drbx40w1l1kfaa38ghy";
+      name = "kalgebra-15.08.1.tar.xz";
+    };
+  };
+  kblocks = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kblocks-15.08.1.tar.xz";
+      sha256 = "1vvlxna5dmnf7igr53p3m5z224zj1ni92qifjnnblwr55gqqwsva";
+      name = "kblocks-15.08.1.tar.xz";
+    };
+  };
+  kblackbox = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kblackbox-15.08.1.tar.xz";
+      sha256 = "1hnxsjdp9gbjc0049jx7bnzx0cykyc7qf6f2z3mrir8knin0fmi5";
+      name = "kblackbox-15.08.1.tar.xz";
+    };
+  };
+  kdegraphics-mobipocket = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdegraphics-mobipocket-15.08.1.tar.xz";
+      sha256 = "0fnrd2za98plc8aw2gmn83yar0m7ix5rg84lpfm0vnshkhrslqg6";
+      name = "kdegraphics-mobipocket-15.08.1.tar.xz";
+    };
+  };
+  ksnakeduel = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ksnakeduel-15.08.1.tar.xz";
+      sha256 = "1q0hcya6dl2lfahqnwx18hl6cwmibsvlyf25x41d42669f7vm1zz";
+      name = "ksnakeduel-15.08.1.tar.xz";
+    };
+  };
+  kde-wallpapers = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-wallpapers-15.08.1.tar.xz";
+      sha256 = "01q5yh4q7kjjryab3jc8g4qwi4w18la6na0ra2mf0cf637xnlh83";
+      name = "kde-wallpapers-15.08.1.tar.xz";
+    };
+  };
+  konsole = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/konsole-15.08.1.tar.xz";
+      sha256 = "15d401xxqhd8sfjc6gpn7f1zcs5w8l6y2bjvjvidmpzmr24xky1j";
+      name = "konsole-15.08.1.tar.xz";
+    };
+  };
+  kdelibs = {
+    version = "4.14.12";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdelibs-4.14.12.tar.xz";
+      sha256 = "1s4p3x5si0mx64rhfqplgpyqm04c84wj4mpmbmi86wxwyr5d65rg";
+      name = "kdelibs-4.14.12.tar.xz";
+    };
+  };
+  cantor = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/cantor-15.08.1.tar.xz";
+      sha256 = "0qcx077khzzjs8gaz2m1dph1r4ql3gpfsq536626fd94cb5is83x";
+      name = "cantor-15.08.1.tar.xz";
+    };
+  };
+  kmbox = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kmbox-15.08.1.tar.xz";
+      sha256 = "1b4b9kk99kvcz4krixnzwvwf7ydkpbsrzza74f8ljbl40ldn94jn";
+      name = "kmbox-15.08.1.tar.xz";
+    };
+  };
+  kde-dev-scripts = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-dev-scripts-15.08.1.tar.xz";
+      sha256 = "01s13qwji4d2sgbg85kj0ggg4mnl2vggangi8fpvaps03fpq7571";
+      name = "kde-dev-scripts-15.08.1.tar.xz";
+    };
+  };
+  krdc = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/krdc-15.08.1.tar.xz";
+      sha256 = "1gx3vhl8w64ya71894lgy2i3kkggr84r1c5sx8nbwvapw5v4ngiz";
+      name = "krdc-15.08.1.tar.xz";
+    };
+  };
+  ktnef = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ktnef-15.08.1.tar.xz";
+      sha256 = "04jq60qpbgaclscgpwx3sj0l67sqzk9zr01zr6fx127apqzc2xmh";
+      name = "ktnef-15.08.1.tar.xz";
+    };
+  };
+  kdenlive = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kdenlive-15.08.1.tar.xz";
+      sha256 = "03rbkl3jblzprwb6sd7wycizpnpk65551ji53i2h7rxwsns53hig";
+      name = "kdenlive-15.08.1.tar.xz";
+    };
+  };
+  kwordquiz = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kwordquiz-15.08.1.tar.xz";
+      sha256 = "0b20n7k8ging2gw6l0k09r71ww1dg0fh5y5lqzlzcl8vqhdwkwpp";
+      name = "kwordquiz-15.08.1.tar.xz";
+    };
+  };
+  libkface = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/libkface-15.08.1.tar.xz";
+      sha256 = "0k2rsmnzfyab1x1nyirlhs48c19b2i2f0x60w1igp7b66n6819kd";
+      name = "libkface-15.08.1.tar.xz";
+    };
+  };
+  kde-baseapps = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kde-baseapps-15.08.1.tar.xz";
+      sha256 = "1ngi571gs62qnpz1ph106ard13pfh9f1ljg4y4cyv77nv90x4a2k";
+      name = "kde-baseapps-15.08.1.tar.xz";
+    };
+  };
+  cervisia = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/cervisia-15.08.1.tar.xz";
+      sha256 = "0cha7j0769ib8hc2jjgdxm1pv81cqwii721ww94dd4d614isv4pk";
+      name = "cervisia-15.08.1.tar.xz";
+    };
+  };
+  kmousetool = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/kmousetool-15.08.1.tar.xz";
+      sha256 = "0snyqp2410bjkc5krxhkk08i3lyd5724513vs48lxdasv24jc0nz";
+      name = "kmousetool-15.08.1.tar.xz";
+    };
+  };
+  ksaneplugin = {
+    version = "15.08.1";
+    src = fetchurl {
+      url = "${mirror}/stable/applications/15.08.1/src/ksaneplugin-15.08.1.tar.xz";
+      sha256 = "0fx0y4js4nbbky342ly3aw59rbzz25mjb1da0hkykky9kxrcwnxk";
+      name = "ksaneplugin-15.08.1.tar.xz";
+    };
+  };
+}
diff --git a/pkgs/applications/misc/3dfsb/default.nix b/pkgs/applications/misc/3dfsb/default.nix
index 96bcfbd6bfe..fe173b21b57 100644
--- a/pkgs/applications/misc/3dfsb/default.nix
+++ b/pkgs/applications/misc/3dfsb/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
   buildPhase = "sh ./compile.sh";
   dontStrip = true;
 
-  installPhase = "mkdir $out/bin/ && cp 3dfsb $out/bin/";
+  installPhase = "mkdir -p $out/bin/ && cp 3dfsb $out/bin/";
 
   preFixup = ''
     wrapProgram $out/bin/3dfsb \
diff --git a/pkgs/applications/misc/apvlv/default.nix b/pkgs/applications/misc/apvlv/default.nix
new file mode 100644
index 00000000000..aa312f4c8a9
--- /dev/null
+++ b/pkgs/applications/misc/apvlv/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchurl, cmake, pkgconfig,
+  gtk2 , poppler, freetype, libpthreadstubs, libXdmcp, libxshmfence
+}:
+
+stdenv.mkDerivation rec {
+  version = "0.1.f7f7b9c";
+  name = "apvlv-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/downloads/naihe2010/apvlv/${name}-Source.tar.gz";
+    sha256 = "125nlcfjdhgzi9jjxh9l2yc9g39l6jahf8qh2555q20xkxf4rl0w";
+  };
+
+  preConfigure = ''
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${poppler}/include/poppler"
+  '';
+
+  buildInputs = [
+    pkgconfig cmake
+     poppler
+     freetype gtk2
+     libpthreadstubs libXdmcp libxshmfence # otherwise warnings in compilation
+   ];
+
+  installPhase = ''
+    # binary
+    mkdir -p $out/bin
+    cp src/apvlv $out/bin/apvlv
+
+    # displays pdfStartup.pdf as default pdf entry
+    mkdir -p $out/share/doc/apvlv/
+    cp ../Startup.pdf $out/share/doc/apvlv/Startup.pdf
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "http://naihe2010.github.io/apvlv/";
+    description = "PDF viewer with Vim-like behaviour";
+    longDescription = ''
+      apvlv is a PDF/DJVU/UMD/TXT Viewer Under Linux/WIN32
+      with Vim-like behaviour.
+    '';
+
+    license = licenses.lgpl2;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.ardumont ];
+  };
+
+}
diff --git a/pkgs/applications/misc/arbtt/default.nix b/pkgs/applications/misc/arbtt/default.nix
deleted file mode 100644
index cd3df455c38..00000000000
--- a/pkgs/applications/misc/arbtt/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, aeson, binary, bytestringProgress, deepseq, filepath
-, HUnit, libXScrnSaver, parsec, pcreLight, processExtras, strict
-, tasty, tastyGolden, tastyHunit, terminalProgressBar, time
-, transformers, utf8String, X11
-}:
-
-cabal.mkDerivation (self: {
-  pname = "arbtt";
-  version = "0.8.1.4";
-  sha256 = "15ydb425nvqfzajx09q713wy5xa7awbzfjlsidk17vf7qbhfjn7z";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [
-    aeson binary bytestringProgress deepseq filepath parsec pcreLight
-    strict terminalProgressBar time transformers utf8String X11
-  ];
-  testDepends = [
-    binary deepseq HUnit parsec pcreLight processExtras tasty
-    tastyGolden tastyHunit time transformers utf8String
-  ];
-  extraLibraries = [ libXScrnSaver ];
-  jailbreak = true;
-  meta = {
-    homepage = "http://arbtt.nomeata.de/";
-    description = "Automatic Rule-Based Time Tracker";
-    license = "GPL";
-    platforms = self.ghc.meta.platforms;
-  };
-})
diff --git a/pkgs/applications/misc/artha/default.nix b/pkgs/applications/misc/artha/default.nix
new file mode 100644
index 00000000000..a8914a9014d
--- /dev/null
+++ b/pkgs/applications/misc/artha/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, dbus_glib, gtk, pkgconfig, wordnet }:
+
+stdenv.mkDerivation rec {
+  name = "artha-${version}";
+  version = "1.0.3";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/artha/1.0.3/artha-1.0.3.tar.bz2";
+    sha256 = "0qr4ihl7ma3cq82xi1fpzvf74mm9vsg0j035xvmcp3r6rmw2fycx";
+  };
+
+  buildInputs = [ dbus_glib gtk pkgconfig wordnet ];
+
+  meta = with stdenv.lib; {
+    description = "An offline thesaurus based on WordNet";
+    homepage = http://artha.sourceforge.net;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.goibhniu ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/audio/sox/0001-Check-for-minimum-size-sphere-headers.patch b/pkgs/applications/misc/audio/sox/0001-Check-for-minimum-size-sphere-headers.patch
deleted file mode 100644
index f01fec390d4..00000000000
--- a/pkgs/applications/misc/audio/sox/0001-Check-for-minimum-size-sphere-headers.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 55e33019afcb3256cccedf606548b86816f6da59 Mon Sep 17 00:00:00 2001
-From: Chris Bagwell <chris@cnpbagwell.com>
-Date: Sat, 13 Dec 2014 12:48:37 -0600
-Subject: [PATCH 1/2] Check for minimum size sphere headers
-
----
- src/sphere.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/src/sphere.c b/src/sphere.c
-index 479a552..a3fd1c6 100644
---- a/src/sphere.c
-+++ b/src/sphere.c
-@@ -47,6 +47,11 @@ static int start_read(sox_format_t * ft)
- 
-   /* Determine header size, and allocate a buffer large enough to hold it. */
-   sscanf(fldsval, "%lu", &header_size_ul);
-+  if (header_size_ul < 16) {
-+    lsx_fail_errno(ft, SOX_EHDR, "Error reading Sphere header");
-+    return (SOX_EOF);
-+  }
-+
-   buf = lsx_malloc(header_size = header_size_ul);
- 
-   /* Skip what we have read so far */
--- 
-2.1.0
-
diff --git a/pkgs/applications/misc/audio/sox/0002-More-checks-for-invalid-MS-ADPCM-blocks.patch b/pkgs/applications/misc/audio/sox/0002-More-checks-for-invalid-MS-ADPCM-blocks.patch
deleted file mode 100644
index 72c2d765a94..00000000000
--- a/pkgs/applications/misc/audio/sox/0002-More-checks-for-invalid-MS-ADPCM-blocks.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From ebb64cddde59ecc9cedf3741ce2337c72148cc0c Mon Sep 17 00:00:00 2001
-From: Chris Bagwell <chris@cnpbagwell.com>
-Date: Sat, 13 Dec 2014 12:49:55 -0600
-Subject: [PATCH 2/2] More checks for invalid MS ADPCM blocks.
-
-If block doesn't exacty match blockAlign then do not allow
-number of samples in invalid size block to ever be more than
-what WAV header defined as samplesPerBlock.
----
- src/wav.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/wav.c b/src/wav.c
-index 61d5908..5202556 100644
---- a/src/wav.c
-+++ b/src/wav.c
-@@ -168,7 +168,7 @@ static unsigned short  AdpcmReadBlock(sox_format_t * ft)
-         /* work with partial blocks.  Specs say it should be null */
-         /* padded but I guess this is better than trailing quiet. */
-         samplesThisBlock = lsx_ms_adpcm_samples_in((size_t)0, (size_t)ft->signal.channels, bytesRead, (size_t)0);
--        if (samplesThisBlock == 0)
-+        if (samplesThisBlock == 0 || samplesThisBlock > wav->samplesPerBlock)
-         {
-             lsx_warn("Premature EOF on .wav input file");
-             return 0;
--- 
-2.1.0
-
diff --git a/pkgs/applications/misc/audio/sox/default.nix b/pkgs/applications/misc/audio/sox/default.nix
index 07dbde2939b..b4f01bc642b 100644
--- a/pkgs/applications/misc/audio/sox/default.nix
+++ b/pkgs/applications/misc/audio/sox/default.nix
@@ -6,25 +6,21 @@
 , enableLibogg ? true, libogg ? null, libvorbis ? null
 , enableFLAC ? true, flac ? null
 , enablePNG ? true, libpng ? null
+, enableLibsndfile ? true, libsndfile ? null
+# amrnb and amrwb are unfree, disabled by default
+, enableAMR ? false, amrnb ? null, amrwb ? null
 }:
 
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "sox-14.4.1";
+  name = "sox-14.4.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/sox/${name}.tar.gz";
-    sha256 = "16x8gykfjdhxg0kdxwzcwgwpm5caa08y2mx18siqsq0ywmpjr34s";
+    sha256 = "0v2znlxkxxcd3f48hf3dx9pq7i6fdhb62kgj7wv8xggz8f35jpxl";
   };
 
-  patches = [
-    # Patches for CVE-2014-8145, found via RedHat bug 1174792.  It was not
-    # clear whether these address a NULL deref and a division by zero.
-    ./0001-Check-for-minimum-size-sphere-headers.patch
-    ./0002-More-checks-for-invalid-MS-ADPCM-blocks.patch
-  ];
-
   buildInputs =
     optional (enableAlsa && stdenv.isLinux) alsaLib ++
     optional enableLibao libao ++
@@ -32,13 +28,15 @@ stdenv.mkDerivation rec {
     optional enableLibmad libmad ++
     optionals enableLibogg [ libogg libvorbis ] ++
     optional enableFLAC flac ++
-    optional enablePNG libpng;
+    optional enablePNG libpng ++
+    optional enableLibsndfile libsndfile ++
+    optionals enableAMR [ amrnb amrwb ];
 
   meta = {
     description = "Sample Rate Converter for audio";
     homepage = http://sox.sourceforge.net/;
-    maintainers = [ lib.maintainers.marcweber lib.maintainers.shlevy ];
-    license = lib.licenses.gpl2Plus;
+    maintainers = [ lib.maintainers.marcweber ];
+    license = if enableAMR then lib.licenses.unfree else lib.licenses.gpl2Plus;
     platforms = lib.platforms.linux ++ lib.platforms.darwin;
   };
 }
diff --git a/pkgs/applications/misc/audio/soxr/default.nix b/pkgs/applications/misc/audio/soxr/default.nix
index c1ca0bac119..e8f22a86b2a 100644
--- a/pkgs/applications/misc/audio/soxr/default.nix
+++ b/pkgs/applications/misc/audio/soxr/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, cmake }:
 
 stdenv.mkDerivation rec {
-  name = "soxr-0.1.1";
+  name = "soxr-0.1.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/soxr/${name}-Source.tar.xz";
-    sha256 = "1hmadwqfpg15vhwq9pa1sl5xslibrjpk6hpq2s9hfmx1s5l6ihfw";
+    sha256 = "0xf2w3piwz9gfr1xqyrj4k685q5dy53kq3igv663i4f4y4sg9rjl";
   };
 
   preConfigure = if stdenv.isDarwin then ''
@@ -14,7 +14,8 @@ stdenv.mkDerivation rec {
     export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:"`pwd`/build/src
   '';
 
-  buildInputs = [ cmake (stdenv.cc.cc.lib or null) ];
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ (stdenv.cc.cc.lib or null) ];
   # outputs TODO: gcc.lib might become a problem;
   # here -out/lib/*.a got found and -lib/lib/*.so didn't
 
diff --git a/pkgs/applications/misc/bleachbit/default.nix b/pkgs/applications/misc/bleachbit/default.nix
new file mode 100644
index 00000000000..511455ba6bb
--- /dev/null
+++ b/pkgs/applications/misc/bleachbit/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, pythonPackages, fetchurl }:
+pythonPackages.buildPythonPackage rec {
+  name = "bleachbit-${version}";
+  version = "1.8";
+
+  namePrefix = "";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/bleachbit/bleachbit-1.8.tar.bz2";
+    sha256 = "dbf50fcbf24b8b3dd1c4325cd62352628d089f88a76eab804df5d90c872ee592";
+  };
+
+  buildInputs = [  pythonPackages.wrapPython ];
+
+  doCheck = false;
+
+  postInstall = ''
+    mkdir -p $out/bin
+    cp bleachbit.py $out/bin/bleachbit
+    chmod +x $out/bin/bleachbit
+
+    substituteInPlace $out/bin/bleachbit --replace "#!/usr/bin/env python" "#!${pythonPackages.python.interpreter}"
+  '';
+
+  propagatedBuildInputs = with pythonPackages; [ pygtk sqlite3 ];
+
+  meta = {
+    homepage = "http://bleachbit.sourceforge.net";
+    description = "A program to clean your computer";
+    longDescription = "BleachBit helps you easily clean your computer to free space and maintain privacy.";
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = with stdenv.lib.maintainers; [ leonardoce ];
+  };
+}
diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix
index 5e746716119..bc4c97d1f21 100644
--- a/pkgs/applications/misc/blender/default.nix
+++ b/pkgs/applications/misc/blender/default.nix
@@ -2,30 +2,28 @@
 , ilmbase, libXi, libjpeg, libpng, libsamplerate, libsndfile
 , libtiff, mesa, openal, opencolorio, openexr, openimageio, openjpeg, python
 , zlib, fftw
-, jackaudioSupport ? false, jack2
-, cudaSupport ? false, cudatoolkit65
+, jackaudioSupport ? false, libjack2
+, cudaSupport ? false, cudatoolkit
 , colladaSupport ? true, opencollada
 }:
 
 with lib;
 
 stdenv.mkDerivation rec {
-  name = "blender-2.74";
+  name = "blender-2.75a";
 
   src = fetchurl {
     url = "http://download.blender.org/source/${name}.tar.gz";
-    sha256 = "178i19pz7jl79b4wn92869j6qymawsa0kaw1dxaprbjnqsvcx8qc";
+    sha256 = "09lxb2li70p6fg7hbakin9ffy3b3101c1gdjqi3pykks5q3h9sq4";
   };
 
-  patches = [ ./sm52.patch ];
-
   buildInputs =
     [ SDL boost cmake ffmpeg gettext glew ilmbase libXi
       libjpeg libpng libsamplerate libsndfile libtiff mesa openal
       opencolorio openexr openimageio /* openjpeg */ python zlib fftw
     ]
-    ++ optional jackaudioSupport jack2
-    ++ optional cudaSupport cudatoolkit65
+    ++ optional jackaudioSupport libjack2
+    ++ optional cudaSupport cudatoolkit
     ++ optional colladaSupport opencollada;
 
   postUnpack =
diff --git a/pkgs/applications/misc/blender/sm52.patch b/pkgs/applications/misc/blender/sm52.patch
deleted file mode 100644
index 7cb86c53bdd..00000000000
--- a/pkgs/applications/misc/blender/sm52.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ru -x '*~' blender-2.73a-orig/CMakeLists.txt blender-2.73a/CMakeLists.txt
---- blender-2.73a-orig/CMakeLists.txt	2015-01-21 13:31:24.000000000 +0100
-+++ blender-2.73a/CMakeLists.txt	2015-03-01 23:14:22.962585422 +0100
-@@ -351,7 +351,7 @@
- option(WITH_CYCLES_STANDALONE_GUI	"Build cycles standalone with GUI" OFF)
- option(WITH_CYCLES_OSL				"Build Cycles with OSL support" ${_init_CYCLES_OSL})
- option(WITH_CYCLES_CUDA_BINARIES	"Build cycles CUDA binaries" OFF)
--set(CYCLES_CUDA_BINARIES_ARCH sm_20 sm_21 sm_30 sm_35 sm_50 CACHE STRING "CUDA architectures to build binaries for")
-+set(CYCLES_CUDA_BINARIES_ARCH sm_20 sm_21 sm_30 sm_35 sm_50 sm_52 CACHE STRING "CUDA architectures to build binaries for")
- mark_as_advanced(CYCLES_CUDA_BINARIES_ARCH)
- unset(PLATFORM_DEFAULT)
- option(WITH_CYCLES_LOGGING	"Build cycles with logging support" ON)
diff --git a/pkgs/applications/misc/calcurse/default.nix b/pkgs/applications/misc/calcurse/default.nix
new file mode 100644
index 00000000000..9211ef0ab83
--- /dev/null
+++ b/pkgs/applications/misc/calcurse/default.nix
@@ -0,0 +1,27 @@
+{stdenv, fetchurl, ncurses, gettext}:
+
+stdenv.mkDerivation {
+  name = "calcurse-4.0.0";
+
+  src = fetchurl {
+    url = http://calcurse.org/files/calcurse-4.0.0.tar.gz;
+    sha256 = "0d33cpkbhyidvm3xx6iw9ljqdvl6477c2kcwix3bs63nj0ch06v2";
+  };
+
+  buildInputs = [ncurses gettext];
+
+  meta = {
+    description = "A calendar and scheduling application for the command line";
+    version = "4.0.0";
+    longDescription = ''
+      calcurse is a calendar and scheduling application for the command line. It helps
+      keep track of events, appointments and everyday tasks. A configurable notification
+      system reminds users of upcoming deadlines, the curses based interface can be
+      customized to suit user needs and a very powerful set of command line options can
+      be used to filter and format appointments, making it suitable for use in scripts.
+    '';
+    homepage = http://calcurse.org/;
+    license = stdenv.lib.licenses.bsd2;
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index 991cc65c94d..5bd9bcf5c49 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -1,15 +1,16 @@
-{ stdenv, fetchurl, python, pyqt5, sip_4_16, poppler, pkgconfig, libpng
+{ stdenv, fetchurl, python, pyqt5, sip_4_16, poppler_utils, pkgconfig, libpng
 , imagemagick, libjpeg, fontconfig, podofo, qt5, icu, sqlite
 , pil, makeWrapper, unrar, chmlib, pythonPackages, xz, libusb1, libmtp
 , xdg_utils
 }:
 
 stdenv.mkDerivation rec {
-  name = "calibre-2.26.0";
+  name = "calibre-${version}";
+  version = "2.38.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/calibre/${name}.tar.xz";
-    sha256 = "0340cdxbdwvckmz3zygwx1wbn62wxap0545nsimpfq4ln7dcxrfw";
+    url = "https://github.com/kovidgoyal/calibre/releases/download/v${version}/${name}.tar.xz";
+    sha256 = "075axil53djss99fj9drfh5cvxdbjw6z5z5qk53vm13k5pw6bmhn";
   };
 
   inherit python;
@@ -22,8 +23,8 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ makeWrapper pkgconfig ];
 
   buildInputs =
-    [ python pyqt5 sip_4_16 poppler libpng imagemagick libjpeg
-      fontconfig podofo qt5 pil chmlib icu sqlite libusb1 libmtp xdg_utils
+    [ python pyqt5 sip_4_16 poppler_utils libpng imagemagick libjpeg
+      fontconfig podofo qt5.base pil chmlib icu sqlite libusb1 libmtp xdg_utils
       pythonPackages.mechanize pythonPackages.lxml pythonPackages.dateutil
       pythonPackages.cssutils pythonPackages.beautifulsoup pythonPackages.pillow
       pythonPackages.sqlite3 pythonPackages.netifaces pythonPackages.apsw
@@ -32,8 +33,8 @@ stdenv.mkDerivation rec {
 
   installPhase = ''
     export HOME=$TMPDIR/fakehome
-    export POPPLER_INC_DIR=${poppler}/include/poppler
-    export POPPLER_LIB_DIR=${poppler}/lib
+    export POPPLER_INC_DIR=${poppler_utils}/include/poppler
+    export POPPLER_LIB_DIR=${poppler_utils}/lib
     export MAGICK_INC=${imagemagick}/include/ImageMagick
     export MAGICK_LIB=${imagemagick}/lib
     export FC_INC_DIR=${fontconfig}/include/fontconfig
@@ -53,7 +54,7 @@ stdenv.mkDerivation rec {
     for a in $out/bin/*; do
       wrapProgram $a --prefix PYTHONPATH : $PYTHONPATH \
                      --prefix LD_LIBRARY_PATH : ${unrar}/lib \
-                     --prefix PATH : ${poppler}/bin
+                     --prefix PATH : ${poppler_utils}/bin
     done
   '';
 
diff --git a/pkgs/applications/misc/cherrytree/default.nix b/pkgs/applications/misc/cherrytree/default.nix
index fa5ae99f4fb..97b67a3ae33 100644
--- a/pkgs/applications/misc/cherrytree/default.nix
+++ b/pkgs/applications/misc/cherrytree/default.nix
@@ -1,18 +1,24 @@
 { stdenv, fetchurl, python, pythonPackages, gettext, pygtksourceview, sqlite }:
 
+with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "cherrytree-0.35.7";
+
+  name = "cherrytree-${version}";
+  version = "0.35.9";
 
   src = fetchurl {
     url = "http://www.giuspen.com/software/${name}.tar.xz";
-    sha256 = "03p3bx7skc361rmh0axhm0fa0inmxv4bpa9l566wskb3zq4sy4g3";
+    sha256 = "14yahp0y13z3xkpwvprm7q9x3rj6jbzi0bryqlsn3bbafdq7wnac";
   };
 
-  propagatedBuildInputs = [ pythonPackages.sqlite3 ];
+  propagatedBuildInputs = with pythonPackages;
+  [ sqlite3 ];
 
-  buildInputs = with pythonPackages; [ python gettext wrapPython pygtk dbus pygtksourceview ];
+  buildInputs = with pythonPackages;
+  [ python gettext wrapPython pygtk dbus pygtksourceview ];
 
-  pythonPath = with pythonPackages; [ pygtk dbus pygtksourceview ];
+  pythonPath = with pythonPackages;
+  [ pygtk dbus pygtksourceview ];
 
   patches = [ ./subprocess.patch ];
 
@@ -27,10 +33,21 @@ stdenv.mkDerivation rec {
 
   doCheck = false;
 
-  meta = {
-    description = "A hierarchical note taking application, featuring rich text and syntax highlighting, storing data in a single xml or sqlite file";
+  meta = { 
+    description = "An hierarchical note taking application";
+    longDescription = ''
+      Cherrytree is an hierarchical note taking application,
+      featuring rich text, syntax highlighting and powerful search
+      capabilities. It organizes all information in units called
+      "nodes", as in a tree, and can be very useful to store any piece
+      of information, from tables and links to pictures and even entire
+      documents. All those little bits of information you have scattered
+      around your hard drive can be conveniently placed into a
+      Cherrytree document where you can easily find it.
+    ''; 
     homepage = http://www.giuspen.com/cherrytree;
-    license = stdenv.lib.licenses.gpl3;
-    platforms = with stdenv.lib.platforms; linux;
-  };
+    license = licenses.gpl3;
+    platforms = platforms.linux; 
+    maintainers = [ maintainers.AndersonTorres ]; 
+  }; 
 }
diff --git a/pkgs/applications/misc/chirp/default.nix b/pkgs/applications/misc/chirp/default.nix
new file mode 100644
index 00000000000..2b92dc8d19e
--- /dev/null
+++ b/pkgs/applications/misc/chirp/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, fetchurl, libxml2Python, libxslt, makeWrapper
+, python, pyserial, pygtk
+}:
+let
+  version = "0.4.1";
+in
+stdenv.mkDerivation rec {
+  name = "chirp-${version}";
+  inherit version;
+
+  src = fetchurl {
+    url = "http://chirp.danplanet.com/download/0.4.1/chirp-${version}.tar.gz";
+    sha256 = "17iihghqjprn2hld193qw0yl1kkrf6m0fp57l7ibkflxr0nnb7cc";
+  };
+
+  buildInputs = [
+    makeWrapper
+    pyserial pygtk libxml2Python libxslt pyserial
+  ];
+
+  phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
+
+  installPhase = ''
+    mkdir -p $out/bin $out/share/chirp
+    cp -r . $out/share/chirp/
+    ln -s $out/share/chirp/chirpw $out/bin/chirpw
+
+    for file in "$out"/bin/*; do
+      wrapProgram "$file" \
+        --prefix PYTHONPATH : $PYTHONPATH:$(toPythonPath "$out")
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A free, open-source tool for programming your amateur radio.";
+    homepage = http://chirp.danplanet.com/;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.the-kenny ];
+  };
+}
diff --git a/pkgs/applications/misc/cmatrix/default.nix b/pkgs/applications/misc/cmatrix/default.nix
new file mode 100644
index 00000000000..c7a76ef00a6
--- /dev/null
+++ b/pkgs/applications/misc/cmatrix/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, pkgconfig, ncurses }:
+
+let
+  version = "1.2a";
+in with stdenv.lib;
+stdenv.mkDerivation rec {
+
+  name = "cmatrix-${version}";
+
+  src = fetchurl{
+    url = "http://www.asty.org/cmatrix/dist/${name}.tar.gz";
+    sha256 = "0k06fw2n8nzp1pcdynhajp5prba03gfgsbj91bknyjr5xb5fd9hz";
+  };
+
+  buildInputs = [ pkgconfig ncurses ];
+
+  meta = {
+    description = "Simulates the falling characters theme from The Matrix movie";
+    longDescription = ''
+      CMatrix simulates the display from "The Matrix" and is based
+      on the screensaver from the movie's website.  
+    '';
+    homepage = http://www.asty.org/cmatrix/;
+    platforms = ncurses.meta.platforms;
+    maintainers = [ maintainers.AndersonTorres ];
+  };
+}
diff --git a/pkgs/applications/misc/cool-retro-term/default.nix b/pkgs/applications/misc/cool-retro-term/default.nix
index 455d33860fb..9f97e1eccee 100644
--- a/pkgs/applications/misc/cool-retro-term/default.nix
+++ b/pkgs/applications/misc/cool-retro-term/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, makeWrapper, qt5, qmltermwidget }:
+{ stdenv, fetchgit, makeWrapper, qtbase, qtquick1, qmltermwidget }:
 
 stdenv.mkDerivation rec {
   version = "1.0.0";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     sed -i -e '/qmltermwidget/d' cool-retro-term.pro
   '';
 
-  buildInputs = [ makeWrapper qt5.base qt5.quick1 qmltermwidget ];
+  buildInputs = [ makeWrapper qtbase qtquick1 qmltermwidget ];
 
   configurePhase = "qmake PREFIX=$out";
 
@@ -26,8 +26,7 @@ stdenv.mkDerivation rec {
     mv $out/usr/bin $out/bin
     rmdir $out/usr
 
-    wrapProgram $out/bin/cool-retro-term \
-      --prefix QML2_IMPORT_PATH : "${qmltermwidget}/lib/qml/"
+    wrapQtProgram $out/bin/cool-retro-term
   '';
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/misc/cortex/default.nix b/pkgs/applications/misc/cortex/default.nix
index 79d19f45a25..2aad3b20e22 100644
--- a/pkgs/applications/misc/cortex/default.nix
+++ b/pkgs/applications/misc/cortex/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchgit, python3 }:
 
 stdenv.mkDerivation {
-  name = "cortex";
+  name = "cortex-2014-08-01";
 
   src = fetchgit {
     url = "https://github.com/gglucas/cortex";
diff --git a/pkgs/applications/misc/cura/default.nix b/pkgs/applications/misc/cura/default.nix
index a13004ecd02..a711cc1db87 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 = "15.02.1";
+  version = "15.04";
 in
 stdenv.mkDerivation rec {
   name = "cura-${version}";
 
   src = fetchurl {
     url = "https://github.com/daid/Cura/archive/${version}.tar.gz";
-    sha256 = "18pb31vd9786q522i1i780wpzr6vih9gg9d8k508gh2d5yr4aal6";
+    sha256 = "0xbjvzhp8wzq9lnpmcg1fjf7j5h39bj5463sd5c8jzdjl96izizl";
   };
 
   desktopItem = makeDesktopItem {
diff --git a/pkgs/applications/misc/cura/lulzbot.nix b/pkgs/applications/misc/cura/lulzbot.nix
new file mode 100644
index 00000000000..4d13e62bdfe
--- /dev/null
+++ b/pkgs/applications/misc/cura/lulzbot.nix
@@ -0,0 +1,58 @@
+{ stdenv, fetchurl, dpkg, bash, python27Packages }:
+
+let
+  py = python27Packages;
+in
+stdenv.mkDerivation rec {
+  name = "cura-lulzbot";
+  version = "15.02.1-1.03-5064";
+
+  src =
+    if stdenv.system == "x86_64-linux" then
+      fetchurl {
+        url = "http://download.alephobjects.com/ao/aodeb/dists/jessie/main/binary-amd64/cura_${version}_amd64.deb";
+        sha256 = "1gsfidg3gim5pjbl82vkh0cw4ya253m4p7nirm8nr6yjrsirkzxg";
+      }
+    else if stdenv.system == "i686-linux" then
+      fetchurl {
+        url = "http://download.alephobjects.com/ao/aodeb/dists/jessie/main/binary-i386/cura_${version}_i386.deb";
+        sha256 = "0xd3df6bxq4rijgvsqvps454jkc1nzhxbdzzj6j2w317ppsbhyc1";
+      }
+    else throw "${name} is not supported on ${stdenv.system}";
+
+  python_deps = with py; [ pyopengl pyserial numpy wxPython30 power setuptools ];
+  pythonPath = python_deps;
+  propagatedBuildInputs = python_deps;
+  buildInputs = [ dpkg bash py.wrapPython ];
+
+  phases = [ "unpackPhase" "installPhase" ];
+  unpackPhase = "dpkg-deb -x ${src} ./";
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp -r usr/share $out/share
+    find $out/share -type f -exec sed -i 's|/usr/share/cura|$out/share/cura|g' "{}" \;
+
+    cat <<EOT > $out/bin/cura
+    #!${bash}/bin/bash
+    PYTHONPATH=$PYTHONPATH:$out/share/cura ${py.python}/bin/python $out/share/cura/cura.py "\$@"
+    EOT
+
+    chmod 555 $out/bin/cura
+  '';
+
+  meta = with stdenv.lib; {
+    description = "3D printing host software for the Lulzbot";
+
+     longDescription = ''
+       Cura LulzBot Edition is a fork of the 3D printing/slicing
+       software from Ultimaker, with changes to support 3D printers
+       from Aleph Objects.
+     '';
+
+    homepage = https://www.lulzbot.com/cura/;
+    license = licenses.agpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ pjones ];
+  };
+}
diff --git a/pkgs/applications/misc/curaengine/default.nix b/pkgs/applications/misc/curaengine/default.nix
index bbd94406635..6afd11a555c 100644
--- a/pkgs/applications/misc/curaengine/default.nix
+++ b/pkgs/applications/misc/curaengine/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl }:
 let
-  version = "15.02.1";
+  version = "15.04";
 in
 stdenv.mkDerivation {
   name = "curaengine-${version}";
 
   src = fetchurl {
     url = "https://github.com/Ultimaker/CuraEngine/archive/${version}.tar.gz";
-    sha256 = "18fxh910b66s45757zqh8bm5kdxjgvxispjqknqkwl1nrllzmx53";
+    sha256 = "0rgrsyi7951fsv3lzprlzrg55jf6pbdjfql85dylwmg9nc4y8xym";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/misc/devilspie2/default.nix b/pkgs/applications/misc/devilspie2/default.nix
new file mode 100644
index 00000000000..50ae2b2d15f
--- /dev/null
+++ b/pkgs/applications/misc/devilspie2/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, intltool, pkgconfig, glib, gtk, lua, libwnck3 }:
+
+stdenv.mkDerivation rec {
+  name = "devilspie2-${version}";
+  version = "0.39";
+
+  src = fetchurl {
+    url = "http://download.savannah.gnu.org/releases/devilspie2/devilspie2_0.39-src.tar.gz";
+    sha256 = "07b74ffc078e5f01525d9da7a1978b4c1a9725b814b344f83a1a203cf4caae09";
+  };
+
+  buildInputs = [ intltool pkgconfig glib gtk lua libwnck3 ];
+
+  patchPhase = ''
+    sed -i -e s@/usr/local@$out@ Makefile
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin $out/share/man/man1
+    cp bin/devilspie2 $out/bin
+    cp devilspie2.1 $out/share/man/man1
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Devilspie2 is a window matching utility.";
+    longDescription = ''
+      Devilspie2 is a window matching utility, allowing the user to
+      perform scripted actions on windows as they are created. For
+      example you can script a terminal program to always be
+      positioned at a specific screen position, or position a window
+      on a specific workspace.
+    '';
+    homepage = http://www.gusnan.se/devilspie2/;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.ebzzry ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/dfilemanager/default.nix b/pkgs/applications/misc/dfilemanager/default.nix
new file mode 100644
index 00000000000..ba3bd5f0f0d
--- /dev/null
+++ b/pkgs/applications/misc/dfilemanager/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchgit, cmake, qt5, file, kde5}:
+
+let
+  version = "git-2015-07-25";
+in
+stdenv.mkDerivation rec {
+  name = "dfilemanager-${version}";
+  src = fetchgit {
+    url = "git://git.code.sf.net/p/dfilemanager/code";
+    rev = "99afcde199378eb0d499c49a9e28846c22e27483";
+    sha256 = "1dd21xl24xvxs100j8nzhpaqfqk8srqs92al9c03jmyjlk31s6lf";
+  };
+
+  buildInputs = [ cmake qt5.base qt5.tools qt5.x11extras file kde5.solid];
+
+  cmakeFlags = "-DQT5BUILD=true";
+
+  meta = {
+    homepage = "http://dfilemanager.sourceforge.net/";
+    description = "File manager written in Qt/C++, it does use one library from kdelibs, the solid lib for easy device handling";
+    license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.unix;
+    maintainers = [ stdenv.lib.maintainers.eduarrrd ];
+  };
+}
diff --git a/pkgs/applications/misc/diffpdf/default.nix b/pkgs/applications/misc/diffpdf/default.nix
new file mode 100644
index 00000000000..aefa4f755b8
--- /dev/null
+++ b/pkgs/applications/misc/diffpdf/default.nix
@@ -0,0 +1,55 @@
+{ stdenv, fetchurl, qt4, poppler_qt4 }:
+
+stdenv.mkDerivation rec {
+  version = "2.1.3";
+  name = "diffpdf-${version}";
+
+  src = fetchurl {
+    url = "http://www.qtrac.eu/${name}.tar.gz";
+    sha256 = "0cr468fi0d512jjj23r5flfzx957vibc9c25gwwhi0d773h2w566";
+  };
+
+  patches = [ ./fix_path_poppler_qt4.patch ];
+
+  buildInputs = [ qt4 poppler_qt4 ];
+
+  preBuild = ''
+    substituteInPlace diffpdf.pro --replace @@NIX_POPPLER_QT4@@ ${poppler_qt4}
+    [ -e "*.qm" ] && make clean
+    lrelease diffpdf.pro
+    qmake -makefile PREFIX=\$out
+    '';
+
+  installPhase = ''
+    mkdir -p $out/bin $out/share/man/man1
+
+    install -Dpm755 -D diffpdf $out/bin/diffpdf
+    install -Dpm644 -D diffpdf.1 $out/share/man/man1/diffpdf.1
+
+    install -dpm755 $out/share/doc/${name} $out/share/licenses/${name} $out/share/icons $out/share/pixmaps $out/share/applications
+    install -Dpm644 CHANGES README help.html $out/share/doc/${name}/
+    install -Dpm644 gpl-2.0.txt $out/share/licenses/${name}/
+    install -Dpm644 images/icon.png $out/share/icons/diffpdf.png
+    install -Dpm644 images/icon.png $out/share/pixmaps/diffpdf.png
+
+    cat > $out/share/applications/diffpdf.desktop <<EOF
+    [Desktop Entry]
+    Type=Application
+    Version=1.0
+    Name=diffpdf
+    Icon=diffpdf
+    Comment=PDF diffing tool
+    Exec=$out/bin/diffpdf
+    Terminal=false
+    EOF
+    '';
+
+  meta = {
+    homepage = http://www.qtrac.eu/diffpdfc.html;
+    description = "Tool for diffing pdf files visually or textually";
+    license = stdenv.lib.licenses.gpl2Plus;
+    maintainers = with stdenv.lib.maintainers; [ tstrobel ];
+    platforms = with stdenv.lib.platforms; linux;
+    inherit version;
+  };
+}
diff --git a/pkgs/applications/misc/diffpdf/fix_path_poppler_qt4.patch b/pkgs/applications/misc/diffpdf/fix_path_poppler_qt4.patch
new file mode 100644
index 00000000000..e72cad8b7a2
--- /dev/null
+++ b/pkgs/applications/misc/diffpdf/fix_path_poppler_qt4.patch
@@ -0,0 +1,16 @@
+diff -uNr diffpdf-2.1.3/diffpdf.pro diffpdf-2.1.3-new/diffpdf.pro
+--- diffpdf-2.1.3/diffpdf.pro	2013-10-15 09:01:22.000000000 +0200
++++ diffpdf-2.1.3-new/diffpdf.pro	2015-07-07 23:13:36.445572148 +0200
+@@ -47,9 +47,9 @@
+ 	INCLUDEPATH += /c/poppler_lib/include/poppler/qt4
+ 	LIBS += -Wl,-rpath -Wl,/c/poppler_lib/bin -Wl,-L/c/poppler_lib/bin
+     } else {
+-	exists(/usr/include/poppler/qt4) {
+-	    INCLUDEPATH += /usr/include/poppler/cpp
+-	    INCLUDEPATH += /usr/include/poppler/qt4
++	exists(@@NIX_POPPLER_QT4@@/include/poppler/qt4) {
++	    INCLUDEPATH += @@NIX_POPPLER_QT4@@/include/poppler/cpp
++	    INCLUDEPATH += @@NIX_POPPLER_QT4@@/include/poppler/qt4
+ 	} else {
+ 	    INCLUDEPATH += /usr/local/include/poppler/cpp
+ 	    INCLUDEPATH += /usr/local/include/poppler/qt4
diff --git a/pkgs/applications/misc/direwolf/default.nix b/pkgs/applications/misc/direwolf/default.nix
new file mode 100644
index 00000000000..fc8d0ec36c8
--- /dev/null
+++ b/pkgs/applications/misc/direwolf/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, unzip, alsaLib }:
+let
+  version = "1.2";
+in
+stdenv.mkDerivation rec {
+  name = "direwolf-${version}";
+  inherit version;
+
+  src = fetchurl {
+    url = "http://home.comcast.net/~wb2osz/Version%201.2/direwolf-${version}-src.zip";
+    sha256 = "0csl6harx7gmjmamxy0ylzhbamppphffisk8j33dc6g08k6rc77f";
+  };
+
+  buildInputs = [
+    unzip alsaLib
+  ];
+
+  patchPhase = ''
+    substituteInPlace Makefile.linux \
+      --replace "/usr/local" "$out" \
+      --replace "/usr/share" "$out/share"
+  '';
+
+  preInstall = ''
+    mkdir -p $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A Soundcard Packet TNC, APRS Digipeater, IGate, APRStt gateway.";
+    # On the page: This page will be disappearing on October 8, 2015.
+    homepage = https://home.comcast.net/~wb2osz/site/;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.the-kenny ];
+  };
+}
diff --git a/pkgs/applications/misc/dmenu2/default.nix b/pkgs/applications/misc/dmenu2/default.nix
index 1637586eb47..54aec8606cd 100644
--- a/pkgs/applications/misc/dmenu2/default.nix
+++ b/pkgs/applications/misc/dmenu2/default.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "dmenu2";
+  name = "dmenu2-0.3pre-2014-07-08";
 
   src = fetchhg {
     url = "https://bitbucket.org/melek/dmenu2";
diff --git a/pkgs/applications/misc/dunst/default.nix b/pkgs/applications/misc/dunst/default.nix
index 33371c93b86..c398c3c43d0 100644
--- a/pkgs/applications/misc/dunst/default.nix
+++ b/pkgs/applications/misc/dunst/default.nix
@@ -1,6 +1,7 @@
-{ stdenv, fetchurl, coreutils , unzip, which, pkgconfig , dbus
-, freetype, xdg_utils , libXext, glib, pango , cairo, libX11, libnotify
-, libxdg_basedir , libXScrnSaver, xproto, libXinerama , perl, gdk_pixbuf
+{ stdenv, fetchurl, coreutils, unzip, which, pkgconfig, dbus
+, freetype, xdg_utils, libXext, glib, pango, cairo, libX11, libnotify
+, libxdg_basedir, libXScrnSaver, xproto, libXinerama, perl, gdk_pixbuf
+, dbus_daemon, makeWrapper
 }:
 
 stdenv.mkDerivation rec {
@@ -15,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs =
   [ coreutils unzip which pkgconfig dbus freetype libnotify gdk_pixbuf
     xdg_utils libXext glib pango cairo libX11 libxdg_basedir
-    libXScrnSaver xproto libXinerama perl];
+    libXScrnSaver xproto libXinerama perl dbus_daemon makeWrapper ];
 
   buildPhase = ''
     export VERSION=${version};
@@ -23,6 +24,11 @@ stdenv.mkDerivation rec {
     make dunst;
   '';
 
+  postFixup = ''
+    wrapProgram "$out/bin/dunst" \
+      --prefix PATH : '${dbus_daemon}/bin'
+  '';
+
   meta = {
     description = "lightweight and customizable notification daemon";
     homepage = http://www.knopwob.org/dunst/;
diff --git a/pkgs/applications/misc/eaglemode/default.nix b/pkgs/applications/misc/eaglemode/default.nix
index db613cd4922..4324a33d238 100644
--- a/pkgs/applications/misc/eaglemode/default.nix
+++ b/pkgs/applications/misc/eaglemode/default.nix
@@ -31,11 +31,11 @@ stdenv.mkDerivation rec {
     ln -s $out/eaglemode.sh $out/bin/eaglemode.sh
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = "http://eaglemode.sourceforge.net";
     description = "Zoomable User Interface";
-    license="GPLv3";
-    maintainers = with stdenv.lib.maintainers; [viric];
-    platforms = with stdenv.lib.platforms; linux;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ viric ];
+    platforms = with platforms; linux;
   };
 }
diff --git a/pkgs/applications/misc/electrum/default.nix b/pkgs/applications/misc/electrum/default.nix
index 0f7b85e055b..ed37b0d96bc 100644
--- a/pkgs/applications/misc/electrum/default.nix
+++ b/pkgs/applications/misc/electrum/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   name = "electrum-${version}";
-  version = "2.0.4";
+  version = "2.4.3";
 
   src = fetchurl {
     url = "https://download.electrum.org/Electrum-${version}.tar.gz";
-    sha256 = "0q9vrrzy2iypfg2zvs3glzvqyq65dnwn1ijljvfqfwrkpvpp0zxp";
+    sha256 = "00z02rdlhasryccjsw1j7563xl76i6x40ah1lnn9asad1gp6520f";
   };
 
   propagatedBuildInputs = with pythonPackages; [
@@ -16,6 +16,7 @@ buildPythonPackage rec {
     protobuf
     pyasn1
     pyasn1-modules
+    pycrypto
     pyqt4
     qrcode
     requests
@@ -26,6 +27,7 @@ buildPythonPackage rec {
   preInstall = ''
     mkdir -p $out/share
     sed -i 's@usr_share = .*@usr_share = os.getenv("out")+"/share"@' setup.py
+    pyrcc4 icons.qrc -o gui/qt/icons_rc.py
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/evilvte/default.nix b/pkgs/applications/misc/evilvte/default.nix
index 5921cc308b5..f7a8fe4eafc 100644
--- a/pkgs/applications/misc/evilvte/default.nix
+++ b/pkgs/applications/misc/evilvte/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchgit, makeWrapper, pkgconfig,
-  gnome, glib, pango, cairo, gdk_pixbuf, atk, freetype, xlibs,
+  gnome, glib, pango, cairo, gdk_pixbuf, atk, freetype, xorg,
   configH
 }:
 
@@ -14,8 +14,8 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    gnome.vte glib pango gnome.gtk cairo gdk_pixbuf atk freetype xlibs.libX11
-    xlibs.xproto xlibs.kbproto xlibs.libXext xlibs.xextproto makeWrapper pkgconfig
+    gnome.vte glib pango gnome.gtk cairo gdk_pixbuf atk freetype xorg.libX11
+    xorg.xproto xorg.kbproto xorg.libXext xorg.xextproto makeWrapper pkgconfig
   ];
 
   buildPhase = ''
diff --git a/pkgs/applications/misc/finalterm/default.nix b/pkgs/applications/misc/finalterm/default.nix
index e4b0675aa94..c8e8bb01e5d 100644
--- a/pkgs/applications/misc/finalterm/default.nix
+++ b/pkgs/applications/misc/finalterm/default.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, fetchgit, makeWrapper
 , pkgconfig, cmake, libxml2, vala, intltool, libmx, gnome3, gtk3, gtk_doc
 , keybinder3, clutter_gtk, libnotify
-, libxkbcommon, xlibs, udev
+, libxkbcommon, xorg, udev
 , bashInteractive
 }:
 
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
   buildInputs = [
     pkgconfig cmake vala intltool gtk3 gnome3.gnome_common gnome3.libgee
     gtk_doc clutter_gtk libmx keybinder3 libxml2 libnotify makeWrapper
-    xlibs.libpthreadstubs xlibs.libXdmcp xlibs.libxshmfence
+    xorg.libpthreadstubs xorg.libXdmcp xorg.libxshmfence
     libxkbcommon
   ] ++ lib.optionals stdenv.isLinux [
     udev
@@ -41,7 +41,7 @@ stdenv.mkDerivation {
     wrapProgram "$out/bin/finalterm" \
       --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
       --prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules" \
-      --prefix XDG_DATA_DIRS : "${gnome3.gnome_icon_theme}/share:${gnome3.gtk}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
+      --prefix XDG_DATA_DIRS : "${gnome3.defaultIconTheme}/share:${gnome3.gtk}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/misc/freemind/default.nix b/pkgs/applications/misc/freemind/default.nix
index f67138e66a7..eeb269e580c 100644
--- a/pkgs/applications/misc/freemind/default.nix
+++ b/pkgs/applications/misc/freemind/default.nix
@@ -1,51 +1,42 @@
-{ stdenv, fetchurl, jdk, jre, ant, coreutils, gnugrep }:
+{ stdenv, fetchurl, jdk, jre, ant }:
 
-stdenv.mkDerivation {
-  name = "freemind-0.9.0";
+stdenv.mkDerivation rec {
+  name = "freemind-${version}";
+  version = "1.0.1";
 
   src = fetchurl {
-    url = mirror://sourceforge/freemind/freemind-src-0.9.0.tar.gz;
-    sha256 = "1qd535gwx00d8z56mplxli5529yds2gsmbgla5b0bhhmsdwmrxmf";
+    url = "mirror://sourceforge/freemind/freemind-src-${version}.tar.gz";
+    sha256 = "06c6pm7hpwh9hbmyah3lj2wp1g957x8znfwc5cwygsi7dc98b0h1";
   };
 
   buildInputs = [ jdk ant ];
 
-  phases = "unpackPhase patchPhase buildPhase installPhase";
+  preConfigure = ''
+    chmod +x check_for_duplicate_resources.sh
+    sed 's,/bin/bash,${stdenv.shell},' -i check_for_duplicate_resources.sh
 
-  patchPhase = ''
-    # There is a complain about this. I don't understand it.
-    mkdir plugins/plugins
+    ## work around javac encoding errors
+    export JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF8"
   '';
 
-  buildPhase="ant dist";
-  
-  # LIBXCB_ALLOW_SLOPPY_LOCK=true :
-  # don't know yet what this option really means but I'm no longer getting
-  #   Checking Java Version...
-  #   Locking assertion failure.  Backtrace:
-  #   java: xcb_xlib.c:82: xcb_xlib_unlock: Assertion `c->xlib.lock' failed
-  # this way
-  # reference and more info https://bugs.launchpad.net/ubuntu/+source/sun-java5/+bug/86103
-  # JDK 7 beta seems to have fixed this (bug ?)
+  buildPhase = "ant dist";
 
   installPhase = ''
     mkdir -p $out/{bin,nix-support}
     cp -r ../bin/dist $out/nix-support
     sed -i 's/which/type -p/' $out/nix-support/dist/freemind.sh
-    cat > $out/bin/freemind << EOF
-    #!/bin/sh
-    export PATH=${coreutils}/bin:${gnugrep}/bin:"$PATH"
-    export JAVA_HOME="${jre}"
-    export LIBXCB_ALLOW_SLOPPY_LOCK=true
-    $out/nix-support/dist/freemind.sh
-    EOF
 
+    cat >$out/bin/freemind <<EOF
+    #! /bin/sh
+    JAVA_HOME=${jre} $out/nix-support/dist/freemind.sh
+    EOF
     chmod +x $out/{bin/freemind,nix-support/dist/freemind.sh}
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Mind-mapping software";
     homepage = http://freemind.sourceforge.net/wiki/index.php/Main_Page;
-    license = "GPL";
-  }; 
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+  };
 }
diff --git a/pkgs/applications/misc/girara/default.nix b/pkgs/applications/misc/girara/default.nix
index c7c110a978a..e91e94695f5 100644
--- a/pkgs/applications/misc/girara/default.nix
+++ b/pkgs/applications/misc/girara/default.nix
@@ -5,11 +5,11 @@ assert withBuildColors -> ncurses != null;
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "girara-${version}";
-  version = "0.2.3";
+  version = "0.2.4";
 
   src = fetchurl {
     url = "http://pwmt.org/projects/girara/download/${name}.tar.gz";
-    sha256 = "1phfmqp8y17zcy9yi6pm2f80x8ldbk60iswpm4bmjz5217jwqzxh";
+    sha256 = "0pnfdsg435b5vc4x8l9pgm77aj7ram1q0bzrp9g4a3bh1r64xq1f";
   };
 
   preConfigure = ''
diff --git a/pkgs/applications/misc/gnuradio-osmosdr/default.nix b/pkgs/applications/misc/gnuradio-osmosdr/default.nix
index ec48a9da92f..5fc6eb2c274 100644
--- a/pkgs/applications/misc/gnuradio-osmosdr/default.nix
+++ b/pkgs/applications/misc/gnuradio-osmosdr/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchgit, cmake, pkgconfig, boost, gnuradio, rtl-sdr, uhd
-, makeWrapper
+, makeWrapper, hackrf
 , pythonSupport ? true, python, swig
 }:
 
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    cmake pkgconfig boost gnuradio rtl-sdr uhd makeWrapper
+    cmake pkgconfig boost gnuradio rtl-sdr uhd makeWrapper hackrf
   ] ++ stdenv.lib.optionals pythonSupport [ python swig ];
 
   postInstall = ''
@@ -30,6 +30,6 @@ stdenv.mkDerivation rec {
     homepage = http://sdr.osmocom.org/trac/wiki/GrOsmoSDR;
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
-    maintainers = [ maintainers.bjornfor ];
+    maintainers = with maintainers; [ bjornfor the-kenny ];
   };
 }
diff --git a/pkgs/applications/misc/gnuradio/default.nix b/pkgs/applications/misc/gnuradio/default.nix
index 888d39c3732..a5cc1ae0932 100644
--- a/pkgs/applications/misc/gnuradio/default.nix
+++ b/pkgs/applications/misc/gnuradio/default.nix
@@ -23,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   name = "gnuradio-${version}";
-  version = "3.7.5.1";
+  version = "3.7.7.1";
 
   src = fetchurl {
     url = "http://gnuradio.org/releases/gnuradio/${name}.tar.gz";
-    sha256 = "0gg4i8s1z5pcfk8d7n7baxv3lx2cjcizimvbziraj27lcbvpmwar";
+    sha256 = "0kjqav1rdyi60vq85djmigyrgh606ga625icwj15iarlqwzv29rb";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/gnuradio/wrapper.nix b/pkgs/applications/misc/gnuradio/wrapper.nix
new file mode 100644
index 00000000000..cc8dbde273b
--- /dev/null
+++ b/pkgs/applications/misc/gnuradio/wrapper.nix
@@ -0,0 +1,23 @@
+{ stdenv, gnuradio, makeWrapper, python
+, extraPackages ? [] }:
+
+with stdenv.lib;
+
+stdenv.mkDerivation {
+  name = (appendToName "with-packages" gnuradio).name;
+  buildInputs = [ makeWrapper python ];
+
+  buildCommand = ''
+    mkdir -p $out/bin
+    ln -s "${gnuradio}"/bin/* $out/bin/
+
+    for file in "$out"/bin/*; do
+        wrapProgram "$file" \
+            --prefix PYTHONPATH : ${stdenv.lib.concatStringsSep ":"
+                                      (map (path: "$(toPythonPath ${path})") extraPackages)} \
+            --prefix GRC_BLOCKS_PATH : ${makeSearchPath "share/gnuradio/grc/blocks" extraPackages}
+    done
+
+  '';
+  inherit (gnuradio) meta;
+}
diff --git a/pkgs/applications/misc/goldendict/default.nix b/pkgs/applications/misc/goldendict/default.nix
index 717d0a012a2..32a16e79c21 100644
--- a/pkgs/applications/misc/goldendict/default.nix
+++ b/pkgs/applications/misc/goldendict/default.nix
@@ -1,24 +1,16 @@
-{ stdenv, fetchurl, pkgconfig, qt4, libXtst, libvorbis, phonon, hunspell }:
+{ stdenv, fetchFromGitHub, pkgconfig, qt4, libXtst, libvorbis, hunspell, libao, ffmpeg, libeb, lzo, xz, libtiff }:
 stdenv.mkDerivation rec {
-  name = "goldendict-1.0.1";
-  src = fetchurl {
-    url = "mirror://sourceforge/goldendict/${name}-src.tar.bz2";
-    sha256 = "19p99dd5jgs0k66sy30vck7ymqj6dv1lh6w8xw18zczdll2h9yxk";
+  name = "goldendict-1.5.0.20150801";
+  src = fetchFromGitHub {
+    owner = "goldendict";
+    repo = "goldendict";
+    rev = "b4bb1e9635c764aa602fbeaeee661f35e461d062";
+    sha256 = "0dhaa0nii226541al3i2d8x8h7cfh96w5vkw3pa3l74llgrj7yx2";
   };
-  buildInputs = [ pkgconfig qt4 libXtst libvorbis phonon hunspell ];
-  unpackPhase = ''
-    mkdir ${name}-src
-    cd ${name}-src
-    tar xf ${src}
-  '';
-  patches = [ ./goldendict-paths.diff ./gcc47.patch ];
-  patchFlags = "-p 0";
+
+  buildInputs = [ pkgconfig qt4 libXtst libvorbis hunspell libao ffmpeg libeb lzo xz libtiff ];
   configurePhase = ''
-    qmake
-  '';
-  installPhase = ''
-    make INSTALL_ROOT="$out" install
-    rm -rf "$out/share/app-install"
+    qmake PREFIX=$out 'CONFIG+=zim_support'
   '';
 
   meta = {
diff --git a/pkgs/applications/misc/goldendict/gcc47.patch b/pkgs/applications/misc/goldendict/gcc47.patch
deleted file mode 100644
index 311dad4f648..00000000000
--- a/pkgs/applications/misc/goldendict/gcc47.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From b00d081da20b9a6b257573c6b23a6bc640c4dab1 Mon Sep 17 00:00:00 2001
-From: Michael Palimaka <kensington@gentoo.org>
-Date: Fri, 20 Jul 2012 03:27:38 +1000
-Subject: [PATCH] Fix build with GCC 4.7 by adding missing includes.
-
----
- processwrapper.cc                       | 4 ++++
- qtsingleapplication/src/qtlocalpeer.cpp | 1 +
- 2 files changed, 5 insertions(+)
-
-diff --git processwrapper.cc processwrapper.cc
-index f7f3f19..86b985d 100644
---- processwrapper.cc
-+++ processwrapper.cc
-@@ -2,6 +2,10 @@
- 

- #include <QtCore>

- 

-+#if defined(Q_OS_UNIX)

-+#include <unistd.h>

-+#endif

-+

- #ifdef Q_OS_WIN32

- 

- #include <windows.h>

-diff --git qtsingleapplication/src/qtlocalpeer.cpp qtsingleapplication/src/qtlocalpeer.cpp
-index 382d182..506c142 100644
---- qtsingleapplication/src/qtlocalpeer.cpp
-+++ qtsingleapplication/src/qtlocalpeer.cpp
-@@ -50,6 +50,7 @@ static PProcessIdToSessionId pProcessIdToSessionId = 0;
- #endif
- #if defined(Q_OS_UNIX)
- #include <time.h>
-+#include <unistd.h>
- #endif
- 
- namespace QtLP_Private {
--- 
-1.7.11.1
-
diff --git a/pkgs/applications/misc/goldendict/goldendict-paths.diff b/pkgs/applications/misc/goldendict/goldendict-paths.diff
deleted file mode 100644
index 6682911dbe4..00000000000
--- a/pkgs/applications/misc/goldendict/goldendict-paths.diff
+++ /dev/null
@@ -1,10 +0,0 @@
---- goldendict.pro~	2010-12-27 22:52:21.000000000 +0100
-+++ goldendict.pro	2010-12-27 22:52:21.000000000 +0100
-@@ -63,2 +63,2 @@
--    isEmpty( PREFIX ):PREFIX = /usr/local
--    DEFINES += PROGRAM_DATA_DIR=\\\"$$PREFIX/share/apps/goldendict/\\\"
-+    isEmpty( PREFIX ):PREFIX = /
-+    DEFINES += PROGRAM_DATA_DIR=\\\"$$PREFIX/share/goldendict/\\\"
-@@ -66 +66 @@
--    locale.path = $$PREFIX/share/apps/goldendict/locale/
-+    locale.path = $$PREFIX/share/goldendict/locale/
diff --git a/pkgs/applications/misc/gpa/default.nix b/pkgs/applications/misc/gpa/default.nix
index 3e737544d18..10b8065c623 100644
--- a/pkgs/applications/misc/gpa/default.nix
+++ b/pkgs/applications/misc/gpa/default.nix
@@ -1,12 +1,11 @@
 { stdenv, fetchurl, intltool, pkgconfig, gtk, gpgme, libgpgerror, libassuan }:
 
 stdenv.mkDerivation rec {
-  
-  name = "gpa-0.9.7";
+  name = "gpa-0.9.9";
 
   src = fetchurl {
     url = "mirror://gnupg/gpa/${name}.tar.bz2";
-    sha256 = "1r8pnvfw66b2m9lhajlarbxx9172c1gzripdij01bawgbrhwp33y";
+    sha256 = "0d235hcqai7m3qb7m9kvr2r4qg4714f87j9fdplwrlz1p4wdfa38";
   };
 
   buildInputs = [ intltool pkgconfig gtk gpgme libgpgerror libassuan ];
diff --git a/pkgs/applications/misc/gphoto2/gphotofs.nix b/pkgs/applications/misc/gphoto2/gphotofs.nix
index 32c95ec147b..1e6d924b63a 100644
--- a/pkgs/applications/misc/gphoto2/gphotofs.nix
+++ b/pkgs/applications/misc/gphoto2/gphotofs.nix
@@ -1,4 +1,4 @@
-a :
+a @ { libgphoto2, fuse, pkgconfig, glib, libtool, ... } :
 let
   fetchurl = a.fetchurl;
   s = import ./src-info-for-gphotofs.nix;
diff --git a/pkgs/applications/misc/gqrx/default.nix b/pkgs/applications/misc/gqrx/default.nix
index 169331ceb73..d3e61da4fab 100644
--- a/pkgs/applications/misc/gqrx/default.nix
+++ b/pkgs/applications/misc/gqrx/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, qt4, gnuradio, boost, gnuradio-osmosdr
 # drivers (optional):
-, rtl-sdr
-, pulseaudioSupport ? true, pulseaudio
+, rtl-sdr, hackrf
+, pulseaudioSupport ? true, libpulseaudio
 }:
 
-assert pulseaudioSupport -> pulseaudio != null;
+assert pulseaudioSupport -> libpulseaudio != null;
 
 stdenv.mkDerivation rec {
   name = "gqrx-${version}";
@@ -16,8 +16,8 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    qt4 gnuradio boost gnuradio-osmosdr rtl-sdr
-  ] ++ stdenv.lib.optionals pulseaudioSupport [ pulseaudio ];
+    qt4 gnuradio boost gnuradio-osmosdr rtl-sdr hackrf
+  ] ++ stdenv.lib.optionals pulseaudioSupport [ libpulseaudio ];
 
   configurePhase = ''qmake PREFIX="$out"'';
 
@@ -42,6 +42,6 @@ stdenv.mkDerivation rec {
     # it's currently unknown which version of the BSD license that is.
     license = licenses.gpl3Plus;
     platforms = platforms.linux;  # should work on Darwin / OS X too
-    maintainers = [ maintainers.bjornfor ];
+    maintainers = with maintainers; [ bjornfor the-kenny ];
   };
 }
diff --git a/pkgs/applications/misc/grass/default.nix b/pkgs/applications/misc/grass/default.nix
index 9875b3abf01..5ff14458840 100644
--- a/pkgs/applications/misc/grass/default.nix
+++ b/pkgs/applications/misc/grass/default.nix
@@ -1,4 +1,11 @@
-{ config, ... }@a:
+{ config, libXmu, libXext, libXp, libX11, libXt, libSM, libICE, libXpm
+   , libXaw, libXrender
+  , composableDerivation, stdenv, fetchurl
+   , lib, flex, bison, cairo, fontconfig
+   , gdal, zlib, ncurses, gdbm, proj, pkgconfig, swig
+   , blas, liblapack, libjpeg, libpng, mysql, unixODBC, mesa, postgresql, python
+   , readline, sqlite, tcl, tk, libtiff, freetype, makeWrapper, wxGTK, ffmpeg, fftw
+   , wxPython, motif, opendwg }@a:
 
 # You can set gui by exporting GRASS_GUI=..
 # see http://grass.itc.it/gdp/html_grass64/g.gui.html
@@ -28,7 +35,7 @@ a.composableDerivation.composableDerivation {} (fix: {
   name = "grass-6.4.0RC6";
 
   buildInputs = [
-    # gentoos package depends on gmath ? 
+    # gentoos package depends on gmath ?
     a.pkgconfig
     a.flex a.bison a.libXmu a.libXext a.libXp a.libX11 a.libXt a.libSM a.libICE
     a.libXpm a.libXaw a.flex a.bison a.gdbm
@@ -72,7 +79,7 @@ a.composableDerivation.composableDerivation {} (fix: {
       configureFlags = [ "--with-python=${a.python}/bin/python-config" ];
       buildInputs = [a.python a.swig];
     };
-    
+
   }
   // edf { name = "_64bit"; feat = "64bit"; }
   // wwfp a.ncurses { name = "curses"; }
@@ -119,7 +126,7 @@ a.composableDerivation.composableDerivation {} (fix: {
   // wwfp a.unixODBC { name = "odbc"; }
   // wwfp a.fftw { name = "fftw"; }
   // wwf {
-    name = "blas"; 
+    name = "blas";
     enable.configureFlags = [ "--with-blas-libs=${a.blas}/lib" ];
   }
   // wwf {
@@ -176,7 +183,7 @@ a.composableDerivation.composableDerivation {} (fix: {
   meta = {
     description = "free Geographic Information System (GIS) software used for geospatial data management and analysis, image processing, graphics/maps production, spatial modeling, and visualization";
     homepage = http://grass.itc.it/index.php;
-    license = [ "GPL" ];
+    license = "GPL";
     broken = true;
   };
 
diff --git a/pkgs/applications/misc/gxmessage/default.nix b/pkgs/applications/misc/gxmessage/default.nix
new file mode 100644
index 00000000000..ce8109717d4
--- /dev/null
+++ b/pkgs/applications/misc/gxmessage/default.nix
@@ -0,0 +1,20 @@
+{stdenv, fetchurl, gnome3, intltool, pkgconfig, texinfo}:
+
+stdenv.mkDerivation rec {
+  name = "gxmessage-${version}";
+  version = "3.4.3";
+
+  src = fetchurl {
+    url = "http://homepages.ihug.co.nz/~trmusson/stuff/${name}.tar.gz";
+    sha256 = "db4e1655fc58f31e5770a17dfca4e6c89028ad8b2c8e043febc87a0beedeef05";
+  };
+
+  buildInputs = [ intltool gnome3.gtk pkgconfig texinfo ];
+  meta = {
+    description = "a GTK enabled dropin replacement for xmessage";
+    homepage = "http://homepages.ihug.co.nz/~trmusson/programs.html#gxmessage";
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = with stdenv.lib.maintainers; [jfb];
+    platforms = with stdenv.lib.platforms; linux;
+  };
+}
diff --git a/pkgs/applications/misc/hackrf/default.nix b/pkgs/applications/misc/hackrf/default.nix
new file mode 100644
index 00000000000..b815884a29c
--- /dev/null
+++ b/pkgs/applications/misc/hackrf/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchgit, cmake, pkgconfig, libusb }:
+
+stdenv.mkDerivation rec {
+  name = "hackrf-${version}";
+  version = "2015.07.2";
+
+  src = fetchgit {
+    url = "git://github.com/mossmann/hackrf";
+    rev = "refs/tags/v${version}";
+    sha256 = "0wa4m0kdq8q2ib724w8ry8shmmm1liaaawhjygrjx6zxz9jxr3vm";
+  };
+
+  buildInputs = [
+    cmake pkgconfig libusb
+  ];
+  
+  preConfigure = ''
+    cd host  
+  '';
+  
+  meta = with stdenv.lib; {
+    description = "An open source SDR platform";
+    homepage = http://greatscottgadgets.com/hackrf/;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ sjmackenzie the-kenny ];
+  };
+}
diff --git a/pkgs/applications/misc/hamster-time-tracker/default.nix b/pkgs/applications/misc/hamster-time-tracker/default.nix
new file mode 100644
index 00000000000..3a94456e6cc
--- /dev/null
+++ b/pkgs/applications/misc/hamster-time-tracker/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchzip, buildPythonPackage, docbook2x, libxslt, gnome_doc_utils
+, intltool, dbus_glib, pygobject, pygtk, pyxdg, gnome_python, dbus, sqlite3
+}:
+
+# TODO: Add optional dependency 'wnck', for "workspace tracking" support. Fixes
+# this message:
+#
+#   WARNING:root:Could not import wnck - workspace tracking will be disabled
+
+buildPythonPackage rec {
+  name = "hamster-time-tracker-1.04";
+  namePrefix = "";
+
+  src = fetchzip {
+    name = "${name}-src";
+    url = "https://github.com/projecthamster/hamster/archive/${name}.tar.gz";
+    sha256 = "1a85rcg561792kdyv744cgzw7mmpmgv6d6li1sijfdpqa1ninf8g";
+  };
+
+  buildInputs = [ docbook2x libxslt gnome_doc_utils intltool dbus_glib ];
+
+  propagatedBuildInputs = [ pygobject pygtk pyxdg gnome_python dbus sqlite3 ];
+
+  configurePhase = ''
+    python waf configure --prefix="$out"
+  '';
+  
+  buildPhase = ''
+    python waf build
+  '';
+
+  installPhase = ''
+    python waf install
+  '';
+
+  # error: invalid command 'test'
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "Time tracking application";
+    homepage = https://projecthamster.wordpress.com/;
+    license = licenses.gpl3;
+    platforms = platforms.all;
+    maintainers = [ maintainers.bjornfor ];
+  };
+}
diff --git a/pkgs/applications/misc/hello/ex-2/default.nix b/pkgs/applications/misc/hello/default.nix
index 8a31c591b29..bf63df4d154 100644
--- a/pkgs/applications/misc/hello/ex-2/default.nix
+++ b/pkgs/applications/misc/hello/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i";
   };
 
-  doCheck = true;
+  doCheck = false;
 
   meta = {
     description = "A program that produces a familiar, friendly greeting";
diff --git a/pkgs/applications/misc/hello/ex-1/builder.sh b/pkgs/applications/misc/hello/ex-1/builder.sh
deleted file mode 100644
index 08bba946cce..00000000000
--- a/pkgs/applications/misc/hello/ex-1/builder.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-source $stdenv/setup
-
-PATH=$perl/bin:$PATH
-
-tar xvfz $src
-cd hello-*
-./configure --prefix=$out
-make
-make install
diff --git a/pkgs/applications/misc/hello/ex-1/default.nix b/pkgs/applications/misc/hello/ex-1/default.nix
deleted file mode 100644
index 51b2ccb58ed..00000000000
--- a/pkgs/applications/misc/hello/ex-1/default.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{stdenv, fetchurl, perl}:
-
-stdenv.mkDerivation {
-  name = "hello-2.1.1";
-  builder = ./builder.sh;
-  src = fetchurl {
-    url = mirror://gnu/hello/hello-2.1.1.tar.gz;
-    md5 = "70c9ccf9fac07f762c24f2df2290784d";
-  };
-  inherit perl;
-
-  meta = {
-    description = "GNU Hello, a classic computer science tool";
-    homepage = http://www.gnu.org/software/hello/;
-  };
-}
diff --git a/pkgs/applications/misc/hstr/default.nix b/pkgs/applications/misc/hstr/default.nix
index f4d4af0e12d..bf2fd97f26e 100644
--- a/pkgs/applications/misc/hstr/default.nix
+++ b/pkgs/applications/misc/hstr/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, readline, ncurses }:
 
 let
-  version = "1.16";
+  version = "1.17";
 in
 stdenv.mkDerivation rec {
 
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/dvorka/hstr/releases/download/${version}/hh-${version}-src.tgz";
-    sha256 = "1hl3fn6kravx5gsdsr0l824vnkj5aiz0dybhd3ak932v95b5knyg";
+    sha256 = "0vjc4d8cl3sfbv9lywdpd2slffqyp3cpj52yp29g9lr2n3nfksk8";
   };
 
   buildInputs = [ readline ncurses ];
diff --git a/pkgs/applications/misc/ikiwiki/default.nix b/pkgs/applications/misc/ikiwiki/default.nix
index a076a2bb7cf..1f78355ca3a 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.20150107";
+  version = "3.20150614";
 
   lib = stdenv.lib;
 in
@@ -31,8 +31,8 @@ stdenv.mkDerivation {
   name = "${name}-${version}";
 
   src = fetchurl {
-    url = "https://github.com/joeyh/ikiwiki/archive/debian/${version}.tar.gz";
-    sha256 = "12kiqjxrh93gysdp7bhglnks2md9davl8jgzqlj0m8xs5rf1972n";
+    url = "http://ftp.de.debian.org/debian/pool/main/i/ikiwiki/${name}_${version}.tar.gz";
+    sha256 = "0sbs58d7faap1wp2rv7kf3gy3hid1hcpspgqs9wwms2qcki9kwa2";
   };
 
   buildInputs = [ perl TextMarkdown URI HTMLParser HTMLScrubber HTMLTemplate
diff --git a/pkgs/applications/misc/jekyll/Gemfile b/pkgs/applications/misc/jekyll/Gemfile
new file mode 100644
index 00000000000..0a5688503ca
--- /dev/null
+++ b/pkgs/applications/misc/jekyll/Gemfile
@@ -0,0 +1,5 @@
+source "https://rubygems.org"
+
+gem 'jekyll'
+gem 'rdiscount'
+gem 'RedCloth'
diff --git a/pkgs/applications/misc/jekyll/Gemfile.lock b/pkgs/applications/misc/jekyll/Gemfile.lock
new file mode 100644
index 00000000000..ec81bc703c6
--- /dev/null
+++ b/pkgs/applications/misc/jekyll/Gemfile.lock
@@ -0,0 +1,77 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    RedCloth (4.2.9)
+    blankslate (2.1.2.4)
+    celluloid (0.16.0)
+      timers (~> 4.0.0)
+    classifier-reborn (2.0.3)
+      fast-stemmer (~> 1.0)
+    coffee-script (2.4.1)
+      coffee-script-source
+      execjs
+    coffee-script-source (1.9.1.1)
+    colorator (0.1)
+    execjs (2.5.2)
+    fast-stemmer (1.0.2)
+    ffi (1.9.8)
+    hitimes (1.2.2)
+    jekyll (2.5.3)
+      classifier-reborn (~> 2.0)
+      colorator (~> 0.1)
+      jekyll-coffeescript (~> 1.0)
+      jekyll-gist (~> 1.0)
+      jekyll-paginate (~> 1.0)
+      jekyll-sass-converter (~> 1.0)
+      jekyll-watch (~> 1.1)
+      kramdown (~> 1.3)
+      liquid (~> 2.6.1)
+      mercenary (~> 0.3.3)
+      pygments.rb (~> 0.6.0)
+      redcarpet (~> 3.1)
+      safe_yaml (~> 1.0)
+      toml (~> 0.1.0)
+    jekyll-coffeescript (1.0.1)
+      coffee-script (~> 2.2)
+    jekyll-gist (1.2.1)
+    jekyll-paginate (1.1.0)
+    jekyll-sass-converter (1.3.0)
+      sass (~> 3.2)
+    jekyll-watch (1.2.1)
+      listen (~> 2.7)
+    kramdown (1.7.0)
+    liquid (2.6.2)
+    listen (2.10.0)
+      celluloid (~> 0.16.0)
+      rb-fsevent (>= 0.9.3)
+      rb-inotify (>= 0.9)
+    mercenary (0.3.5)
+    parslet (1.5.0)
+      blankslate (~> 2.0)
+    posix-spawn (0.3.11)
+    pygments.rb (0.6.3)
+      posix-spawn (~> 0.3.6)
+      yajl-ruby (~> 1.2.0)
+    rb-fsevent (0.9.4)
+    rb-inotify (0.9.5)
+      ffi (>= 0.5.0)
+    rdiscount (2.1.8)
+    redcarpet (3.2.3)
+    safe_yaml (1.0.4)
+    sass (3.4.13)
+    timers (4.0.1)
+      hitimes
+    toml (0.1.2)
+      parslet (~> 1.5.0)
+    yajl-ruby (1.2.1)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  RedCloth
+  jekyll
+  rdiscount
+
+BUNDLED WITH
+   1.10.6
diff --git a/pkgs/applications/misc/jekyll/default.nix b/pkgs/applications/misc/jekyll/default.nix
new file mode 100644
index 00000000000..5e9505e9f32
--- /dev/null
+++ b/pkgs/applications/misc/jekyll/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, lib, bundlerEnv, ruby_2_1, curl }:
+
+bundlerEnv {
+  name = "jekyll-2.5.3";
+
+  ruby = ruby_2_1;
+  gemfile = ./Gemfile;
+  lockfile = ./Gemfile.lock;
+  gemset = ./gemset.nix;
+
+  buildInputs = [ curl ];
+
+  meta = with lib; {
+    description = "Simple, blog aware, static site generator";
+    homepage    =  http://jekyllrb.com/;
+    license     = licenses.mit;
+    maintainers = with maintainers; [ pesterhazy ];
+    platforms   = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/misc/jekyll/gemset.nix b/pkgs/applications/misc/jekyll/gemset.nix
new file mode 100644
index 00000000000..f6ad34fcad9
--- /dev/null
+++ b/pkgs/applications/misc/jekyll/gemset.nix
@@ -0,0 +1,289 @@
+{
+  "RedCloth" = {
+    version = "4.2.9";
+    source = {
+      type = "gem";
+      sha256 = "06pahxyrckhgb7alsxwhhlx1ib2xsx33793finj01jk8i054bkxl";
+    };
+  };
+  "blankslate" = {
+    version = "2.1.2.4";
+    source = {
+      type = "gem";
+      sha256 = "0jnnq5q5dwy2rbfcl769vd9bk1yn0242f6yjlb9mnqdm9627cdcx";
+    };
+  };
+  "celluloid" = {
+    version = "0.16.0";
+    source = {
+      type = "gem";
+      sha256 = "044xk0y7i1xjafzv7blzj5r56s7zr8nzb619arkrl390mf19jxv3";
+    };
+    dependencies = [
+      "timers"
+    ];
+  };
+  "classifier-reborn" = {
+    version = "2.0.3";
+    source = {
+      type = "gem";
+      sha256 = "0vca8jl7nbgzyb7zlvnq9cqgabwjdl59jqlpfkwzv6znkri7cpby";
+    };
+    dependencies = [
+      "fast-stemmer"
+    ];
+  };
+  "coffee-script" = {
+    version = "2.4.1";
+    source = {
+      type = "gem";
+      sha256 = "0rc7scyk7mnpfxqv5yy4y5q1hx3i7q3ahplcp4bq2g5r24g2izl2";
+    };
+    dependencies = [
+      "coffee-script-source"
+      "execjs"
+    ];
+  };
+  "coffee-script-source" = {
+    version = "1.9.1.1";
+    source = {
+      type = "gem";
+      sha256 = "1arfrwyzw4sn7nnaq8jji5sv855rp4c5pvmzkabbdgca0w1cxfq5";
+    };
+  };
+  "colorator" = {
+    version = "0.1";
+    source = {
+      type = "gem";
+      sha256 = "09zp15hyd9wlbgf1kmrf4rnry8cpvh1h9fj7afarlqcy4hrfdpvs";
+    };
+  };
+  "execjs" = {
+    version = "2.5.2";
+    source = {
+      type = "gem";
+      sha256 = "0y2193yhcyz9f97m7g3wanvwzdjb08sllrj1g84sgn848j12vyl0";
+    };
+  };
+  "fast-stemmer" = {
+    version = "1.0.2";
+    source = {
+      type = "gem";
+      sha256 = "0688clyk4xxh3kdb18vi089k90mca8ji5fwaknh3da5wrzcrzanh";
+    };
+  };
+  "ffi" = {
+    version = "1.9.8";
+    source = {
+      type = "gem";
+      sha256 = "0ph098bv92rn5wl6rn2hwb4ng24v4187sz8pa0bpi9jfh50im879";
+    };
+  };
+  "hitimes" = {
+    version = "1.2.2";
+    source = {
+      type = "gem";
+      sha256 = "17y3ggqxl3m6x9gqpgdn39z0pxpmw666d40r39bs7ngdmy680jn4";
+    };
+  };
+  "jekyll" = {
+    version = "2.5.3";
+    source = {
+      type = "gem";
+      sha256 = "1ad3d62yd5rxkvn3xls3xmr2wnk8fiickjy27g098hs842wmw22n";
+    };
+    dependencies = [
+      "classifier-reborn"
+      "colorator"
+      "jekyll-coffeescript"
+      "jekyll-gist"
+      "jekyll-paginate"
+      "jekyll-sass-converter"
+      "jekyll-watch"
+      "kramdown"
+      "liquid"
+      "mercenary"
+      "pygments.rb"
+      "redcarpet"
+      "safe_yaml"
+      "toml"
+    ];
+  };
+  "jekyll-coffeescript" = {
+    version = "1.0.1";
+    source = {
+      type = "gem";
+      sha256 = "19nkqbaxqbzqbfbi7sgshshj2krp9ap88m9fc5pa6mglb2ypk3hg";
+    };
+    dependencies = [
+      "coffee-script"
+    ];
+  };
+  "jekyll-gist" = {
+    version = "1.2.1";
+    source = {
+      type = "gem";
+      sha256 = "10hywgdwqafa21nwa5br54wvp4wsr3wnx64v8d81glj5cs17f9bv";
+    };
+  };
+  "jekyll-paginate" = {
+    version = "1.1.0";
+    source = {
+      type = "gem";
+      sha256 = "0r7bcs8fq98zldih4787zk5i9w24nz5wa26m84ssja95n3sas2l8";
+    };
+  };
+  "jekyll-sass-converter" = {
+    version = "1.3.0";
+    source = {
+      type = "gem";
+      sha256 = "1xqmlr87xmzpalf846gybkbfqkj48y3fva81r7c7175my9p4ykl1";
+    };
+    dependencies = [
+      "sass"
+    ];
+  };
+  "jekyll-watch" = {
+    version = "1.2.1";
+    source = {
+      type = "gem";
+      sha256 = "0p9mc8m4bggsqlq567g1g67z5fvzlm7yyv4l8717l46nq0d52gja";
+    };
+    dependencies = [
+      "listen"
+    ];
+  };
+  "kramdown" = {
+    version = "1.7.0";
+    source = {
+      type = "gem";
+      sha256 = "070r81kz88zw28c8bs5p0p92ymn1nldci2fm1arkas0bnqrd3rna";
+    };
+  };
+  "liquid" = {
+    version = "2.6.2";
+    source = {
+      type = "gem";
+      sha256 = "1k7lx7szwnz7vv3hqpdb6bgw8p73sa1ss9m1m5h0jaqb9xkqnfzb";
+    };
+  };
+  "listen" = {
+    version = "2.10.0";
+    source = {
+      type = "gem";
+      sha256 = "131pgi5bsqln2kfkp72wpi0dfz5i124758xcl1h3c5gz75j0vg2i";
+    };
+    dependencies = [
+      "celluloid"
+      "rb-fsevent"
+      "rb-inotify"
+    ];
+  };
+  "mercenary" = {
+    version = "0.3.5";
+    source = {
+      type = "gem";
+      sha256 = "0ls7z086v4xl02g4ia5jhl9s76d22crgmplpmj0c383liwbqi9pb";
+    };
+  };
+  "parslet" = {
+    version = "1.5.0";
+    source = {
+      type = "gem";
+      sha256 = "0qp1m8n3m6k6g22nn1ivcfkvccq5jmbkw53vvcjw5xssq179l9z3";
+    };
+    dependencies = [
+      "blankslate"
+    ];
+  };
+  "posix-spawn" = {
+    version = "0.3.11";
+    source = {
+      type = "gem";
+      sha256 = "052lnxbkvlnwfjw4qd7vn2xrlaaqiav6f5x5bcjin97bsrfq6cmr";
+    };
+  };
+  "pygments.rb" = {
+    version = "0.6.3";
+    source = {
+      type = "gem";
+      sha256 = "160i761q2z8kandcikf2r5318glgi3pf6b45wa407wacjvz2966i";
+    };
+    dependencies = [
+      "posix-spawn"
+      "yajl-ruby"
+    ];
+  };
+  "rb-fsevent" = {
+    version = "0.9.4";
+    source = {
+      type = "gem";
+      sha256 = "12if5xsik64kihxf5awsyavlp595y47g9qz77vfp2zvkxgglaka7";
+    };
+  };
+  "rb-inotify" = {
+    version = "0.9.5";
+    source = {
+      type = "gem";
+      sha256 = "0kddx2ia0qylw3r52nhg83irkaclvrncgy2m1ywpbhlhsz1rymb9";
+    };
+    dependencies = [
+      "ffi"
+    ];
+  };
+  "rdiscount" = {
+    version = "2.1.8";
+    source = {
+      type = "gem";
+      sha256 = "0vcyy90r6wfg0b0y5wqp3d25bdyqjbwjhkm1xy9jkz9a7j72n70v";
+    };
+  };
+  "redcarpet" = {
+    version = "3.2.3";
+    source = {
+      type = "gem";
+      sha256 = "0l6zr8wlqb648z202kzi7l9p89b6v4ivdhif5w803l1rrwyzvj0m";
+    };
+  };
+  "safe_yaml" = {
+    version = "1.0.4";
+    source = {
+      type = "gem";
+      sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
+    };
+  };
+  "sass" = {
+    version = "3.4.13";
+    source = {
+      type = "gem";
+      sha256 = "0wxkjm41xr77pnfi06cbwv6vq0ypbni03jpbpskd7rj5b0zr27ig";
+    };
+  };
+  "timers" = {
+    version = "4.0.1";
+    source = {
+      type = "gem";
+      sha256 = "03ahv07wn1f2g3c5843q7sf03a81518lq5624s9f49kbrswa2p7l";
+    };
+    dependencies = [
+      "hitimes"
+    ];
+  };
+  "toml" = {
+    version = "0.1.2";
+    source = {
+      type = "gem";
+      sha256 = "1wnvi1g8id1sg6776fvzf98lhfbscchgiy1fp5pvd58a8ds2fq9v";
+    };
+    dependencies = [
+      "parslet"
+    ];
+  };
+  "yajl-ruby" = {
+    version = "1.2.1";
+    source = {
+      type = "gem";
+      sha256 = "0zvvb7i1bl98k3zkdrnx9vasq0rp2cyy5n7p9804dqs4fz9xh9vf";
+    };
+  };
+}
\ No newline at end of file
diff --git a/pkgs/applications/misc/k2pdfopt/default.nix b/pkgs/applications/misc/k2pdfopt/default.nix
index 9c592fcbb2d..ce57db371dd 100644
--- a/pkgs/applications/misc/k2pdfopt/default.nix
+++ b/pkgs/applications/misc/k2pdfopt/default.nix
@@ -5,8 +5,8 @@
 
 let
   mupdf_src = fetchurl {
-    url = http://www.mupdf.com/downloads/archive/mupdf-1.5-source.tar.gz;
-    sha256 = "0sl47zqf4c9fhs4h5zg046vixjmwgy4vhljhr5g4md733nash7z4";
+    url = http://www.mupdf.com/downloads/archive/mupdf-1.6-source.tar.gz;
+    sha256 = "0qx51rj6alzcagcixm59rvdpm54w6syrwr4184v439jh14ryw4wq";
   };
 
   tess_src = fetchurl {
@@ -21,10 +21,10 @@ let
 
 in stdenv.mkDerivation rec {
   name = "k2pdfopt-${version}";
-  version = "2.30";
+  version = "2.32";
   src = fetchzip {
     url = "http://www.willus.com/k2pdfopt/src/k2pdfopt_v${version}_src.zip";
-    sha256 = "1fjjznkplrbyrg48wbij4kqgkz9i5icq7savl6brsf9haahdz6q5";
+    sha256 = "1v3cj5bwpjvy7s66sfqcmkxs91f7nxaykjpdjm2wn87vn6q7n19m";
   };
 
   buildInputs = [ libX11 libXext autoconf automake libtool leptonica libpng libtiff zlib
@@ -41,8 +41,8 @@ in stdenv.mkDerivation rec {
     plibs=`pwd`/patched_libraries
 
     tar zxf ${mupdf_src}
-    cp $src/mupdf_mod/font.c $src/mupdf_mod/string.c mupdf-1.5-source/source/fitz/
-    cp $src/mupdf_mod/pdf-* mupdf-1.5-source/source/pdf
+    cp $src/mupdf_mod/font.c $src/mupdf_mod/string.c mupdf-1.6-source/source/fitz/
+    cp $src/mupdf_mod/pdf-* mupdf-1.6-source/source/pdf
 
     tar zxf ${tess_src}
     cp $src/tesseract_mod/dawg.cpp tesseract-ocr/dict
@@ -74,7 +74,7 @@ in stdenv.mkDerivation rec {
     make libs
     cp src/libPgm2asc.a $plibs/lib
 
-    cd ../mupdf-1.5-source
+    cd ../mupdf-1.6-source
     make prefix=$plibs install
     install -Dm644 build/debug/libmujs.a $plibs/lib
 
diff --git a/pkgs/applications/misc/k3b/default.nix b/pkgs/applications/misc/k3b/default.nix
index 7730402a795..f48912aeb1e 100644
--- a/pkgs/applications/misc/k3b/default.nix
+++ b/pkgs/applications/misc/k3b/default.nix
@@ -1,24 +1,25 @@
-{ stdenv, fetchurl, makeWrapper, cmake, qt4, perl, shared_mime_info, libvorbis, taglib
-, flac, libsamplerate, libdvdread, lame, libsndfile, libmad, gettext
-, transcode, cdrdao, cdrtools, dvdplusrwtools, vcdimager, cdparanoia
-, kdelibs, kdemultimedia, automoc4, phonon, libkcddb ? null
+{ stdenv, fetchurl, makeWrapper, automoc4, cmake, perl, pkgconfig
+, shared_mime_info, libvorbis, taglib , flac, libsamplerate
+, libdvdread, lame, libsndfile, libmad, gettext , transcode, cdrdao
+, cdrtools, dvdplusrwtools, vcdimager, cdparanoia , kdelibs
+, kdemultimedia, phonon, libkcddb ? null
 }:
 
 stdenv.mkDerivation rec {
   name = "k3b-2.0.3a";
-  
+
   src = fetchurl {
     url = "http://download.kde.org/stable/k3b/${name}.tar.xz";
     sha256 = "10f07465g9860chfnvrp9w3m686g6j9f446xgnnx7h82d1sb42rd";
   };
 
-  buildInputs =
-    [ cmake qt4 perl shared_mime_info libvorbis taglib
-      flac libsamplerate libdvdread lame libsndfile
-      libmad gettext stdenv.cc.libc
-      kdelibs kdemultimedia automoc4 phonon
-      libkcddb makeWrapper cdparanoia
-    ];
+  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
+
+  buildInputs = [
+    shared_mime_info libvorbis taglib flac libsamplerate libdvdread
+    lame libsndfile libmad stdenv.cc.libc kdelibs
+    kdemultimedia phonon libkcddb makeWrapper cdparanoia
+  ];
 
   enableParallelBuilding = true;
 
@@ -31,7 +32,7 @@ stdenv.mkDerivation rec {
     wrapProgram $out/bin/k3b \
       --prefix LD_LIBRARY_PATH ":" "${cdparanoia}/lib"
   '';
-                  
+
   meta = with stdenv.lib; {
     description = "CD/DVD Burning Application for KDE";
     license = licenses.gpl2Plus;
diff --git a/pkgs/applications/misc/kde-wacomtablet/default.nix b/pkgs/applications/misc/kde-wacomtablet/default.nix
index 1b71989f8b6..013efee8ec9 100644
--- a/pkgs/applications/misc/kde-wacomtablet/default.nix
+++ b/pkgs/applications/misc/kde-wacomtablet/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, kdelibs, gettext, xf86_input_wacom }:
+{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
+, kdelibs, xf86_input_wacom }:
 
 stdenv.mkDerivation rec {
   name = "wacomtablet-2.1.0";
@@ -10,7 +11,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ kdelibs xf86_input_wacom ];
 
-  nativeBuildInputs = [ gettext ];
+  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
 
   meta = with stdenv.lib; {
     description = "KDE Wacom graphic tablet configuration tool";
diff --git a/pkgs/applications/misc/kdeconnect/default.nix b/pkgs/applications/misc/kdeconnect/default.nix
index 51b7b90ca4e..551d7c06468 100644
--- a/pkgs/applications/misc/kdeconnect/default.nix
+++ b/pkgs/applications/misc/kdeconnect/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchurl, gettext, kdelibs, libXtst, libfakekey, makeWrapper, pkgconfig, qca2
-, qjson
+{ stdenv, fetchurl, automoc4, cmake, perl, pkgconfig
+, gettext, kdelibs, libXtst, libfakekey, makeWrapper, qca2, qjson
 }:
 
 stdenv.mkDerivation rec {
@@ -11,7 +11,9 @@ stdenv.mkDerivation rec {
     sha256 = "1vrr047bq5skxvibv5pb9ch9dxh005zmar017jzbyb9hilxr8kg4";
   };
 
-  buildInputs = [ gettext kdelibs libXtst libfakekey makeWrapper pkgconfig qca2 qjson ];
+  buildInputs = [ gettext kdelibs libXtst libfakekey makeWrapper qca2 qjson ];
+
+  nativeBuildInputs = [ automoc4 cmake perl pkgconfig ];
 
   meta = with stdenv.lib; {
     description = "A tool to connect and sync your devices with KDE";
diff --git a/pkgs/applications/misc/keepass/default.nix b/pkgs/applications/misc/keepass/default.nix
index d46efc4e5e8..950d16eeac8 100644
--- a/pkgs/applications/misc/keepass/default.nix
+++ b/pkgs/applications/misc/keepass/default.nix
@@ -1,17 +1,21 @@
-{ stdenv, fetchurl, unzip, makeDesktopItem, mono }:
+{ stdenv, fetchurl, buildDotnetPackage, makeWrapper, unzip, makeDesktopItem }:
 
-stdenv.mkDerivation rec {
-  name = "keepass-${version}";
-  version = "2.29";
+buildDotnetPackage rec {
+  baseName = "keepass";
+  version = "2.30";
 
   src = fetchurl {
-    url = "mirror://sourceforge/keepass/KeePass-${version}.zip";
-    sha256 = "16x7m899akpi036c0wlr41w7fz9q0b69yac9q97rqkixb03l4g9d";
+    url = "mirror://sourceforge/keepass/KeePass-${version}-Source.zip";
+    sha256 = "1r792cikgvzj4hrxiv7xd3gx2zmn16dbh4inj2zi6ny0gchkqg2a";
   };
 
   sourceRoot = ".";
 
-  phases = [ "unpackPhase" "installPhase" ];
+  buildInputs = [ unzip ];
+
+  patches = [ ./keepass.patch ];
+
+  preConfigure = "rm -rvf Build/*";
 
   desktopItem = makeDesktopItem {
     name = "keepass";
@@ -22,23 +26,19 @@ stdenv.mkDerivation rec {
     categories = "Application;Other;";
   };
 
+  outputFiles = [ "Build/KeePass/Release/*" "Build/KeePassLib/Release/*" ];
+  dllFiles = [ "KeePassLib.dll" ];
+  exeFiles = [ "KeePass.exe" ];
 
-  installPhase = ''
-    mkdir -p "$out/bin"
-    echo "${mono}/bin/mono $out/KeePass.exe" > $out/bin/keepass
-    chmod +x $out/bin/keepass
-    echo $out
-    cp -r ./* $out/
+  postInstall = ''
     mkdir -p "$out/share/applications"
     cp ${desktopItem}/share/applications/* $out/share/applications
   '';
 
-  buildInputs = [ unzip ];
-
   meta = {
     description = "GUI password manager with strong cryptography";
     homepage = http://www.keepass.info/;
-    maintainers = with stdenv.lib.maintainers; [amorsillo];
+    maintainers = with stdenv.lib.maintainers; [ amorsillo obadz ];
     platforms = with stdenv.lib.platforms; all;
     license = stdenv.lib.licenses.gpl2;
   };
diff --git a/pkgs/applications/misc/keepass/keepass.patch b/pkgs/applications/misc/keepass/keepass.patch
new file mode 100644
index 00000000000..6ecf0bb074d
--- /dev/null
+++ b/pkgs/applications/misc/keepass/keepass.patch
@@ -0,0 +1,89 @@
+diff -Naur old/KeePass/KeePass.csproj new/KeePass/KeePass.csproj
+--- old/KeePass/KeePass.csproj	2015-04-10 11:00:46.000000000 +0100
++++ new/KeePass/KeePass.csproj	2015-05-27 16:35:52.196177593 +0100
+@@ -1,4 +1,4 @@
+-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">

++<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">

+   <PropertyGroup>

+     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>

+     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>

+@@ -10,7 +10,7 @@
+     <RootNamespace>KeePass</RootNamespace>

+     <AssemblyName>KeePass</AssemblyName>

+     <ApplicationIcon>KeePass.ico</ApplicationIcon>

+-    <SignAssembly>true</SignAssembly>

++    <SignAssembly>false</SignAssembly>

+     <AssemblyOriginatorKeyFile>KeePass.pfx</AssemblyOriginatorKeyFile>

+     <FileUpgradeFlags>

+     </FileUpgradeFlags>

+@@ -1316,6 +1316,5 @@
+   </Target>

+   -->

+   <PropertyGroup>

+-    <PostBuildEvent>"$(FrameworkSDKDir)bin\sgen.exe" /assembly:"$(TargetPath)" /force /nologo /compiler:/keycontainer:VS_KEY_33430356D8D7D1B8 /compiler:/delaysign-</PostBuildEvent>

+   </PropertyGroup>

+-</Project>
+\ No newline at end of file
++</Project>

+diff -Naur old/KeePassLib/KeePassLib.csproj new/KeePassLib/KeePassLib.csproj
+--- old/KeePassLib/KeePassLib.csproj	2014-05-08 15:00:24.000000000 +0100
++++ new/KeePassLib/KeePassLib.csproj	2015-05-27 16:35:52.197177562 +0100
+@@ -1,4 +1,4 @@
+-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">

++<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">

+   <PropertyGroup>

+     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>

+     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>

+@@ -9,7 +9,7 @@
+     <AppDesignerFolder>Properties</AppDesignerFolder>

+     <RootNamespace>KeePassLib</RootNamespace>

+     <AssemblyName>KeePassLib</AssemblyName>

+-    <SignAssembly>true</SignAssembly>

++    <SignAssembly>false</SignAssembly>

+     <AssemblyOriginatorKeyFile>KeePassLib.pfx</AssemblyOriginatorKeyFile>

+     <FileUpgradeFlags>

+     </FileUpgradeFlags>

+diff -Naur old/KeePass.sln new/KeePass.sln
+--- old/KeePass.sln	2009-08-31 19:47:28.000000000 +0100
++++ new/KeePass.sln	2015-05-27 16:35:59.568953518 +0100
+@@ -1,11 +1,9 @@
+-Microsoft Visual Studio Solution File, Format Version 10.00

++Microsoft Visual Studio Solution File, Format Version 12.00

+ # Visual Studio 2008

+ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KeePassLib", "KeePassLib\KeePassLib.csproj", "{53573E4E-33CB-4FDB-8698-C95F5E40E7F3}"

+ EndProject

+ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KeePass", "KeePass\KeePass.csproj", "{10938016-DEE2-4A25-9A5A-8FD3444379CA}"

+ EndProject

+-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KeePassLibSD", "KeePassLibSD\KeePassLibSD.csproj", "{DC15F71A-2117-4DEF-8C10-AA355B5E5979}"

+-EndProject

+ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TrlUtil", "Translation\TrlUtil\TrlUtil.csproj", "{B7E890E7-BF50-4450-9A52-C105BD98651C}"

+ EndProject

+ Global

+@@ -44,18 +42,6 @@
+ 		{10938016-DEE2-4A25-9A5A-8FD3444379CA}.Release|Mixed Platforms.Build.0 = Release|Any CPU

+ 		{10938016-DEE2-4A25-9A5A-8FD3444379CA}.Release|Win32.ActiveCfg = Release|Any CPU

+ 		{10938016-DEE2-4A25-9A5A-8FD3444379CA}.Release|x64.ActiveCfg = Release|Any CPU

+-		{DC15F71A-2117-4DEF-8C10-AA355B5E5979}.Debug|Any CPU.ActiveCfg = Debug|Any CPU

+-		{DC15F71A-2117-4DEF-8C10-AA355B5E5979}.Debug|Any CPU.Build.0 = Debug|Any CPU

+-		{DC15F71A-2117-4DEF-8C10-AA355B5E5979}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU

+-		{DC15F71A-2117-4DEF-8C10-AA355B5E5979}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU

+-		{DC15F71A-2117-4DEF-8C10-AA355B5E5979}.Debug|Win32.ActiveCfg = Debug|Any CPU

+-		{DC15F71A-2117-4DEF-8C10-AA355B5E5979}.Debug|x64.ActiveCfg = Debug|Any CPU

+-		{DC15F71A-2117-4DEF-8C10-AA355B5E5979}.Release|Any CPU.ActiveCfg = Release|Any CPU

+-		{DC15F71A-2117-4DEF-8C10-AA355B5E5979}.Release|Any CPU.Build.0 = Release|Any CPU

+-		{DC15F71A-2117-4DEF-8C10-AA355B5E5979}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU

+-		{DC15F71A-2117-4DEF-8C10-AA355B5E5979}.Release|Mixed Platforms.Build.0 = Release|Any CPU

+-		{DC15F71A-2117-4DEF-8C10-AA355B5E5979}.Release|Win32.ActiveCfg = Release|Any CPU

+-		{DC15F71A-2117-4DEF-8C10-AA355B5E5979}.Release|x64.ActiveCfg = Release|Any CPU

+ 		{B7E890E7-BF50-4450-9A52-C105BD98651C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU

+ 		{B7E890E7-BF50-4450-9A52-C105BD98651C}.Debug|Any CPU.Build.0 = Debug|Any CPU

+ 		{B7E890E7-BF50-4450-9A52-C105BD98651C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU

+diff -Naur old/Translation/TrlUtil/TrlUtil.csproj new/Translation/TrlUtil/TrlUtil.csproj
+--- old/Translation/TrlUtil/TrlUtil.csproj	2013-07-21 10:06:38.000000000 +0100
++++ new/Translation/TrlUtil/TrlUtil.csproj	2015-05-27 16:35:52.197177562 +0100
+@@ -1,4 +1,4 @@
+-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">

++<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">

+   <PropertyGroup>

+     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>

+     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>

diff --git a/pkgs/applications/misc/keepassx/2.0.nix b/pkgs/applications/misc/keepassx/2.0.nix
index c39c72398f7..acdd91aaf68 100644
--- a/pkgs/applications/misc/keepassx/2.0.nix
+++ b/pkgs/applications/misc/keepassx/2.0.nix
@@ -1,19 +1,19 @@
-{ stdenv, fetchurl, cmake, libgcrypt, qt4, xlibs, ... }:
+{ stdenv, fetchurl, cmake, libgcrypt, qt4, xorg, ... }:
 
 stdenv.mkDerivation {
-  name = "keepassx2-2.0alpha6";
+  name = "keepassx2-2.0beta2";
   src = fetchurl {
-    url = "https://github.com/keepassx/keepassx/archive/2.0-alpha6.tar.gz";
-    sha256 = "592f9995b13c4f84724fb24a0078162246397eedccd467daaf0fd3608151f2b0";
+    url = "https://github.com/keepassx/keepassx/archive/2.0-beta2.tar.gz";
+    sha256 = "0ljf9ws3wh62zd0gyb0vk2qw6pqsmxrlybrfs5mqahf44q92ca2q";
   };
 
-  buildInputs = [ cmake libgcrypt qt4 xlibs.libXtst ];
+  buildInputs = [ cmake libgcrypt qt4 xorg.libXtst ];
 
   meta = {
     description = "Qt password manager compatible with its Win32 and Pocket PC versions";
     homepage = http://www.keepassx.org/;
     license = stdenv.lib.licenses.gpl2;
-    maintainers = with stdenv.lib.maintainers; [qknight];
+    maintainers = with stdenv.lib.maintainers; [ qknight jgeerds ];
     platforms = with stdenv.lib.platforms; linux;
   };
 }
diff --git a/pkgs/applications/misc/keepassx/default.nix b/pkgs/applications/misc/keepassx/default.nix
index fc089f4fa5b..02a299922f1 100644
--- a/pkgs/applications/misc/keepassx/default.nix
+++ b/pkgs/applications/misc/keepassx/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     description = "Qt password manager compatible with its Win32 and Pocket PC versions";
     homepage = http://www.keepassx.org/;
     license = stdenv.lib.licenses.gpl2;
-    maintainers = with stdenv.lib.maintainers; [qknight];
+    maintainers = with stdenv.lib.maintainers; [ qknight jgeerds ];
     platforms = with stdenv.lib.platforms; linux;
   };
 }
diff --git a/pkgs/applications/misc/khal/default.nix b/pkgs/applications/misc/khal/default.nix
index 85720f64483..cbc728bc1f5 100644
--- a/pkgs/applications/misc/khal/default.nix
+++ b/pkgs/applications/misc/khal/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, pkgs, pythonPackages }:
 
 pythonPackages.buildPythonPackage rec {
-  version = "0.4.0";
+  version = "0.6.0";
   name = "khal-${version}";
 
   src = fetchurl {
-    url = "https://github.com/geier/khal/archive/v${version}.tar.gz";
-    sha256 = "0d32miq55cly4q3raxkw3xpq4d5y3hvzaqvy066nv35bdlpafxi1";
+    url = "https://pypi.python.org/packages/source/k/khal/khal-${version}.tar.gz";
+    sha256 = "16nsib70rczln0hrh93bas58lr8crvq8yipj7qnfs4hbs9b8sbhs";
   };
 
   propagatedBuildInputs = with pythonPackages; [
@@ -22,13 +22,14 @@ pythonPackages.buildPythonPackage rec {
     requests_toolbelt
     tzlocal
     urwid
+    python.modules.sqlite3
+    pkginfo
   ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://lostpackets.de/khal/;
     description = "CLI calendar application";
-    license = stdenv.lib.licenses.mit;
-    maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
+    license = licenses.mit;
+    maintainers = with maintainers; [ matthiasbeyer jgeerds ];
   };
 }
-
diff --git a/pkgs/applications/misc/khard/default.nix b/pkgs/applications/misc/khard/default.nix
new file mode 100644
index 00000000000..f1e2467362c
--- /dev/null
+++ b/pkgs/applications/misc/khard/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, pkgs, pythonPackages }:
+
+pythonPackages.buildPythonPackage rec {
+  version = "0.6.0";
+  name = "khard-${version}";
+  namePrefix = "";
+
+  src = fetchurl {
+    url = "https://github.com/scheibler/khard/archive/v${version}.tar.gz";
+    sha256 = "1ag6p416iibwgvijjc8bwyrssxw3s3j559700xfgp10vj0nqk1hb";
+  };
+
+  propagatedBuildInputs = with pythonPackages; [
+    configobj
+    vobject
+    argparse
+  ];
+
+  buildInputs = with pythonPackages; [
+    pkgs.vdirsyncer
+  ];
+
+  meta = {
+    homepage = https://github.com/scheibler/khard;
+    description = "Console carddav client";
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
+  };
+}
diff --git a/pkgs/applications/misc/kiwix/default.nix b/pkgs/applications/misc/kiwix/default.nix
new file mode 100644
index 00000000000..30db6a45ea1
--- /dev/null
+++ b/pkgs/applications/misc/kiwix/default.nix
@@ -0,0 +1,110 @@
+{ stdenv, fetchurl, makeWrapper, pkgconfig, zip, python
+, zlib, xapian, which , icu, libmicrohttpd , lzma, zimlib
+, ctpp2, aria2, wget , bc, libuuid , glibc, libX11
+, libXext, libXt, libXrender , glib, dbus, dbus_glib, gtk
+, gdk_pixbuf, pango, cairo , freetype, fontconfig, alsaLib
+, atk
+}:
+
+let
+  xulrunner64_tar = fetchurl {
+    url = http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-x86_64.tar.bz2;
+    sha256 = "0i3m30gm5z7qmas14id6ypvbmnb2k7jhz8aby2wz5vvv49zqmx3s";
+  };
+  xulrunnersdk64_tar = fetchurl {
+    url = http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-x86_64.sdk.tar.bz2;
+    sha256 = "0z90v7c4mq15g5klmsj8vs2r10fbygj3qzynx4952hkv8ihw8n3a";
+  };
+  xulrunner32_tar = fetchurl {
+    url = http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-i686.tar.bz2;
+    sha256 = "0yln6pxz8f6b9wm9124sx049z8mgi17lgd63rcv2hnix825y8gjb";
+  };
+  xulrunnersdk32_tar = fetchurl {
+    url = http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-i686.sdk.tar.bz2;
+    sha256 = "1h9vcbvf8wgds6i2z20y7krpys0mqsqhv1ijyfljanp6vyll9fvi";
+  };
+
+  xulrunner_tar = if stdenv.system == "x86_64-linux" then xulrunner64_tar else xulrunner32_tar;
+  xulrunnersdk_tar = if stdenv.system == "x86_64-linux" then xulrunnersdk64_tar else xulrunnersdk32_tar;
+  pugixml_tar = fetchurl {
+    url = http://download.kiwix.org/dev/pugixml-1.2.tar.gz;
+    sha256 = "0sqk0vdwjq44jxbbkj1cy8qykrmafs1sickzldb2w2nshsnjshhg";
+  };
+
+in
+with stdenv.lib;
+stdenv.mkDerivation rec {
+  name = "kiwix-${version}";
+  version = "0.9";
+
+  src = fetchurl {
+    url = "http://download.kiwix.org/src/kiwix-${version}-src.tar.xz";
+    sha256 = "0577phhy2na59cpcqjgldvksp0jwczyg0l6c9ghnr19i375l7yqc";
+  };
+
+  buildInputs = [
+    zip
+    pkgconfig
+    python
+    zlib
+    xapian
+    which
+    icu
+    libmicrohttpd
+    lzma
+    zimlib
+    ctpp2
+    aria2
+    wget
+    bc
+    libuuid
+    makeWrapper
+  ];
+
+  postUnpack = ''
+    cd kiwix-*
+    mkdir static
+    cp Makefile.in static/
+
+    cd src/dependencies
+    cp ${pugixml_tar} pugixml-1.2.tar.gz
+
+    tar -xf ${xulrunner_tar}
+    tar -xf ${xulrunnersdk_tar}
+
+    cd ../../..
+  '';
+
+  configurePhase = ''
+    bash ./configure --disable-static --disable-dependency-tracking --prefix=$out --with-libpugixml=SELF
+  '';
+
+  buildPhase = ''
+    cd src/dependencies
+    make pugixml-1.2/libpugixml.a
+
+    cd ../..
+    bash ./configure --disable-static --disable-dependency-tracking --prefix=$out --with-libpugixml=SELF
+
+    make
+  '';
+
+  installPhase = ''
+    make install
+    cp -r src/dependencies/xulrunner $out/lib/kiwix
+
+    patchelf --set-interpreter ${glibc}/lib/ld-linux${optionalString (stdenv.system == "x86_64-linux") "-x86-64"}.so.2 $out/lib/kiwix/xulrunner/xulrunner
+
+    rm $out/bin/kiwix
+    makeWrapper $out/lib/kiwix/kiwix-launcher $out/bin/kiwix \
+      --suffix LD_LIBRARY_PATH : `cat ${stdenv.cc}/nix-support/orig-cc`/lib:${makeLibraryPath [libX11 libXext libXt libXrender glib dbus dbus_glib gtk gdk_pixbuf pango cairo freetype fontconfig alsaLib atk]} \
+      --suffix PATH : ${aria2}/bin
+  '';
+
+  meta = {
+    description = "An offline reader for Web content";
+    homepage = http://kiwix.org;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ robbinch ];
+  };
+}
diff --git a/pkgs/applications/misc/krename/default.nix b/pkgs/applications/misc/krename/default.nix
index 75d8e5ecb89..1e4da7fa11f 100644
--- a/pkgs/applications/misc/krename/default.nix
+++ b/pkgs/applications/misc/krename/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, fetchurl, cmake, automoc4, kdelibs, taglib, exiv2, podofo, gettext, qt4, phonon }:
+{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
+, kdelibs, taglib, exiv2, podofo, qt4, phonon
+}:
 
 stdenv.mkDerivation rec {
   name = "krename-4.0.9";
@@ -8,11 +10,12 @@ stdenv.mkDerivation rec {
     sha256 = "11bdg5vdcs393n0aibhm3jh3wxlk5kz78jhkwf7cj9086qkg9wds";
   };
 
-  buildInputs = [ cmake automoc4 kdelibs taglib exiv2 podofo gettext qt4 phonon ];
+  buildInputs = [ kdelibs taglib exiv2 podofo qt4 phonon ];
+  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
 
   meta = {
     homepage = http://www.krename.net;
-    description = "KRename is a powerful batch renamer for KDE";
+    description = "A powerful batch renamer for KDE";
     inherit (kdelibs.meta) platforms;
     maintainers = [ stdenv.lib.maintainers.urkud ];
   };
diff --git a/pkgs/applications/misc/krusader/default.nix b/pkgs/applications/misc/krusader/default.nix
index 83c21da0e54..2a9c6305d42 100644
--- a/pkgs/applications/misc/krusader/default.nix
+++ b/pkgs/applications/misc/krusader/default.nix
@@ -1,4 +1,6 @@
-{stdenv, fetchurl, gettext, kdelibs, kde_baseapps}:
+{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
+, kdelibs, kde_baseapps
+}:
 
 stdenv.mkDerivation rec {
   name = "krusader-2.4.0-beta1";
@@ -6,7 +8,8 @@ stdenv.mkDerivation rec {
     url = "mirror://sourceforge/krusader/${name}.tar.bz2";
     sha256 = "1q1m4cjzz2m41pdpxnwrsiczc7990785b700lv64midjjgjnr7j6";
   };
-  buildInputs = [ gettext kdelibs kde_baseapps ];
+  buildInputs = [ kdelibs kde_baseapps ];
+  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
   NIX_CFLAGS_COMPILE = "-fpermissive"; # fix build with newer gcc versions
   meta = {
     description = "Norton/Total Commander clone for KDE";
diff --git a/pkgs/applications/misc/llpp/default.nix b/pkgs/applications/misc/llpp/default.nix
index f2e23e0babf..9d9b69f5958 100644
--- a/pkgs/applications/misc/llpp/default.nix
+++ b/pkgs/applications/misc/llpp/default.nix
@@ -1,19 +1,20 @@
 { stdenv, makeWrapper, fetchgit, pkgconfig, ninja, ocaml, findlib, mupdf, lablgl
-, gtk3, openjpeg, jbig2dec, mujs, xsel }:
+, gtk3, openjpeg, jbig2dec, mujs, xsel, openssl }:
 
 let ocamlVersion = (builtins.parseDrvName (ocaml.name)).version;
 in stdenv.mkDerivation rec {
   name = "llpp-${version}";
-  version = "21";
+  version = "21-git-2015-07-30";
 
   src = fetchgit {
     url = "git://repo.or.cz/llpp.git";
-    rev  = "refs/tags/v${version}";
-    sha256 = "0rxdq6j3bs4drnhlxgm0gcwkhxi98vmxm22lnkpic7h67lgsz51q";
+    rev = "e9fe06d684b145a104cc319673076e069e853cac";
+    sha256 = "0x3hgn6sfjln2sqdw40ylcj943rn732a6mlfwz01llx8ykiyvsvq";
+    fetchSubmodules = false;
   };
 
   buildInputs = [ pkgconfig ninja makeWrapper ocaml findlib mupdf lablgl
-                  gtk3 jbig2dec openjpeg mujs ];
+                  gtk3 jbig2dec openjpeg mujs openssl ];
 
   configurePhase = ''
       sh configure.sh -O -F ${mupdf}
diff --git a/pkgs/applications/misc/loxodo/default.nix b/pkgs/applications/misc/loxodo/default.nix
new file mode 100644
index 00000000000..05d29ce7e09
--- /dev/null
+++ b/pkgs/applications/misc/loxodo/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, python27Packages, fetchgit }:
+let
+  py = python27Packages;
+  python = py.python;
+in
+py.buildPythonPackage rec {
+  name = "loxodo-0.20150124";
+
+  src = fetchgit {
+    url = "https://github.com/sommer/loxodo.git";
+    rev = "6c56efb4511fd6f645ad0f8eb3deafc8071c5795";
+    sha256 = "02whmv4am8cz401rplplqzbipkyf0wd69z43sd3yw05rh7f3xbs2";
+  };
+
+  propagatedBuildInputs = with py; [ wxPython python.modules.readline ];
+
+  postInstall = ''
+    mv $out/bin/loxodo.py $out/bin/loxodo
+    mkdir -p $out/share/applications
+    cat > $out/share/applications/loxodo.desktop <<EOF
+    [Desktop Entry]
+    Type=Application
+    Exec=$out/bin/loxodo
+    Icon=$out/lib/${python.libPrefix}/site-packages/resources/loxodo-icon.png
+    Name=Loxodo
+    GenericName=Password Vault
+    Categories=Application;Other;
+    EOF
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A Password Safe V3 compatible password vault";
+    homepage = http://www.christoph-sommer.de/loxodo/;
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/lxappearance/default.nix b/pkgs/applications/misc/lxappearance/default.nix
index 9295eaabf32..8db606fd6d5 100644
--- a/pkgs/applications/misc/lxappearance/default.nix
+++ b/pkgs/applications/misc/lxappearance/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, intltool, pkgconfig, libX11, gtk }:
 
 stdenv.mkDerivation rec {
-  name = "lxappearance-0.5.5";
+  name = "lxappearance-0.6.1";
   src = fetchurl{
     url = "http://downloads.sourceforge.net/project/lxde/LXAppearance/${name}.tar.xz";
-    sha256 = "8cae82e6425ba8a0267774e4d10096df2d91b0597520058331684a5ece068b4c";
+    sha256 = "1phnv1b2jdj2vlibjyc9z01izcf3k5zxj8glsaf0i3vh77zqmqq9";
   };
   buildInputs = [ intltool libX11 pkgconfig gtk ];
   meta = {
diff --git a/pkgs/applications/misc/lyx/default.nix b/pkgs/applications/misc/lyx/default.nix
index 27830b9baee..fcde5ed3abd 100644
--- a/pkgs/applications/misc/lyx/default.nix
+++ b/pkgs/applications/misc/lyx/default.nix
@@ -3,12 +3,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "2.1.3";
+  version = "2.1.4";
   name = "lyx-${version}";
 
   src = fetchurl {
     url = "ftp://ftp.lyx.org/pub/lyx/stable/2.1.x/${name}.tar.xz";
-    sha256 = "10jnqz7ilxppv60h0hpkq7wgc3fbcm3z19xhnqz9hwp3brz2xm9g";
+    sha256 = "0apkir1rw3msdpps0y0c8skr293h6c4l48c1vx0w4brz337lhdfi";
   };
 
   configureFlags = [
diff --git a/pkgs/applications/misc/mdp/default.nix b/pkgs/applications/misc/mdp/default.nix
index 2e94414235d..a7617ec8358 100644
--- a/pkgs/applications/misc/mdp/default.nix
+++ b/pkgs/applications/misc/mdp/default.nix
@@ -1,21 +1,22 @@
-{ stdenv, fetchFromGitHub, ncurses }:
+{ stdenv, fetchurl, ncurses }:
 
-stdenv.mkDerivation {
-  name = "mdp-0.93";
+stdenv.mkDerivation rec {
+  version = "1.0.1";
+  name = "mdp-${version}";
 
-  src = fetchFromGitHub {
-    owner = "visit1985";
-    repo = "mdp";
-    rev = "09d6bd1a8a33fac75a999f0822ec10cb77fbc072";
-    sha256 = "0ksa0zqzv1yb8nspxp2vww7bp9y99pcma1vx3cixd3qb5y5ljn1n";
+  src = fetchurl {
+    url = "https://github.com/visit1985/mdp/archive/${version}.tar.gz";
+    sha256 = "0vmr0ymq06r50yags9nv6fk4f890b82a7bvxg697vrgs04i2x4dy";
   };
 
   makeFlags = "PREFIX=$(out)";
 
   buildInputs = [ ncurses ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://github.com/visit1985/mdp;
     description = "A command-line based markdown presentation tool";
+    maintainers = with maintainers; [ matthiasbeyer ];
+    license = licenses.gpl3;
   };
 }
diff --git a/pkgs/applications/misc/mediainfo-gui/default.nix b/pkgs/applications/misc/mediainfo-gui/default.nix
index ac128b2460e..55de1425787 100644
--- a/pkgs/applications/misc/mediainfo-gui/default.nix
+++ b/pkgs/applications/misc/mediainfo-gui/default.nix
@@ -1,18 +1,18 @@
 { stdenv, fetchurl, automake, autoconf, libtool, pkgconfig, libzen, libmediainfo, wxGTK, desktop_file_utils, libSM, imagemagick }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.73";
+  version = "0.7.77";
   name = "mediainfo-gui-${version}";
   src = fetchurl {
-    url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.bz2";
-    sha256 = "14mbiy1xhj4nlp7hnfqvi518xn1f718b2vbl8xkjqr2sqjdf5jm7";
+    url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
+    sha256 = "0n15z1jlj5s69pwk3mdv4r5c8ncfy7qjbdw5wfwynwypkl5382pn";
   };
 
   buildInputs = [ automake autoconf libtool pkgconfig libzen libmediainfo wxGTK desktop_file_utils libSM imagemagick ];
 
   sourceRoot = "./MediaInfo/Project/GNU/GUI/";
 
-  preConfigure = "sh autogen";
+  preConfigure = "sh autogen.sh";
 
   meta = {
     description = "Supplies technical and tag information about a video or audio file (GUI version)";
diff --git a/pkgs/applications/misc/mediainfo/default.nix b/pkgs/applications/misc/mediainfo/default.nix
index ce2875656b6..5c6f3f9a148 100644
--- a/pkgs/applications/misc/mediainfo/default.nix
+++ b/pkgs/applications/misc/mediainfo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, automake, autoconf, libtool, pkgconfig, libzen, libmediainfo, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.73";
+  version = "0.7.77";
   name = "mediainfo-${version}";
   src = fetchurl {
-    url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.bz2";
-    sha256 = "14mbiy1xhj4nlp7hnfqvi518xn1f718b2vbl8xkjqr2sqjdf5jm7";
+    url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
+    sha256 = "0n15z1jlj5s69pwk3mdv4r5c8ncfy7qjbdw5wfwynwypkl5382pn";
   };
 
   buildInputs = [ automake autoconf libtool pkgconfig libzen libmediainfo zlib ];
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   sourceRoot = "./MediaInfo/Project/GNU/CLI/";
 
   configureFlags = [ "--with-libmediainfo=${libmediainfo}" ];
-  preConfigure = "sh autogen";
+  preConfigure = "sh autogen.sh";
 
   meta = {
     description = "Supplies technical and tag information about a video or audio file";
diff --git a/pkgs/applications/misc/merkaartor/default.nix b/pkgs/applications/misc/merkaartor/default.nix
index 932e5bb4830..221b459f84a 100644
--- a/pkgs/applications/misc/merkaartor/default.nix
+++ b/pkgs/applications/misc/merkaartor/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, qt4, boost, proj, gdal}:
+{stdenv, fetchurl, qt4, boost, proj, gdal_1_11_2}:
 
 stdenv.mkDerivation rec {
   name = "merkaartor-0.18.1";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     qmake -makefile PREFIX=$out
   '';
 
-  buildInputs = [ qt4 boost proj gdal ];
+  buildInputs = [ qt4 boost proj gdal_1_11_2 ];
 
   meta = {
     description = "An openstreetmap editor";
diff --git a/pkgs/applications/misc/multimon-ng/default.nix b/pkgs/applications/misc/multimon-ng/default.nix
new file mode 100644
index 00000000000..794746653f7
--- /dev/null
+++ b/pkgs/applications/misc/multimon-ng/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, fetchFromGitHub, qt4, libpulseaudio }:
+let
+  version = "1.0.0";
+in
+stdenv.mkDerivation {
+  name = "multimon-ng-${version}";
+
+  src = fetchFromGitHub {
+    owner = "EliasOenal";
+    repo = "multimon-ng";
+    rev = "4cc984f35f859539c94aa56d3fc6218a6de51148";
+    sha256 = "12z6f0ra2k0qh56pcvnwvlxd3msvr6yr97jvs7w5kf42jqbxdsga";
+  };
+
+  buildInputs = [ qt4 libpulseaudio ];
+
+  preBuild = "qmake multimon-ng.pro";
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp multimon-ng $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Multimon is a digital baseband audio protocol decoder.";
+    longDescription = ''
+      multimon-ng a fork of multimon, a digital baseband audio
+      protocol decoder for common signaling modes in commercial and
+      amateur radio data services. It decodes the following digital
+      transmission modes:
+
+      POCSAG512 POCSAG1200 POCSAG2400 EAS UFSK1200 CLIPFSK AFSK1200
+      AFSK2400 AFSK2400_2 AFSK2400_3 HAPN4800 FSK9600 DTMF ZVEI1 ZVEI2
+      ZVEI3 DZVEI PZVEI EEA EIA CCIR MORSE CW
+    '';
+    homepage = "https://github.com/EliasOenal/multimon-ng";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ the-kenny ];
+  };
+}
diff --git a/pkgs/applications/misc/mupdf/default.nix b/pkgs/applications/misc/mupdf/default.nix
index 9b39f1c3c38..e1807b3aff9 100644
--- a/pkgs/applications/misc/mupdf/default.nix
+++ b/pkgs/applications/misc/mupdf/default.nix
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
     Version=1.0
     Name=mupdf
     Comment=PDF viewer
-    Exec=$out/bin/mupdf-x11
+    Exec=$out/bin/mupdf-x11 %f
     Terminal=false
     EOF
   '';
diff --git a/pkgs/applications/misc/mysql-workbench/default.nix b/pkgs/applications/misc/mysql-workbench/default.nix
index 89df403f598..d9ce635f80b 100644
--- a/pkgs/applications/misc/mysql-workbench/default.nix
+++ b/pkgs/applications/misc/mysql-workbench/default.nix
@@ -3,7 +3,7 @@
 , libctemplate, libglade
 , libiodbc
 , libgnome, libsigcxx, libtool, libuuid, libxml2, libzip, lua, mesa, mysql
-, pango, paramiko, pcre, pexpect, pkgconfig, pycrypto, python, sqlite
+, pango, paramiko, pcre, pexpect, pkgconfig, pycrypto, python, sqlite, sudo
 }:
 
 stdenv.mkDerivation rec {
@@ -29,6 +29,16 @@ stdenv.mkDerivation rec {
   '';
 
   postInstall = ''
+    patchShebangs $out/share/mysql-workbench/extras/build_freetds.sh
+
+    for i in $out/lib/mysql-workbench/modules/wb_utils_grt.py \
+             $out/lib/mysql-workbench/modules/wb_server_management.py \
+             $out/lib/mysql-workbench/modules/wb_admin_grt.py; do
+      substituteInPlace $i \
+        --replace "/bin/bash" ${stdenv.shell} \
+        --replace "/usr/bin/sudo" ${sudo}/bin/sudo
+    done
+
     wrapProgram "$out/bin/mysql-workbench" \
       --prefix LD_LIBRARY_PATH : "${python}/lib" \
       --prefix LD_LIBRARY_PATH : "$(cat ${stdenv.cc}/nix-support/orig-cc)/lib64" \
diff --git a/pkgs/applications/misc/nc-indicators/default.nix b/pkgs/applications/misc/nc-indicators/default.nix
deleted file mode 100644
index 3198333cce2..00000000000
--- a/pkgs/applications/misc/nc-indicators/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, attoparsec, gtk, hflags, lens, pipes, stm }:
-
-cabal.mkDerivation (self: {
-  pname = "nc-indicators";
-  version = "0.3";
-  sha256 = "0w5nddirsib9vz96dpan9bgdg1mag9gaz7w7ix51l44ls9r8yn3m";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [ attoparsec gtk hflags lens pipes stm ];
-  meta = {
-    homepage = "https://github.com/nilcons/nc-indicators";
-    description = "CPU load and memory usage indicators for i3bar";
-    license = self.stdenv.lib.licenses.asl20;
-    platforms = self.ghc.meta.platforms;
-  };
-})
diff --git a/pkgs/applications/misc/ocropus/default.nix b/pkgs/applications/misc/ocropus/default.nix
index 821b362b365..b76852b035a 100644
--- a/pkgs/applications/misc/ocropus/default.nix
+++ b/pkgs/applications/misc/ocropus/default.nix
@@ -41,7 +41,7 @@ pythonPackages.buildPythonPackage {
   '';
 
   checkPhase = ''
-    patchShebangs ./run-test
+    patchShebangs .
     substituteInPlace ./run-test \
       --replace 'ocropus-rpred' 'ocropus-rpred -Q $NIX_BUILD_CORES'
     PATH=".:$PATH" ./run-test
diff --git a/pkgs/applications/misc/open-pdf-presenter/default.nix b/pkgs/applications/misc/open-pdf-presenter/default.nix
new file mode 100644
index 00000000000..1d5811226d5
--- /dev/null
+++ b/pkgs/applications/misc/open-pdf-presenter/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchFromGitHub, cmake, qt4, pythonPackages }:
+
+stdenv.mkDerivation rec {
+  name = "open-pdf-presenter-git-2014-09-23";
+
+  src = fetchFromGitHub {
+    owner  = "olabini";
+    repo   = "open-pdf-presenter";
+    rev    = "f14930871b60b6ba50298c27377605e0a5fdf124";
+    sha256 = "1lfqb60zmjmsvzpbz29m8yxlzs2fscingyk8jvisng1y921726rr";
+  };
+
+  buildInputs = [ cmake qt4 pythonPackages.poppler-qt4 ];
+
+  meta = {
+    homepage = https://github.com/olabini/open-pdf-presenter;
+    description = "A program for presenting PDFs on multi-monitor settings (typically a laptop connected to a overhead projector)";
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = [ stdenv.lib.maintainers.DamienCassou ];
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/applications/misc/orpie/default.nix b/pkgs/applications/misc/orpie/default.nix
new file mode 100644
index 00000000000..b04f0f26500
--- /dev/null
+++ b/pkgs/applications/misc/orpie/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, ocamlPackages, ncurses, gsl }:
+
+stdenv.mkDerivation rec {
+  name = "orpie-${version}";
+  version = "1.5.2";
+
+  src = fetchurl {
+    url = "http://pessimization.com/software/orpie/${name}.tar.gz";
+    sha256 = "0v9xgpcf186ni55rkmx008msyszw0ypd6rd98hgwpih8yv3pymfy";
+  };
+
+  buildInputs = [ ncurses gsl ] ++ (with ocamlPackages; [ ocaml ]);
+
+  meta = {
+    homepage = http://pessimization.com/software/orpie/;
+    description = "A fullscreen RPN calculator for the console";
+    license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.all;
+    maintainers = with stdenv.lib.maintainers; [ obadz ];
+  };
+}
diff --git a/pkgs/applications/misc/pdfdiff/default.nix b/pkgs/applications/misc/pdfdiff/default.nix
new file mode 100644
index 00000000000..43b98035343
--- /dev/null
+++ b/pkgs/applications/misc/pdfdiff/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, pythonPackages, fetchurl, xpdf }:
+let
+  py = pythonPackages;
+in
+py.buildPythonPackage rec {
+  name = "pdfdiff-${version}";
+  version = "0.92";
+
+  src = fetchurl {
+    url = "http://www.cs.ox.ac.uk/people/cas.cremers/downloads/software/pdfdiff.py";
+    sha256 = "0zxwjjbklz87wkbhkmsvhc7xmv5php7m2a9vm6ydhmhlxsybf836";
+  };
+
+  buildInputs = [  pythonPackages.wrapPython ];
+
+  doCheck = false;
+
+  phases = [ "unpackPhase" "patchPhase" "installPhase" ];
+
+  unpackPhase = "cp $src pdfdiff.py";
+
+  postPatch = ''
+    sed -i -r 's|pdftotextProgram = "pdftotext"|pdftotextProgram = "${xpdf}/bin/pdftotext"|' pdfdiff.py
+    sed -i -r 's|progName = "pdfdiff.py"|progName = "pdfdiff"|' pdfdiff.py
+    '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp pdfdiff.py $out/bin/pdfdiff
+    chmod +x $out/bin/pdfdiff
+
+    substituteInPlace $out/bin/pdfdiff --replace "#!/usr/bin/python" "#!${pythonPackages.python.interpreter}"
+    '';
+
+  meta = with stdenv.lib; {
+    homepage = http://www.cs.ox.ac.uk/people/cas.cremers/misc/pdfdiff.html;
+    description = "Tool to view the difference between two PDF or PS files";
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/pdfpc/default.nix b/pkgs/applications/misc/pdfpc/default.nix
new file mode 100644
index 00000000000..a2cffdef58b
--- /dev/null
+++ b/pkgs/applications/misc/pdfpc/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, cmake, makeWrapper, pkgconfig, vala, gtk3, libgee, poppler
+, libpthreadstubs, gstreamer, gst-plugins-base, librsvg }:
+
+stdenv.mkDerivation rec {
+  name = "${product}-${version}";
+  product = "pdfpc";
+  version = "4.0.0";
+
+  src = fetchurl {
+    url = "https://github.com/pdfpc/pdfpc/releases/download/v${version}/${product}-v${version}.tar.gz";
+    sha256 = "0qksci11pgvabfdnynkpj2av0iww8m9m41a0vwsqgvg3yiacb4f0";
+  };
+
+  nativeBuildInputs = [ cmake pkgconfig ];
+  buildInputs = [ gstreamer gst-plugins-base vala gtk3 libgee poppler
+                  libpthreadstubs makeWrapper librsvg ];
+
+  postInstall = ''
+    wrapProgram $out/bin/pdfpc \
+      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A presenter console with multi-monitor support for PDF files";
+    homepage = https://pdfpc.github.io/;
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ pSub ];
+    platforms = platforms.linux;
+  };
+
+}
diff --git a/pkgs/applications/misc/playonlinux/default.nix b/pkgs/applications/misc/playonlinux/default.nix
new file mode 100644
index 00000000000..b39eeac6878
--- /dev/null
+++ b/pkgs/applications/misc/playonlinux/default.nix
@@ -0,0 +1,114 @@
+{ stdenv
+, makeWrapper
+, fetchurl
+, wxPython
+, libXmu
+, cabextract
+, gettext
+, glxinfo
+, gnupg1compat
+, icoutils
+, imagemagick
+, netcat
+, p7zip
+, python
+, unzip
+, wget
+, wine
+, xdg-user-dirs
+, xterm
+}:
+
+stdenv.mkDerivation rec {
+  name = "playonlinux-${version}";
+  version = "4.2.9";
+
+  src = fetchurl {
+    url = "https://www.playonlinux.com/script_files/PlayOnLinux/${version}/PlayOnLinux_${version}.tar.gz";
+    sha256 = "89bb0fd7cce8cf598ebf38cad716b8587eaca5b916d54386fb24b3ff66b48624";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs =
+    [ wxPython
+      libXmu
+      cabextract
+      gettext
+      glxinfo
+      gnupg1compat
+      icoutils
+      imagemagick
+      netcat
+      p7zip
+      python
+      unzip
+      wget
+      wine
+      xdg-user-dirs
+      xterm
+    ];
+
+  patchPhase = ''
+    PYFILES="python/*.py python/lib/*.py tests/python/*.py"
+    sed -i "s/env python[0-9.]*/python/" $PYFILES
+    sed -i "s/ %F//g" etc/PlayOnLinux.desktop
+  '';
+
+  installPhase = ''
+    install -d $out/share/playonlinux
+    install -d $out/bin
+    cp -r . $out/share/playonlinux/
+
+    echo "#!${stdenv.shell}" > $out/bin/playonlinux
+    echo "$prefix/share/playonlinux/playonlinux \"\$@\"" >> $out/bin/playonlinux
+    chmod +x $out/bin/playonlinux
+
+    install -D -m644 etc/PlayOnLinux.desktop $out/share/applications/playonlinux.desktop
+  '';
+
+  preFixupPhases = [ "preFixupPhase" ];
+
+  preFixupPhase = ''
+    for f in $out/bin/*; do
+      wrapProgram $f \
+        --prefix PYTHONPATH : $PYTHONPATH:$(toPythonPath "$out") \
+        --prefix PATH : \
+    ${cabextract}/bin:\
+    ${gettext}/bin:\
+    ${glxinfo}/bin:\
+    ${gnupg1compat}/bin:\
+    ${icoutils}/bin:\
+    ${imagemagick}/bin:\
+    ${netcat}/bin:\
+    ${p7zip}/bin:\
+    ${python}/bin:\
+    ${unzip}/bin:\
+    ${wget}/bin:\
+    ${wine}/bin:\
+    ${xdg-user-dirs}/bin:\
+    ${xterm}/bin
+
+    done
+
+    for f in $out/share/playonlinux/bin/*; do
+      bunzip2 $f
+    done
+  '';
+
+  postFixupPhases = [ "postFixupPhase" ];
+
+  postFixupPhase = ''
+    for f in $out/share/playonlinux/bin/*; do
+      bzip2 $f
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "GUI for managing Windows programs under linux";
+    homepage = https://www.playonlinux.com/;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.a1russell ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/pstree/default.nix b/pkgs/applications/misc/pstree/default.nix
index e11e920fdd4..3d526e3f3e7 100644
--- a/pkgs/applications/misc/pstree/default.nix
+++ b/pkgs/applications/misc/pstree/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "pstree-2.36";
+  name = "pstree-2.39";
 
   src = fetchurl {
     url = "http://www.sfr-fresh.com/unix/misc/${name}.tar.gz";
-    sha256 = "1vx4fndmkkx3bmcv71rpzjjbn24hlfs10pl99dsfhbx16a2d41cx";
+    sha256 = "17s7v15c4gryjpi11y1xq75022nkg4ggzvjlq2dkmyg67ssc76vw";
   };
 
   unpackPhase = "unpackFile \$src; sourceRoot=.";
diff --git a/pkgs/applications/misc/pwsafe/default.nix b/pkgs/applications/misc/pwsafe/default.nix
index a1538c69932..3faf127d88d 100644
--- a/pkgs/applications/misc/pwsafe/default.nix
+++ b/pkgs/applications/misc/pwsafe/default.nix
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "Password Safe is a password database utility";
+    description = "A password database utility";
 
     longDescription = ''
       Password Safe is a password database utility. Like many other
diff --git a/pkgs/applications/misc/qpdfview/default.nix b/pkgs/applications/misc/qpdfview/default.nix
index 1cf6d76b892..574b73f5672 100644
--- a/pkgs/applications/misc/qpdfview/default.nix
+++ b/pkgs/applications/misc/qpdfview/default.nix
@@ -5,10 +5,10 @@ let
   s = # Generated upstream information
   rec {
     baseName="qpdfview";
-    version = "0.4.14";
+    version = "0.4.15";
     name="${baseName}-${version}";
     url="https://launchpad.net/qpdfview/trunk/${version}/+download/qpdfview-${version}.tar.gz";
-    sha256 = "15d88xzqvrcp9szmz8d1lj65yrdx90j6fp78gia5c8kra2z8bik9";
+    sha256 = "0wgj02zpbyq4m2ix8rljiz312l2xk81gpy030vy424icq4xsip52";
   };
   buildInputs = [
     qt4 poppler_qt4 pkgconfig djvulibre libspectre cups file ghostscript
diff --git a/pkgs/applications/misc/qtpass/default.nix b/pkgs/applications/misc/qtpass/default.nix
new file mode 100644
index 00000000000..e768a692f59
--- /dev/null
+++ b/pkgs/applications/misc/qtpass/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchurl, git, gnupg, makeWrapper, pass, qt5 }:
+
+stdenv.mkDerivation rec {
+  name = "qtpass-${version}";
+  version = "1.0.1";
+
+  src = fetchurl {
+    url = "https://github.com/IJHack/qtpass/archive/v${version}.tar.gz";
+    sha256 = "1mmncvamvwr3hizc1jgpb5kscl9idmrfd2785jhwi87q11wjrwxz";
+  };
+
+  buildInputs = [ git gnupg makeWrapper pass qt5.base ];
+
+  configurePhase = "qmake CONFIG+=release PREFIX=$out DESTDIR=$out";
+
+  installPhase = ''
+    mkdir $out/bin
+    mv $out/qtpass $out/bin
+  '';
+
+  postInstall = ''
+    wrapProgram $out/bin/qtpass \
+        --suffix PATH : ${git}/bin \
+        --suffix PATH : ${gnupg}/bin \
+        --suffix PATH : ${pass}/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A multi-platform GUI for pass, the standard unix password manager";
+    homepage = https://github.com/IJHack/qtpass;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.hrdinka ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/applications/misc/ranger/default.nix b/pkgs/applications/misc/ranger/default.nix
index cc8bd42ec39..c6bc87ce13d 100644
--- a/pkgs/applications/misc/ranger/default.nix
+++ b/pkgs/applications/misc/ranger/default.nix
@@ -1,19 +1,19 @@
 { stdenv, buildPythonPackage, python, fetchurl }:
 
 buildPythonPackage rec {
-  name = "ranger-1.7.0";
+  name = "ranger-1.7.1";
 
   meta = {
     description = "File manager with minimalistic curses interface";
     homepage = "http://ranger.nongnu.org/";
     license = stdenv.lib.licenses.gpl3;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers; [ iyzsong ];
   };
 
   src = fetchurl {
     url = "http://ranger.nongnu.org/${name}.tar.gz";
-    sha256 = "066lp1k2zcz2lnww2aj0m3fgn9g5ms67kxgclhgq66pxkjwgc4kx";
+    sha256 = "11nznx2lqv884q9d2if63101prgnjlnan8pcwy550hji2qsn3c7q";
   };
 
   propagatedBuildInputs = with python.modules; [ curses ];
diff --git a/pkgs/applications/misc/redshift/default.nix b/pkgs/applications/misc/redshift/default.nix
index 6070c560815..6e5404eb686 100644
--- a/pkgs/applications/misc/redshift/default.nix
+++ b/pkgs/applications/misc/redshift/default.nix
@@ -1,45 +1,61 @@
-{ fetchurl, stdenv, libX11, libXrandr, libXxf86vm, libxcb, pkgconfig, python
-, randrproto, xcbutil, xf86vidmodeproto, autoconf, automake, gettext, glib
-, GConf, dbus, dbus_glib, makeWrapper, gtk, pygtk, pyxdg, geoclue }:
+{ fetchurl, stdenv, gettext, intltool, makeWrapper, pkgconfig
+, geoclue
+, guiSupport ? true, hicolor_icon_theme, gtk3, python, pygobject3, pyxdg
+, drmSupport ? true, libdrm
+, randrSupport ? true, libxcb
+, vidModeSupport ? true, libX11, libXxf86vm
+}:
 
-stdenv.mkDerivation rec {
-  version = "1.9.1";
+let
+  version = "1.10";
+  mkFlag = flag: name: if flag then "--enable-${name}" else "--disable-${name}";
+in
+stdenv.mkDerivation {
   name = "redshift-${version}";
   src = fetchurl {
-    url = "https://github.com/jonls/redshift/archive/v${version}.tar.gz";
-    sha256 = "0rj7lyg4ikwpk1hr1k2bgk9gjqvvv51z8hydsgpx2k2lqdv6lqri";
+    sha256 = "19pfk9il5x2g2ivqix4a555psz8mj3m0cvjwnjpjvx0llh5fghjv";
+    url = "https://github.com/jonls/redshift/releases/download/v${version}/redshift-${version}.tar.xz";
   };
 
-  buildInputs = [
-    libX11 libXrandr libXxf86vm libxcb pkgconfig python randrproto xcbutil
-    xf86vidmodeproto autoconf automake gettext glib GConf dbus dbus_glib
-    makeWrapper gtk pygtk pyxdg geoclue
-  ];
+  buildInputs = [ geoclue ]
+    ++ stdenv.lib.optionals guiSupport [ hicolor_icon_theme gtk3 python pygobject3 pyxdg ]
+    ++ stdenv.lib.optionals drmSupport [ libdrm ]
+    ++ stdenv.lib.optionals randrSupport [ libxcb ]
+    ++ stdenv.lib.optionals vidModeSupport [ libX11 libXxf86vm ];
+  nativeBuildInputs = [ gettext intltool makeWrapper pkgconfig ];
 
-  preConfigure = ''
-    ./bootstrap
-  '';
+  configureFlags = [
+    (mkFlag guiSupport "gui")
+    (mkFlag drmSupport "drm")
+    (mkFlag randrSupport "randr")
+    (mkFlag vidModeSupport "vidmode")
+  ];
 
-  preInstall = ''
-    substituteInPlace src/redshift-gtk/redshift-gtk python --replace "/usr/bin/env python" "${python}/bin/${python.executable}"
+  preInstall = stdenv.lib.optionalString guiSupport ''
+    substituteInPlace src/redshift-gtk/redshift-gtk \
+      --replace "/usr/bin/env python3" "${python}/bin/${python.executable}"
   '';
 
-  postInstall = ''
-    wrapProgram "$out/bin/redshift-gtk" --prefix PYTHONPATH : $PYTHONPATH:${pygtk}/lib/${python.libPrefix}/site-packages/gtk-2.0:${pyxdg}/lib/${python.libPrefix}/site-packages/pyxdg:$out/lib/${python.libPrefix}/site-packages
+  postInstall = stdenv.lib.optionalString guiSupport ''
+    wrapProgram "$out/bin/redshift-gtk" \
+      --prefix PYTHONPATH : "$PYTHONPATH" \
+      --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
+      --prefix XDG_DATA_DIRS : "$out/share:${hicolor_icon_theme}/share"
   '';
 
   meta = with stdenv.lib; {
-    description = "changes the color temperature of your screen gradually";
+    inherit version;
+    description = "Gradually change screen color temperature";
     longDescription = ''
       The color temperature is set according to the position of the
       sun. A different color temperature is set during night and
       daytime. During twilight and early morning, the color
       temperature transitions smoothly from night to daytime
       temperature to allow your eyes to slowly adapt.
-      '';
-    license = stdenv.lib.licenses.gpl3Plus;
+    '';
+    license = licenses.gpl3Plus;
     homepage = http://jonls.dk/redshift;
     platforms = platforms.linux;
-    maintainers = [ maintainers.mornfall ];
+    maintainers = with maintainers; [ mornfall nckx ];
   }; 
 }
diff --git a/pkgs/applications/misc/rescuetime/default.nix b/pkgs/applications/misc/rescuetime/default.nix
index a57647e18e7..a5b90890df2 100644
--- a/pkgs/applications/misc/rescuetime/default.nix
+++ b/pkgs/applications/misc/rescuetime/default.nix
@@ -5,17 +5,18 @@ let
     if stdenv.system == "i686-linux" then fetchurl {
       name = "rescuetime-installer.deb";
       url = "https://www.rescuetime.com/installers/rescuetime_current_i386.deb";
-      sha256 = "1np8fkmgcwfjv82v4y1lkqcgfki368w6317gac3i0vlqi4qbfjiq";
+      sha256 = "15x3nvhxk4f0rga0i99c6lhaa1rwdi446kxnx1l4jprhbl788sx6";
     } else fetchurl {
       name = "rescuetime-installer.deb";
       url = "https://www.rescuetime.com/installers/rescuetime_current_amd64.deb";
-      sha256 = "0bb0kzayj0wwvyh1b8g0l3aw2xqlrkhn85j3aw90xmchnsx42xh5";
+      sha256 = "0ibdlx8fdlmh81908d1syb7c5lf88pqp49fl7r43cj6bybpdx411";
     };
 
 in
 
 stdenv.mkDerivation {
-  name = "rescuetime-2.8.8.1040";
+  # https://www.rescuetime.com/updates/linux_release_notes.html
+  name = "rescuetime-2.8.9.1170";
   inherit src;
   buildInputs = [ dpkg makeWrapper ];
   unpackPhase = ''
diff --git a/pkgs/applications/misc/rofi/default.nix b/pkgs/applications/misc/rofi/default.nix
index 1bbe026cfeb..454bc48afe9 100644
--- a/pkgs/applications/misc/rofi/default.nix
+++ b/pkgs/applications/misc/rofi/default.nix
@@ -1,17 +1,15 @@
-{ stdenv, fetchFromGitHub, autoconf, automake, pkgconfig
+{ stdenv, fetchurl, autoconf, automake, pkgconfig
 , libX11, libXinerama, libXft, pango
 , i3Support ? false, i3
 }:
 
 stdenv.mkDerivation rec {
   name = "rofi-${version}";
-  version = "0.15.2";
+  version = "0.15.8";
 
-  src = fetchFromGitHub {
-    repo = "rofi";
-    owner = "DaveDavenport";
-    rev = "${version}";
-    sha256 = "0b8k5g2fpqrz1yac09kmfk4caxcc107qq4yhncnl159xdxw66vz8";
+  src = fetchurl {
+    url = "https://github.com/DaveDavenport/rofi/archive/${version}.tar.gz";
+    sha256 = "1qhj8xrxfnzy16g577w0zxg1cy885rbqydlbbxgfk0dpjvq70lq6";
   };
 
   buildInputs = [ autoconf automake pkgconfig libX11 libXinerama libXft pango
@@ -25,5 +23,6 @@ stdenv.mkDerivation rec {
       description = "Window switcher, run dialog and dmenu replacement";
       homepage = https://davedavenport.github.io/rofi;
       license = stdenv.lib.licenses.mit;
+      maintainers = [ stdenv.lib.maintainers.mbakke ];
   };
 }
diff --git a/pkgs/applications/misc/rofi/pass.nix b/pkgs/applications/misc/rofi/pass.nix
new file mode 100644
index 00000000000..7a8c9dfd71e
--- /dev/null
+++ b/pkgs/applications/misc/rofi/pass.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchgit, rofi, wmctrl, xprop, xdotool}:
+
+stdenv.mkDerivation rec {
+  name = "rofi-pass-${version}";
+  version = "1.2";
+
+  src = fetchgit {
+    url = "https://github.com/carnager/rofi-pass";
+    rev = "refs/tags/${version}";
+    sha256 = "1dlaplr18qady5g8sp8xgiqdw81mfx9iisihf8appr5s4sjm559h";
+  };
+
+  buildInputs = [ rofi wmctrl xprop xdotool ];
+
+  dontBuild = true;
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp -a $src/rofi-pass $out/bin/rofi-pass
+
+    mkdir -p $out/share/doc/rofi-pass/
+    cp -a $src/config.example $out/share/doc/rofi-pass/config.example
+  '';
+
+  meta = {
+      description = "A script to make rofi work with password-store";
+      homepage = https://github.com/carnager/rofi-pass;
+      maintainers = [stdenv.lib.maintainers.hiberno];
+  };
+}
diff --git a/pkgs/applications/misc/rsibreak/default.nix b/pkgs/applications/misc/rsibreak/default.nix
index 6587fb2debf..42247572c24 100644
--- a/pkgs/applications/misc/rsibreak/default.nix
+++ b/pkgs/applications/misc/rsibreak/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, kdelibs, kdebase_workspace, gettext }:
+{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
+, kdelibs, kdebase_workspace }:
 
 let version = "0.11";
 in
@@ -10,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "0g27aswh8iz5v67v1wkjny4p100vs2gm0lw0qzfkg6sw1pb4i519";
   };
 
-  nativeBuildInputs = [ gettext ];
+  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
 
   buildInputs = [ kdelibs kdebase_workspace ];
 
diff --git a/pkgs/applications/misc/rtv/default.nix b/pkgs/applications/misc/rtv/default.nix
index 30ce67a82f6..37a664a4918 100644
--- a/pkgs/applications/misc/rtv/default.nix
+++ b/pkgs/applications/misc/rtv/default.nix
@@ -1,27 +1,28 @@
-{ stdenv, fetchurl, pkgs, python, pythonPackages }:
+{ stdenv, fetchFromGitHub, pkgs, python, pythonPackages }:
 
 pythonPackages.buildPythonPackage rec {
-  version = "1.2.2";
+  version = "1.4.2";
   name = "rtv-${version}";
 
-  src = fetchurl {
-    url = "https://github.com/michael-lazar/rtv/archive/v${version}.tar.gz";
-    sha256 = "0pisairv28lhqvq8zs0whz3ww8fraj98941kk5idyxadbq0icmk3";
+  src = fetchFromGitHub {
+    owner = "michael-lazar";
+    repo = "rtv";
+    rev = "v${version}";
+    sha256 = "103ahwaaghxpih5bkbzqyqgxqmx6kc859vjla8fy8scg21cijghh";
   };
 
   propagatedBuildInputs = with pythonPackages; [
     requests
     six
     praw
+    kitchen
     python.modules.curses
   ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://github.com/michael-lazar/rtv;
     description = "Browse Reddit from your Terminal";
-    license = stdenv.lib.licenses.mit;
-    maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
+    license = licenses.mit;
+    maintainers = with maintainers; [ matthiasbeyer jgeerds ];
   };
 }
-
-
diff --git a/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-font-size/default.nix b/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-font-size/default.nix
new file mode 100644
index 00000000000..eafa0d6d18b
--- /dev/null
+++ b/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-font-size/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, xrdb }:
+
+stdenv.mkDerivation {
+  name = "urxvt-font-size-2015-05-22";
+  dontPatchShebangs = true;
+
+  src = fetchFromGitHub {
+    owner = "majutsushi";
+    repo = "urxvt-font-size";
+    rev = "fd5b09c10798c6723bbf771d4d8881cf6563bc69";
+    sha256 = "16m3kkypg3y00x597zx05zy167a0kaqpawz0l591wzb2bv1dz55z";
+  };
+
+  installPhase = ''
+    substituteInPlace font-size \
+      --replace "xrdb -merge" "${xrdb}/bin/xrdb -merge"
+
+    mkdir -p $out/lib/urxvt/perl
+    cp font-size $out/lib/urxvt/perl
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Change the urxvt font size on the fly";
+    homepage = "https://github.com/majutsushi/urxvt-font-size";
+    license = licenses.mit;
+    maintainers = with maintainers; [ cstrahan ];
+  };
+}
diff --git a/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perl/default.nix b/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perl/default.nix
new file mode 100644
index 00000000000..dfcdeaa9d4e
--- /dev/null
+++ b/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perl/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, wmctrl }:
+
+stdenv.mkDerivation {
+  name = "urxvt-perl-2015-01-16";
+
+  src = fetchFromGitHub {
+    owner = "effigies";
+    repo = "urxvt-perl";
+    rev = "c3beb9ff09a7139591416c61f8e9458c8a23bea5";
+    sha256 = "1w1p8ng7bwq5hnaprjl1zf073y5l3hdsj7sz7cll6isjswcm6r0s";
+  };
+
+  installPhase = ''
+    substituteInPlace fullscreen \
+      --replace "wmctrl" "${wmctrl}/bin/wmctrl"
+
+    mkdir -p $out/lib/urxvt/perl
+    cp fullscreen $out/lib/urxvt/perl
+    cp newterm $out/lib/urxvt/perl
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Perl extensions for the rxvt-unicode terminal emulator";
+    homepage = "https://github.com/effigies/urxvt-perl";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ cstrahan ];
+  };
+}
diff --git a/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perls/default.nix b/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perls/default.nix
index c0cc702c986..6a1acca48d9 100644
--- a/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perls/default.nix
+++ b/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perls/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchgit }:
 
 stdenv.mkDerivation {
-  name = "urxvt-perls";
+  name = "urxvt-perls-2015-03-28";
 
   src = fetchgit {
     url = "git://github.com/muennich/urxvt-perls";
@@ -21,6 +21,6 @@ stdenv.mkDerivation {
     description = "Perl extensions for the rxvt-unicode terminal emulator";
     homepage = "https://github.com/muennich/urxvt-perls";
     license = licenses.gpl2;
-    maintainers = maintainers.abbradar;
+    maintainers = with maintainers; [ abbradar ];
   };
 }
diff --git a/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-tabbedex/default.nix b/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-tabbedex/default.nix
index a636c3bcfe5..e924c3127ab 100644
--- a/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-tabbedex/default.nix
+++ b/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-tabbedex/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchgit }:
 
 stdenv.mkDerivation {
-  name = "urxvt-tabbedex";
+  name = "urxvt-tabbedex-2015-03-03";
 
   src = fetchgit {
     url = "https://github.com/mina86/urxvt-tabbedex";
-    rev = "54c8d6beb4d65278ed6db24693ca56e1ee65bb42";
-    sha256 = "f8734ee289e1cfc517d0699627191c98d32ae3549e0f1935af2a5ccb86d4dc1e";
+    rev = "b0a02018b1cbaaba2a0c8ea7af9368db0adf3363";
+    sha256 = "f0025f2741d424736620147d9fc39faac68193cb9f74bde0fb6e02a6f1ae61c3";
   };
 
   installPhase = ''
@@ -16,6 +16,6 @@ stdenv.mkDerivation {
   meta = with stdenv.lib; {
     description = "Tabbed plugin for rxvt-unicode with many enhancements (mina86's fork)";
     homepage = "https://github.com/mina86/urxvt-tabbedex";
-    maintainers = maintainers.abbradar;
+    maintainers = with maintainers; [ abbradar ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/misc/rxvt_unicode/default.nix b/pkgs/applications/misc/rxvt_unicode/default.nix
index 12eeb62dc04..c1d74c247ce 100644
--- a/pkgs/applications/misc/rxvt_unicode/default.nix
+++ b/pkgs/applications/misc/rxvt_unicode/default.nix
@@ -45,6 +45,11 @@ stdenv.mkDerivation (rec {
       ln -s $out/{lib/urxvt,lib/perl5/site_perl}
     '';
 
+  postInstall = ''
+    mkdir -p $out/nix-support
+    echo "$terminfo" >> $out/nix-support/propagated-user-env-packages
+  '';
+
   meta = {
     description = "A clone of the well-known terminal emulator rxvt";
     homepage = "http://software.schmorp.de/pkg/rxvt-unicode.html";
diff --git a/pkgs/applications/misc/scim/default.nix b/pkgs/applications/misc/scim/default.nix
index ef1bb0bed1d..98594157211 100644
--- a/pkgs/applications/misc/scim/default.nix
+++ b/pkgs/applications/misc/scim/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, yacc, ncurses, libxml2 }:
 
 let
-  version = "0.1.8";
+  version = "0.1.9";
 in
 stdenv.mkDerivation rec {
 
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/andmarti1424/scim/archive/v${version}.tar.gz";
-    sha256 = "0qjixb1hzbdrypbmzwb2iaw5wp57kn7fmm1zpjp4gzjyanrhazs2";
+    sha256 = "00rjz344acw0bxv78x1w9jz8snl9lb9qhr9z22phxinidnd3vaaz";
   };
 
   buildInputs = [ yacc ncurses libxml2 ];
diff --git a/pkgs/applications/misc/slic3r/default.nix b/pkgs/applications/misc/slic3r/default.nix
index 36669dd8ae8..bfbc66cc0b9 100644
--- a/pkgs/applications/misc/slic3r/default.nix
+++ b/pkgs/applications/misc/slic3r/default.nix
@@ -3,13 +3,13 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.2.6";
+  version = "1.2.7";
   name = "slic3r-${version}";
 
   src = fetchgit {
     url = "git://github.com/alexrj/Slic3r";
     rev = "refs/tags/${version}";
-    sha256 = "1ymk2n9dw1mpizwg6bxbzq60mg1cwljxlncaasdyakqrkkr22r8k";
+    sha256 = "1bybbl8b0lfh9wkn1k9cxd11hlc5064wzh0fk6zdmc9vnnay399i";
   };
 
   buildInputs = with perlPackages; [ perl makeWrapper which
diff --git a/pkgs/applications/misc/spacefm/default.nix b/pkgs/applications/misc/spacefm/default.nix
index b88e4c567cc..01f55498f80 100644
--- a/pkgs/applications/misc/spacefm/default.nix
+++ b/pkgs/applications/misc/spacefm/default.nix
@@ -1,30 +1,36 @@
-{ pkgs, fetchurl, stdenv, gtk3, udev, desktop_file_utils, shared_mime_info
-, intltool, pkgconfig, makeWrapper
-}:
+{ pkgs, fetchurl, stdenv, gtk3, udev, desktop_file_utils, shared_mime_info , intltool, pkgconfig, makeWrapper, ffmpegthumbnailer, jmtpfs, ifuse, lsof, udisks, hicolor_icon_theme, adwaita-icon-theme }:
 
-let
-  version = "0.9.2";
-
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   name = "spacefm-${version}";
+  version = "1.0.1";
 
   src = fetchurl {
-    url = "https://github.com/IgnorantGuru/spacefm/blob/pkg/${version}/${name}.tar.xz?raw=true";
-    sha256 = "3767137d74aa78597ffb42a6121784e91a4276efcd5d718b3793b9790f82268c";
+    url = "https://github.com/IgnorantGuru/spacefm/archive/${version}.tar.gz";
+    sha256 = "0mps6akwzr4mkljgywpimwgqf6ajnd7gq615877h20wyjf4h46vz";
   };
 
-  buildInputs = [ gtk3 udev desktop_file_utils shared_mime_info intltool pkgconfig makeWrapper ];
+  configureFlags = [
+    "--with-bash-path=${pkgs.bash}/bin/bash"
+    "--with-preferable-sudo=${pkgs.sudo}/bin/sudo"
+  ];
+
+  buildInputs = [ gtk3 udev desktop_file_utils shared_mime_info intltool pkgconfig makeWrapper ffmpegthumbnailer jmtpfs ifuse lsof udisks ];
 
   preFixup = ''
     wrapProgram "$out/bin/spacefm" \
       --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
 
-  meta = {
-    description = "Multi-panel tabbed file and desktop manager for Linux with built-in VFS, udev- or HAL-based device manager, customizable menu system, and bash integration";
-    platforms = pkgs.lib.platforms.linux;
-    license = pkgs.lib.licenses.gpl3;
+  meta = with stdenv.lib;  {
+    description = "A multi-panel tabbed file manager";
+    longDescription = "Multi-panel tabbed file and desktop manager for Linux
+      with built-in VFS, udev- or HAL-based device manager,
+      customizable menu system, and bash integration
+    ";
+    homepage = http://ignorantguru.github.io/spacefm/;
+    platforms = platforms.linux;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.jagajaga ];
   };
 
 }
-
diff --git a/pkgs/applications/misc/sqliteman/default.nix b/pkgs/applications/misc/sqliteman/default.nix
index f655a0f8c26..a1d5ef153bb 100644
--- a/pkgs/applications/misc/sqliteman/default.nix
+++ b/pkgs/applications/misc/sqliteman/default.nix
@@ -1,12 +1,14 @@
-{ stdenv, fetchurl, cmake, qt4, qscintilla }:
+{ stdenv, fetchFromGitHub, cmake, qt4, qscintilla }:
 
 stdenv.mkDerivation rec {
-  name = "sqliteman";
-  version = "1.2.0-c41b89e1";
+  name = "sqliteman-${version}";
+  version = "1.2.0";
 
-  src = fetchurl {
-    url = https://github.com/pvanek/sqliteman/archive/1.2.0.tar.gz;
-    sha256 = "1x4ppwf01jdnz3a4ycia6vv5qf3w2smbqx690z1pnkwbvk337akm";
+  src = fetchFromGitHub {
+    repo = "sqliteman";
+    owner = "pvanek";
+    rev = version;
+    sha256 = "1blzyh1646955d580f71slgdvz0nqx0qacryx0jc9w02yrag17cs";
   };
 
   buildInputs = [ cmake qt4 qscintilla ];
diff --git a/pkgs/applications/misc/st/default.nix b/pkgs/applications/misc/st/default.nix
index 1dcdf78456d..1ef8f697aee 100644
--- a/pkgs/applications/misc/st/default.nix
+++ b/pkgs/applications/misc/st/default.nix
@@ -4,11 +4,11 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "st-0.5";
+  name = "st-0.6";
   
   src = fetchurl {
     url = "http://dl.suckless.org/st/${name}.tar.gz";
-    sha256 = "0knxpzaa86pprng6hak8hx8bw22yw22rpz1ffxjpcvqlz3xdv05f";
+    sha256 = "0avsfc1qp8zvshsfjwwrkvk411jlqy58z225bsdhjkl1qc40qcc5";
   };
 
   configFile = optionalString (conf!=null) (writeText "config.def.h" conf);
diff --git a/pkgs/applications/misc/super_user_spark/default.nix b/pkgs/applications/misc/super_user_spark/default.nix
new file mode 100644
index 00000000000..73a9e343df9
--- /dev/null
+++ b/pkgs/applications/misc/super_user_spark/default.nix
@@ -0,0 +1,33 @@
+{ mkDerivation, fetchurl, ghc, aeson, aeson-pretty, base, binary, bytestring
+, directory, filepath, HTF, HUnit, mtl, parsec, process, shelly
+, stdenv, text, transformers, unix, xdg-basedir
+, happy
+}:
+
+mkDerivation rec {
+  pname = "super-user-spark";
+  version = "0.1.0.0";
+
+  src = fetchurl {
+    url = "https://github.com/NorfairKing/super-user-spark/archive/v0.1.tar.gz";
+    sha256 = "90258cb2d38f35b03867fdf82dbd49500cdec04f3cf05d0eaa18592cb44fe13f";
+  };
+
+  isLibrary = false;
+  isExecutable = true;
+  jailbreak = true;
+
+  buildDepends = [
+    aeson aeson-pretty base binary bytestring directory filepath HTF
+    mtl parsec process shelly text transformers unix xdg-basedir happy
+  ];
+  testDepends = [
+    aeson aeson-pretty base binary bytestring directory filepath HTF
+    HUnit mtl parsec process shelly text transformers unix xdg-basedir
+  ];
+  license = stdenv.lib.licenses.mit;
+  homepage = "https://github.com/NorfairKing/super-user-spark";
+  description = "A safe way to never worry about your beautifully configured system again";
+  platforms = ghc.meta.platforms;
+  maintainers = [ stdenv.lib.maintainers.badi ];
+}
diff --git a/pkgs/applications/misc/synapse/default.nix b/pkgs/applications/misc/synapse/default.nix
new file mode 100644
index 00000000000..8086e8ca56d
--- /dev/null
+++ b/pkgs/applications/misc/synapse/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchurl, intltool, pkgconfig, glib, libnotify, gtk3, libgee
+, keybinder3, json_glib, zeitgeist, vala
+}:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+  name = "synapse-0.2.99.1";
+
+  src = fetchurl {
+    url = "https://launchpad.net/synapse-project/0.3/0.2.99.1/+download/${name}.tar.xz";
+    sha256 = "846d8a5130580bb47c754bb7f20dc76311e589c00a18b02370a5d78b52409220";
+  };
+
+  buildInputs = [
+    intltool pkgconfig glib libnotify gtk3 libgee keybinder3 json_glib zeitgeist 
+    vala
+  ];
+
+  meta = { 
+      longDescription = ''
+        Semantic launcher written in Vala that you can use to start applications 
+        as well as find and access relevant documents and files by making use of 
+        the Zeitgeist engine
+      '';
+      description = ''
+        Semantic launcher to start applications and find relevant files
+      '';
+      homepage = https://launchpad.net/synapse-project;
+      license = stdenv.lib.licenses.gpl3;
+      maintainers = with stdenv.lib.maintainers; mahe;
+      platforms = with stdenv.lib.platforms; all;
+  };
+}
diff --git a/pkgs/applications/misc/synergy/cryptopp.patch b/pkgs/applications/misc/synergy/cryptopp.patch
deleted file mode 100644
index 1c296423acd..00000000000
--- a/pkgs/applications/misc/synergy/cryptopp.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-diff -urN synergy-1.4.17-Source/CMakeLists.txt synergy-1.4.17-Source-fix/CMakeLists.txt
---- synergy-1.4.17-Source/CMakeLists.txt	2014-03-14 21:34:19.000000000 +0100
-+++ synergy-1.4.17-Source-fix/CMakeLists.txt	2014-04-11 13:37:18.839338710 +0200
-@@ -145,6 +145,9 @@
- 	check_type_size(long SIZEOF_LONG)
- 	check_type_size(short SIZEOF_SHORT)
- 
-+	# let's just assume cryptopp exists (provided by the Nix expression)
-+	list(APPEND libs cryptopp)
-+
- 	# pthread is used on both Linux and Mac
- 	check_library_exists("pthread" pthread_create "" HAVE_PTHREAD)
- 	if (HAVE_PTHREAD)
-@@ -317,7 +320,6 @@
- endif()
- 
- add_subdirectory(src)
--add_subdirectory(ext)
- 
- if (WIN32)
- 	# TODO:	consider using /analyze to uncover potential bugs in the source code.
-diff -urN synergy-1.4.17-Source/src/lib/io/CryptoMode_cryptopp.h synergy-1.4.17-Source-fix/src/lib/io/CryptoMode_cryptopp.h
---- synergy-1.4.17-Source/src/lib/io/CryptoMode_cryptopp.h	2014-02-28 13:36:45.000000000 +0100
-+++ synergy-1.4.17-Source-fix/src/lib/io/CryptoMode_cryptopp.h	2014-04-11 13:36:01.111985556 +0200
-@@ -25,6 +25,6 @@
- #	pragma GCC system_header
- #endif 
- 
--#include <cryptopp562/gcm.h>
--#include <cryptopp562/modes.h>
--#include <cryptopp562/aes.h>
-+#include <cryptopp/gcm.h>
-+#include <cryptopp/modes.h>
-+#include <cryptopp/aes.h>
-diff -urN synergy-1.4.17-Source/src/lib/io/CryptoStream_cryptopp.h synergy-1.4.17-Source-fix/src/lib/io/CryptoStream_cryptopp.h
---- synergy-1.4.17-Source/src/lib/io/CryptoStream_cryptopp.h	2014-02-28 13:36:45.000000000 +0100
-+++ synergy-1.4.17-Source-fix/src/lib/io/CryptoStream_cryptopp.h	2014-04-11 13:36:07.173013005 +0200
-@@ -25,5 +25,5 @@
- #	pragma GCC system_header
- #endif
- 
--#include <cryptopp562/osrng.h>
--#include <cryptopp562/sha.h>
-+#include <cryptopp/osrng.h>
-+#include <cryptopp/sha.h>
diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix
index 0d3337b478f..ac60d928587 100644
--- a/pkgs/applications/misc/synergy/default.nix
+++ b/pkgs/applications/misc/synergy/default.nix
@@ -1,38 +1,44 @@
-{ stdenv, fetchFromGitHub, cmake, x11, libX11, libXi, libXtst, libXrandr
-, xinput, curl, cryptopp ? null, unzip }:
-
-assert stdenv.isLinux -> cryptopp != null;
+{ stdenv, fetchFromGitHub, cmake, xlibsWrapper, libX11, libXi, libXtst, libXrandr
+, xinput, curl, openssl, unzip }:
 
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "synergy-${version}";
-  version = "1.6.3";
+  version = "1.7.4";
 
   src = fetchFromGitHub {
     owner = "synergy";
     repo = "synergy";
-    rev = version;
-    sha256 = "0n4zvz669vi2wyn6i6xhxp0j3nvjl4yzm441cqv6hb0d5k26wbcn";
+    rev = "v${version}-stable";
+    sha256 = "0pxj0qpnsaffpaxik8vc5rjfinmx8ab3b2lssrxkfbs7isskvs33";
   };
 
-  patches = optional stdenv.isLinux ./cryptopp.patch;
-
-  postPatch = (if stdenv.isLinux then ''
-    sed -i -e '/HAVE_X11_EXTENSIONS_XRANDR_H/c \
-      set(HAVE_X11_EXTENSIONS_XRANDR_H true)' CMakeLists.txt
-  '' else ''
-    ${unzip}/bin/unzip -d ext/cryptopp562 ext/cryptopp562.zip
-  '') + ''
+  postPatch = ''
     ${unzip}/bin/unzip -d ext/gmock-1.6.0 ext/gmock-1.6.0.zip
     ${unzip}/bin/unzip -d ext/gtest-1.6.0 ext/gtest-1.6.0.zip
+  ''
+    # We have XRRNotifyEvent (libXrandr), but with the upstream CMakeLists.txt
+    # it's not able to find it (it's trying to search the store path of libX11
+    # instead) and we don't get XRandR support, even though the CMake output
+    # _seems_ to say so:
+    #
+    #   Looking for XRRQueryExtension in Xrandr - found
+    #
+    # The relevant part however is:
+    #
+    #   Looking for XRRNotifyEvent - not found
+    #
+    # So let's force it:
+  + optionalString stdenv.isLinux ''
+    sed -i -e '/HAVE_X11_EXTENSIONS_XRANDR_H/c \
+      set(HAVE_X11_EXTENSIONS_XRANDR_H true)
+    ' CMakeLists.txt
   '';
 
-  buildInputs = [ cmake x11 libX11 libXi libXtst libXrandr xinput curl ]
-             ++ optional stdenv.isLinux cryptopp;
-
-  # At this moment make install doesn't work for synergy
-  # http://synergy-foss.org/spit/issues/details/3317/
+  buildInputs = [
+    cmake xlibsWrapper libX11 libXi libXtst libXrandr xinput curl openssl
+  ];
 
   installPhase = ''
     mkdir -p $out/bin
@@ -45,8 +51,8 @@ stdenv.mkDerivation rec {
   checkPhase = "../bin/unittests";
 
   meta = {
-    description = "Tool to share the mouse keyboard and the clipboard between computers";
-    homepage = http://synergy-foss.org;
+    description = "Share one mouse and keyboard between multiple computers";
+    homepage = "http://synergy-project.org/";
     license = licenses.gpl2;
     maintainers = [ maintainers.aszlig ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/taffybar/default.nix b/pkgs/applications/misc/taffybar/default.nix
deleted file mode 100644
index 8f2f95193fb..00000000000
--- a/pkgs/applications/misc/taffybar/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, cairo, dbus, dyre, enclosedExceptions, filepath, gtk
-, 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.4";
-  sha256 = "046nfp878mqj9acsid94mqp8q1yqnm1hsdkv88m5qpmn182xljwh";
-  isLibrary = true;
-  isExecutable = true;
-  buildDepends = [
-    cairo dbus dyre enclosedExceptions filepath gtk gtkTraymanager
-    HStringTemplate HTTP mtl network networkUri parsec safe split stm
-    text time transformers utf8String X11 xdgBasedir xmonad
-    xmonadContrib
-  ];
-  pkgconfigDepends = [ gtk ];
-  meta = {
-    homepage = "http://github.com/travitch/taffybar";
-    description = "A desktop bar similar to xmobar, but with more GUI";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-  };
-})
diff --git a/pkgs/applications/misc/tasknc/default.nix b/pkgs/applications/misc/tasknc/default.nix
new file mode 100644
index 00000000000..f7460618d96
--- /dev/null
+++ b/pkgs/applications/misc/tasknc/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchurl, taskwarrior, perl, ncurses }:
+
+stdenv.mkDerivation rec {
+  version = "0.8";
+  name = "tasknc-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/mjheagle8/tasknc/archive/v${version}.tar.gz";
+    sha256 = "0max5schga9hmf3vfqk2ic91dr6raxglyyjcqchzla280kxn5c28";
+  };
+
+  #
+  # I know this is ugly, but the Makefile does strange things in this package,
+  # so we have to:
+  #
+  #   1. Remove the "doc" task dependency from the "all" target
+  #   2. Remove the "tasknc.1" task dependency from the "install" target
+  #   3. Remove the installing of the tasknc.1 file from the install target as
+  #      we just removed the build target for it.
+  #
+  # TODO : One could also provide a patch for the doc/manual.pod file so it
+  # actually builds, but I'm not familiar with this, so this is the faster
+  # approach for me. We have no manpage, though.
+  #
+  preConfigure = ''
+    sed -i -r 's,(all)(.*)doc,\1\2,' Makefile
+    sed -i -r 's,(install)(.*)tasknc\.1,\1\2,' Makefile
+    sed -i -r 's,install\ -D\ -m644\ tasknc\.1\ (.*),,' Makefile
+  '';
+
+  installPhase = ''
+    mkdir $out/bin/ -p
+    mkdir $out/share/man1 -p
+    mkdir $out/share/tasknc -p
+    DESTDIR=$out PREFIX= MANPREFIX=share make install
+  '';
+
+  buildInputs = [ taskwarrior perl ncurses ];
+
+  meta = {
+    homepage = "https://github.com/mjheagle8/tasknc";
+    description = "a ncurses wrapper around taskwarrior";
+    maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
+    platforms = stdenv.lib.platforms.linux; # Cannot test others
+  };
+}
diff --git a/pkgs/applications/misc/taskwarrior/default.nix b/pkgs/applications/misc/taskwarrior/default.nix
index fa8b11adbf8..7f3ca422323 100644
--- a/pkgs/applications/misc/taskwarrior/default.nix
+++ b/pkgs/applications/misc/taskwarrior/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "taskwarrior-${version}";
-  version = "2.4.0";
+  version = "2.4.4";
 
   enableParallelBuilding = true;
 
   src = fetchurl {
     url = "http://www.taskwarrior.org/download/task-${version}.tar.gz";
-    sha256 = "17hiv7zld06zb5xmyp96bw9xl6vp178fhffs660fxxpxn3srb9bg";
+    sha256 = "7ff406414e0be480f91981831507ac255297aab33d8246f98dbfd2b1b2df8e3b";
   };
 
   nativeBuildInputs = [ cmake libuuid gnutls ];
@@ -18,11 +18,11 @@ stdenv.mkDerivation rec {
     ln -s "../../share/doc/task/scripts/bash/task.sh" "$out/etc/bash_completion.d/"
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "GTD (getting things done) implementation";
     homepage = http://taskwarrior.org;
-    license = stdenv.lib.licenses.mit;
-    maintainers = [stdenv.lib.maintainers.marcweber];
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.mit;
+    maintainers = with maintainers; [ marcweber jgeerds ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/misc/terminal-notifier/default.nix b/pkgs/applications/misc/terminal-notifier/default.nix
index 94655614023..2afebec9ee3 100644
--- a/pkgs/applications/misc/terminal-notifier/default.nix
+++ b/pkgs/applications/misc/terminal-notifier/default.nix
@@ -16,7 +16,11 @@ stdenv.mkDerivation rec {
     mkdir -p $out/Applications
     mkdir -p $out/bin
     cp -r terminal-notifier.app $out/Applications
-    ln -s $out/Applications/terminal-notifier.app/Contents/MacOS/terminal-notifier $out/bin/terminal-notifier
+    cat >$out/bin/terminal-notifier <<EOF
+    cd $out/Applications/terminal-notifier.app
+    exec ./Contents/MacOS/terminal-notifier
+    EOF
+    chmod +x $out/bin/terminal-notifier
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/misc/termite/default.nix b/pkgs/applications/misc/termite/default.nix
index 7c1fe5fc5cb..ba3d3db3267 100644
--- a/pkgs/applications/misc/termite/default.nix
+++ b/pkgs/applications/misc/termite/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "termite-${version}";
-  version = "9";
+  version = "10";
 
   src = fetchgit {
     url = "https://github.com/thestinger/termite";
     rev = "refs/tags/v${version}";
-    sha256 = "0bnzfjk5yl5i96v5jnlvrz0d1jcp5lal6ppl7y8wx13166i6sdnh";
+    sha256 = "107v59x8q2m1cx1x3i5ciibw4nl1qbq7p58bfw0irkhp7sl7kjk2";
   };
 
   makeFlags = "VERSION=v${version}";
diff --git a/pkgs/applications/misc/tessel/default.nix b/pkgs/applications/misc/tessel/default.nix
deleted file mode 100644
index 6a11713c750..00000000000
--- a/pkgs/applications/misc/tessel/default.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ stdenv, fetchurl, callPackage, libusb1, pkgconfig, python, utillinux }:
-
-with stdenv.lib;
-
-let 
-  nodePackages = callPackage (import ../../../top-level/node-packages.nix) {
-    neededNatives =  [ libusb1 pkgconfig python utillinux ];
-    self = nodePackages;
-    generated = ./package.nix;
-  };
-
-in nodePackages.buildNodePackage rec {
-  name = "tessel-0.3.16";
-  bin = true;
-  
-  src = [
-    (fetchurl {
-      url = "http://registry.npmjs.org/tessel/-/tessel-0.3.16.tgz";
-      name = "tessel-0.3.16.tgz";
-      sha1 = "900a8d897ba03d7a9d5927697180284772d70738";
-    })
-  ];
-
-  deps = (filter (v: nixType v == "derivation") (attrValues nodePackages));
-
-  postInstall = ''
-    mkdir -p $out/etc/udev/rules.d
-    cp $out/lib/node_modules/tessel/install/85-tessel.rules $out/etc/udev/rules.d/
-  '';
-  
-  passthru.names = [ "tessel" ];
-
-  meta = {
-    description = "Command line tools and programmatic access library for Tessel devices";
-    homepage = https://tessel.io;
-    license = licenses.mit;
-    maintainers = with maintainers; [ goibhniu ];
-    platforms = with platforms; linux;
-  };
-}
diff --git a/pkgs/applications/misc/tessel/package.nix b/pkgs/applications/misc/tessel/package.nix
deleted file mode 100644
index d388387ccaf..00000000000
--- a/pkgs/applications/misc/tessel/package.nix
+++ /dev/null
@@ -1,1974 +0,0 @@
-{ self, fetchurl, fetchgit ? null, lib }:
-
-{
-  by-spec."abbrev"."1" =
-    self.by-version."abbrev"."1.0.5";
-  by-version."abbrev"."1.0.5" = lib.makeOverridable self.buildNodePackage {
-    name = "abbrev-1.0.5";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/abbrev/-/abbrev-1.0.5.tgz";
-        name = "abbrev-1.0.5.tgz";
-        sha1 = "5d8257bd9ebe435e698b2fa431afde4fe7b10b03";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."abbrev" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "abbrev" ];
-  };
-  by-spec."asn1"."0.1.11" =
-    self.by-version."asn1"."0.1.11";
-  by-version."asn1"."0.1.11" = lib.makeOverridable self.buildNodePackage {
-    name = "asn1-0.1.11";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz";
-        name = "asn1-0.1.11.tgz";
-        sha1 = "559be18376d08a4ec4dbe80877d27818639b2df7";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."asn1" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "asn1" ];
-  };
-  by-spec."assert-plus"."0.1.2" =
-    self.by-version."assert-plus"."0.1.2";
-  by-version."assert-plus"."0.1.2" = lib.makeOverridable self.buildNodePackage {
-    name = "assert-plus-0.1.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/assert-plus/-/assert-plus-0.1.2.tgz";
-        name = "assert-plus-0.1.2.tgz";
-        sha1 = "d93ffdbb67ac5507779be316a7d65146417beef8";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."assert-plus" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "assert-plus" ];
-  };
-  by-spec."async"."~0.2.9" =
-    self.by-version."async"."0.2.10";
-  by-version."async"."0.2.10" = lib.makeOverridable self.buildNodePackage {
-    name = "async-0.2.10";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/async/-/async-0.2.10.tgz";
-        name = "async-0.2.10.tgz";
-        sha1 = "b6bbe0b0674b9d719708ca38de8c237cb526c3d1";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."async" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "async" ];
-  };
-  "async" = self.by-version."async"."0.2.10";
-  by-spec."async"."~0.9.0" =
-    self.by-version."async"."0.9.0";
-  by-version."async"."0.9.0" = lib.makeOverridable self.buildNodePackage {
-    name = "async-0.9.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/async/-/async-0.9.0.tgz";
-        name = "async-0.9.0.tgz";
-        sha1 = "ac3613b1da9bed1b47510bb4651b8931e47146c7";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."async" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "async" ];
-  };
-  by-spec."aws-sign2"."~0.5.0" =
-    self.by-version."aws-sign2"."0.5.0";
-  by-version."aws-sign2"."0.5.0" = lib.makeOverridable self.buildNodePackage {
-    name = "aws-sign2-0.5.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz";
-        name = "aws-sign2-0.5.0.tgz";
-        sha1 = "c57103f7a17fc037f02d7c2e64b602ea223f7d63";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."aws-sign2" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "aws-sign2" ];
-  };
-  by-spec."bindings-shyp"."~0.2.3" =
-    self.by-version."bindings-shyp"."0.2.3";
-  by-version."bindings-shyp"."0.2.3" = lib.makeOverridable self.buildNodePackage {
-    name = "bindings-shyp-0.2.3";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/bindings-shyp/-/bindings-shyp-0.2.3.tgz";
-        name = "bindings-shyp-0.2.3.tgz";
-        sha1 = "909151c14c701f350eb6be8ad14784ad79813671";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."bindings-shyp" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "bindings-shyp" ];
-  };
-  by-spec."block-stream"."*" =
-    self.by-version."block-stream"."0.0.7";
-  by-version."block-stream"."0.0.7" = lib.makeOverridable self.buildNodePackage {
-    name = "block-stream-0.0.7";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/block-stream/-/block-stream-0.0.7.tgz";
-        name = "block-stream-0.0.7.tgz";
-        sha1 = "9088ab5ae1e861f4d81b176b4a8046080703deed";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."block-stream" or []);
-    deps = {
-      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "block-stream" ];
-  };
-  by-spec."boom"."0.4.x" =
-    self.by-version."boom"."0.4.2";
-  by-version."boom"."0.4.2" = lib.makeOverridable self.buildNodePackage {
-    name = "boom-0.4.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/boom/-/boom-0.4.2.tgz";
-        name = "boom-0.4.2.tgz";
-        sha1 = "7a636e9ded4efcefb19cef4947a3c67dfaee911b";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."boom" or []);
-    deps = {
-      "hoek-0.9.1" = self.by-version."hoek"."0.9.1";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "boom" ];
-  };
-  by-spec."buffer-equal"."~0.0.0" =
-    self.by-version."buffer-equal"."0.0.1";
-  by-version."buffer-equal"."0.0.1" = lib.makeOverridable self.buildNodePackage {
-    name = "buffer-equal-0.0.1";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz";
-        name = "buffer-equal-0.0.1.tgz";
-        sha1 = "91bc74b11ea405bc916bc6aa908faafa5b4aac4b";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."buffer-equal" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "buffer-equal" ];
-  };
-  by-spec."bunker"."0.1.X" =
-    self.by-version."bunker"."0.1.2";
-  by-version."bunker"."0.1.2" = lib.makeOverridable self.buildNodePackage {
-    name = "bunker-0.1.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/bunker/-/bunker-0.1.2.tgz";
-        name = "bunker-0.1.2.tgz";
-        sha1 = "c88992464a8e2a6ede86930375f92b58077ef97c";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."bunker" or []);
-    deps = {
-      "burrito-0.2.12" = self.by-version."burrito"."0.2.12";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "bunker" ];
-  };
-  by-spec."burrito".">=0.2.5 <0.3" =
-    self.by-version."burrito"."0.2.12";
-  by-version."burrito"."0.2.12" = lib.makeOverridable self.buildNodePackage {
-    name = "burrito-0.2.12";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/burrito/-/burrito-0.2.12.tgz";
-        name = "burrito-0.2.12.tgz";
-        sha1 = "d0d6e6ac81d5e99789c6fa4accb0b0031ea54f6b";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."burrito" or []);
-    deps = {
-      "traverse-0.5.2" = self.by-version."traverse"."0.5.2";
-      "uglify-js-1.1.1" = self.by-version."uglify-js"."1.1.1";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "burrito" ];
-  };
-  by-spec."charm"."0.1.x" =
-    self.by-version."charm"."0.1.2";
-  by-version."charm"."0.1.2" = lib.makeOverridable self.buildNodePackage {
-    name = "charm-0.1.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/charm/-/charm-0.1.2.tgz";
-        name = "charm-0.1.2.tgz";
-        sha1 = "06c21eed1a1b06aeb67553cdc53e23274bac2296";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."charm" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "charm" ];
-  };
-  by-spec."colony-compiler"."~0.6.21" =
-    self.by-version."colony-compiler"."0.6.23";
-  by-version."colony-compiler"."0.6.23" = lib.makeOverridable self.buildNodePackage {
-    name = "colony-compiler-0.6.23";
-    bin = true;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/colony-compiler/-/colony-compiler-0.6.23.tgz";
-        name = "colony-compiler-0.6.23.tgz";
-        sha1 = "0bef9e899e1ae928f6fe5e0dcca6cab4d47ab448";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."colony-compiler" or []);
-    deps = {
-      "colors-0.6.2" = self.by-version."colors"."0.6.2";
-      "optimist-0.5.2" = self.by-version."optimist"."0.5.2";
-      "nan-1.0.0" = self.by-version."nan"."1.0.0";
-      "async-0.9.0" = self.by-version."async"."0.9.0";
-      "bindings-shyp-0.2.3" = self.by-version."bindings-shyp"."0.2.3";
-      # "colony-compiler-shyp-win32-ia32-0.6.17-1" = self.by-version."colony-compiler-shyp-win32-ia32"."0.6.17-1";
-      # "colony-compiler-shyp-win32-x64-0.6.17-0" = self.by-version."colony-compiler-shyp-win32-x64"."0.6.17-0";
-      # "colony-compiler-shyp-darwin-x64-0.6.17-0" = self.by-version."colony-compiler-shyp-darwin-x64"."0.6.17-0";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "colony-compiler" ];
-  };
-  "colony-compiler" = self.by-version."colony-compiler"."0.6.23";
-  by-spec."colony-compiler-shyp-darwin-x64"."0.6.x" =
-    self.by-version."colony-compiler-shyp-darwin-x64"."0.6.17-0";
-  by-version."colony-compiler-shyp-darwin-x64"."0.6.17-0" = lib.makeOverridable self.buildNodePackage {
-    name = "colony-compiler-shyp-darwin-x64-0.6.17-0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/colony-compiler-shyp-darwin-x64/-/colony-compiler-shyp-darwin-x64-0.6.17-0.tgz";
-        name = "colony-compiler-shyp-darwin-x64-0.6.17-0.tgz";
-        sha1 = "33eedbee7ff8679fde69ba03bf27777110113732";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."colony-compiler-shyp-darwin-x64" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "colony-compiler-shyp-darwin-x64" ];
-  };
-  by-spec."colony-compiler-shyp-win32-ia32"."0.6.x" =
-    self.by-version."colony-compiler-shyp-win32-ia32"."0.6.17-1";
-  by-version."colony-compiler-shyp-win32-ia32"."0.6.17-1" = lib.makeOverridable self.buildNodePackage {
-    name = "colony-compiler-shyp-win32-ia32-0.6.17-1";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/colony-compiler-shyp-win32-ia32/-/colony-compiler-shyp-win32-ia32-0.6.17-1.tgz";
-        name = "colony-compiler-shyp-win32-ia32-0.6.17-1.tgz";
-        sha1 = "6e11a978be5df7be00112d2a349d5e34925f443a";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."colony-compiler-shyp-win32-ia32" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "colony-compiler-shyp-win32-ia32" ];
-  };
-  by-spec."colony-compiler-shyp-win32-x64"."0.6.x" =
-    self.by-version."colony-compiler-shyp-win32-x64"."0.6.17-0";
-  by-version."colony-compiler-shyp-win32-x64"."0.6.17-0" = lib.makeOverridable self.buildNodePackage {
-    name = "colony-compiler-shyp-win32-x64-0.6.17-0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/colony-compiler-shyp-win32-x64/-/colony-compiler-shyp-win32-x64-0.6.17-0.tgz";
-        name = "colony-compiler-shyp-win32-x64-0.6.17-0.tgz";
-        sha1 = "cd30416df0ab52e49c74e81d69bd23329983d005";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."colony-compiler-shyp-win32-x64" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "colony-compiler-shyp-win32-x64" ];
-  };
-  by-spec."colors"."0.5.x" =
-    self.by-version."colors"."0.5.1";
-  by-version."colors"."0.5.1" = lib.makeOverridable self.buildNodePackage {
-    name = "colors-0.5.1";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/colors/-/colors-0.5.1.tgz";
-        name = "colors-0.5.1.tgz";
-        sha1 = "7d0023eaeb154e8ee9fce75dcb923d0ed1667774";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."colors" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "colors" ];
-  };
-  by-spec."colors"."~0.6.0-1" =
-    self.by-version."colors"."0.6.2";
-  by-version."colors"."0.6.2" = lib.makeOverridable self.buildNodePackage {
-    name = "colors-0.6.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/colors/-/colors-0.6.2.tgz";
-        name = "colors-0.6.2.tgz";
-        sha1 = "2423fe6678ac0c5dae8852e5d0e5be08c997abcc";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."colors" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "colors" ];
-  };
-  "colors" = self.by-version."colors"."0.6.2";
-  by-spec."colors"."~0.6.1" =
-    self.by-version."colors"."0.6.2";
-  by-spec."colorsafeconsole"."0.0.4" =
-    self.by-version."colorsafeconsole"."0.0.4";
-  by-version."colorsafeconsole"."0.0.4" = lib.makeOverridable self.buildNodePackage {
-    name = "colorsafeconsole-0.0.4";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/colorsafeconsole/-/colorsafeconsole-0.0.4.tgz";
-        name = "colorsafeconsole-0.0.4.tgz";
-        sha1 = "dc10508bb000e51964fb485fd8557faa169effbe";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."colorsafeconsole" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "colorsafeconsole" ];
-  };
-  "colorsafeconsole" = self.by-version."colorsafeconsole"."0.0.4";
-  by-spec."combined-stream"."~0.0.4" =
-    self.by-version."combined-stream"."0.0.7";
-  by-version."combined-stream"."0.0.7" = lib.makeOverridable self.buildNodePackage {
-    name = "combined-stream-0.0.7";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/combined-stream/-/combined-stream-0.0.7.tgz";
-        name = "combined-stream-0.0.7.tgz";
-        sha1 = "0137e657baa5a7541c57ac37ac5fc07d73b4dc1f";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."combined-stream" or []);
-    deps = {
-      "delayed-stream-0.0.5" = self.by-version."delayed-stream"."0.0.5";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "combined-stream" ];
-  };
-  by-spec."cryptiles"."0.2.x" =
-    self.by-version."cryptiles"."0.2.2";
-  by-version."cryptiles"."0.2.2" = lib.makeOverridable self.buildNodePackage {
-    name = "cryptiles-0.2.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/cryptiles/-/cryptiles-0.2.2.tgz";
-        name = "cryptiles-0.2.2.tgz";
-        sha1 = "ed91ff1f17ad13d3748288594f8a48a0d26f325c";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."cryptiles" or []);
-    deps = {
-      "boom-0.4.2" = self.by-version."boom"."0.4.2";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "cryptiles" ];
-  };
-  by-spec."ctype"."0.5.2" =
-    self.by-version."ctype"."0.5.2";
-  by-version."ctype"."0.5.2" = lib.makeOverridable self.buildNodePackage {
-    name = "ctype-0.5.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/ctype/-/ctype-0.5.2.tgz";
-        name = "ctype-0.5.2.tgz";
-        sha1 = "fe8091d468a373a0b0c9ff8bbfb3425c00973a1d";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."ctype" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "ctype" ];
-  };
-  by-spec."debug"."^0.8.1" =
-    self.by-version."debug"."0.8.1";
-  by-version."debug"."0.8.1" = lib.makeOverridable self.buildNodePackage {
-    name = "debug-0.8.1";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/debug/-/debug-0.8.1.tgz";
-        name = "debug-0.8.1.tgz";
-        sha1 = "20ff4d26f5e422cb68a1bacbbb61039ad8c1c130";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."debug" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "debug" ];
-  };
-  "debug" = self.by-version."debug"."0.8.1";
-  by-spec."deep-equal"."~0.0.0" =
-    self.by-version."deep-equal"."0.0.0";
-  by-version."deep-equal"."0.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "deep-equal-0.0.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/deep-equal/-/deep-equal-0.0.0.tgz";
-        name = "deep-equal-0.0.0.tgz";
-        sha1 = "99679d3bbd047156fcd450d3d01eeb9068691e83";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."deep-equal" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "deep-equal" ];
-  };
-  by-spec."deep-equal"."~0.2.0" =
-    self.by-version."deep-equal"."0.2.1";
-  by-version."deep-equal"."0.2.1" = lib.makeOverridable self.buildNodePackage {
-    name = "deep-equal-0.2.1";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/deep-equal/-/deep-equal-0.2.1.tgz";
-        name = "deep-equal-0.2.1.tgz";
-        sha1 = "fad7a793224cbf0c3c7786f92ef780e4fc8cc878";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."deep-equal" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "deep-equal" ];
-  };
-  by-spec."deep-is"."0.1.x" =
-    self.by-version."deep-is"."0.1.3";
-  by-version."deep-is"."0.1.3" = lib.makeOverridable self.buildNodePackage {
-    name = "deep-is-0.1.3";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz";
-        name = "deep-is-0.1.3.tgz";
-        sha1 = "b369d6fb5dbc13eecf524f91b070feedc357cf34";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."deep-is" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "deep-is" ];
-  };
-  by-spec."defined"."~0.0.0" =
-    self.by-version."defined"."0.0.0";
-  by-version."defined"."0.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "defined-0.0.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/defined/-/defined-0.0.0.tgz";
-        name = "defined-0.0.0.tgz";
-        sha1 = "f35eea7d705e933baf13b2f03b3f83d921403b3e";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."defined" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "defined" ];
-  };
-  by-spec."delayed-stream"."0.0.5" =
-    self.by-version."delayed-stream"."0.0.5";
-  by-version."delayed-stream"."0.0.5" = lib.makeOverridable self.buildNodePackage {
-    name = "delayed-stream-0.0.5";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/delayed-stream/-/delayed-stream-0.0.5.tgz";
-        name = "delayed-stream-0.0.5.tgz";
-        sha1 = "d4b1f43a93e8296dfe02694f4680bc37a313c73f";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."delayed-stream" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "delayed-stream" ];
-  };
-  by-spec."difflet"."~0.2.0" =
-    self.by-version."difflet"."0.2.6";
-  by-version."difflet"."0.2.6" = lib.makeOverridable self.buildNodePackage {
-    name = "difflet-0.2.6";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/difflet/-/difflet-0.2.6.tgz";
-        name = "difflet-0.2.6.tgz";
-        sha1 = "ab23b31f5649b6faa8e3d2acbd334467365ca6fa";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."difflet" or []);
-    deps = {
-      "traverse-0.6.6" = self.by-version."traverse"."0.6.6";
-      "charm-0.1.2" = self.by-version."charm"."0.1.2";
-      "deep-is-0.1.3" = self.by-version."deep-is"."0.1.3";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "difflet" ];
-  };
-  by-spec."effess"."~0.0.2" =
-    self.by-version."effess"."0.0.5";
-  by-version."effess"."0.0.5" = lib.makeOverridable self.buildNodePackage {
-    name = "effess-0.0.5";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/effess/-/effess-0.0.5.tgz";
-        name = "effess-0.0.5.tgz";
-        sha1 = "d328fd03929c168c02a63d9d3d889657dc9499db";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."effess" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "effess" ];
-  };
-  by-spec."effess"."~0.0.5" =
-    self.by-version."effess"."0.0.5";
-  "effess" = self.by-version."effess"."0.0.5";
-  by-spec."forever-agent"."~0.5.0" =
-    self.by-version."forever-agent"."0.5.2";
-  by-version."forever-agent"."0.5.2" = lib.makeOverridable self.buildNodePackage {
-    name = "forever-agent-0.5.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/forever-agent/-/forever-agent-0.5.2.tgz";
-        name = "forever-agent-0.5.2.tgz";
-        sha1 = "6d0e09c4921f94a27f63d3b49c5feff1ea4c5130";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."forever-agent" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "forever-agent" ];
-  };
-  by-spec."form-data"."~0.1.0" =
-    self.by-version."form-data"."0.1.4";
-  by-version."form-data"."0.1.4" = lib.makeOverridable self.buildNodePackage {
-    name = "form-data-0.1.4";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/form-data/-/form-data-0.1.4.tgz";
-        name = "form-data-0.1.4.tgz";
-        sha1 = "91abd788aba9702b1aabfa8bc01031a2ac9e3b12";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."form-data" or []);
-    deps = {
-      "combined-stream-0.0.7" = self.by-version."combined-stream"."0.0.7";
-      "mime-1.2.11" = self.by-version."mime"."1.2.11";
-      "async-0.9.0" = self.by-version."async"."0.9.0";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "form-data" ];
-  };
-  by-spec."fstream"."~0.1.25" =
-    self.by-version."fstream"."0.1.31";
-  by-version."fstream"."0.1.31" = lib.makeOverridable self.buildNodePackage {
-    name = "fstream-0.1.31";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/fstream/-/fstream-0.1.31.tgz";
-        name = "fstream-0.1.31.tgz";
-        sha1 = "7337f058fbbbbefa8c9f561a28cab0849202c988";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."fstream" or []);
-    deps = {
-      "graceful-fs-3.0.4" = self.by-version."graceful-fs"."3.0.4";
-      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
-      "mkdirp-0.5.0" = self.by-version."mkdirp"."0.5.0";
-      "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "fstream" ];
-  };
-  "fstream" = self.by-version."fstream"."0.1.31";
-  by-spec."fstream"."~0.1.28" =
-    self.by-version."fstream"."0.1.31";
-  by-spec."glob"."~3.2.1" =
-    self.by-version."glob"."3.2.11";
-  by-version."glob"."3.2.11" = lib.makeOverridable self.buildNodePackage {
-    name = "glob-3.2.11";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/glob/-/glob-3.2.11.tgz";
-        name = "glob-3.2.11.tgz";
-        sha1 = "4a973f635b9190f715d10987d5c00fd2815ebe3d";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."glob" or []);
-    deps = {
-      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
-      "minimatch-0.3.0" = self.by-version."minimatch"."0.3.0";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "glob" ];
-  };
-  by-spec."glob"."~3.2.9" =
-    self.by-version."glob"."3.2.11";
-  by-spec."graceful-fs"."~1" =
-    self.by-version."graceful-fs"."1.2.3";
-  by-version."graceful-fs"."1.2.3" = lib.makeOverridable self.buildNodePackage {
-    name = "graceful-fs-1.2.3";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz";
-        name = "graceful-fs-1.2.3.tgz";
-        sha1 = "15a4806a57547cb2d2dbf27f42e89a8c3451b364";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."graceful-fs" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "graceful-fs" ];
-  };
-  by-spec."graceful-fs"."~3.0.2" =
-    self.by-version."graceful-fs"."3.0.4";
-  by-version."graceful-fs"."3.0.4" = lib.makeOverridable self.buildNodePackage {
-    name = "graceful-fs-3.0.4";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.4.tgz";
-        name = "graceful-fs-3.0.4.tgz";
-        sha1 = "a0306d9b0940e0fc512d33b5df1014e88e0637a3";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."graceful-fs" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "graceful-fs" ];
-  };
-  by-spec."hardware-resolve"."~0.1.3" =
-    self.by-version."hardware-resolve"."0.1.6";
-  by-version."hardware-resolve"."0.1.6" = lib.makeOverridable self.buildNodePackage {
-    name = "hardware-resolve-0.1.6";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/hardware-resolve/-/hardware-resolve-0.1.6.tgz";
-        name = "hardware-resolve-0.1.6.tgz";
-        sha1 = "b03f5077ab1b4b185ecd9486a3ba754f4b46e02a";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."hardware-resolve" or []);
-    deps = {
-      "minimatch-0.2.14" = self.by-version."minimatch"."0.2.14";
-      "osenv-0.0.3" = self.by-version."osenv"."0.0.3";
-      "effess-0.0.5" = self.by-version."effess"."0.0.5";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "hardware-resolve" ];
-  };
-  "hardware-resolve" = self.by-version."hardware-resolve"."0.1.6";
-  by-spec."hawk"."~1.0.0" =
-    self.by-version."hawk"."1.0.0";
-  by-version."hawk"."1.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "hawk-1.0.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/hawk/-/hawk-1.0.0.tgz";
-        name = "hawk-1.0.0.tgz";
-        sha1 = "b90bb169807285411da7ffcb8dd2598502d3b52d";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."hawk" or []);
-    deps = {
-      "hoek-0.9.1" = self.by-version."hoek"."0.9.1";
-      "boom-0.4.2" = self.by-version."boom"."0.4.2";
-      "cryptiles-0.2.2" = self.by-version."cryptiles"."0.2.2";
-      "sntp-0.2.4" = self.by-version."sntp"."0.2.4";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "hawk" ];
-  };
-  by-spec."hoek"."0.9.x" =
-    self.by-version."hoek"."0.9.1";
-  by-version."hoek"."0.9.1" = lib.makeOverridable self.buildNodePackage {
-    name = "hoek-0.9.1";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/hoek/-/hoek-0.9.1.tgz";
-        name = "hoek-0.9.1.tgz";
-        sha1 = "3d322462badf07716ea7eb85baf88079cddce505";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."hoek" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "hoek" ];
-  };
-  by-spec."http-signature"."~0.10.0" =
-    self.by-version."http-signature"."0.10.0";
-  by-version."http-signature"."0.10.0" = lib.makeOverridable self.buildNodePackage {
-    name = "http-signature-0.10.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/http-signature/-/http-signature-0.10.0.tgz";
-        name = "http-signature-0.10.0.tgz";
-        sha1 = "1494e4f5000a83c0f11bcc12d6007c530cb99582";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."http-signature" or []);
-    deps = {
-      "assert-plus-0.1.2" = self.by-version."assert-plus"."0.1.2";
-      "asn1-0.1.11" = self.by-version."asn1"."0.1.11";
-      "ctype-0.5.2" = self.by-version."ctype"."0.5.2";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "http-signature" ];
-  };
-  by-spec."humanize"."0.0.9" =
-    self.by-version."humanize"."0.0.9";
-  by-version."humanize"."0.0.9" = lib.makeOverridable self.buildNodePackage {
-    name = "humanize-0.0.9";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/humanize/-/humanize-0.0.9.tgz";
-        name = "humanize-0.0.9.tgz";
-        sha1 = "1994ffaecdfe9c441ed2bdac7452b7bb4c9e41a4";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."humanize" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "humanize" ];
-  };
-  "humanize" = self.by-version."humanize"."0.0.9";
-  by-spec."inherits"."*" =
-    self.by-version."inherits"."2.0.1";
-  by-version."inherits"."2.0.1" = lib.makeOverridable self.buildNodePackage {
-    name = "inherits-2.0.1";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz";
-        name = "inherits-2.0.1.tgz";
-        sha1 = "b17d08d326b4423e568eff719f91b0b1cbdf69f1";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."inherits" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "inherits" ];
-  };
-  by-spec."inherits"."2" =
-    self.by-version."inherits"."2.0.1";
-  by-spec."inherits"."~2.0.0" =
-    self.by-version."inherits"."2.0.1";
-  by-spec."inherits"."~2.0.1" =
-    self.by-version."inherits"."2.0.1";
-  by-spec."json-stringify-safe"."~5.0.0" =
-    self.by-version."json-stringify-safe"."5.0.0";
-  by-version."json-stringify-safe"."5.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "json-stringify-safe-5.0.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.0.tgz";
-        name = "json-stringify-safe-5.0.0.tgz";
-        sha1 = "4c1f228b5050837eba9d21f50c2e6e320624566e";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."json-stringify-safe" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "json-stringify-safe" ];
-  };
-  by-spec."keypress"."~0.2.1" =
-    self.by-version."keypress"."0.2.1";
-  by-version."keypress"."0.2.1" = lib.makeOverridable self.buildNodePackage {
-    name = "keypress-0.2.1";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/keypress/-/keypress-0.2.1.tgz";
-        name = "keypress-0.2.1.tgz";
-        sha1 = "1e80454250018dbad4c3fe94497d6e67b6269c77";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."keypress" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "keypress" ];
-  };
-  "keypress" = self.by-version."keypress"."0.2.1";
-  by-spec."lru-cache"."2" =
-    self.by-version."lru-cache"."2.5.0";
-  by-version."lru-cache"."2.5.0" = lib.makeOverridable self.buildNodePackage {
-    name = "lru-cache-2.5.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/lru-cache/-/lru-cache-2.5.0.tgz";
-        name = "lru-cache-2.5.0.tgz";
-        sha1 = "d82388ae9c960becbea0c73bb9eb79b6c6ce9aeb";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."lru-cache" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "lru-cache" ];
-  };
-  by-spec."mime"."~1.2.11" =
-    self.by-version."mime"."1.2.11";
-  by-version."mime"."1.2.11" = lib.makeOverridable self.buildNodePackage {
-    name = "mime-1.2.11";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/mime/-/mime-1.2.11.tgz";
-        name = "mime-1.2.11.tgz";
-        sha1 = "58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."mime" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "mime" ];
-  };
-  by-spec."mime"."~1.2.9" =
-    self.by-version."mime"."1.2.11";
-  by-spec."minimatch"."0.3" =
-    self.by-version."minimatch"."0.3.0";
-  by-version."minimatch"."0.3.0" = lib.makeOverridable self.buildNodePackage {
-    name = "minimatch-0.3.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz";
-        name = "minimatch-0.3.0.tgz";
-        sha1 = "275d8edaac4f1bb3326472089e7949c8394699dd";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."minimatch" or []);
-    deps = {
-      "lru-cache-2.5.0" = self.by-version."lru-cache"."2.5.0";
-      "sigmund-1.0.0" = self.by-version."sigmund"."1.0.0";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "minimatch" ];
-  };
-  by-spec."minimatch"."~0.2.14" =
-    self.by-version."minimatch"."0.2.14";
-  by-version."minimatch"."0.2.14" = lib.makeOverridable self.buildNodePackage {
-    name = "minimatch-0.2.14";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz";
-        name = "minimatch-0.2.14.tgz";
-        sha1 = "c74e780574f63c6f9a090e90efbe6ef53a6a756a";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."minimatch" or []);
-    deps = {
-      "lru-cache-2.5.0" = self.by-version."lru-cache"."2.5.0";
-      "sigmund-1.0.0" = self.by-version."sigmund"."1.0.0";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "minimatch" ];
-  };
-  by-spec."minimist"."0.0.8" =
-    self.by-version."minimist"."0.0.8";
-  by-version."minimist"."0.0.8" = lib.makeOverridable self.buildNodePackage {
-    name = "minimist-0.0.8";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
-        name = "minimist-0.0.8.tgz";
-        sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."minimist" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "minimist" ];
-  };
-  by-spec."mkdirp"."0.5" =
-    self.by-version."mkdirp"."0.5.0";
-  by-version."mkdirp"."0.5.0" = lib.makeOverridable self.buildNodePackage {
-    name = "mkdirp-0.5.0";
-    bin = true;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz";
-        name = "mkdirp-0.5.0.tgz";
-        sha1 = "1d73076a6df986cd9344e15e71fcc05a4c9abf12";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."mkdirp" or []);
-    deps = {
-      "minimist-0.0.8" = self.by-version."minimist"."0.0.8";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "mkdirp" ];
-  };
-  by-spec."mkdirp"."~0.3 || 0.4 || 0.5" =
-    self.by-version."mkdirp"."0.5.0";
-  by-spec."mkdirp"."~0.3.5" =
-    self.by-version."mkdirp"."0.3.5";
-  by-version."mkdirp"."0.3.5" = lib.makeOverridable self.buildNodePackage {
-    name = "mkdirp-0.3.5";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz";
-        name = "mkdirp-0.3.5.tgz";
-        sha1 = "de3e5f8961c88c787ee1368df849ac4413eca8d7";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."mkdirp" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "mkdirp" ];
-  };
-  "mkdirp" = self.by-version."mkdirp"."0.3.5";
-  by-spec."mute-stream"."~0.0.4" =
-    self.by-version."mute-stream"."0.0.4";
-  by-version."mute-stream"."0.0.4" = lib.makeOverridable self.buildNodePackage {
-    name = "mute-stream-0.0.4";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/mute-stream/-/mute-stream-0.0.4.tgz";
-        name = "mute-stream-0.0.4.tgz";
-        sha1 = "a9219960a6d5d5d046597aee51252c6655f7177e";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."mute-stream" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "mute-stream" ];
-  };
-  by-spec."my-local-ip"."~1.0.0" =
-    self.by-version."my-local-ip"."1.0.0";
-  by-version."my-local-ip"."1.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "my-local-ip-1.0.0";
-    bin = true;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/my-local-ip/-/my-local-ip-1.0.0.tgz";
-        name = "my-local-ip-1.0.0.tgz";
-        sha1 = "37585555a4ff1985309edac7c2a045a466be6c32";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."my-local-ip" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "my-local-ip" ];
-  };
-  "my-local-ip" = self.by-version."my-local-ip"."1.0.0";
-  by-spec."nan"."~1.0.0" =
-    self.by-version."nan"."1.0.0";
-  by-version."nan"."1.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "nan-1.0.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/nan/-/nan-1.0.0.tgz";
-        name = "nan-1.0.0.tgz";
-        sha1 = "ae24f8850818d662fcab5acf7f3b95bfaa2ccf38";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."nan" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "nan" ];
-  };
-  by-spec."node-uuid"."~1.4.0" =
-    self.by-version."node-uuid"."1.4.1";
-  by-version."node-uuid"."1.4.1" = lib.makeOverridable self.buildNodePackage {
-    name = "node-uuid-1.4.1";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/node-uuid/-/node-uuid-1.4.1.tgz";
-        name = "node-uuid-1.4.1.tgz";
-        sha1 = "39aef510e5889a3dca9c895b506c73aae1bac048";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."node-uuid" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "node-uuid" ];
-  };
-  by-spec."nomnom"."~1.6.2" =
-    self.by-version."nomnom"."1.6.2";
-  by-version."nomnom"."1.6.2" = lib.makeOverridable self.buildNodePackage {
-    name = "nomnom-1.6.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/nomnom/-/nomnom-1.6.2.tgz";
-        name = "nomnom-1.6.2.tgz";
-        sha1 = "84a66a260174408fc5b77a18f888eccc44fb6971";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."nomnom" or []);
-    deps = {
-      "colors-0.5.1" = self.by-version."colors"."0.5.1";
-      "underscore-1.4.4" = self.by-version."underscore"."1.4.4";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "nomnom" ];
-  };
-  "nomnom" = self.by-version."nomnom"."1.6.2";
-  by-spec."nopt"."~2" =
-    self.by-version."nopt"."2.2.1";
-  by-version."nopt"."2.2.1" = lib.makeOverridable self.buildNodePackage {
-    name = "nopt-2.2.1";
-    bin = true;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/nopt/-/nopt-2.2.1.tgz";
-        name = "nopt-2.2.1.tgz";
-        sha1 = "2aa09b7d1768487b3b89a9c5aa52335bff0baea7";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."nopt" or []);
-    deps = {
-      "abbrev-1.0.5" = self.by-version."abbrev"."1.0.5";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "nopt" ];
-  };
-  by-spec."oauth-sign"."~0.3.0" =
-    self.by-version."oauth-sign"."0.3.0";
-  by-version."oauth-sign"."0.3.0" = lib.makeOverridable self.buildNodePackage {
-    name = "oauth-sign-0.3.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/oauth-sign/-/oauth-sign-0.3.0.tgz";
-        name = "oauth-sign-0.3.0.tgz";
-        sha1 = "cb540f93bb2b22a7d5941691a288d60e8ea9386e";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."oauth-sign" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "oauth-sign" ];
-  };
-  by-spec."object-inspect"."~0.4.0" =
-    self.by-version."object-inspect"."0.4.0";
-  by-version."object-inspect"."0.4.0" = lib.makeOverridable self.buildNodePackage {
-    name = "object-inspect-0.4.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/object-inspect/-/object-inspect-0.4.0.tgz";
-        name = "object-inspect-0.4.0.tgz";
-        sha1 = "f5157c116c1455b243b06ee97703392c5ad89fec";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."object-inspect" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "object-inspect" ];
-  };
-  by-spec."optimist"."~0.5.2" =
-    self.by-version."optimist"."0.5.2";
-  by-version."optimist"."0.5.2" = lib.makeOverridable self.buildNodePackage {
-    name = "optimist-0.5.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/optimist/-/optimist-0.5.2.tgz";
-        name = "optimist-0.5.2.tgz";
-        sha1 = "85c8c1454b3315e4a78947e857b1df033450bfbc";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."optimist" or []);
-    deps = {
-      "wordwrap-0.0.2" = self.by-version."wordwrap"."0.0.2";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "optimist" ];
-  };
-  by-spec."osenv"."0.0.3" =
-    self.by-version."osenv"."0.0.3";
-  by-version."osenv"."0.0.3" = lib.makeOverridable self.buildNodePackage {
-    name = "osenv-0.0.3";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/osenv/-/osenv-0.0.3.tgz";
-        name = "osenv-0.0.3.tgz";
-        sha1 = "cd6ad8ddb290915ad9e22765576025d411f29cb6";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."osenv" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "osenv" ];
-  };
-  by-spec."punycode".">=0.2.0" =
-    self.by-version."punycode"."1.3.2";
-  by-version."punycode"."1.3.2" = lib.makeOverridable self.buildNodePackage {
-    name = "punycode-1.3.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz";
-        name = "punycode-1.3.2.tgz";
-        sha1 = "9653a036fb7c1ee42342f2325cceefea3926c48d";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."punycode" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "punycode" ];
-  };
-  by-spec."qs"."~0.6.0" =
-    self.by-version."qs"."0.6.6";
-  by-version."qs"."0.6.6" = lib.makeOverridable self.buildNodePackage {
-    name = "qs-0.6.6";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/qs/-/qs-0.6.6.tgz";
-        name = "qs-0.6.6.tgz";
-        sha1 = "6e015098ff51968b8a3c819001d5f2c89bc4b107";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."qs" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "qs" ];
-  };
-  by-spec."read"."^1.0.5" =
-    self.by-version."read"."1.0.5";
-  by-version."read"."1.0.5" = lib.makeOverridable self.buildNodePackage {
-    name = "read-1.0.5";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/read/-/read-1.0.5.tgz";
-        name = "read-1.0.5.tgz";
-        sha1 = "007a3d169478aa710a491727e453effb92e76203";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."read" or []);
-    deps = {
-      "mute-stream-0.0.4" = self.by-version."mute-stream"."0.0.4";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "read" ];
-  };
-  "read" = self.by-version."read"."1.0.5";
-  by-spec."request"."~2.33.0" =
-    self.by-version."request"."2.33.0";
-  by-version."request"."2.33.0" = lib.makeOverridable self.buildNodePackage {
-    name = "request-2.33.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/request/-/request-2.33.0.tgz";
-        name = "request-2.33.0.tgz";
-        sha1 = "5167878131726070ec633752ea230a2379dc65ff";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."request" or []);
-    deps = {
-      "qs-0.6.6" = self.by-version."qs"."0.6.6";
-      "json-stringify-safe-5.0.0" = self.by-version."json-stringify-safe"."5.0.0";
-      "forever-agent-0.5.2" = self.by-version."forever-agent"."0.5.2";
-      "node-uuid-1.4.1" = self.by-version."node-uuid"."1.4.1";
-      "mime-1.2.11" = self.by-version."mime"."1.2.11";
-      "tough-cookie-0.12.1" = self.by-version."tough-cookie"."0.12.1";
-      "form-data-0.1.4" = self.by-version."form-data"."0.1.4";
-      "tunnel-agent-0.3.0" = self.by-version."tunnel-agent"."0.3.0";
-      "http-signature-0.10.0" = self.by-version."http-signature"."0.10.0";
-      "oauth-sign-0.3.0" = self.by-version."oauth-sign"."0.3.0";
-      "hawk-1.0.0" = self.by-version."hawk"."1.0.0";
-      "aws-sign2-0.5.0" = self.by-version."aws-sign2"."0.5.0";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "request" ];
-  };
-  "request" = self.by-version."request"."2.33.0";
-  by-spec."resumer"."~0.0.0" =
-    self.by-version."resumer"."0.0.0";
-  by-version."resumer"."0.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "resumer-0.0.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/resumer/-/resumer-0.0.0.tgz";
-        name = "resumer-0.0.0.tgz";
-        sha1 = "f1e8f461e4064ba39e82af3cdc2a8c893d076759";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."resumer" or []);
-    deps = {
-      "through-2.3.6" = self.by-version."through"."2.3.6";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "resumer" ];
-  };
-  by-spec."rimraf"."2" =
-    self.by-version."rimraf"."2.2.8";
-  by-version."rimraf"."2.2.8" = lib.makeOverridable self.buildNodePackage {
-    name = "rimraf-2.2.8";
-    bin = true;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz";
-        name = "rimraf-2.2.8.tgz";
-        sha1 = "e439be2aaee327321952730f99a8929e4fc50582";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."rimraf" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "rimraf" ];
-  };
-  by-spec."rimraf"."~2.1.4" =
-    self.by-version."rimraf"."2.1.4";
-  by-version."rimraf"."2.1.4" = lib.makeOverridable self.buildNodePackage {
-    name = "rimraf-2.1.4";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/rimraf/-/rimraf-2.1.4.tgz";
-        name = "rimraf-2.1.4.tgz";
-        sha1 = "5a6eb62eeda068f51ede50f29b3e5cd22f3d9bb2";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."rimraf" or []);
-    deps = {
-      "graceful-fs-1.2.3" = self.by-version."graceful-fs"."1.2.3";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "rimraf" ];
-  };
-  by-spec."runforcover"."~0.0.2" =
-    self.by-version."runforcover"."0.0.2";
-  by-version."runforcover"."0.0.2" = lib.makeOverridable self.buildNodePackage {
-    name = "runforcover-0.0.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/runforcover/-/runforcover-0.0.2.tgz";
-        name = "runforcover-0.0.2.tgz";
-        sha1 = "344f057d8d45d33aebc6cc82204678f69c4857cc";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."runforcover" or []);
-    deps = {
-      "bunker-0.1.2" = self.by-version."bunker"."0.1.2";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "runforcover" ];
-  };
-  by-spec."semver"."^2.3.0" =
-    self.by-version."semver"."2.3.2";
-  by-version."semver"."2.3.2" = lib.makeOverridable self.buildNodePackage {
-    name = "semver-2.3.2";
-    bin = true;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/semver/-/semver-2.3.2.tgz";
-        name = "semver-2.3.2.tgz";
-        sha1 = "b9848f25d6cf36333073ec9ef8856d42f1233e52";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."semver" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "semver" ];
-  };
-  "semver" = self.by-version."semver"."2.3.2";
-  by-spec."sigmund"."~1.0.0" =
-    self.by-version."sigmund"."1.0.0";
-  by-version."sigmund"."1.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "sigmund-1.0.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz";
-        name = "sigmund-1.0.0.tgz";
-        sha1 = "66a2b3a749ae8b5fb89efd4fcc01dc94fbe02296";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."sigmund" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "sigmund" ];
-  };
-  by-spec."slide"."*" =
-    self.by-version."slide"."1.1.6";
-  by-version."slide"."1.1.6" = lib.makeOverridable self.buildNodePackage {
-    name = "slide-1.1.6";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/slide/-/slide-1.1.6.tgz";
-        name = "slide-1.1.6.tgz";
-        sha1 = "56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."slide" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "slide" ];
-  };
-  by-spec."sntp"."0.2.x" =
-    self.by-version."sntp"."0.2.4";
-  by-version."sntp"."0.2.4" = lib.makeOverridable self.buildNodePackage {
-    name = "sntp-0.2.4";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/sntp/-/sntp-0.2.4.tgz";
-        name = "sntp-0.2.4.tgz";
-        sha1 = "fb885f18b0f3aad189f824862536bceeec750900";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."sntp" or []);
-    deps = {
-      "hoek-0.9.1" = self.by-version."hoek"."0.9.1";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "sntp" ];
-  };
-  by-spec."structured-clone"."~0.2.2" =
-    self.by-version."structured-clone"."0.2.2";
-  by-version."structured-clone"."0.2.2" = lib.makeOverridable self.buildNodePackage {
-    name = "structured-clone-0.2.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/structured-clone/-/structured-clone-0.2.2.tgz";
-        name = "structured-clone-0.2.2.tgz";
-        sha1 = "ac92b6be31958a643db30f1335abc6a1b02dfdc2";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."structured-clone" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "structured-clone" ];
-  };
-  "structured-clone" = self.by-version."structured-clone"."0.2.2";
-  by-spec."tap"."~0.4.8" =
-    self.by-version."tap"."0.4.13";
-  by-version."tap"."0.4.13" = lib.makeOverridable self.buildNodePackage {
-    name = "tap-0.4.13";
-    bin = true;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/tap/-/tap-0.4.13.tgz";
-        name = "tap-0.4.13.tgz";
-        sha1 = "3986134d6759727fc2223e61126eeb87243accbc";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."tap" or []);
-    deps = {
-      "buffer-equal-0.0.1" = self.by-version."buffer-equal"."0.0.1";
-      "deep-equal-0.0.0" = self.by-version."deep-equal"."0.0.0";
-      "difflet-0.2.6" = self.by-version."difflet"."0.2.6";
-      "glob-3.2.11" = self.by-version."glob"."3.2.11";
-      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
-      "mkdirp-0.5.0" = self.by-version."mkdirp"."0.5.0";
-      "nopt-2.2.1" = self.by-version."nopt"."2.2.1";
-      "runforcover-0.0.2" = self.by-version."runforcover"."0.0.2";
-      "slide-1.1.6" = self.by-version."slide"."1.1.6";
-      "yamlish-0.0.6" = self.by-version."yamlish"."0.0.6";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "tap" ];
-  };
-  "tap" = self.by-version."tap"."0.4.13";
-  by-spec."tape"."~2.12.3" =
-    self.by-version."tape"."2.12.3";
-  by-version."tape"."2.12.3" = lib.makeOverridable self.buildNodePackage {
-    name = "tape-2.12.3";
-    bin = true;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/tape/-/tape-2.12.3.tgz";
-        name = "tape-2.12.3.tgz";
-        sha1 = "5559d5454050292627537c012991ec6971f66156";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."tape" or []);
-    deps = {
-      "deep-equal-0.2.1" = self.by-version."deep-equal"."0.2.1";
-      "defined-0.0.0" = self.by-version."defined"."0.0.0";
-      "glob-3.2.11" = self.by-version."glob"."3.2.11";
-      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
-      "object-inspect-0.4.0" = self.by-version."object-inspect"."0.4.0";
-      "resumer-0.0.0" = self.by-version."resumer"."0.0.0";
-      "through-2.3.6" = self.by-version."through"."2.3.6";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "tape" ];
-  };
-  "tape" = self.by-version."tape"."2.12.3";
-  by-spec."tar"."~0.1.18" =
-    self.by-version."tar"."0.1.20";
-  by-version."tar"."0.1.20" = lib.makeOverridable self.buildNodePackage {
-    name = "tar-0.1.20";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/tar/-/tar-0.1.20.tgz";
-        name = "tar-0.1.20.tgz";
-        sha1 = "42940bae5b5f22c74483699126f9f3f27449cb13";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."tar" or []);
-    deps = {
-      "block-stream-0.0.7" = self.by-version."block-stream"."0.0.7";
-      "fstream-0.1.31" = self.by-version."fstream"."0.1.31";
-      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "tar" ];
-  };
-  "tar" = self.by-version."tar"."0.1.20";
-  by-spec."temp"."~0.6.0" =
-    self.by-version."temp"."0.6.0";
-  by-version."temp"."0.6.0" = lib.makeOverridable self.buildNodePackage {
-    name = "temp-0.6.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/temp/-/temp-0.6.0.tgz";
-        name = "temp-0.6.0.tgz";
-        sha1 = "6b13df5cddf370f2e3a606ca40f202c419173f07";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."temp" or []);
-    deps = {
-      "rimraf-2.1.4" = self.by-version."rimraf"."2.1.4";
-      "osenv-0.0.3" = self.by-version."osenv"."0.0.3";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "temp" ];
-  };
-  "temp" = self.by-version."temp"."0.6.0";
-  by-spec."through"."~2.3.4" =
-    self.by-version."through"."2.3.6";
-  by-version."through"."2.3.6" = lib.makeOverridable self.buildNodePackage {
-    name = "through-2.3.6";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/through/-/through-2.3.6.tgz";
-        name = "through-2.3.6.tgz";
-        sha1 = "26681c0f524671021d4e29df7c36bce2d0ecf2e8";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."through" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "through" ];
-  };
-  by-spec."tough-cookie".">=0.12.0" =
-    self.by-version."tough-cookie"."0.12.1";
-  by-version."tough-cookie"."0.12.1" = lib.makeOverridable self.buildNodePackage {
-    name = "tough-cookie-0.12.1";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/tough-cookie/-/tough-cookie-0.12.1.tgz";
-        name = "tough-cookie-0.12.1.tgz";
-        sha1 = "8220c7e21abd5b13d96804254bd5a81ebf2c7d62";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."tough-cookie" or []);
-    deps = {
-      "punycode-1.3.2" = self.by-version."punycode"."1.3.2";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "tough-cookie" ];
-  };
-  by-spec."traverse"."0.6.x" =
-    self.by-version."traverse"."0.6.6";
-  by-version."traverse"."0.6.6" = lib.makeOverridable self.buildNodePackage {
-    name = "traverse-0.6.6";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz";
-        name = "traverse-0.6.6.tgz";
-        sha1 = "cbdf560fd7b9af632502fed40f918c157ea97137";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."traverse" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "traverse" ];
-  };
-  by-spec."traverse"."~0.5.1" =
-    self.by-version."traverse"."0.5.2";
-  by-version."traverse"."0.5.2" = lib.makeOverridable self.buildNodePackage {
-    name = "traverse-0.5.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/traverse/-/traverse-0.5.2.tgz";
-        name = "traverse-0.5.2.tgz";
-        sha1 = "e203c58d5f7f0e37db6e74c0acb929bb09b61d85";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."traverse" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "traverse" ];
-  };
-  by-spec."tunnel-agent"."~0.3.0" =
-    self.by-version."tunnel-agent"."0.3.0";
-  by-version."tunnel-agent"."0.3.0" = lib.makeOverridable self.buildNodePackage {
-    name = "tunnel-agent-0.3.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.3.0.tgz";
-        name = "tunnel-agent-0.3.0.tgz";
-        sha1 = "ad681b68f5321ad2827c4cfb1b7d5df2cfe942ee";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."tunnel-agent" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "tunnel-agent" ];
-  };
-  by-spec."uglify-js"."~1.1.1" =
-    self.by-version."uglify-js"."1.1.1";
-  by-version."uglify-js"."1.1.1" = lib.makeOverridable self.buildNodePackage {
-    name = "uglify-js-1.1.1";
-    bin = true;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/uglify-js/-/uglify-js-1.1.1.tgz";
-        name = "uglify-js-1.1.1.tgz";
-        sha1 = "ee71a97c4cefd06a1a9b20437f34118982aa035b";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."uglify-js" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "uglify-js" ];
-  };
-  by-spec."underscore"."~1.4.4" =
-    self.by-version."underscore"."1.4.4";
-  by-version."underscore"."1.4.4" = lib.makeOverridable self.buildNodePackage {
-    name = "underscore-1.4.4";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz";
-        name = "underscore-1.4.4.tgz";
-        sha1 = "61a6a32010622afa07963bf325203cf12239d604";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."underscore" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "underscore" ];
-  };
-  by-spec."usb"."~0.3.11" =
-    self.by-version."usb"."0.3.11";
-  by-version."usb"."0.3.11" = lib.makeOverridable self.buildNodePackage {
-    name = "usb-0.3.11";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/usb/-/usb-0.3.11.tgz";
-        name = "usb-0.3.11.tgz";
-        sha1 = "ee61d114181fd1de8738053920cde069d0aa428e";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."usb" or []);
-    deps = {
-      "bindings-shyp-0.2.3" = self.by-version."bindings-shyp"."0.2.3";
-      # "usb-shyp-win32-x64-0.3.11-0" = self.by-version."usb-shyp-win32-x64"."0.3.11-0";
-      # "usb-shyp-win32-ia32-0.3.11-0" = self.by-version."usb-shyp-win32-ia32"."0.3.11-0";
-      # "usb-shyp-darwin-x64-0.3.11-0" = self.by-version."usb-shyp-darwin-x64"."0.3.11-0";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "usb" ];
-  };
-  "usb" = self.by-version."usb"."0.3.11";
-  by-spec."usb-shyp-darwin-x64"."0.3.x" =
-    self.by-version."usb-shyp-darwin-x64"."0.3.11-0";
-  by-version."usb-shyp-darwin-x64"."0.3.11-0" = lib.makeOverridable self.buildNodePackage {
-    name = "usb-shyp-darwin-x64-0.3.11-0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/usb-shyp-darwin-x64/-/usb-shyp-darwin-x64-0.3.11-0.tgz";
-        name = "usb-shyp-darwin-x64-0.3.11-0.tgz";
-        sha1 = "8e6c98e5dff676576dac02c8a0465f1eae833285";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."usb-shyp-darwin-x64" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "usb-shyp-darwin-x64" ];
-  };
-  by-spec."usb-shyp-win32-ia32"."0.3.x" =
-    self.by-version."usb-shyp-win32-ia32"."0.3.11-0";
-  by-version."usb-shyp-win32-ia32"."0.3.11-0" = lib.makeOverridable self.buildNodePackage {
-    name = "usb-shyp-win32-ia32-0.3.11-0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/usb-shyp-win32-ia32/-/usb-shyp-win32-ia32-0.3.11-0.tgz";
-        name = "usb-shyp-win32-ia32-0.3.11-0.tgz";
-        sha1 = "365babb7f648cb8aff12f70c65445e1b0958bbbb";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."usb-shyp-win32-ia32" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "usb-shyp-win32-ia32" ];
-  };
-  by-spec."usb-shyp-win32-x64"."0.3.x" =
-    self.by-version."usb-shyp-win32-x64"."0.3.11-0";
-  by-version."usb-shyp-win32-x64"."0.3.11-0" = lib.makeOverridable self.buildNodePackage {
-    name = "usb-shyp-win32-x64-0.3.11-0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/usb-shyp-win32-x64/-/usb-shyp-win32-x64-0.3.11-0.tgz";
-        name = "usb-shyp-win32-x64-0.3.11-0.tgz";
-        sha1 = "561417f00ab33c9d990a56e3a4ee446a21a3fcbe";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."usb-shyp-win32-x64" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "usb-shyp-win32-x64" ];
-  };
-  by-spec."wordwrap"."~0.0.2" =
-    self.by-version."wordwrap"."0.0.2";
-  by-version."wordwrap"."0.0.2" = lib.makeOverridable self.buildNodePackage {
-    name = "wordwrap-0.0.2";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz";
-        name = "wordwrap-0.0.2.tgz";
-        sha1 = "b79669bb42ecb409f83d583cad52ca17eaa1643f";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."wordwrap" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "wordwrap" ];
-  };
-  by-spec."yamlish"."*" =
-    self.by-version."yamlish"."0.0.6";
-  by-version."yamlish"."0.0.6" = lib.makeOverridable self.buildNodePackage {
-    name = "yamlish-0.0.6";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/yamlish/-/yamlish-0.0.6.tgz";
-        name = "yamlish-0.0.6.tgz";
-        sha1 = "c5df8f7661731351e39eb52223f83a46659452e3";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."yamlish" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "yamlish" ];
-  };
-}
diff --git a/pkgs/applications/misc/tilda/default.nix b/pkgs/applications/misc/tilda/default.nix
index 187ab039014..c7a01f2ac1b 100644
--- a/pkgs/applications/misc/tilda/default.nix
+++ b/pkgs/applications/misc/tilda/default.nix
@@ -17,8 +17,12 @@ stdenv.mkDerivation rec {
 
   LD_LIBRARY_PATH = "${expat}/lib"; # ugly hack for xgettext to work during build
 
+  # The config locking scheme relies on the binary being called "tilda",
+  # (`pgrep -C tilda`), so a simple `wrapProgram` won't suffice:
   postInstall = ''
-    wrapProgram "$out/bin/tilda" \
+    mkdir $out/bin/wrapped
+    mv "$out/bin/tilda" "$out/bin/wrapped/tilda"
+    makeWrapper "$out/bin/wrapped/tilda" "$out/bin/tilda" \
         --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
 
diff --git a/pkgs/applications/misc/tpmmanager/default.nix b/pkgs/applications/misc/tpmmanager/default.nix
new file mode 100644
index 00000000000..85a1c72b349
--- /dev/null
+++ b/pkgs/applications/misc/tpmmanager/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchgit, qt4, trousers }:
+
+stdenv.mkDerivation rec {
+  version = "0.8.1";
+  name = "tpmmanager-${version}";
+
+  src = fetchgit {
+    url = "https://github.com/Sirrix-AG/TPMManager";
+    rev = "9f989206635a6d2c1342576c90fa73eb239519cd";
+    sha256 = "24a606f88fed67ed0d0e61dc220295e9e1ab8db3ef3d028fa34b04ff30652d8e";
+  };
+
+  buildInputs = [ qt4 trousers ];
+
+  preBuild = ''
+    qmake -makefile PREFIX=\$out
+    '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    install -Dpm755 -D bin/tpmmanager $out/bin/tpmmanager
+
+    mkdir -p $out/share/applications
+    cat > $out/share/applications/tpmmanager.desktop <<EOF
+    [Desktop Entry]
+    Type=Application
+    Version=1.0
+    Name=tpmmanager
+    Comment=TPM manager
+    Exec=$out/bin/tpmmanager
+    Terminal=false
+    EOF
+    '';
+
+  meta = {
+    homepage = https://projects.sirrix.com/trac/tpmmanager;
+    description = "Tool for managing the TPM";
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = with stdenv.lib.maintainers; [ tstrobel ];
+    platforms = with stdenv.lib.platforms; linux;
+    inherit version;
+  };
+}
diff --git a/pkgs/applications/misc/tthsum/default.nix b/pkgs/applications/misc/tthsum/default.nix
new file mode 100644
index 00000000000..66bfcbcf4d9
--- /dev/null
+++ b/pkgs/applications/misc/tthsum/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "tthsum-${version}";
+  version = "1.3.2";
+
+  src = fetchurl {
+    url = "http://tthsum.devs.nu/pkg/tthsum-${version}.tar.bz2";
+    sha256 = "0z6jq8lbg9rasv98kxfs56936dgpgzsg3yc9k52878qfw1l2bp59";
+  };
+
+  installPhase = ''
+    mkdir -p $out/bin $out/share/man/man1
+    cp share/tthsum.1.gz $out/share/man/man1
+    cp obj-unix/tthsum $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "An md5sum-alike program that works with Tiger/THEX hashes";
+    longDescription = ''
+      tthsum generates or checks TTH checksums (root of the THEX hash
+      tree). The Merkle Hash Tree, invented by Ralph Merkle, is a hash
+      construct that exhibits desirable properties for verifying the
+      integrity of files and file subranges in an incremental or
+      out-of-order fashion. tthsum uses the Tiger hash algorithm for
+      both the internal and the leaf nodes.
+
+      The specification of the Tiger hash algorithm is at:
+      http://www.cs.technion.ac.il/~biham/Reports/Tiger/
+
+      The specification of the THEX algorithm is at:
+      http://adc.sourceforge.net/draft-jchapweske-thex-02.html
+    '';
+    homepage = http://tthsum.devs.nu/;
+    license = licenses.gpl3Plus;
+    maintainers = [ maintainers.ebzzry ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/misc/udevil/default.nix b/pkgs/applications/misc/udevil/default.nix
new file mode 100644
index 00000000000..5ba80348d1f
--- /dev/null
+++ b/pkgs/applications/misc/udevil/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl, intltool, glib, pkgconfig, udev, utillinux, acl }:
+stdenv.mkDerivation {
+  name = "udevil-0.4.4";
+  src = fetchurl {
+    url = https://github.com/IgnorantGuru/udevil/archive/0.4.4.tar.gz;
+    sha256 = "0z1bhaayambrcn7bgnrqk445k50ifabmw8q4i9qj49nnbcvxhbxd";
+  };
+  buildInputs = [ intltool glib pkgconfig udev ];
+  configurePhase = ''
+    substituteInPlace src/Makefile.am --replace "-o root -g root" ""
+    substituteInPlace src/Makefile.in --replace "-o root -g root" ""
+    ./configure \
+      --prefix=$out \
+      --with-mount-prog=${utillinux}/bin/mount \
+      --with-umount-prog=${utillinux}/bin/umount \
+      --with-losetup-prog=${utillinux}/bin/losetup \
+      --with-setfacl-prog=${acl}/bin/setfacl \
+      --sysconfdir=$prefix/etc
+  '';
+  preConfigure = ''
+    cat src/Makefile.am
+    exit 2
+  '';
+  meta = {
+    description = "A command line Linux program which mounts and unmounts removable devices without a password, shows device info, and monitors device changes";
+    homepage = https://ignorantguru.github.io/udevil/;
+    platforms = stdenv.lib.platforms.linux;
+    license = stdenv.lib.licenses.gpl3;
+  };
+}
diff --git a/pkgs/applications/misc/vifm/default.nix b/pkgs/applications/misc/vifm/default.nix
index 5ff010005e4..3852acfc9f3 100644
--- a/pkgs/applications/misc/vifm/default.nix
+++ b/pkgs/applications/misc/vifm/default.nix
@@ -2,14 +2,14 @@
 
 let
   name = "vifm-${version}";
-  version = "0.7.8";
+  version = "0.8";
 
 in stdenv.mkDerivation {
   inherit name;
 
   src = fetchurl {
     url = "mirror://sourceforge/project/vifm/vifm/${name}.tar.bz2";
-    sha256 = "00vnkr60ci6qwh95kzx399xm97g26svxl9i0y77qv99q41nb5ysx";
+    sha256 = "1syyvdcgwnvjxzmpf9f4gfi0ipwmlavg11zr7wiz8qplvi86psv9";
   };
 
   buildInputs = [ utillinux ncurses file libX11 which groff ];
diff --git a/pkgs/applications/misc/viking/default.nix b/pkgs/applications/misc/viking/default.nix
index 9afabe0372d..19fd910195f 100644
--- a/pkgs/applications/misc/viking/default.nix
+++ b/pkgs/applications/misc/viking/default.nix
@@ -1,33 +1,37 @@
-{ fetchurl, stdenv, pkgconfig, intltool, gettext, gtk, expat, curl
+{ fetchurl, stdenv, makeWrapper, pkgconfig, intltool, gettext, gtk, expat, curl
 , gpsd, bc, file, gnome_doc_utils, libexif, libxml2, libxslt, scrollkeeper
-, docbook_xml_dtd_412 }:
+, docbook_xml_dtd_412, gexiv2, sqlite, gpsbabel }:
 
-let version = "1.3"; in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   name = "viking-${version}";
+  version = "1.6";
 
   src = fetchurl {
-    url = "mirror://sourceforge/viking/viking/${version}/viking-${version}.tar.gz";
-    sha256 = "1psgy1myx9xn7zgpvqrpricsv041sz41mm82hj5i28k72fq47p2l";
+    url = "mirror://sourceforge/viking/viking/viking-${version}.tar.bz2";
+    sha256 = "02ljnnc1in3cnafmld93qvzgx3j4qsgac2a53q18s6sp5hvvvw91";
   };
 
-  buildInputs =
-   [ pkgconfig intltool gettext gtk expat curl gpsd bc file gnome_doc_utils
-     libexif libxml2 libxslt scrollkeeper docbook_xml_dtd_412
-   ];
+  buildInputs = [ makeWrapper pkgconfig intltool gettext gtk expat curl gpsd bc file gnome_doc_utils
+    libexif libxml2 libxslt scrollkeeper docbook_xml_dtd_412 gexiv2 sqlite
+  ];
 
-  configureFlags = [ "--disable-scrollkeeper" ];
+  configureFlags = [ "--disable-scrollkeeper --disable-mapnik" ];
 
-  preBuild =
-    '' sed -i help/Makefile \
-           -e 's|--noout|--noout --nonet --path "${scrollkeeper}/share/xml/scrollkeeper/dtds"|g'
-    '';
+  preBuild = ''
+    sed -i help/Makefile \
+        -e 's|--noout|--noout --nonet --path "${scrollkeeper}/share/xml/scrollkeeper/dtds"|g'
+    sed -i help/Makefile -e 's|--postvalid||g'
+  '';
 
   doCheck = true;
 
-  meta = {
-    description = "GPS data editor and analyzer";
+  postInstall = ''
+    wrapProgram $out/bin/viking \
+      --prefix PATH : "${gpsbabel}/bin"
+  '';
 
+  meta = with stdenv.lib; {
+    description = "GPS data editor and analyzer";
     longDescription = ''
       Viking is a free/open source program to manage GPS data.  You
       can import and plot tracks and waypoints, show Openstreetmaps
@@ -35,9 +39,8 @@ stdenv.mkDerivation {
       on the map, make new tracks and waypoints, see real-time GPS
       position, etc.
     '';
-
     homepage = http://viking.sourceforge.net/;
-
-    license = stdenv.lib.licenses.gpl2Plus;
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ pSub ];
   };
 }
diff --git a/pkgs/applications/misc/vit/default.nix b/pkgs/applications/misc/vit/default.nix
new file mode 100644
index 00000000000..d8dea641c3a
--- /dev/null
+++ b/pkgs/applications/misc/vit/default.nix
@@ -0,0 +1,36 @@
+{ pkgs, fetchgit, stdenv, makeWrapper, taskwarrior, ncurses,
+perl, perlPackages }:
+
+let
+  version = "1.2";
+in
+stdenv.mkDerivation {
+  name = "vit-${version}";
+
+  src = fetchgit {
+    url = "https://git.tasktools.org/scm/ex/vit.git";
+    rev = "7d0042ca30e9d09cfbf9743b3bc72096e4a8fe1e";
+    sha256 = "92cad7169b3870145dff02256e547ae270996a314b841d3daed392ac6722827f";
+  };
+
+  preConfigure = ''
+    substituteInPlace Makefile.in \
+      --replace sudo ""
+    substituteInPlace configure \
+      --replace /usr/bin/perl ${perl}/bin/perl
+  '';
+
+  postInstall = ''
+    wrapProgram $out/bin/vit --prefix PERL5LIB : $PERL5LIB
+  '';
+
+  buildInputs = [ taskwarrior ncurses perlPackages.Curses perl makeWrapper ];
+
+  meta = {
+    description = "Visual Interactive Taskwarrior";
+    maintainers = with pkgs.lib.maintainers; [ matthiasbeyer ];
+    platforms = pkgs.lib.platforms.linux;
+    license = pkgs.lib.licenses.gpl3;
+  };
+}
+
diff --git a/pkgs/applications/misc/wordnet/default.nix b/pkgs/applications/misc/wordnet/default.nix
index 6ead69db220..b244e9c1bfc 100644
--- a/pkgs/applications/misc/wordnet/default.nix
+++ b/pkgs/applications/misc/wordnet/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, tcl, tk, x11, makeWrapper}:
+{stdenv, fetchurl, tcl, tk, xlibsWrapper, makeWrapper}:
 
 let version = "3.0"; in
 stdenv.mkDerivation {
@@ -8,7 +8,11 @@ stdenv.mkDerivation {
     sha256 = "08pgjvd2vvmqk3h641x63nxp7wqimb9r30889mkyfh2agc62sjbc";
   };
 
-  buildInputs = [tcl tk x11 makeWrapper];
+  buildInputs = [tcl tk xlibsWrapper makeWrapper];
+
+  patchPhase = ''
+    sed "13i#define USE_INTERP_RESULT 1" -i src/stubs.c
+  '';
 
   # Needs the path to `tclConfig.sh' and `tkConfig.sh'.
   configureFlags = "--with-tcl=" + tcl + "/lib " +
diff --git a/pkgs/applications/misc/xca/0001-Fix-for-openssl-1.0.1i.patch b/pkgs/applications/misc/xca/0001-Fix-for-openssl-1.0.1i.patch
deleted file mode 100644
index 9bfe3831c4a..00000000000
--- a/pkgs/applications/misc/xca/0001-Fix-for-openssl-1.0.1i.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From abd9d530776e8bb6d8f05312fc3ae3044796139c Mon Sep 17 00:00:00 2001
-From: Oliver Winker <oliver@oli1170.net>
-Date: Tue, 12 Aug 2014 19:08:05 +0200
-Subject: [PATCH] Fix for openssl 1.0.1i
-
-Fixes following application error
----
-Errors
-error:0D0C40D8:asn1 encoding routines:c2i_ASN1_OBJECT:invalid object encoding error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error error:0D0C40D8:asn1 encoding routines:c2i_ASN1_OBJECT:invalid object encoding error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error error:0D0C40D8:asn1 encoding routines:c2i_ASN1_OBJECT:invalid object encoding error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error error:0D0C40D8:asn1 encoding routines:c2i_ASN1_OBJECT:invalid object encoding error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error error:0D0C40D8:asn1 encoding routines:c2i_ASN1_OBJECT:invalid object encoding error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error
----
-
-Due to openssl 1.0.1i change:
----
-commit 03b04ddac162c7b7fa3c57eadccc5a583a00d291
-Author: Emilia Kasper <emilia@openssl.org>
-Date:   Wed Jul 2 19:02:33 2014 +0200
-
-    Fix OID handling:
-
-    - Upon parsing, reject OIDs with invalid base-128 encoding.
-    - Always NUL-terminate the destination buffer in OBJ_obj2txt printing function.
-
-    CVE-2014-3508
-
-    Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
-    Reviewed-by: Kurt Roeckx <kurt@openssl.org>
-    Reviewed-by: Tim Hudson <tjh@openssl.org>
----
----
- lib/x509v3ext.cpp | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/lib/x509v3ext.cpp b/lib/x509v3ext.cpp
-index cf74c32..d94cbda 100644
---- a/lib/x509v3ext.cpp
-+++ b/lib/x509v3ext.cpp
-@@ -27,6 +27,8 @@ x509v3ext::x509v3ext(const X509_EXTENSION *n)
- x509v3ext::x509v3ext(const x509v3ext &n)
- {
- 	ext = NULL;
-+	if (!n.isValid())
-+		return;
- 	set(n.ext);
- }
- 
-@@ -743,7 +745,7 @@ X509_EXTENSION *x509v3ext::get() const
- 
- bool x509v3ext::isValid() const
- {
--	return ext->value->length > 0 &&
-+	return ext && ext->value && ext->value->length > 0 &&
- 		OBJ_obj2nid(ext->object) != NID_undef;
- }
- 
--- 
-2.0.1
-
diff --git a/pkgs/applications/misc/xca/default.nix b/pkgs/applications/misc/xca/default.nix
index d5fa5e5ec56..76de3627630 100644
--- a/pkgs/applications/misc/xca/default.nix
+++ b/pkgs/applications/misc/xca/default.nix
@@ -2,21 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "xca-${version}";
-  version = "0.9.3";
+  version = "1.3.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/xca/${name}.tar.gz";
-    sha256 = "1fn6kh8mdy65rrgjif7j9wn3mxg1mrrcnhzpi86hfy24ic6bahk8";
+    sha256 = "10rxma0zm7vryzv69m0aqlvmbf82d261wa77kxni4h3lndwqvpf2";
   };
 
-  patches = [ ./0001-Fix-for-openssl-1.0.1i.patch ];
-
-  configurePhase = ''
-    export PATH=$PATH:${which}/bin
-    export QTDIR=${qt4}
-    prefix=$out ./configure ${openssl} ${libtool}
-  '';
-
   postInstall = ''
     wrapProgram "$out/bin/xca" \
       --prefix LD_LIBRARY_PATH : "${qt4}/lib:${gcc.cc}/lib:${gcc.cc}/lib64:${openssl}/lib:${libtool}/lib"
diff --git a/pkgs/applications/misc/xcruiser/default.nix b/pkgs/applications/misc/xcruiser/default.nix
index 15202a1e90c..f580c41c0a4 100644
--- a/pkgs/applications/misc/xcruiser/default.nix
+++ b/pkgs/applications/misc/xcruiser/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, gccmakedep, xlibs }:
+{ stdenv, fetchurl, gccmakedep, xorg }:
 
 stdenv.mkDerivation {
   name = "xcruiser-0.30";
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
       sha256 = "1r8whva38xizqdh7jmn6wcmfmsndc67pkw22wzfzr6rq0vf6hywi";
     };
 
-  buildInputs = with xlibs; [ gccmakedep imake libXt libXaw libXpm libXext ];
+  buildInputs = with xorg; [ gccmakedep imake libXt libXaw libXpm libXext ];
 
   configurePhase = "xmkmf -a";
 
diff --git a/pkgs/applications/misc/xfe/default.nix b/pkgs/applications/misc/xfe/default.nix
index 5055ac50089..0ea1159208f 100644
--- a/pkgs/applications/misc/xfe/default.nix
+++ b/pkgs/applications/misc/xfe/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fox, pkgconfig, gettext, x11, gcc, intltool, file, libpng }:
+{ stdenv, fetchurl, fox, pkgconfig, gettext, xlibsWrapper, gcc, intltool, file, libpng }:
 
 stdenv.mkDerivation rec {
   name = "xfe-1.37";
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "1g9a0bpny2m7ixgxpqjh0wvh2x6d0lpj6682zn5dfqwan4j2xfsd";
   };
 
-  buildInputs = [ fox pkgconfig gettext x11 gcc intltool file libpng ];
+  buildInputs = [ fox pkgconfig gettext xlibsWrapper gcc intltool file libpng ];
 
   preConfigure = ''
     sed -i s,/usr/share/xfe,$out/share/xfe, src/xfedefs.h
diff --git a/pkgs/applications/misc/xiphos/default.nix b/pkgs/applications/misc/xiphos/default.nix
index 78d49939677..dbc5e84e67b 100644
--- a/pkgs/applications/misc/xiphos/default.nix
+++ b/pkgs/applications/misc/xiphos/default.nix
@@ -2,7 +2,7 @@
 , python
 , intltool
 , docbook2x, docbook_xml_dtd_412, libxslt
-, sword, clucene_core
+, sword, clucene_core, biblesync
 , gnome_doc_utils
 , libgsf, gconf
 , gtkhtml, libgtkhtml, libglade, scrollkeeper
@@ -12,15 +12,15 @@
 
 stdenv.mkDerivation rec {
   name = "xiphos-${version}";  
-  version = "4.0.0";
+  version = "4.0.3-20150806";
 
   src = fetchurl {
-    url = "http://downloads.sourceforge.net/project/gnomesword/Xiphos/${version}/${name}.tar.gz";
-    sha256 = "0rk9xhnaqm17af9ppjf2yqpy9p8s0z7m5ax586b7p16lylcqjh68";
+    url = "http://downloads.sourceforge.net/project/gnomesword/Xiphos/4.0.3/${name}.tar.gz";
+    sha256 = "1xkvhpasdlda2rp0874znz158z4rjh1hpynwy13d96kjxq4npiqv";
   };
 
   buildInputs = [ pkgconfig python intltool docbook2x docbook_xml_dtd_412 libxslt
-                  sword clucene_core gnome_doc_utils libgsf gconf gtkhtml libgtkhtml
+                  sword clucene_core biblesync gnome_doc_utils libgsf gconf gtkhtml libgtkhtml
                   libglade scrollkeeper webkitgtk dbus_glib enchant isocodes libuuid ];
 
   prePatch = ''
diff --git a/pkgs/applications/misc/xlsfonts/default.nix b/pkgs/applications/misc/xlsfonts/default.nix
deleted file mode 100644
index 7584ebf72fb..00000000000
--- a/pkgs/applications/misc/xlsfonts/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-# This program used to come with xorg releases, but now I could only find it
-# at http://www.x.org/releases/individual/.
-# That is why this expression is not inside pkgs.xorg
-
-{stdenv, fetchurl, libX11, pkgconfig}:
-stdenv.mkDerivation rec {
-  name = "xlsfonts-1.0.4";
-
-  src = fetchurl {
-    url = "mirror://xorg/individual/app/${name}.tar.bz2";
-    sha256 = "1lhcx600z9v65nk93xaxfzi79bm4naynabb52gz1vy1bxj2r25r8";
-  };
-
-  buildInputs = [libX11 pkgconfig];
-
-  meta = {
-    homepage = http://www.x.org/;
-    description = "Lists the fonts available in the X server";
-    license = stdenv.lib.licenses.free;
-    maintainers = with stdenv.lib.maintainers; [viric];
-    platforms = with stdenv.lib.platforms; linux ++ darwin;
-  };
-}
diff --git a/pkgs/applications/misc/xmobar/default.nix b/pkgs/applications/misc/xmobar/default.nix
deleted file mode 100644
index 65201f2495b..00000000000
--- a/pkgs/applications/misc/xmobar/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, alsaCore, alsaMixer, dbus, filepath, hinotify, HTTP
-, libmpd, libXpm, libXrandr, mtl, parsec, regexCompat, stm, time
-, timezoneOlson, timezoneSeries, transformers, utf8String
-, wirelesstools, X11, X11Xft
-}:
-
-cabal.mkDerivation (self: {
-  pname = "xmobar";
-  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 transformers
-    utf8String X11 X11Xft
-  ];
-  extraLibraries = [ libXpm libXrandr wirelesstools ];
-  configureFlags = "-fall_extensions";
-  meta = {
-    homepage = "http://xmobar.org";
-    description = "A Minimalistic Text Based Status Bar";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.stdenv.lib.platforms.linux;
-  };
-})
diff --git a/pkgs/applications/misc/xmove/default.nix b/pkgs/applications/misc/xmove/default.nix
index 6612c22d4fe..a4427c11f6a 100644
--- a/pkgs/applications/misc/xmove/default.nix
+++ b/pkgs/applications/misc/xmove/default.nix
@@ -3,7 +3,7 @@ stdenv.mkDerivation {
   name = "xmove-2.0b2";
 
   src = fetchurl {
-    url = http://ftp.debian.org/debian/pool/main/x/xmove/xmove_2.0beta2.orig.tar.gz;
+    url = mirror://debian/pool/main/x/xmove/xmove_2.0beta2.orig.tar.gz;
     sha256 = "0q310k3bi39vdk0kqqvsahnb1k6lx9hlx80iyxnkq59l6jxnhyhf";
   };
 
diff --git a/pkgs/applications/misc/xpdf/default.nix b/pkgs/applications/misc/xpdf/default.nix
index 2e690dcce09..e677164ecf4 100644
--- a/pkgs/applications/misc/xpdf/default.nix
+++ b/pkgs/applications/misc/xpdf/default.nix
@@ -1,9 +1,9 @@
 { enableGUI ? true, enablePDFtoPPM ? true, useT1Lib ? false
-, stdenv, fetchurl, zlib, libpng, x11 ? null, motif ? null, freetype ? null, t1lib ? null
+, stdenv, fetchurl, zlib, libpng, xlibsWrapper ? null, motif ? null, freetype ? null, t1lib ? null
 , base14Fonts ? null
 }:
 
-assert enableGUI -> x11 != null && motif != null && freetype != null;
+assert enableGUI -> xlibsWrapper != null && motif != null && freetype != null;
 assert enablePDFtoPPM -> freetype != null;
 assert useT1Lib -> t1lib != null;
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
   };
 
   buildInputs = [ zlib libpng ] ++
-    stdenv.lib.optionals enableGUI [x11 motif] ++
+    stdenv.lib.optionals enableGUI [xlibsWrapper motif] ++
     stdenv.lib.optional useT1Lib t1lib ++
     stdenv.lib.optional enablePDFtoPPM freetype;
 
diff --git a/pkgs/applications/misc/xterm/default.nix b/pkgs/applications/misc/xterm/default.nix
index 1caa78d580d..2c47e1c9805 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-317";
+  name = "xterm-320";
 
   src = fetchurl {
     url = "ftp://invisible-island.net/xterm/${name}.tgz";
-    sha256 = "0v9mirqws1vb8wxbdgn1w166ln7xmapg1913c7kzjs3mwkdv1rfj";
+    sha256 = "19r4rs5pjq944m7aiqligazf6wgmv4f023x3bx183h1l8dbvn3d6";
   };
 
   buildInputs =
diff --git a/pkgs/applications/misc/yakuake/default.nix b/pkgs/applications/misc/yakuake/default.nix
index 323782d60fe..10b63d1db51 100644
--- a/pkgs/applications/misc/yakuake/default.nix
+++ b/pkgs/applications/misc/yakuake/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, kdelibs, gettext, konsole }:
+{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
+, kdelibs, konsole }:
 
 let
   pname = "yakuake";
@@ -14,7 +15,7 @@ stdenv.mkDerivation {
 
   buildInputs = [ kdelibs ];
 
-  nativeBuildInputs = [ gettext ];
+  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
 
   patchPhase = ''
     substituteInPlace app/terminal.cpp --replace \"konsolepart\" "\"${konsole}/lib/kde4/libkonsolepart.so\""
diff --git a/pkgs/applications/misc/yeganesh/default.nix b/pkgs/applications/misc/yeganesh/default.nix
deleted file mode 100644
index f26d315fce2..00000000000
--- a/pkgs/applications/misc/yeganesh/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, filepath, strict, time, xdgBasedir }:
-
-cabal.mkDerivation (self: {
-  pname = "yeganesh";
-  version = "2.5";
-  sha256 = "1bgw5v1g5n06jj0lyxpf48mdpaa2s49g0lbagf3jf9q01rb92bvf";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [ filepath strict time xdgBasedir ];
-  meta = {
-    homepage = "http://dmwit.com/yeganesh";
-    description = "small dmenu wrapper";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-  };
-})
diff --git a/pkgs/applications/misc/zathura/core/default.nix b/pkgs/applications/misc/zathura/core/default.nix
index 5f9b3850ad7..cab6423b77e 100644
--- a/pkgs/applications/misc/zathura/core/default.nix
+++ b/pkgs/applications/misc/zathura/core/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, pkgconfig, gtk, girara, ncurses, gettext, docutils, file, makeWrapper, zathura_icon, sqlite }:
 
 stdenv.mkDerivation rec {
-  version = "0.3.2";
+  version = "0.3.3";
   name = "zathura-core-${version}";
 
   src = fetchurl {
     url = "http://pwmt.org/projects/zathura/download/zathura-${version}.tar.gz";
-    sha256 = "1qk5s7cyqp4l673yhma5igk9g24p5jyqyy81fdk7q7xjqlym19px";
+    sha256 = "1rywx09qn6ap5hb1z31wxby4lzdrqdbldm51pjk1ifflr37xwirk";
   };
 
   buildInputs = [ pkgconfig file gtk girara gettext makeWrapper sqlite ];
diff --git a/pkgs/applications/misc/zathura/default.nix b/pkgs/applications/misc/zathura/default.nix
index 6f1b5f400dd..8b37e22d117 100644
--- a/pkgs/applications/misc/zathura/default.nix
+++ b/pkgs/applications/misc/zathura/default.nix
@@ -1,4 +1,4 @@
-{ callPackage, pkgs, fetchurl, stdenv, useMupdf }:
+{ callPackage, lib, pkgs, fetchurl, stdenv, useMupdf }:
 
 rec {
   inherit stdenv;
@@ -40,7 +40,7 @@ rec {
 
     preferLocalBuild = true;
 
-    meta = {
+    meta = with lib; {
       homepage = http://pwmt.org/projects/zathura/;
       description = "A highly customizable and functional PDF viewer";
       longDescription = ''
@@ -49,9 +49,9 @@ rec {
         is an application that provides a minimalistic and space saving interface
         as well as an easy usage that mainly focuses on keyboard interaction.
       '';
-      license = stdenv.lib.licenses.zlib;
-      platforms = stdenv.lib.platforms.linux;
-      maintainers = [ stdenv.lib.maintainers.garbas stdenv.lib.maintainers.smironov ];
+      license = licenses.zlib;
+      platforms = platforms.linux;
+      maintainers = with maintainers;[ garbas smironov ];
     };
   };
 }
diff --git a/pkgs/applications/misc/zathura/pdf-mupdf/default.nix b/pkgs/applications/misc/zathura/pdf-mupdf/default.nix
index a6f12a64cf0..48b177120fb 100644
--- a/pkgs/applications/misc/zathura/pdf-mupdf/default.nix
+++ b/pkgs/applications/misc/zathura/pdf-mupdf/default.nix
@@ -1,29 +1,32 @@
-{ stdenv, fetchurl, pkgconfig, zathura_core, gtk, girara, mupdf, openssl, openjpeg, libjpeg, jbig2dec }:
+{ stdenv, lib, fetchgit, pkgconfig, zathura_core, gtk, girara, mupdf, openssl, openjpeg, libjpeg, jbig2dec }:
 
 stdenv.mkDerivation rec {
   version = "0.2.7";
   name = "zathura-pdf-mupdf-${version}";
 
-  src = fetchurl {
-    url = "http://pwmt.org/projects/zathura/plugins/download/${name}.tar.gz";
-    sha256 = "0gr5kkk75hn7sz9kmzynhhcdd9xb9sz5gdb8p1iz9g0fjhskyd5i";
+  src = fetchgit {
+    url = "https://git.pwmt.org/zathura-pdf-mupdf.git";
+    rev = "99bff723291f5aa2558e5c8b475f496025105f4a";
+    sha256 = "14mfp116a8dmazss3dcipvjs6dclazp36vsbcc53lr8lal5ccfnf";
   };
 
   buildInputs = [ pkgconfig zathura_core gtk girara openssl mupdf openjpeg libjpeg jbig2dec ];
 
   makeFlags = "PREFIX=$(out) PLUGINDIR=$(out)/lib";
 
-  preConfigure = "patch -p1 < ${./config.patch}";
+  patches = [
+    ./config.patch
+  ];
 
-  meta = {
+  meta = with lib; {
     homepage = http://pwmt.org/projects/zathura/;
     description = "A zathura PDF plugin (mupdf)";
     longDescription = ''
       The zathura-pdf-mupdf plugin adds PDF support to zathura by
       using the mupdf rendering library.
     '';
-    license = stdenv.lib.licenses.zlib;
-    platforms = stdenv.lib.platforms.linux;
-#    maintainers = [ ];
+    license = licenses.zlib;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ cstrahan ];
   };
 }
diff --git a/pkgs/applications/misc/zathura/pdf-poppler/default.nix b/pkgs/applications/misc/zathura/pdf-poppler/default.nix
index 6625bf47194..caaab9ec3c7 100644
--- a/pkgs/applications/misc/zathura/pdf-poppler/default.nix
+++ b/pkgs/applications/misc/zathura/pdf-poppler/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, zathura_core, girara, poppler }:
+{ stdenv, lib, fetchurl, pkgconfig, zathura_core, girara, poppler }:
 
 stdenv.mkDerivation rec {
   version = "0.2.5";
@@ -13,15 +13,15 @@ stdenv.mkDerivation rec {
 
   makeFlags = "PREFIX=$(out) PLUGINDIR=$(out)/lib";
 
-  meta = {
+  meta = with lib; {
     homepage = http://pwmt.org/projects/zathura/;
     description = "A zathura PDF plugin (poppler)";
     longDescription = ''
       The zathura-pdf-poppler plugin adds PDF support to zathura by 
       using the poppler rendering library.
     '';
-    license = stdenv.lib.licenses.zlib;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = [ stdenv.lib.maintainers.garbas ];
+    license = licenses.zlib;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ cstrahan garbas ];
   };
 }
diff --git a/pkgs/applications/misc/zathura/ps/default.nix b/pkgs/applications/misc/zathura/ps/default.nix
index eef02001601..31ffbf628dd 100644
--- a/pkgs/applications/misc/zathura/ps/default.nix
+++ b/pkgs/applications/misc/zathura/ps/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, gtk, zathura_core, girara, libspectre, gettext }:
+{ stdenv, lib, fetchurl, pkgconfig, gtk, zathura_core, girara, libspectre, gettext }:
 
 stdenv.mkDerivation rec {
   name = "zathura-ps-0.2.2";
@@ -14,16 +14,16 @@ stdenv.mkDerivation rec {
 
   makeFlags = "PREFIX=$(out) PLUGINDIR=$(out)/lib";
 
-  meta = {
+  meta = with lib; {
     homepage = http://pwmt.org/projects/zathura/;
     description = "A zathura PS plugin";
     longDescription = ''
       The zathura-ps plugin adds PS support to zathura by using the
       libspectre library.
       '';
-    license = stdenv.lib.licenses.zlib;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = [ stdenv.lib.maintainers.garbas ];
+    license = licenses.zlib;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ cstrahan garbas ];
   };
 }
 
diff --git a/pkgs/applications/networking/browsers/chromium/browser.nix b/pkgs/applications/networking/browsers/chromium/browser.nix
index 41617d0182a..5c8c25553ee 100644
--- a/pkgs/applications/networking/browsers/chromium/browser.nix
+++ b/pkgs/applications/networking/browsers/chromium/browser.nix
@@ -5,18 +5,18 @@ with stdenv.lib;
 mkChromiumDerivation (base: rec {
   name = "chromium-browser";
   packageName = "chromium";
-  buildTargets = [ "mksnapshot" "chrome" ];
+  buildTargets = [ "mksnapshot" "chrome_sandbox" "chrome" ];
 
   installPhase = ''
     mkdir -p "$libExecPath"
     cp -v "$buildPath/"*.pak "$buildPath/"*.bin "$libExecPath/"
     cp -v "$buildPath/icudtl.dat" "$libExecPath/"
     cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"
-    cp -v "$buildPath/libffmpegsumo.so" "$libExecPath/"
-    ${optionalString (versionOlder base.version "42.0.0.0") ''
-      cp -v "$buildPath/libpdf.so" "$libExecPath/"
+    ${optionalString (versionOlder base.version "44.0.0.0") ''
+      cp -v "$buildPath/libffmpegsumo.so" "$libExecPath/"
     ''}
     cp -v "$buildPath/chrome" "$libExecPath/$packageName"
+    cp -v "$buildPath/chrome_sandbox" "$libExecPath/chrome-sandbox"
 
     mkdir -vp "$out/share/man/man1"
     cp -v "$buildPath/chrome.1" "$out/share/man/man1/$packageName.1"
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index e46b4419197..070859b902d 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, ninja, which
 
 # default dependencies
-, bzip2, flac, speex, icu, libopus
+, bzip2, flac, speex, libopus
 , libevent, expat, libjpeg, snappy
 , libpng, libxml2, libxslt, libcap
 , xdg_utils, yasm, minizip, libwebp
@@ -21,12 +21,13 @@
 # package customization
 , enableSELinux ? false, libselinux ? null
 , enableNaCl ? false
+, enableHotwording ? false
 , useOpenSSL ? false, nss ? null, openssl ? null
 , gnomeSupport ? false, gnome ? null
 , gnomeKeyringSupport ? false, libgnome_keyring3 ? null
 , proprietaryCodecs ? true
 , cupsSupport ? true
-, pulseSupport ? false, pulseaudio ? null
+, pulseSupport ? false, libpulseaudio ? null
 , hiDPISupport ? false
 
 , source
@@ -84,7 +85,7 @@ let
   };
 
   defaultDependencies = [
-    bzip2 flac speex icu opusWithCustomModes
+    bzip2 flac speex opusWithCustomModes
     libevent expat libjpeg snappy
     libpng libxml2 libxslt libcap
     xdg_utils yasm minizip libwebp
@@ -118,28 +119,18 @@ let
       ++ optionals gnomeSupport [ gnome.GConf libgcrypt ]
       ++ optional enableSELinux libselinux
       ++ optionals cupsSupport [ libgcrypt cups ]
-      ++ optional pulseSupport pulseaudio;
+      ++ optional pulseSupport libpulseaudio;
 
     # XXX: Wait for https://crbug.com/239107 and https://crbug.com/239181 to
     #      be fixed, then try again to unbundle everything into separate
     #      derivations.
     prePatch = ''
-      cp -dsr --no-preserve=mode "${source.main}"/* .
-      cp -dsr --no-preserve=mode "${source.sandbox}" sandbox
+      cp -dr --no-preserve=mode "${source.main}"/* .
       cp -dr "${source.bundled}" third_party
       chmod -R u+w third_party
-
-      # Hardcode source tree root in all gyp files
-      find -iname '*.gyp*' \( -type f -o -type l \) \
-        -exec sed -i -e 's|<(DEPTH)|'"$(pwd)"'|g' {} + \
-        -exec chmod u+w {} +
     '';
 
-    postPatch = optionalString (versionOlder version "42.0.0.0") ''
-      sed -i -e '/base::FilePath exe_dir/,/^ *} *$/c \
-        sandbox_binary = base::FilePath(getenv("CHROMIUM_SANDBOX_BINARY_PATH"));
-      ' sandbox/linux/suid/client/setuid_sandbox_client.cc
-    '' + ''
+    postPatch = ''
       sed -i -e '/module_path *=.*libexif.so/ {
         s|= [^;]*|= base::FilePath().AppendASCII("${libexif}/lib/libexif.so")|
       }' chrome/utility/media_galleries/image_metadata_extractor.cc
@@ -163,11 +154,10 @@ let
       use_pulseaudio = pulseSupport;
       linux_link_pulseaudio = pulseSupport;
       disable_nacl = !enableNaCl;
+      enable_hotwording = enableHotwording;
       use_openssl = useOpenSSL;
       selinux = enableSELinux;
       use_cups = cupsSupport;
-    } // optionalAttrs (versionOlder version "42.0.0.0") {
-      linux_sandbox_chrome_path="${libExecPath}/${packageName}";
     } // {
       werror = "";
       clang = false;
@@ -200,7 +190,7 @@ let
       # This is to ensure expansion of $out.
       libExecPath="${libExecPath}"
       python build/linux/unbundle/replace_gyp_files.py ${gypFlags}
-      python build/gyp_chromium -f ninja --depth "$(pwd)" ${gypFlags}
+      python build/gyp_chromium -f ninja --depth . ${gypFlags}
     '';
 
     buildPhase = let
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 85b2e9b8051..9a7f4a2757e 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -4,6 +4,7 @@
 , channel ? "stable"
 , enableSELinux ? false
 , enableNaCl ? false
+, enableHotwording ? false
 , useOpenSSL ? false
 , gnomeSupport ? false
 , gnomeKeyringSupport ? false
@@ -26,13 +27,12 @@ let
     };
 
     mkChromiumDerivation = callPackage ./common.nix {
-      inherit enableSELinux enableNaCl useOpenSSL gnomeSupport
-              gnomeKeyringSupport proprietaryCodecs cupsSupport
-              pulseSupport hiDPISupport;
+      inherit enableSELinux enableNaCl enableHotwording useOpenSSL gnomeSupport
+              gnomeKeyringSupport proprietaryCodecs cupsSupport pulseSupport
+              hiDPISupport;
     };
 
     browser = callPackage ./browser.nix { };
-    sandbox = callPackage ./sandbox.nix { };
 
     plugins = callPackage ./plugins.nix {
       inherit enablePepperFlash enableWideVine;
@@ -41,8 +41,8 @@ let
 
   desktopItem = makeDesktopItem {
     name = "chromium";
-    exec = "chromium";
-    icon = "${chromium.browser}/share/icons/hicolor/48x48/apps/chromium.png";
+    exec = "chromium %U";
+    icon = "chromium";
     comment = "An open source web browser from Google";
     desktopName = "Chromium";
     genericName = "Web browser";
@@ -70,18 +70,14 @@ in stdenv.mkDerivation {
 
   buildCommand = let
     browserBinary = "${chromium.browser}/libexec/chromium/chromium";
-    sandboxBinary = "${chromium.sandbox}/bin/chromium-sandbox";
     mkEnvVar = key: val: "--set '${key}' '${val}'";
     envVars = chromium.plugins.settings.envVars or {};
-    isVer42 = !stdenv.lib.versionOlder chromium.browser.version "42.0.0.0";
     flags = chromium.plugins.settings.flags or [];
-    setBinPath = "--set CHROMIUM_SANDBOX_BINARY_PATH \"${sandboxBinary}\"";
   in with stdenv.lib; ''
     mkdir -p "$out/bin" "$out/share/applications"
 
     ln -s "${chromium.browser}/share" "$out/share"
     makeWrapper "${browserBinary}" "$out/bin/chromium" \
-      ${optionalString (!isVer42) setBinPath} \
       ${concatStrings (mapAttrsToList mkEnvVar envVars)} \
       --add-flags "${concatStringsSep " " flags}"
 
diff --git a/pkgs/applications/networking/browsers/chromium/plugins.nix b/pkgs/applications/networking/browsers/chromium/plugins.nix
index b4766cee434..0b0e5bd0838 100644
--- a/pkgs/applications/networking/browsers/chromium/plugins.nix
+++ b/pkgs/applications/networking/browsers/chromium/plugins.nix
@@ -21,10 +21,9 @@ let
       chan = if source.channel == "dev"    then "chrome-unstable"
         else if source.channel == "stable" then "chrome"
         else "chrome-${source.channel}";
-      cext = if versionOlder source.version "41.0.0.0" then "lzma" else "xz";
     in ''
       mkdir -p plugins
-      ar p "$src" data.tar.${cext} | tar xJ -C plugins --strip-components=4 \
+      ar p "$src" data.tar.xz | tar xJ -C plugins --strip-components=4 \
         ./opt/google/${chan}/PepperFlash \
         ./opt/google/${chan}/libwidevinecdm.so \
         ./opt/google/${chan}/libwidevinecdmadapter.so
@@ -54,7 +53,7 @@ let
       wvDescription = "Playback of encrypted HTML audio/video content";
       wvMimeTypes = "application/x-ppapi-widevine-cdm";
       wvModule = "$widevine/lib/libwidevinecdmadapter.so";
-      wvInfo = "#${wvName}#${wvDescription}:${wvMimeTypes}";
+      wvInfo = "#${wvName}#${wvDescription};${wvMimeTypes}";
     in ''
       flashVersion="$(
         sed -n -r 's/.*"version": "([^"]+)",.*/\1/p' PepperFlash/manifest.json
diff --git a/pkgs/applications/networking/browsers/chromium/sandbox.nix b/pkgs/applications/networking/browsers/chromium/sandbox.nix
deleted file mode 100644
index b470ed63325..00000000000
--- a/pkgs/applications/networking/browsers/chromium/sandbox.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ stdenv, source }:
-
-stdenv.mkDerivation {
-  name = "chromium-sandbox-${source.version}";
-  src = source.sandbox;
-
-  patchPhase = ''
-    sed -i -e '/#include.*base_export/c \
-      #define BASE_EXPORT __attribute__((visibility("default")))
-    /#include/s|sandbox/linux|'"$(pwd)"'/linux|
-    ' linux/suid/*.[hc]
-  '';
-
-  buildPhase = ''
-    gcc -Wall -std=gnu99 -o sandbox linux/suid/*.c
-  '';
-
-  installPhase = ''
-    install -svD sandbox "$out/bin/chromium-sandbox"
-  '';
-}
diff --git a/pkgs/applications/networking/browsers/chromium/source/build_fixes_46.patch b/pkgs/applications/networking/browsers/chromium/source/build_fixes_46.patch
new file mode 100644
index 00000000000..c0aeb5d3a56
--- /dev/null
+++ b/pkgs/applications/networking/browsers/chromium/source/build_fixes_46.patch
@@ -0,0 +1,14 @@
+diff --git a/chrome/test/data/webui_test_resources.grd b/chrome/test/data/webui_test_resources.grd
+index 6f8530d..f92a76a 100644
+--- a/chrome/test/data/webui_test_resources.grd
++++ b/chrome/test/data/webui_test_resources.grd
+@@ -6,9 +6,4 @@
+     </output>
+     <output filename="webui_test_resources.pak" type="data_package" />
+   </outputs>
+-  <release seq="1">
+-    <includes>
+-      <include name="IDR_WEBUI_TEST_I18N_PROCESS_CSS_TEST" file="webui/i18n_process_css_test.html" flattenhtml="true" allowexternalscript="true" type="BINDATA" />
+-    </includes>
+-  </release>
+ </grit>
diff --git a/pkgs/applications/networking/browsers/chromium/source/default.nix b/pkgs/applications/networking/browsers/chromium/source/default.nix
index 54430bb5be9..965c7885416 100644
--- a/pkgs/applications/networking/browsers/chromium/source/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/source/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, python
+{ stdenv, fetchurl, fetchpatch, patchutils, python
 , channel ? "stable"
 , useOpenSSL # XXX
 }:
@@ -14,12 +14,9 @@ let
     "s,^[^/]+(.*)$,$main\\1,"
     "s,$main/(build|tools)(/.*)?$,$out/\\1\\2,"
     "s,$main/third_party(/.*)?$,$bundled\\1,"
-    "s,$main/sandbox(/.*)?$,$sandbox\\1,"
     "s,^/,,"
   ]);
 
-  pre42 = versionOlder version "42.0.0.0";
-
 in stdenv.mkDerivation {
   name = "chromium-source-${version}";
 
@@ -28,7 +25,7 @@ in stdenv.mkDerivation {
   buildInputs = [ python ]; # cannot patch shebangs otherwise
 
   phases = [ "unpackPhase" "patchPhase" ];
-  outputs = [ "out" "sandbox" "bundled" "main" ];
+  outputs = [ "out" "bundled" "main" ];
 
   unpackPhase = ''
     tar xf "$src" -C / \
@@ -47,11 +44,11 @@ in stdenv.mkDerivation {
     done
   '';
 
-  patches = if pre42 then [
-    ./sandbox_userns_36.patch ./nix_plugin_paths.patch
-  ] else [
-    ./nix_plugin_paths_42.patch
-  ];
+  patches =
+    if versionOlder version "45.0.0.0"
+    then singleton ./nix_plugin_paths_44.patch
+    else singleton ./nix_plugin_paths_46.patch ++
+         optional (!versionOlder version "46.0.0.0") ./build_fixes_46.patch;
 
   patchPhase = let
     diffmod = sym: "/^${sym} /{s/^${sym} //;${transform ""};s/^/${sym} /}";
@@ -75,13 +72,8 @@ in stdenv.mkDerivation {
       "$out/build/common.gypi" "$main/chrome/chrome_tests.gypi"
   '' + optionalString useOpenSSL ''
     cat $opensslPatches | patch -p1 -d "$bundled/openssl/openssl"
-  '' + optionalString (!pre42) ''
-    sed -i -e '/LOG.*no_suid_error/d' \
-      "$main/content/browser/browser_main_loop.cc"
   '';
 
-  preferLocalBuild = true;
-
   passthru = {
     inherit version channel;
     plugins = fetchurl binary;
diff --git a/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_42.patch b/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_44.patch
index fb09763c997..326da7f420a 100644
--- a/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_42.patch
+++ b/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_44.patch
@@ -55,15 +55,6 @@ index 8a205a6..d5c24e1 100644
          return false;
        cur = cur.Append(kInternalFlashPluginFileName);
        break;
-@@ -295,7 +288,7 @@ bool PathProvider(int key, base::FilePath* result) {
-       cur = cur.Append(chrome::kPepperFlashPluginFilename);
-       break;
-     case chrome::FILE_EFFECTS_PLUGIN:
--      if (!GetInternalPluginsDirectory(&cur))
-+      if (!GetInternalPluginsDirectory(&cur, "FILE_EFFECTS"))
-         return false;
-       cur = cur.Append(kEffectsPluginFileName);
-       break;
 @@ -308,7 +301,7 @@ bool PathProvider(int key, base::FilePath* result) {
      // We currently need a path here to look up whether the plugin is disabled
      // and what its permissions are.
diff --git a/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths.patch b/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_46.patch
index 0220d042941..7482be7062d 100644
--- a/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths.patch
+++ b/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_46.patch
@@ -1,8 +1,8 @@
 diff --git a/chrome/common/chrome_paths.cc b/chrome/common/chrome_paths.cc
-index 8a205a6..d5c24e1 100644
+index 74bf041..5f34198 100644
 --- a/chrome/common/chrome_paths.cc
 +++ b/chrome/common/chrome_paths.cc
-@@ -97,21 +97,14 @@ static base::LazyInstance<base::FilePath>
+@@ -66,21 +66,14 @@ static base::LazyInstance<base::FilePath>
      g_invalid_specified_user_data_dir = LAZY_INSTANCE_INITIALIZER;
  
  // Gets the path for internal plugins.
@@ -31,8 +31,8 @@ index 8a205a6..d5c24e1 100644
 +      *result = base::FilePath(value);
  }
  
- }  // namespace
-@@ -248,11 +241,11 @@ bool PathProvider(int key, base::FilePath* result) {
+ #if defined(OS_WIN)
+@@ -253,11 +246,11 @@ bool PathProvider(int key, base::FilePath* result) {
        create_dir = true;
        break;
      case chrome::DIR_INTERNAL_PLUGINS:
@@ -46,31 +46,7 @@ index 8a205a6..d5c24e1 100644
          return false;
        cur = cur.Append(kPepperFlashBaseDirectory);
        break;
-@@ -285,7 +278,7 @@ bool PathProvider(int key, base::FilePath* result) {
-       cur = cur.Append(FILE_PATH_LITERAL("script.log"));
-       break;
-     case chrome::FILE_FLASH_PLUGIN:
--      if (!GetInternalPluginsDirectory(&cur))
-+      if (!GetInternalPluginsDirectory(&cur, "FILEFLASH"))
-         return false;
-       cur = cur.Append(kInternalFlashPluginFileName);
-       break;
-@@ -295,12 +288,12 @@ bool PathProvider(int key, base::FilePath* result) {
-       cur = cur.Append(chrome::kPepperFlashPluginFilename);
-       break;
-     case chrome::FILE_PDF_PLUGIN:
--      if (!GetInternalPluginsDirectory(&cur))
-+      if (!GetInternalPluginsDirectory(&cur, "PDF"))
-         return false;
-       cur = cur.Append(kInternalPDFPluginFileName);
-       break;
-     case chrome::FILE_EFFECTS_PLUGIN:
--      if (!GetInternalPluginsDirectory(&cur))
-+      if (!GetInternalPluginsDirectory(&cur, "FILE_EFFECTS"))
-         return false;
-       cur = cur.Append(kEffectsPluginFileName);
-       break;
-@@ -308,7 +301,7 @@ bool PathProvider(int key, base::FilePath* result) {
+@@ -314,7 +307,7 @@ bool PathProvider(int key, base::FilePath* result) {
      // We currently need a path here to look up whether the plugin is disabled
      // and what its permissions are.
      case chrome::FILE_NACL_PLUGIN:
@@ -79,7 +55,7 @@ index 8a205a6..d5c24e1 100644
          return false;
        cur = cur.Append(kInternalNaClPluginFileName);
        break;
-@@ -343,7 +336,7 @@ bool PathProvider(int key, base::FilePath* result) {
+@@ -349,7 +342,7 @@ bool PathProvider(int key, base::FilePath* result) {
          cur = cur.DirName();
        }
  #else
@@ -88,7 +64,7 @@ index 8a205a6..d5c24e1 100644
          return false;
  #endif
        cur = cur.Append(FILE_PATH_LITERAL("pnacl"));
-@@ -372,7 +365,7 @@ bool PathProvider(int key, base::FilePath* result) {
+@@ -366,7 +359,7 @@ bool PathProvider(int key, base::FilePath* result) {
      // In the component case, this is the source adapter. Otherwise, it is the
      // actual Pepper module that gets loaded.
      case chrome::FILE_WIDEVINE_CDM_ADAPTER:
diff --git a/pkgs/applications/networking/browsers/chromium/source/sandbox_userns_36.patch b/pkgs/applications/networking/browsers/chromium/source/sandbox_userns_36.patch
deleted file mode 100644
index 6f5d52b72af..00000000000
--- a/pkgs/applications/networking/browsers/chromium/source/sandbox_userns_36.patch
+++ /dev/null
@@ -1,287 +0,0 @@
-commit 0fec7e4a742f001c9816a8b58a1120fb44230867
-Author: aszlig <aszlig@redmoonstudios.org>
-Date:   Thu May 16 14:17:56 2013 +0200
-
-    zygote: Add support for user namespaces on Linux.
-    
-    The implementation is done by patching the Zygote host to execute the sandbox
-    binary with CLONE_NEWUSER and setting the uid and gid mapping so that the child
-    process is using uid 0 and gid 0 which map to the current user of the parent.
-    Afterwards, the sandbox will continue as if it was called as a setuid binary.
-    
-    In addition, this adds new_user_namespace as an option in process_util in order
-    to set the UID and GID mapping correctly. The reason for this is that just
-    passing CLONE_NEWUSER to clone_flags doesn't help in LaunchProcess(), because
-    without setting the mappings exec*() will clear the process's capability sets.
-    
-    If the kernel doesn't support unprivileged user namespaces and the sandbox
-    binary doesn't have the setuid flag, the Zygote main process will run without a
-    sandbox. This is to mimic the behaviour if no SUID sandbox binary path is set.
-    
-    Signed-off-by: aszlig <aszlig@redmoonstudios.org>
-
-diff --git a/base/process/launch.cc b/base/process/launch.cc
-index 81748f5..930f20f 100644
---- a/base/process/launch.cc
-+++ b/base/process/launch.cc
-@@ -26,6 +26,7 @@ LaunchOptions::LaunchOptions()
- #if defined(OS_LINUX)
-       , clone_flags(0)
-       , allow_new_privs(false)
-+      , new_user_namespace(false)
- #endif  // OS_LINUX
- #if defined(OS_CHROMEOS)
-       , ctrl_terminal_fd(-1)
-diff --git a/base/process/launch.h b/base/process/launch.h
-index 9e39fba..00e4c79 100644
---- a/base/process/launch.h
-+++ b/base/process/launch.h
-@@ -115,6 +115,9 @@ struct BASE_EXPORT LaunchOptions {
-   // By default, child processes will have the PR_SET_NO_NEW_PRIVS bit set. If
-   // true, then this bit will not be set in the new child process.
-   bool allow_new_privs;
-+
-+  // If true, start the process in a new user namespace.
-+  bool new_user_namespace;
- #endif  // defined(OS_LINUX)
- 
- #if defined(OS_CHROMEOS)
-diff --git a/base/process/launch_posix.cc b/base/process/launch_posix.cc
-index 457234f..a99ce9b 100644
---- a/base/process/launch_posix.cc
-+++ b/base/process/launch_posix.cc
-@@ -40,6 +40,10 @@
- 
- #if defined(OS_LINUX)
- #include <sys/prctl.h>
-+#include <sched.h>
-+#if !defined(CLONE_NEWUSER)
-+#define CLONE_NEWUSER 0x10000000
-+#endif
- #endif
- 
- #if defined(OS_CHROMEOS)
-@@ -301,13 +305,23 @@ bool LaunchProcess(const std::vector<std::string>& argv,
- 
-   pid_t pid;
- #if defined(OS_LINUX)
--  if (options.clone_flags) {
-+  int map_pipe_fd[2];
-+  int flags = options.clone_flags;
-+
-+  if (options.new_user_namespace) {
-+    flags |= CLONE_NEWUSER;
-+    if (pipe(map_pipe_fd) < 0) {
-+      DPLOG(ERROR) << "user namespace pipe";
-+      return false;
-+    }
-+  }
-+
-+  if (options.clone_flags || options.new_user_namespace) {
-     // Signal handling in this function assumes the creation of a new
-     // process, so we check that a thread is not being created by mistake
-     // and that signal handling follows the process-creation rules.
--    RAW_CHECK(
--        !(options.clone_flags & (CLONE_SIGHAND | CLONE_THREAD | CLONE_VM)));
--    pid = syscall(__NR_clone, options.clone_flags, 0, 0, 0);
-+    RAW_CHECK(!(flags & (CLONE_SIGHAND | CLONE_THREAD | CLONE_VM)));
-+    pid = syscall(__NR_clone, flags, 0, 0, 0);
-   } else
- #endif
-   {
-@@ -328,6 +342,21 @@ bool LaunchProcess(const std::vector<std::string>& argv,
-     // DANGER: no calls to malloc or locks are allowed from now on:
-     // http://crbug.com/36678
- 
-+#if defined(OS_LINUX)
-+    if (options.new_user_namespace) {
-+      // Close the write end of the pipe so we get an EOF when the parent closes
-+      // the FD. This is to avoid race conditions when the UID/GID mappings are
-+      // written _after_ execvp().
-+      close(map_pipe_fd[1]);
-+
-+      char dummy;
-+      if (HANDLE_EINTR(read(map_pipe_fd[0], &dummy, 1)) != 0) {
-+        RAW_LOG(ERROR, "Unexpected input in uid/gid mapping pipe.");
-+        _exit(127);
-+      }
-+    }
-+#endif
-+
-     // DANGER: fork() rule: in the child, if you don't end up doing exec*(),
-     // you call _exit() instead of exit(). This is because _exit() does not
-     // call any previously-registered (in the parent) exit handlers, which
-@@ -452,6 +481,40 @@ bool LaunchProcess(const std::vector<std::string>& argv,
-     _exit(127);
-   } else {
-     // Parent process
-+#if defined(OS_LINUX)
-+    if (options.new_user_namespace) {
-+      // We need to write UID/GID mapping here to map the current user outside
-+      // the namespace to the root user inside the namespace in order to
-+      // correctly "fool" the child process.
-+      char buf[256];
-+      int map_fd, map_len;
-+
-+      snprintf(buf, sizeof(buf), "/proc/%d/uid_map", pid);
-+      map_fd = open(buf, O_RDWR);
-+      DPCHECK(map_fd >= 0);
-+      snprintf(buf, sizeof(buf), "0 %d 1", geteuid());
-+      map_len = strlen(buf);
-+      if (write(map_fd, buf, map_len) != map_len) {
-+        RAW_LOG(WARNING, "Can't write to uid_map.");
-+      }
-+      close(map_fd);
-+
-+      snprintf(buf, sizeof(buf), "/proc/%d/gid_map", pid);
-+      map_fd = open(buf, O_RDWR);
-+      DPCHECK(map_fd >= 0);
-+      snprintf(buf, sizeof(buf), "0 %d 1", getegid());
-+      map_len = strlen(buf);
-+      if (write(map_fd, buf, map_len) != map_len) {
-+        RAW_LOG(WARNING, "Can't write to gid_map.");
-+      }
-+      close(map_fd);
-+
-+      // Close the pipe on the parent, so the child can continue doing the
-+      // execvp() call.
-+      close(map_pipe_fd[1]);
-+    }
-+#endif
-+
-     if (options.wait) {
-       // While this isn't strictly disk IO, waiting for another process to
-       // finish is the sort of thing ThreadRestrictions is trying to prevent.
-diff --git a/content/browser/zygote_host/zygote_host_impl_linux.cc b/content/browser/zygote_host/zygote_host_impl_linux.cc
-index 9d63ad9..0885705 100644
---- a/content/browser/zygote_host/zygote_host_impl_linux.cc
-+++ b/content/browser/zygote_host/zygote_host_impl_linux.cc
-@@ -144,6 +144,9 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) {
-   // A non empty sandbox_cmd means we want a SUID sandbox.
-   using_suid_sandbox_ = !sandbox_cmd.empty();
- 
-+  bool userns_sandbox = false;
-+  const std::vector<std::string> cmd_line_unwrapped(cmd_line.argv());
-+
-   // Start up the sandbox host process and get the file descriptor for the
-   // renderers to talk to it.
-   const int sfd = RenderSandboxHostLinux::GetInstance()->GetRendererSocket();
-@@ -156,11 +159,24 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) {
-     sandbox_client->PrependWrapper(&cmd_line);
-     sandbox_client->SetupLaunchOptions(&options, &fds_to_map, &dummy_fd);
-     sandbox_client->SetupLaunchEnvironment();
-+    userns_sandbox = sandbox_client->IsNoSuid();
-   }
- 
-   base::ProcessHandle process = -1;
-   options.fds_to_remap = &fds_to_map;
-+  if (userns_sandbox)
-+    options.new_user_namespace = true;
-   base::LaunchProcess(cmd_line.argv(), options, &process);
-+
-+  if (process == -1 && userns_sandbox) {
-+    LOG(ERROR) << "User namespace sandbox failed to start, running without "
-+               << "sandbox! You need at least kernel 3.8.0 with CONFIG_USER_NS "
-+               << "enabled in order to use the sandbox without setuid bit.";
-+    using_suid_sandbox_ = false;
-+    options.new_user_namespace = false;
-+    base::LaunchProcess(cmd_line_unwrapped, options, &process);
-+  }
-+
-   CHECK(process != -1) << "Failed to launch zygote process";
-   dummy_fd.reset();
- 
-diff --git a/content/zygote/zygote_main_linux.cc b/content/zygote/zygote_main_linux.cc
-index 11f0602..b7b8214 100644
---- a/content/zygote/zygote_main_linux.cc
-+++ b/content/zygote/zygote_main_linux.cc
-@@ -389,6 +389,13 @@ static bool EnterSuidSandbox(sandbox::SetuidSandboxClient* setuid_sandbox) {
-     CHECK(CreateInitProcessReaper());
-   }
- 
-+  // Don't set non-dumpable, as it causes trouble when the host tries to find
-+  // the zygote process (XXX: Not quite sure why this happens with user
-+  // namespaces). Fortunately, we also have the seccomp filter sandbox which
-+  // should disallow the use of ptrace.
-+  if (setuid_sandbox->IsNoSuid())
-+    return true;
-+
- #if !defined(OS_OPENBSD)
-   // Previously, we required that the binary be non-readable. This causes the
-   // kernel to mark the process as non-dumpable at startup. The thinking was
-diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.cc b/sandbox/linux/suid/client/setuid_sandbox_client.cc
-index fc03cdd..a972faa 100644
---- a/sandbox/linux/suid/client/setuid_sandbox_client.cc
-+++ b/sandbox/linux/suid/client/setuid_sandbox_client.cc
-@@ -229,6 +229,10 @@ bool SetuidSandboxClient::IsInNewNETNamespace() const {
-   return env_->HasVar(kSandboxNETNSEnvironmentVarName);
- }
- 
-+bool SetuidSandboxClient::IsNoSuid() const {
-+  return env_->HasVar(kSandboxNoSuidVarName);
-+}
-+
- bool SetuidSandboxClient::IsSandboxed() const {
-   return sandboxed_;
- }
-@@ -277,8 +281,7 @@ void SetuidSandboxClient::PrependWrapper(base::CommandLine* cmd_line) {
-                                     "LinuxSUIDSandboxDevelopment.";
-   }
- 
--  if (access(sandbox_binary.c_str(), X_OK) != 0 || (st.st_uid != 0) ||
--      ((st.st_mode & S_ISUID) == 0) || ((st.st_mode & S_IXOTH)) == 0) {
-+  if (access(sandbox_binary.c_str(), X_OK) != 0) {
-     LOG(FATAL) << "The SUID sandbox helper binary was found, but is not "
-                   "configured correctly. Rather than run without sandboxing "
-                   "I'm aborting now. You need to make sure that "
-@@ -286,6 +289,12 @@ void SetuidSandboxClient::PrependWrapper(base::CommandLine* cmd_line) {
-   }
- 
-   cmd_line->PrependWrapper(sandbox_binary);
-+
-+  if (!((st.st_uid == 0) &&
-+        (st.st_mode & S_ISUID) &&
-+        (st.st_mode & S_IXOTH))) {
-+    env_->SetVar(kSandboxNoSuidVarName, "1");
-+  }
- }
- 
- void SetuidSandboxClient::SetupLaunchOptions(
-diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.h b/sandbox/linux/suid/client/setuid_sandbox_client.h
-index 2bbad7a..8605475 100644
---- a/sandbox/linux/suid/client/setuid_sandbox_client.h
-+++ b/sandbox/linux/suid/client/setuid_sandbox_client.h
-@@ -66,6 +66,8 @@ class SANDBOX_EXPORT SetuidSandboxClient {
-   bool IsInNewPIDNamespace() const;
-   // Did the setuid helper create a new network namespace ?
-   bool IsInNewNETNamespace() const;
-+  // Is sandboxed without SUID binary ?
-+  bool IsNoSuid() const;
-   // Are we done and fully sandboxed ?
-   bool IsSandboxed() const;
- 
-diff --git a/sandbox/linux/suid/common/sandbox.h b/sandbox/linux/suid/common/sandbox.h
-index 9345287..2db659e 100644
---- a/sandbox/linux/suid/common/sandbox.h
-+++ b/sandbox/linux/suid/common/sandbox.h
-@@ -15,6 +15,7 @@ static const char kAdjustOOMScoreSwitch[] = "--adjust-oom-score";
- 
- static const char kSandboxDescriptorEnvironmentVarName[] = "SBX_D";
- static const char kSandboxHelperPidEnvironmentVarName[] = "SBX_HELPER_PID";
-+static const char kSandboxNoSuidVarName[] = "SBX_NO_SUID";
- 
- static const long kSUIDSandboxApiNumber = 1;
- static const char kSandboxEnvironmentApiRequest[] = "SBX_CHROME_API_RQ";
-diff --git a/sandbox/linux/suid/sandbox.c b/sandbox/linux/suid/sandbox.c
-index 7410b71..a83593d 100644
---- a/sandbox/linux/suid/sandbox.c
-+++ b/sandbox/linux/suid/sandbox.c
-@@ -330,7 +330,7 @@ static bool DropRoot() {
-     return false;
-   }
- 
--  if (setresgid(rgid, rgid, rgid)) {
-+  if (egid != rgid && setresgid(rgid, rgid, rgid)) {
-     perror("setresgid");
-     return false;
-   }
diff --git a/pkgs/applications/networking/browsers/chromium/source/sources.nix b/pkgs/applications/networking/browsers/chromium/source/sources.nix
index e1144a44afb..b80e3b534fb 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 = "43.0.2327.5";
-    sha256 = "0k9jpzm1n7d3zv6f77vz33jcvmnbxnl6plabvlrf8w83kbzhi76n";
-    sha256bin32 = "1dm4xp0x02kqj82giw45qd2z12wf22h2bs0d3hnlz050innxgcb6";
-    sha256bin64 = "1b13g44y704llsnw68840zmaahj1hwzram50v8fqmff44w1b0bxb";
+    version = "47.0.2508.0";
+    sha256 = "1jmcvbimj3x91czvclnqbp8w2nfqhk2bd7bw9yd37c576md1wnw2";
+    sha256bin32 = "10spq63yfyzw419bz22r2g5rmnaxy5861715mkrcbpfm8cylzmzh";
+    sha256bin64 = "1ycdp37ikdc9w4hp9qgpzjp47zh37g01ax8x4ack202vrv0dxhsh";
   };
   beta = {
-    version = "42.0.2311.39";
-    sha256 = "0qiyg8bg9f1daf8v2jlrv54lis7156h44ak42jdx96xanvj2rvj0";
-    sha256bin32 = "0v4dr2a3n51dais2mg0dml0rmqfmalfj0zgp20a4kkarbpih1x0v";
-    sha256bin64 = "19638ik9qgfmxpzdry0qwkwpzvhlbs2h2nn1kwsjja5j49817ksx";
+    version = "46.0.2490.42";
+    sha256 = "0nw6sc6vc5vm5j133hrjq06bibaljq5calqlmzha8ckx21zrr5yy";
+    sha256bin32 = "1a1xi4w7f16chb9w1c102ya7890lj31c0fyyrwgvmpymlw9msnh0";
+    sha256bin64 = "11758h6674d7g6c5bb820x1pg5z9q78j582kd0sa0p73g5888wd0";
   };
   stable = {
-    version = "41.0.2272.89";
-    sha256 = "1saxcyqp8pz496qwdgl4dqxll6l9icbljm56w1rrkxgwrrvl4iwk";
-    sha256bin32 = "19srg0isp1k4fwixwjxm1j88bnqx9sb349n992i038c3h8raa1v4";
-    sha256bin64 = "1fb8ffgbsjsij7bd1qawa03z9pybasfig1cmdzwybmlwg2fdlvfv";
+    version = "45.0.2454.101";
+    sha256 = "1yw5xlgy5hd3iwcyf0sillq5p367fcpvp4mizpmv52cwmv52ss0v";
+    sha256bin32 = "1ll8lmkmx7v74naz1vcnrwk5ighh0skfcb66jkq4kgxrb5fjgwm5";
+    sha256bin64 = "1cwbd3n77dnbfnrfr8g0qng9xkgvz6y7mx489gpx1wsamgi42bzj";
   };
 }
diff --git a/pkgs/applications/networking/browsers/chromium/source/update.nix b/pkgs/applications/networking/browsers/chromium/source/update.nix
index 27af85de546..49864cf1c7b 100644
--- a/pkgs/applications/networking/browsers/chromium/source/update.nix
+++ b/pkgs/applications/networking/browsers/chromium/source/update.nix
@@ -9,7 +9,7 @@ let
             then import ./sources.nix
             else null;
 
-  bucketURL = "http://commondatastorage.googleapis.com/"
+  bucketURL = "https://commondatastorage.googleapis.com/"
             + "chromium-browser-official";
 
   debURL = "https://dl.google.com/linux/chrome/deb/pool/main/g";
@@ -18,6 +18,7 @@ let
   debMirrors = [
     "http://95.31.35.30/chrome/pool/main/g"
     "http://mirror.pcbeta.com/google/chrome/deb/pool/main/g"
+    "http://repo.fdzh.org/chrome/deb/pool/main/g"
   ];
 
   tryChannel = channel: let
diff --git a/pkgs/applications/networking/browsers/chromium/update.sh b/pkgs/applications/networking/browsers/chromium/update.sh
index e82d22f34fd..e079762420b 100755
--- a/pkgs/applications/networking/browsers/chromium/update.sh
+++ b/pkgs/applications/networking/browsers/chromium/update.sh
@@ -11,22 +11,6 @@ source "$(nix-build --no-out-link "$base_path/update.nix" -A updateHelpers)";
 
 ver_sha_table=""; # list of version:sha256
 
-sha_lookup()
-{
-    version="$1";
-
-    for ver_sha in $ver_sha_table;
-    do
-        if [ "x${ver_sha%:*}" = "x$version" ];
-        then
-            echo "${ver_sha##*:}";
-            return 0;
-        fi;
-    done;
-
-    return 1;
-}
-
 sha_insert()
 {
     version="$1";
@@ -72,22 +56,15 @@ get_channel_exprs()
         channel="${chline%%,*}";
         version="${chline##*,}";
 
-        echo -n "Checking if sha256 of version $version is cached..." >&2;
-        if sha256="$(sha_lookup "$version")";
+        sha256="$(get_sha256 "$channel" "$version")";
+        if [ $? -ne 0 ];
         then
-            echo " yes: $sha256" >&2;
-        else
-            echo " no." >&2;
-            sha256="$(get_sha256 "$channel" "$version")";
-            if [ $? -ne 0 ];
-            then
-                echo "Whoops, failed to fetch $version, trying previous" \
-                     "versions:" >&2;
-
-                sha_ver="$(get_prev_sha256 "$channel" "$version")";
-                sha256="${sha_ver%:*}";
-                version="${sha_ver#*:}";
-            fi;
+            echo "Whoops, failed to fetch $version, trying previous" \
+                 "versions:" >&2;
+
+            sha_ver="$(get_prev_sha256 "$channel" "$version")";
+            sha256="${sha_ver%:*}";
+            version="${sha_ver#*:}";
         fi;
 
         sha_insert "$version" "$sha256";
diff --git a/pkgs/applications/networking/browsers/conkeror/default.nix b/pkgs/applications/networking/browsers/conkeror/default.nix
index f6e3cd3cf8d..007c49b2733 100644
--- a/pkgs/applications/networking/browsers/conkeror/default.nix
+++ b/pkgs/applications/networking/browsers/conkeror/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchgit, unzip, firefox, makeWrapper }:
 
 stdenv.mkDerivation {
-  name = "conkeror-1.0pre-20150319";
+  name = "conkeror-1.0pre-20150730";
 
   src = fetchgit {
     url = git://repo.or.cz/conkeror.git;
-    rev = "6450632b3f0c315f79e7a9856658083fe8fc9c29";
-    sha256 = "18cqz1n2n6aimmgd69mdrgmkjf4207k7yz11wihka6b5z1hfiv64";
+    rev = "a1f7e879b129df5cf14ea4ce80a9c1407380ed58";
+    sha256 = "12d8949a81a670037664dd930f7efe3d54b321aad48deea68343eba9aaea8785";
   };
 
   buildInputs = [ unzip makeWrapper ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
       --add-flags "-app $out/libexec/conkeror/application.ini"
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A keyboard-oriented, customizable, extensible web browser";
     longDescription = ''
       Conkeror is a keyboard-oriented, highly-customizable, highly-extensible
@@ -30,8 +30,8 @@ stdenv.mkDerivation {
       self-documenting, featuring a powerful interactive help system.
     '';
     homepage = http://conkeror.org/;
-    license = [ "MPLv1.1" "GPLv2" "LGPLv2.1" ];
-    maintainers = with stdenv.lib.maintainers; [ astsmtl chaoflow ];
-    platforms = with stdenv.lib.platforms; linux;
+    license = with licenses; [ mpl11 gpl2 lgpl21 ];
+    maintainers = with maintainers; [ astsmtl chaoflow ];
+    platforms = with platforms; linux;
   };
 }
diff --git a/pkgs/applications/networking/browsers/dillo/default.nix b/pkgs/applications/networking/browsers/dillo/default.nix
index c6c86263888..a54e5e0c370 100644
--- a/pkgs/applications/networking/browsers/dillo/default.nix
+++ b/pkgs/applications/networking/browsers/dillo/default.nix
@@ -6,18 +6,16 @@
 , libXcursor, libXi, libXinerama }:
 
 stdenv.mkDerivation rec {
-  version = "3.0.4";
+  version = "3.0.5";
   name = "dillo-${version}";
 
   src = fetchurl {
     url = "http://www.dillo.org/download/${name}.tar.bz2";
-    sha256 = "0ffz481vgl7f12f575pmbagm8swgxgv9s9c0p8c7plhd04jsnazf";
+    sha256 = "12ql8n1lypv3k5zqgwjxlw1md90ixz3ag6j1gghfnhjq3inf26yv";
   };
 
   buildInputs = with stdenv.lib;
-    [ fltk openssl libjpeg libpng libXcursor libXi libXinerama ];
-
-  nativeBuildInputs = [ perl ];
+  [ perl fltk openssl libjpeg libpng libXcursor libXi libXinerama ];
 
   configureFlags =  "--enable-ssl";
 
diff --git a/pkgs/applications/networking/browsers/dwb/default.nix b/pkgs/applications/networking/browsers/dwb/default.nix
index f4b36d5e756..d79a5215ce2 100644
--- a/pkgs/applications/networking/browsers/dwb/default.nix
+++ b/pkgs/applications/networking/browsers/dwb/default.nix
@@ -1,16 +1,17 @@
-{ stdenv, fetchgit, pkgconfig, makeWrapper, libsoup, webkitgtk2, gtk2, gnutls, json_c,
-  m4, glib_networking, gsettings_desktop_schemas, dconf }:
+{ stdenv, fetchgit, pkgconfig, makeWrapper, libsoup, webkitgtk2, gtk2, gnutls
+, json_c, m4, glib_networking, gsettings_desktop_schemas, dconf }:
 
 stdenv.mkDerivation {
-  name = "dwb-2014-12-15";
+  name = "dwb-2015-07-07";
 
   src = fetchgit {
     url = "https://bitbucket.org/0mark/dwb_collect";
-    rev = "b94785470b11a0b6b52eecfc3bae276796b83a0d";
-    sha256 = "09xbifj223mflj62rfhi6q7cvnkpkzkwyyqhkm8w067pdscdhyvs";
+    rev = "9a50dcc7134015c6cb1d26afb77840cf69f7c782";
+    sha256 = "03nyr3c0x5b1jqax0zh407vvi4j47zkj1i52lqs35j2d2sci3lkb";
   };
 
-  buildInputs = [ pkgconfig makeWrapper gsettings_desktop_schemas libsoup webkitgtk2 gtk2 gnutls json_c m4 ];
+  buildInputs = [ pkgconfig makeWrapper gsettings_desktop_schemas libsoup
+    webkitgtk2 gtk2 gnutls json_c m4 ];
 
   # There are Xlib and gtk warnings therefore I have set Wno-error
   makeFlags = ''PREFIX=$(out) GTK=2 CPPFLAGS="-Wno-error"'';
@@ -27,7 +28,11 @@ stdenv.mkDerivation {
     homepage = http://portix.bitbucket.org/dwb/;
     description = "A lightweight web browser based on the webkit web browser engine and the gtk toolkit";
     platforms = platforms.mesaPlatforms;
-    maintainers = with maintainers;[ pSub ];
+    maintainers = with maintainers; [ pSub ];
     license = licenses.gpl3;
+
+    # dwb is no longer maintained by portix and efforts to keep it alive
+    # were not successful, see issue #7952 for discussion.
+    broken = true;
   };
 }
diff --git a/pkgs/applications/networking/browsers/elinks/default.nix b/pkgs/applications/networking/browsers/elinks/default.nix
index 0e4fd4db1ba..1a698b0effd 100644
--- a/pkgs/applications/networking/browsers/elinks/default.nix
+++ b/pkgs/applications/networking/browsers/elinks/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, perl, ncurses, x11, bzip2, zlib, openssl
+{ stdenv, fetchurl, perl, ncurses, xlibsWrapper, bzip2, zlib, openssl
 , spidermonkey, gpm
 , enableGuile ? false, guile ? null   # Incompatible licenses, LGPLv3 - GPLv2
 , enablePython ? false, python ? null
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   patches = [ ./gc-init.patch ];
 
-  buildInputs = [ perl ncurses x11 bzip2 zlib openssl spidermonkey gpm ]
+  buildInputs = [ perl ncurses xlibsWrapper bzip2 zlib openssl spidermonkey gpm ]
     ++ stdenv.lib.optional enableGuile guile
     ++ stdenv.lib.optional enablePython python;
 
diff --git a/pkgs/applications/networking/browsers/firefox-bin/default.nix b/pkgs/applications/networking/browsers/firefox-bin/default.nix
index 23726f5c3d1..336c727ea15 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/default.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/default.nix
@@ -30,8 +30,8 @@
 , nspr
 , nss
 , pango
-, heimdal
-, pulseaudio
+, libheimdal
+, libpulseaudio
 , systemd
 }:
 
@@ -102,8 +102,8 @@ stdenv.mkDerivation {
       nspr
       nss
       pango
-      heimdal
-      pulseaudio
+      libheimdal
+      libpulseaudio
       systemd
     ] + ":" + stdenv.lib.makeSearchPath "lib64" [
       stdenv.cc.cc
@@ -129,13 +129,9 @@ stdenv.mkDerivation {
           "$out/usr/lib/firefox-bin-${version}/$executable"
       done
 
-      for executable in \
-        firefox firefox-bin plugin-container \
-        updater crashreporter webapprt-stub libxul.so
-      do
+      find . -executable -type f -exec \
         patchelf --set-rpath "$libPath" \
-          "$out/usr/lib/firefox-bin-${version}/$executable"
-      done
+          "$out/usr/lib/firefox-bin-${version}/{}" \;
 
       # Create a desktop item.
       mkdir -p $out/share/applications
@@ -143,7 +139,7 @@ stdenv.mkDerivation {
       [Desktop Entry]
       Type=Application
       Exec=$out/bin/firefox
-      Icon=$out/lib/firefox-bin-${version}/chrome/icons/default/default256.png
+      Icon=$out/usr/lib/firefox-bin-${version}/browser/icons/mozicon128.png
       Name=Firefox
       GenericName=Web Browser
       Categories=Application;Network;
diff --git a/pkgs/applications/networking/browsers/firefox-bin/generate_sources.rb b/pkgs/applications/networking/browsers/firefox-bin/generate_sources.rb
index eabff067f75..b7627e52068 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/generate_sources.rb
+++ b/pkgs/applications/networking/browsers/firefox-bin/generate_sources.rb
@@ -8,7 +8,7 @@ version = if ARGV.empty?
             ARGV[0]
           end
 
-base_path = "http://download-installer.cdn.mozilla.net/pub/firefox/releases"
+base_path = "http://archive.mozilla.org/pub/firefox/releases"
 
 Source = Struct.new(:hash, :arch, :locale, :filename)
 
diff --git a/pkgs/applications/networking/browsers/firefox-bin/sources.nix b/pkgs/applications/networking/browsers/firefox-bin/sources.nix
index 4d002119a89..f617cf5636b 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/sources.nix
@@ -4,185 +4,185 @@
 # ruby generate_source.rb > source.nix
 
 {
-  version = "37.0.2";
+  version = "41.0.1";
   sources = [
-    { locale = "ach"; arch = "linux-i686"; sha1 = "77e30ca3d592424f80cf7c6cf31e90edddbebb3d"; }
-    { locale = "ach"; arch = "linux-x86_64"; sha1 = "c101098915d8955da06751d5bdf2afe029054e3f"; }
-    { locale = "af"; arch = "linux-i686"; sha1 = "4287ba79e3aaaa601ae36643ad281c64554b847f"; }
-    { locale = "af"; arch = "linux-x86_64"; sha1 = "a787ec352ad94375600185902766ddfd91ac2d5d"; }
-    { locale = "an"; arch = "linux-i686"; sha1 = "4910dab93896ca7198b0154f0518ea5613b9a3b0"; }
-    { locale = "an"; arch = "linux-x86_64"; sha1 = "60d2c5122a67bae8d7c27fd01caa8d8eef0a143f"; }
-    { locale = "ar"; arch = "linux-i686"; sha1 = "f2b70fc8a72d3d43a28cc51776eaacff22f288ad"; }
-    { locale = "ar"; arch = "linux-x86_64"; sha1 = "409d2981a9aff39e23bd00231761899e65e80862"; }
-    { locale = "as"; arch = "linux-i686"; sha1 = "d27e921e475608cc52e6f07a22687497eb575b01"; }
-    { locale = "as"; arch = "linux-x86_64"; sha1 = "3bfa7ccaff6b04f9f1d0a479c10412a1308caf4f"; }
-    { locale = "ast"; arch = "linux-i686"; sha1 = "d1c94f4c5fe83d52fa8e0ee586f78747616e1aaf"; }
-    { locale = "ast"; arch = "linux-x86_64"; sha1 = "df3d38e59a5f233caa97134713e29cfa0dce6e27"; }
-    { locale = "az"; arch = "linux-i686"; sha1 = "5d01ef1267ddcc28e89009b86f2bb0a1e70fc386"; }
-    { locale = "az"; arch = "linux-x86_64"; sha1 = "440a5cd423147412335636326618e6b6b4c02416"; }
-    { locale = "be"; arch = "linux-i686"; sha1 = "1b9a9758c17ae74876ee6d09373dd99e89da05a3"; }
-    { locale = "be"; arch = "linux-x86_64"; sha1 = "940d2a07808aedc1f9c927b62f03b75270bbecd7"; }
-    { locale = "bg"; arch = "linux-i686"; sha1 = "ee3f4b60ebb6fd3639ba7e2a3acd81ffcd13ba3f"; }
-    { locale = "bg"; arch = "linux-x86_64"; sha1 = "f97ef4f7d3264b1aaf7699fe656f7dccf2cd4238"; }
-    { locale = "bn-BD"; arch = "linux-i686"; sha1 = "1a0e2da3014a811a766164953d003c136e28c174"; }
-    { locale = "bn-BD"; arch = "linux-x86_64"; sha1 = "703116b7d2583d21fda09933e5d8b9244c15c6ee"; }
-    { locale = "bn-IN"; arch = "linux-i686"; sha1 = "f501f69cf65bf340d5d5ce6744394f1a83c2daf3"; }
-    { locale = "bn-IN"; arch = "linux-x86_64"; sha1 = "eb74b7a12a2fddf8c47e9c0b0ab9359b7da10703"; }
-    { locale = "br"; arch = "linux-i686"; sha1 = "9ecc2ca3344559a63fefee144fde9faa391f1c29"; }
-    { locale = "br"; arch = "linux-x86_64"; sha1 = "5121ac58aa90f6a2e3b3f87bcf7dbd8670b7c9bf"; }
-    { locale = "bs"; arch = "linux-i686"; sha1 = "42b9ace3d28e103fb195599c7c88ae78f16c3e4c"; }
-    { locale = "bs"; arch = "linux-x86_64"; sha1 = "06b81108ec1509e36de108837f3c7ed1d96ebc0e"; }
-    { locale = "ca"; arch = "linux-i686"; sha1 = "5fb5aee535cbede12169d1208d59fb1510207a66"; }
-    { locale = "ca"; arch = "linux-x86_64"; sha1 = "e8e6ebb6d70a809cfe8e9102ede99b7ce6239b8e"; }
-    { locale = "cs"; arch = "linux-i686"; sha1 = "13d157533dfca54b2a81625dbf3642b915f18e47"; }
-    { locale = "cs"; arch = "linux-x86_64"; sha1 = "f7fc30f448e981a47c63c21756dcd6feff08783c"; }
-    { locale = "cy"; arch = "linux-i686"; sha1 = "c9cdc5eefca689aabb7861e1ad9f44f42b36acb0"; }
-    { locale = "cy"; arch = "linux-x86_64"; sha1 = "a76182a74992ce7031fa2254f056694910c963d1"; }
-    { locale = "da"; arch = "linux-i686"; sha1 = "afb09acee0d8456e2bab32d7579da39244754038"; }
-    { locale = "da"; arch = "linux-x86_64"; sha1 = "26bca2ea48a814b7b3ffb91fc461867bf775c6dc"; }
-    { locale = "de"; arch = "linux-i686"; sha1 = "36a8bf02f324d929c52a6f4f38bb8cd413bbec3e"; }
-    { locale = "de"; arch = "linux-x86_64"; sha1 = "2d39187c71ad006e1fbd7ab488c7560d1c88f9cb"; }
-    { locale = "dsb"; arch = "linux-i686"; sha1 = "8c9843547aec04af07a09c2f9902583b2daab3f0"; }
-    { locale = "dsb"; arch = "linux-x86_64"; sha1 = "7778c1588580bf735e5dd4da89ab16528163a2c3"; }
-    { locale = "el"; arch = "linux-i686"; sha1 = "8aef1a9b8c6d1297d53002f1852bf52d6728c0fa"; }
-    { locale = "el"; arch = "linux-x86_64"; sha1 = "b7c2ad5da9c446939bf5e7071f84a6c3f8cd7b22"; }
-    { locale = "en-GB"; arch = "linux-i686"; sha1 = "f85f36fcd900f642f53a74d6b843e2c67b3ab950"; }
-    { locale = "en-GB"; arch = "linux-x86_64"; sha1 = "9dcc21ec189c588931e9bf38310522bb994d98c2"; }
-    { locale = "en-US"; arch = "linux-i686"; sha1 = "df80ad28979145a116d13db19c1c4e4b516c362d"; }
-    { locale = "en-US"; arch = "linux-x86_64"; sha1 = "b4e2da05fcd224ee01e2742d86d6b68bbdc108cd"; }
-    { locale = "en-ZA"; arch = "linux-i686"; sha1 = "73a83b23f2f1edcc4114df0b728e791c0626292a"; }
-    { locale = "en-ZA"; arch = "linux-x86_64"; sha1 = "fd451735b82a9b609b7f5f09aa0461191b490e5a"; }
-    { locale = "eo"; arch = "linux-i686"; sha1 = "471873938d52ccebe8958407be1989937181ca9a"; }
-    { locale = "eo"; arch = "linux-x86_64"; sha1 = "fc8c668d3d66a4e42be9aa0fd46ca84cf061dade"; }
-    { locale = "es-AR"; arch = "linux-i686"; sha1 = "599823d54919efb62ffd4f65fd8b873720d64b08"; }
-    { locale = "es-AR"; arch = "linux-x86_64"; sha1 = "cc2e509b55de680d4c9a95ac84765c5fb5fa8b44"; }
-    { locale = "es-CL"; arch = "linux-i686"; sha1 = "754b32bbc0108f0e9c3c2e78f4c3e023e0486bff"; }
-    { locale = "es-CL"; arch = "linux-x86_64"; sha1 = "7ab4206b66783a72fbe66c59fda120dc1afd0e3c"; }
-    { locale = "es-ES"; arch = "linux-i686"; sha1 = "b52814a56ee620693aa4d658ada67e816a3daf59"; }
-    { locale = "es-ES"; arch = "linux-x86_64"; sha1 = "b4cbbc984c7cc9f566ddce0e180410ccb79adc13"; }
-    { locale = "es-MX"; arch = "linux-i686"; sha1 = "874cb197fe4498a83822fa386ac0824bffc9646d"; }
-    { locale = "es-MX"; arch = "linux-x86_64"; sha1 = "056746dae1ba7e88a3f2403fb11b17ee831b199b"; }
-    { locale = "et"; arch = "linux-i686"; sha1 = "70bb834ac4d70fb1f20625027c73a6ece8f24cc8"; }
-    { locale = "et"; arch = "linux-x86_64"; sha1 = "57202dd5e34ed24e31f30bab79b0fcbb220e81b7"; }
-    { locale = "eu"; arch = "linux-i686"; sha1 = "1e7287dfcd55f79e2157f3e49875a85f8a500c75"; }
-    { locale = "eu"; arch = "linux-x86_64"; sha1 = "a6389d117c02ad2d9a997dcac64ba54c0310d715"; }
-    { locale = "fa"; arch = "linux-i686"; sha1 = "5f82328712e7a16ae6dab5928623b0c652b646bc"; }
-    { locale = "fa"; arch = "linux-x86_64"; sha1 = "5625f288967b3afc86a5d0136d64a1ba9581a6c1"; }
-    { locale = "ff"; arch = "linux-i686"; sha1 = "73afc152eca2aeb346b1ea46a35b24132061c6af"; }
-    { locale = "ff"; arch = "linux-x86_64"; sha1 = "ea1eab3e656f1bc68fc76425cd10be01945e7d66"; }
-    { locale = "fi"; arch = "linux-i686"; sha1 = "24d0bc254438b96307c650700ca58d4e1b2d5fe8"; }
-    { locale = "fi"; arch = "linux-x86_64"; sha1 = "d5b8f8f2052985c5f6dcbcdd5b122094347ed26b"; }
-    { locale = "fr"; arch = "linux-i686"; sha1 = "118d981ae14f0425e27726afb516519b8de11390"; }
-    { locale = "fr"; arch = "linux-x86_64"; sha1 = "af883c88b1a1e31a31a5a20d603b6109209c6f6b"; }
-    { locale = "fy-NL"; arch = "linux-i686"; sha1 = "44d6d4be0a1d1ddd75f476a94b3e2f6117ffca72"; }
-    { locale = "fy-NL"; arch = "linux-x86_64"; sha1 = "1629ea289914570257e611323618b477b2cf6576"; }
-    { locale = "ga-IE"; arch = "linux-i686"; sha1 = "c3ac3c11a490f37a6c209d753d6db5cd0c696dff"; }
-    { locale = "ga-IE"; arch = "linux-x86_64"; sha1 = "ea778a04a997632a38e70d3b96c5cc86545056d3"; }
-    { locale = "gd"; arch = "linux-i686"; sha1 = "2e71d653007e589cd93a90e3239beb0074d33e9d"; }
-    { locale = "gd"; arch = "linux-x86_64"; sha1 = "d878a2c149a96e2181d110e5ae265f35c0d44b62"; }
-    { locale = "gl"; arch = "linux-i686"; sha1 = "2669d169a07cfbba062e147d12cd2a708579c76e"; }
-    { locale = "gl"; arch = "linux-x86_64"; sha1 = "515622615f08c49a257ba6766ff0af1984c134a1"; }
-    { locale = "gu-IN"; arch = "linux-i686"; sha1 = "98bc0711616e665dc386e2c24b6a96ca5e3bfe25"; }
-    { locale = "gu-IN"; arch = "linux-x86_64"; sha1 = "a87c089251356074bc039c88e040138db3485539"; }
-    { locale = "he"; arch = "linux-i686"; sha1 = "b8fb6b91641f89159485ea65efb98c0f3aa23d84"; }
-    { locale = "he"; arch = "linux-x86_64"; sha1 = "2a2a6cc3dcf6b988138549649ede6b030c26818c"; }
-    { locale = "hi-IN"; arch = "linux-i686"; sha1 = "611ed2ff88f2872acfd1302f2ee3defe59142dbd"; }
-    { locale = "hi-IN"; arch = "linux-x86_64"; sha1 = "04922ffab952b7493059304d70064956cbaf5dce"; }
-    { locale = "hr"; arch = "linux-i686"; sha1 = "13a43d380043f008e26f6fb77b16e6087c622a64"; }
-    { locale = "hr"; arch = "linux-x86_64"; sha1 = "c7d45cdd831bafba438c81efa6cf5dd3f4a5657e"; }
-    { locale = "hsb"; arch = "linux-i686"; sha1 = "319a922186b3a8a9bea749014498e7f492043b4b"; }
-    { locale = "hsb"; arch = "linux-x86_64"; sha1 = "fdd0485af2b0684436bd6207701c287a2f3d05c6"; }
-    { locale = "hu"; arch = "linux-i686"; sha1 = "33e82dea7e4a6e421ee23a94ba3a5ca5171fef34"; }
-    { locale = "hu"; arch = "linux-x86_64"; sha1 = "fde72e1c7f93e4bcbebc9803e78d3e1cbce2d64b"; }
-    { locale = "hy-AM"; arch = "linux-i686"; sha1 = "ad702a8c047a5044ffb39039eaa74e7a86bd80ae"; }
-    { locale = "hy-AM"; arch = "linux-x86_64"; sha1 = "b83ff7323e9e66907a02f798cbb13a114fdc652c"; }
-    { locale = "id"; arch = "linux-i686"; sha1 = "c435f7c84ee188d09b5352163334a6458ec125ba"; }
-    { locale = "id"; arch = "linux-x86_64"; sha1 = "dc8858ac8ae9ef92013fa73f986daf6eade1ae26"; }
-    { locale = "is"; arch = "linux-i686"; sha1 = "c1d853deba529e750b8b705581aedb218f0c57d9"; }
-    { locale = "is"; arch = "linux-x86_64"; sha1 = "ba819e0bd9e630a6299fd8ef1dd99d1203abbd2d"; }
-    { locale = "it"; arch = "linux-i686"; sha1 = "1ffccd73282e28a52d99b8e98e3bf8ccefcf405b"; }
-    { locale = "it"; arch = "linux-x86_64"; sha1 = "9d68d2cb24ecf349ff504638e04272d56a636f90"; }
-    { locale = "ja"; arch = "linux-i686"; sha1 = "e7cae2f72552fdcd1ccb57c760ddd4b694218513"; }
-    { locale = "ja"; arch = "linux-x86_64"; sha1 = "57befb5643689b0ab2b456651735c75fc47a312a"; }
-    { locale = "kk"; arch = "linux-i686"; sha1 = "345e0cf27301357d46ead1ef04fcc415c9db4f99"; }
-    { locale = "kk"; arch = "linux-x86_64"; sha1 = "ac55fbb3ca6e8ad69c7aceebad99d18ed1353cbc"; }
-    { locale = "km"; arch = "linux-i686"; sha1 = "9c8d7c1a6b79dc2ff7a28e309e24fdb2d07385ba"; }
-    { locale = "km"; arch = "linux-x86_64"; sha1 = "e122a13e5485d9a8bf12e91487cf0247fb652eea"; }
-    { locale = "kn"; arch = "linux-i686"; sha1 = "4da07bc2cdb714f8083032f99e702333ece64dfa"; }
-    { locale = "kn"; arch = "linux-x86_64"; sha1 = "48b5f227919b06ee995b68ee0b6117df8f428942"; }
-    { locale = "ko"; arch = "linux-i686"; sha1 = "ce22701571474e14ad690ccb5ee700c790667fe8"; }
-    { locale = "ko"; arch = "linux-x86_64"; sha1 = "d901ffdec4217b389b96268f9094fc1d01cd2263"; }
-    { locale = "lij"; arch = "linux-i686"; sha1 = "2191718817cbf9eefef3f7d994849a737e9adb88"; }
-    { locale = "lij"; arch = "linux-x86_64"; sha1 = "f21245f7b00187d8b6fb3d30f6ec83510acf7546"; }
-    { locale = "lt"; arch = "linux-i686"; sha1 = "47ebc8005959e431cca843a0514c2499449ed9b2"; }
-    { locale = "lt"; arch = "linux-x86_64"; sha1 = "18220fab22a9737d1577455ec218f5b2f9226e53"; }
-    { locale = "lv"; arch = "linux-i686"; sha1 = "e4e3d2de5a899c422b85ab1518c454d81ee54bd8"; }
-    { locale = "lv"; arch = "linux-x86_64"; sha1 = "45a2551248ee43e189492b1416ed096799857382"; }
-    { locale = "mai"; arch = "linux-i686"; sha1 = "aa1374d602fff2d393be86563d3cab72b35f7384"; }
-    { locale = "mai"; arch = "linux-x86_64"; sha1 = "acfb03ba9f3d232ff68af24d61f80c6c0a94aeca"; }
-    { locale = "mk"; arch = "linux-i686"; sha1 = "a9295e006982059b01f7bd7e2c6f8959de2a2e23"; }
-    { locale = "mk"; arch = "linux-x86_64"; sha1 = "e37dcfc6bd29e8a5034624df71726091c6c768f0"; }
-    { locale = "ml"; arch = "linux-i686"; sha1 = "b81b278d31aff4d4912da328f2c3ecdbb1ec830a"; }
-    { locale = "ml"; arch = "linux-x86_64"; sha1 = "b5c21e4d32f9f78043eee8605d131e63d9568ef1"; }
-    { locale = "mr"; arch = "linux-i686"; sha1 = "56d7cc6bf3a125c9e9f5b4799a2d34a5d941dc43"; }
-    { locale = "mr"; arch = "linux-x86_64"; sha1 = "528db467e4f64f9149f88ecd36c19c8a23835c17"; }
-    { locale = "ms"; arch = "linux-i686"; sha1 = "71482b740ea057ae9cdd15cfba89467639dbda63"; }
-    { locale = "ms"; arch = "linux-x86_64"; sha1 = "bdaff803efa7cb1e2bd31e7f7a29b4c174fb60e3"; }
-    { locale = "nb-NO"; arch = "linux-i686"; sha1 = "1f4642a4dd61ad57d833ae961ce0f0f1c6c7471a"; }
-    { locale = "nb-NO"; arch = "linux-x86_64"; sha1 = "3e89f59c82ae0ee52af586364bad8b6e69fdec28"; }
-    { locale = "nl"; arch = "linux-i686"; sha1 = "3292597b5f499193c8a1bd1f71b9df81925e4c87"; }
-    { locale = "nl"; arch = "linux-x86_64"; sha1 = "ddb145bb406c096be680d246b9a727d6e926f9cb"; }
-    { locale = "nn-NO"; arch = "linux-i686"; sha1 = "9cedfe3a1f98db1a999f64bcfdc77e8df72cbbc5"; }
-    { locale = "nn-NO"; arch = "linux-x86_64"; sha1 = "a58a8593b49cbf1d6f6b35feb61df95a51717127"; }
-    { locale = "or"; arch = "linux-i686"; sha1 = "b80d8770ce0358674d1b2f39c7bb5b8a042a5d32"; }
-    { locale = "or"; arch = "linux-x86_64"; sha1 = "66540a388aa07190fa98aff515f09a01d1c173ee"; }
-    { locale = "pa-IN"; arch = "linux-i686"; sha1 = "d9e85c6de7487b13e91f400ce8a06c0104b08ddc"; }
-    { locale = "pa-IN"; arch = "linux-x86_64"; sha1 = "01da681d516c6b1febd0096c6dcd8ccbc9b6fdef"; }
-    { locale = "pl"; arch = "linux-i686"; sha1 = "faa22ad8c24d6465976412d1bd252c74936f937c"; }
-    { locale = "pl"; arch = "linux-x86_64"; sha1 = "5410dcf34d4207e005f207fc430892f23f160461"; }
-    { locale = "pt-BR"; arch = "linux-i686"; sha1 = "0735e4827702f896332e1461dcdb3e7088e60d90"; }
-    { locale = "pt-BR"; arch = "linux-x86_64"; sha1 = "8b083ad5aad313afd9fa9c4e91ebbd03f205b67f"; }
-    { locale = "pt-PT"; arch = "linux-i686"; sha1 = "2fc593cebbfe2bdae3689255f46cd9c41314f00c"; }
-    { locale = "pt-PT"; arch = "linux-x86_64"; sha1 = "5bfa929956b1ce9a0ef2afb08ae3510326e962c6"; }
-    { locale = "rm"; arch = "linux-i686"; sha1 = "81e5a280e47fbbac82d1c0e0604828ab9937e1e6"; }
-    { locale = "rm"; arch = "linux-x86_64"; sha1 = "fbc333306bb32eaf2b2d815efa32a5915cd15ede"; }
-    { locale = "ro"; arch = "linux-i686"; sha1 = "df75129e5c618cdfe180ddf71598704f8c652e5c"; }
-    { locale = "ro"; arch = "linux-x86_64"; sha1 = "6b0556075110eac4263e1b2ba9bef29a3504d302"; }
-    { locale = "ru"; arch = "linux-i686"; sha1 = "3309c2e1bcc6d623a28c01cf3e61ed9d9a2d676b"; }
-    { locale = "ru"; arch = "linux-x86_64"; sha1 = "f729504273d11b18f3b9c1f4918a18a2a63483da"; }
-    { locale = "si"; arch = "linux-i686"; sha1 = "9d54da726bd01800a7fa41de9bc0b9aaba9202b9"; }
-    { locale = "si"; arch = "linux-x86_64"; sha1 = "1550492673a913ecd0ff14ccdea0289bbfc680f6"; }
-    { locale = "sk"; arch = "linux-i686"; sha1 = "d8b97959e6d77ac9d1e0c512414824c9c037d2f0"; }
-    { locale = "sk"; arch = "linux-x86_64"; sha1 = "1056467b1726dc0469745d5eb80407e3715c6aee"; }
-    { locale = "sl"; arch = "linux-i686"; sha1 = "9c51bd6b10adfb2dc3cf07d38981636c3a13557a"; }
-    { locale = "sl"; arch = "linux-x86_64"; sha1 = "9f58166807385e0e95682b361e0654125311b4d6"; }
-    { locale = "son"; arch = "linux-i686"; sha1 = "cf5b8b7266e6c6c5054aeab213c37e61df68057f"; }
-    { locale = "son"; arch = "linux-x86_64"; sha1 = "36a609e8e1a2002653520b7a872562ecd34d6afc"; }
-    { locale = "sq"; arch = "linux-i686"; sha1 = "6c723410982cf03559199122ce358757670f0d61"; }
-    { locale = "sq"; arch = "linux-x86_64"; sha1 = "7e0dae98aa342781a5e89c7f531545704d48b9b6"; }
-    { locale = "sr"; arch = "linux-i686"; sha1 = "eb000da14a0e48ffac929e51db640c721e8c9e11"; }
-    { locale = "sr"; arch = "linux-x86_64"; sha1 = "5696ee19d90930527370021a9eb51f0579080293"; }
-    { locale = "sv-SE"; arch = "linux-i686"; sha1 = "ed9c5d17963779cebd526a65abd10d82b9b7aadc"; }
-    { locale = "sv-SE"; arch = "linux-x86_64"; sha1 = "7086405ab9008c91c9acbe7685590ee4497b0576"; }
-    { locale = "ta"; arch = "linux-i686"; sha1 = "0f0aea80ca1dbf604a3c0ac28a255431c1952f88"; }
-    { locale = "ta"; arch = "linux-x86_64"; sha1 = "e794ceab525cbc0314d10398a807c436ef66d17d"; }
-    { locale = "te"; arch = "linux-i686"; sha1 = "09c3427c855d7c82e44997accc80a52317d0d22d"; }
-    { locale = "te"; arch = "linux-x86_64"; sha1 = "af19d02ed9dbb366d0c7b34b538ae83bf2f6212c"; }
-    { locale = "th"; arch = "linux-i686"; sha1 = "3064e5bcea910f32fbef60acd41a9917145c48a1"; }
-    { locale = "th"; arch = "linux-x86_64"; sha1 = "a7ad2f98a7a534667370ef3f22ae00f90002a1a7"; }
-    { locale = "tr"; arch = "linux-i686"; sha1 = "76726e6bbbd89eb6469df960ec889ce781cfc68b"; }
-    { locale = "tr"; arch = "linux-x86_64"; sha1 = "031b5eb83b6e96dcd9bdf2eabdfab7a370b0becb"; }
-    { locale = "uk"; arch = "linux-i686"; sha1 = "5d31c283914d67dcfc0af09525ab3814d0e05db4"; }
-    { locale = "uk"; arch = "linux-x86_64"; sha1 = "a9e577f4e9aba0af6b019b566f98121586112552"; }
-    { locale = "uz"; arch = "linux-i686"; sha1 = "f84745683934f221dc5de1b970dae5c919979a71"; }
-    { locale = "uz"; arch = "linux-x86_64"; sha1 = "95aef2a68a86030078ac64346445f5f92a85fb63"; }
-    { locale = "vi"; arch = "linux-i686"; sha1 = "53e9197a3de8d63950b5d324a4da0d3533dd492c"; }
-    { locale = "vi"; arch = "linux-x86_64"; sha1 = "be24b818a6ba1209d383c9c43af0bb0ddd82070b"; }
-    { locale = "xh"; arch = "linux-i686"; sha1 = "be808769e77a47ace01b1b2455607c56a402e795"; }
-    { locale = "xh"; arch = "linux-x86_64"; sha1 = "9feca0a4ba5ab71b05bad4ff0324c648ccae7f38"; }
-    { locale = "zh-CN"; arch = "linux-i686"; sha1 = "057c9ead60a3819eecae1f31ed512ea3e5e2aab4"; }
-    { locale = "zh-CN"; arch = "linux-x86_64"; sha1 = "2503f8354c07929c1b943c64ea233bb6453c2740"; }
-    { locale = "zh-TW"; arch = "linux-i686"; sha1 = "75c439a7002183aa5ad8795c1986c109714c2f00"; }
-    { locale = "zh-TW"; arch = "linux-x86_64"; sha1 = "add241bb07ff446df18f98f6eec18ebec3bb4e31"; }
+    { locale = "ach"; arch = "linux-i686"; sha1 = "cfb24e0fd6e10febf2381101d4a8f3de1516a732"; }
+    { locale = "ach"; arch = "linux-x86_64"; sha1 = "642d44d0fe13be4eaf4d1b495dfc7b285f7c2de7"; }
+    { locale = "af"; arch = "linux-i686"; sha1 = "b4e5ce516dbc5d4157bd1c85b23b5cc233bbf8d5"; }
+    { locale = "af"; arch = "linux-x86_64"; sha1 = "40f9b3a3ac3089f6bbf9c42a3259a484b49a659a"; }
+    { locale = "an"; arch = "linux-i686"; sha1 = "0bfa3cd6867316ca10ebe57ab2cebd03a59b096c"; }
+    { locale = "an"; arch = "linux-x86_64"; sha1 = "69369093f488223decdb77f2d12676be4aeb4d95"; }
+    { locale = "ar"; arch = "linux-i686"; sha1 = "3a091005a265c6b06a77416223caa45a51d36056"; }
+    { locale = "ar"; arch = "linux-x86_64"; sha1 = "0f9c79ae4aa4498bc9f8a3e372b26b0b000a0db9"; }
+    { locale = "as"; arch = "linux-i686"; sha1 = "cf996943809573aca05dc88ed4d843afda11710f"; }
+    { locale = "as"; arch = "linux-x86_64"; sha1 = "609860ebd75ea9731912b4fcbb343fa027ebbb77"; }
+    { locale = "ast"; arch = "linux-i686"; sha1 = "5adbd6c9194f8f214c94b587a41c5399116316d4"; }
+    { locale = "ast"; arch = "linux-x86_64"; sha1 = "feaeae77f9578a452cb98893701f14047d65a5d3"; }
+    { locale = "az"; arch = "linux-i686"; sha1 = "8718585cb6fb8b7823a572ddc21f910877287133"; }
+    { locale = "az"; arch = "linux-x86_64"; sha1 = "0834d8d8a29f805b435c2d6a29403c9180471837"; }
+    { locale = "be"; arch = "linux-i686"; sha1 = "abb5002f7275cb5b65942a735864783bf32c4d9e"; }
+    { locale = "be"; arch = "linux-x86_64"; sha1 = "bc0ef337ec080b46db30728a425695d78a908d46"; }
+    { locale = "bg"; arch = "linux-i686"; sha1 = "7bcee63546e75aa94ccd9fd65db18ebf8360e5ba"; }
+    { locale = "bg"; arch = "linux-x86_64"; sha1 = "8c9c23313710f7467bc34d2ea462dd8e9df6fcde"; }
+    { locale = "bn-BD"; arch = "linux-i686"; sha1 = "fa80f7049f926205878e1f9e99d2abba876ea9d9"; }
+    { locale = "bn-BD"; arch = "linux-x86_64"; sha1 = "add645cc1b73affbc35c265ec2f82a9d97abddf6"; }
+    { locale = "bn-IN"; arch = "linux-i686"; sha1 = "a391b6305ecf256a5be3e7b29427ff1979b90a9e"; }
+    { locale = "bn-IN"; arch = "linux-x86_64"; sha1 = "77d637809f26bf3214fc93d39547863d56b9949d"; }
+    { locale = "br"; arch = "linux-i686"; sha1 = "a7e0fc1a0b340232585c2b4630834e67b2ee565a"; }
+    { locale = "br"; arch = "linux-x86_64"; sha1 = "80f61d890df9c5c126846ee293a0c1295f3b52bc"; }
+    { locale = "bs"; arch = "linux-i686"; sha1 = "f007e6bac7ae796822496b4b06fed7f9112032ad"; }
+    { locale = "bs"; arch = "linux-x86_64"; sha1 = "7abfb01029faa86d2245a273381ef8e5453dc89a"; }
+    { locale = "ca"; arch = "linux-i686"; sha1 = "3bbdf70ed21803dacb4cf000055f27d8f11bf6a2"; }
+    { locale = "ca"; arch = "linux-x86_64"; sha1 = "de2696a5c031b05479d12319d57dd44dd644f1ff"; }
+    { locale = "cs"; arch = "linux-i686"; sha1 = "0d678464f64f2ba1ff8e924336992faf9f50659c"; }
+    { locale = "cs"; arch = "linux-x86_64"; sha1 = "86d68fde6d6255407b8b0f46845416141745b805"; }
+    { locale = "cy"; arch = "linux-i686"; sha1 = "eb0270f0315d31a0c8f9d2919eb4408996b4cdeb"; }
+    { locale = "cy"; arch = "linux-x86_64"; sha1 = "004c5d1cfbcf7535765bc1cb3d8a8ea2d72386e5"; }
+    { locale = "da"; arch = "linux-i686"; sha1 = "e333b6e553bc208c50c71d89d41ce0075e72bed9"; }
+    { locale = "da"; arch = "linux-x86_64"; sha1 = "dacd29f1fb10cfab134d302ca50092d50ebf8936"; }
+    { locale = "de"; arch = "linux-i686"; sha1 = "349d731fae24d6717d35e5b945add7c992a587e2"; }
+    { locale = "de"; arch = "linux-x86_64"; sha1 = "635fc409b6433c6a8b4bb48799fe76c50153f944"; }
+    { locale = "dsb"; arch = "linux-i686"; sha1 = "ed8520837da7170a1e6ba63b1c97e34730ad2f1d"; }
+    { locale = "dsb"; arch = "linux-x86_64"; sha1 = "7ea5a1cfe9f25364e9d7902cf93459478fddac5e"; }
+    { locale = "el"; arch = "linux-i686"; sha1 = "831e7929fa7fff2e410359b6a599e293f7587f71"; }
+    { locale = "el"; arch = "linux-x86_64"; sha1 = "fb9829b8a41fc07f54ca21260b0e33f178a8c392"; }
+    { locale = "en-GB"; arch = "linux-i686"; sha1 = "f122389f405bb36231139a50198e969a11898273"; }
+    { locale = "en-GB"; arch = "linux-x86_64"; sha1 = "919e765df3434d4349c3d5a8dbd5a3030f749d09"; }
+    { locale = "en-US"; arch = "linux-i686"; sha1 = "a75b1c5106eaefec2c6c68538b870f6fa21667c1"; }
+    { locale = "en-US"; arch = "linux-x86_64"; sha1 = "5ed50e7ba72beec9b46155ffc2958b7ec3c287af"; }
+    { locale = "en-ZA"; arch = "linux-i686"; sha1 = "061a683c163d48c79246a28562b7047f492f87e3"; }
+    { locale = "en-ZA"; arch = "linux-x86_64"; sha1 = "d10d80b665c85b8e90be69b3192ec8d0ec623bf3"; }
+    { locale = "eo"; arch = "linux-i686"; sha1 = "65e68765f422a3c829faf7f25f6b832223c27711"; }
+    { locale = "eo"; arch = "linux-x86_64"; sha1 = "a036d85b96a319bd677b17f640329a247d7046ed"; }
+    { locale = "es-AR"; arch = "linux-i686"; sha1 = "9fdccf38442e4d46aca7ad7f0d2936cf2430840f"; }
+    { locale = "es-AR"; arch = "linux-x86_64"; sha1 = "c28754a1f2dd926202edaf13241d0b22de744cd1"; }
+    { locale = "es-CL"; arch = "linux-i686"; sha1 = "900b4573ee4611c537cd97ac353c9200d4a09387"; }
+    { locale = "es-CL"; arch = "linux-x86_64"; sha1 = "235dfe745c2e5de80deadc22e9e0fcfef0d48ee4"; }
+    { locale = "es-ES"; arch = "linux-i686"; sha1 = "1236b095b4a6aed92a574c96aa0d724abf6de934"; }
+    { locale = "es-ES"; arch = "linux-x86_64"; sha1 = "f4d83aa231a22f981c4177971414061b562620fb"; }
+    { locale = "es-MX"; arch = "linux-i686"; sha1 = "fd5e4b7f019b12a307909ab481579d4b717a0ae2"; }
+    { locale = "es-MX"; arch = "linux-x86_64"; sha1 = "4b4a33fd2a6aa8061008f7a22c5c970490f64127"; }
+    { locale = "et"; arch = "linux-i686"; sha1 = "db06c7ea90e42b7dd55e95c3c1c65c3464842056"; }
+    { locale = "et"; arch = "linux-x86_64"; sha1 = "2842e4cb8c1c07dc221acca4dc4965ed25a2c993"; }
+    { locale = "eu"; arch = "linux-i686"; sha1 = "bf5d17a4ba5f08574e7aaa9d34507cff22da87d6"; }
+    { locale = "eu"; arch = "linux-x86_64"; sha1 = "74fef0cd9fe3ec31e2d3127662d33d0b2f02cfe5"; }
+    { locale = "fa"; arch = "linux-i686"; sha1 = "05b07e6d1d274fafbc9a2ce201d36ea3cccbffd3"; }
+    { locale = "fa"; arch = "linux-x86_64"; sha1 = "8e9ad7e990c8091fccda1a6651a5711b61147cd9"; }
+    { locale = "ff"; arch = "linux-i686"; sha1 = "86cf25b38865428ea4c744a3fe438bf88d2994f3"; }
+    { locale = "ff"; arch = "linux-x86_64"; sha1 = "c90ad173f42267a0b8ef16ad4c0b4f29299e6eed"; }
+    { locale = "fi"; arch = "linux-i686"; sha1 = "e22411eeb539a1fde08f20b44cfb1b5ff017b582"; }
+    { locale = "fi"; arch = "linux-x86_64"; sha1 = "ed7b3383209ceb588126a0bcb4433e5bbda2b46f"; }
+    { locale = "fr"; arch = "linux-i686"; sha1 = "90c2a9fb92335d504a9dc9d8a6afedd494b69f8b"; }
+    { locale = "fr"; arch = "linux-x86_64"; sha1 = "80e4efdd06b1aa47f348e4056c134bf24a74f4cc"; }
+    { locale = "fy-NL"; arch = "linux-i686"; sha1 = "122998b498e79a8eb6daf0e877e38fafeeedd679"; }
+    { locale = "fy-NL"; arch = "linux-x86_64"; sha1 = "99eb9694ecbd3aa892524467ced78bbc0a97d1fd"; }
+    { locale = "ga-IE"; arch = "linux-i686"; sha1 = "adb3d58c050adfb38576fcbbc62a28bfab5f196d"; }
+    { locale = "ga-IE"; arch = "linux-x86_64"; sha1 = "9a5a8a4a78c9b2f114609552e952a5ad4f7c1603"; }
+    { locale = "gd"; arch = "linux-i686"; sha1 = "876bb49fa2399e53d68bf8bd9c403b008068c5c9"; }
+    { locale = "gd"; arch = "linux-x86_64"; sha1 = "06dd806eba47b93f85d49cfabaefbb1d4ed04f49"; }
+    { locale = "gl"; arch = "linux-i686"; sha1 = "3b5867e14e051c8405ebe79f1147c89340ccdfed"; }
+    { locale = "gl"; arch = "linux-x86_64"; sha1 = "25f5e9ca92c194cbca6d3b06089e884b8c0aed13"; }
+    { locale = "gu-IN"; arch = "linux-i686"; sha1 = "df3db443c51ea75a22a9ca0666c92c28b43db5e4"; }
+    { locale = "gu-IN"; arch = "linux-x86_64"; sha1 = "2af9d3810a60e0cb2674c74925f9076996abef3d"; }
+    { locale = "he"; arch = "linux-i686"; sha1 = "b8b89d4a3e7836c2bf26819e917b7a655aee44d5"; }
+    { locale = "he"; arch = "linux-x86_64"; sha1 = "9a56a307750c21cdfbefda1abaf1763c2aab1875"; }
+    { locale = "hi-IN"; arch = "linux-i686"; sha1 = "0b8ddcb306d23fdd67abcc098c11420133fea996"; }
+    { locale = "hi-IN"; arch = "linux-x86_64"; sha1 = "ae56f2f5caf403ab2f569f843e234cb983e6eb85"; }
+    { locale = "hr"; arch = "linux-i686"; sha1 = "3a829bf25984b0004edb130ef9df5d826ddac5a9"; }
+    { locale = "hr"; arch = "linux-x86_64"; sha1 = "ada293b8ab51d393eda5be8f078e69c584ef6dda"; }
+    { locale = "hsb"; arch = "linux-i686"; sha1 = "3ed330ee86404bdc6080feaeef0f6a095ca0fbee"; }
+    { locale = "hsb"; arch = "linux-x86_64"; sha1 = "ee20f0c59b0340f68f066a78f7455d9c0d95fd2f"; }
+    { locale = "hu"; arch = "linux-i686"; sha1 = "ff66764fe50e5115bf70acce753aa240feffea28"; }
+    { locale = "hu"; arch = "linux-x86_64"; sha1 = "5e7605de920f18b64b0b4974d46e5fc2f2f4e869"; }
+    { locale = "hy-AM"; arch = "linux-i686"; sha1 = "c074b5ce903cd4d8ab66ea79a15025b4eb492774"; }
+    { locale = "hy-AM"; arch = "linux-x86_64"; sha1 = "7284c71aaa692a98a451ac862af9e0ed6519df55"; }
+    { locale = "id"; arch = "linux-i686"; sha1 = "80fa7c3cd2dea7ee4e4acccc74c8b6936cfe3fa7"; }
+    { locale = "id"; arch = "linux-x86_64"; sha1 = "7ddf8a8c2c3b590a76463e13f8f677c3cb985302"; }
+    { locale = "is"; arch = "linux-i686"; sha1 = "a52ad05729c59acfe826cb211f5da631036aa366"; }
+    { locale = "is"; arch = "linux-x86_64"; sha1 = "7e21475ef56523e7b7bd92cba2e2f4a46bb437e4"; }
+    { locale = "it"; arch = "linux-i686"; sha1 = "48191529939cf46cf0c0573a4fcd53a9703c8db8"; }
+    { locale = "it"; arch = "linux-x86_64"; sha1 = "6b1d93070e8c29573e32abd3ba7b7bf7f07ab269"; }
+    { locale = "ja"; arch = "linux-i686"; sha1 = "136b76925e0b7f766ccf9ca1ee1dcdb7a2046509"; }
+    { locale = "ja"; arch = "linux-x86_64"; sha1 = "0fe5a34c842963e83b14a79c2309b6a906eae5f8"; }
+    { locale = "kk"; arch = "linux-i686"; sha1 = "98c8801e99639de3609dcaba57eacfd2d3eaffc6"; }
+    { locale = "kk"; arch = "linux-x86_64"; sha1 = "ae3d6c13e877ae207c36c2c6e9e4eb5da3d76fff"; }
+    { locale = "km"; arch = "linux-i686"; sha1 = "4bfa2ddd28447fd34fd9e50b3f75033c8212d3c2"; }
+    { locale = "km"; arch = "linux-x86_64"; sha1 = "bbf1b20376f92c353859d671536436a22a87faa9"; }
+    { locale = "kn"; arch = "linux-i686"; sha1 = "edf31da5957d27e2b60a13d91b4520c7f67da77a"; }
+    { locale = "kn"; arch = "linux-x86_64"; sha1 = "275c253e1b913f8cc2a2437602c7edd66eaab011"; }
+    { locale = "ko"; arch = "linux-i686"; sha1 = "b213520660c5d6a1c85c3f6a11ff7c9d7f947274"; }
+    { locale = "ko"; arch = "linux-x86_64"; sha1 = "65a37cccaf55c9fa251157da1d93dcafc4ddc3b8"; }
+    { locale = "lij"; arch = "linux-i686"; sha1 = "368a3517809b7560908162efeee6d10842f537ea"; }
+    { locale = "lij"; arch = "linux-x86_64"; sha1 = "212b14ce7e8bbd96a60d23fcd8a8598f8f9ed900"; }
+    { locale = "lt"; arch = "linux-i686"; sha1 = "d27ccfe0459f6b3567818af9e5ccd5d84dd810ba"; }
+    { locale = "lt"; arch = "linux-x86_64"; sha1 = "f47264b2fa1e6f073d0300f0476fed32fb8bca48"; }
+    { locale = "lv"; arch = "linux-i686"; sha1 = "abf68081c4c011552974cf191463186fb350bf7e"; }
+    { locale = "lv"; arch = "linux-x86_64"; sha1 = "d3a3d999205418043bef4680c256f1555ab4e615"; }
+    { locale = "mai"; arch = "linux-i686"; sha1 = "2f88361cb70283bd29f641762b0ba9205a3db932"; }
+    { locale = "mai"; arch = "linux-x86_64"; sha1 = "4802f3a575d68d4e471eab9fbb638f8dcf6801f3"; }
+    { locale = "mk"; arch = "linux-i686"; sha1 = "1a82499a0b9eb4bcdc4ffcf305de7e250d4ddf91"; }
+    { locale = "mk"; arch = "linux-x86_64"; sha1 = "6d0eaf89b4f7d0821be181fbe877935db0cd6ea5"; }
+    { locale = "ml"; arch = "linux-i686"; sha1 = "16f7c329c62c7430b7e989e4d20b4fa406d34e57"; }
+    { locale = "ml"; arch = "linux-x86_64"; sha1 = "ea6b4c37abb4bde4c3c97a6de01414df336546b9"; }
+    { locale = "mr"; arch = "linux-i686"; sha1 = "e21203ab9285444b5dd19a7add22efd7750a75c4"; }
+    { locale = "mr"; arch = "linux-x86_64"; sha1 = "0992eabe63f8a9b759be99a410a600df53f70c80"; }
+    { locale = "ms"; arch = "linux-i686"; sha1 = "7c5314f43623fa25ca1813c58f8a0f3bfcb19624"; }
+    { locale = "ms"; arch = "linux-x86_64"; sha1 = "8be86e6ff4f8c0baa220143d2798c3f707db6752"; }
+    { locale = "nb-NO"; arch = "linux-i686"; sha1 = "fcc032e0ceddbe41527d8adad42c55a4a8626660"; }
+    { locale = "nb-NO"; arch = "linux-x86_64"; sha1 = "8c4365d752844adb31df201901c951b720b7401a"; }
+    { locale = "nl"; arch = "linux-i686"; sha1 = "42adac56689caf8c2cb838bad8c14b6a81c61456"; }
+    { locale = "nl"; arch = "linux-x86_64"; sha1 = "3c835567fe91ae8c386199957b2d64d185020ca9"; }
+    { locale = "nn-NO"; arch = "linux-i686"; sha1 = "47c29bceee08af768f90f54883300704630ac478"; }
+    { locale = "nn-NO"; arch = "linux-x86_64"; sha1 = "57ac712d8b93d19a155ebf08929ee395d5975b09"; }
+    { locale = "or"; arch = "linux-i686"; sha1 = "a96e39bb3eceb2e7252ad9e659981e14975c025b"; }
+    { locale = "or"; arch = "linux-x86_64"; sha1 = "004b52fb5ce3da6106c6875369299a85fd9f2091"; }
+    { locale = "pa-IN"; arch = "linux-i686"; sha1 = "4cf037c5878372a87f18122e8dc205ace8292f68"; }
+    { locale = "pa-IN"; arch = "linux-x86_64"; sha1 = "30128d1d927194cc1eac4b8d297faa5ab5d74b1c"; }
+    { locale = "pl"; arch = "linux-i686"; sha1 = "93aae61fcb7f17f5e83ee1ac8af190ee9c28bf5b"; }
+    { locale = "pl"; arch = "linux-x86_64"; sha1 = "f7ae0d826144607bb814c7b1c8dde63ad679148c"; }
+    { locale = "pt-BR"; arch = "linux-i686"; sha1 = "48cedf32ea01a9548902c8ce0a998c01d2c3da12"; }
+    { locale = "pt-BR"; arch = "linux-x86_64"; sha1 = "f31b4c25be102bc96f8795721a19c3c9fdd00043"; }
+    { locale = "pt-PT"; arch = "linux-i686"; sha1 = "e735996d21d15020bea72d9b01b0686d8fb1cd9e"; }
+    { locale = "pt-PT"; arch = "linux-x86_64"; sha1 = "705dedac0d8b9df87301eb06251b81e8d5f34d47"; }
+    { locale = "rm"; arch = "linux-i686"; sha1 = "ad7ce0ef601763795f5998e56b89d77f466f50de"; }
+    { locale = "rm"; arch = "linux-x86_64"; sha1 = "50f08008a9a12172f379dafaea656cae3f7a2d5b"; }
+    { locale = "ro"; arch = "linux-i686"; sha1 = "6f925c413fe655a35ffad0b9d3b22bc6c9af15d1"; }
+    { locale = "ro"; arch = "linux-x86_64"; sha1 = "6592bf15bdf465100dbb00a00b5e77eb10f42cae"; }
+    { locale = "ru"; arch = "linux-i686"; sha1 = "2bf3af22a827f6ea9ba849bcbe2da6687fecaa2c"; }
+    { locale = "ru"; arch = "linux-x86_64"; sha1 = "35817ed10d23415bc8c8359fc0ac080c84a648fc"; }
+    { locale = "si"; arch = "linux-i686"; sha1 = "084109d7bb0b17da1d44d0cd954d55e1ce0b03ee"; }
+    { locale = "si"; arch = "linux-x86_64"; sha1 = "83c8e57b708a62cfa159f5a58b3d808fd3ca7e2d"; }
+    { locale = "sk"; arch = "linux-i686"; sha1 = "ea7637b7c8228ae9edab0d82bebc4bb7bda7c2a1"; }
+    { locale = "sk"; arch = "linux-x86_64"; sha1 = "6b6a13d882eb59d14d51a24be90153b6c928ce01"; }
+    { locale = "sl"; arch = "linux-i686"; sha1 = "dfbce85ca19bdb9aeecf23027a9f4e6e4eb4dba8"; }
+    { locale = "sl"; arch = "linux-x86_64"; sha1 = "09ba3868ae42a1e937f21c30d7b56d8c74668e5c"; }
+    { locale = "son"; arch = "linux-i686"; sha1 = "05c37865cea7ebc007099c14b2a38c315541477b"; }
+    { locale = "son"; arch = "linux-x86_64"; sha1 = "de6aafaaff37f9ffd5dc2a5dc793a8034340eb16"; }
+    { locale = "sq"; arch = "linux-i686"; sha1 = "0c2b5a383d33a347e2c136a76f99c6a72fdf14a1"; }
+    { locale = "sq"; arch = "linux-x86_64"; sha1 = "e6fb929c285406656ae25156eeb8e446f69cb5ec"; }
+    { locale = "sr"; arch = "linux-i686"; sha1 = "2699adadaf32b89077b2e11fff1966841e4df500"; }
+    { locale = "sr"; arch = "linux-x86_64"; sha1 = "53c0d1d7559b4a9f6310b2bbec039a9d02a42200"; }
+    { locale = "sv-SE"; arch = "linux-i686"; sha1 = "5e680c4a9f9c0be0b74fee65688a4e748b73a7ec"; }
+    { locale = "sv-SE"; arch = "linux-x86_64"; sha1 = "feafa153bf9dc1827acb64a219e2eeecda99e49d"; }
+    { locale = "ta"; arch = "linux-i686"; sha1 = "d372de893c61af574ce5543dbea51b86e89ac24b"; }
+    { locale = "ta"; arch = "linux-x86_64"; sha1 = "774e8166ca5418be29bbf75665431301bab0c261"; }
+    { locale = "te"; arch = "linux-i686"; sha1 = "84619cf1f9fca5bc49312e6929e0e27fb38ea058"; }
+    { locale = "te"; arch = "linux-x86_64"; sha1 = "abc1565856241ebb91ceb41c6891c8db843946dd"; }
+    { locale = "th"; arch = "linux-i686"; sha1 = "337b5d30b5da8eef79992c33755956efd2c98297"; }
+    { locale = "th"; arch = "linux-x86_64"; sha1 = "02e7c2ab7ed3ff5da36cb3fca19e019961dd015c"; }
+    { locale = "tr"; arch = "linux-i686"; sha1 = "e3e0caef6f82a09edfbe9024701d829c0e5bc625"; }
+    { locale = "tr"; arch = "linux-x86_64"; sha1 = "184ffa3647d57adaf419f9209682aca913249b49"; }
+    { locale = "uk"; arch = "linux-i686"; sha1 = "0ae60e506d63373730895526bc7bcb9dc5c7b814"; }
+    { locale = "uk"; arch = "linux-x86_64"; sha1 = "f54d9fb8b704178bceed03646af17ab8e49a94d4"; }
+    { locale = "uz"; arch = "linux-i686"; sha1 = "77973a500608be31185ea172b4c4f21191838e9d"; }
+    { locale = "uz"; arch = "linux-x86_64"; sha1 = "5cb1cb1618cdc2b4515b3569c2ef8341b91d547b"; }
+    { locale = "vi"; arch = "linux-i686"; sha1 = "d957cedd5a36546f7d9cef3ddcdbdfb9dfb376a3"; }
+    { locale = "vi"; arch = "linux-x86_64"; sha1 = "992d5939c9db596dfc1e118c80a5fb2c08c96753"; }
+    { locale = "xh"; arch = "linux-i686"; sha1 = "1eab731be806a22e29940676d3766190becf9561"; }
+    { locale = "xh"; arch = "linux-x86_64"; sha1 = "fe4872dd673fdbf867921f7c1fbc36ae0be74c3e"; }
+    { locale = "zh-CN"; arch = "linux-i686"; sha1 = "8cc0e2ea6342577761a6ef9655c4f07f9dae1367"; }
+    { locale = "zh-CN"; arch = "linux-x86_64"; sha1 = "5854d58a2ec318d5dc16f905853fa808774c956d"; }
+    { locale = "zh-TW"; arch = "linux-i686"; sha1 = "875013ebba184c5a656abb2ab4fee3948689beef"; }
+    { locale = "zh-TW"; arch = "linux-x86_64"; sha1 = "7e416b11856aae2d52bc24b7629fc2d90719e9b1"; }
   ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix
index bd8fb4d2cd7..df176caaa2d 100644
--- a/pkgs/applications/networking/browsers/firefox/default.nix
+++ b/pkgs/applications/networking/browsers/firefox/default.nix
@@ -1,9 +1,10 @@
-{ lib, stdenv, fetchurl, pkgconfig, gtk, pango, perl, python, zip, libIDL
-, libjpeg, zlib, dbus, dbus_glib, bzip2, xlibs
+{ lib, stdenv, fetchurl, pkgconfig, gtk, gtk3, pango, perl, python, zip, libIDL
+, libjpeg, zlib, dbus, dbus_glib, bzip2, xorg
 , freetype, fontconfig, file, alsaLib, nspr, nss, libnotify
 , yasm, mesa, sqlite, unzip, makeWrapper, pysqlite
 , hunspell, libevent, libstartup_notification, libvpx
-, cairo, gstreamer, gst_plugins_base, icu
+, cairo, gstreamer, gst_plugins_base, icu, libpng, jemalloc, libpulseaudio
+, enableGTK3 ? false
 , debugBuild ? false
 , # If you want the resulting program to call itself "Firefox" instead
   # of "Shiretoko" or whatever, enable this option.  However, those
@@ -15,26 +16,30 @@
 
 assert stdenv.cc ? libc && stdenv.cc.libc != null;
 
-let version = "37.0.2"; in
+let
 
-stdenv.mkDerivation rec {
-  name = "firefox-${version}";
+common = { pname, version, sha1 }: stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
 
   src = fetchurl {
-    url = "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${version}/source/firefox-${version}.source.tar.bz2";
-    sha1 = "6e306d56e4e00ffdc2ddbdfbbabe4cb9fc527071";
+    url =
+      let ext = if lib.versionAtLeast version "41.0" then "xz" else "bz2";
+      in "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${version}/source/firefox-${version}.source.tar.${ext}";
+    inherit sha1;
   };
 
   buildInputs =
     [ pkgconfig gtk perl zip libIDL libjpeg zlib bzip2
-      python dbus dbus_glib pango freetype fontconfig xlibs.libXi
-      xlibs.libX11 xlibs.libXrender xlibs.libXft xlibs.libXt file
-      alsaLib nspr nss libnotify xlibs.pixman yasm mesa
-      xlibs.libXScrnSaver xlibs.scrnsaverproto pysqlite
-      xlibs.libXext xlibs.xextproto sqlite unzip makeWrapper
-      hunspell libevent libstartup_notification libvpx cairo
-      gstreamer gst_plugins_base icu
-    ];
+      python dbus dbus_glib pango freetype fontconfig xorg.libXi
+      xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file
+      alsaLib nspr nss libnotify xorg.pixman yasm mesa
+      xorg.libXScrnSaver xorg.scrnsaverproto pysqlite
+      xorg.libXext xorg.xextproto sqlite unzip makeWrapper
+      hunspell libevent libstartup_notification libvpx /* cairo */
+      gstreamer gst_plugins_base icu libpng jemalloc
+      libpulseaudio # only headers are needed
+    ]
+    ++ lib.optional enableGTK3 gtk3;
 
   configureFlags =
     [ "--enable-application=browser"
@@ -46,25 +51,27 @@ stdenv.mkDerivation rec {
       "--with-system-nss"
       "--with-system-libevent"
       "--with-system-libvpx"
-      # "--with-system-png" # needs APNG support
-      # "--with-system-icu" # causes ‘ar: invalid option -- 'L'’ in Firefox 28.0
+      "--with-system-png" # needs APNG support
+      "--with-system-icu"
       "--enable-system-ffi"
       "--enable-system-hunspell"
       "--enable-system-pixman"
       "--enable-system-sqlite"
-      "--enable-system-cairo"
+      #"--enable-system-cairo"
       "--enable-gstreamer"
       "--enable-startup-notification"
-      # "--enable-content-sandbox"            # available since 26.0, but not much info available
-      # "--enable-content-sandbox-reporter"   # keeping disabled for now
+      "--enable-content-sandbox"            # available since 26.0, but not much info available
+      "--disable-content-sandbox-reporter"  # keeping disabled for now
       "--disable-crashreporter"
       "--disable-tests"
       "--disable-necko-wifi" # maybe we want to enable this at some point
       "--disable-installer"
       "--disable-updater"
-      "--disable-pulseaudio"
+      "--enable-jemalloc"
+      "--disable-gconf"
     ]
-    ++ (if debugBuild then [ "--enable-debug" "--enable-profiling"]
+    ++ lib.optional enableGTK3 "--enable-default-toolkit=cairo-gtk3"
+    ++ (if debugBuild then [ "--enable-debug" "--enable-profiling" ]
                       else [ "--disable-debug" "--enable-release"
                              "--enable-optimize${lib.optionalString (stdenv.system == "i686-linux") "=-O1"}"
                              "--enable-strip" ])
@@ -76,7 +83,7 @@ stdenv.mkDerivation rec {
     ''
       mkdir ../objdir
       cd ../objdir
-      configureScript=../mozilla-release/configure
+      configureScript=../mozilla-*/configure
     '';
 
   preInstall =
@@ -92,10 +99,21 @@ stdenv.mkDerivation rec {
 
       # Remove SDK cruft. FIXME: move to a separate output?
       rm -rf $out/share/idl $out/include $out/lib/firefox-devel-*
+    '' + lib.optionalString enableGTK3
+      # argv[0] must point to firefox itself
+    ''
+      wrapProgram "$out/bin/firefox" \
+        --argv0 "$out/bin/.firefox-wrapped" \
+        --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:" \
+        --suffix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
+    '' +
+      # some basic testing
+    ''
+      "$out/bin/firefox" --version
     '';
 
   meta = {
-    description = "Web browser";
+    description = "A web browser" + lib.optionalString (pname == "firefox-esr") " (Extended Support Release)";
     homepage = http://www.mozilla.com/en-US/firefox/;
     maintainers = with lib.maintainers; [ eelco ];
     platforms = lib.platforms.linux;
@@ -105,4 +123,20 @@ stdenv.mkDerivation rec {
     inherit gtk nspr version;
     isFirefox3Like = true;
   };
+};
+
+in {
+
+  firefox = common {
+    pname = "firefox";
+    version = "41.0.1";
+    sha1 = "4f6bf34b7b286e033f401d7d4112ec6310577aae";
+  };
+
+  firefox-esr = common {
+    pname = "firefox-esr";
+    version = "38.3.0esr";
+    sha1 = "57d2c255348ac13b6ffbb952c5e0d57757aa0290";
+  };
+
 }
diff --git a/pkgs/applications/networking/browsers/firefox/wrapper.nix b/pkgs/applications/networking/browsers/firefox/wrapper.nix
index 5ebd2607841..db51dc8b148 100644
--- a/pkgs/applications/networking/browsers/firefox/wrapper.nix
+++ b/pkgs/applications/networking/browsers/firefox/wrapper.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
   desktopItem = makeDesktopItem {
     name = browserName;
     exec = browserName + " %U";
-    icon = browserName;
+    inherit icon;
     comment = "";
     desktopName = desktopName;
     genericName = "Web Browser";
@@ -43,11 +43,10 @@ stdenv.mkDerivation {
         --suffix-each LD_PRELOAD ':' "$(cat $(filterExisting $(addSuffix /extra-ld-preload $plugins)))" \
         --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH" \
         --prefix-contents PATH ':' "$(filterExisting $(addSuffix /extra-bin-path $plugins))" \
-        --set MOZ_OBJDIR "$(ls -d "${browser}/lib/${browserName}*")"
+        --set MOZ_OBJDIR "$(ls -d "${browser}/lib/${browserName}"*)"
 
     ${ lib.optionalString libtrick
     ''
-    sed -e "s@exec @exec -a '$out/bin/${browserName}${nameSuffix}' @" -i "$out/bin/${browserName}${nameSuffix}"
     libdirname="$(echo "${browser}/lib/${browserName}"*)"
     libdirbasename="$(basename "$libdirname")"
     mkdir -p "$out/lib/$libdirbasename"
@@ -58,8 +57,14 @@ stdenv.mkDerivation {
     ''
     }
 
-    mkdir -p $out/share/icons
-    ln -s $out/lib/${browserName}${nameSuffix}/browser/icons/mozicon128.png $out/share/icons/${browserName}.png
+    if [ -e "${browser}/share/icons" ]; then
+        mkdir -p "$out/share"
+        ln -s "${browser}/share/icons" "$out/share/icons"
+    else
+        mkdir -p "$out/share/icons/hicolor/128x128/apps"
+        ln -s "$out/lib/$libdirbasename/browser/icons/mozicon128.png" \
+            "$out/share/icons/hicolor/128x128/apps/${browserName}.png"
+    fi
 
     mkdir -p $out/share/applications
     cp $desktopItem/share/applications/* $out/share/applications
diff --git a/pkgs/applications/networking/browsers/jumanji/default.nix b/pkgs/applications/networking/browsers/jumanji/default.nix
index ff4fea90bff..1969a1f502f 100644
--- a/pkgs/applications/networking/browsers/jumanji/default.nix
+++ b/pkgs/applications/networking/browsers/jumanji/default.nix
@@ -1,22 +1,24 @@
-{ stdenv, fetchgit, pkgconfig, girara, gtk, webkitgtk, glib_networking, makeWrapper }:
+{ stdenv, fetchgit, pkgconfig, girara, gtk, webkitgtk, glib_networking, makeWrapper
+, gsettings_desktop_schemas }:
 
 stdenv.mkDerivation rec {
   name = "jumanji-${version}";
-  version = "20140622";
+  version = "20150107";
 
   src = fetchgit {
     url = git://pwmt.org/jumanji.git;
-    rev = "8f40487304a6a931487c411b25001f2bb5cf8d4f";
-    sha256 = "1hdk09rayyv2knxzn4n7d41dvh34gdk9ra75x7g9n985w13pkinv";
+    rev = "f8e04e5b5a9fec47d49ca63a096e5d35be281151";
+    sha256 = "1xq06iabr4y76faf4w1cx6fhwdksfsxggz1ndny7icniwjzk98h9";
   };
 
-  buildInputs = [ girara pkgconfig gtk webkitgtk makeWrapper ];
+  buildInputs = [ girara pkgconfig gtk webkitgtk makeWrapper gsettings_desktop_schemas ];
 
   makeFlags = [ "PREFIX=$(out)" ];
 
   preFixup=''
     wrapProgram "$out/bin/jumanji" \
-     --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules"
+     --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules" \
+     --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/browsers/kwebkitpart/default.nix b/pkgs/applications/networking/browsers/kwebkitpart/default.nix
index cb3a0e9eac4..173ffcb9330 100644
--- a/pkgs/applications/networking/browsers/kwebkitpart/default.nix
+++ b/pkgs/applications/networking/browsers/kwebkitpart/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, kdelibs }:
+{ stdenv, fetchgit, automoc4, cmake, perl, pkgconfig, kdelibs }:
 
 stdenv.mkDerivation rec {
   name = "kwebkitpart-${version}";
@@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ kdelibs ];
 
+  nativeBuildInputs = [ automoc4 cmake perl pkgconfig ];
+
   meta = with stdenv.lib; {
     platforms = platforms.linux;
     maintainers = [ maintainers.phreedom ];
diff --git a/pkgs/applications/networking/browsers/links2/default.nix b/pkgs/applications/networking/browsers/links2/default.nix
index 9b9d9ab6db1..518a4d667dd 100644
--- a/pkgs/applications/networking/browsers/links2/default.nix
+++ b/pkgs/applications/networking/browsers/links2/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl
-, gpm, openssl, pkgconfig # Misc.
-, libpng, libjpeg, libtiff # graphic formats
+, gpm, openssl, pkgconfig, libev # Misc.
+, libpng, libjpeg, libtiff, librsvg # graphic formats
 , bzip2, zlib, xz # Transfer encodings
 , enableFB ? true
 , enableDirectFB ? false, directfb
@@ -8,16 +8,16 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "2.8";
+  version = "2.11";
   name = "links2-${version}";
 
   src = fetchurl {
     url = "${meta.homepage}/download/links-${version}.tar.bz2";
-    sha256 = "15h07498z52jfdahzgvkphg1f7qvxnpbyfn2xmsls0d2dwwdll3r";
+    sha256 = "0gqjdz1brdcx02mcwchi6bxy1i1ljbw5zpc6b321skrrsqkzkxw7";
   };
 
   buildInputs =
-    [ libpng libjpeg libtiff gpm openssl xz bzip2 zlib ]
+    [ libev librsvg libpng libjpeg libtiff gpm openssl xz bzip2 zlib ]
     ++ stdenv.lib.optionals enableX11 [ libX11 libXau libXt ]
     ++ stdenv.lib.optional enableDirectFB [ directfb ];
 
diff --git a/pkgs/applications/networking/browsers/midori/default.nix b/pkgs/applications/networking/browsers/midori/default.nix
index d398cdd2942..5cdfcf5e975 100644
--- a/pkgs/applications/networking/browsers/midori/default.nix
+++ b/pkgs/applications/networking/browsers/midori/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, cmake, pkgconfig, intltool, vala, makeWrapper
 , gtk3, webkitgtk, librsvg, libnotify, sqlite
-, glib_networking, gsettings_desktop_schemas
+, glib_networking, gsettings_desktop_schemas, libsoup
 }:
 
 let
@@ -31,6 +31,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     cmake pkgconfig intltool vala makeWrapper
     webkitgtk librsvg libnotify sqlite
+    (libsoup.override {gnomeSupport = true;})
   ];
 
   cmakeFlags = ''
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/bluejeans/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/bluejeans/default.nix
new file mode 100644
index 00000000000..4b05dcd2675
--- /dev/null
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/bluejeans/default.nix
@@ -0,0 +1,57 @@
+{ stdenv, fetchurl, xorg, gtk, glib, gdk_pixbuf, dpkg, libXext, libXfixes
+, libXrender, libuuid, libXrandr, libXcomposite, libpulseaudio
+}:
+
+with stdenv.lib;
+
+let
+
+  rpathInstaller = makeLibraryPath
+    [gtk glib stdenv.cc.cc];
+
+  rpathPlugin = makeLibraryPath
+    [ stdenv.cc.cc gtk glib xorg.libX11 gdk_pixbuf libXext libXfixes libXrender libXrandr libuuid libXcomposite libpulseaudio ];
+
+in
+
+stdenv.mkDerivation rec {
+  name = "bluejeans-${version}";
+
+  version = "2.100.102.8";
+
+  src = fetchurl {
+    url = "https://swdl.bluejeans.com/skinny/bjnplugin_${version}-1_amd64.deb";
+    sha256 = "18f8jmhxvqy1yiiwlsssj7rjlfcb41xn16hnl6wv8r8r2mmic4v8";
+  };
+
+  phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
+
+  unpackPhase = "${dpkg}/bin/dpkg-deb -x $src .";
+
+  installPhase =
+    ''
+      mkdir -p $out
+      cp -R usr/lib $out/
+
+      plugins=$out/lib/mozilla/plugins
+      patchelf \
+        --set-rpath "${rpathPlugin}" \
+        $plugins/npbjnplugin_${version}.so
+
+      patchelf \
+        --set-rpath "${rpathInstaller}" \
+        $plugins/npbjninstallplugin_${version}.so
+    '';
+
+  dontStrip = true;
+  dontPatchELF = true;
+
+  passthru.mozillaPlugin = "/lib/mozilla/plugins";
+
+  meta = {
+    homepage = http://bluejeans.com;
+    license = stdenv.lib.licenses.unfree;
+    maintainers = with maintainers; [ ocharles kamilchm ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
index 35541b39ee8..01c64340875 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
@@ -36,7 +36,7 @@
 
 let
   # -> http://get.adobe.com/flashplayer/
-  version = "11.2.202.457";
+  version = "11.2.202.508";
 
   src =
     if stdenv.system == "x86_64-linux" then
@@ -46,21 +46,21 @@ let
         throw "no x86_64 debugging version available"
       else rec {
         inherit version;
-        url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
-        sha256 = "0nkr6p4h5l03ywsj1sbap359cl1x9rq3m12j9gvwvbvn935rmyr2";
+        url = "http://fpdownload.adobe.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
+        sha256 = "1i0301vnz94pxcwm9wk1jjyv7gwywy6p7z26ikd5cg259myxbg75";
       }
     else if stdenv.system == "i686-linux" then
       if debug then
         throw "flash debugging version is outdated and probably broken" /* {
         # The debug version also contains a player
         version = "11.1";
-        url = http://fpdownload.macromedia.com/pub/flashplayer/updaters/11/flashplayer_11_plugin_debug.i386.tar.gz;
+        url = http://fpdownload.adobe.com/pub/flashplayer/updaters/11/flashplayer_11_plugin_debug.i386.tar.gz;
         sha256 = "0jn7klq2cyqasj6nxfka2l8nsf7sn7hi6443nv6dd2sb3g7m6x92";
       }*/
       else rec {
         inherit version;
-        url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
-        sha256 = "0qil5rb61bkn80fij31nv29q2wa7bxiwwxgy5zlkm2hsyrz3y4kc";
+        url = "http://fpdownload.adobe.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
+        sha256 = "1483bi34ymchv1cqg57whxhlrhhvwhcw33zjgwzmy7bacxbkj9ia";
       }
     else throw "Flash Player is not supported on this platform";
 
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix
index 3b473019600..b8aa17803e9 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   passthru.mozillaPlugin = "/lib/mozilla/plugins";
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A browser plugin to manage Swedish BankID:s";
     longDescription = ''
       FriBID is an open source software for the Swedish e-id system
@@ -30,8 +30,8 @@ stdenv.mkDerivation rec {
       support.
     '';
     homepage = http://fribid.se;
-    license = [ "GPLv2" "MPLv1" ];
-    maintainers = [ stdenv.lib.maintainers.edwtjo ];
-    platforms = with stdenv.lib.platforms; linux;
+    license = with licenses; [ gpl2 mpl10 ];
+    maintainers = [ maintainers.edwtjo ];
+    platforms = with platforms; linux;
   };
 }
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/gecko-mediaplayer/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/gecko-mediaplayer/default.nix
index 05e3a8bf613..ba40925e1d1 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/gecko-mediaplayer/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/gecko-mediaplayer/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, glib, dbus, dbus_glib, browser, x11
+{ stdenv, fetchurl, pkgconfig, glib, dbus, dbus_glib, browser, xlibsWrapper
 , GConf, gnome_mplayer, mplayer, gmtk
 }:
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "913fd39e70c564cb210c2544a88869f9d1a448184421f000b14b2bc5ba718b49";
   };
 
-  buildInputs = [ pkgconfig glib dbus dbus_glib browser x11 GConf browser gmtk ];
+  buildInputs = [ pkgconfig glib dbus dbus_glib browser xlibsWrapper GConf browser gmtk ];
 
   # !!! fix this
   preBuild =
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix
index bdccb932e1c..6fd953636a8 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, rpm, cpio, mesa, xorg, cairo
 , libpng, gtk, glib, gdk_pixbuf, fontconfig, freetype, curl
-, dbus_glib, alsaLib, pulseaudio, udev, pango
+, dbus_glib, alsaLib, libpulseaudio, udev, pango
 }:
 
 with stdenv.lib;
@@ -34,7 +34,7 @@ let
       xorg.libXrandr
       stdenv.cc.cc
       alsaLib
-      pulseaudio
+      libpulseaudio
       dbus_glib
       udev
       curl
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/mozplugger/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/mozplugger/default.nix
index 37d5cbe039f..17012850a31 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/mozplugger/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/mozplugger/default.nix
@@ -1,36 +1,30 @@
-a :  
-let 
-  fetchurl = a.fetchurl;
+{ stdenv, fetchurl, firefox, libX11, xproto }:
+
+stdenv.mkDerivation rec {
+  name = "mozplugger-${version}";
+  version = "2.1.6";
 
-  version = a.lib.attrByPath ["version"] "1.12.0" a; 
-  buildInputs = with a; [
-    firefox libX11 xproto
-  ];
-in
-rec {
   src = fetchurl {
     url = "http://mozplugger.mozdev.org/files/mozplugger-${version}.tar.gz";
-    sha256 = "1vpggfmbv4h3srk80rgidd020i03hrkpb7cfxkwagkcd0zcal4hk";
+    sha256 = "1vszkq4kdbaxsrqr2xn9rq6ipza9fngdri79gvjqk3bvsdmg0k19";
   };
 
-  inherit buildInputs;
-  configureFlags = [];
-  makeFlags = ["linux" "prefix=" "root=$out"];
+  buildInputs = [ firefox libX11 xproto ];
 
-  preBuild = a.fullDepEntry(''
-    sed -e s@/usr/@"$out/"@g -i mozplugger.c
-  '') ["doUnpack" "minInit"];
+  installPhase = ''
+    mkdir -p "$out/etc" "$out/bin" "$out/lib/mozilla/plugins" "$out/share/man/man7"
+    cp mozpluggerrc "$out/etc"
+    cp mozplugger-{helper,controller,linker,update} "$out/bin"
+    cp mozplugger.so "$out/lib/mozilla/plugins"
+    cp mozplugger.7 "$out/share/man/man7"
 
-  postInstall = a.fullDepEntry(''
-    mkdir -p $out/share/${name}/plugin
-    ln -s $out/lib/mozilla/plugins/mozplugger.so $out/share/${name}/plugin
-  '') ["doMakeInstall" "minInit" "defEnsureDir"];
+    mkdir -p "$out/share/${name}/plugin"
+    ln -s "$out/lib/mozilla/plugins/mozplugger.so" "$out/share/${name}/plugin"
+  '';
 
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["preBuild" "doMakeInstall" "postInstall"];
-      
-  name = "mozplugger-" + version;
   meta = {
     description = "Mozilla plugin for launching external program for handling in-page objects";
+    homepage = http://mozplugger.mozdev.org/;
+    license = stdenv.lib.licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/mplayerplug-in/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/mplayerplug-in/default.nix
index 105e5904715..07e152e91db 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/mplayerplug-in/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/mplayerplug-in/default.nix
@@ -28,9 +28,9 @@ stdenv.mkDerivation rec {
     mozillaPlugin = "/lib/mozilla/plugins";
   };
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A browser plugin that uses mplayer to play digital media from websites";
     homepage = http://mplayerplug-in.sourceforge.net/;
-    license = [ "GPLv2+" "LGPLv2+" "MPLv1+" ];
+    license = with licenses; [ gpl2Plus lgpl2Plus "MPLv1+" ];
   };
 }
diff --git a/pkgs/applications/networking/browsers/netsurf/libCSS.nix b/pkgs/applications/networking/browsers/netsurf/libCSS.nix
index ede053aeca3..99192fda113 100644
--- a/pkgs/applications/networking/browsers/netsurf/libCSS.nix
+++ b/pkgs/applications/networking/browsers/netsurf/libCSS.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
   buildInputs = [pkgconfig libParserUtils libwapcaplet];
 
   meta = { 
-    description = "libCSS is a CSS parser and selection engine, written in C"; # used by netsurf
+    description = "A CSS parser and selection engine, written in C"; # used by netsurf
     homepage = http://www.netsurf-browser.org/projects/libcss/;
     license = stdenv.lib.licenses.mit;
     maintainers = [args.lib.maintainers.marcweber];
diff --git a/pkgs/applications/networking/browsers/netsurf/libParserUtils.nix b/pkgs/applications/networking/browsers/netsurf/libParserUtils.nix
index 32bede76e43..3c2b7693be7 100644
--- a/pkgs/applications/networking/browsers/netsurf/libParserUtils.nix
+++ b/pkgs/applications/networking/browsers/netsurf/libParserUtils.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
   buildInputs = [pkgconfig];
 
   meta = { 
-    description = "LibParserUtils is a library for building efficient parsers, written in C";
+    description = "A library for building efficient parsers, written in C";
     homepage = http://www.netsurf-browser.org/projects/libparserutils/;
     license = stdenv.lib.licenses.mit;
     maintainers = [args.lib.maintainers.marcweber];
diff --git a/pkgs/applications/networking/browsers/netsurf/libnsbmp.nix b/pkgs/applications/networking/browsers/netsurf/libnsbmp.nix
index d370002543c..083850bb545 100644
--- a/pkgs/applications/networking/browsers/netsurf/libnsbmp.nix
+++ b/pkgs/applications/networking/browsers/netsurf/libnsbmp.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
   buildInputs = [];
 
   meta = { 
-    description = "Libnsbmp is a decoding library for BMP and ICO image file formats"; # used by netsurf
+    description = "A decoding library for BMP and ICO image file formats"; # used by netsurf
     homepage = http://www.netsurf-browser.org/projects/libnsbmp/;
     license = stdenv.lib.licenses.mit;
     maintainers = [args.lib.maintainers.marcweber];
diff --git a/pkgs/applications/networking/browsers/netsurf/libnsgif.nix b/pkgs/applications/networking/browsers/netsurf/libnsgif.nix
index a4502d2354d..5e2acb4f313 100644
--- a/pkgs/applications/networking/browsers/netsurf/libnsgif.nix
+++ b/pkgs/applications/networking/browsers/netsurf/libnsgif.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
   buildInputs = [];
 
   meta = {
-    description = "Libnsbmp is a decoding library for gif image file formats"; # used by netsurf
+    description = "A decoding library for gif image file formats"; # used by netsurf
     homepage = http://www.netsurf-browser.org/projects/libnsgif/;
     license = stdenv.lib.licenses.mit;
     maintainers = [args.lib.maintainers.marcweber];
diff --git a/pkgs/applications/networking/browsers/netsurf/libwapcaplet.nix b/pkgs/applications/networking/browsers/netsurf/libwapcaplet.nix
index 5aa15d7b80d..a4cd09d1d86 100644
--- a/pkgs/applications/networking/browsers/netsurf/libwapcaplet.nix
+++ b/pkgs/applications/networking/browsers/netsurf/libwapcaplet.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
   buildInputs = [];
 
   meta = { 
-    description = "LibWapcaplet is a string internment library, written in C";
+    description = "A string internment library, written in C";
     homepage = http://www.netsurf-browser.org/projects/libwapcaplet/;
     license = stdenv.lib.licenses.mit;
     maintainers = [args.lib.maintainers.marcweber];
diff --git a/pkgs/applications/networking/browsers/netsurf/netsurf.nix b/pkgs/applications/networking/browsers/netsurf/netsurf.nix
index 2d2253f43ef..f7e90b61a94 100644
--- a/pkgs/applications/networking/browsers/netsurf/netsurf.nix
+++ b/pkgs/applications/networking/browsers/netsurf/netsurf.nix
@@ -23,12 +23,15 @@ stdenv.mkDerivation {
   buildPhase = "make PREFIX=$out";
   installPhase = "make PREFIX=$out install";
 
-  meta = { 
+  meta = with args.lib; {
     description = "free, open source web browser";
     homepage = http://www.netsurf-browser.org;
-    license = ["GPLv2" /* visual worrk : */ "MIT" ];
-    maintainers = [args.lib.maintainers.marcweber];
-    platforms = args.lib.platforms.linux;
+    license = with licenses; [
+      gpl2
+      mit /* visual work */
+    ];
+    maintainers = with maintainers; [ marcweber ];
+    platforms = platforms.linux;
   };
 
 }
diff --git a/pkgs/applications/networking/browsers/opera/default.nix b/pkgs/applications/networking/browsers/opera/default.nix
index ced16da5f7e..b29f2d1974c 100644
--- a/pkgs/applications/networking/browsers/opera/default.nix
+++ b/pkgs/applications/networking/browsers/opera/default.nix
@@ -6,7 +6,7 @@
 , kdeSupport ? false, qt4, kdelibs
 }:
 
-assert stdenv.isLinux && stdenv.cc.cc.isGNU or false && stdenv.cc.libc != null;
+assert stdenv.isLinux && stdenv.cc.isGNU && stdenv.cc.libc != null;
 
 let
   mirror = http://get.geo.opera.com/pub/opera;
diff --git a/pkgs/applications/networking/browsers/qutebrowser/default.nix b/pkgs/applications/networking/browsers/qutebrowser/default.nix
new file mode 100644
index 00000000000..7f2190ab82c
--- /dev/null
+++ b/pkgs/applications/networking/browsers/qutebrowser/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchgit, python, buildPythonPackage, qt5, pyqt5, jinja2, pygments, pyyaml, pypeg2,
+  gst_plugins_base, gst_plugins_good, gst_ffmpeg }:
+
+let version = "0.4.0"; in
+
+buildPythonPackage {
+  name = "qutebrowser-${version}";
+  namePrefix = "";
+
+  src = fetchgit {
+    url = "https://github.com/The-Compiler/qutebrowser.git";
+    rev = "e11fcda240eaad1b83b26c7d6424c427d2ad3b96";
+    sha256 = "0hpd6fibzcl0s6jrsj60rs12dyliwr05r8h9wvngh19a3pmg8q74";
+  };
+
+  # Needs tox
+  doCheck = false;
+
+  propagatedBuildInputs = [
+    python pyyaml pyqt5 jinja2 pygments pypeg2
+  ];
+
+  makeWrapperArgs = ''
+    --prefix GST_PLUGIN_PATH : "${stdenv.lib.makeSearchPath "lib/gstreamer-0.10"
+       [ gst_plugins_base gst_plugins_good gst_ffmpeg ]}"
+    --prefix QT_PLUGIN_PATH : "${qt5.multimedia}/lib/qt5/plugins"
+  '';
+
+  meta = {
+    homepage = https://github.com/The-Compiler/qutebrowser;
+    description = "Keyboard-focused browser with a minimal GUI";
+    license = stdenv.lib.licenses.gpl3Plus;
+    maintainers = [ stdenv.lib.maintainers.jagajaga ];
+  };
+}
diff --git a/pkgs/applications/networking/browsers/rekonq/default.nix b/pkgs/applications/networking/browsers/rekonq/default.nix
index ce36e26d6fc..df8ad1eb350 100644
--- a/pkgs/applications/networking/browsers/rekonq/default.nix
+++ b/pkgs/applications/networking/browsers/rekonq/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, kde4, gettext, pkgconfig, shared_desktop_ontologies, qca2, qoauth }:
+{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
+, kde4, shared_desktop_ontologies, qca2, qoauth }:
 
 assert builtins.compareVersions "4.8.3" kde4.release != 1; # https://bugs.kde.org/show_bug.cgi?id=306077
 
@@ -12,7 +13,9 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ kde4.kdelibs qca2 qoauth ];
 
-  nativeBuildInputs = [ gettext pkgconfig shared_desktop_ontologies ];
+  nativeBuildInputs = [
+    automoc4 cmake gettext perl pkgconfig shared_desktop_ontologies
+  ];
 
   meta = with stdenv.lib; {
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/browsers/vimb/default.nix b/pkgs/applications/networking/browsers/vimb/default.nix
index b30b2e260e3..84a2870b6d0 100644
--- a/pkgs/applications/networking/browsers/vimb/default.nix
+++ b/pkgs/applications/networking/browsers/vimb/default.nix
@@ -11,11 +11,6 @@ stdenv.mkDerivation rec {
     sha256 = "0h9m5qfs09lb0dz8a79yccmm3a5rv6z8gi5pkyfh8fqkgkh2940p";
   };
 
-  # Nixos default ca bundle
-  patchPhase = ''
-    sed -i s,/etc/ssl/certs/ca-certificates.crt,/etc/ssl/certs/ca-bundle.crt, src/config.def.h
-  '';
-
   buildInputs = [ makeWrapper gtk libsoup pkgconfig webkit gsettings_desktop_schemas ];
 
   makeFlags = [ "PREFIX=$(out)" ];
diff --git a/pkgs/applications/networking/browsers/vimprobable2/default.nix b/pkgs/applications/networking/browsers/vimprobable2/default.nix
index 8e1e00795d2..6f8eede9b3f 100644
--- a/pkgs/applications/networking/browsers/vimprobable2/default.nix
+++ b/pkgs/applications/networking/browsers/vimprobable2/default.nix
@@ -9,11 +9,6 @@ stdenv.mkDerivation rec {
     sha256 = "13jdximksh9r3cgd2f8vms0pbsn3x0gxvyqdqiw16xp5fmdx5kzr";
   };
 
-  # Nixos default ca bundle
-  patchPhase = ''
-    sed -i s,/etc/ssl/certs/ca-certificates.crt,/etc/ssl/certs/ca-bundle.crt, config.h
-  '';
-
   buildInputs = [ makeWrapper gtk libsoup libX11 perl pkgconfig webkit gsettings_desktop_schemas ];
 
   installPhase = ''
diff --git a/pkgs/applications/networking/browsers/w3m/cygwin.patch b/pkgs/applications/networking/browsers/w3m/cygwin.patch
new file mode 100644
index 00000000000..767cc289b5f
--- /dev/null
+++ b/pkgs/applications/networking/browsers/w3m/cygwin.patch
@@ -0,0 +1,1710 @@
+diff -ur w3m-0.5.3/config.guess new/w3m-0.5.3/config.guess
+--- w3m-0.5.3/config.guess	2004-08-04 13:32:27.000000000 -0400
++++ w3m-0.5.3/config.guess	2013-04-28 18:43:59.480227700 -0400
+@@ -1,13 +1,14 @@
+ #! /bin/sh
+ # Attempt to guess a canonical system name.
+ #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+-#   2000, 2001, 2002, 2003 Free Software Foundation, Inc.
++#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
++#   2011, 2012, 2013 Free Software Foundation, Inc.
+ 
+-timestamp='2004-03-12'
++timestamp='2012-12-29'
+ 
+ # This file 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
++# the Free Software Foundation; either version 3 of the License, or
+ # (at your option) any later version.
+ #
+ # This program is distributed in the hope that it will be useful, but
+@@ -16,24 +17,22 @@
+ # General Public License for more details.
+ #
+ # You should have received a copy of the GNU General Public License
+-# along with this program; if not, write to the Free Software
+-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
++# along with this program; if not, see <http://www.gnu.org/licenses/>.
+ #
+ # As a special exception to the GNU General Public License, if you
+ # distribute this file as part of a program that contains a
+ # configuration script generated by Autoconf, you may include it under
+-# the same distribution terms that you use for the rest of that program.
+-
+-# Originally written by Per Bothner <per@bothner.com>.
+-# Please send patches to <config-patches@gnu.org>.  Submit a context
+-# diff and a properly formatted ChangeLog entry.
++# the same distribution terms that you use for the rest of that
++# program.  This Exception is an additional permission under section 7
++# of the GNU General Public License, version 3 ("GPLv3").
++#
++# Originally written by Per Bothner. 
+ #
+-# This script attempts to guess a canonical system name similar to
+-# config.sub.  If it succeeds, it prints the system name on stdout, and
+-# exits with 0.  Otherwise, it exits with 1.
++# You can get the latest version of this script from:
++# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+ #
+-# The plan is that this can be called by configure scripts if you
+-# don't specify an explicit build system type.
++# Please send patches with a ChangeLog entry to config-patches@gnu.org.
++
+ 
+ me=`echo "$0" | sed -e 's,.*/,,'`
+ 
+@@ -53,8 +52,9 @@
+ GNU config.guess ($timestamp)
+ 
+ Originally written by Per Bothner.
+-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+-Free Software Foundation, Inc.
++Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
++2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
++2012, 2013 Free Software Foundation, Inc.
+ 
+ This is free software; see the source for copying conditions.  There is NO
+ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+@@ -66,11 +66,11 @@
+ while test $# -gt 0 ; do
+   case $1 in
+     --time-stamp | --time* | -t )
+-       echo "$timestamp" ; exit 0 ;;
++       echo "$timestamp" ; exit ;;
+     --version | -v )
+-       echo "$version" ; exit 0 ;;
++       echo "$version" ; exit ;;
+     --help | --h* | -h )
+-       echo "$usage"; exit 0 ;;
++       echo "$usage"; exit ;;
+     -- )     # Stop option processing
+        shift; break ;;
+     - )	# Use stdin as input.
+@@ -104,7 +104,7 @@
+ trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
+ trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
+ : ${TMPDIR=/tmp} ;
+- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
++ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+  { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
+  { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+  { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
+@@ -123,7 +123,7 @@
+ 	;;
+  ,,*)   CC_FOR_BUILD=$CC ;;
+  ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
+-esac ;'
++esac ; set_cc_for_build= ;'
+ 
+ # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
+ # (ghazi@noc.rutgers.edu 1994-08-24)
+@@ -141,7 +141,7 @@
+ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+     *:NetBSD:*:*)
+ 	# NetBSD (nbsd) targets should (where applicable) match one or
+-	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
++	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
+ 	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
+ 	# switched to ELF, *-*-netbsd* would select the old
+ 	# object file format.  This provides both forward
+@@ -158,6 +158,7 @@
+ 	    arm*) machine=arm-unknown ;;
+ 	    sh3el) machine=shl-unknown ;;
+ 	    sh3eb) machine=sh-unknown ;;
++	    sh5el) machine=sh5le-unknown ;;
+ 	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
+ 	esac
+ 	# The Operating System including object format, if it has switched
+@@ -166,7 +167,7 @@
+ 	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
+ 		eval $set_cc_for_build
+ 		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+-			| grep __ELF__ >/dev/null
++			| grep -q __ELF__
+ 		then
+ 		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+ 		    # Return netbsd for either.  FIX?
+@@ -176,7 +177,7 @@
+ 		fi
+ 		;;
+ 	    *)
+-	        os=netbsd
++		os=netbsd
+ 		;;
+ 	esac
+ 	# The OS release
+@@ -196,71 +197,34 @@
+ 	# contains redundant information, the shorter form:
+ 	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+ 	echo "${machine}-${os}${release}"
+-	exit 0 ;;
+-    amd64:OpenBSD:*:*)
+-	echo x86_64-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    amiga:OpenBSD:*:*)
+-	echo m68k-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    arc:OpenBSD:*:*)
+-	echo mipsel-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    cats:OpenBSD:*:*)
+-	echo arm-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    hp300:OpenBSD:*:*)
+-	echo m68k-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    mac68k:OpenBSD:*:*)
+-	echo m68k-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    macppc:OpenBSD:*:*)
+-	echo powerpc-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    mvme68k:OpenBSD:*:*)
+-	echo m68k-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    mvme88k:OpenBSD:*:*)
+-	echo m88k-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    mvmeppc:OpenBSD:*:*)
+-	echo powerpc-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    pegasos:OpenBSD:*:*)
+-	echo powerpc-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    pmax:OpenBSD:*:*)
+-	echo mipsel-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    sgi:OpenBSD:*:*)
+-	echo mipseb-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    sun3:OpenBSD:*:*)
+-	echo m68k-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
+-    wgrisc:OpenBSD:*:*)
+-	echo mipsel-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
++    *:Bitrig:*:*)
++	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
++	echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
++	exit ;;
+     *:OpenBSD:*:*)
+-	echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
+-	exit 0 ;;
++	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
++	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
++	exit ;;
+     *:ekkoBSD:*:*)
+ 	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
++    *:SolidBSD:*:*)
++	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
++	exit ;;
+     macppc:MirBSD:*:*)
+-	echo powerppc-unknown-mirbsd${UNAME_RELEASE}
+-	exit 0 ;;
++	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
++	exit ;;
+     *:MirBSD:*:*)
+ 	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     alpha:OSF1:*:*)
+ 	case $UNAME_RELEASE in
+ 	*4.0)
+ 		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
+ 		;;
+ 	*5.*)
+-	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
++		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+ 		;;
+ 	esac
+ 	# According to Compaq, /usr/sbin/psrinfo has been available on
+@@ -306,40 +270,46 @@
+ 	# A Xn.n version is an unreleased experimental baselevel.
+ 	# 1.2 uses "1.2" for uname -r.
+ 	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+-	exit 0 ;;
+-    Alpha*:OpenVMS:*:*)
+-	echo alpha-hp-vms
+-	exit 0 ;;
++	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
++	exitcode=$?
++	trap '' 0
++	exit $exitcode ;;
+     Alpha\ *:Windows_NT*:*)
+ 	# How do we know it's Interix rather than the generic POSIX subsystem?
+ 	# Should we change UNAME_MACHINE based on the output of uname instead
+ 	# of the specific Alpha model?
+ 	echo alpha-pc-interix
+-	exit 0 ;;
++	exit ;;
+     21064:Windows_NT:50:3)
+ 	echo alpha-dec-winnt3.5
+-	exit 0 ;;
++	exit ;;
+     Amiga*:UNIX_System_V:4.0:*)
+ 	echo m68k-unknown-sysv4
+-	exit 0;;
++	exit ;;
+     *:[Aa]miga[Oo][Ss]:*:*)
+ 	echo ${UNAME_MACHINE}-unknown-amigaos
+-	exit 0 ;;
++	exit ;;
+     *:[Mm]orph[Oo][Ss]:*:*)
+ 	echo ${UNAME_MACHINE}-unknown-morphos
+-	exit 0 ;;
++	exit ;;
+     *:OS/390:*:*)
+ 	echo i370-ibm-openedition
+-	exit 0 ;;
++	exit ;;
++    *:z/VM:*:*)
++	echo s390-ibm-zvmoe
++	exit ;;
+     *:OS400:*:*)
+-        echo powerpc-ibm-os400
+-	exit 0 ;;
++	echo powerpc-ibm-os400
++	exit ;;
+     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
+ 	echo arm-acorn-riscix${UNAME_RELEASE}
+-	exit 0;;
++	exit ;;
++    arm*:riscos:*:*|arm*:RISCOS:*:*)
++	echo arm-unknown-riscos
++	exit ;;
+     SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
+ 	echo hppa1.1-hitachi-hiuxmpp
+-	exit 0;;
++	exit ;;
+     Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
+ 	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
+ 	if test "`(/bin/universe) 2>/dev/null`" = att ; then
+@@ -347,32 +317,51 @@
+ 	else
+ 		echo pyramid-pyramid-bsd
+ 	fi
+-	exit 0 ;;
++	exit ;;
+     NILE*:*:*:dcosx)
+ 	echo pyramid-pyramid-svr4
+-	exit 0 ;;
++	exit ;;
+     DRS?6000:unix:4.0:6*)
+ 	echo sparc-icl-nx6
+-	exit 0 ;;
+-    DRS?6000:UNIX_SV:4.2*:7*)
++	exit ;;
++    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
+ 	case `/usr/bin/uname -p` in
+-	    sparc) echo sparc-icl-nx7 && exit 0 ;;
++	    sparc) echo sparc-icl-nx7; exit ;;
+ 	esac ;;
++    s390x:SunOS:*:*)
++	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
++	exit ;;
+     sun4H:SunOS:5.*:*)
+ 	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+-	exit 0 ;;
++	exit ;;
+     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
+ 	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+-	exit 0 ;;
+-    i86pc:SunOS:5.*:*)
+-	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+-	exit 0 ;;
++	exit ;;
++    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
++	echo i386-pc-auroraux${UNAME_RELEASE}
++	exit ;;
++    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
++	eval $set_cc_for_build
++	SUN_ARCH="i386"
++	# If there is a compiler, see if it is configured for 64-bit objects.
++	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
++	# This test works for both compilers.
++	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
++	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
++		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
++		grep IS_64BIT_ARCH >/dev/null
++	    then
++		SUN_ARCH="x86_64"
++	    fi
++	fi
++	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
++	exit ;;
+     sun4*:SunOS:6*:*)
+ 	# According to config.sub, this is the proper way to canonicalize
+ 	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
+ 	# it's likely to be more like Solaris than SunOS4.
+ 	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+-	exit 0 ;;
++	exit ;;
+     sun4*:SunOS:*:*)
+ 	case "`/usr/bin/arch -k`" in
+ 	    Series*|S4*)
+@@ -381,10 +370,10 @@
+ 	esac
+ 	# Japanese Language versions have a version number like `4.1.3-JL'.
+ 	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
+-	exit 0 ;;
++	exit ;;
+     sun3*:SunOS:*:*)
+ 	echo m68k-sun-sunos${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     sun*:*:4.2BSD:*)
+ 	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
+ 	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
+@@ -396,10 +385,10 @@
+ 		echo sparc-sun-sunos${UNAME_RELEASE}
+ 		;;
+ 	esac
+-	exit 0 ;;
++	exit ;;
+     aushp:SunOS:*:*)
+ 	echo sparc-auspex-sunos${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     # The situation for MiNT is a little confusing.  The machine name
+     # can be virtually everything (everything which is not
+     # "atarist" or "atariste" at least should have a processor
+@@ -409,41 +398,41 @@
+     # MiNT.  But MiNT is downward compatible to TOS, so this should
+     # be no problem.
+     atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
+-        echo m68k-atari-mint${UNAME_RELEASE}
+-	exit 0 ;;
++	echo m68k-atari-mint${UNAME_RELEASE}
++	exit ;;
+     atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+ 	echo m68k-atari-mint${UNAME_RELEASE}
+-        exit 0 ;;
++	exit ;;
+     *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+-        echo m68k-atari-mint${UNAME_RELEASE}
+-	exit 0 ;;
++	echo m68k-atari-mint${UNAME_RELEASE}
++	exit ;;
+     milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+-        echo m68k-milan-mint${UNAME_RELEASE}
+-        exit 0 ;;
++	echo m68k-milan-mint${UNAME_RELEASE}
++	exit ;;
+     hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+-        echo m68k-hades-mint${UNAME_RELEASE}
+-        exit 0 ;;
++	echo m68k-hades-mint${UNAME_RELEASE}
++	exit ;;
+     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+-        echo m68k-unknown-mint${UNAME_RELEASE}
+-        exit 0 ;;
++	echo m68k-unknown-mint${UNAME_RELEASE}
++	exit ;;
+     m68k:machten:*:*)
+ 	echo m68k-apple-machten${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     powerpc:machten:*:*)
+ 	echo powerpc-apple-machten${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     RISC*:Mach:*:*)
+ 	echo mips-dec-mach_bsd4.3
+-	exit 0 ;;
++	exit ;;
+     RISC*:ULTRIX:*:*)
+ 	echo mips-dec-ultrix${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     VAX*:ULTRIX*:*:*)
+ 	echo vax-dec-ultrix${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     2020:CLIX:*:* | 2430:CLIX:*:*)
+ 	echo clipper-intergraph-clix${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     mips:*:*:UMIPS | mips:*:*:RISCos)
+ 	eval $set_cc_for_build
+ 	sed 's/^	//' << EOF >$dummy.c
+@@ -467,35 +456,36 @@
+ 	  exit (-1);
+ 	}
+ EOF
+-	$CC_FOR_BUILD -o $dummy $dummy.c \
+-	  && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
+-	  && exit 0
++	$CC_FOR_BUILD -o $dummy $dummy.c &&
++	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
++	  SYSTEM_NAME=`$dummy $dummyarg` &&
++	    { echo "$SYSTEM_NAME"; exit; }
+ 	echo mips-mips-riscos${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     Motorola:PowerMAX_OS:*:*)
+ 	echo powerpc-motorola-powermax
+-	exit 0 ;;
++	exit ;;
+     Motorola:*:4.3:PL8-*)
+ 	echo powerpc-harris-powermax
+-	exit 0 ;;
++	exit ;;
+     Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
+ 	echo powerpc-harris-powermax
+-	exit 0 ;;
++	exit ;;
+     Night_Hawk:Power_UNIX:*:*)
+ 	echo powerpc-harris-powerunix
+-	exit 0 ;;
++	exit ;;
+     m88k:CX/UX:7*:*)
+ 	echo m88k-harris-cxux7
+-	exit 0 ;;
++	exit ;;
+     m88k:*:4*:R4*)
+ 	echo m88k-motorola-sysv4
+-	exit 0 ;;
++	exit ;;
+     m88k:*:3*:R3*)
+ 	echo m88k-motorola-sysv3
+-	exit 0 ;;
++	exit ;;
+     AViiON:dgux:*:*)
+-        # DG/UX returns AViiON for all architectures
+-        UNAME_PROCESSOR=`/usr/bin/uname -p`
++	# DG/UX returns AViiON for all architectures
++	UNAME_PROCESSOR=`/usr/bin/uname -p`
+ 	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+ 	then
+ 	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
+@@ -508,29 +498,29 @@
+ 	else
+ 	    echo i586-dg-dgux${UNAME_RELEASE}
+ 	fi
+- 	exit 0 ;;
++	exit ;;
+     M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
+ 	echo m88k-dolphin-sysv3
+-	exit 0 ;;
++	exit ;;
+     M88*:*:R3*:*)
+ 	# Delta 88k system running SVR3
+ 	echo m88k-motorola-sysv3
+-	exit 0 ;;
++	exit ;;
+     XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
+ 	echo m88k-tektronix-sysv3
+-	exit 0 ;;
++	exit ;;
+     Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
+ 	echo m68k-tektronix-bsd
+-	exit 0 ;;
++	exit ;;
+     *:IRIX*:*:*)
+ 	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
+-	exit 0 ;;
++	exit ;;
+     ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
+-	echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
+-	exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
++	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
++	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
+     i*86:AIX:*:*)
+ 	echo i386-ibm-aix
+-	exit 0 ;;
++	exit ;;
+     ia64:AIX:*:*)
+ 	if [ -x /usr/bin/oslevel ] ; then
+ 		IBM_REV=`/usr/bin/oslevel`
+@@ -538,7 +528,7 @@
+ 		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ 	fi
+ 	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+-	exit 0 ;;
++	exit ;;
+     *:AIX:2:3)
+ 	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+ 		eval $set_cc_for_build
+@@ -553,15 +543,19 @@
+ 			exit(0);
+ 			}
+ EOF
+-		$CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
+-		echo rs6000-ibm-aix3.2.5
++		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
++		then
++			echo "$SYSTEM_NAME"
++		else
++			echo rs6000-ibm-aix3.2.5
++		fi
+ 	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
+ 		echo rs6000-ibm-aix3.2.4
+ 	else
+ 		echo rs6000-ibm-aix3.2
+ 	fi
+-	exit 0 ;;
+-    *:AIX:*:[45])
++	exit ;;
++    *:AIX:*:[4567])
+ 	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
+ 	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
+ 		IBM_ARCH=rs6000
+@@ -574,28 +568,28 @@
+ 		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ 	fi
+ 	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
+-	exit 0 ;;
++	exit ;;
+     *:AIX:*:*)
+ 	echo rs6000-ibm-aix
+-	exit 0 ;;
++	exit ;;
+     ibmrt:4.4BSD:*|romp-ibm:BSD:*)
+ 	echo romp-ibm-bsd4.4
+-	exit 0 ;;
++	exit ;;
+     ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
+ 	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
+-	exit 0 ;;                           # report: romp-ibm BSD 4.3
++	exit ;;                             # report: romp-ibm BSD 4.3
+     *:BOSX:*:*)
+ 	echo rs6000-bull-bosx
+-	exit 0 ;;
++	exit ;;
+     DPX/2?00:B.O.S.:*:*)
+ 	echo m68k-bull-sysv3
+-	exit 0 ;;
++	exit ;;
+     9000/[34]??:4.3bsd:1.*:*)
+ 	echo m68k-hp-bsd
+-	exit 0 ;;
++	exit ;;
+     hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
+ 	echo m68k-hp-bsd4.4
+-	exit 0 ;;
++	exit ;;
+     9000/[34678]??:HP-UX:*:*)
+ 	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+ 	case "${UNAME_MACHINE}" in
+@@ -604,52 +598,52 @@
+ 	    9000/[678][0-9][0-9])
+ 		if [ -x /usr/bin/getconf ]; then
+ 		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
+-                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+-                    case "${sc_cpu_version}" in
+-                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+-                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+-                      532)                      # CPU_PA_RISC2_0
+-                        case "${sc_kernel_bits}" in
+-                          32) HP_ARCH="hppa2.0n" ;;
+-                          64) HP_ARCH="hppa2.0w" ;;
++		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
++		    case "${sc_cpu_version}" in
++		      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
++		      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
++		      532)                      # CPU_PA_RISC2_0
++			case "${sc_kernel_bits}" in
++			  32) HP_ARCH="hppa2.0n" ;;
++			  64) HP_ARCH="hppa2.0w" ;;
+ 			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
+-                        esac ;;
+-                    esac
++			esac ;;
++		    esac
+ 		fi
+ 		if [ "${HP_ARCH}" = "" ]; then
+ 		    eval $set_cc_for_build
+-		    sed 's/^              //' << EOF >$dummy.c
++		    sed 's/^		//' << EOF >$dummy.c
+ 
+-              #define _HPUX_SOURCE
+-              #include <stdlib.h>
+-              #include <unistd.h>
+-
+-              int main ()
+-              {
+-              #if defined(_SC_KERNEL_BITS)
+-                  long bits = sysconf(_SC_KERNEL_BITS);
+-              #endif
+-                  long cpu  = sysconf (_SC_CPU_VERSION);
+-
+-                  switch (cpu)
+-              	{
+-              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+-              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+-              	case CPU_PA_RISC2_0:
+-              #if defined(_SC_KERNEL_BITS)
+-              	    switch (bits)
+-              		{
+-              		case 64: puts ("hppa2.0w"); break;
+-              		case 32: puts ("hppa2.0n"); break;
+-              		default: puts ("hppa2.0"); break;
+-              		} break;
+-              #else  /* !defined(_SC_KERNEL_BITS) */
+-              	    puts ("hppa2.0"); break;
+-              #endif
+-              	default: puts ("hppa1.0"); break;
+-              	}
+-                  exit (0);
+-              }
++		#define _HPUX_SOURCE
++		#include <stdlib.h>
++		#include <unistd.h>
++
++		int main ()
++		{
++		#if defined(_SC_KERNEL_BITS)
++		    long bits = sysconf(_SC_KERNEL_BITS);
++		#endif
++		    long cpu  = sysconf (_SC_CPU_VERSION);
++
++		    switch (cpu)
++			{
++			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
++			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
++			case CPU_PA_RISC2_0:
++		#if defined(_SC_KERNEL_BITS)
++			    switch (bits)
++				{
++				case 64: puts ("hppa2.0w"); break;
++				case 32: puts ("hppa2.0n"); break;
++				default: puts ("hppa2.0"); break;
++				} break;
++		#else  /* !defined(_SC_KERNEL_BITS) */
++			    puts ("hppa2.0"); break;
++		#endif
++			default: puts ("hppa1.0"); break;
++			}
++		    exit (0);
++		}
+ EOF
+ 		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
+ 		    test -z "$HP_ARCH" && HP_ARCH=hppa
+@@ -657,9 +651,19 @@
+ 	esac
+ 	if [ ${HP_ARCH} = "hppa2.0w" ]
+ 	then
+-	    # avoid double evaluation of $set_cc_for_build
+-	    test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
+-	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
++	    eval $set_cc_for_build
++
++	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
++	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
++	    # generating 64-bit code.  GNU and HP use different nomenclature:
++	    #
++	    # $ CC_FOR_BUILD=cc ./config.guess
++	    # => hppa2.0w-hp-hpux11.23
++	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
++	    # => hppa64-hp-hpux11.23
++
++	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
++		grep -q __LP64__
+ 	    then
+ 		HP_ARCH="hppa2.0w"
+ 	    else
+@@ -667,11 +671,11 @@
+ 	    fi
+ 	fi
+ 	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
+-	exit 0 ;;
++	exit ;;
+     ia64:HP-UX:*:*)
+ 	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+ 	echo ia64-hp-hpux${HPUX_REV}
+-	exit 0 ;;
++	exit ;;
+     3050*:HI-UX:*:*)
+ 	eval $set_cc_for_build
+ 	sed 's/^	//' << EOF >$dummy.c
+@@ -699,224 +703,269 @@
+ 	  exit (0);
+ 	}
+ EOF
+-	$CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
++	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
++		{ echo "$SYSTEM_NAME"; exit; }
+ 	echo unknown-hitachi-hiuxwe2
+-	exit 0 ;;
++	exit ;;
+     9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
+ 	echo hppa1.1-hp-bsd
+-	exit 0 ;;
++	exit ;;
+     9000/8??:4.3bsd:*:*)
+ 	echo hppa1.0-hp-bsd
+-	exit 0 ;;
++	exit ;;
+     *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
+ 	echo hppa1.0-hp-mpeix
+-	exit 0 ;;
++	exit ;;
+     hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
+ 	echo hppa1.1-hp-osf
+-	exit 0 ;;
++	exit ;;
+     hp8??:OSF1:*:*)
+ 	echo hppa1.0-hp-osf
+-	exit 0 ;;
++	exit ;;
+     i*86:OSF1:*:*)
+ 	if [ -x /usr/sbin/sysversion ] ; then
+ 	    echo ${UNAME_MACHINE}-unknown-osf1mk
+ 	else
+ 	    echo ${UNAME_MACHINE}-unknown-osf1
+ 	fi
+-	exit 0 ;;
++	exit ;;
+     parisc*:Lites*:*:*)
+ 	echo hppa1.1-hp-lites
+-	exit 0 ;;
++	exit ;;
+     C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
+ 	echo c1-convex-bsd
+-        exit 0 ;;
++	exit ;;
+     C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
+ 	if getsysinfo -f scalar_acc
+ 	then echo c32-convex-bsd
+ 	else echo c2-convex-bsd
+ 	fi
+-        exit 0 ;;
++	exit ;;
+     C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
+ 	echo c34-convex-bsd
+-        exit 0 ;;
++	exit ;;
+     C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
+ 	echo c38-convex-bsd
+-        exit 0 ;;
++	exit ;;
+     C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
+ 	echo c4-convex-bsd
+-        exit 0 ;;
++	exit ;;
+     CRAY*Y-MP:*:*:*)
+ 	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+-	exit 0 ;;
++	exit ;;
+     CRAY*[A-Z]90:*:*:*)
+ 	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
+ 	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
+ 	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+ 	      -e 's/\.[^.]*$/.X/'
+-	exit 0 ;;
++	exit ;;
+     CRAY*TS:*:*:*)
+ 	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+-	exit 0 ;;
++	exit ;;
+     CRAY*T3E:*:*:*)
+ 	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+-	exit 0 ;;
++	exit ;;
+     CRAY*SV1:*:*:*)
+ 	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+-	exit 0 ;;
++	exit ;;
+     *:UNICOS/mp:*:*)
+-	echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+-	exit 0 ;;
++	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
++	exit ;;
+     F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
+ 	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+-        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+-        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+-        exit 0 ;;
++	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
++	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
++	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
++	exit ;;
+     5000:UNIX_System_V:4.*:*)
+-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+-        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+-        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+-	exit 0 ;;
++	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
++	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
++	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
++	exit ;;
+     i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+ 	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     sparc*:BSD/OS:*:*)
+ 	echo sparc-unknown-bsdi${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     *:BSD/OS:*:*)
+ 	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     *:FreeBSD:*:*)
+-	# Determine whether the default compiler uses glibc.
+-	eval $set_cc_for_build
+-	sed 's/^	//' << EOF >$dummy.c
+-	#include <features.h>
+-	#if __GLIBC__ >= 2
+-	LIBC=gnu
+-	#else
+-	LIBC=
+-	#endif
+-EOF
+-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+-	# GNU/KFreeBSD systems have a "k" prefix to indicate we are using
+-	# FreeBSD's kernel, but not the complete OS.
+-	case ${LIBC} in gnu) kernel_only='k' ;; esac
+-	echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
+-	exit 0 ;;
++	UNAME_PROCESSOR=`/usr/bin/uname -p`
++	case ${UNAME_PROCESSOR} in
++	    amd64)
++		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
++	    *)
++		echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
++	esac
++	exit ;;
+     i*:CYGWIN*:*)
+ 	echo ${UNAME_MACHINE}-pc-cygwin
+-	exit 0 ;;
+-    i*:MINGW*:*)
++	exit ;;
++    *:MINGW64*:*)
++	echo ${UNAME_MACHINE}-pc-mingw64
++	exit ;;
++    *:MINGW*:*)
+ 	echo ${UNAME_MACHINE}-pc-mingw32
+-	exit 0 ;;
++	exit ;;
++    i*:MSYS*:*)
++	echo ${UNAME_MACHINE}-pc-msys
++	exit ;;
++    i*:windows32*:*)
++	# uname -m includes "-pc" on this system.
++	echo ${UNAME_MACHINE}-mingw32
++	exit ;;
+     i*:PW*:*)
+ 	echo ${UNAME_MACHINE}-pc-pw32
+-	exit 0 ;;
+-    x86:Interix*:[34]*)
+-	echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
+-	exit 0 ;;
++	exit ;;
++    *:Interix*:*)
++	case ${UNAME_MACHINE} in
++	    x86)
++		echo i586-pc-interix${UNAME_RELEASE}
++		exit ;;
++	    authenticamd | genuineintel | EM64T)
++		echo x86_64-unknown-interix${UNAME_RELEASE}
++		exit ;;
++	    IA64)
++		echo ia64-unknown-interix${UNAME_RELEASE}
++		exit ;;
++	esac ;;
+     [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
+ 	echo i${UNAME_MACHINE}-pc-mks
+-	exit 0 ;;
++	exit ;;
++    8664:Windows_NT:*)
++	echo x86_64-pc-mks
++	exit ;;
+     i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
+ 	# How do we know it's Interix rather than the generic POSIX subsystem?
+ 	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
+ 	# UNAME_MACHINE based on the output of uname instead of i386?
+ 	echo i586-pc-interix
+-	exit 0 ;;
++	exit ;;
+     i*:UWIN*:*)
+ 	echo ${UNAME_MACHINE}-pc-uwin
+-	exit 0 ;;
++	exit ;;
++    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
++	echo x86_64-unknown-cygwin
++	exit ;;
+     p*:CYGWIN*:*)
+ 	echo powerpcle-unknown-cygwin
+-	exit 0 ;;
++	exit ;;
+     prep*:SunOS:5.*:*)
+ 	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+-	exit 0 ;;
++	exit ;;
+     *:GNU:*:*)
+ 	# the GNU system
+ 	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+-	exit 0 ;;
++	exit ;;
+     *:GNU/*:*:*)
+ 	# other systems with GNU libc and userland
+ 	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+-	exit 0 ;;
++	exit ;;
+     i*86:Minix:*:*)
+ 	echo ${UNAME_MACHINE}-pc-minix
+-	exit 0 ;;
++	exit ;;
++    aarch64:Linux:*:*)
++	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	exit ;;
++    aarch64_be:Linux:*:*)
++	UNAME_MACHINE=aarch64_be
++	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	exit ;;
++    alpha:Linux:*:*)
++	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
++	  EV5)   UNAME_MACHINE=alphaev5 ;;
++	  EV56)  UNAME_MACHINE=alphaev56 ;;
++	  PCA56) UNAME_MACHINE=alphapca56 ;;
++	  PCA57) UNAME_MACHINE=alphapca56 ;;
++	  EV6)   UNAME_MACHINE=alphaev6 ;;
++	  EV67)  UNAME_MACHINE=alphaev67 ;;
++	  EV68*) UNAME_MACHINE=alphaev68 ;;
++	esac
++	objdump --private-headers /bin/sh | grep -q ld.so.1
++	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
++	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
++	exit ;;
+     arm*:Linux:*:*)
++	eval $set_cc_for_build
++	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
++	    | grep -q __ARM_EABI__
++	then
++	    echo ${UNAME_MACHINE}-unknown-linux-gnu
++	else
++	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
++		| grep -q __ARM_PCS_VFP
++	    then
++		echo ${UNAME_MACHINE}-unknown-linux-gnueabi
++	    else
++		echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
++	    fi
++	fi
++	exit ;;
++    avr32*:Linux:*:*)
+ 	echo ${UNAME_MACHINE}-unknown-linux-gnu
+-	exit 0 ;;
++	exit ;;
+     cris:Linux:*:*)
+-	echo cris-axis-linux-gnu
+-	exit 0 ;;
+-    ia64:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+-	exit 0 ;;
+-    m32r*:Linux:*:*)
++	echo ${UNAME_MACHINE}-axis-linux-gnu
++	exit ;;
++    crisv32:Linux:*:*)
++	echo ${UNAME_MACHINE}-axis-linux-gnu
++	exit ;;
++    frv:Linux:*:*)
+ 	echo ${UNAME_MACHINE}-unknown-linux-gnu
+-	exit 0 ;;
+-    m68*:Linux:*:*)
++	exit ;;
++    hexagon:Linux:*:*)
+ 	echo ${UNAME_MACHINE}-unknown-linux-gnu
+-	exit 0 ;;
+-    mips:Linux:*:*)
++	exit ;;
++    i*86:Linux:*:*)
++	LIBC=gnu
+ 	eval $set_cc_for_build
+ 	sed 's/^	//' << EOF >$dummy.c
+-	#undef CPU
+-	#undef mips
+-	#undef mipsel
+-	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+-	CPU=mipsel
+-	#else
+-	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+-	CPU=mips
+-	#else
+-	CPU=
+-	#endif
++	#ifdef __dietlibc__
++	LIBC=dietlibc
+ 	#endif
+ EOF
+-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+-	test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
+-	;;
+-    mips64:Linux:*:*)
++	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
++	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
++	exit ;;
++    ia64:Linux:*:*)
++	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	exit ;;
++    m32r*:Linux:*:*)
++	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	exit ;;
++    m68*:Linux:*:*)
++	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	exit ;;
++    mips:Linux:*:* | mips64:Linux:*:*)
+ 	eval $set_cc_for_build
+ 	sed 's/^	//' << EOF >$dummy.c
+ 	#undef CPU
+-	#undef mips64
+-	#undef mips64el
++	#undef ${UNAME_MACHINE}
++	#undef ${UNAME_MACHINE}el
+ 	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+-	CPU=mips64el
++	CPU=${UNAME_MACHINE}el
+ 	#else
+ 	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+-	CPU=mips64
++	CPU=${UNAME_MACHINE}
+ 	#else
+ 	CPU=
+ 	#endif
+ 	#endif
+ EOF
+-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+-	test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
++	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
++	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+ 	;;
+-    ppc:Linux:*:*)
+-	echo powerpc-unknown-linux-gnu
+-	exit 0 ;;
+-    ppc64:Linux:*:*)
+-	echo powerpc64-unknown-linux-gnu
+-	exit 0 ;;
+-    alpha:Linux:*:*)
+-	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+-	  EV5)   UNAME_MACHINE=alphaev5 ;;
+-	  EV56)  UNAME_MACHINE=alphaev56 ;;
+-	  PCA56) UNAME_MACHINE=alphapca56 ;;
+-	  PCA57) UNAME_MACHINE=alphapca56 ;;
+-	  EV6)   UNAME_MACHINE=alphaev6 ;;
+-	  EV67)  UNAME_MACHINE=alphaev67 ;;
+-	  EV68*) UNAME_MACHINE=alphaev68 ;;
+-        esac
+-	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+-	exit 0 ;;
++    or32:Linux:*:*)
++	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	exit ;;
++    padre:Linux:*:*)
++	echo sparc-unknown-linux-gnu
++	exit ;;
++    parisc64:Linux:*:* | hppa64:Linux:*:*)
++	echo hppa64-unknown-linux-gnu
++	exit ;;
+     parisc:Linux:*:* | hppa:Linux:*:*)
+ 	# Look for CPU level
+ 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+@@ -924,115 +973,71 @@
+ 	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
+ 	  *)    echo hppa-unknown-linux-gnu ;;
+ 	esac
+-	exit 0 ;;
+-    parisc64:Linux:*:* | hppa64:Linux:*:*)
+-	echo hppa64-unknown-linux-gnu
+-	exit 0 ;;
++	exit ;;
++    ppc64:Linux:*:*)
++	echo powerpc64-unknown-linux-gnu
++	exit ;;
++    ppc:Linux:*:*)
++	echo powerpc-unknown-linux-gnu
++	exit ;;
+     s390:Linux:*:* | s390x:Linux:*:*)
+ 	echo ${UNAME_MACHINE}-ibm-linux
+-	exit 0 ;;
++	exit ;;
+     sh64*:Linux:*:*)
+-    	echo ${UNAME_MACHINE}-unknown-linux-gnu
+-	exit 0 ;;
++	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	exit ;;
+     sh*:Linux:*:*)
+ 	echo ${UNAME_MACHINE}-unknown-linux-gnu
+-	exit 0 ;;
++	exit ;;
+     sparc:Linux:*:* | sparc64:Linux:*:*)
+ 	echo ${UNAME_MACHINE}-unknown-linux-gnu
+-	exit 0 ;;
++	exit ;;
++    tile*:Linux:*:*)
++	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	exit ;;
++    vax:Linux:*:*)
++	echo ${UNAME_MACHINE}-dec-linux-gnu
++	exit ;;
+     x86_64:Linux:*:*)
+-	echo x86_64-unknown-linux-gnu
+-	exit 0 ;;
+-    i*86:Linux:*:*)
+-	# The BFD linker knows what the default object file format is, so
+-	# first see if it will tell us. cd to the root directory to prevent
+-	# problems with other programs or directories called `ld' in the path.
+-	# Set LC_ALL=C to ensure ld outputs messages in English.
+-	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
+-			 | sed -ne '/supported targets:/!d
+-				    s/[ 	][ 	]*/ /g
+-				    s/.*supported targets: *//
+-				    s/ .*//
+-				    p'`
+-        case "$ld_supported_targets" in
+-	  elf32-i386)
+-		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
+-		;;
+-	  a.out-i386-linux)
+-		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
+-		exit 0 ;;
+-	  coff-i386)
+-		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
+-		exit 0 ;;
+-	  "")
+-		# Either a pre-BFD a.out linker (linux-gnuoldld) or
+-		# one that does not give us useful --help.
+-		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
+-		exit 0 ;;
+-	esac
+-	# Determine whether the default compiler is a.out or elf
+-	eval $set_cc_for_build
+-	sed 's/^	//' << EOF >$dummy.c
+-	#include <features.h>
+-	#ifdef __ELF__
+-	# ifdef __GLIBC__
+-	#  if __GLIBC__ >= 2
+-	LIBC=gnu
+-	#  else
+-	LIBC=gnulibc1
+-	#  endif
+-	# else
+-	LIBC=gnulibc1
+-	# endif
+-	#else
+-	#ifdef __INTEL_COMPILER
+-	LIBC=gnu
+-	#else
+-	LIBC=gnuaout
+-	#endif
+-	#endif
+-	#ifdef __dietlibc__
+-	LIBC=dietlibc
+-	#endif
+-EOF
+-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+-	test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
+-	test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
+-	;;
++	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	exit ;;
++    xtensa*:Linux:*:*)
++	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	exit ;;
+     i*86:DYNIX/ptx:4*:*)
+ 	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+ 	# earlier versions are messed up and put the nodename in both
+ 	# sysname and nodename.
+ 	echo i386-sequent-sysv4
+-	exit 0 ;;
++	exit ;;
+     i*86:UNIX_SV:4.2MP:2.*)
+-        # Unixware is an offshoot of SVR4, but it has its own version
+-        # number series starting with 2...
+-        # I am not positive that other SVR4 systems won't match this,
++	# Unixware is an offshoot of SVR4, but it has its own version
++	# number series starting with 2...
++	# I am not positive that other SVR4 systems won't match this,
+ 	# I just have to hope.  -- rms.
+-        # Use sysv4.2uw... so that sysv4* matches it.
++	# Use sysv4.2uw... so that sysv4* matches it.
+ 	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+-	exit 0 ;;
++	exit ;;
+     i*86:OS/2:*:*)
+ 	# If we were able to find `uname', then EMX Unix compatibility
+ 	# is probably installed.
+ 	echo ${UNAME_MACHINE}-pc-os2-emx
+-	exit 0 ;;
++	exit ;;
+     i*86:XTS-300:*:STOP)
+ 	echo ${UNAME_MACHINE}-unknown-stop
+-	exit 0 ;;
++	exit ;;
+     i*86:atheos:*:*)
+ 	echo ${UNAME_MACHINE}-unknown-atheos
+-	exit 0 ;;
+-	i*86:syllable:*:*)
++	exit ;;
++    i*86:syllable:*:*)
+ 	echo ${UNAME_MACHINE}-pc-syllable
+-	exit 0 ;;
+-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
++	exit ;;
++    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
+ 	echo i386-unknown-lynxos${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     i*86:*DOS:*:*)
+ 	echo ${UNAME_MACHINE}-pc-msdosdjgpp
+-	exit 0 ;;
++	exit ;;
+     i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
+ 	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
+ 	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
+@@ -1040,15 +1045,16 @@
+ 	else
+ 		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+ 	fi
+-	exit 0 ;;
+-    i*86:*:5:[78]*)
++	exit ;;
++    i*86:*:5:[678]*)
++	# UnixWare 7.x, OpenUNIX and OpenServer 6.
+ 	case `/bin/uname -X | grep "^Machine"` in
+ 	    *486*)	     UNAME_MACHINE=i486 ;;
+ 	    *Pentium)	     UNAME_MACHINE=i586 ;;
+ 	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
+ 	esac
+ 	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+-	exit 0 ;;
++	exit ;;
+     i*86:*:3.2:*)
+ 	if test -f /usr/options/cb.name; then
+ 		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
+@@ -1066,73 +1072,86 @@
+ 	else
+ 		echo ${UNAME_MACHINE}-pc-sysv32
+ 	fi
+-	exit 0 ;;
++	exit ;;
+     pc:*:*:*)
+ 	# Left here for compatibility:
+-        # uname -m prints for DJGPP always 'pc', but it prints nothing about
+-        # the processor, so we play safe by assuming i386.
+-	echo i386-pc-msdosdjgpp
+-        exit 0 ;;
++	# uname -m prints for DJGPP always 'pc', but it prints nothing about
++	# the processor, so we play safe by assuming i586.
++	# Note: whatever this is, it MUST be the same as what config.sub
++	# prints for the "djgpp" host, or else GDB configury will decide that
++	# this is a cross-build.
++	echo i586-pc-msdosdjgpp
++	exit ;;
+     Intel:Mach:3*:*)
+ 	echo i386-pc-mach3
+-	exit 0 ;;
++	exit ;;
+     paragon:*:*:*)
+ 	echo i860-intel-osf1
+-	exit 0 ;;
++	exit ;;
+     i860:*:4.*:*) # i860-SVR4
+ 	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
+ 	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
+ 	else # Add other i860-SVR4 vendors below as they are discovered.
+ 	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
+ 	fi
+-	exit 0 ;;
++	exit ;;
+     mini*:CTIX:SYS*5:*)
+ 	# "miniframe"
+ 	echo m68010-convergent-sysv
+-	exit 0 ;;
++	exit ;;
+     mc68k:UNIX:SYSTEM5:3.51m)
+ 	echo m68k-convergent-sysv
+-	exit 0 ;;
++	exit ;;
+     M680?0:D-NIX:5.3:*)
+ 	echo m68k-diab-dnix
+-	exit 0 ;;
+-    M68*:*:R3V[567]*:*)
+-	test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
+-    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0)
++	exit ;;
++    M68*:*:R3V[5678]*:*)
++	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
++    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
+ 	OS_REL=''
+ 	test -r /etc/.relid \
+ 	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+ 	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+-	  && echo i486-ncr-sysv4.3${OS_REL} && exit 0
++	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+ 	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+-	  && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
++	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
+-        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+-          && echo i486-ncr-sysv4 && exit 0 ;;
++	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
++	  && { echo i486-ncr-sysv4; exit; } ;;
++    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
++	OS_REL='.3'
++	test -r /etc/.relid \
++	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
++	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
++	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
++	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
++	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
++	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
++	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+     m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
+ 	echo m68k-unknown-lynxos${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     mc68030:UNIX_System_V:4.*:*)
+ 	echo m68k-atari-sysv4
+-	exit 0 ;;
++	exit ;;
+     TSUNAMI:LynxOS:2.*:*)
+ 	echo sparc-unknown-lynxos${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     rs6000:LynxOS:2.*:*)
+ 	echo rs6000-unknown-lynxos${UNAME_RELEASE}
+-	exit 0 ;;
+-    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
++	exit ;;
++    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
+ 	echo powerpc-unknown-lynxos${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     SM[BE]S:UNIX_SV:*:*)
+ 	echo mips-dde-sysv${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     RM*:ReliantUNIX-*:*:*)
+ 	echo mips-sni-sysv4
+-	exit 0 ;;
++	exit ;;
+     RM*:SINIX-*:*:*)
+ 	echo mips-sni-sysv4
+-	exit 0 ;;
++	exit ;;
+     *:SINIX-*:*:*)
+ 	if uname -p 2>/dev/null >/dev/null ; then
+ 		UNAME_MACHINE=`(uname -p) 2>/dev/null`
+@@ -1140,68 +1159,97 @@
+ 	else
+ 		echo ns32k-sni-sysv
+ 	fi
+-	exit 0 ;;
+-    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+-                      # says <Richard.M.Bartel@ccMail.Census.GOV>
+-        echo i586-unisys-sysv4
+-        exit 0 ;;
++	exit ;;
++    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort
++			# says <Richard.M.Bartel@ccMail.Census.GOV>
++	echo i586-unisys-sysv4
++	exit ;;
+     *:UNIX_System_V:4*:FTX*)
+ 	# From Gerald Hewes <hewes@openmarket.com>.
+ 	# How about differentiating between stratus architectures? -djm
+ 	echo hppa1.1-stratus-sysv4
+-	exit 0 ;;
++	exit ;;
+     *:*:*:FTX*)
+ 	# From seanf@swdc.stratus.com.
+ 	echo i860-stratus-sysv4
+-	exit 0 ;;
++	exit ;;
++    i*86:VOS:*:*)
++	# From Paul.Green@stratus.com.
++	echo ${UNAME_MACHINE}-stratus-vos
++	exit ;;
+     *:VOS:*:*)
+ 	# From Paul.Green@stratus.com.
+ 	echo hppa1.1-stratus-vos
+-	exit 0 ;;
++	exit ;;
+     mc68*:A/UX:*:*)
+ 	echo m68k-apple-aux${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     news*:NEWS-OS:6*:*)
+ 	echo mips-sony-newsos6
+-	exit 0 ;;
++	exit ;;
+     R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
+ 	if [ -d /usr/nec ]; then
+-	        echo mips-nec-sysv${UNAME_RELEASE}
++		echo mips-nec-sysv${UNAME_RELEASE}
+ 	else
+-	        echo mips-unknown-sysv${UNAME_RELEASE}
++		echo mips-unknown-sysv${UNAME_RELEASE}
+ 	fi
+-        exit 0 ;;
++	exit ;;
+     BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
+ 	echo powerpc-be-beos
+-	exit 0 ;;
++	exit ;;
+     BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
+ 	echo powerpc-apple-beos
+-	exit 0 ;;
++	exit ;;
+     BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
+ 	echo i586-pc-beos
+-	exit 0 ;;
++	exit ;;
++    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
++	echo i586-pc-haiku
++	exit ;;
++    x86_64:Haiku:*:*)
++	echo x86_64-unknown-haiku
++	exit ;;
+     SX-4:SUPER-UX:*:*)
+ 	echo sx4-nec-superux${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     SX-5:SUPER-UX:*:*)
+ 	echo sx5-nec-superux${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     SX-6:SUPER-UX:*:*)
+ 	echo sx6-nec-superux${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
++    SX-7:SUPER-UX:*:*)
++	echo sx7-nec-superux${UNAME_RELEASE}
++	exit ;;
++    SX-8:SUPER-UX:*:*)
++	echo sx8-nec-superux${UNAME_RELEASE}
++	exit ;;
++    SX-8R:SUPER-UX:*:*)
++	echo sx8r-nec-superux${UNAME_RELEASE}
++	exit ;;
+     Power*:Rhapsody:*:*)
+ 	echo powerpc-apple-rhapsody${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     *:Rhapsody:*:*)
+ 	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     *:Darwin:*:*)
+-	case `uname -p` in
+-	    *86) UNAME_PROCESSOR=i686 ;;
+-	    powerpc) UNAME_PROCESSOR=powerpc ;;
++	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
++	case $UNAME_PROCESSOR in
++	    i386)
++		eval $set_cc_for_build
++		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
++		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
++		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
++		      grep IS_64BIT_ARCH >/dev/null
++		  then
++		      UNAME_PROCESSOR="x86_64"
++		  fi
++		fi ;;
++	    unknown) UNAME_PROCESSOR=powerpc ;;
+ 	esac
+ 	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     *:procnto*:*:* | *:QNX:[0123456789]*:*)
+ 	UNAME_PROCESSOR=`uname -p`
+ 	if test "$UNAME_PROCESSOR" = "x86"; then
+@@ -1209,22 +1257,28 @@
+ 		UNAME_MACHINE=pc
+ 	fi
+ 	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     *:QNX:*:4*)
+ 	echo i386-pc-qnx
+-	exit 0 ;;
++	exit ;;
++    NEO-?:NONSTOP_KERNEL:*:*)
++	echo neo-tandem-nsk${UNAME_RELEASE}
++	exit ;;
++    NSE-*:NONSTOP_KERNEL:*:*)
++	echo nse-tandem-nsk${UNAME_RELEASE}
++	exit ;;
+     NSR-?:NONSTOP_KERNEL:*:*)
+ 	echo nsr-tandem-nsk${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     *:NonStop-UX:*:*)
+ 	echo mips-compaq-nonstopux
+-	exit 0 ;;
++	exit ;;
+     BS2000:POSIX*:*:*)
+ 	echo bs2000-siemens-sysv
+-	exit 0 ;;
++	exit ;;
+     DS/*:UNIX_System_V:*:*)
+ 	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+-	exit 0 ;;
++	exit ;;
+     *:Plan9:*:*)
+ 	# "uname -m" is not consistent, so use $cputype instead. 386
+ 	# is converted to i386 for consistency with other x86
+@@ -1235,36 +1289,55 @@
+ 	    UNAME_MACHINE="$cputype"
+ 	fi
+ 	echo ${UNAME_MACHINE}-unknown-plan9
+-	exit 0 ;;
++	exit ;;
+     *:TOPS-10:*:*)
+ 	echo pdp10-unknown-tops10
+-	exit 0 ;;
++	exit ;;
+     *:TENEX:*:*)
+ 	echo pdp10-unknown-tenex
+-	exit 0 ;;
++	exit ;;
+     KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+ 	echo pdp10-dec-tops20
+-	exit 0 ;;
++	exit ;;
+     XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+ 	echo pdp10-xkl-tops20
+-	exit 0 ;;
++	exit ;;
+     *:TOPS-20:*:*)
+ 	echo pdp10-unknown-tops20
+-	exit 0 ;;
++	exit ;;
+     *:ITS:*:*)
+ 	echo pdp10-unknown-its
+-	exit 0 ;;
++	exit ;;
+     SEI:*:*:SEIUX)
+-        echo mips-sei-seiux${UNAME_RELEASE}
+-	exit 0 ;;
++	echo mips-sei-seiux${UNAME_RELEASE}
++	exit ;;
+     *:DragonFly:*:*)
+ 	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+-	exit 0 ;;
++	exit ;;
++    *:*VMS:*:*)
++	UNAME_MACHINE=`(uname -p) 2>/dev/null`
++	case "${UNAME_MACHINE}" in
++	    A*) echo alpha-dec-vms ; exit ;;
++	    I*) echo ia64-dec-vms ; exit ;;
++	    V*) echo vax-dec-vms ; exit ;;
++	esac ;;
++    *:XENIX:*:SysV)
++	echo i386-pc-xenix
++	exit ;;
++    i*86:skyos:*:*)
++	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
++	exit ;;
++    i*86:rdos:*:*)
++	echo ${UNAME_MACHINE}-pc-rdos
++	exit ;;
++    i*86:AROS:*:*)
++	echo ${UNAME_MACHINE}-pc-aros
++	exit ;;
++    x86_64:VMkernel:*:*)
++	echo ${UNAME_MACHINE}-unknown-esx
++	exit ;;
+ esac
+ 
+-#echo '(No uname command or uname output not recognized.)' 1>&2
+-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
+-
+ eval $set_cc_for_build
+ cat >$dummy.c <<EOF
+ #ifdef _SEQUENT_
+@@ -1282,16 +1355,16 @@
+ #include <sys/param.h>
+   printf ("m68k-sony-newsos%s\n",
+ #ifdef NEWSOS4
+-          "4"
++	"4"
+ #else
+-	  ""
++	""
+ #endif
+-         ); exit (0);
++	); exit (0);
+ #endif
+ #endif
+ 
+ #if defined (__arm) && defined (__acorn) && defined (__unix)
+-  printf ("arm-acorn-riscix"); exit (0);
++  printf ("arm-acorn-riscix\n"); exit (0);
+ #endif
+ 
+ #if defined (hp300) && !defined (hpux)
+@@ -1380,11 +1453,12 @@
+ }
+ EOF
+ 
+-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
++$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
++	{ echo "$SYSTEM_NAME"; exit; }
+ 
+ # Apollos put the system type in the environment.
+ 
+-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
++test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
+ 
+ # Convex versions that predate uname can use getsysinfo(1)
+ 
+@@ -1393,22 +1467,22 @@
+     case `getsysinfo -f cpu_type` in
+     c1*)
+ 	echo c1-convex-bsd
+-	exit 0 ;;
++	exit ;;
+     c2*)
+ 	if getsysinfo -f scalar_acc
+ 	then echo c32-convex-bsd
+ 	else echo c2-convex-bsd
+ 	fi
+-	exit 0 ;;
++	exit ;;
+     c34*)
+ 	echo c34-convex-bsd
+-	exit 0 ;;
++	exit ;;
+     c38*)
+ 	echo c38-convex-bsd
+-	exit 0 ;;
++	exit ;;
+     c4*)
+ 	echo c4-convex-bsd
+-	exit 0 ;;
++	exit ;;
+     esac
+ fi
+ 
+@@ -1419,7 +1493,9 @@
+ the operating system you are using. It is advised that you
+ download the most up to date version of the config scripts from
+ 
+-    ftp://ftp.gnu.org/pub/gnu/config/
++  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
++and
++  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+ 
+ If the version you run ($0) is already up to date, please
+ send the following data and any information you think might be
+diff -ur w3m-0.5.3/main.c new/w3m-0.5.3/main.c
+--- w3m-0.5.3/main.c	2011-01-04 04:42:19.000000000 -0500
++++ w3m-0.5.3/main.c	2013-04-28 18:42:08.408034100 -0400
+@@ -789,7 +789,8 @@
+     }
+ 
+ #ifdef USE_BINMODE_STREAM
+-    setmode(fileno(stdout), O_BINARY);
++  /* Seems to only be needed for old versions of Cygwin */
++  /***setmode(fileno(stdout), O_BINARY);***/
+ #endif
+     if (!w3m_dump && !w3m_backend) {
+ 	fmInit();
diff --git a/pkgs/applications/networking/browsers/w3m/default.nix b/pkgs/applications/networking/browsers/w3m/default.nix
index bf14e7e5341..d8c421af46a 100644
--- a/pkgs/applications/networking/browsers/w3m/default.nix
+++ b/pkgs/applications/networking/browsers/w3m/default.nix
@@ -3,13 +3,13 @@
 , graphicsSupport ? false
 , mouseSupport ? false
 , ncurses, openssl ? null, boehmgc, gettext, zlib
-, imlib2 ? null, x11 ? null, fbcon ? null
-, gpm ? null
+, imlib2 ? null, xlibsWrapper ? null, fbcon ? null
+, gpm-ncurses ? null
 }:
 
 assert sslSupport -> openssl != null;
-assert graphicsSupport -> imlib2 != null && (x11 != null || fbcon != null);
-assert mouseSupport -> gpm != null;
+assert graphicsSupport -> imlib2 != null && (xlibsWrapper != null || fbcon != null);
+assert mouseSupport -> gpm-ncurses != null;
 
 stdenv.mkDerivation rec {
   name = "w3m-0.5.3";
@@ -22,12 +22,13 @@ stdenv.mkDerivation rec {
   patches = [ ./glibc214.patch ]
     # Patch for the newer unstable boehm-gc 7.2alpha. Not all platforms use that
     # alpha. At the time of writing this, boehm-gc-7.1 is the last stable.
-    ++ stdenv.lib.optional (boehmgc.name != "boehm-gc-7.1") [ ./newgc.patch ];
+    ++ stdenv.lib.optional (boehmgc.name != "boehm-gc-7.1") [ ./newgc.patch ]
+    ++ stdenv.lib.optional stdenv.isCygwin ./cygwin.patch;
 
   buildInputs = [ncurses boehmgc gettext zlib]
     ++ stdenv.lib.optional sslSupport openssl
-    ++ stdenv.lib.optional mouseSupport gpm
-    ++ stdenv.lib.optionals graphicsSupport [imlib2 x11 fbcon];
+    ++ stdenv.lib.optional mouseSupport gpm-ncurses
+    ++ stdenv.lib.optionals graphicsSupport [imlib2 xlibsWrapper fbcon];
 
   configureFlags = "--with-ssl=${openssl} --with-gc=${boehmgc}"
     + stdenv.lib.optionalString graphicsSupport " --enable-image=x11,fb";
diff --git a/pkgs/applications/networking/cluster/chronos/default.nix b/pkgs/applications/networking/cluster/chronos/default.nix
index 14f5d251240..596163336f7 100644
--- a/pkgs/applications/networking/cluster/chronos/default.nix
+++ b/pkgs/applications/networking/cluster/chronos/default.nix
@@ -34,5 +34,6 @@ stdenv.mkDerivation rec {
     description = "Fault tolerant job scheduler for Mesos which handles dependencies and ISO8601 based schedules";
     maintainers = with maintainers; [ offline ];
     platforms   = with platforms; unix;
+    broken = true; # doesn't build http://hydra.nixos.org/build/25768319
   };
 }
diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix
index fbfe4de23b8..56d4cc7e769 100644
--- a/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -1,33 +1,48 @@
-{ stdenv, fetchFromGitHub, which, go, makeWrapper, iptables, rsync, utillinux, coreutils }:
+{ stdenv, fetchFromGitHub, which, go, makeWrapper, iptables, rsync, utillinux, coreutils, e2fsprogs, procps-ng }:
 
 stdenv.mkDerivation rec {
   name = "kubernetes-${version}";
-  version = "0.15.0";
+  version = "1.0.3";
 
   src = fetchFromGitHub {
     owner = "GoogleCloudPlatform";
     repo = "kubernetes";
     rev = "v${version}";
-    sha256 = "1jiczhx01i8czm1gzd232z2ds2f1lvs5ifa9zjabhzw5ykfzdjg8";
+    sha256 = "12wqw9agiz07wlw1sd0n41fn6xf74zn5sv37hslfa77w2d4ri5yb";
   };
 
   buildInputs = [ makeWrapper which go iptables rsync ];
 
   buildPhase = ''
+    GOPATH=$(pwd):$(pwd)/Godeps/_workspace
+    mkdir -p $(pwd)/Godeps/_workspace/src/github.com/GoogleCloudPlatform
+    ln -s $(pwd) $(pwd)/Godeps/_workspace/src/github.com/GoogleCloudPlatform/kubernetes
+
     substituteInPlace "hack/lib/golang.sh" --replace "_cgo" ""
-    GOPATH=$(pwd)
     patchShebangs ./hack
     hack/build-go.sh --use_go_build
+
+    (cd cluster/addons/dns/kube2sky && go build ./kube2sky.go)
   '';
 
   installPhase = ''
-    mkdir -p "$out/bin"
-    cp _output/local/go/bin/* "$out/bin/"
+    mkdir -p "$out/bin" "$out"/libexec/kubernetes/cluster
+    cp _output/local/go/bin/{kube*,hyperkube} "$out/bin/"
+    cp cluster/addons/dns/kube2sky/kube2sky "$out/bin/"
+    cp cluster/saltbase/salt/helpers/safe_format_and_mount "$out/libexec/kubernetes"
+    cp -R hack "$out/libexec/kubernetes"
+    cp cluster/update-storage-objects.sh "$out/libexec/kubernetes/cluster"
+    makeWrapper "$out"/libexec/kubernetes/cluster/update-storage-objects.sh "$out"/bin/kube-update-storage-objects \
+      --prefix KUBE_BIN : "$out/bin"
   '';
 
   preFixup = ''
     wrapProgram "$out/bin/kube-proxy" --prefix PATH : "${iptables}/bin"
-    wrapProgram "$out/bin/kubelet" --prefix PATH : "${utillinux}/bin"
+    wrapProgram "$out/bin/kubelet" --prefix PATH : "${utillinux}/bin:${procps-ng}/bin"
+    chmod +x "$out/libexec/kubernetes/safe_format_and_mount"
+    wrapProgram "$out/libexec/kubernetes/safe_format_and_mount" --prefix PATH : "${e2fsprogs}/bin:${utillinux}/bin"
+    substituteInPlace "$out"/libexec/kubernetes/cluster/update-storage-objects.sh \
+      --replace KUBE_OUTPUT_HOSTBIN KUBE_BIN
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/cluster/marathon/default.nix b/pkgs/applications/networking/cluster/marathon/default.nix
index 1714aa274f0..4311b352ab9 100644
--- a/pkgs/applications/networking/cluster/marathon/default.nix
+++ b/pkgs/applications/networking/cluster/marathon/default.nix
@@ -1,12 +1,12 @@
 { stdenv, makeWrapper, jdk, mesos, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "marathon-v${version}";
-  version = "0.8.0";
+  name = "marathon-${version}";
+  version = "0.8.1";
 
   src = fetchurl {
-    url = "https://downloads.mesosphere.com/marathon/v${version}/marathon-${version}.tgz";
-    sha256 = "794c915e205aebd8273f2b40c6faea1517fc683cdc0169194c4a67ce8779fa41";
+    url = "https://downloads.mesosphere.io/marathon/v${version}/marathon-${version}.tgz";
+    sha256 = "1g2z2c8p47rryyappwv0k3najb6bypvwgg7z9z8prvph2x6rafp6";
   };
 
   buildInputs = [ makeWrapper jdk mesos ];
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
     makeWrapper ${jdk.jre}/bin/java $out/bin/marathon \
       --add-flags "-Xmx512m -jar $out/libexec/marathon/${name}.jar" \
-      --prefix "MESOS_NATIVE_LIBRARY" : "$MESOS_NATIVE_LIBRARY"
+      --prefix "MESOS_NATIVE_JAVA_LIBRARY" : "$MESOS_NATIVE_JAVA_LIBRARY"
     '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/cluster/mesos/default.nix b/pkgs/applications/networking/cluster/mesos/default.nix
index b298fb55901..6f92ca5a6b7 100644
--- a/pkgs/applications/networking/cluster/mesos/default.nix
+++ b/pkgs/applications/networking/cluster/mesos/default.nix
@@ -1,35 +1,43 @@
 { stdenv, lib, makeWrapper, fetchurl, curl, sasl, openssh, autoconf
-, automake, libtool, unzip, gnutar, jdk, maven, python, wrapPython
+, automake114x, libtool, unzip, gnutar, jdk, maven, python, wrapPython
 , setuptools, distutils-cfg, boto, pythonProtobuf, apr, subversion
-, leveldb, glog
+, leveldb, glog, perf, utillinux, libnl, iproute
 }:
 
-let version = "0.21.0";
-in stdenv.mkDerivation {
-  dontDisableStatic = true;
+let
+  mavenRepo = import ./mesos-deps.nix { inherit stdenv curl; };
+  soext = if stdenv.system == "x86_64-darwin" then "dylib" else "so";
 
+in stdenv.mkDerivation rec {
+  version = "0.23.0";
   name = "mesos-${version}";
 
+  dontDisableStatic = true;
+
   src = fetchurl {
     url = "http://www.apache.org/dist/mesos/${version}/mesos-${version}.tar.gz";
-    sha256 = "01ap8blrb046w26zf3i4r7vvnnhjsbfi20vz5yinmncqbzjjyx6i";
+    sha256 = "1v5xpn4wal4vcrvcklchx9slkpa8xlwqkdbnxzy9zkzpq5g3arxr";
   };
 
+  patches = [
+    # https://reviews.apache.org/r/36610/
+    ./rb36610.patch
+  ];
+
   buildInputs = [
-    makeWrapper autoconf automake libtool curl sasl jdk maven
+    makeWrapper autoconf automake114x libtool curl sasl jdk maven
     python wrapPython boto distutils-cfg setuptools leveldb
     subversion apr glog
+  ] ++ lib.optionals stdenv.isLinux [
+    libnl
   ];
 
   propagatedBuildInputs = [
     pythonProtobuf
   ];
 
-  mavenRepo = import ./mesos-deps.nix { inherit stdenv curl; };
-
   preConfigure = ''
-    export MAVEN_OPTS="-Dmaven.repo.local=$(pwd)/.m2"
-    ln -s $mavenRepo .m2
+    export MAVEN_OPTS="-Dmaven.repo.local=${mavenRepo}"
 
     substituteInPlace src/launcher/fetcher.cpp \
       --replace '"tar' '"${gnutar}/bin/tar'    \
@@ -37,6 +45,29 @@ in stdenv.mkDerivation {
 
     substituteInPlace src/cli/mesos-scp        \
       --replace "'scp " "'${openssh}/bin/scp "
+
+    substituteInPlace src/cli/python/mesos/cli.py \
+      --replace "['mesos-resolve'" "['$out/bin/mesos-resolve'"
+
+  '' + lib.optionalString (stdenv.isLinux) ''
+
+    substituteInPlace configure.ac             \
+      --replace /usr/include/libnl3 ${libnl}/include/libnl3
+
+    substituteInPlace src/linux/perf.cpp       \
+      --replace '"perf ' '"${perf}/bin/perf '
+
+    substituteInPlace src/slave/containerizer/isolators/filesystem/shared.cpp \
+      --replace '"mount ' '"${utillinux}/bin/mount ' \
+
+    substituteInPlace src/slave/containerizer/isolators/namespaces/pid.cpp \
+      --replace '"mount ' '"${utillinux}/bin/mount ' \
+
+    substituteInPlace src/slave/containerizer/isolators/network/port_mapping.cpp \
+      --replace '"tc ' '"${iproute}/bin/tc '   \
+      --replace '"ip ' '"${iproute}/bin/ip '   \
+      --replace '"mount ' '"${utillinux}/bin/mount ' \
+      --replace '/bin/sh' "${stdenv.shell}"
   '';
 
   configureFlags = [
@@ -45,33 +76,37 @@ in stdenv.mkDerivation {
     "--with-svn=${subversion}"
     "--with-leveldb=${leveldb}"
     "--with-glog=${glog}"
+    "--with-glog=${glog}"
+    "--enable-optimize"
     "--disable-python-dependency-install"
+  ] ++ lib.optionals stdenv.isLinux [
+    "--with-network-isolator"
   ];
 
   postInstall = ''
     rm -rf $out/var
     rm $out/bin/*.sh
 
-    ensureDir $out/share/java
+    mkdir -p $out/share/java
     cp src/java/target/mesos-*.jar $out/share/java
 
-    shopt -s extglob
-    MESOS_NATIVE_JAVA_LIBRARY=$(echo $out/lib/libmesos.*(so|dylib))
-    shopt -u extglob
+    MESOS_NATIVE_JAVA_LIBRARY=$out/lib/libmesos.${soext}
 
-    ensureDir $out/nix-support
+    mkdir -p $out/nix-support
     touch $out/nix-support/setup-hook
     echo "export MESOS_NATIVE_JAVA_LIBRARY=$MESOS_NATIVE_JAVA_LIBRARY" >> $out/nix-support/setup-hook
     echo "export MESOS_NATIVE_LIBRARY=$MESOS_NATIVE_JAVA_LIBRARY" >> $out/nix-support/setup-hook
 
     # Inspired by: pkgs/development/python-modules/generic/default.nix
-    ensureDir "$out/lib/${python.libPrefix}"/site-packages
+    pushd src/python
+    mkdir -p $out/lib/${python.libPrefix}/site-packages
     export PYTHONPATH="$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
-    ${python}/bin/${python.executable} src/python/setup.py install \
+    ${python}/bin/${python.executable} setup.py install \
       --install-lib=$out/lib/${python.libPrefix}/site-packages \
       --old-and-unmanageable \
       --prefix="$out"
     rm -f "$out/lib/${python.libPrefix}"/site-packages/site.py*
+    popd
   '';
 
   postFixup = ''
@@ -85,14 +120,14 @@ in stdenv.mkDerivation {
       fi
     done
 
+    for f in $out/libexec/mesos/python/mesos/*.py; do
+      ${python}/bin/${python.executable} -c "import py_compile; py_compile.compile('$f')"
+    done
+
     # wrap the python programs
-    declare -A pythonPathsSeen=()
-    program_PYTHONPATH="$out/libexec/mesos/python"
-    program_PATH=""
-    _addToPythonPath "$out"
     for prog in mesos-cat mesos-ps mesos-scp mesos-tail; do
       wrapProgram "$out/bin/$prog" \
-        --prefix PYTHONPATH ":" $program_PYTHONPATH
+        --prefix PYTHONPATH ":" "$out/libexec/mesos/python"
       true
     done
   '';
@@ -101,7 +136,7 @@ in stdenv.mkDerivation {
     homepage    = "http://mesos.apache.org";
     license     = licenses.asl20;
     description = "A cluster manager that provides efficient resource isolation and sharing across distributed applications, or frameworks";
-    maintainers = with maintainers; [ cstrahan offline ];
+    maintainers = with maintainers; [ cstrahan offline rushmorem ];
     platforms   = with platforms; linux;
   };
 }
diff --git a/pkgs/applications/networking/cluster/mesos/rb36610.patch b/pkgs/applications/networking/cluster/mesos/rb36610.patch
new file mode 100644
index 00000000000..c3b1b290422
--- /dev/null
+++ b/pkgs/applications/networking/cluster/mesos/rb36610.patch
@@ -0,0 +1,11 @@
+diff --git a/src/linux/fs.cpp b/src/linux/fs.cpp
+index ea0891e320154b85a21ed2d138c192821efae9cd..7b24c377c9a28cad91738305c273fb53a4dc7365 100644
+--- a/src/linux/fs.cpp
++++ b/src/linux/fs.cpp
+@@ -19,6 +19,7 @@
+ #include <errno.h>
+ #include <stdio.h>
+ #include <string.h>
++#include <syscall.h>
+
+ #include <linux/limits.h>
diff --git a/pkgs/applications/networking/cluster/openshift/default.nix b/pkgs/applications/networking/cluster/openshift/default.nix
new file mode 100644
index 00000000000..e5f813fcd7d
--- /dev/null
+++ b/pkgs/applications/networking/cluster/openshift/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchgit, go, git, which }:
+
+stdenv.mkDerivation rec {
+  name = "openshift-origin-${version}";
+  version = "1.0.1";
+
+  src = fetchgit {
+    url = https://github.com/openshift/origin.git;
+    rev = "1b601951daa44964c9bc7e4a2264d65489e3a58c";
+    sha256 = "0nwyj3cgajmbd356w0362zxkd3p3pply58an2bmi3d3bswp3k89g";
+    leaveDotGit = true;
+    deepClone = true;
+  };
+
+  buildInputs = [ go git which ];
+
+  buildPhase = "hack/build-go.sh";
+
+  installPhase = ''
+    mkdir -p "$out/bin"
+    cp _output/local/go/bin/* "$out/bin/"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Build, deploy, and manage your applications with Docker and Kubernetes";
+    license = licenses.asl20;
+    homepage = http://www.openshift.org;
+    maintainers = with maintainers; [offline];
+    platforms = [ "x86_64-linux" ];
+    broken = true;
+  };
+}
diff --git a/pkgs/applications/networking/cluster/panamax/api/default.nix b/pkgs/applications/networking/cluster/panamax/api/default.nix
index 6cbec878a48..dcfef83f1be 100644
--- a/pkgs/applications/networking/cluster/panamax/api/default.nix
+++ b/pkgs/applications/networking/cluster/panamax/api/default.nix
@@ -1,5 +1,5 @@
 { stdenv, buildEnv, fetchgit, fetchurl, makeWrapper, bundlerEnv, bundler_HEAD
-, ruby, libxslt, libxml2, sqlite, openssl, cacert, docker
+, ruby, libxslt, libxml2, sqlite, openssl, docker
 , dataDir ? "/var/lib/panamax-api" }:
 
 with stdenv.lib;
@@ -62,8 +62,7 @@ stdenv.mkDerivation rec {
       --prefix "PATH" : "$out/share/panamax-api/bin:${env.ruby}/bin:$PATH" \
       --prefix "HOME" : "$out/share/panamax-api" \
       --prefix "GEM_HOME" : "${env}/${env.ruby.gemPath}" \
-      --prefix "OPENSSL_X509_CERT_FILE" : "${cacert}/etc/ca-bundle.crt" \
-      --prefix "SSL_CERT_FILE" : "${cacert}/etc/ca-bundle.crt" \
+      --prefix "SSL_CERT_FILE" : /etc/ssl/certs/ca-certificates.crt \
       --prefix "GEM_PATH" : "$out/share/panamax-api:${bundler}/${env.ruby.gemPath}"
   '';
 
diff --git a/pkgs/applications/networking/cluster/panamax/ui/Gemfile.lock b/pkgs/applications/networking/cluster/panamax/ui/Gemfile.lock
index e1dfc0d4a3d..b273595bbb0 100644
--- a/pkgs/applications/networking/cluster/panamax/ui/Gemfile.lock
+++ b/pkgs/applications/networking/cluster/panamax/ui/Gemfile.lock
@@ -86,7 +86,7 @@ GEM
       railties (>= 3.2.16)
     json (1.8.2)
     kramdown (1.4.0)
-    libv8 (3.16.14.7)
+    libv8 (3.16.14.11)
     mail (2.6.3)
       mime-types (>= 1.16, < 3)
     method_source (0.8.2)
diff --git a/pkgs/applications/networking/cluster/panamax/ui/default.nix b/pkgs/applications/networking/cluster/panamax/ui/default.nix
index 572deb62ba0..3dac1061362 100644
--- a/pkgs/applications/networking/cluster/panamax/ui/default.nix
+++ b/pkgs/applications/networking/cluster/panamax/ui/default.nix
@@ -37,6 +37,8 @@ stdenv.mkDerivation rec {
     find . -type f -iname "*.haml" -exec sed -e 's|CoreOS Local|NixOS Local|g' -i "{}" \;
     find . -type f -iname "*.haml" -exec sed -e 's|CoreOS Host|NixOS Host|g' -i "{}" \;
     sed -e 's|CoreOS Local|NixOS Local|g' -i "spec/features/manage_application_spec.rb"
+    # fix libv8 dependency
+    substituteInPlace Gemfile.lock --replace "3.16.14.7" "3.16.14.11"
   '';
 
   configurePhase = ''
diff --git a/pkgs/applications/networking/cluster/panamax/ui/gemset.nix b/pkgs/applications/networking/cluster/panamax/ui/gemset.nix
index cfb2b6f460f..b41b482edb7 100644
--- a/pkgs/applications/networking/cluster/panamax/ui/gemset.nix
+++ b/pkgs/applications/networking/cluster/panamax/ui/gemset.nix
@@ -332,11 +332,11 @@
       sha256 = "001vy0ymiwbvkdbb9wpqmswv6imliv7xim00gq6rlk0chnbiaq80";
     };
   };
-  "libv8" = {
-    version = "3.16.14.7";
+  libv8 = {
+    version = "3.16.14.11";
     source = {
       type = "gem";
-      sha256 = "0dv5q5n5nf6b8h3fybwmsr3vkj70w4g1jpf6661j3hsv9vp0g4qq";
+      sha256 = "000vbiy78wk5r1f6p7qncab8ldg7qw5pjz7bchn3lw700gpaacxp";
     };
   };
   "mail" = {
@@ -786,4 +786,4 @@
       "railties"
     ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/networking/cluster/pig/default.nix b/pkgs/applications/networking/cluster/pig/default.nix
new file mode 100644
index 00000000000..a5666fc8f32
--- /dev/null
+++ b/pkgs/applications/networking/cluster/pig/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, fetchurl, makeWrapper, hadoop, jre, bash }:
+
+stdenv.mkDerivation rec {
+
+  name = "pig-0.14.0";
+
+  src = fetchurl {
+    url = "mirror://apache/pig/${name}/${name}.tar.gz";
+    sha256 = "183in34cj93ny3lhqyq76g9pjqgw1qlwakk5v6x847vrlkfndska";
+
+  };
+
+  buildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    mkdir -p $out
+    mv * $out
+
+    # no need for the windows batch script
+    rm $out/bin/pig.cmd $out/bin/pig.py
+
+    for n in $out/{bin,sbin}"/"*; do
+      wrapProgram $n \
+        --prefix PATH : "${jre}/bin:${bash}/bin" \
+        --set JAVA_HOME "${jre}" --set HADOOP_PREFIX "${hadoop}"
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "http://pig.apache.org/";
+    description = "High-level language for Apache Hadoop";
+    license = licenses.asl20;
+
+    longDescription = ''
+      Apache Pig is a platform for analyzing large data sets that consists of a
+      high-level language for expressing data analysis programs, coupled with
+      infrastructure for evaluating these programs. The salient property of Pig
+      programs is that their structure is amenable to substantial parallelization,
+      which in turns enables them to handle very large data sets.
+    '';
+
+    platforms = platforms.linux;
+    maintainers = [ maintainers.skeidel ];
+  };
+}
diff --git a/pkgs/applications/networking/cluster/spark/default.nix b/pkgs/applications/networking/cluster/spark/default.nix
index 1852f21d27a..1147c4b64a1 100644
--- a/pkgs/applications/networking/cluster/spark/default.nix
+++ b/pkgs/applications/networking/cluster/spark/default.nix
@@ -6,11 +6,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name    = "spark-${version}";
-  version = "1.1.1";
+  version = "1.4.0";
 
   src = fetchurl {
-    url    = "http://d3kbcqa49mib13.cloudfront.net/${name}-bin-cdh4.tgz";
-    sha256 = "1k0lw8aq5is3gnsrm8q24s0knga6kb3c9xsca20g11fy8b0y4nvk";
+    url    = "mirror://apache/spark/${name}/${name}-bin-cdh4.tgz";
+    sha256 = "1w60xzzg9mcymin1pmqwx1mvcqmdpfyxhd2dmw5alhnrzi21ycxi";
   };
 
   buildInputs = [ makeWrapper jre pythonPackages.python pythonPackages.numpy ]
diff --git a/pkgs/applications/networking/copy-com/default.nix b/pkgs/applications/networking/copy-com/default.nix
index c146db9f6dc..c9fecd9daed 100644
--- a/pkgs/applications/networking/copy-com/default.nix
+++ b/pkgs/applications/networking/copy-com/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, coreutils, fetchurl, patchelf, gcc }:
+{ stdenv, fetchurl, patchelf, fontconfig, freetype
+, gcc, glib, libICE, libSM, libX11, libXext, libXrender }:
 
 let
   arch = if stdenv.system == "x86_64-linux" then "x86_64"
@@ -13,45 +14,54 @@ let
 
   appdir = "opt/copy";
   
+  libPackages = [ fontconfig freetype gcc.cc glib libICE libSM libX11 libXext
+    libXrender ];
+  libPaths = stdenv.lib.concatStringsSep ":"
+    (map (path: "${path}/lib") libPackages);
+
 in stdenv.mkDerivation {
   
-  name = "copy-com-1.47.0410";
+  name = "copy-com-3.2.01.0481";
 
   src = fetchurl {
     # Note: copy.com doesn't version this file. Annoying.
     url = "https://copy.com/install/linux/Copy.tgz";
-    sha256 = "a48c69f6798f888617cfeef5359829e619057ae0e6edf3940b4ea6c81131012a";
+    sha256 = "0bpphm71mqpaiygs57kwa23nli0qm64fvgl1qh7fkxyqqabh4g7k";
   };
 
-  buildInputs = [ coreutils patchelf ];
+  nativeBuildInputs = [ patchelf ];
 
   phases = "unpackPhase installPhase";
 
   installPhase = ''
     mkdir -p $out/opt
     cp -r ${arch} "$out/${appdir}"
-    ensureDir "$out/bin"
-    ln -s "$out/${appdir}/CopyConsole" "$out/bin/copy_console"
-    ln -s "$out/${appdir}/CopyAgent" "$out/bin/copy_agent"
-    ln -s "$out/${appdir}/CopyCmd" "$out/bin/copy_cmd"
-    patchelf --set-interpreter ${stdenv.glibc.out}/lib/${interpreter} \
-      "$out/${appdir}/CopyConsole"
-
-    RPATH=${gcc.cc}/lib:$out/${appdir}
-    echo "updating rpaths to: $RPATH"
-    find "$out/${appdir}" -type f -a -perm +0100 \
-      -print -exec patchelf --force-rpath --set-rpath "$RPATH" {} \;
 
+    mkdir -p "$out/bin"
+    for binary in Copy{Agent,Console,Cmd}; do
+      binary="$out/${appdir}/$binary"
+      ln -sv "$binary" "$out/bin"
+      patchelf --set-interpreter ${stdenv.glibc.out}/lib/${interpreter} "$binary"
+    done
 
+    # Older versions of this package happily installed broken copies of
+    # anything other than CopyConsole - which was then also mangled to
+    # copy_console for some reason. Keep backwards compatibility (only
+    # for CopyConsole) for now; the NixOS service is already fixed.
+    ln -sv "$out/bin"/{CopyConsole,copy_console}
 
+    RPATH=${libPaths}:$out/${appdir}
+    echo "Updating rpaths to $RPATH in:"
+    find "$out/${appdir}" -type f -a -perm -0100 \
+      -print -exec patchelf --force-rpath --set-rpath "$RPATH" {} \;
   '';
 
   meta = {
     homepage = http://copy.com;
-    description = "Copy.com Client";
+    description = "Copy.com graphical & command-line clients";
     # Closed Source unfortunately.
     license = stdenv.lib.licenses.unfree;
-    maintainers = with stdenv.lib.maintainers; [ nathan-gs ];
+    maintainers = with stdenv.lib.maintainers; [ nathan-gs nckx ];
     # NOTE: Copy.com itself only works on linux, so this is ok.
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/networking/dropbox/default.nix b/pkgs/applications/networking/dropbox/default.nix
index 06948d3c048..08a4b0dacbd 100644
--- a/pkgs/applications/networking/dropbox/default.nix
+++ b/pkgs/applications/networking/dropbox/default.nix
@@ -1,6 +1,7 @@
-{ stdenv, fetchurl, makeDesktopItem, makeWrapper
+{ stdenv, fetchurl, makeDesktopItem, makeWrapper, patchelf
 , dbus_libs, gcc, glib, libdrm, libffi, libICE, libSM
 , libX11, libXmu, ncurses, popt, qt5, zlib
+, qtbase, qtdeclarative, qtwebkit
 }:
 
 # this package contains the daemon version of dropbox
@@ -18,28 +19,27 @@
 # them with our own.
 
 let
-  arch = if stdenv.system == "x86_64-linux" then "x86_64"
-    else if stdenv.system == "i686-linux" then "x86"
-    else throw "Dropbox client for: ${stdenv.system} not supported!";
-
-  interpreter = if stdenv.system == "x86_64-linux" then "ld-linux-x86-64.so.2"
-    else if stdenv.system == "i686-linux" then "ld-linux.so.2"
-    else throw "Dropbox client for: ${stdenv.system} not supported!";
-
-  # NOTE: When updating, please also update in current stable, as older versions stop working  
-  version = "3.4.4";
-  sha256 = if stdenv.system == "x86_64-linux" then "05ncbxwkimq7cl3bad759qvda7zjdh07f5wh6aw12g472l4yqq98"
-    else if stdenv.system == "i686-linux" then "18089bh6i64yw75pswgn2vkcl1kf7ipxxncmssw3qhb6791qfhbk"
-    else throw "Dropbox client for: ${stdenv.system} not supported!";
+  # NOTE: When updating, please also update in current stable, as older versions stop working
+  version = "3.8.9";
+  sha256 =
+    {
+      "x86_64-linux" = "1mdhf57bqi4vihbzv5lz8zk4n576c1qjm7hzcq4f5qvkdsmp5in2";
+      "i686-linux" = "0gighh782jjmlgqgbw2d00a3ri5h3inqdik7v70f1yygvkr7awy8";
+    }."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
+
+  arch =
+    {
+      "x86_64-linux" = "x86_64";
+      "i686-linux" = "x86";
+    }."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
 
   # relative location where the dropbox libraries are stored
   appdir = "opt/dropbox";
 
   ldpath = stdenv.lib.makeSearchPath "lib"
     [
-      dbus_libs gcc glib libdrm libffi libICE libSM libX11
-      libXmu ncurses popt qt5.base qt5.declarative qt5.webkit
-      zlib
+      dbus_libs gcc.cc glib libdrm libffi libICE libSM libX11 libXmu
+      ncurses popt qtbase qtdeclarative qtwebkit zlib
     ];
 
   desktopItem = makeDesktopItem {
@@ -52,24 +52,22 @@ let
   };
 
 in stdenv.mkDerivation {
-  name = "dropbox-${version}-bin";
+  name = "dropbox-${version}";
   src = fetchurl {
     name = "dropbox-${version}.tar.gz";
     url = "https://dl-web.dropbox.com/u/17/dropbox-lnx.${arch}-${version}.tar.gz";
     inherit sha256;
   };
 
-  sourceRoot = ".";
+  sourceRoot = ".dropbox-dist";
 
-  patchPhase = ''
-    rm -f .dropbox-dist/dropboxd
-  '';
-
-  buildInputs = [ makeWrapper ];
+  buildInputs = [ makeWrapper patchelf ];
+  dontPatchELF = true; # patchelf invoked explicitly below
+  dontStrip = true; # already done
 
   installPhase = ''
     mkdir -p "$out/${appdir}"
-    cp -r ".dropbox-dist/dropbox-lnx.${arch}-${version}"/* "$out/${appdir}/"
+    cp -r "dropbox-lnx.${arch}-${version}"/* "$out/${appdir}/"
 
     rm "$out/${appdir}/libdrm.so.2"
     rm "$out/${appdir}/libffi.so.6"
@@ -95,25 +93,62 @@ in stdenv.mkDerivation {
     rm "$out/${appdir}/qt.conf"
     rm -fr "$out/${appdir}/plugins"
 
-    find "$out/${appdir}" -type f -a -perm +0100 \
-      -print -exec patchelf --set-interpreter ${stdenv.glibc.out}/lib/${interpreter} {} \;
-
-    RPATH=${ldpath}:${gcc.cc}/lib:$out/${appdir}
-    echo "updating rpaths to: $RPATH"
-    find "$out/${appdir}" -type f -a -perm +0100 \
-      -print -exec patchelf --force-rpath --set-rpath "$RPATH" {} \;
-
     mkdir -p "$out/share/applications"
     cp "${desktopItem}/share/applications/"* $out/share/applications
 
+    mkdir -p "$out/share/icons"
+    ln -s "$out/${appdir}/images/hicolor" "$out/share/icons/hicolor"
+
     mkdir -p "$out/bin"
+    RPATH="${ldpath}:$out/${appdir}"
     makeWrapper "$out/${appdir}/dropbox" "$out/bin/dropbox" \
-      --prefix LD_LIBRARY_PATH : "${ldpath}"
+      --prefix LD_LIBRARY_PATH : "$RPATH"
+  '';
+
+  fixupPhase = ''
+    INTERP=$(cat $NIX_CC/nix-support/dynamic-linker)
+    RPATH="${ldpath}:$out/${appdir}"
+    getType='s/ *Type: *\([A-Z]*\) (.*/\1/'
+    find "$out/${appdir}" -type f -a -perm -0100 -print | while read obj; do
+        dynamic=$(readelf -S "$obj" 2>/dev/null | grep "DYNAMIC" || true)
+
+        if [[ -n "$dynamic" ]]; then
+            type=$(readelf -h "$obj" 2>/dev/null | grep 'Type:' | sed -e "$getType")
+
+            if [[ "$type" == "EXEC" ]]; then
+
+                echo "patching interpreter path in $type $obj"
+                patchelf --set-interpreter "$INTERP" "$obj"
+
+                echo "patching RPATH in $type $obj"
+                oldRPATH=$(patchelf --print-rpath "$obj")
+                patchelf --set-rpath "''${oldRPATH:+$oldRPATH:}$RPATH" "$obj"
+
+                echo "shrinking RPATH in $type $obj"
+                patchelf --shrink-rpath "$obj"
+
+            elif [[ "$type" == "DYN" ]]; then
+
+                echo "patching RPATH in $type $obj"
+                oldRPATH=$(patchelf --print-rpath "$obj")
+                patchelf --set-rpath "''${oldRPATH:+$oldRPATH:}$RPATH" "$obj"
+
+                echo "shrinking RPATH in $type $obj"
+                patchelf --shrink-rpath "$obj"
+
+            else
+
+                echo "unknown ELF type \"$type\"; not patching $obj"
+
+            fi
+        fi
+    done
   '';
 
   meta = {
     homepage = "http://www.dropbox.com";
     description = "Online stored folders (daemon version)";
     maintainers = with stdenv.lib.maintainers; [ ttuegel ];
+    platforms = [ "i686-linux" "x86_64-linux" ];
   };
 }
diff --git a/pkgs/applications/networking/feedreaders/canto-curses/default.nix b/pkgs/applications/networking/feedreaders/canto-curses/default.nix
index 0a65f8dd70f..8db1dac3b4b 100644
--- a/pkgs/applications/networking/feedreaders/canto-curses/default.nix
+++ b/pkgs/applications/networking/feedreaders/canto-curses/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, python34Packages, readline, ncurses, canto-daemon }:
 
 python34Packages.buildPythonPackage rec {
-  version = "0.9.3";
+  version = "0.9.6";
   name = "canto-curses-${version}";
 
   src = fetchFromGitHub {
     owner = "themoken";
     repo = "canto-curses";
     rev = "v${version}";
-    sha256 = "1k3rbniyfdbqhbkclgrrvfjgvfl5if4c2rbgpcb6l2l5v6i1y742";
+    sha256 = "0hxzpx314cflxq68gswjf2vrqf1z1ci9mxhxgwrk7sa6di86ygy0";
   };
 
   buildInputs = [ readline ncurses canto-daemon ];
diff --git a/pkgs/applications/networking/feedreaders/canto-daemon/default.nix b/pkgs/applications/networking/feedreaders/canto-daemon/default.nix
index bf564dd4327..0de38c259a3 100644
--- a/pkgs/applications/networking/feedreaders/canto-daemon/default.nix
+++ b/pkgs/applications/networking/feedreaders/canto-daemon/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, python34Packages, }:
 
 python34Packages.buildPythonPackage rec {
-  version = "0.9.1";
+  version = "0.9.5";
   name = "canto-daemon-${version}";
   namePrefix = "";
 
@@ -9,7 +9,7 @@ python34Packages.buildPythonPackage rec {
     owner = "themoken";
     repo = "canto-next";
     rev = "v${version}";
-    sha256 = "14lh6x0yz2asspwdi1ims01589r79q0dv77vq61gfjk5wiwfbdwa";
+    sha256 = "1ycwrg5n2il833mdxgzz07r0vb4rxz89rk5c6l9g5x33ifinykdq";
   };
 
   propagatedBuildInputs = with python34Packages; [ feedparser ];
diff --git a/pkgs/applications/networking/feedreaders/newsbeuter/default.nix b/pkgs/applications/networking/feedreaders/newsbeuter/default.nix
index 183df058eff..8158c458afc 100644
--- a/pkgs/applications/networking/feedreaders/newsbeuter/default.nix
+++ b/pkgs/applications/networking/feedreaders/newsbeuter/default.nix
@@ -2,11 +2,11 @@
 , gettext, libiconv, makeWrapper, perl }:
 
 stdenv.mkDerivation rec {
-  name = "newsbeuter-2.8";
+  name = "newsbeuter-2.9";
 
   src = fetchurl {
     url = "http://www.newsbeuter.org/downloads/${name}.tar.gz";
-    sha256 = "013qi8yghpms2qq1b3xbrlmfgpj0ybgk0qhj245ni4kpxila0wn8";
+    sha256 = "1j1x0hgwxz11dckk81ncalgylj5y5fgw5bcmp9qb5hq9kc0vza3l";
 
   };
 
@@ -22,14 +22,13 @@ stdenv.mkDerivation rec {
     export LDFLAGS=-lncursesw
   '';
 
-  installPhase = ''
-    DESTDIR=$out prefix=\"\" make install
-  ''
-    + stdenv.lib.optionalString stdenv.isDarwin ''
-      for prog in $out/bin/*; do
-        wrapProgram "$prog" --prefix DYLD_LIBRARY_PATH : "${stfl}/lib"
-      done
-    '';
+  installFlags = [ "DESTDIR=$(out)" "prefix=" ];
+
+  installPhase = stdenv.lib.optionalString stdenv.isDarwin ''
+    for prog in $out/bin/*; do
+      wrapProgram "$prog" --prefix DYLD_LIBRARY_PATH : "${stfl}/lib"
+    done
+  '';
 
   meta = {
     homepage    = http://www.newsbeuter.org;
@@ -39,4 +38,3 @@ stdenv.mkDerivation rec {
     platforms   = stdenv.lib.platforms.unix;
   };
 }
-
diff --git a/pkgs/applications/networking/feedreaders/rsstail/default.nix b/pkgs/applications/networking/feedreaders/rsstail/default.nix
index df5f7954182..5786d708cd6 100644
--- a/pkgs/applications/networking/feedreaders/rsstail/default.nix
+++ b/pkgs/applications/networking/feedreaders/rsstail/default.nix
@@ -1,16 +1,28 @@
 { stdenv, fetchFromGitHub, cppcheck, libmrss }:
 
-let version = "1.9"; in
+let version = "2015-09-06"; in
 stdenv.mkDerivation rec {
   name = "rsstail-${version}";
 
   src = fetchFromGitHub {
-    sha256 = "0igkkhwzhi2cxbfirmq5xgaidnv0gdhmh2w7052xqpyvzg069faf";
-    rev = "aab4fbcc5cdf82e439ea6abe562e9b648fc1a6ef";
+    sha256 = "1rfzib5fzm0i8wf3njld1lvxgbci0hxxnvp2qx1k4bwpv744xkpx";
+    rev = "16636539e4cc75dafbfa7f05539769be7dad4b66";
     repo = "rsstail";
     owner = "flok99";
   };
 
+  buildInputs = [ libmrss ]
+    ++ stdenv.lib.optional doCheck cppcheck;
+
+  postPatch = ''
+    substituteInPlace Makefile --replace -liconv ""
+  '';
+
+  makeFlags = "prefix=$(out)";
+  enableParallelBuilding = true;
+
+  doCheck = true;
+
   meta = with stdenv.lib; {
     inherit version;
     description = "Monitor RSS feeds for new entries";
@@ -19,23 +31,8 @@ stdenv.mkDerivation rec {
       detects a new entry it'll emit only that new entry.
     '';
     homepage = http://www.vanheusden.com/rsstail/;
-    license = with licenses; gpl2Plus;
+    license = licenses.gpl2Plus;
     platforms = with platforms; linux;
     maintainers = with maintainers; [ nckx ];
   };
-
-  buildInputs = [ libmrss ]
-    ++ stdenv.lib.optional doCheck cppcheck;
-
-  postPatch = ''
-    substituteInPlace Makefile --replace /usr $out
-  '';
-
-  enableParallelBuilding = true;
-
-  doCheck = true;
-
-  preInstall = ''
-    mkdir -p $out/{bin,share/man/man1}
-  '';
 }
diff --git a/pkgs/applications/networking/ftp/filezilla/default.nix b/pkgs/applications/networking/ftp/filezilla/default.nix
index e102f8037f1..51b5df176cc 100644
--- a/pkgs/applications/networking/ftp/filezilla/default.nix
+++ b/pkgs/applications/networking/ftp/filezilla/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, dbus, gnutls, wxGTK30, libidn, tinyxml, gettext
-, pkgconfig, xdg_utils, gtk2, sqlite }:
+, pkgconfig, xdg_utils, gtk2, sqlite, pugixml }:
 
-let version = "3.10.3"; in
+let version = "3.14.0"; in
 stdenv.mkDerivation {
   name = "filezilla-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/filezilla/FileZilla_Client/${version}/FileZilla_${version}_src.tar.bz2";
-    sha256 = "13fyg64vszq8zm1qb8g963cjar8mfz0gnymx86bvih1pjiwy4s3r";
+    sha256 = "1zbrsmrqnxzj6cnf2y1sx384nv6c8l3338ynazjfbiqbyfs5lf4j";
   };
 
   configureFlags = [
@@ -16,10 +16,10 @@ stdenv.mkDerivation {
 
   buildInputs = [
     dbus gnutls wxGTK30 libidn tinyxml gettext pkgconfig xdg_utils gtk2 sqlite
-  ];
+    pugixml ];
 
   meta = with stdenv.lib; {
-    homepage = "http://filezilla-project.org/";
+    homepage = http://filezilla-project.org/;
     description = "Graphical FTP, FTPS and SFTP client";
     license = licenses.gpl2;
     longDescription = ''
@@ -29,5 +29,6 @@ stdenv.mkDerivation {
       provided.
     '';
     platforms = platforms.linux;
+    maintainers = with maintainers; [ pSub ];
   };
 }
diff --git a/pkgs/applications/networking/ids/bro/default.nix b/pkgs/applications/networking/ids/bro/default.nix
index c3641903a75..8d6515f2dd2 100644
--- a/pkgs/applications/networking/ids/bro/default.nix
+++ b/pkgs/applications/networking/ids/bro/default.nix
@@ -1,14 +1,16 @@
-{stdenv, fetchurl, cmake, flex, bison, openssl, libpcap, perl, zlib, file, curl, geoip, gperftools }:
+{stdenv, fetchurl, cmake, flex, bison, openssl, libpcap, perl, zlib, file, curl
+, geoip, gperftools }:
 
 stdenv.mkDerivation rec {
-  name = "bro-2.3.2";
+  name = "bro-2.4";
   
   src = fetchurl {
     url = "http://www.bro.org/downloads/release/${name}.tar.gz";
-    sha256 = "16y6924brh7sw6l0nry6y4q8sif2lkcpymkd26aabdc61bdgpr9g";
+    sha256 = "1ch8w8iakr2ajbigaad70b6mfv01s2sbdqgmrqm9q9zc1c5hs33l";
   };
   
-  buildInputs = [ cmake flex bison openssl libpcap perl zlib file curl geoip gperftools ];
+  buildInputs = [ cmake flex bison openssl libpcap perl zlib file curl geoip
+   gperftools ];
 
   enableParallelBuilding = true;
   
diff --git a/pkgs/applications/networking/ids/daq/default.nix b/pkgs/applications/networking/ids/daq/default.nix
index 287a4239c2c..c4a82966238 100644
--- a/pkgs/applications/networking/ids/daq/default.nix
+++ b/pkgs/applications/networking/ids/daq/default.nix
@@ -1,16 +1,16 @@
 {stdenv, fetchurl, flex, bison, libpcap}:
 
 stdenv.mkDerivation rec {
-  name = "daq-2.0.4";
-  
+  name = "daq-2.0.5";
+
   src = fetchurl {
     name = "${name}.tar.gz";
-    url = "http://www.snort.org/downloads/snort/${name}.tar.gz";
-    sha256 = "0g15kny0s6mpqfc723jxv7mgjfh45izhwcidhjzh52fd04ysm552";
+    url = "mirror://sourceforge/snort/${name}.tar.gz";
+    sha256 = "0vdwb0r9kdlgj4g0i0swafbc7qik0zmks17mhqji8cl7hpdva13p";
   };
-  
+
   buildInputs = [ flex bison libpcap ];
-  
+
   meta = {
     description = "Data AcQuisition library (DAQ), for packet I/O";
     homepage = http://www.snort.org;
diff --git a/pkgs/applications/networking/ids/snort/default.nix b/pkgs/applications/networking/ids/snort/default.nix
index 257b676686b..ea7e0962699 100644
--- a/pkgs/applications/networking/ids/snort/default.nix
+++ b/pkgs/applications/networking/ids/snort/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
   
   src = fetchurl {
     name = "${name}.tar.gz";
-    url = "http://www.snort.org/downloads/snort/${name}.tar.gz";
+    url = "mirror://sourceforge/snort/${name}.tar.gz";
     sha256 = "1gmlrh9ygpd5h6nnrr4090wk5n2yq2yrvwi7q6xbm6lxj4rcamyv";
   };
   
diff --git a/pkgs/applications/networking/instant-messengers/amsn/default.nix b/pkgs/applications/networking/instant-messengers/amsn/default.nix
index 37c0b4a694d..770f0952e1f 100644
--- a/pkgs/applications/networking/instant-messengers/amsn/default.nix
+++ b/pkgs/applications/networking/instant-messengers/amsn/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, which, tcl, tk, x11, libpng, libjpeg, makeWrapper}:
+{stdenv, fetchurl, which, tcl, tk, xlibsWrapper, libpng, libjpeg, makeWrapper}:
 
 stdenv.mkDerivation {
   name = "amsn-0.98.9";
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
 
   configureFlags = "--with-tcl=${tcl}/lib --with-tk=${tk}/lib --enable-static";
 
-  buildInputs = [which tcl tk x11 libpng libjpeg makeWrapper];
+  buildInputs = [which tcl tk xlibsWrapper libpng libjpeg makeWrapper];
 
   postInstall = ''
     wrapProgram $out/bin/amsn --prefix PATH : ${tk}/bin
diff --git a/pkgs/applications/networking/instant-messengers/baresip/default.nix b/pkgs/applications/networking/instant-messengers/baresip/default.nix
index db24670d969..d41ba5fcdb3 100644
--- a/pkgs/applications/networking/instant-messengers/baresip/default.nix
+++ b/pkgs/applications/networking/instant-messengers/baresip/default.nix
@@ -4,11 +4,11 @@
 , gsm, speex, portaudio, spandsp, libuuid
 }:
 stdenv.mkDerivation rec {
-  version = "0.4.12";
+  version = "0.4.14";
   name = "baresip-${version}";
   src=fetchurl {
     url = "http://www.creytiv.com/pub/baresip-${version}.tar.gz";
-    sha256 = "0f4jfpyvlgvq47yha3ys3kbrpd6c20yxaqki70hl6b91jbhmq9i2";
+    sha256 = "19vn63j6dpybjy14mgnwf0yk2jbcbfdjs50whzwyrrkcv6ipj6hc";
   };
   buildInputs = [zlib openssl libre librem pkgconfig
     cairo mpg123 gstreamer gst_ffmpeg gst_plugins_base gst_plugins_bad gst_plugins_good
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     homepage = "http://www.creytiv.com/baresip.html";
     platforms = with stdenv.lib.platforms; linux;
     maintainers = with stdenv.lib.maintainers; [raskin];
-    license = with stdenv.lib.licenses; bsd3;
+    license = stdenv.lib.licenses.bsd3;
     inherit version;
     downloadPage = "http://www.creytiv.com/pub/";
     updateWalker = true;
diff --git a/pkgs/applications/networking/instant-messengers/bitlbee-facebook/default.nix b/pkgs/applications/networking/instant-messengers/bitlbee-facebook/default.nix
new file mode 100644
index 00000000000..1427cc06ce4
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/bitlbee-facebook/default.nix
@@ -0,0 +1,27 @@
+{ fetchurl, fetchFromGitHub, stdenv, bitlbee, autoconf, automake, libtool, pkgconfig, glib, json_glib }:
+
+with stdenv.lib;
+stdenv.mkDerivation rec {
+  name = "bitlbee-facebook-2015-08-27";
+
+  src = fetchFromGitHub {
+    rev = "094a11b542e2cd8fac4f00fe01870ecd1cb4c062";
+    owner = "jgeboski";
+    repo = "bitlbee-facebook";
+    sha256 = "1dvbl1z6fl3wswvqbs82vkqlggk24dyi8w7cmm5jh1fmaznmwqrl";
+  };
+
+  buildInputs = [ bitlbee autoconf automake libtool pkgconfig glib json_glib ];
+
+  preConfigure = ''
+    export BITLBEE_PLUGINDIR=$out/lib/bitlbee
+    ./autogen.sh
+  '';
+
+  meta = {
+    description = "The Facebook protocol plugin for bitlbee";
+
+    homepage = https://github.com/jgeboski/bitlbee-facebook;
+    license = licenses.gpl2Plus;
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/bitlbee/default.nix b/pkgs/applications/networking/instant-messengers/bitlbee/default.nix
index 805a47fc058..41a698be290 100644
--- a/pkgs/applications/networking/instant-messengers/bitlbee/default.nix
+++ b/pkgs/applications/networking/instant-messengers/bitlbee/default.nix
@@ -1,23 +1,32 @@
-{ fetchurl, stdenv, gnutls, glib, pkgconfig, check, libotr }:
+{ fetchurl, fetchpatch, stdenv, gnutls, glib, pkgconfig, check, libotr, python }:
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "bitlbee-3.2.2";
+  name = "bitlbee-3.4.1";
 
   src = fetchurl {
     url = "mirror://bitlbee/src/${name}.tar.gz";
-    sha256 = "13jmcxxgli82wb2n4hs091159xk8rgh7nb02f478lgpjh6996f5s";
+    sha256 = "1qf0ypa9ba5jvsnpg9slmaran16hcc5fnfzbb1sdch1hjhchn2jh";
   };
 
-  buildInputs = [ gnutls glib pkgconfig libotr ]
+  buildInputs = [ gnutls glib pkgconfig libotr python ]
     ++ optional doCheck check;
 
+  patches = [(fetchpatch {
+    url = "https://github.com/bitlbee/bitlbee/commit/34d16d5b4b5265990125894572a90493284358cd.patch";
+    sha256 = "05in9kxabb6s2c1l4b9ry58ppfciwmwzrkaq33df2zv0pr3z7w33";
+  })];
+
   configureFlags = [
     "--gcov=1"
     "--otr=1"
     "--ssl=gnutls"
   ];
 
+  buildPhase = ''
+    make install-dev
+  '';
+
   doCheck = true;
 
   meta = {
@@ -37,7 +46,7 @@ stdenv.mkDerivation rec {
     homepage = http://www.bitlbee.org/;
     license = licenses.gpl2Plus;
 
-    maintainers = with maintainers; [ wkennington ];
+    maintainers = with maintainers; [ wkennington pSub ];
     platforms = platforms.gnu;  # arbitrary choice
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/bitlbee/plugins.nix b/pkgs/applications/networking/instant-messengers/bitlbee/plugins.nix
new file mode 100644
index 00000000000..4e05e7cae97
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/bitlbee/plugins.nix
@@ -0,0 +1,20 @@
+{ stdenv, bitlbee }:
+
+with stdenv.lib;
+
+plugins:
+
+stdenv.mkDerivation {
+  inherit bitlbee plugins;
+  name = "bitlbee-plugins";
+  buildInputs = [ bitlbee plugins ];
+  phases = [ "installPhase" ];
+  installPhase = ''
+    mkdir -p $out/lib/bitlbee
+    for plugin in $plugins; do
+      for thing in $(ls $plugin/lib/bitlbee); do
+        ln -s $plugin/lib/bitlbee/$thing $out/lib/bitlbee/
+      done
+    done
+  '';
+}
diff --git a/pkgs/applications/networking/instant-messengers/blink/default.nix b/pkgs/applications/networking/instant-messengers/blink/default.nix
index 00a881c0c67..7bb14efc1bb 100644
--- a/pkgs/applications/networking/instant-messengers/blink/default.nix
+++ b/pkgs/applications/networking/instant-messengers/blink/default.nix
@@ -1,12 +1,13 @@
-{ stdenv, fetchurl, pythonPackages, pyqt4, cython, libvncserver, zlib, twisted, gnutls }:
+{ stdenv, fetchurl, pythonPackages, pyqt4, cython, libvncserver, zlib, twisted
+, gnutls, libvpx }:
 
 pythonPackages.buildPythonPackage rec {
   name = "blink-${version}";
-  version = "1.2.2";
+  version = "1.4.1";
   
   src = fetchurl {
     url = "http://download.ag-projects.com/BlinkQt/${name}.tar.gz";
-    sha256 = "0z7bhfz2775cm7c7s794s5ighp5q7fb6jn8dw025m49vlgqzr78c";
+    sha256 = "0lpc3gm0hk55m7i2hlmk2p76akcfvnqxg0hyamfhha90nv6fk7sf";
   };
 
   patches = [ ./pythonpath.patch ];
@@ -14,17 +15,21 @@ pythonPackages.buildPythonPackage rec {
     sed -i 's|@out@|'"''${out}"'|g' blink/resources.py
   '';
 
-  propagatedBuildInputs = [ pyqt4 pythonPackages.cjson pythonPackages.sipsimple twisted ];
+  propagatedBuildInputs = with pythonPackages;[ pyqt4 cjson sipsimple twisted
+    ];
 
-  buildInputs = [ cython zlib libvncserver ];
+  buildInputs = [ cython zlib libvncserver libvpx ];
 
   postInstall = ''
     wrapProgram $out/bin/blink \
-      --prefix LD_LIBRARY_PATH : ${gnutls}/lib
+      --prefix LD_LIBRARY_PATH ":" ${gnutls}/lib
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://icanblink.com/;
     description = "A state of the art, easy to use SIP client";
+    platforms = platforms.linux;
+    license = licenses.mit;
+    maintainers = with maintainers; [ pSub ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/carrier/2.5.0.nix b/pkgs/applications/networking/instant-messengers/carrier/2.5.0.nix
index 909d6404193..7368a884214 100644
--- a/pkgs/applications/networking/instant-messengers/carrier/2.5.0.nix
+++ b/pkgs/applications/networking/instant-messengers/carrier/2.5.0.nix
@@ -1,11 +1,15 @@
-args : with args; 
+args @ { fetchurl, stdenv, pkgconfig, perl, perlXMLParser, libxml2, openssl, nss
+, gtkspell, aspell, gettext, ncurses, avahi, dbus, dbus_glib, python
+, libtool, automake, autoconf, gstreamer
+, gtk, glib
+, libXScrnSaver, scrnsaverproto, libX11, xproto, kbproto, ... }: with args;
 /*
   arguments: all buildInputs
-  optional: purple2Source: purple-2 source - place to copy libpurple from 
+  optional: purple2Source: purple-2 source - place to copy libpurple from
     (to use a fresher pidgin build)
 */
-let 
-  externalPurple2 = (lib.attrByPath ["purple2Source"] null args) != null; 
+let
+  externalPurple2 = (lib.attrByPath ["purple2Source"] null args) != null;
 in
 rec {
   src = fetchurl {
@@ -16,9 +20,9 @@ rec {
   buildInputs = [gtkspell aspell
     gstreamer startupnotification
     libxml2 openssl nss
-    libXScrnSaver ncurses scrnsaverproto 
+    libXScrnSaver ncurses scrnsaverproto
     libX11 xproto kbproto GConf avahi
-    dbus dbus_glib glib python 
+    dbus dbus_glib glib python
     autoconf libtool automake];
 
   propagatedBuildInputs = [
@@ -38,11 +42,11 @@ rec {
   phaseNames = ["doConfigure" "preBuild" "doMakeInstall"]
     ++ (lib.optional externalPurple2 "postInstall")
   ;
-      
+
   name = "carrier-2.5.0";
   meta = {
     description = "PidginIM GUI fork with user-friendly development model";
-    homepage = http://funpidgin.sf.net; 
+    homepage = http://funpidgin.sf.net;
   };
 } // (if externalPurple2 then {
   postInstall = fullDepEntry (''
diff --git a/pkgs/applications/networking/instant-messengers/ekiga/default.nix b/pkgs/applications/networking/instant-messengers/ekiga/default.nix
index cae9fe294f3..b7b92315911 100644
--- a/pkgs/applications/networking/instant-messengers/ekiga/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ekiga/default.nix
@@ -15,14 +15,14 @@ stdenv.mkDerivation rec {
   buildInputs = [ cyrus_sasl gettext openldap ptlib opal libXv rarian intltool
                   perl perlXMLParser evolution_data_server gnome_doc_utils avahi
                   libsigcxx gtk dbus_glib libnotify libXext xextproto sqlite
-                  gnome3.libsoup glib gnome3.gnome_icon_theme_symbolic
-                  hicolor_icon_theme gnome3.gnome_icon_theme boost
+                  gnome3.libsoup glib gnome3.defaultIconTheme boost
                   autoreconfHook pkgconfig libxml2 videoproto unixODBC db nspr
                   nss zlib libsecret libXrandr randrproto which libxslt libtasn1
                   gmp nettle makeWrapper ];
 
   preAutoreconf = ''
     substituteInPlace configure.ac --replace AM_GCONF_SOURCE_2 ""
+    substituteInPlace configure.ac --replace gnome-icon-theme adwaita-icon-theme
   '';
 
   configureFlags = [
diff --git a/pkgs/applications/networking/instant-messengers/fuze/default.nix b/pkgs/applications/networking/instant-messengers/fuze/default.nix
index bc9246d8845..33ffe87a4ff 100644
--- a/pkgs/applications/networking/instant-messengers/fuze/default.nix
+++ b/pkgs/applications/networking/instant-messengers/fuze/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, dpkg, openssl, alsaLib, libXext, libXfixes, libXrandr
 , libjpeg, curl, libX11, libXmu, libXv, libXtst, qt4, mesa, zlib
-, gnome, libidn, rtmpdump, c-ares, openldap, makeWrapper, cacert
+, gnome, libidn, rtmpdump, c-ares, openldap, makeWrapper
 }:
 assert stdenv.system == "x86_64-linux";
 let
   curl_custom =
     stdenv.lib.overrideDerivation curl (args: { 
-      configureFlags = args.configureFlags ++ ["--with-ca-bundle=${cacert}/etc/ca-bundle.crt"] ; 
+      configureFlags = args.configureFlags ++ ["--with-ca-bundle=/etc/ssl/certs/ca-certificates.crt"] ; 
     } );
 in
 stdenv.mkDerivation {
diff --git a/pkgs/applications/networking/instant-messengers/gajim/default.nix b/pkgs/applications/networking/instant-messengers/gajim/default.nix
index fbd9954d3aa..69497f87c6b 100644
--- a/pkgs/applications/networking/instant-messengers/gajim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gajim/default.nix
@@ -22,11 +22,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "gajim-${version}";
-  version = "0.16.1";
+  version = "0.16.3";
 
   src = fetchurl {
     url = "http://www.gajim.org/downloads/0.16/gajim-${version}.tar.bz2";
-    sha256 = "1gp8mdn6sz2pks5irsf563zbz98ldqksfky84ga9fzqndmq35bi6";
+    sha256 = "05a59hf9wna6n9fi0a4bhz1hifqj21bwb4ff9rd0my23rdwmij51";
   };
 
   patches = [
diff --git a/pkgs/applications/networking/instant-messengers/hipchat/default.nix b/pkgs/applications/networking/instant-messengers/hipchat/default.nix
index b9f9667ad3b..6dc0df03eef 100644
--- a/pkgs/applications/networking/instant-messengers/hipchat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/hipchat/default.nix
@@ -1,27 +1,27 @@
-{ stdenv, fetchurl, libtool, xlibs, freetype, fontconfig, openssl, glib
+{ stdenv, fetchurl, libtool, xorg, freetype, fontconfig, openssl, glib
 , mesa, gstreamer, gst_plugins_base, dbus, alsaLib, zlib, libuuid
 , libxml2, libxslt, sqlite, libogg, libvorbis, xz, libcanberra
 , makeWrapper, libredirect, xkeyboard_config, xcbutilkeysyms }:
 
 let
 
-  version = "2.2.1287";
+  version = "2.2.1388";
 
   rpath = stdenv.lib.makeSearchPath "lib" [
     stdenv.glibc
     libtool
-    xlibs.libXext
-    xlibs.libSM
-    xlibs.libICE
-    xlibs.libX11
-    xlibs.libXft
-    xlibs.libXau
-    xlibs.libXdmcp
-    xlibs.libXrender
-    xlibs.libXfixes
-    xlibs.libXcomposite
-    xlibs.libxcb
-    xlibs.libXi
+    xorg.libXext
+    xorg.libSM
+    xorg.libICE
+    xorg.libX11
+    xorg.libXft
+    xorg.libXau
+    xorg.libXdmcp
+    xorg.libXrender
+    xorg.libXfixes
+    xorg.libXcomposite
+    xorg.libxcb
+    xorg.libXi
     freetype
     fontconfig
     openssl
@@ -47,12 +47,12 @@ let
     if stdenv.system == "x86_64-linux" then
       fetchurl {
         url = "http://downloads.hipchat.com/linux/arch/x86_64/hipchat-${version}-x86_64.pkg.tar.xz";
-        sha256 = "170izy3v18rgriz84h4gyf9354jvjrsbkgg53czq9l0scyz8x55b";
+        sha256 = "18vl0c7xgyzd2miwkfzc638z0wzszgsdlbnslkkvxmg95ykdrdnz";
       }
     else if stdenv.system == "i686-linux" then
       fetchurl {
         url = "http://downloads.hipchat.com/linux/arch/i686/hipchat-${version}-i686.pkg.tar.xz";
-        sha256 = "150q7pxg5vs14is5qf36yfsf7r70g49q9xr1d1rknmc5m4qa5rc5";
+        sha256 = "12q8hf3gmcgrqg6v9xqyknwsmwywpwm76jc54sfniiqv5ngq24hl";
       }
     else
       throw "HipChat is not supported on ${stdenv.system}";
@@ -92,10 +92,11 @@ stdenv.mkDerivation {
     mv opt/HipChat/bin/linuxbrowserlaunch $out/libexec/hipchat/bin/
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Desktop client for HipChat services";
     homepage = http://www.hipchat.com;
-    license = stdenv.lib.licenses.unfree;
+    license = licenses.unfree;
     platforms = [ "i686-linux" "x86_64-linux" ];
+    maintainers = with maintainers; [ jgeerds ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/jitsi/default.nix b/pkgs/applications/networking/instant-messengers/jitsi/default.nix
index e6dd6569a55..d7b98d535af 100644
--- a/pkgs/applications/networking/instant-messengers/jitsi/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jitsi/default.nix
@@ -1,15 +1,21 @@
-{ stdenv, fetchurl, makeDesktopItem, unzip, ant, jdk }:
+{ stdenv, lib, fetchurl, makeDesktopItem, unzip, ant, jdk
+# Optional, Jitsi still runs without, but you may pass null:
+, alsaLib, dbus_libs, gtk2, libpulseaudio, openssl, xorg
+}:
+
+assert stdenv.isLinux;
 
 stdenv.mkDerivation rec {
 
   name = "jitsi-${version}";
-  version = "2.4.4997";
+  version = "2.8.5426";
 
   src = fetchurl {
     url = "https://download.jitsi.org/jitsi/src/jitsi-src-${version}.zip";
-    sha256 = "f1c2688d7d6bf1916fed3b8b105a785662980c5b297dcab3c9e7d272647ef825";
+    sha256 = "0v7k16in2i57z5amr7k5c3fc8f0azrzrs5dvn729bwbc31z8cjg6";
   };
 
+
   patches = [ ./jitsi.patch ];
 
   jitsiItem = makeDesktopItem {
@@ -21,6 +27,21 @@ stdenv.mkDerivation rec {
     categories = "Application;Internet;";
   };
 
+  libPath = lib.makeLibraryPath ([
+    stdenv.cc.cc  # For libstdc++.
+  ] ++ lib.filter (x: x != null) [
+    alsaLib
+    dbus_libs
+    gtk2
+    libpulseaudio
+    openssl
+  ] ++ lib.optionals (xorg != null) [
+    xorg.libX11
+    xorg.libXext
+    xorg.libXScrnSaver
+    xorg.libXv
+  ]);
+
   buildInputs = [unzip ant jdk];
 
   buildPhase = ''ant make'';
@@ -28,19 +49,29 @@ stdenv.mkDerivation rec {
   installPhase = ''
     mkdir -p $out
     cp -a lib $out/
+    rm -rf $out/lib/native/solaris
     cp -a sc-bundles $out/
     mkdir $out/bin
     cp resources/install/generic/run.sh $out/bin/jitsi
     chmod +x $out/bin/jitsi
-    sed -i 's| java | ${jdk}/bin/java |' $out/bin/jitsi
+    substituteInPlace $out/bin/jitsi \
+        --subst-var-by JAVA ${jdk}/bin/java \
+        --subst-var-by EXTRALIBS ${gtk2}/lib
     patchShebangs $out
+
+    libPath="$libPath:${jdk.jre.home}/lib/${jdk.architecture}"
+    find $out/ -type f -name '*.so' | while read file; do
+      patchelf --set-rpath "$libPath" "$file" && \
+          patchelf --shrink-rpath "$file"
+    done
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://jitsi.org/;
     description = "Open Source Video Calls and Chat";
-    license = stdenv.lib.licenses.lgpl21Plus.shortName;
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.lgpl21Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.khumba ];
   };
 
 }
diff --git a/pkgs/applications/networking/instant-messengers/jitsi/jitsi.patch b/pkgs/applications/networking/instant-messengers/jitsi/jitsi.patch
index 9163cecd175..9db7ec368b0 100644
--- a/pkgs/applications/networking/instant-messengers/jitsi/jitsi.patch
+++ b/pkgs/applications/networking/instant-messengers/jitsi/jitsi.patch
@@ -7,7 +7,7 @@
 +
 +#mkdir -p $HOME/.sip-communicator/log
 +
-+cd "$( dirname "$( dirname "${BASH_SOURCE[0]}" )" )"
++cd "$(dirname "$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")")"
  
  # Get architecture
  ARCH=`uname -m | sed -e s/x86_64/64/ -e s/i.86/32/`
@@ -24,4 +24,4 @@
  
  export PATH=$PATH:native
 -java $CLIENTARGS -classpath "lib/felix.jar:sc-bundles/sc-launcher.jar:sc-bundles/util.jar:lib/" -Djava.library.path=native -Dfelix.config.properties=file:./lib/felix.client.run.properties -Djava.util.logging.config.file=lib/logging.properties net.java.sip.communicator.launcher.SIPCommunicator
-+exec java $CLIENTARGS -classpath "lib/felix.jar:sc-bundles/sc-launcher.jar:sc-bundles/util.jar:lib/" -Djava.library.path=$NATIVELIBS -Dfelix.config.properties=file:lib/felix.client.run.properties -Djava.util.logging.config.file=lib/logging.properties net.java.sip.communicator.launcher.SIPCommunicator
++LD_LIBRARY_PATH=@EXTRALIBS@ exec @JAVA@ $CLIENTARGS -classpath "lib/felix.jar:sc-bundles/sc-launcher.jar:sc-bundles/util.jar:lib/" -Djava.library.path=$NATIVELIBS -Dfelix.config.properties=file:lib/felix.client.run.properties -Djava.util.logging.config.file=lib/logging.properties net.java.sip.communicator.launcher.SIPCommunicator
diff --git a/pkgs/applications/networking/instant-messengers/linphone/default.nix b/pkgs/applications/networking/instant-messengers/linphone/default.nix
index f9bd941b2f6..c894a49c20e 100644
--- a/pkgs/applications/networking/instant-messengers/linphone/default.nix
+++ b/pkgs/applications/networking/instant-messengers/linphone/default.nix
@@ -1,14 +1,15 @@
 { stdenv, fetchurl, intltool, pkgconfig, readline, openldap, cyrus_sasl, libupnp
 , zlib, libxml2, gtk2, libnotify, speex, ffmpeg, libX11, polarssl, libsoup, udev
 , ortp, mediastreamer, sqlite, belle-sip, libosip, libexosip
+, mediastreamer-openh264, makeWrapper
 }:
 
 stdenv.mkDerivation rec {
-  name = "linphone-3.8.1";
+  name = "linphone-3.8.5";
 
   src = fetchurl {
     url = "mirror://savannah/linphone/3.8.x/sources/${name}.tar.gz";
-    sha256 = "19xwar8z5hyp1bap1s437ipv90gspmjwcq5zznds55d7r6gbqicd";
+    sha256 = "10brlbwkk61nhd5v2sim1vfv11xm138l1cqqh3imhs2sigmzzlax";
   };
 
   buildInputs = [
@@ -16,7 +17,7 @@ stdenv.mkDerivation rec {
     polarssl libsoup udev ortp mediastreamer sqlite belle-sip libosip libexosip
   ];
 
-  nativeBuildInputs = [ intltool pkgconfig ];
+  nativeBuildInputs = [ intltool pkgconfig makeWrapper ];
 
   configureFlags = [
     "--enable-ldap"
@@ -27,6 +28,12 @@ stdenv.mkDerivation rec {
     "--enable-external-mediastreamer"
   ];
 
+  postInstall = ''
+    for i in $(cd $out/bin && ls); do
+      wrapProgram $out/bin/$i --set MEDIASTREAMER_PLUGINS_DIR ${mediastreamer-openh264}/lib/mediastreamer/plugins
+    done
+  '';
+
   meta = with stdenv.lib; {
     homepage = http://www.linphone.org/;
     description = "Open Source video SIP softphone";
diff --git a/pkgs/applications/networking/instant-messengers/linphone/fix-deprecated.patch b/pkgs/applications/networking/instant-messengers/linphone/fix-deprecated.patch
deleted file mode 100644
index 8978e6e6652..00000000000
--- a/pkgs/applications/networking/instant-messengers/linphone/fix-deprecated.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-diff --git a/gtk/main.c b/gtk/main.c
-index 7079bc8..f076127 100644
---- a/gtk/main.c
-+++ b/gtk/main.c
-@@ -1643,7 +1643,7 @@ int main(int argc, char *argv[]){
- 	GdkPixbuf *pbuf;
- 	const char *app_name="Linphone";
- 
--	g_thread_init(NULL);
-+	g_type_init();
- 	gdk_threads_init();
- 	
- 	progpath = strdup(argv[0]);
-diff --git a/gtk/setupwizard.c b/gtk/setupwizard.c
-index 1c54fca..45c9091 100644
---- a/gtk/setupwizard.c
-+++ b/gtk/setupwizard.c
-@@ -270,7 +270,7 @@ static void account_username_changed(GtkEntry *entry, GtkWidget *w) {
- 	linphone_account_creator_set_username(creator, gtk_entry_get_text(username));
- 
- 	if (g_regex_match_simple("^[a-zA-Z]+[a-zA-Z0-9.\\-_]{3,}$", gtk_entry_get_text(username), 0, 0)) {
--		g_thread_create(check_username_availability, (void*)w, FALSE, NULL);
-+		g_thread_new (NULL, check_username_availability, (void*)w);
- 	}
- 	else {
- 		if (gtk_entry_get_text_length(username) < LOGIN_MIN_SIZE) {
-@@ -534,7 +534,7 @@ GtkWidget * linphone_gtk_create_assistant(void){
- 	ok = create_pixbuf(linphone_gtk_get_ui_config("ok","ok.png"));
- 	notok = create_pixbuf(linphone_gtk_get_ui_config("notok","notok.png"));
- 
--	g_thread_init (NULL);
-+	g_type_init ();
- 	gdk_threads_init ();
- 
- 	GtkWidget *p1=create_intro();
diff --git a/pkgs/applications/networking/instant-messengers/mcabber/default.nix b/pkgs/applications/networking/instant-messengers/mcabber/default.nix
index 6c7e4797841..ef6ce6076d9 100644
--- a/pkgs/applications/networking/instant-messengers/mcabber/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mcabber/default.nix
@@ -4,16 +4,18 @@
 
 stdenv.mkDerivation rec {
   name = "mcabber-${version}";
-  version = "0.10.3";
+  version = "1.0.0";
 
   src = fetchurl {
     url = "http://mcabber.com/files/mcabber-${version}.tar.bz2";
-    sha256 = "0vgsqw6yn0lzzcnr4fql4ycgf3gwqj6w4p0l4nqnvhkc94w62ikp";
+    sha256 = "0ckh2l5fbnykzbvdrqjwd1ppalaifb79nnizh8kra2sy76xbqxjl";
   };
 
   buildInputs = [ openssl ncurses pkgconfig glib loudmouth libotr gpgme ];
 
   configureFlags = "--with-openssl=${openssl} --enable-modules --enable-otr";
+
+  doCheck = true;
   
   meta = with stdenv.lib; {
     homepage = http://mcabber.com/;
diff --git a/pkgs/applications/networking/instant-messengers/oneteam/default.nix b/pkgs/applications/networking/instant-messengers/oneteam/default.nix
index 14d01de3245..2ab0930842b 100644
--- a/pkgs/applications/networking/instant-messengers/oneteam/default.nix
+++ b/pkgs/applications/networking/instant-messengers/oneteam/default.nix
@@ -1,6 +1,6 @@
 x@{builderDefsPackage
   , fetchgit, perl, xulrunner, cmake, perlPackages, zip, unzip, pkgconfig
-  , pulseaudio, glib, gtk, pixman, nspr, nss, libXScrnSaver, scrnsaverproto
+  , libpulseaudio, glib, gtk, pixman, nspr, nss, libXScrnSaver, scrnsaverproto
   , ...}:
 builderDefsPackage
 (a :  
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix
index c290975152c..7b80ec85661 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libotr pidgin intltool ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.cypherpunks.ca/otr;
+    homepage = https://otr.cypherpunks.ca/;
     description = "Plugin for Pidgin 2.x which implements OTR Messaging";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/default.nix
index 586ce26e8c9..4a5522039c8 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/default.nix
@@ -27,6 +27,6 @@ stdenv.mkDerivation {
     description = "LaTeX rendering plugin for Pidgin IM";
     license = licenses.gpl2;
     platforms = platforms.linux;
-    maintainers = maintainers.abbradar;
+    maintainers = with maintainers; [ abbradar ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix
new file mode 100644
index 00000000000..ba7396db9d6
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchgit, pkgconfig, pidgin } :
+
+let
+  version = "54b2992";
+in
+stdenv.mkDerivation rec {
+  name = "pidgin-mra-${version}";
+
+  src = fetchgit {
+    url = "https://github.com/dreadatour/pidgin-mra";
+    rev = "${version}";
+    sha256 = "1nhfx9gi5lhh2xjr9rw600bb53ly2nwiqq422vc0f297qkm1q9y0";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ pidgin ];
+
+  preConfigure = ''
+    sed -i 's|-I/usr/include/libpurple|$(shell pkg-config --cflags purple)|' Makefile
+    export DESTDIR=$out
+    export LIBDIR=/lib
+    export DATADIR=/share
+  '';
+
+  meta = {
+    homepage = https://github.com/dreadatour/pidgin-mra;
+    description = "Mail.ru Agent plugin for Pidgin / libpurple";
+    license = stdenv.lib.licenses.gpl2;
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix
new file mode 100644
index 00000000000..e03b61b6182
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub, pidgin, unzip, glib, json_glib, nss, nspr, libgnome_keyring } :
+
+stdenv.mkDerivation rec {
+  name = "pidgin-opensteamworks-${version}";
+  version = "1.6.1";
+
+  src = fetchFromGitHub {
+    owner = "EionRobb";
+    repo = "pidgin-opensteamworks";
+    rev = "${version}";
+    sha256 = "6ab27831e454ad3b440e4f06b52e0b3671a4f8417ba4da3ab6f56c56d82cc29b";
+  };
+
+  preConfigure = "cd steam-mobile";
+  postInstall = ''
+    mkdir -p $out/lib/pidgin/
+    mkdir -p $out/share/pixmaps/pidgin/protocols/
+    cp libsteam.so $out/lib/pidgin/
+    unzip releases/icons.zip -d $out/share/pixmaps/pidgin/protocols/
+  '';
+
+  buildInputs = [ pidgin unzip glib json_glib nss nspr libgnome_keyring ];
+
+  meta = with stdenv.lib; {
+    homepage = https://code.google.com/p/pidgin-opensteamworks;
+    description = "Plugin for Pidgin 2.x which implements Steam Friends/Steam IM compatibility";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainters = with maintainers; [ arobyn ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-vk-plugin/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-vk-plugin/default.nix
new file mode 100644
index 00000000000..0a96d8749ae
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-vk-plugin/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchhg, pidgin, cmake, libxml2 } :
+
+let
+  version = "40ddb6d";
+in
+stdenv.mkDerivation rec {
+  name = "purple-vk-plugin-${version}";
+
+  src = fetchhg {
+    url = "https://bitbucket.org/olegoandreev/purple-vk-plugin";
+    rev = "${version}";
+    sha256 = "02p57fgx8ml00cbrb4f280ak2802svz80836dzk9f1zwm1bcr2qc";
+  };
+
+  buildInputs = [ pidgin cmake libxml2 ];
+
+  preConfigure = ''
+    sed -i -e 's|DESTINATION.*PURPLE_PLUGIN_DIR}|DESTINATION lib/purple-2|' CMakeLists.txt
+  '';
+
+  cmakeFlags = "-DCMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT=1";
+
+  meta = {
+    homepage = https://bitbucket.org/olegoandreev/purple-vk-plugin;
+    description = "Vk (russian social network) plugin for Pidgin / libpurple";
+    license = stdenv.lib.licenses.gpl3;
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/sipe/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/sipe/default.nix
index b387ed350af..36be2517fbd 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/sipe/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/sipe/default.nix
@@ -1,13 +1,13 @@
-{ stdenv, fetchurl, pidgin, intltool, libxml2 }:
+{ stdenv, fetchurl, pidgin, intltool, libxml2, nss, nspr }:
 
-let version = "1.18.1"; in
+let version = "1.20.0"; in
 
 stdenv.mkDerivation {
   name = "pidgin-sipe-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/sipe/pidgin-sipe-${version}.tar.gz";
-    sha256 = "18ch7jpi7ki7xlpahi88xrnmnhc6dcq4hafm0z6d5nfjfp8ldal5";
+    sha256 = "14d8q9by531hfssm6ydn75xkgidka3ar4sy3czjdb03s1ps82srs";
   };
 
   meta = with stdenv.lib; {
@@ -19,5 +19,6 @@ stdenv.mkDerivation {
 
   postInstall = "find $out -ls; ln -s \$out/lib/purple-2 \$out/share/pidgin-sipe";
 
-  buildInputs = [pidgin intltool libxml2];
+  buildInputs = [ pidgin intltool libxml2 nss nspr ];
+
 }
diff --git a/pkgs/applications/networking/instant-messengers/profanity/default.nix b/pkgs/applications/networking/instant-messengers/profanity/default.nix
index 1a9f8f8feab..ac4776c2072 100644
--- a/pkgs/applications/networking/instant-messengers/profanity/default.nix
+++ b/pkgs/applications/networking/instant-messengers/profanity/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, automake, autoconf, pkgconfig, glib, openssl, expat
-, ncurses, libotr, curl, libstrophe
+, ncurses, libotr, curl, libstrophe, readline, libuuid
 
 , autoAwaySupport ? false, libXScrnSaver ? null, libX11 ? null
 , notifySupport ? false,   libnotify ? null, gdk_pixbuf ? null
@@ -12,15 +12,15 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "profanity-${version}";
-  version = "0.4.6";
+  version = "0.4.7";
 
   src = fetchurl {
     url = "http://www.profanity.im/profanity-${version}.tar.gz";
-    sha256 = "17ra53c1m0w0lzm5bj63y1ysx8bv119z5h0csisxsn4r85z6cwln";
+    sha256 = "1p8ixvxacvf63r6lnf6iwlyz4pgiyp6widna1h2l2jg8kw14wb5h";
   };
 
   buildInputs = [
-    automake autoconf pkgconfig
+    automake autoconf pkgconfig readline libuuid
     glib openssl expat ncurses libotr curl libstrophe
   ] ++ optionals autoAwaySupport [ libXScrnSaver libX11 ]
     ++ optionals notifySupport   [ libnotify gdk_pixbuf ];
diff --git a/pkgs/applications/networking/instant-messengers/qtox/default.nix b/pkgs/applications/networking/instant-messengers/qtox/default.nix
index 9771f29c770..170702e44d1 100644
--- a/pkgs/applications/networking/instant-messengers/qtox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/qtox/default.nix
@@ -1,51 +1,60 @@
-{ stdenv, fetchFromGitHub, pkgconfig, libtoxcore, qt5, openalSoft, opencv
-, libsodium, libXScrnSaver }:
+{ stdenv, fetchgit, pkgconfig, libtoxcore-dev, qt5, openal, opencv,
+  libsodium, libXScrnSaver, glib, gdk_pixbuf, gtk2, cairo,
+  pango, atk, qrencode, ffmpeg, filter-audio, makeWrapper }:
 
 let
+  revision = "1673b43e26c853f6446f228fec083af166cbf446";
+in
 
-  filteraudio = stdenv.mkDerivation rec {
-    name = "filter_audio-20150128";
+stdenv.mkDerivation rec {
+  name = "qtox-dev-20150925";
 
-    src = fetchFromGitHub {
-      owner = "irungentoo";
-      repo = "filter_audio";
-      rev = "76428a6cda";
-      sha256 = "0c4wp9a7dzbj9ykfkbsxrkkyy0nz7vyr5map3z7q8bmv9pjylbk9";
-    };
-
-    doCheck = false;
-
-    makeFlags = "PREFIX=$(out)";
-  };
-
-in stdenv.mkDerivation rec {
-  name = "qtox-dev-20150130";
-
-  src = fetchFromGitHub {
-    owner = "tux3";
-    repo = "qTox";
-    rev = "7574569b3d";
-    sha256 = "0a7zkhl4w2r5ifzs7vwws2lpplp6q5c4jllyf4ld64njgiz6jzip";
+  src = fetchgit {
+      url = "https://github.com/tux3/qTox.git";
+      rev = "${revision}";
+      md5 = "785f5b305cdcdf777d93ee823a5b9f49";
   };
 
   buildInputs =
     [
-      libtoxcore openalSoft opencv libsodium filteraudio
-      qt5.base qt5.tools libXScrnSaver
+      libtoxcore-dev openal opencv libsodium filter-audio
+      qt5.base qt5.tools libXScrnSaver glib gtk2 cairo
+      pango atk qrencode ffmpeg qt5.translations makeWrapper
     ];
+
   nativeBuildInputs = [ pkgconfig ];
 
-  configurePhase = "qmake";
+  preConfigure = ''
+    # patch .pro file for proper set of the git hash
+    sed -i '/git rev-parse/d' qtox.pro
+    sed -i 's/$$quote($$GIT_VERSION)/${revision}/' qtox.pro
+    # since .pro have hardcoded paths, we need to explicitly set paths here
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE $(pkg-config --cflags glib-2.0)"
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE $(pkg-config --cflags gdk-pixbuf-2.0)"
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE $(pkg-config --cflags gtk+-2.0)"
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE $(pkg-config --cflags cairo)"
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE $(pkg-config --cflags pango)"
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE $(pkg-config --cflags atk)"
+  '';
+
+  configurePhase = ''
+    runHook preConfigure
+    qmake
+  '';
 
   installPhase = ''
     mkdir -p $out/bin
     cp qtox $out/bin
+    wrapProgram $out/bin/qtox \
+      --prefix QT_PLUGIN_PATH : ${qt5.svg}/lib/qt5/plugins
   '';
 
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
-    description = "QT Tox client";
+    description = "Qt Tox client";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ viric jgeerds ];
+    maintainers = with maintainers; [ viric jgeerds akaWolf ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/sflphone/default.nix b/pkgs/applications/networking/instant-messengers/sflphone/default.nix
index fb14782ef9f..8b259c90fe5 100644
--- a/pkgs/applications/networking/instant-messengers/sflphone/default.nix
+++ b/pkgs/applications/networking/instant-messengers/sflphone/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, libyaml, alsaLib, openssl, libuuid, pkgconfig, pulseaudio, libsamplerate
+{ stdenv, fetchurl, libyaml, alsaLib, openssl, libuuid, pkgconfig, libpulseaudio, libsamplerate
 , commoncpp2, ccrtp, libzrtpcpp, dbus, dbus_cplusplus, expat, pcre, gsm, speex, ilbc, libopus
 , autoconf, automake, libtool, gettext, perl
 , cmake, qt4
@@ -43,7 +43,7 @@ rec {
     configureFlags = "--with-expat --with-expat-inc=${expat}/include " +
       "--with-expat-lib=-lexpat --with-opus ";
 
-    buildInputs = [ libyaml alsaLib openssl libuuid pkgconfig pulseaudio libsamplerate 
+    buildInputs = [ libyaml alsaLib openssl libuuid pkgconfig libpulseaudio libsamplerate
       commoncpp2 ccrtp libzrtpcpp dbus dbus_cplusplus expat pcre gsm speex ilbc libopus
       autoconf automake libtool gettext perl ];
   };
diff --git a/pkgs/applications/networking/instant-messengers/skype/default.nix b/pkgs/applications/networking/instant-messengers/skype/default.nix
index 218e7303807..1e84e015bc1 100644
--- a/pkgs/applications/networking/instant-messengers/skype/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skype/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, libXv, libXi, libXrender, libXrandr, zlib, glib
 , libXext, libX11, libXScrnSaver, libSM, qt4, libICE, freetype, fontconfig
-, pulseaudio, lib, ... }:
+, libpulseaudio, lib, ... }:
 
 assert stdenv.system == "i686-linux";
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     libXi
     libXrender
     libXrandr
-    pulseaudio
+    libpulseaudio
     freetype
     fontconfig
     zlib
diff --git a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix b/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
index df4f7054ad3..ece4b9f0e01 100644
--- a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
+++ b/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, makeWrapper, zlib, glib, libpng, freetype, xorg
-, fontconfig, xlibs, qt5, xkeyboard_config, alsaLib, pulseaudio ? null
-, libredirect, quazip, less, which
+{ stdenv, fetchurl, makeWrapper, makeDesktopItem, zlib, glib, libpng, freetype
+, xorg, fontconfig, qt5, xkeyboard_config, alsaLib, libpulseaudio ? null
+, libredirect, quazip, less, which, unzip
 }:
 
 let
@@ -12,9 +12,19 @@ let
   deps =
     [ zlib glib libpng freetype xorg.libSM xorg.libICE xorg.libXrender
       xorg.libXrandr xorg.libXfixes xorg.libXcursor xorg.libXinerama
-      xlibs.libxcb fontconfig xorg.libXext xorg.libX11 alsaLib qt5.base pulseaudio
+      xorg.libxcb fontconfig xorg.libXext xorg.libX11 alsaLib qt5.base libpulseaudio
     ];
 
+  desktopItem = makeDesktopItem {
+    name = "teamspeak";
+    exec = "ts3client";
+    icon = "teamspeak";
+    comment = "The TeamSpeak voice communication tool";
+    desktopName = "TeamSpeak";
+    genericName = "TeamSpeak";
+    categories = "Network";
+  };
+
 in
 
 stdenv.mkDerivation rec {
@@ -33,7 +43,13 @@ stdenv.mkDerivation rec {
                 else "1b3nbvfpd8lx3dig8z5yk6zjkbmsy6y938dhj1f562wc8adixciz";
   };
 
-  buildInputs = [ makeWrapper less which ];
+  # grab the plugin sdk for the desktop icon
+  pluginsdk = fetchurl {
+    url = "http://dl.4players.de/ts/client/pluginsdk/pluginsdk_3.0.16.zip";
+    sha256 = "1qpqpj3r21wff3ly9ail4l6b57pcqycsh2hca926j14sdlvpv7kl";
+  };
+
+  buildInputs = [ makeWrapper less which unzip ];
 
   unpackPhase =
     ''
@@ -62,6 +78,12 @@ stdenv.mkDerivation rec {
       mkdir -p $out/lib/teamspeak
       mv * $out/lib/teamspeak/
 
+      # Make a desktop item
+      mkdir -p $out/share/applications/ $out/share/icons/
+      unzip ${pluginsdk}
+      cp pluginsdk/docs/client_html/images/logo.png $out/share/icons/teamspeak.png
+      cp ${desktopItem}/share/applications/* $out/share/applications/
+
       # Make a symlink to the binary from bin.
       mkdir -p $out/bin/
       ln -s $out/lib/teamspeak/ts3client $out/bin/ts3client
diff --git a/pkgs/applications/networking/instant-messengers/telegram-cli/default.nix b/pkgs/applications/networking/instant-messengers/telegram-cli/default.nix
index 812f00829e2..b5bd22f8877 100644
--- a/pkgs/applications/networking/instant-messengers/telegram-cli/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram-cli/default.nix
@@ -1,28 +1,29 @@
-{ stdenv, fetchgit, libconfig, lua5_2, openssl, readline, zlib
+{ stdenv, fetchgit, bash, libconfig, libevent, openssl,
+  readline, zlib, lua5_2, python, pkgconfig, jansson
 }:
 
 stdenv.mkDerivation rec {
-  name = "telegram-cli";
+  name = "telegram-cli-2015-07-30";
 
   src = fetchgit {
     url = "https://github.com/vysheng/tg.git";
-    rev = "ac6079a00ac66bb37a3179a82af130b41ec39bc9";
-    sha256 = "1rpwnyzmqk7p97n5pd00m5c6rypc39mb3hs94qxxrdcpwpgcb73q";
+    sha256 = "0phn9nl0sf2fylzfwi427xq60cfrnpsvhh8bp55y1wcjkmp0fxsn";
+    rev = "2052f4b381337d75e783facdbfad56b04dec1a9c";
   };
 
-  buildInputs = [ libconfig lua5_2 openssl readline zlib ];
-
-  NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations"; # CPPFunction
-
+  buildInputs = [
+    libconfig libevent openssl readline zlib
+    lua5_2 python pkgconfig jansson
+  ];
   installPhase = ''
     mkdir -p $out/bin
-    cp ./telegram $out/bin/telegram-wo-key
-    cp ./tg.pub $out/
-    cat > $out/bin/telegram <<EOF
-    #!/usr/bin/env bash
-    $out/bin/telegram-wo-key -k $out/tg.pub
+    cp ./bin/telegram-cli $out/bin/telegram-wo-key
+    cp ./tg-server.pub $out/
+    cat > $out/bin/telegram-cli <<EOF
+    #!${bash}/bin/sh
+    $out/bin/telegram-wo-key -k $out/tg-server.pub "\$@"
     EOF
-    chmod +x $out/bin/telegram
+    chmod +x $out/bin/telegram-cli
   '';
 
   meta = {
@@ -30,5 +31,6 @@ stdenv.mkDerivation rec {
     homepage = https://telegram.org/;
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.jagajaga ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix
index e8e76c10ea5..971a834f409 100644
--- a/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libxml2 dbus_glib sqlite libsoup libnice telepathy_glib gnutls ]
     ++ stdenv.lib.optional doCheck dbus_daemon;
 
-  configureFlags = "--with-ca-certificates=/etc/ssl/certs/ca-bundle.crt";
+  configureFlags = "--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt";
 
   enableParallelBuilding = true;
   doCheck = true;
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/kde/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/kde/default.nix
index 564952480f2..532d68ad660 100644
--- a/pkgs/applications/networking/instant-messengers/telepathy/kde/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telepathy/kde/default.nix
@@ -1,12 +1,19 @@
-{ stdenv, fetchurl, fetchgit, telepathy_qt, kdelibs, kde_workspace, gettext, dbus_libs, farstream
-, pkgconfigUpstream , qt_gstreamer1, telepathy_glib, telepathy_logger, qjson, flex, bison, qca2 }:
+{ stdenv, fetchurl, fetchgit, automoc4, cmake, gettext, perl, pkgconfig
+, telepathy_qt, kdelibs, kde_workspace, dbus_glib, dbus_libs, farstream
+, qt_gstreamer1, telepathy_glib, telepathy_logger
+, qjson, flex, bison, qca2 }:
 
 let
-  pkgconfig = pkgconfigUpstream;
   version = "0.8.80";
   manifest = import (./. + "/${version}.nix");
 
   overrides = {
+    call_ui = x : x // {
+      NIX_CFLAGS_COMPILE =
+        "-I${telepathy_glib}/include/telepathy-1.0"
+        + " -I${dbus_glib}/include/dbus-1.0"
+        + " -I${dbus_libs}/include/dbus-1.0";
+    };
     telepathy_logger_qt = x : x // {
       NIX_CFLAGS_COMPILE = "-I${dbus_libs}/include/dbus-1.0";
     };
@@ -38,7 +45,9 @@ let
           inherit sha256;
         };
 
-        nativeBuildInputs = [ gettext pkgconfig ] ++ (stdenv.lib.attrByPath [ key ] [] extraNativeBuildInputs);
+        nativeBuildInputs =
+          [ automoc4 cmake gettext perl pkgconfig ]
+          ++ (stdenv.lib.attrByPath [ key ] [] extraNativeBuildInputs);
         buildInputs = [ kdelibs telepathy_qt ]
           ++ stdenv.lib.optional (name != "ktp-common-internals") ktp.common_internals
           ++ (stdenv.lib.attrByPath [ key ] [] extraBuildInputs);
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/salut/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/salut/default.nix
index b1341af7a9d..5e4ad860687 100644
--- a/pkgs/applications/networking/instant-messengers/telepathy/salut/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telepathy/salut/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, libxslt, glib, libxml2, telepathy_glib, avahi, libsoup
-, libuuid, gnutls, sqlite, pkgconfigUpstream }:
+, libuuid, openssl, sqlite, pkgconfigUpstream }:
 
 stdenv.mkDerivation rec {
   pname = "telepathy-salut";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "13k112vrr3zghzr03pnbqc1id65qvpj0sn0virlbf4dmr2511fbh";
   };
 
-  buildInputs = [ glib libxml2 telepathy_glib avahi libsoup libuuid gnutls
+  buildInputs = [ glib libxml2 telepathy_glib avahi libsoup libuuid openssl
     sqlite ];
 
   nativeBuildInputs = [ libxslt pkgconfigUpstream ];
diff --git a/pkgs/applications/networking/instant-messengers/tkabber/default.nix b/pkgs/applications/networking/instant-messengers/tkabber/default.nix
index 2b3703bc279..f9209f28cf2 100644
--- a/pkgs/applications/networking/instant-messengers/tkabber/default.nix
+++ b/pkgs/applications/networking/instant-messengers/tkabber/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, tcl, tk, tcllib, tcltls, tclgpg
-, bwidget, makeWrapper, x11
+, bwidget, makeWrapper, xlibsWrapper
 , withSitePlugins ? true
 , theme ? null
 }:
@@ -43,7 +43,7 @@ in mkTkabber (main // {
   postPatch = ''
     substituteInPlace login.tcl --replace \
       "custom::defvar loginconf(sslcacertstore) \"\"" \
-      "custom::defvar loginconf(sslcacertstore) \$env(OPENSSL_X509_CERT_FILE)"
+      "custom::defvar loginconf(sslcacertstore) \$env(SSL_CERT_FILE)"
   '' + optionalString (theme != null) ''
     themePath="$out/share/doc/tkabber/examples/xrdb/${theme}.xrdb"
     sed -i '/^if.*load_default_xrdb/,/^}$/ {
@@ -62,7 +62,7 @@ in mkTkabber (main // {
     done
   '';
 
-  buildInputs = [ tcl tk x11 makeWrapper ] ++ tclLibraries;
+  buildInputs = [ tcl tk xlibsWrapper makeWrapper ] ++ tclLibraries;
 
   meta = {
     homepage = "http://tkabber.jabber.ru/";
diff --git a/pkgs/applications/networking/instant-messengers/viber/default.nix b/pkgs/applications/networking/instant-messengers/viber/default.nix
index d268cbc55cf..8e07bbf975b 100644
--- a/pkgs/applications/networking/instant-messengers/viber/default.nix
+++ b/pkgs/applications/networking/instant-messengers/viber/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, dpkg, makeWrapper, xlibs, qt5, gstreamer, zlib, sqlite, libxslt }:
+{ fetchurl, stdenv, dpkg, makeWrapper, xorg, qt5Full, gstreamer, zlib, sqlite, libxslt }:
 
 assert stdenv.system == "x86_64-linux";
 
@@ -22,16 +22,16 @@ stdenv.mkDerivation rec {
   unpackPhase = "true";
 
   libPath = stdenv.lib.makeLibraryPath [
-      qt5
-      xlibs.libX11
+      qt5Full
+      xorg.libX11
       gstreamer
       zlib
       sqlite
-      xlibs.libXrender
+      xorg.libXrender
       libxslt
       stdenv.cc.cc
-      xlibs.libXScrnSaver
-      xlibs.libXext
+      xorg.libXScrnSaver
+      xorg.libXext
   ];
 
   installPhase = ''
@@ -63,6 +63,7 @@ stdenv.mkDerivation rec {
     license = stdenv.lib.licenses.unfree;
     platforms = stdenv.lib.platforms.linux;
     maintainers = with stdenv.lib.maintainers; [ jagajaga ];
+    broken = true;
   };
 
 }
diff --git a/pkgs/applications/networking/irc/hexchat/default.nix b/pkgs/applications/networking/irc/hexchat/default.nix
index f1cc7df1904..dfe5c3b0182 100644
--- a/pkgs/applications/networking/irc/hexchat/default.nix
+++ b/pkgs/applications/networking/irc/hexchat/default.nix
@@ -1,32 +1,32 @@
 { stdenv, fetchurl, pkgconfig, gtk, perl, python, gettext
 , libtool, pciutils, dbus_glib, libcanberra, libproxy
-, libsexy, enchant, libnotify, openssl
+, libsexy, enchant, libnotify, openssl, intltool
 , desktop_file_utils, hicolor_icon_theme
 }:
 
 stdenv.mkDerivation rec {
-  version = "2.9.6.1";
+  version = "2.10.2";
   name = "hexchat-${version}";
 
   src = fetchurl {
     url = "http://dl.hexchat.net/hexchat/${name}.tar.xz";
-    sha256 = "0w34jr1pqril6r011fwxv40m17bnb88q9cv5hf08mv0a9lygyrv2";
+    sha256 = "0b5mw6jxa7c93nbgiwijm7j7klm6nccx6l9zyainyrbnqmjz7sw7";
   };
 
   buildInputs = [
     pkgconfig gtk perl python gettext
     libtool pciutils dbus_glib libcanberra libproxy
-    libsexy libnotify openssl
+    libsexy libnotify openssl intltool
     desktop_file_utils hicolor_icon_theme
   ];
 
   configureFlags = [ "--enable-shm" "--enable-textfe" ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A popular and easy to use graphical IRC (chat) client";
     homepage = http://hexchat.github.io/;
-    license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = [ stdenv.lib.maintainers.romildo ];
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo jgeerds ];
   };
 }
diff --git a/pkgs/applications/networking/irc/irssi/default.nix b/pkgs/applications/networking/irc/irssi/default.nix
index 47754db1f2d..8c26bf8d10e 100644
--- a/pkgs/applications/networking/irc/irssi/default.nix
+++ b/pkgs/applications/networking/irc/irssi/default.nix
@@ -2,16 +2,18 @@
 
 stdenv.mkDerivation rec {
   name = "irssi-0.8.17";
-  
+
   src = fetchurl {
-    url = "http://irssi.org/files/${name}.tar.bz2";
+    urls = [ "https://distfiles.macports.org/irssi/${name}.tar.bz2"
+             "http://irssi.org/files/${name}.tar.bz2"
+           ];
     sha256 = "01v82q2pfiimx6lh271kdvgp8hl4pahc3srg04fqzxgdsb5015iw";
   };
-  
+
   buildInputs = [ pkgconfig ncurses glib openssl perl libintlOrEmpty ];
-  
-  NIX_LDFLAGS = "-lncurses";
-  
+
+  NIX_LDFLAGS = ncurses.ldflags;
+
   configureFlags = "--with-proxy --with-ncurses --enable-ssl --with-perl=yes";
 
   meta = {
diff --git a/pkgs/applications/networking/irc/quassel/default.nix b/pkgs/applications/networking/irc/quassel/default.nix
index b5bf86690ed..9c77e6b133f 100644
--- a/pkgs/applications/networking/irc/quassel/default.nix
+++ b/pkgs/applications/networking/irc/quassel/default.nix
@@ -1,18 +1,23 @@
 { monolithic ? true # build monolithic Quassel
 , daemon ? false # build Quassel daemon
 , client ? false # build Quassel client
-, withKDE ? stdenv.isLinux # enable KDE integration
-, ssl ? true # enable SSL support
 , previews ? false # enable webpage previews on hovering over URLs
 , tag ? "" # tag added to the package name
-, kdelibs ? null # optional
-, useQt5 ? false
-, phonon_qt5, libdbusmenu_qt5
-, stdenv, fetchurl, cmake, makeWrapper, qt, automoc4, phonon, dconf }:
+, withKDE ? stdenv.isLinux # enable KDE integration
+, kdelibs ? null
+
+, stdenv, fetchurl, cmake, makeWrapper, qt, automoc4, phonon, dconf, qca2 }:
+
+let buildClient = monolithic || client;
+    buildCore = monolithic || daemon;
+in
+
+assert stdenv.isLinux;
 
 assert monolithic -> !client && !daemon;
 assert client || daemon -> !monolithic;
 assert withKDE -> kdelibs != null;
+assert !buildClient -> !withKDE; # KDE is used by the client only
 
 let
   edf = flag: feature: [("-D" + feature + (if flag then "=ON" else "=OFF"))];
@@ -29,15 +34,12 @@ in with stdenv; mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  buildInputs = [ cmake makeWrapper ]
-    ++ (if useQt5 then [ qt.base ] else [ qt ])
-    ++ (if useQt5 && (monolithic || daemon) then [ qt.script ] else [])
-    ++ (if useQt5 && previews then [ qt.webkit qt.webkitwidgets ] else [])
-    ++ lib.optional withKDE kdelibs
-    ++ lib.optional withKDE automoc4
-    ++ lib.optional withKDE phonon
-    ++ lib.optional useQt5 phonon_qt5
-    ++ lib.optional useQt5 libdbusmenu_qt5;
+  buildInputs =
+       [ cmake makeWrapper qt ]
+    ++ lib.optionals buildCore [qca2]
+    ++ lib.optionals withKDE [automoc4 kdelibs phonon];
+
+  NIX_CFLAGS_COMPILE = "-fPIC";
 
   cmakeFlags = [
     "-DEMBED_DATA=OFF"
@@ -46,32 +48,27 @@ in with stdenv; mkDerivation rec {
     ++ edf daemon "WANT_CORE"
     ++ edf client "WANT_QTCLIENT"
     ++ edf withKDE "WITH_KDE"
-    ++ edf previews "WITH_WEBKIT"
-    ++ edf useQt5 "USE_QT5";
+    ++ edf previews "WITH_WEBKIT";
 
   preFixup =
-    lib.optionalString client ''
-        wrapProgram "$out/bin/quasselclient" \
-          --prefix GIO_EXTRA_MODULES : "${dconf}/lib/gio/modules"
-    '' +
-    lib.optionalString monolithic ''
-        wrapProgram "$out/bin/quassel" \
+    lib.optionalString buildClient ''
+        wrapProgram "$out/bin/quassel${lib.optionalString client "client"}" \
           --prefix GIO_EXTRA_MODULES : "${dconf}/lib/gio/modules"
     '';
 
   meta = with stdenv.lib; {
     homepage = http://quassel-irc.org/;
-    description = "Qt4/KDE4/Qt5 distributed IRC client suppporting a remote daemon";
+    description = "Qt/KDE distributed IRC client suppporting a remote daemon";
     longDescription = ''
       Quassel IRC is a cross-platform, distributed IRC client,
       meaning that one (or multiple) client(s) can attach to
       and detach from a central core -- much like the popular
       combination of screen and a text-based IRC client such
-      as WeeChat, but graphical (based on Qt4/KDE4 or Qt5).
+      as WeeChat, but graphical (based on Qt4/KDE4 or Qt5/KF5).
     '';
     license = stdenv.lib.licenses.gpl3;
     maintainers = with maintainers; [ phreedom ttuegel ];
     repositories.git = https://github.com/quassel/quassel.git;
-    inherit ((if useQt5 then qt.base else qt).meta) platforms;
+    inherit (qt.meta) platforms;
   };
 }
diff --git a/pkgs/applications/networking/irc/quassel/qt-5.nix b/pkgs/applications/networking/irc/quassel/qt-5.nix
new file mode 100644
index 00000000000..b5075fe2075
--- /dev/null
+++ b/pkgs/applications/networking/irc/quassel/qt-5.nix
@@ -0,0 +1,99 @@
+{ monolithic ? true # build monolithic Quassel
+, daemon ? false # build Quassel daemon
+, client ? false # build Quassel client
+, previews ? false # enable webpage previews on hovering over URLs
+, tag ? "" # tag added to the package name
+
+, stdenv, fetchurl, cmake, makeWrapper, dconf
+, qtbase, qtscript, qtwebkit
+, phonon, libdbusmenu, qca-qt5
+
+, withKDE ? stdenv.isLinux # enable KDE integration
+, extra-cmake-modules
+, kconfigwidgets
+, kcoreaddons
+, knotifications
+, knotifyconfig
+, ktextwidgets
+, kwidgetsaddons
+, kxmlgui
+}:
+
+let
+    buildClient = monolithic || client;
+    buildCore = monolithic || daemon;
+in
+
+assert stdenv.isLinux;
+
+assert monolithic -> !client && !daemon;
+assert client || daemon -> !monolithic;
+assert !buildClient -> !withKDE; # KDE is used by the client only
+
+let
+  edf = flag: feature: [("-D" + feature + (if flag then "=ON" else "=OFF"))];
+
+in with stdenv; mkDerivation rec {
+
+  version = "0.12.2";
+  name = "quassel${tag}-${version}";
+
+  src = fetchurl {
+    url = "http://quassel-irc.org/pub/quassel-${version}.tar.bz2";
+    sha256 = "15vqjiw38mifvnc95bhvy0zl23xxldkwg2byx9xqbyw8rfgggmkb";
+  };
+
+  patches = [
+    # fix build with Qt 5.5
+    (fetchurl {
+      url = "https://github.com/quassel/quassel/commit/078477395aaec1edee90922037ebc8a36b072d90.patch";
+      sha256 = "1njwnay7pjjw0g7m0x5cwvck8xcznc7jbdfyhbrd121nc7jgpbc5";
+    })
+  ];
+
+  enableParallelBuilding = true;
+
+  buildInputs =
+       [ cmake makeWrapper qtbase ]
+    ++ lib.optionals buildCore [qtscript qca-qt5]
+    ++ lib.optionals buildClient [libdbusmenu phonon]
+    ++ lib.optionals (buildClient && previews) [qtwebkit]
+    ++ lib.optionals (buildClient && withKDE) [
+      extra-cmake-modules kconfigwidgets kcoreaddons
+      knotifications knotifyconfig ktextwidgets kwidgetsaddons
+      kxmlgui
+    ];
+
+  cmakeFlags = [
+    "-DEMBED_DATA=OFF"
+    "-DSTATIC=OFF"
+    "-DUSE_QT5=ON"
+  ]
+    ++ edf monolithic "WANT_MONO"
+    ++ edf daemon "WANT_CORE"
+    ++ edf client "WANT_QTCLIENT"
+    ++ edf withKDE "WITH_KDE"
+    ++ edf previews "WITH_WEBKIT";
+
+  preFixup =
+    lib.optionalString buildClient ''
+        wrapProgram "$out/bin/quassel${lib.optionalString client "client"}" \
+          --prefix GIO_EXTRA_MODULES : "${dconf}/lib/gio/modules"
+    '';
+
+  meta = with stdenv.lib; {
+    homepage = http://quassel-irc.org/;
+    description = "Qt/KDE distributed IRC client suppporting a remote daemon";
+    longDescription = ''
+      Quassel IRC is a cross-platform, distributed IRC client,
+      meaning that one (or multiple) client(s) can attach to
+      and detach from a central core -- much like the popular
+      combination of screen and a text-based IRC client such
+      as WeeChat, but graphical (based on Qt4/KDE4 or Qt5/KF5).
+    '';
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = with maintainers; [ phreedom ttuegel ];
+    repositories.git = https://github.com/quassel/quassel.git;
+    inherit (qtbase.meta) platforms;
+  };
+}
diff --git a/pkgs/applications/networking/irc/shout/default.nix b/pkgs/applications/networking/irc/shout/default.nix
new file mode 100644
index 00000000000..9d3e3ba449c
--- /dev/null
+++ b/pkgs/applications/networking/irc/shout/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchFromGitHub, callPackage, python, utillinux }:
+
+with stdenv.lib;
+
+let
+  nodePackages = callPackage (import ../../../../top-level/node-packages.nix) {
+    neededNatives = [ python ] ++ optional (stdenv.isLinux) utillinux;
+    self = nodePackages;
+    generated = ./package.nix;
+  };
+
+in nodePackages.buildNodePackage rec {
+  name = "shout-${version}";
+  version = "0.51.1";
+
+  src = fetchFromGitHub {
+    owner = "erming";
+    repo = "shout";
+    rev = "2cee0ea6ef5ee51de0190332f976934b55bbc8e4";
+    sha256 = "1kci1qha1csb9sqb4ig487q612hgdn5lycbcpad7m9r6chn835qg";
+  };
+
+  buildInputs = nodePackages.nativeDeps."shout" or [];
+
+  deps = [
+    nodePackages.by-spec."bcrypt-nodejs"."0.0.3"
+    nodePackages.by-spec."cheerio"."^0.17.0"
+    nodePackages.by-spec."commander"."^2.3.0"
+    nodePackages.by-spec."event-stream"."^3.1.7"
+    nodePackages.by-spec."express"."^4.9.5"
+    nodePackages.by-spec."lodash"."~2.4.1"
+    nodePackages.by-spec."mkdirp"."^0.5.0"
+    nodePackages.by-spec."moment"."~2.7.0"
+    nodePackages.by-spec."read"."^1.0.5"
+    nodePackages.by-spec."request"."^2.51.0"
+    nodePackages.by-spec."slate-irc"."~0.7.3"
+    nodePackages.by-spec."socket.io"."~1.0.6"
+  ];
+
+  peerDependencies = [];
+
+  meta = {
+    description = "Web IRC client that you host on your own server";
+    license = licenses.mit;
+    homepage = http://shout-irc.com/;
+    maintainers = with maintainers; [ benley ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/networking/irc/shout/package.nix b/pkgs/applications/networking/irc/shout/package.nix
new file mode 100644
index 00000000000..cd9677e1ccc
--- /dev/null
+++ b/pkgs/applications/networking/irc/shout/package.nix
@@ -0,0 +1,5049 @@
+{ self, fetchurl, fetchgit ? null, lib }:
+
+{
+  by-spec."CSSselect"."~0.4.0" =
+    self.by-version."CSSselect"."0.4.1";
+  by-version."CSSselect"."0.4.1" = self.buildNodePackage {
+    name = "CSSselect-0.4.1";
+    version = "0.4.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/CSSselect/-/CSSselect-0.4.1.tgz";
+      name = "CSSselect-0.4.1.tgz";
+      sha1 = "f8ab7e1f8418ce63cda6eb7bd778a85d7ec492b2";
+    };
+    deps = {
+      "CSSwhat-0.4.7" = self.by-version."CSSwhat"."0.4.7";
+      "domutils-1.4.3" = self.by-version."domutils"."1.4.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."CSSwhat"."0.4" =
+    self.by-version."CSSwhat"."0.4.7";
+  by-version."CSSwhat"."0.4.7" = self.buildNodePackage {
+    name = "CSSwhat-0.4.7";
+    version = "0.4.7";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/CSSwhat/-/CSSwhat-0.4.7.tgz";
+      name = "CSSwhat-0.4.7.tgz";
+      sha1 = "867da0ff39f778613242c44cfea83f0aa4ebdf9b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."abbrev"."1" =
+    self.by-version."abbrev"."1.0.7";
+  by-version."abbrev"."1.0.7" = self.buildNodePackage {
+    name = "abbrev-1.0.7";
+    version = "1.0.7";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/abbrev/-/abbrev-1.0.7.tgz";
+      name = "abbrev-1.0.7.tgz";
+      sha1 = "5b6035b2ee9d4fb5cf859f08a9be81b208491843";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."accepts"."~1.2.10" =
+    self.by-version."accepts"."1.2.11";
+  by-version."accepts"."1.2.11" = self.buildNodePackage {
+    name = "accepts-1.2.11";
+    version = "1.2.11";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/accepts/-/accepts-1.2.11.tgz";
+      name = "accepts-1.2.11.tgz";
+      sha1 = "d341c6e3b420489632f0f4f8d2ad4fd9ddf374e0";
+    };
+    deps = {
+      "mime-types-2.1.3" = self.by-version."mime-types"."2.1.3";
+      "negotiator-0.5.3" = self.by-version."negotiator"."0.5.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."after"."0.8.1" =
+    self.by-version."after"."0.8.1";
+  by-version."after"."0.8.1" = self.buildNodePackage {
+    name = "after-0.8.1";
+    version = "0.8.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/after/-/after-0.8.1.tgz";
+      name = "after-0.8.1.tgz";
+      sha1 = "ab5d4fb883f596816d3515f8f791c0af486dd627";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."amdefine".">=0.0.4" =
+    self.by-version."amdefine"."1.0.0";
+  by-version."amdefine"."1.0.0" = self.buildNodePackage {
+    name = "amdefine-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/amdefine/-/amdefine-1.0.0.tgz";
+      name = "amdefine-1.0.0.tgz";
+      sha1 = "fd17474700cb5cc9c2b709f0be9d23ce3c198c33";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ansi-regex"."^0.2.0" =
+    self.by-version."ansi-regex"."0.2.1";
+  by-version."ansi-regex"."0.2.1" = self.buildNodePackage {
+    name = "ansi-regex-0.2.1";
+    version = "0.2.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ansi-regex/-/ansi-regex-0.2.1.tgz";
+      name = "ansi-regex-0.2.1.tgz";
+      sha1 = "0d8e946967a3d8143f93e24e298525fc1b2235f9";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ansi-regex"."^0.2.1" =
+    self.by-version."ansi-regex"."0.2.1";
+  by-spec."ansi-regex"."^2.0.0" =
+    self.by-version."ansi-regex"."2.0.0";
+  by-version."ansi-regex"."2.0.0" = self.buildNodePackage {
+    name = "ansi-regex-2.0.0";
+    version = "2.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz";
+      name = "ansi-regex-2.0.0.tgz";
+      sha1 = "c5061b6e0ef8a81775e50f5d66151bf6bf371107";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ansi-styles"."^1.1.0" =
+    self.by-version."ansi-styles"."1.1.0";
+  by-version."ansi-styles"."1.1.0" = self.buildNodePackage {
+    name = "ansi-styles-1.1.0";
+    version = "1.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ansi-styles/-/ansi-styles-1.1.0.tgz";
+      name = "ansi-styles-1.1.0.tgz";
+      sha1 = "eaecbf66cd706882760b2f4691582b8f55d7a7de";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ansi-styles"."^2.1.0" =
+    self.by-version."ansi-styles"."2.1.0";
+  by-version."ansi-styles"."2.1.0" = self.buildNodePackage {
+    name = "ansi-styles-2.1.0";
+    version = "2.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ansi-styles/-/ansi-styles-2.1.0.tgz";
+      name = "ansi-styles-2.1.0.tgz";
+      sha1 = "990f747146927b559a932bf92959163d60c0d0e2";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."argparse"."~ 0.1.11" =
+    self.by-version."argparse"."0.1.16";
+  by-version."argparse"."0.1.16" = self.buildNodePackage {
+    name = "argparse-0.1.16";
+    version = "0.1.16";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/argparse/-/argparse-0.1.16.tgz";
+      name = "argparse-0.1.16.tgz";
+      sha1 = "cfd01e0fbba3d6caed049fbd758d40f65196f57c";
+    };
+    deps = {
+      "underscore-1.7.0" = self.by-version."underscore"."1.7.0";
+      "underscore.string-2.4.0" = self.by-version."underscore.string"."2.4.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."array-flatten"."1.1.0" =
+    self.by-version."array-flatten"."1.1.0";
+  by-version."array-flatten"."1.1.0" = self.buildNodePackage {
+    name = "array-flatten-1.1.0";
+    version = "1.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/array-flatten/-/array-flatten-1.1.0.tgz";
+      name = "array-flatten-1.1.0.tgz";
+      sha1 = "ac3efac717b0e7bbdc778ce0bde7381ac6604393";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."arraybuffer.slice"."0.0.6" =
+    self.by-version."arraybuffer.slice"."0.0.6";
+  by-version."arraybuffer.slice"."0.0.6" = self.buildNodePackage {
+    name = "arraybuffer.slice-0.0.6";
+    version = "0.0.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz";
+      name = "arraybuffer.slice-0.0.6.tgz";
+      sha1 = "f33b2159f0532a3f3107a272c0ccfbd1ad2979ca";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."asn1"."0.1.11" =
+    self.by-version."asn1"."0.1.11";
+  by-version."asn1"."0.1.11" = self.buildNodePackage {
+    name = "asn1-0.1.11";
+    version = "0.1.11";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz";
+      name = "asn1-0.1.11.tgz";
+      sha1 = "559be18376d08a4ec4dbe80877d27818639b2df7";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."assert-plus"."^0.1.5" =
+    self.by-version."assert-plus"."0.1.5";
+  by-version."assert-plus"."0.1.5" = self.buildNodePackage {
+    name = "assert-plus-0.1.5";
+    version = "0.1.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz";
+      name = "assert-plus-0.1.5.tgz";
+      sha1 = "ee74009413002d84cec7219c6ac811812e723160";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."async"."^1.2.1" =
+    self.by-version."async"."1.4.0";
+  by-version."async"."1.4.0" = self.buildNodePackage {
+    name = "async-1.4.0";
+    version = "1.4.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/async/-/async-1.4.0.tgz";
+      name = "async-1.4.0.tgz";
+      sha1 = "35f86f83c59e0421d099cd9a91d8278fb578c00d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."async"."~0.1.22" =
+    self.by-version."async"."0.1.22";
+  by-version."async"."0.1.22" = self.buildNodePackage {
+    name = "async-0.1.22";
+    version = "0.1.22";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/async/-/async-0.1.22.tgz";
+      name = "async-0.1.22.tgz";
+      sha1 = "0fc1aaa088a0e3ef0ebe2d8831bab0dcf8845061";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."async"."~0.2.6" =
+    self.by-version."async"."0.2.10";
+  by-version."async"."0.2.10" = self.buildNodePackage {
+    name = "async-0.2.10";
+    version = "0.2.10";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/async/-/async-0.2.10.tgz";
+      name = "async-0.2.10.tgz";
+      sha1 = "b6bbe0b0674b9d719708ca38de8c237cb526c3d1";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."async"."~0.2.9" =
+    self.by-version."async"."0.2.10";
+  by-spec."aws-sign2"."~0.5.0" =
+    self.by-version."aws-sign2"."0.5.0";
+  by-version."aws-sign2"."0.5.0" = self.buildNodePackage {
+    name = "aws-sign2-0.5.0";
+    version = "0.5.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz";
+      name = "aws-sign2-0.5.0.tgz";
+      sha1 = "c57103f7a17fc037f02d7c2e64b602ea223f7d63";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."base64-arraybuffer"."0.1.2" =
+    self.by-version."base64-arraybuffer"."0.1.2";
+  by-version."base64-arraybuffer"."0.1.2" = self.buildNodePackage {
+    name = "base64-arraybuffer-0.1.2";
+    version = "0.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.2.tgz";
+      name = "base64-arraybuffer-0.1.2.tgz";
+      sha1 = "474df4a9f2da24e05df3158c3b1db3c3cd46a154";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."base64id"."0.1.0" =
+    self.by-version."base64id"."0.1.0";
+  by-version."base64id"."0.1.0" = self.buildNodePackage {
+    name = "base64id-0.1.0";
+    version = "0.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/base64id/-/base64id-0.1.0.tgz";
+      name = "base64id-0.1.0.tgz";
+      sha1 = "02ce0fdeee0cef4f40080e1e73e834f0b1bfce3f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."bcrypt-nodejs"."0.0.3" =
+    self.by-version."bcrypt-nodejs"."0.0.3";
+  by-version."bcrypt-nodejs"."0.0.3" = self.buildNodePackage {
+    name = "bcrypt-nodejs-0.0.3";
+    version = "0.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/bcrypt-nodejs/-/bcrypt-nodejs-0.0.3.tgz";
+      name = "bcrypt-nodejs-0.0.3.tgz";
+      sha1 = "c60917f26dc235661566c681061c303c2b28842b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "bcrypt-nodejs" = self.by-version."bcrypt-nodejs"."0.0.3";
+  by-spec."better-assert"."~1.0.0" =
+    self.by-version."better-assert"."1.0.2";
+  by-version."better-assert"."1.0.2" = self.buildNodePackage {
+    name = "better-assert-1.0.2";
+    version = "1.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz";
+      name = "better-assert-1.0.2.tgz";
+      sha1 = "40866b9e1b9e0b55b481894311e68faffaebc522";
+    };
+    deps = {
+      "callsite-1.0.0" = self.by-version."callsite"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."bl"."~1.0.0" =
+    self.by-version."bl"."1.0.0";
+  by-version."bl"."1.0.0" = self.buildNodePackage {
+    name = "bl-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/bl/-/bl-1.0.0.tgz";
+      name = "bl-1.0.0.tgz";
+      sha1 = "ada9a8a89a6d7ac60862f7dec7db207873e0c3f5";
+    };
+    deps = {
+      "readable-stream-2.0.2" = self.by-version."readable-stream"."2.0.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."blob"."0.0.2" =
+    self.by-version."blob"."0.0.2";
+  by-version."blob"."0.0.2" = self.buildNodePackage {
+    name = "blob-0.0.2";
+    version = "0.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/blob/-/blob-0.0.2.tgz";
+      name = "blob-0.0.2.tgz";
+      sha1 = "b89562bd6994af95ba1e812155536333aa23cf24";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."bluebird"."^2.9.30" =
+    self.by-version."bluebird"."2.9.34";
+  by-version."bluebird"."2.9.34" = self.buildNodePackage {
+    name = "bluebird-2.9.34";
+    version = "2.9.34";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/bluebird/-/bluebird-2.9.34.tgz";
+      name = "bluebird-2.9.34.tgz";
+      sha1 = "2f7b4ec80216328a9fddebdf69c8d4942feff7d8";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."boom"."2.x.x" =
+    self.by-version."boom"."2.8.0";
+  by-version."boom"."2.8.0" = self.buildNodePackage {
+    name = "boom-2.8.0";
+    version = "2.8.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/boom/-/boom-2.8.0.tgz";
+      name = "boom-2.8.0.tgz";
+      sha1 = "317bdfd47018fe7dd79b0e9da73efe244119fdf1";
+    };
+    deps = {
+      "hoek-2.14.0" = self.by-version."hoek"."2.14.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."boom"."^2.8.x" =
+    self.by-version."boom"."2.8.0";
+  by-spec."browserify-zlib"."^0.1.4" =
+    self.by-version."browserify-zlib"."0.1.4";
+  by-version."browserify-zlib"."0.1.4" = self.buildNodePackage {
+    name = "browserify-zlib-0.1.4";
+    version = "0.1.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz";
+      name = "browserify-zlib-0.1.4.tgz";
+      sha1 = "bb35f8a519f600e0fa6b8485241c979d0141fb2d";
+    };
+    deps = {
+      "pako-0.2.7" = self.by-version."pako"."0.2.7";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."callsite"."1.0.0" =
+    self.by-version."callsite"."1.0.0";
+  by-version."callsite"."1.0.0" = self.buildNodePackage {
+    name = "callsite-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz";
+      name = "callsite-1.0.0.tgz";
+      sha1 = "280398e5d664bd74038b6f0905153e6e8af1bc20";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."camelcase"."^1.0.2" =
+    self.by-version."camelcase"."1.1.0";
+  by-version."camelcase"."1.1.0" = self.buildNodePackage {
+    name = "camelcase-1.1.0";
+    version = "1.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/camelcase/-/camelcase-1.1.0.tgz";
+      name = "camelcase-1.1.0.tgz";
+      sha1 = "953b25c3bc98671ee59a44cb9d542672da7331b9";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."caseless"."~0.11.0" =
+    self.by-version."caseless"."0.11.0";
+  by-version."caseless"."0.11.0" = self.buildNodePackage {
+    name = "caseless-0.11.0";
+    version = "0.11.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz";
+      name = "caseless-0.11.0.tgz";
+      sha1 = "715b96ea9841593cc33067923f5ec60ebda4f7d7";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."chalk"."^0.5.0" =
+    self.by-version."chalk"."0.5.1";
+  by-version."chalk"."0.5.1" = self.buildNodePackage {
+    name = "chalk-0.5.1";
+    version = "0.5.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/chalk/-/chalk-0.5.1.tgz";
+      name = "chalk-0.5.1.tgz";
+      sha1 = "663b3a648b68b55d04690d49167aa837858f2174";
+    };
+    deps = {
+      "ansi-styles-1.1.0" = self.by-version."ansi-styles"."1.1.0";
+      "escape-string-regexp-1.0.3" = self.by-version."escape-string-regexp"."1.0.3";
+      "has-ansi-0.1.0" = self.by-version."has-ansi"."0.1.0";
+      "strip-ansi-0.3.0" = self.by-version."strip-ansi"."0.3.0";
+      "supports-color-0.2.0" = self.by-version."supports-color"."0.2.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."chalk"."^0.5.1" =
+    self.by-version."chalk"."0.5.1";
+  by-spec."chalk"."^1.0.0" =
+    self.by-version."chalk"."1.1.0";
+  by-version."chalk"."1.1.0" = self.buildNodePackage {
+    name = "chalk-1.1.0";
+    version = "1.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/chalk/-/chalk-1.1.0.tgz";
+      name = "chalk-1.1.0.tgz";
+      sha1 = "09b453cec497a75520e4a60ae48214a8700e0921";
+    };
+    deps = {
+      "ansi-styles-2.1.0" = self.by-version."ansi-styles"."2.1.0";
+      "escape-string-regexp-1.0.3" = self.by-version."escape-string-regexp"."1.0.3";
+      "has-ansi-2.0.0" = self.by-version."has-ansi"."2.0.0";
+      "strip-ansi-3.0.0" = self.by-version."strip-ansi"."3.0.0";
+      "supports-color-2.0.0" = self.by-version."supports-color"."2.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."cheerio"."^0.17.0" =
+    self.by-version."cheerio"."0.17.0";
+  by-version."cheerio"."0.17.0" = self.buildNodePackage {
+    name = "cheerio-0.17.0";
+    version = "0.17.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/cheerio/-/cheerio-0.17.0.tgz";
+      name = "cheerio-0.17.0.tgz";
+      sha1 = "fa5ae42cc60121133d296d0b46d983215f7268ea";
+    };
+    deps = {
+      "CSSselect-0.4.1" = self.by-version."CSSselect"."0.4.1";
+      "entities-1.1.1" = self.by-version."entities"."1.1.1";
+      "htmlparser2-3.7.3" = self.by-version."htmlparser2"."3.7.3";
+      "dom-serializer-0.0.1" = self.by-version."dom-serializer"."0.0.1";
+      "lodash-2.4.2" = self.by-version."lodash"."2.4.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "cheerio" = self.by-version."cheerio"."0.17.0";
+  by-spec."coffee-script"."~1.3.3" =
+    self.by-version."coffee-script"."1.3.3";
+  by-version."coffee-script"."1.3.3" = self.buildNodePackage {
+    name = "coffee-script-1.3.3";
+    version = "1.3.3";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz";
+      name = "coffee-script-1.3.3.tgz";
+      sha1 = "150d6b4cb522894369efed6a2101c20bc7f4a4f4";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."colors"."~0.6.2" =
+    self.by-version."colors"."0.6.2";
+  by-version."colors"."0.6.2" = self.buildNodePackage {
+    name = "colors-0.6.2";
+    version = "0.6.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/colors/-/colors-0.6.2.tgz";
+      name = "colors-0.6.2.tgz";
+      sha1 = "2423fe6678ac0c5dae8852e5d0e5be08c997abcc";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."combined-stream"."^1.0.3" =
+    self.by-version."combined-stream"."1.0.5";
+  by-version."combined-stream"."1.0.5" = self.buildNodePackage {
+    name = "combined-stream-1.0.5";
+    version = "1.0.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz";
+      name = "combined-stream-1.0.5.tgz";
+      sha1 = "938370a57b4a51dea2c77c15d5c5fdf895164009";
+    };
+    deps = {
+      "delayed-stream-1.0.0" = self.by-version."delayed-stream"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."combined-stream"."~1.0.1" =
+    self.by-version."combined-stream"."1.0.5";
+  by-spec."commander"."0.6.1" =
+    self.by-version."commander"."0.6.1";
+  by-version."commander"."0.6.1" = self.buildNodePackage {
+    name = "commander-0.6.1";
+    version = "0.6.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/commander/-/commander-0.6.1.tgz";
+      name = "commander-0.6.1.tgz";
+      sha1 = "fa68a14f6a945d54dbbe50d8cdb3320e9e3b1a06";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."commander"."2.3.0" =
+    self.by-version."commander"."2.3.0";
+  by-version."commander"."2.3.0" = self.buildNodePackage {
+    name = "commander-2.3.0";
+    version = "2.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/commander/-/commander-2.3.0.tgz";
+      name = "commander-2.3.0.tgz";
+      sha1 = "fd430e889832ec353b9acd1de217c11cb3eef873";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."commander"."^2.3.0" =
+    self.by-version."commander"."2.8.1";
+  by-version."commander"."2.8.1" = self.buildNodePackage {
+    name = "commander-2.8.1";
+    version = "2.8.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/commander/-/commander-2.8.1.tgz";
+      name = "commander-2.8.1.tgz";
+      sha1 = "06be367febfda0c330aa1e2a072d3dc9762425d4";
+    };
+    deps = {
+      "graceful-readlink-1.0.1" = self.by-version."graceful-readlink"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "commander" = self.by-version."commander"."2.8.1";
+  by-spec."commander"."^2.8.1" =
+    self.by-version."commander"."2.8.1";
+  by-spec."commander"."~0.6.1" =
+    self.by-version."commander"."0.6.1";
+  by-spec."component-bind"."1.0.0" =
+    self.by-version."component-bind"."1.0.0";
+  by-version."component-bind"."1.0.0" = self.buildNodePackage {
+    name = "component-bind-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz";
+      name = "component-bind-1.0.0.tgz";
+      sha1 = "00c608ab7dcd93897c0009651b1d3a8e1e73bbd1";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."component-emitter"."1.1.2" =
+    self.by-version."component-emitter"."1.1.2";
+  by-version."component-emitter"."1.1.2" = self.buildNodePackage {
+    name = "component-emitter-1.1.2";
+    version = "1.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz";
+      name = "component-emitter-1.1.2.tgz";
+      sha1 = "296594f2753daa63996d2af08d15a95116c9aec3";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."component-inherit"."0.0.3" =
+    self.by-version."component-inherit"."0.0.3";
+  by-version."component-inherit"."0.0.3" = self.buildNodePackage {
+    name = "component-inherit-0.0.3";
+    version = "0.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz";
+      name = "component-inherit-0.0.3.tgz";
+      sha1 = "645fc4adf58b72b649d5cae65135619db26ff143";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."concat-stream"."^1.4.1" =
+    self.by-version."concat-stream"."1.5.0";
+  by-version."concat-stream"."1.5.0" = self.buildNodePackage {
+    name = "concat-stream-1.5.0";
+    version = "1.5.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/concat-stream/-/concat-stream-1.5.0.tgz";
+      name = "concat-stream-1.5.0.tgz";
+      sha1 = "53f7d43c51c5e43f81c8fdd03321c631be68d611";
+    };
+    deps = {
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "typedarray-0.0.6" = self.by-version."typedarray"."0.0.6";
+      "readable-stream-2.0.2" = self.by-version."readable-stream"."2.0.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."content-disposition"."0.5.0" =
+    self.by-version."content-disposition"."0.5.0";
+  by-version."content-disposition"."0.5.0" = self.buildNodePackage {
+    name = "content-disposition-0.5.0";
+    version = "0.5.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/content-disposition/-/content-disposition-0.5.0.tgz";
+      name = "content-disposition-0.5.0.tgz";
+      sha1 = "4284fe6ae0630874639e44e80a418c2934135e9e";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."content-type"."~1.0.1" =
+    self.by-version."content-type"."1.0.1";
+  by-version."content-type"."1.0.1" = self.buildNodePackage {
+    name = "content-type-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/content-type/-/content-type-1.0.1.tgz";
+      name = "content-type-1.0.1.tgz";
+      sha1 = "a19d2247327dc038050ce622b7a154ec59c5e600";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."cookie"."0.1.3" =
+    self.by-version."cookie"."0.1.3";
+  by-version."cookie"."0.1.3" = self.buildNodePackage {
+    name = "cookie-0.1.3";
+    version = "0.1.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/cookie/-/cookie-0.1.3.tgz";
+      name = "cookie-0.1.3.tgz";
+      sha1 = "e734a5c1417fce472d5aef82c381cabb64d1a435";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."cookie-signature"."1.0.6" =
+    self.by-version."cookie-signature"."1.0.6";
+  by-version."cookie-signature"."1.0.6" = self.buildNodePackage {
+    name = "cookie-signature-1.0.6";
+    version = "1.0.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz";
+      name = "cookie-signature-1.0.6.tgz";
+      sha1 = "e303a882b342cc3ee8ca513a79999734dab3ae2c";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."core-util-is"."~1.0.0" =
+    self.by-version."core-util-is"."1.0.1";
+  by-version."core-util-is"."1.0.1" = self.buildNodePackage {
+    name = "core-util-is-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz";
+      name = "core-util-is-1.0.1.tgz";
+      sha1 = "6b07085aef9a3ccac6ee53bf9d3df0c1521a5538";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."cryptiles"."2.x.x" =
+    self.by-version."cryptiles"."2.0.4";
+  by-version."cryptiles"."2.0.4" = self.buildNodePackage {
+    name = "cryptiles-2.0.4";
+    version = "2.0.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/cryptiles/-/cryptiles-2.0.4.tgz";
+      name = "cryptiles-2.0.4.tgz";
+      sha1 = "09ea1775b9e1c7de7e60a99d42ab6f08ce1a1285";
+    };
+    deps = {
+      "boom-2.8.0" = self.by-version."boom"."2.8.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ctype"."0.5.3" =
+    self.by-version."ctype"."0.5.3";
+  by-version."ctype"."0.5.3" = self.buildNodePackage {
+    name = "ctype-0.5.3";
+    version = "0.5.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz";
+      name = "ctype-0.5.3.tgz";
+      sha1 = "82c18c2461f74114ef16c135224ad0b9144ca12f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."dateformat"."1.0.2-1.2.3" =
+    self.by-version."dateformat"."1.0.2-1.2.3";
+  by-version."dateformat"."1.0.2-1.2.3" = self.buildNodePackage {
+    name = "dateformat-1.0.2-1.2.3";
+    version = "1.0.2-1.2.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz";
+      name = "dateformat-1.0.2-1.2.3.tgz";
+      sha1 = "b0220c02de98617433b72851cf47de3df2cdbee9";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."debug"."*" =
+    self.by-version."debug"."2.2.0";
+  by-version."debug"."2.2.0" = self.buildNodePackage {
+    name = "debug-2.2.0";
+    version = "2.2.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/debug/-/debug-2.2.0.tgz";
+      name = "debug-2.2.0.tgz";
+      sha1 = "f87057e995b1a1f6ae6a4960664137bc56f039da";
+    };
+    deps = {
+      "ms-0.7.1" = self.by-version."ms"."0.7.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."debug"."0.6.0" =
+    self.by-version."debug"."0.6.0";
+  by-version."debug"."0.6.0" = self.buildNodePackage {
+    name = "debug-0.6.0";
+    version = "0.6.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/debug/-/debug-0.6.0.tgz";
+      name = "debug-0.6.0.tgz";
+      sha1 = "ce9d5d025d5294b3f0748a494bebaf3c9fd8734f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."debug"."0.7.4" =
+    self.by-version."debug"."0.7.4";
+  by-version."debug"."0.7.4" = self.buildNodePackage {
+    name = "debug-0.7.4";
+    version = "0.7.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/debug/-/debug-0.7.4.tgz";
+      name = "debug-0.7.4.tgz";
+      sha1 = "06e1ea8082c2cb14e39806e22e2f6f757f92af39";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."debug"."2.0.0" =
+    self.by-version."debug"."2.0.0";
+  by-version."debug"."2.0.0" = self.buildNodePackage {
+    name = "debug-2.0.0";
+    version = "2.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/debug/-/debug-2.0.0.tgz";
+      name = "debug-2.0.0.tgz";
+      sha1 = "89bd9df6732b51256bc6705342bba02ed12131ef";
+    };
+    deps = {
+      "ms-0.6.2" = self.by-version."ms"."0.6.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."debug"."~0.7.0" =
+    self.by-version."debug"."0.7.4";
+  by-spec."debug"."~0.7.2" =
+    self.by-version."debug"."0.7.4";
+  by-spec."debug"."~2.2.0" =
+    self.by-version."debug"."2.2.0";
+  by-spec."decamelize"."^1.0.0" =
+    self.by-version."decamelize"."1.0.0";
+  by-version."decamelize"."1.0.0" = self.buildNodePackage {
+    name = "decamelize-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/decamelize/-/decamelize-1.0.0.tgz";
+      name = "decamelize-1.0.0.tgz";
+      sha1 = "5287122f71691d4505b18ff2258dc400a5b23847";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."delayed-stream"."~1.0.0" =
+    self.by-version."delayed-stream"."1.0.0";
+  by-version."delayed-stream"."1.0.0" = self.buildNodePackage {
+    name = "delayed-stream-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz";
+      name = "delayed-stream-1.0.0.tgz";
+      sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."depd"."~1.0.1" =
+    self.by-version."depd"."1.0.1";
+  by-version."depd"."1.0.1" = self.buildNodePackage {
+    name = "depd-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/depd/-/depd-1.0.1.tgz";
+      name = "depd-1.0.1.tgz";
+      sha1 = "80aec64c9d6d97e65cc2a9caa93c0aa6abf73aaa";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."destroy"."1.0.3" =
+    self.by-version."destroy"."1.0.3";
+  by-version."destroy"."1.0.3" = self.buildNodePackage {
+    name = "destroy-1.0.3";
+    version = "1.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/destroy/-/destroy-1.0.3.tgz";
+      name = "destroy-1.0.3.tgz";
+      sha1 = "b433b4724e71fd8551d9885174851c5fc377e2c9";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."diff"."1.0.8" =
+    self.by-version."diff"."1.0.8";
+  by-version."diff"."1.0.8" = self.buildNodePackage {
+    name = "diff-1.0.8";
+    version = "1.0.8";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/diff/-/diff-1.0.8.tgz";
+      name = "diff-1.0.8.tgz";
+      sha1 = "343276308ec991b7bc82267ed55bc1411f971666";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."dom-serializer"."0" =
+    self.by-version."dom-serializer"."0.1.0";
+  by-version."dom-serializer"."0.1.0" = self.buildNodePackage {
+    name = "dom-serializer-0.1.0";
+    version = "0.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz";
+      name = "dom-serializer-0.1.0.tgz";
+      sha1 = "073c697546ce0780ce23be4a28e293e40bc30c82";
+    };
+    deps = {
+      "domelementtype-1.1.3" = self.by-version."domelementtype"."1.1.3";
+      "entities-1.1.1" = self.by-version."entities"."1.1.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."dom-serializer"."~0.0.0" =
+    self.by-version."dom-serializer"."0.0.1";
+  by-version."dom-serializer"."0.0.1" = self.buildNodePackage {
+    name = "dom-serializer-0.0.1";
+    version = "0.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/dom-serializer/-/dom-serializer-0.0.1.tgz";
+      name = "dom-serializer-0.0.1.tgz";
+      sha1 = "9589827f1e32d22c37c829adabd59b3247af8eaf";
+    };
+    deps = {
+      "domelementtype-1.1.3" = self.by-version."domelementtype"."1.1.3";
+      "entities-1.1.1" = self.by-version."entities"."1.1.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."domelementtype"."1" =
+    self.by-version."domelementtype"."1.3.0";
+  by-version."domelementtype"."1.3.0" = self.buildNodePackage {
+    name = "domelementtype-1.3.0";
+    version = "1.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz";
+      name = "domelementtype-1.3.0.tgz";
+      sha1 = "b17aed82e8ab59e52dd9c19b1756e0fc187204c2";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."domelementtype"."~1.1.1" =
+    self.by-version."domelementtype"."1.1.3";
+  by-version."domelementtype"."1.1.3" = self.buildNodePackage {
+    name = "domelementtype-1.1.3";
+    version = "1.1.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz";
+      name = "domelementtype-1.1.3.tgz";
+      sha1 = "bd28773e2642881aec51544924299c5cd822185b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."domhandler"."2.2" =
+    self.by-version."domhandler"."2.2.1";
+  by-version."domhandler"."2.2.1" = self.buildNodePackage {
+    name = "domhandler-2.2.1";
+    version = "2.2.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/domhandler/-/domhandler-2.2.1.tgz";
+      name = "domhandler-2.2.1.tgz";
+      sha1 = "59df9dcd227e808b365ae73e1f6684ac3d946fc2";
+    };
+    deps = {
+      "domelementtype-1.3.0" = self.by-version."domelementtype"."1.3.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."domutils"."1.4" =
+    self.by-version."domutils"."1.4.3";
+  by-version."domutils"."1.4.3" = self.buildNodePackage {
+    name = "domutils-1.4.3";
+    version = "1.4.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/domutils/-/domutils-1.4.3.tgz";
+      name = "domutils-1.4.3.tgz";
+      sha1 = "0865513796c6b306031850e175516baf80b72a6f";
+    };
+    deps = {
+      "domelementtype-1.3.0" = self.by-version."domelementtype"."1.3.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."domutils"."1.5" =
+    self.by-version."domutils"."1.5.1";
+  by-version."domutils"."1.5.1" = self.buildNodePackage {
+    name = "domutils-1.5.1";
+    version = "1.5.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz";
+      name = "domutils-1.5.1.tgz";
+      sha1 = "dcd8488a26f563d61079e48c9f7b7e32373682cf";
+    };
+    deps = {
+      "dom-serializer-0.1.0" = self.by-version."dom-serializer"."0.1.0";
+      "domelementtype-1.3.0" = self.by-version."domelementtype"."1.3.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."duplexer"."~0.1.1" =
+    self.by-version."duplexer"."0.1.1";
+  by-version."duplexer"."0.1.1" = self.buildNodePackage {
+    name = "duplexer-0.1.1";
+    version = "0.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz";
+      name = "duplexer-0.1.1.tgz";
+      sha1 = "ace6ff808c1ce66b57d1ebf97977acb02334cfc1";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ee-first"."1.1.1" =
+    self.by-version."ee-first"."1.1.1";
+  by-version."ee-first"."1.1.1" = self.buildNodePackage {
+    name = "ee-first-1.1.1";
+    version = "1.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz";
+      name = "ee-first-1.1.1.tgz";
+      sha1 = "590c61156b0ae2f4f0255732a158b266bc56b21d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."emitter"."http://github.com/component/emitter/archive/1.0.1.tar.gz" =
+    self.by-version."emitter"."1.0.1";
+  by-version."emitter"."1.0.1" = self.buildNodePackage {
+    name = "emitter-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://github.com/component/emitter/archive/1.0.1.tar.gz";
+      name = "emitter-1.0.1.tgz";
+      sha256 = "0eae744826723877457f7a7ac7f31d68a5a060673b3a883f6a8e325bf48f313d";
+    };
+    deps = {
+      "indexof-0.0.1" = self.by-version."indexof"."0.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."engine.io"."1.3.1" =
+    self.by-version."engine.io"."1.3.1";
+  by-version."engine.io"."1.3.1" = self.buildNodePackage {
+    name = "engine.io-1.3.1";
+    version = "1.3.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/engine.io/-/engine.io-1.3.1.tgz";
+      name = "engine.io-1.3.1.tgz";
+      sha1 = "2d968308fffae5d17f5209b6775246e90d8a705e";
+    };
+    deps = {
+      "debug-0.6.0" = self.by-version."debug"."0.6.0";
+      "ws-0.4.31" = self.by-version."ws"."0.4.31";
+      "engine.io-parser-1.0.6" = self.by-version."engine.io-parser"."1.0.6";
+      "base64id-0.1.0" = self.by-version."base64id"."0.1.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."engine.io-client"."1.3.1" =
+    self.by-version."engine.io-client"."1.3.1";
+  by-version."engine.io-client"."1.3.1" = self.buildNodePackage {
+    name = "engine.io-client-1.3.1";
+    version = "1.3.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/engine.io-client/-/engine.io-client-1.3.1.tgz";
+      name = "engine.io-client-1.3.1.tgz";
+      sha1 = "1c5a65d5c5af6d04b44c22c3dbcd95c39ed1c989";
+    };
+    deps = {
+      "has-cors-1.0.3" = self.by-version."has-cors"."1.0.3";
+      "ws-0.4.31" = self.by-version."ws"."0.4.31";
+      "xmlhttprequest-1.5.0" = self.by-version."xmlhttprequest"."1.5.0";
+      "component-emitter-1.1.2" = self.by-version."component-emitter"."1.1.2";
+      "indexof-0.0.1" = self.by-version."indexof"."0.0.1";
+      "engine.io-parser-1.0.6" = self.by-version."engine.io-parser"."1.0.6";
+      "debug-0.7.4" = self.by-version."debug"."0.7.4";
+      "parseuri-0.0.2" = self.by-version."parseuri"."0.0.2";
+      "parsejson-0.0.1" = self.by-version."parsejson"."0.0.1";
+      "parseqs-0.0.2" = self.by-version."parseqs"."0.0.2";
+      "component-inherit-0.0.3" = self.by-version."component-inherit"."0.0.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."engine.io-parser"."1.0.6" =
+    self.by-version."engine.io-parser"."1.0.6";
+  by-version."engine.io-parser"."1.0.6" = self.buildNodePackage {
+    name = "engine.io-parser-1.0.6";
+    version = "1.0.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.0.6.tgz";
+      name = "engine.io-parser-1.0.6.tgz";
+      sha1 = "d38813143a411cb3b914132ab05bf99e6f7a248e";
+    };
+    deps = {
+      "base64-arraybuffer-0.1.2" = self.by-version."base64-arraybuffer"."0.1.2";
+      "after-0.8.1" = self.by-version."after"."0.8.1";
+      "arraybuffer.slice-0.0.6" = self.by-version."arraybuffer.slice"."0.0.6";
+      "blob-0.0.2" = self.by-version."blob"."0.0.2";
+      "utf8-2.0.0" = self.by-version."utf8"."2.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."entities"."1.0" =
+    self.by-version."entities"."1.0.0";
+  by-version."entities"."1.0.0" = self.buildNodePackage {
+    name = "entities-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/entities/-/entities-1.0.0.tgz";
+      name = "entities-1.0.0.tgz";
+      sha1 = "b2987aa3821347fcde642b24fdfc9e4fb712bf26";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."entities"."~1.1.1" =
+    self.by-version."entities"."1.1.1";
+  by-version."entities"."1.1.1" = self.buildNodePackage {
+    name = "entities-1.1.1";
+    version = "1.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/entities/-/entities-1.1.1.tgz";
+      name = "entities-1.1.1.tgz";
+      sha1 = "6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."escape-html"."1.0.2" =
+    self.by-version."escape-html"."1.0.2";
+  by-version."escape-html"."1.0.2" = self.buildNodePackage {
+    name = "escape-html-1.0.2";
+    version = "1.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/escape-html/-/escape-html-1.0.2.tgz";
+      name = "escape-html-1.0.2.tgz";
+      sha1 = "d77d32fa98e38c2f41ae85e9278e0e0e6ba1022c";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."escape-string-regexp"."1.0.2" =
+    self.by-version."escape-string-regexp"."1.0.2";
+  by-version."escape-string-regexp"."1.0.2" = self.buildNodePackage {
+    name = "escape-string-regexp-1.0.2";
+    version = "1.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.2.tgz";
+      name = "escape-string-regexp-1.0.2.tgz";
+      sha1 = "4dbc2fe674e71949caf3fb2695ce7f2dc1d9a8d1";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."escape-string-regexp"."^1.0.0" =
+    self.by-version."escape-string-regexp"."1.0.3";
+  by-version."escape-string-regexp"."1.0.3" = self.buildNodePackage {
+    name = "escape-string-regexp-1.0.3";
+    version = "1.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz";
+      name = "escape-string-regexp-1.0.3.tgz";
+      sha1 = "9e2d8b25bc2555c3336723750e03f099c2735bb5";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."escape-string-regexp"."^1.0.2" =
+    self.by-version."escape-string-regexp"."1.0.3";
+  by-spec."esprima"."~ 1.0.2" =
+    self.by-version."esprima"."1.0.4";
+  by-version."esprima"."1.0.4" = self.buildNodePackage {
+    name = "esprima-1.0.4";
+    version = "1.0.4";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz";
+      name = "esprima-1.0.4.tgz";
+      sha1 = "9f557e08fc3b4d26ece9dd34f8fbf476b62585ad";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."etag"."~1.7.0" =
+    self.by-version."etag"."1.7.0";
+  by-version."etag"."1.7.0" = self.buildNodePackage {
+    name = "etag-1.7.0";
+    version = "1.7.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/etag/-/etag-1.7.0.tgz";
+      name = "etag-1.7.0.tgz";
+      sha1 = "03d30b5f67dd6e632d2945d30d6652731a34d5d8";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."event-stream"."^3.1.7" =
+    self.by-version."event-stream"."3.3.1";
+  by-version."event-stream"."3.3.1" = self.buildNodePackage {
+    name = "event-stream-3.3.1";
+    version = "3.3.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/event-stream/-/event-stream-3.3.1.tgz";
+      name = "event-stream-3.3.1.tgz";
+      sha1 = "b8cf6c00119181e688f335363daa7915ce890bdb";
+    };
+    deps = {
+      "through-2.3.8" = self.by-version."through"."2.3.8";
+      "duplexer-0.1.1" = self.by-version."duplexer"."0.1.1";
+      "from-0.1.3" = self.by-version."from"."0.1.3";
+      "map-stream-0.1.0" = self.by-version."map-stream"."0.1.0";
+      "pause-stream-0.0.11" = self.by-version."pause-stream"."0.0.11";
+      "split-0.3.3" = self.by-version."split"."0.3.3";
+      "stream-combiner-0.0.4" = self.by-version."stream-combiner"."0.0.4";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "event-stream" = self.by-version."event-stream"."3.3.1";
+  by-spec."eventemitter2"."~0.4.13" =
+    self.by-version."eventemitter2"."0.4.14";
+  by-version."eventemitter2"."0.4.14" = self.buildNodePackage {
+    name = "eventemitter2-0.4.14";
+    version = "0.4.14";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz";
+      name = "eventemitter2-0.4.14.tgz";
+      sha1 = "8f61b75cde012b2e9eb284d4545583b5643b61ab";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."exit"."~0.1.1" =
+    self.by-version."exit"."0.1.2";
+  by-version."exit"."0.1.2" = self.buildNodePackage {
+    name = "exit-0.1.2";
+    version = "0.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/exit/-/exit-0.1.2.tgz";
+      name = "exit-0.1.2.tgz";
+      sha1 = "0632638f8d877cc82107d30a0fff1a17cba1cd0c";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."express"."^4.9.5" =
+    self.by-version."express"."4.13.1";
+  by-version."express"."4.13.1" = self.buildNodePackage {
+    name = "express-4.13.1";
+    version = "4.13.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/express/-/express-4.13.1.tgz";
+      name = "express-4.13.1.tgz";
+      sha1 = "f117aa1d1f6bedbc8de5b6d71fc31a5acd0f63df";
+    };
+    deps = {
+      "accepts-1.2.11" = self.by-version."accepts"."1.2.11";
+      "array-flatten-1.1.0" = self.by-version."array-flatten"."1.1.0";
+      "content-disposition-0.5.0" = self.by-version."content-disposition"."0.5.0";
+      "content-type-1.0.1" = self.by-version."content-type"."1.0.1";
+      "cookie-0.1.3" = self.by-version."cookie"."0.1.3";
+      "cookie-signature-1.0.6" = self.by-version."cookie-signature"."1.0.6";
+      "debug-2.2.0" = self.by-version."debug"."2.2.0";
+      "depd-1.0.1" = self.by-version."depd"."1.0.1";
+      "escape-html-1.0.2" = self.by-version."escape-html"."1.0.2";
+      "etag-1.7.0" = self.by-version."etag"."1.7.0";
+      "finalhandler-0.4.0" = self.by-version."finalhandler"."0.4.0";
+      "fresh-0.3.0" = self.by-version."fresh"."0.3.0";
+      "merge-descriptors-1.0.0" = self.by-version."merge-descriptors"."1.0.0";
+      "methods-1.1.1" = self.by-version."methods"."1.1.1";
+      "on-finished-2.3.0" = self.by-version."on-finished"."2.3.0";
+      "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
+      "path-to-regexp-0.1.6" = self.by-version."path-to-regexp"."0.1.6";
+      "proxy-addr-1.0.8" = self.by-version."proxy-addr"."1.0.8";
+      "qs-4.0.0" = self.by-version."qs"."4.0.0";
+      "range-parser-1.0.2" = self.by-version."range-parser"."1.0.2";
+      "send-0.13.0" = self.by-version."send"."0.13.0";
+      "serve-static-1.10.0" = self.by-version."serve-static"."1.10.0";
+      "type-is-1.6.5" = self.by-version."type-is"."1.6.5";
+      "vary-1.0.1" = self.by-version."vary"."1.0.1";
+      "utils-merge-1.0.0" = self.by-version."utils-merge"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "express" = self.by-version."express"."4.13.1";
+  by-spec."extend"."~3.0.0" =
+    self.by-version."extend"."3.0.0";
+  by-version."extend"."3.0.0" = self.buildNodePackage {
+    name = "extend-3.0.0";
+    version = "3.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/extend/-/extend-3.0.0.tgz";
+      name = "extend-3.0.0.tgz";
+      sha1 = "5a474353b9f3353ddd8176dfd37b91c83a46f1d4";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."faye-websocket"."~0.4.3" =
+    self.by-version."faye-websocket"."0.4.4";
+  by-version."faye-websocket"."0.4.4" = self.buildNodePackage {
+    name = "faye-websocket-0.4.4";
+    version = "0.4.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/faye-websocket/-/faye-websocket-0.4.4.tgz";
+      name = "faye-websocket-0.4.4.tgz";
+      sha1 = "c14c5b3bf14d7417ffbfd990c0a7495cd9f337bc";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."figures"."^1.0.1" =
+    self.by-version."figures"."1.3.5";
+  by-version."figures"."1.3.5" = self.buildNodePackage {
+    name = "figures-1.3.5";
+    version = "1.3.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/figures/-/figures-1.3.5.tgz";
+      name = "figures-1.3.5.tgz";
+      sha1 = "d1a31f4e1d2c2938ecde5c06aa16134cf29f4771";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."finalhandler"."0.4.0" =
+    self.by-version."finalhandler"."0.4.0";
+  by-version."finalhandler"."0.4.0" = self.buildNodePackage {
+    name = "finalhandler-0.4.0";
+    version = "0.4.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/finalhandler/-/finalhandler-0.4.0.tgz";
+      name = "finalhandler-0.4.0.tgz";
+      sha1 = "965a52d9e8d05d2b857548541fb89b53a2497d9b";
+    };
+    deps = {
+      "debug-2.2.0" = self.by-version."debug"."2.2.0";
+      "escape-html-1.0.2" = self.by-version."escape-html"."1.0.2";
+      "on-finished-2.3.0" = self.by-version."on-finished"."2.3.0";
+      "unpipe-1.0.0" = self.by-version."unpipe"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."findup-sync"."~0.1.2" =
+    self.by-version."findup-sync"."0.1.3";
+  by-version."findup-sync"."0.1.3" = self.buildNodePackage {
+    name = "findup-sync-0.1.3";
+    version = "0.1.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/findup-sync/-/findup-sync-0.1.3.tgz";
+      name = "findup-sync-0.1.3.tgz";
+      sha1 = "7f3e7a97b82392c653bf06589bd85190e93c3683";
+    };
+    deps = {
+      "glob-3.2.11" = self.by-version."glob"."3.2.11";
+      "lodash-2.4.2" = self.by-version."lodash"."2.4.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."forever-agent"."~0.6.0" =
+    self.by-version."forever-agent"."0.6.1";
+  by-version."forever-agent"."0.6.1" = self.buildNodePackage {
+    name = "forever-agent-0.6.1";
+    version = "0.6.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz";
+      name = "forever-agent-0.6.1.tgz";
+      sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."form-data"."~1.0.0-rc1" =
+    self.by-version."form-data"."1.0.0-rc2";
+  by-version."form-data"."1.0.0-rc2" = self.buildNodePackage {
+    name = "form-data-1.0.0-rc2";
+    version = "1.0.0-rc2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/form-data/-/form-data-1.0.0-rc2.tgz";
+      name = "form-data-1.0.0-rc2.tgz";
+      sha1 = "5bc9c9b3dd3dec1977b0abf58790192081d95235";
+    };
+    deps = {
+      "async-1.4.0" = self.by-version."async"."1.4.0";
+      "combined-stream-1.0.5" = self.by-version."combined-stream"."1.0.5";
+      "mime-types-2.1.3" = self.by-version."mime-types"."2.1.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."forwarded"."~0.1.0" =
+    self.by-version."forwarded"."0.1.0";
+  by-version."forwarded"."0.1.0" = self.buildNodePackage {
+    name = "forwarded-0.1.0";
+    version = "0.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/forwarded/-/forwarded-0.1.0.tgz";
+      name = "forwarded-0.1.0.tgz";
+      sha1 = "19ef9874c4ae1c297bcf078fde63a09b66a84363";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."fresh"."0.3.0" =
+    self.by-version."fresh"."0.3.0";
+  by-version."fresh"."0.3.0" = self.buildNodePackage {
+    name = "fresh-0.3.0";
+    version = "0.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/fresh/-/fresh-0.3.0.tgz";
+      name = "fresh-0.3.0.tgz";
+      sha1 = "651f838e22424e7566de161d8358caa199f83d4f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."from"."~0" =
+    self.by-version."from"."0.1.3";
+  by-version."from"."0.1.3" = self.buildNodePackage {
+    name = "from-0.1.3";
+    version = "0.1.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/from/-/from-0.1.3.tgz";
+      name = "from-0.1.3.tgz";
+      sha1 = "ef63ac2062ac32acf7862e0d40b44b896f22f3bc";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."gaze"."~0.5.1" =
+    self.by-version."gaze"."0.5.1";
+  by-version."gaze"."0.5.1" = self.buildNodePackage {
+    name = "gaze-0.5.1";
+    version = "0.5.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/gaze/-/gaze-0.5.1.tgz";
+      name = "gaze-0.5.1.tgz";
+      sha1 = "22e731078ef3e49d1c4ab1115ac091192051824c";
+    };
+    deps = {
+      "globule-0.1.0" = self.by-version."globule"."0.1.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."generate-function"."^2.0.0" =
+    self.by-version."generate-function"."2.0.0";
+  by-version."generate-function"."2.0.0" = self.buildNodePackage {
+    name = "generate-function-2.0.0";
+    version = "2.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz";
+      name = "generate-function-2.0.0.tgz";
+      sha1 = "6858fe7c0969b7d4e9093337647ac79f60dfbe74";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."generate-object-property"."^1.1.0" =
+    self.by-version."generate-object-property"."1.2.0";
+  by-version."generate-object-property"."1.2.0" = self.buildNodePackage {
+    name = "generate-object-property-1.2.0";
+    version = "1.2.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz";
+      name = "generate-object-property-1.2.0.tgz";
+      sha1 = "9c0e1c40308ce804f4783618b937fa88f99d50d0";
+    };
+    deps = {
+      "is-property-1.0.2" = self.by-version."is-property"."1.0.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."getobject"."~0.1.0" =
+    self.by-version."getobject"."0.1.0";
+  by-version."getobject"."0.1.0" = self.buildNodePackage {
+    name = "getobject-0.1.0";
+    version = "0.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz";
+      name = "getobject-0.1.0.tgz";
+      sha1 = "047a449789fa160d018f5486ed91320b6ec7885c";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."glob"."3.2.3" =
+    self.by-version."glob"."3.2.3";
+  by-version."glob"."3.2.3" = self.buildNodePackage {
+    name = "glob-3.2.3";
+    version = "3.2.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/glob/-/glob-3.2.3.tgz";
+      name = "glob-3.2.3.tgz";
+      sha1 = "e313eeb249c7affaa5c475286b0e115b59839467";
+    };
+    deps = {
+      "minimatch-0.2.14" = self.by-version."minimatch"."0.2.14";
+      "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."glob"."~3.1.21" =
+    self.by-version."glob"."3.1.21";
+  by-version."glob"."3.1.21" = self.buildNodePackage {
+    name = "glob-3.1.21";
+    version = "3.1.21";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/glob/-/glob-3.1.21.tgz";
+      name = "glob-3.1.21.tgz";
+      sha1 = "d29e0a055dea5138f4d07ed40e8982e83c2066cd";
+    };
+    deps = {
+      "minimatch-0.2.14" = self.by-version."minimatch"."0.2.14";
+      "graceful-fs-1.2.3" = self.by-version."graceful-fs"."1.2.3";
+      "inherits-1.0.0" = self.by-version."inherits"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."glob"."~3.2.9" =
+    self.by-version."glob"."3.2.11";
+  by-version."glob"."3.2.11" = self.buildNodePackage {
+    name = "glob-3.2.11";
+    version = "3.2.11";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/glob/-/glob-3.2.11.tgz";
+      name = "glob-3.2.11.tgz";
+      sha1 = "4a973f635b9190f715d10987d5c00fd2815ebe3d";
+    };
+    deps = {
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "minimatch-0.3.0" = self.by-version."minimatch"."0.3.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."global"."https://github.com/component/global/archive/v2.0.1.tar.gz" =
+    self.by-version."global"."2.0.1";
+  by-version."global"."2.0.1" = self.buildNodePackage {
+    name = "global-2.0.1";
+    version = "2.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "https://github.com/component/global/archive/v2.0.1.tar.gz";
+      name = "global-2.0.1.tgz";
+      sha256 = "42be02b7148745447f6ba21137c972ca82d2cad92d30d63bd4fc310623901785";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."globule"."~0.1.0" =
+    self.by-version."globule"."0.1.0";
+  by-version."globule"."0.1.0" = self.buildNodePackage {
+    name = "globule-0.1.0";
+    version = "0.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/globule/-/globule-0.1.0.tgz";
+      name = "globule-0.1.0.tgz";
+      sha1 = "d9c8edde1da79d125a151b79533b978676346ae5";
+    };
+    deps = {
+      "lodash-1.0.2" = self.by-version."lodash"."1.0.2";
+      "glob-3.1.21" = self.by-version."glob"."3.1.21";
+      "minimatch-0.2.14" = self.by-version."minimatch"."0.2.14";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."graceful-fs"."~1.2.0" =
+    self.by-version."graceful-fs"."1.2.3";
+  by-version."graceful-fs"."1.2.3" = self.buildNodePackage {
+    name = "graceful-fs-1.2.3";
+    version = "1.2.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz";
+      name = "graceful-fs-1.2.3.tgz";
+      sha1 = "15a4806a57547cb2d2dbf27f42e89a8c3451b364";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."graceful-fs"."~2.0.0" =
+    self.by-version."graceful-fs"."2.0.3";
+  by-version."graceful-fs"."2.0.3" = self.buildNodePackage {
+    name = "graceful-fs-2.0.3";
+    version = "2.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz";
+      name = "graceful-fs-2.0.3.tgz";
+      sha1 = "7cd2cdb228a4a3f36e95efa6cc142de7d1a136d0";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."graceful-readlink".">= 1.0.0" =
+    self.by-version."graceful-readlink"."1.0.1";
+  by-version."graceful-readlink"."1.0.1" = self.buildNodePackage {
+    name = "graceful-readlink-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz";
+      name = "graceful-readlink-1.0.1.tgz";
+      sha1 = "4cafad76bc62f02fa039b2f94e9a3dd3a391a725";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."growl"."1.8.1" =
+    self.by-version."growl"."1.8.1";
+  by-version."growl"."1.8.1" = self.buildNodePackage {
+    name = "growl-1.8.1";
+    version = "1.8.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/growl/-/growl-1.8.1.tgz";
+      name = "growl-1.8.1.tgz";
+      sha1 = "4b2dec8d907e93db336624dcec0183502f8c9428";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."grunt"."~0.4.0" =
+    self.by-version."grunt"."0.4.5";
+  by-version."grunt"."0.4.5" = self.buildNodePackage {
+    name = "grunt-0.4.5";
+    version = "0.4.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/grunt/-/grunt-0.4.5.tgz";
+      name = "grunt-0.4.5.tgz";
+      sha1 = "56937cd5194324adff6d207631832a9d6ba4e7f0";
+    };
+    deps = {
+      "async-0.1.22" = self.by-version."async"."0.1.22";
+      "coffee-script-1.3.3" = self.by-version."coffee-script"."1.3.3";
+      "colors-0.6.2" = self.by-version."colors"."0.6.2";
+      "dateformat-1.0.2-1.2.3" = self.by-version."dateformat"."1.0.2-1.2.3";
+      "eventemitter2-0.4.14" = self.by-version."eventemitter2"."0.4.14";
+      "findup-sync-0.1.3" = self.by-version."findup-sync"."0.1.3";
+      "glob-3.1.21" = self.by-version."glob"."3.1.21";
+      "hooker-0.2.3" = self.by-version."hooker"."0.2.3";
+      "iconv-lite-0.2.11" = self.by-version."iconv-lite"."0.2.11";
+      "minimatch-0.2.14" = self.by-version."minimatch"."0.2.14";
+      "nopt-1.0.10" = self.by-version."nopt"."1.0.10";
+      "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
+      "lodash-0.9.2" = self.by-version."lodash"."0.9.2";
+      "underscore.string-2.2.1" = self.by-version."underscore.string"."2.2.1";
+      "which-1.0.9" = self.by-version."which"."1.0.9";
+      "js-yaml-2.0.5" = self.by-version."js-yaml"."2.0.5";
+      "exit-0.1.2" = self.by-version."exit"."0.1.2";
+      "getobject-0.1.0" = self.by-version."getobject"."0.1.0";
+      "grunt-legacy-util-0.2.0" = self.by-version."grunt-legacy-util"."0.2.0";
+      "grunt-legacy-log-0.1.2" = self.by-version."grunt-legacy-log"."0.1.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."grunt"."~0.4.5" =
+    self.by-version."grunt"."0.4.5";
+  "grunt" = self.by-version."grunt"."0.4.5";
+  by-spec."grunt-contrib-uglify"."~0.5.0" =
+    self.by-version."grunt-contrib-uglify"."0.5.1";
+  by-version."grunt-contrib-uglify"."0.5.1" = self.buildNodePackage {
+    name = "grunt-contrib-uglify-0.5.1";
+    version = "0.5.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.5.1.tgz";
+      name = "grunt-contrib-uglify-0.5.1.tgz";
+      sha1 = "15f0aa5e8e8ba421aea980879ee505bc712b6cde";
+    };
+    deps = {
+      "chalk-0.5.1" = self.by-version."chalk"."0.5.1";
+      "lodash-2.4.2" = self.by-version."lodash"."2.4.2";
+      "maxmin-0.2.2" = self.by-version."maxmin"."0.2.2";
+      "uglify-js-2.4.24" = self.by-version."uglify-js"."2.4.24";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [
+      self.by-version."grunt"."0.4.5"];
+    os = [ ];
+    cpu = [ ];
+  };
+  "grunt-contrib-uglify" = self.by-version."grunt-contrib-uglify"."0.5.1";
+  by-spec."grunt-contrib-watch"."^0.6.1" =
+    self.by-version."grunt-contrib-watch"."0.6.1";
+  by-version."grunt-contrib-watch"."0.6.1" = self.buildNodePackage {
+    name = "grunt-contrib-watch-0.6.1";
+    version = "0.6.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-0.6.1.tgz";
+      name = "grunt-contrib-watch-0.6.1.tgz";
+      sha1 = "64fdcba25a635f5b4da1b6ce6f90da0aeb6e3f15";
+    };
+    deps = {
+      "gaze-0.5.1" = self.by-version."gaze"."0.5.1";
+      "tiny-lr-fork-0.0.5" = self.by-version."tiny-lr-fork"."0.0.5";
+      "lodash-2.4.2" = self.by-version."lodash"."2.4.2";
+      "async-0.2.10" = self.by-version."async"."0.2.10";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [
+      self.by-version."grunt"."0.4.5"];
+    os = [ ];
+    cpu = [ ];
+  };
+  "grunt-contrib-watch" = self.by-version."grunt-contrib-watch"."0.6.1";
+  by-spec."grunt-legacy-log"."~0.1.0" =
+    self.by-version."grunt-legacy-log"."0.1.2";
+  by-version."grunt-legacy-log"."0.1.2" = self.buildNodePackage {
+    name = "grunt-legacy-log-0.1.2";
+    version = "0.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-0.1.2.tgz";
+      name = "grunt-legacy-log-0.1.2.tgz";
+      sha1 = "15ee03b61e262e1b36f13762d967923cd1ce515e";
+    };
+    deps = {
+      "colors-0.6.2" = self.by-version."colors"."0.6.2";
+      "grunt-legacy-log-utils-0.1.1" = self.by-version."grunt-legacy-log-utils"."0.1.1";
+      "hooker-0.2.3" = self.by-version."hooker"."0.2.3";
+      "lodash-2.4.2" = self.by-version."lodash"."2.4.2";
+      "underscore.string-2.3.3" = self.by-version."underscore.string"."2.3.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."grunt-legacy-log-utils"."^0.1.1" =
+    self.by-version."grunt-legacy-log-utils"."0.1.1";
+  by-version."grunt-legacy-log-utils"."0.1.1" = self.buildNodePackage {
+    name = "grunt-legacy-log-utils-0.1.1";
+    version = "0.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-0.1.1.tgz";
+      name = "grunt-legacy-log-utils-0.1.1.tgz";
+      sha1 = "c0706b9dd9064e116f36f23fe4e6b048672c0f7e";
+    };
+    deps = {
+      "lodash-2.4.2" = self.by-version."lodash"."2.4.2";
+      "underscore.string-2.3.3" = self.by-version."underscore.string"."2.3.3";
+      "colors-0.6.2" = self.by-version."colors"."0.6.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."grunt-legacy-util"."~0.2.0" =
+    self.by-version."grunt-legacy-util"."0.2.0";
+  by-version."grunt-legacy-util"."0.2.0" = self.buildNodePackage {
+    name = "grunt-legacy-util-0.2.0";
+    version = "0.2.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-0.2.0.tgz";
+      name = "grunt-legacy-util-0.2.0.tgz";
+      sha1 = "93324884dbf7e37a9ff7c026dff451d94a9e554b";
+    };
+    deps = {
+      "hooker-0.2.3" = self.by-version."hooker"."0.2.3";
+      "async-0.1.22" = self.by-version."async"."0.1.22";
+      "lodash-0.9.2" = self.by-version."lodash"."0.9.2";
+      "exit-0.1.2" = self.by-version."exit"."0.1.2";
+      "underscore.string-2.2.1" = self.by-version."underscore.string"."2.2.1";
+      "getobject-0.1.0" = self.by-version."getobject"."0.1.0";
+      "which-1.0.9" = self.by-version."which"."1.0.9";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."gzip-size"."^0.2.0" =
+    self.by-version."gzip-size"."0.2.0";
+  by-version."gzip-size"."0.2.0" = self.buildNodePackage {
+    name = "gzip-size-0.2.0";
+    version = "0.2.0";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/gzip-size/-/gzip-size-0.2.0.tgz";
+      name = "gzip-size-0.2.0.tgz";
+      sha1 = "e3a2a191205fe56ee326f5c271435dfaecfb3e1c";
+    };
+    deps = {
+      "concat-stream-1.5.0" = self.by-version."concat-stream"."1.5.0";
+      "browserify-zlib-0.1.4" = self.by-version."browserify-zlib"."0.1.4";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."handlebars"."^2.0.0" =
+    self.by-version."handlebars"."2.0.0";
+  by-version."handlebars"."2.0.0" = self.buildNodePackage {
+    name = "handlebars-2.0.0";
+    version = "2.0.0";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/handlebars/-/handlebars-2.0.0.tgz";
+      name = "handlebars-2.0.0.tgz";
+      sha1 = "6e9d7f8514a3467fa5e9f82cc158ecfc1d5ac76f";
+    };
+    deps = {
+      "optimist-0.3.7" = self.by-version."optimist"."0.3.7";
+    };
+    optionalDependencies = {
+      "uglify-js-2.3.6" = self.by-version."uglify-js"."2.3.6";
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "handlebars" = self.by-version."handlebars"."2.0.0";
+  by-spec."har-validator"."^1.6.1" =
+    self.by-version."har-validator"."1.8.0";
+  by-version."har-validator"."1.8.0" = self.buildNodePackage {
+    name = "har-validator-1.8.0";
+    version = "1.8.0";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/har-validator/-/har-validator-1.8.0.tgz";
+      name = "har-validator-1.8.0.tgz";
+      sha1 = "d83842b0eb4c435960aeb108a067a3aa94c0eeb2";
+    };
+    deps = {
+      "bluebird-2.9.34" = self.by-version."bluebird"."2.9.34";
+      "chalk-1.1.0" = self.by-version."chalk"."1.1.0";
+      "commander-2.8.1" = self.by-version."commander"."2.8.1";
+      "is-my-json-valid-2.12.1" = self.by-version."is-my-json-valid"."2.12.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."has-ansi"."^0.1.0" =
+    self.by-version."has-ansi"."0.1.0";
+  by-version."has-ansi"."0.1.0" = self.buildNodePackage {
+    name = "has-ansi-0.1.0";
+    version = "0.1.0";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/has-ansi/-/has-ansi-0.1.0.tgz";
+      name = "has-ansi-0.1.0.tgz";
+      sha1 = "84f265aae8c0e6a88a12d7022894b7568894c62e";
+    };
+    deps = {
+      "ansi-regex-0.2.1" = self.by-version."ansi-regex"."0.2.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."has-ansi"."^2.0.0" =
+    self.by-version."has-ansi"."2.0.0";
+  by-version."has-ansi"."2.0.0" = self.buildNodePackage {
+    name = "has-ansi-2.0.0";
+    version = "2.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz";
+      name = "has-ansi-2.0.0.tgz";
+      sha1 = "34f5049ce1ecdf2b0649af3ef24e45ed35416d91";
+    };
+    deps = {
+      "ansi-regex-2.0.0" = self.by-version."ansi-regex"."2.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."has-binary-data"."0.1.1" =
+    self.by-version."has-binary-data"."0.1.1";
+  by-version."has-binary-data"."0.1.1" = self.buildNodePackage {
+    name = "has-binary-data-0.1.1";
+    version = "0.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/has-binary-data/-/has-binary-data-0.1.1.tgz";
+      name = "has-binary-data-0.1.1.tgz";
+      sha1 = "e10749fb87828a52df96f4086587eb4a03966439";
+    };
+    deps = {
+      "isarray-0.0.1" = self.by-version."isarray"."0.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."has-cors"."1.0.3" =
+    self.by-version."has-cors"."1.0.3";
+  by-version."has-cors"."1.0.3" = self.buildNodePackage {
+    name = "has-cors-1.0.3";
+    version = "1.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/has-cors/-/has-cors-1.0.3.tgz";
+      name = "has-cors-1.0.3.tgz";
+      sha1 = "502acb9b3104dac33dd2630eaf2f888b0baf4cb3";
+    };
+    deps = {
+      "global-2.0.1" = self.by-version."global"."2.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."hawk"."~3.1.0" =
+    self.by-version."hawk"."3.1.0";
+  by-version."hawk"."3.1.0" = self.buildNodePackage {
+    name = "hawk-3.1.0";
+    version = "3.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/hawk/-/hawk-3.1.0.tgz";
+      name = "hawk-3.1.0.tgz";
+      sha1 = "8a13ae19977ec607602f3f0b9fd676f18c384e44";
+    };
+    deps = {
+      "hoek-2.14.0" = self.by-version."hoek"."2.14.0";
+      "boom-2.8.0" = self.by-version."boom"."2.8.0";
+      "cryptiles-2.0.4" = self.by-version."cryptiles"."2.0.4";
+      "sntp-1.0.9" = self.by-version."sntp"."1.0.9";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."hoek"."2.x.x" =
+    self.by-version."hoek"."2.14.0";
+  by-version."hoek"."2.14.0" = self.buildNodePackage {
+    name = "hoek-2.14.0";
+    version = "2.14.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/hoek/-/hoek-2.14.0.tgz";
+      name = "hoek-2.14.0.tgz";
+      sha1 = "81211691f52a5a835ae49edbf1e89c9003476aa4";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."hooker"."~0.2.3" =
+    self.by-version."hooker"."0.2.3";
+  by-version."hooker"."0.2.3" = self.buildNodePackage {
+    name = "hooker-0.2.3";
+    version = "0.2.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz";
+      name = "hooker-0.2.3.tgz";
+      sha1 = "b834f723cc4a242aa65963459df6d984c5d3d959";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."htmlparser2"."~3.7.2" =
+    self.by-version."htmlparser2"."3.7.3";
+  by-version."htmlparser2"."3.7.3" = self.buildNodePackage {
+    name = "htmlparser2-3.7.3";
+    version = "3.7.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/htmlparser2/-/htmlparser2-3.7.3.tgz";
+      name = "htmlparser2-3.7.3.tgz";
+      sha1 = "6a64c77637c08c6f30ec2a8157a53333be7cb05e";
+    };
+    deps = {
+      "domhandler-2.2.1" = self.by-version."domhandler"."2.2.1";
+      "domutils-1.5.1" = self.by-version."domutils"."1.5.1";
+      "domelementtype-1.3.0" = self.by-version."domelementtype"."1.3.0";
+      "readable-stream-1.1.13" = self.by-version."readable-stream"."1.1.13";
+      "entities-1.0.0" = self.by-version."entities"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."http-errors"."~1.3.1" =
+    self.by-version."http-errors"."1.3.1";
+  by-version."http-errors"."1.3.1" = self.buildNodePackage {
+    name = "http-errors-1.3.1";
+    version = "1.3.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/http-errors/-/http-errors-1.3.1.tgz";
+      name = "http-errors-1.3.1.tgz";
+      sha1 = "197e22cdebd4198585e8694ef6786197b91ed942";
+    };
+    deps = {
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "statuses-1.2.1" = self.by-version."statuses"."1.2.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."http-signature"."~0.11.0" =
+    self.by-version."http-signature"."0.11.0";
+  by-version."http-signature"."0.11.0" = self.buildNodePackage {
+    name = "http-signature-0.11.0";
+    version = "0.11.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/http-signature/-/http-signature-0.11.0.tgz";
+      name = "http-signature-0.11.0.tgz";
+      sha1 = "1796cf67a001ad5cd6849dca0991485f09089fe6";
+    };
+    deps = {
+      "assert-plus-0.1.5" = self.by-version."assert-plus"."0.1.5";
+      "asn1-0.1.11" = self.by-version."asn1"."0.1.11";
+      "ctype-0.5.3" = self.by-version."ctype"."0.5.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."iconv-lite"."~0.2.11" =
+    self.by-version."iconv-lite"."0.2.11";
+  by-version."iconv-lite"."0.2.11" = self.buildNodePackage {
+    name = "iconv-lite-0.2.11";
+    version = "0.2.11";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.11.tgz";
+      name = "iconv-lite-0.2.11.tgz";
+      sha1 = "1ce60a3a57864a292d1321ff4609ca4bb965adc8";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."indexof"."0.0.1" =
+    self.by-version."indexof"."0.0.1";
+  by-version."indexof"."0.0.1" = self.buildNodePackage {
+    name = "indexof-0.0.1";
+    version = "0.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz";
+      name = "indexof-0.0.1.tgz";
+      sha1 = "82dc336d232b9062179d05ab3293a66059fd435d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."inherits"."1" =
+    self.by-version."inherits"."1.0.0";
+  by-version."inherits"."1.0.0" = self.buildNodePackage {
+    name = "inherits-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz";
+      name = "inherits-1.0.0.tgz";
+      sha1 = "38e1975285bf1f7ba9c84da102bb12771322ac48";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."inherits"."2" =
+    self.by-version."inherits"."2.0.1";
+  by-version."inherits"."2.0.1" = self.buildNodePackage {
+    name = "inherits-2.0.1";
+    version = "2.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz";
+      name = "inherits-2.0.1.tgz";
+      sha1 = "b17d08d326b4423e568eff719f91b0b1cbdf69f1";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."inherits"."~2.0.1" =
+    self.by-version."inherits"."2.0.1";
+  by-spec."ipaddr.js"."1.0.1" =
+    self.by-version."ipaddr.js"."1.0.1";
+  by-version."ipaddr.js"."1.0.1" = self.buildNodePackage {
+    name = "ipaddr.js-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.0.1.tgz";
+      name = "ipaddr.js-1.0.1.tgz";
+      sha1 = "5f38801dc73e0400fc7076386f6ed5215fbd8f95";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."irc-replies"."~2.0.0" =
+    self.by-version."irc-replies"."2.0.1";
+  by-version."irc-replies"."2.0.1" = self.buildNodePackage {
+    name = "irc-replies-2.0.1";
+    version = "2.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/irc-replies/-/irc-replies-2.0.1.tgz";
+      name = "irc-replies-2.0.1.tgz";
+      sha1 = "5bf4125fb6ec0f3929a89647b26e653232942b79";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."is-my-json-valid"."^2.12.0" =
+    self.by-version."is-my-json-valid"."2.12.1";
+  by-version."is-my-json-valid"."2.12.1" = self.buildNodePackage {
+    name = "is-my-json-valid-2.12.1";
+    version = "2.12.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.12.1.tgz";
+      name = "is-my-json-valid-2.12.1.tgz";
+      sha1 = "0ee5c19c9e93bae2760410cc72ef2798b52cc871";
+    };
+    deps = {
+      "generate-function-2.0.0" = self.by-version."generate-function"."2.0.0";
+      "generate-object-property-1.2.0" = self.by-version."generate-object-property"."1.2.0";
+      "jsonpointer-1.1.0" = self.by-version."jsonpointer"."1.1.0";
+      "xtend-4.0.0" = self.by-version."xtend"."4.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."is-property"."^1.0.0" =
+    self.by-version."is-property"."1.0.2";
+  by-version."is-property"."1.0.2" = self.buildNodePackage {
+    name = "is-property-1.0.2";
+    version = "1.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz";
+      name = "is-property-1.0.2.tgz";
+      sha1 = "57fe1c4e48474edd65b09911f26b1cd4095dda84";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."isarray"."0.0.1" =
+    self.by-version."isarray"."0.0.1";
+  by-version."isarray"."0.0.1" = self.buildNodePackage {
+    name = "isarray-0.0.1";
+    version = "0.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz";
+      name = "isarray-0.0.1.tgz";
+      sha1 = "8a18acfca9a8f4177e09abfc6038939b05d1eedf";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."isstream"."~0.1.1" =
+    self.by-version."isstream"."0.1.2";
+  by-version."isstream"."0.1.2" = self.buildNodePackage {
+    name = "isstream-0.1.2";
+    version = "0.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz";
+      name = "isstream-0.1.2.tgz";
+      sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."jade"."0.26.3" =
+    self.by-version."jade"."0.26.3";
+  by-version."jade"."0.26.3" = self.buildNodePackage {
+    name = "jade-0.26.3";
+    version = "0.26.3";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/jade/-/jade-0.26.3.tgz";
+      name = "jade-0.26.3.tgz";
+      sha1 = "8f10d7977d8d79f2f6ff862a81b0513ccb25686c";
+    };
+    deps = {
+      "commander-0.6.1" = self.by-version."commander"."0.6.1";
+      "mkdirp-0.3.0" = self.by-version."mkdirp"."0.3.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."js-yaml"."~2.0.5" =
+    self.by-version."js-yaml"."2.0.5";
+  by-version."js-yaml"."2.0.5" = self.buildNodePackage {
+    name = "js-yaml-2.0.5";
+    version = "2.0.5";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz";
+      name = "js-yaml-2.0.5.tgz";
+      sha1 = "a25ae6509999e97df278c6719da11bd0687743a8";
+    };
+    deps = {
+      "argparse-0.1.16" = self.by-version."argparse"."0.1.16";
+      "esprima-1.0.4" = self.by-version."esprima"."1.0.4";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."json-stringify-safe"."~5.0.0" =
+    self.by-version."json-stringify-safe"."5.0.1";
+  by-version."json-stringify-safe"."5.0.1" = self.buildNodePackage {
+    name = "json-stringify-safe-5.0.1";
+    version = "5.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
+      name = "json-stringify-safe-5.0.1.tgz";
+      sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."json3"."3.2.6" =
+    self.by-version."json3"."3.2.6";
+  by-version."json3"."3.2.6" = self.buildNodePackage {
+    name = "json3-3.2.6";
+    version = "3.2.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/json3/-/json3-3.2.6.tgz";
+      name = "json3-3.2.6.tgz";
+      sha1 = "f6efc93c06a04de9aec53053df2559bb19e2038b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."jsonpointer"."^1.1.0" =
+    self.by-version."jsonpointer"."1.1.0";
+  by-version."jsonpointer"."1.1.0" = self.buildNodePackage {
+    name = "jsonpointer-1.1.0";
+    version = "1.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/jsonpointer/-/jsonpointer-1.1.0.tgz";
+      name = "jsonpointer-1.1.0.tgz";
+      sha1 = "c3c72efaed3b97154163dc01dd349e1cfe0f80fc";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."linewise"."0.0.3" =
+    self.by-version."linewise"."0.0.3";
+  by-version."linewise"."0.0.3" = self.buildNodePackage {
+    name = "linewise-0.0.3";
+    version = "0.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/linewise/-/linewise-0.0.3.tgz";
+      name = "linewise-0.0.3.tgz";
+      sha1 = "bf967ba0dd31faaf09ab5bdb3676ad7f2aa18493";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."lodash"."^2.4.1" =
+    self.by-version."lodash"."2.4.2";
+  by-version."lodash"."2.4.2" = self.buildNodePackage {
+    name = "lodash-2.4.2";
+    version = "2.4.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz";
+      name = "lodash-2.4.2.tgz";
+      sha1 = "fadd834b9683073da179b3eae6d9c0d15053f73e";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."lodash"."~0.9.2" =
+    self.by-version."lodash"."0.9.2";
+  by-version."lodash"."0.9.2" = self.buildNodePackage {
+    name = "lodash-0.9.2";
+    version = "0.9.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz";
+      name = "lodash-0.9.2.tgz";
+      sha1 = "8f3499c5245d346d682e5b0d3b40767e09f1a92c";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."lodash"."~1.0.1" =
+    self.by-version."lodash"."1.0.2";
+  by-version."lodash"."1.0.2" = self.buildNodePackage {
+    name = "lodash-1.0.2";
+    version = "1.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/lodash/-/lodash-1.0.2.tgz";
+      name = "lodash-1.0.2.tgz";
+      sha1 = "8f57560c83b59fc270bd3d561b690043430e2551";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."lodash"."~2.4.1" =
+    self.by-version."lodash"."2.4.2";
+  "lodash" = self.by-version."lodash"."2.4.2";
+  by-spec."lru-cache"."2" =
+    self.by-version."lru-cache"."2.6.5";
+  by-version."lru-cache"."2.6.5" = self.buildNodePackage {
+    name = "lru-cache-2.6.5";
+    version = "2.6.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/lru-cache/-/lru-cache-2.6.5.tgz";
+      name = "lru-cache-2.6.5.tgz";
+      sha1 = "e56d6354148ede8d7707b58d143220fd08df0fd5";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."map-stream"."~0.1.0" =
+    self.by-version."map-stream"."0.1.0";
+  by-version."map-stream"."0.1.0" = self.buildNodePackage {
+    name = "map-stream-0.1.0";
+    version = "0.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz";
+      name = "map-stream-0.1.0.tgz";
+      sha1 = "e56aa94c4c8055a16404a0674b78f215f7c8e194";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."maxmin"."^0.2.0" =
+    self.by-version."maxmin"."0.2.2";
+  by-version."maxmin"."0.2.2" = self.buildNodePackage {
+    name = "maxmin-0.2.2";
+    version = "0.2.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/maxmin/-/maxmin-0.2.2.tgz";
+      name = "maxmin-0.2.2.tgz";
+      sha1 = "a36ced8cc22e3abcd108cfb797a3a4b40275593f";
+    };
+    deps = {
+      "chalk-0.5.1" = self.by-version."chalk"."0.5.1";
+      "figures-1.3.5" = self.by-version."figures"."1.3.5";
+      "gzip-size-0.2.0" = self.by-version."gzip-size"."0.2.0";
+      "pretty-bytes-0.1.2" = self.by-version."pretty-bytes"."0.1.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."media-typer"."0.3.0" =
+    self.by-version."media-typer"."0.3.0";
+  by-version."media-typer"."0.3.0" = self.buildNodePackage {
+    name = "media-typer-0.3.0";
+    version = "0.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz";
+      name = "media-typer-0.3.0.tgz";
+      sha1 = "8710d7af0aa626f8fffa1ce00168545263255748";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."merge-descriptors"."1.0.0" =
+    self.by-version."merge-descriptors"."1.0.0";
+  by-version."merge-descriptors"."1.0.0" = self.buildNodePackage {
+    name = "merge-descriptors-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.0.tgz";
+      name = "merge-descriptors-1.0.0.tgz";
+      sha1 = "2169cf7538e1b0cc87fb88e1502d8474bbf79864";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."methods"."~1.1.1" =
+    self.by-version."methods"."1.1.1";
+  by-version."methods"."1.1.1" = self.buildNodePackage {
+    name = "methods-1.1.1";
+    version = "1.1.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/methods/-/methods-1.1.1.tgz";
+      name = "methods-1.1.1.tgz";
+      sha1 = "17ea6366066d00c58e375b8ec7dfd0453c89822a";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mime"."1.3.4" =
+    self.by-version."mime"."1.3.4";
+  by-version."mime"."1.3.4" = self.buildNodePackage {
+    name = "mime-1.3.4";
+    version = "1.3.4";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mime/-/mime-1.3.4.tgz";
+      name = "mime-1.3.4.tgz";
+      sha1 = "115f9e3b6b3daf2959983cb38f149a2d40eb5d53";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mime-db"."~1.15.0" =
+    self.by-version."mime-db"."1.15.0";
+  by-version."mime-db"."1.15.0" = self.buildNodePackage {
+    name = "mime-db-1.15.0";
+    version = "1.15.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mime-db/-/mime-db-1.15.0.tgz";
+      name = "mime-db-1.15.0.tgz";
+      sha1 = "d219e6214bbcae23a6fa69c0868c4fadc1405e8a";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mime-types"."^2.1.1" =
+    self.by-version."mime-types"."2.1.3";
+  by-version."mime-types"."2.1.3" = self.buildNodePackage {
+    name = "mime-types-2.1.3";
+    version = "2.1.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mime-types/-/mime-types-2.1.3.tgz";
+      name = "mime-types-2.1.3.tgz";
+      sha1 = "f259849c7eb1f85b8f5f826187278a7f74f0c966";
+    };
+    deps = {
+      "mime-db-1.15.0" = self.by-version."mime-db"."1.15.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mime-types"."~2.1.2" =
+    self.by-version."mime-types"."2.1.3";
+  by-spec."mime-types"."~2.1.3" =
+    self.by-version."mime-types"."2.1.3";
+  by-spec."minimatch"."0.3" =
+    self.by-version."minimatch"."0.3.0";
+  by-version."minimatch"."0.3.0" = self.buildNodePackage {
+    name = "minimatch-0.3.0";
+    version = "0.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz";
+      name = "minimatch-0.3.0.tgz";
+      sha1 = "275d8edaac4f1bb3326472089e7949c8394699dd";
+    };
+    deps = {
+      "lru-cache-2.6.5" = self.by-version."lru-cache"."2.6.5";
+      "sigmund-1.0.1" = self.by-version."sigmund"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."minimatch"."~0.2.11" =
+    self.by-version."minimatch"."0.2.14";
+  by-version."minimatch"."0.2.14" = self.buildNodePackage {
+    name = "minimatch-0.2.14";
+    version = "0.2.14";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz";
+      name = "minimatch-0.2.14.tgz";
+      sha1 = "c74e780574f63c6f9a090e90efbe6ef53a6a756a";
+    };
+    deps = {
+      "lru-cache-2.6.5" = self.by-version."lru-cache"."2.6.5";
+      "sigmund-1.0.1" = self.by-version."sigmund"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."minimatch"."~0.2.12" =
+    self.by-version."minimatch"."0.2.14";
+  by-spec."minimist"."0.0.8" =
+    self.by-version."minimist"."0.0.8";
+  by-version."minimist"."0.0.8" = self.buildNodePackage {
+    name = "minimist-0.0.8";
+    version = "0.0.8";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
+      name = "minimist-0.0.8.tgz";
+      sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mkdirp"."0.3.0" =
+    self.by-version."mkdirp"."0.3.0";
+  by-version."mkdirp"."0.3.0" = self.buildNodePackage {
+    name = "mkdirp-0.3.0";
+    version = "0.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz";
+      name = "mkdirp-0.3.0.tgz";
+      sha1 = "1bbf5ab1ba827af23575143490426455f481fe1e";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mkdirp"."0.5.0" =
+    self.by-version."mkdirp"."0.5.0";
+  by-version."mkdirp"."0.5.0" = self.buildNodePackage {
+    name = "mkdirp-0.5.0";
+    version = "0.5.0";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz";
+      name = "mkdirp-0.5.0.tgz";
+      sha1 = "1d73076a6df986cd9344e15e71fcc05a4c9abf12";
+    };
+    deps = {
+      "minimist-0.0.8" = self.by-version."minimist"."0.0.8";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mkdirp"."^0.5.0" =
+    self.by-version."mkdirp"."0.5.1";
+  by-version."mkdirp"."0.5.1" = self.buildNodePackage {
+    name = "mkdirp-0.5.1";
+    version = "0.5.1";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
+      name = "mkdirp-0.5.1.tgz";
+      sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
+    };
+    deps = {
+      "minimist-0.0.8" = self.by-version."minimist"."0.0.8";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "mkdirp" = self.by-version."mkdirp"."0.5.1";
+  by-spec."mocha"."~2.0.1" =
+    self.by-version."mocha"."2.0.1";
+  by-version."mocha"."2.0.1" = self.buildNodePackage {
+    name = "mocha-2.0.1";
+    version = "2.0.1";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mocha/-/mocha-2.0.1.tgz";
+      name = "mocha-2.0.1.tgz";
+      sha1 = "5a16e88b856d0c4145d8c6888c27ebd4fab13e90";
+    };
+    deps = {
+      "commander-2.3.0" = self.by-version."commander"."2.3.0";
+      "debug-2.0.0" = self.by-version."debug"."2.0.0";
+      "diff-1.0.8" = self.by-version."diff"."1.0.8";
+      "escape-string-regexp-1.0.2" = self.by-version."escape-string-regexp"."1.0.2";
+      "glob-3.2.3" = self.by-version."glob"."3.2.3";
+      "growl-1.8.1" = self.by-version."growl"."1.8.1";
+      "jade-0.26.3" = self.by-version."jade"."0.26.3";
+      "mkdirp-0.5.0" = self.by-version."mkdirp"."0.5.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "mocha" = self.by-version."mocha"."2.0.1";
+  by-spec."moment"."~2.7.0" =
+    self.by-version."moment"."2.7.0";
+  by-version."moment"."2.7.0" = self.buildNodePackage {
+    name = "moment-2.7.0";
+    version = "2.7.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/moment/-/moment-2.7.0.tgz";
+      name = "moment-2.7.0.tgz";
+      sha1 = "359a19ec634cda3c706c8709adda54c0329aaec4";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "moment" = self.by-version."moment"."2.7.0";
+  by-spec."ms"."0.6.2" =
+    self.by-version."ms"."0.6.2";
+  by-version."ms"."0.6.2" = self.buildNodePackage {
+    name = "ms-0.6.2";
+    version = "0.6.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ms/-/ms-0.6.2.tgz";
+      name = "ms-0.6.2.tgz";
+      sha1 = "d89c2124c6fdc1353d65a8b77bf1aac4b193708c";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ms"."0.7.1" =
+    self.by-version."ms"."0.7.1";
+  by-version."ms"."0.7.1" = self.buildNodePackage {
+    name = "ms-0.7.1";
+    version = "0.7.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ms/-/ms-0.7.1.tgz";
+      name = "ms-0.7.1.tgz";
+      sha1 = "9cd13c03adbff25b65effde7ce864ee952017098";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."mute-stream"."~0.0.4" =
+    self.by-version."mute-stream"."0.0.5";
+  by-version."mute-stream"."0.0.5" = self.buildNodePackage {
+    name = "mute-stream-0.0.5";
+    version = "0.0.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz";
+      name = "mute-stream-0.0.5.tgz";
+      sha1 = "8fbfabb0a98a253d3184331f9e8deb7372fac6c0";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."nan"."~0.3.0" =
+    self.by-version."nan"."0.3.2";
+  by-version."nan"."0.3.2" = self.buildNodePackage {
+    name = "nan-0.3.2";
+    version = "0.3.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/nan/-/nan-0.3.2.tgz";
+      name = "nan-0.3.2.tgz";
+      sha1 = "0df1935cab15369075ef160ad2894107aa14dc2d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."negotiator"."0.5.3" =
+    self.by-version."negotiator"."0.5.3";
+  by-version."negotiator"."0.5.3" = self.buildNodePackage {
+    name = "negotiator-0.5.3";
+    version = "0.5.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/negotiator/-/negotiator-0.5.3.tgz";
+      name = "negotiator-0.5.3.tgz";
+      sha1 = "269d5c476810ec92edbe7b6c2f28316384f9a7e8";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."node-uuid"."~1.4.0" =
+    self.by-version."node-uuid"."1.4.3";
+  by-version."node-uuid"."1.4.3" = self.buildNodePackage {
+    name = "node-uuid-1.4.3";
+    version = "1.4.3";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/node-uuid/-/node-uuid-1.4.3.tgz";
+      name = "node-uuid-1.4.3.tgz";
+      sha1 = "319bb7a56e7cb63f00b5c0cd7851cd4b4ddf1df9";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."nopt"."~1.0.10" =
+    self.by-version."nopt"."1.0.10";
+  by-version."nopt"."1.0.10" = self.buildNodePackage {
+    name = "nopt-1.0.10";
+    version = "1.0.10";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz";
+      name = "nopt-1.0.10.tgz";
+      sha1 = "6ddd21bd2a31417b92727dd585f8a6f37608ebee";
+    };
+    deps = {
+      "abbrev-1.0.7" = self.by-version."abbrev"."1.0.7";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."nopt"."~2.0.0" =
+    self.by-version."nopt"."2.0.0";
+  by-version."nopt"."2.0.0" = self.buildNodePackage {
+    name = "nopt-2.0.0";
+    version = "2.0.0";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/nopt/-/nopt-2.0.0.tgz";
+      name = "nopt-2.0.0.tgz";
+      sha1 = "ca7416f20a5e3f9c3b86180f96295fa3d0b52e0d";
+    };
+    deps = {
+      "abbrev-1.0.7" = self.by-version."abbrev"."1.0.7";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."noptify"."~0.0.3" =
+    self.by-version."noptify"."0.0.3";
+  by-version."noptify"."0.0.3" = self.buildNodePackage {
+    name = "noptify-0.0.3";
+    version = "0.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/noptify/-/noptify-0.0.3.tgz";
+      name = "noptify-0.0.3.tgz";
+      sha1 = "58f654a73d9753df0c51d9686dc92104a67f4bbb";
+    };
+    deps = {
+      "nopt-2.0.0" = self.by-version."nopt"."2.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."oauth-sign"."~0.8.0" =
+    self.by-version."oauth-sign"."0.8.0";
+  by-version."oauth-sign"."0.8.0" = self.buildNodePackage {
+    name = "oauth-sign-0.8.0";
+    version = "0.8.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.0.tgz";
+      name = "oauth-sign-0.8.0.tgz";
+      sha1 = "938fdc875765ba527137d8aec9d178e24debc553";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."object-component"."0.0.3" =
+    self.by-version."object-component"."0.0.3";
+  by-version."object-component"."0.0.3" = self.buildNodePackage {
+    name = "object-component-0.0.3";
+    version = "0.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz";
+      name = "object-component-0.0.3.tgz";
+      sha1 = "f0c69aa50efc95b866c186f400a33769cb2f1291";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."on-finished"."~2.3.0" =
+    self.by-version."on-finished"."2.3.0";
+  by-version."on-finished"."2.3.0" = self.buildNodePackage {
+    name = "on-finished-2.3.0";
+    version = "2.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz";
+      name = "on-finished-2.3.0.tgz";
+      sha1 = "20f1336481b083cd75337992a16971aa2d906947";
+    };
+    deps = {
+      "ee-first-1.1.1" = self.by-version."ee-first"."1.1.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."optimist"."~0.3" =
+    self.by-version."optimist"."0.3.7";
+  by-version."optimist"."0.3.7" = self.buildNodePackage {
+    name = "optimist-0.3.7";
+    version = "0.3.7";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz";
+      name = "optimist-0.3.7.tgz";
+      sha1 = "c90941ad59e4273328923074d2cf2e7cbc6ec0d9";
+    };
+    deps = {
+      "wordwrap-0.0.3" = self.by-version."wordwrap"."0.0.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."optimist"."~0.3.5" =
+    self.by-version."optimist"."0.3.7";
+  by-spec."options".">=0.0.5" =
+    self.by-version."options"."0.0.6";
+  by-version."options"."0.0.6" = self.buildNodePackage {
+    name = "options-0.0.6";
+    version = "0.0.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/options/-/options-0.0.6.tgz";
+      name = "options-0.0.6.tgz";
+      sha1 = "ec22d312806bb53e731773e7cdaefcf1c643128f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."pako"."~0.2.0" =
+    self.by-version."pako"."0.2.7";
+  by-version."pako"."0.2.7" = self.buildNodePackage {
+    name = "pako-0.2.7";
+    version = "0.2.7";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/pako/-/pako-0.2.7.tgz";
+      name = "pako-0.2.7.tgz";
+      sha1 = "90e8917affd5ee2b69dfe943ec16b783c4e0c441";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."parsejson"."0.0.1" =
+    self.by-version."parsejson"."0.0.1";
+  by-version."parsejson"."0.0.1" = self.buildNodePackage {
+    name = "parsejson-0.0.1";
+    version = "0.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/parsejson/-/parsejson-0.0.1.tgz";
+      name = "parsejson-0.0.1.tgz";
+      sha1 = "9b10c6c0d825ab589e685153826de0a3ba278bcc";
+    };
+    deps = {
+      "better-assert-1.0.2" = self.by-version."better-assert"."1.0.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."parseqs"."0.0.2" =
+    self.by-version."parseqs"."0.0.2";
+  by-version."parseqs"."0.0.2" = self.buildNodePackage {
+    name = "parseqs-0.0.2";
+    version = "0.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/parseqs/-/parseqs-0.0.2.tgz";
+      name = "parseqs-0.0.2.tgz";
+      sha1 = "9dfe70b2cddac388bde4f35b1f240fa58adbe6c7";
+    };
+    deps = {
+      "better-assert-1.0.2" = self.by-version."better-assert"."1.0.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."parseuri"."0.0.2" =
+    self.by-version."parseuri"."0.0.2";
+  by-version."parseuri"."0.0.2" = self.buildNodePackage {
+    name = "parseuri-0.0.2";
+    version = "0.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/parseuri/-/parseuri-0.0.2.tgz";
+      name = "parseuri-0.0.2.tgz";
+      sha1 = "db41878f2d6964718be870b3140973d8093be156";
+    };
+    deps = {
+      "better-assert-1.0.2" = self.by-version."better-assert"."1.0.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."parseurl"."~1.3.0" =
+    self.by-version."parseurl"."1.3.0";
+  by-version."parseurl"."1.3.0" = self.buildNodePackage {
+    name = "parseurl-1.3.0";
+    version = "1.3.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/parseurl/-/parseurl-1.3.0.tgz";
+      name = "parseurl-1.3.0.tgz";
+      sha1 = "b58046db4223e145afa76009e61bac87cc2281b3";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."path-to-regexp"."0.1.6" =
+    self.by-version."path-to-regexp"."0.1.6";
+  by-version."path-to-regexp"."0.1.6" = self.buildNodePackage {
+    name = "path-to-regexp-0.1.6";
+    version = "0.1.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.6.tgz";
+      name = "path-to-regexp-0.1.6.tgz";
+      sha1 = "f01fd5734047b6bfbc5f208c6135a33d7af09c36";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."pause-stream"."0.0.11" =
+    self.by-version."pause-stream"."0.0.11";
+  by-version."pause-stream"."0.0.11" = self.buildNodePackage {
+    name = "pause-stream-0.0.11";
+    version = "0.0.11";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz";
+      name = "pause-stream-0.0.11.tgz";
+      sha1 = "fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445";
+    };
+    deps = {
+      "through-2.3.8" = self.by-version."through"."2.3.8";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."pretty-bytes"."^0.1.0" =
+    self.by-version."pretty-bytes"."0.1.2";
+  by-version."pretty-bytes"."0.1.2" = self.buildNodePackage {
+    name = "pretty-bytes-0.1.2";
+    version = "0.1.2";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/pretty-bytes/-/pretty-bytes-0.1.2.tgz";
+      name = "pretty-bytes-0.1.2.tgz";
+      sha1 = "cd90294d58a1ca4e8a5d0fb9c8225998881acf00";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."process-nextick-args"."~1.0.0" =
+    self.by-version."process-nextick-args"."1.0.2";
+  by-version."process-nextick-args"."1.0.2" = self.buildNodePackage {
+    name = "process-nextick-args-1.0.2";
+    version = "1.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.2.tgz";
+      name = "process-nextick-args-1.0.2.tgz";
+      sha1 = "8b4d3fc586668bd5b6573e732edf2b71c1c1d8aa";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."proxy-addr"."~1.0.8" =
+    self.by-version."proxy-addr"."1.0.8";
+  by-version."proxy-addr"."1.0.8" = self.buildNodePackage {
+    name = "proxy-addr-1.0.8";
+    version = "1.0.8";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/proxy-addr/-/proxy-addr-1.0.8.tgz";
+      name = "proxy-addr-1.0.8.tgz";
+      sha1 = "db54ec878bcc1053d57646609219b3715678bafe";
+    };
+    deps = {
+      "forwarded-0.1.0" = self.by-version."forwarded"."0.1.0";
+      "ipaddr.js-1.0.1" = self.by-version."ipaddr.js"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."qs"."4.0.0" =
+    self.by-version."qs"."4.0.0";
+  by-version."qs"."4.0.0" = self.buildNodePackage {
+    name = "qs-4.0.0";
+    version = "4.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/qs/-/qs-4.0.0.tgz";
+      name = "qs-4.0.0.tgz";
+      sha1 = "c31d9b74ec27df75e543a86c78728ed8d4623607";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."qs"."~0.5.2" =
+    self.by-version."qs"."0.5.6";
+  by-version."qs"."0.5.6" = self.buildNodePackage {
+    name = "qs-0.5.6";
+    version = "0.5.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/qs/-/qs-0.5.6.tgz";
+      name = "qs-0.5.6.tgz";
+      sha1 = "31b1ad058567651c526921506b9a8793911a0384";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."qs"."~4.0.0" =
+    self.by-version."qs"."4.0.0";
+  by-spec."range-parser"."~1.0.2" =
+    self.by-version."range-parser"."1.0.2";
+  by-version."range-parser"."1.0.2" = self.buildNodePackage {
+    name = "range-parser-1.0.2";
+    version = "1.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/range-parser/-/range-parser-1.0.2.tgz";
+      name = "range-parser-1.0.2.tgz";
+      sha1 = "06a12a42e5131ba8e457cd892044867f2344e549";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."read"."^1.0.5" =
+    self.by-version."read"."1.0.6";
+  by-version."read"."1.0.6" = self.buildNodePackage {
+    name = "read-1.0.6";
+    version = "1.0.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/read/-/read-1.0.6.tgz";
+      name = "read-1.0.6.tgz";
+      sha1 = "09873c14ecc114d063fad43b8ca5a33d304721c8";
+    };
+    deps = {
+      "mute-stream-0.0.5" = self.by-version."mute-stream"."0.0.5";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "read" = self.by-version."read"."1.0.6";
+  by-spec."readable-stream"."1.1" =
+    self.by-version."readable-stream"."1.1.13";
+  by-version."readable-stream"."1.1.13" = self.buildNodePackage {
+    name = "readable-stream-1.1.13";
+    version = "1.1.13";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz";
+      name = "readable-stream-1.1.13.tgz";
+      sha1 = "f6eef764f514c89e2b9e23146a75ba106756d23e";
+    };
+    deps = {
+      "core-util-is-1.0.1" = self.by-version."core-util-is"."1.0.1";
+      "isarray-0.0.1" = self.by-version."isarray"."0.0.1";
+      "string_decoder-0.10.31" = self.by-version."string_decoder"."0.10.31";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."readable-stream"."~2.0.0" =
+    self.by-version."readable-stream"."2.0.2";
+  by-version."readable-stream"."2.0.2" = self.buildNodePackage {
+    name = "readable-stream-2.0.2";
+    version = "2.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/readable-stream/-/readable-stream-2.0.2.tgz";
+      name = "readable-stream-2.0.2.tgz";
+      sha1 = "bec81beae8cf455168bc2e5b2b31f5bcfaed9b1b";
+    };
+    deps = {
+      "core-util-is-1.0.1" = self.by-version."core-util-is"."1.0.1";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "isarray-0.0.1" = self.by-version."isarray"."0.0.1";
+      "process-nextick-args-1.0.2" = self.by-version."process-nextick-args"."1.0.2";
+      "string_decoder-0.10.31" = self.by-version."string_decoder"."0.10.31";
+      "util-deprecate-1.0.1" = self.by-version."util-deprecate"."1.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."request"."^2.51.0" =
+    self.by-version."request"."2.60.0";
+  by-version."request"."2.60.0" = self.buildNodePackage {
+    name = "request-2.60.0";
+    version = "2.60.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/request/-/request-2.60.0.tgz";
+      name = "request-2.60.0.tgz";
+      sha1 = "498820957fcdded1d37749069610c85f61a29f2d";
+    };
+    deps = {
+      "bl-1.0.0" = self.by-version."bl"."1.0.0";
+      "caseless-0.11.0" = self.by-version."caseless"."0.11.0";
+      "extend-3.0.0" = self.by-version."extend"."3.0.0";
+      "forever-agent-0.6.1" = self.by-version."forever-agent"."0.6.1";
+      "form-data-1.0.0-rc2" = self.by-version."form-data"."1.0.0-rc2";
+      "json-stringify-safe-5.0.1" = self.by-version."json-stringify-safe"."5.0.1";
+      "mime-types-2.1.3" = self.by-version."mime-types"."2.1.3";
+      "node-uuid-1.4.3" = self.by-version."node-uuid"."1.4.3";
+      "qs-4.0.0" = self.by-version."qs"."4.0.0";
+      "tunnel-agent-0.4.1" = self.by-version."tunnel-agent"."0.4.1";
+      "tough-cookie-2.0.0" = self.by-version."tough-cookie"."2.0.0";
+      "http-signature-0.11.0" = self.by-version."http-signature"."0.11.0";
+      "oauth-sign-0.8.0" = self.by-version."oauth-sign"."0.8.0";
+      "hawk-3.1.0" = self.by-version."hawk"."3.1.0";
+      "aws-sign2-0.5.0" = self.by-version."aws-sign2"."0.5.0";
+      "stringstream-0.0.4" = self.by-version."stringstream"."0.0.4";
+      "combined-stream-1.0.5" = self.by-version."combined-stream"."1.0.5";
+      "isstream-0.1.2" = self.by-version."isstream"."0.1.2";
+      "har-validator-1.8.0" = self.by-version."har-validator"."1.8.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "request" = self.by-version."request"."2.60.0";
+  by-spec."rimraf"."~2.2.8" =
+    self.by-version."rimraf"."2.2.8";
+  by-version."rimraf"."2.2.8" = self.buildNodePackage {
+    name = "rimraf-2.2.8";
+    version = "2.2.8";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz";
+      name = "rimraf-2.2.8.tgz";
+      sha1 = "e439be2aaee327321952730f99a8929e4fc50582";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."send"."0.13.0" =
+    self.by-version."send"."0.13.0";
+  by-version."send"."0.13.0" = self.buildNodePackage {
+    name = "send-0.13.0";
+    version = "0.13.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/send/-/send-0.13.0.tgz";
+      name = "send-0.13.0.tgz";
+      sha1 = "518f921aeb0560aec7dcab2990b14cf6f3cce5de";
+    };
+    deps = {
+      "debug-2.2.0" = self.by-version."debug"."2.2.0";
+      "depd-1.0.1" = self.by-version."depd"."1.0.1";
+      "destroy-1.0.3" = self.by-version."destroy"."1.0.3";
+      "escape-html-1.0.2" = self.by-version."escape-html"."1.0.2";
+      "etag-1.7.0" = self.by-version."etag"."1.7.0";
+      "fresh-0.3.0" = self.by-version."fresh"."0.3.0";
+      "http-errors-1.3.1" = self.by-version."http-errors"."1.3.1";
+      "mime-1.3.4" = self.by-version."mime"."1.3.4";
+      "ms-0.7.1" = self.by-version."ms"."0.7.1";
+      "on-finished-2.3.0" = self.by-version."on-finished"."2.3.0";
+      "range-parser-1.0.2" = self.by-version."range-parser"."1.0.2";
+      "statuses-1.2.1" = self.by-version."statuses"."1.2.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."serve-static"."~1.10.0" =
+    self.by-version."serve-static"."1.10.0";
+  by-version."serve-static"."1.10.0" = self.buildNodePackage {
+    name = "serve-static-1.10.0";
+    version = "1.10.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/serve-static/-/serve-static-1.10.0.tgz";
+      name = "serve-static-1.10.0.tgz";
+      sha1 = "be632faa685820e4a43ed3df1379135cc4f370d7";
+    };
+    deps = {
+      "escape-html-1.0.2" = self.by-version."escape-html"."1.0.2";
+      "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
+      "send-0.13.0" = self.by-version."send"."0.13.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."sigmund"."~1.0.0" =
+    self.by-version."sigmund"."1.0.1";
+  by-version."sigmund"."1.0.1" = self.buildNodePackage {
+    name = "sigmund-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz";
+      name = "sigmund-1.0.1.tgz";
+      sha1 = "3ff21f198cad2175f9f3b781853fd94d0d19b590";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."slate-irc"."~0.7.3" =
+    self.by-version."slate-irc"."0.7.3";
+  by-version."slate-irc"."0.7.3" = self.buildNodePackage {
+    name = "slate-irc-0.7.3";
+    version = "0.7.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/slate-irc/-/slate-irc-0.7.3.tgz";
+      name = "slate-irc-0.7.3.tgz";
+      sha1 = "8d01f2bc809e00a5b2faca7d8d3130d155422a77";
+    };
+    deps = {
+      "irc-replies-2.0.1" = self.by-version."irc-replies"."2.0.1";
+      "slate-irc-parser-0.0.2" = self.by-version."slate-irc-parser"."0.0.2";
+      "debug-2.2.0" = self.by-version."debug"."2.2.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "slate-irc" = self.by-version."slate-irc"."0.7.3";
+  by-spec."slate-irc-parser"."0.0.2" =
+    self.by-version."slate-irc-parser"."0.0.2";
+  by-version."slate-irc-parser"."0.0.2" = self.buildNodePackage {
+    name = "slate-irc-parser-0.0.2";
+    version = "0.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/slate-irc-parser/-/slate-irc-parser-0.0.2.tgz";
+      name = "slate-irc-parser-0.0.2.tgz";
+      sha1 = "0c5f8f20d817bb85329da9fca135c66b05947d80";
+    };
+    deps = {
+      "linewise-0.0.3" = self.by-version."linewise"."0.0.3";
+      "debug-0.7.4" = self.by-version."debug"."0.7.4";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."sntp"."1.x.x" =
+    self.by-version."sntp"."1.0.9";
+  by-version."sntp"."1.0.9" = self.buildNodePackage {
+    name = "sntp-1.0.9";
+    version = "1.0.9";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz";
+      name = "sntp-1.0.9.tgz";
+      sha1 = "6541184cc90aeea6c6e7b35e2659082443c66198";
+    };
+    deps = {
+      "hoek-2.14.0" = self.by-version."hoek"."2.14.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."socket.io"."~1.0.6" =
+    self.by-version."socket.io"."1.0.6";
+  by-version."socket.io"."1.0.6" = self.buildNodePackage {
+    name = "socket.io-1.0.6";
+    version = "1.0.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/socket.io/-/socket.io-1.0.6.tgz";
+      name = "socket.io-1.0.6.tgz";
+      sha1 = "b566532888dae3ac9058a12f294015ebdfa8084a";
+    };
+    deps = {
+      "engine.io-1.3.1" = self.by-version."engine.io"."1.3.1";
+      "socket.io-parser-2.2.0" = self.by-version."socket.io-parser"."2.2.0";
+      "socket.io-client-1.0.6" = self.by-version."socket.io-client"."1.0.6";
+      "socket.io-adapter-0.2.0" = self.by-version."socket.io-adapter"."0.2.0";
+      "has-binary-data-0.1.1" = self.by-version."has-binary-data"."0.1.1";
+      "debug-0.7.4" = self.by-version."debug"."0.7.4";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  "socket.io" = self.by-version."socket.io"."1.0.6";
+  by-spec."socket.io-adapter"."0.2.0" =
+    self.by-version."socket.io-adapter"."0.2.0";
+  by-version."socket.io-adapter"."0.2.0" = self.buildNodePackage {
+    name = "socket.io-adapter-0.2.0";
+    version = "0.2.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-0.2.0.tgz";
+      name = "socket.io-adapter-0.2.0.tgz";
+      sha1 = "bd39329b8961371787e24f345b074ec9cf000e33";
+    };
+    deps = {
+      "debug-0.7.4" = self.by-version."debug"."0.7.4";
+      "socket.io-parser-2.1.2" = self.by-version."socket.io-parser"."2.1.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."socket.io-client"."1.0.6" =
+    self.by-version."socket.io-client"."1.0.6";
+  by-version."socket.io-client"."1.0.6" = self.buildNodePackage {
+    name = "socket.io-client-1.0.6";
+    version = "1.0.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/socket.io-client/-/socket.io-client-1.0.6.tgz";
+      name = "socket.io-client-1.0.6.tgz";
+      sha1 = "c86cb3e507ab2f96da4500bd34fcf46a1e9dfe5e";
+    };
+    deps = {
+      "debug-0.7.4" = self.by-version."debug"."0.7.4";
+      "engine.io-client-1.3.1" = self.by-version."engine.io-client"."1.3.1";
+      "component-bind-1.0.0" = self.by-version."component-bind"."1.0.0";
+      "component-emitter-1.1.2" = self.by-version."component-emitter"."1.1.2";
+      "object-component-0.0.3" = self.by-version."object-component"."0.0.3";
+      "socket.io-parser-2.2.0" = self.by-version."socket.io-parser"."2.2.0";
+      "has-binary-data-0.1.1" = self.by-version."has-binary-data"."0.1.1";
+      "indexof-0.0.1" = self.by-version."indexof"."0.0.1";
+      "parseuri-0.0.2" = self.by-version."parseuri"."0.0.2";
+      "to-array-0.1.3" = self.by-version."to-array"."0.1.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."socket.io-parser"."2.1.2" =
+    self.by-version."socket.io-parser"."2.1.2";
+  by-version."socket.io-parser"."2.1.2" = self.buildNodePackage {
+    name = "socket.io-parser-2.1.2";
+    version = "2.1.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/socket.io-parser/-/socket.io-parser-2.1.2.tgz";
+      name = "socket.io-parser-2.1.2.tgz";
+      sha1 = "876655b9edd555c5bdf7301cedf30a436c67b8b0";
+    };
+    deps = {
+      "debug-0.7.4" = self.by-version."debug"."0.7.4";
+      "json3-3.2.6" = self.by-version."json3"."3.2.6";
+      "emitter-1.0.1" = self.by-version."emitter"."1.0.1";
+      "isarray-0.0.1" = self.by-version."isarray"."0.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."socket.io-parser"."2.2.0" =
+    self.by-version."socket.io-parser"."2.2.0";
+  by-version."socket.io-parser"."2.2.0" = self.buildNodePackage {
+    name = "socket.io-parser-2.2.0";
+    version = "2.2.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/socket.io-parser/-/socket.io-parser-2.2.0.tgz";
+      name = "socket.io-parser-2.2.0.tgz";
+      sha1 = "2609601f59e6a7fab436a53be3d333fbbfcbd30a";
+    };
+    deps = {
+      "debug-0.7.4" = self.by-version."debug"."0.7.4";
+      "json3-3.2.6" = self.by-version."json3"."3.2.6";
+      "emitter-1.0.1" = self.by-version."emitter"."1.0.1";
+      "isarray-0.0.1" = self.by-version."isarray"."0.0.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."source-map"."0.1.34" =
+    self.by-version."source-map"."0.1.34";
+  by-version."source-map"."0.1.34" = self.buildNodePackage {
+    name = "source-map-0.1.34";
+    version = "0.1.34";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/source-map/-/source-map-0.1.34.tgz";
+      name = "source-map-0.1.34.tgz";
+      sha1 = "a7cfe89aec7b1682c3b198d0acfb47d7d090566b";
+    };
+    deps = {
+      "amdefine-1.0.0" = self.by-version."amdefine"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."source-map"."~0.1.7" =
+    self.by-version."source-map"."0.1.43";
+  by-version."source-map"."0.1.43" = self.buildNodePackage {
+    name = "source-map-0.1.43";
+    version = "0.1.43";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz";
+      name = "source-map-0.1.43.tgz";
+      sha1 = "c24bc146ca517c1471f5dacbe2571b2b7f9e3346";
+    };
+    deps = {
+      "amdefine-1.0.0" = self.by-version."amdefine"."1.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."split"."0.3" =
+    self.by-version."split"."0.3.3";
+  by-version."split"."0.3.3" = self.buildNodePackage {
+    name = "split-0.3.3";
+    version = "0.3.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/split/-/split-0.3.3.tgz";
+      name = "split-0.3.3.tgz";
+      sha1 = "cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f";
+    };
+    deps = {
+      "through-2.3.8" = self.by-version."through"."2.3.8";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."statuses"."1" =
+    self.by-version."statuses"."1.2.1";
+  by-version."statuses"."1.2.1" = self.buildNodePackage {
+    name = "statuses-1.2.1";
+    version = "1.2.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/statuses/-/statuses-1.2.1.tgz";
+      name = "statuses-1.2.1.tgz";
+      sha1 = "dded45cc18256d51ed40aec142489d5c61026d28";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."statuses"."~1.2.1" =
+    self.by-version."statuses"."1.2.1";
+  by-spec."stream-combiner"."~0.0.4" =
+    self.by-version."stream-combiner"."0.0.4";
+  by-version."stream-combiner"."0.0.4" = self.buildNodePackage {
+    name = "stream-combiner-0.0.4";
+    version = "0.0.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz";
+      name = "stream-combiner-0.0.4.tgz";
+      sha1 = "4d5e433c185261dde623ca3f44c586bcf5c4ad14";
+    };
+    deps = {
+      "duplexer-0.1.1" = self.by-version."duplexer"."0.1.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."string_decoder"."~0.10.x" =
+    self.by-version."string_decoder"."0.10.31";
+  by-version."string_decoder"."0.10.31" = self.buildNodePackage {
+    name = "string_decoder-0.10.31";
+    version = "0.10.31";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz";
+      name = "string_decoder-0.10.31.tgz";
+      sha1 = "62e203bc41766c6c28c9fc84301dab1c5310fa94";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."stringstream"."~0.0.4" =
+    self.by-version."stringstream"."0.0.4";
+  by-version."stringstream"."0.0.4" = self.buildNodePackage {
+    name = "stringstream-0.0.4";
+    version = "0.0.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/stringstream/-/stringstream-0.0.4.tgz";
+      name = "stringstream-0.0.4.tgz";
+      sha1 = "0f0e3423f942960b5692ac324a57dd093bc41a92";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."strip-ansi"."^0.3.0" =
+    self.by-version."strip-ansi"."0.3.0";
+  by-version."strip-ansi"."0.3.0" = self.buildNodePackage {
+    name = "strip-ansi-0.3.0";
+    version = "0.3.0";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/strip-ansi/-/strip-ansi-0.3.0.tgz";
+      name = "strip-ansi-0.3.0.tgz";
+      sha1 = "25f48ea22ca79187f3174a4db8759347bb126220";
+    };
+    deps = {
+      "ansi-regex-0.2.1" = self.by-version."ansi-regex"."0.2.1";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."strip-ansi"."^3.0.0" =
+    self.by-version."strip-ansi"."3.0.0";
+  by-version."strip-ansi"."3.0.0" = self.buildNodePackage {
+    name = "strip-ansi-3.0.0";
+    version = "3.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.0.tgz";
+      name = "strip-ansi-3.0.0.tgz";
+      sha1 = "7510b665567ca914ccb5d7e072763ac968be3724";
+    };
+    deps = {
+      "ansi-regex-2.0.0" = self.by-version."ansi-regex"."2.0.0";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."supports-color"."^0.2.0" =
+    self.by-version."supports-color"."0.2.0";
+  by-version."supports-color"."0.2.0" = self.buildNodePackage {
+    name = "supports-color-0.2.0";
+    version = "0.2.0";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/supports-color/-/supports-color-0.2.0.tgz";
+      name = "supports-color-0.2.0.tgz";
+      sha1 = "d92de2694eb3f67323973d7ae3d8b55b4c22190a";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."supports-color"."^2.0.0" =
+    self.by-version."supports-color"."2.0.0";
+  by-version."supports-color"."2.0.0" = self.buildNodePackage {
+    name = "supports-color-2.0.0";
+    version = "2.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz";
+      name = "supports-color-2.0.0.tgz";
+      sha1 = "535d045ce6b6363fa40117084629995e9df324c7";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."through"."2" =
+    self.by-version."through"."2.3.8";
+  by-version."through"."2.3.8" = self.buildNodePackage {
+    name = "through-2.3.8";
+    version = "2.3.8";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/through/-/through-2.3.8.tgz";
+      name = "through-2.3.8.tgz";
+      sha1 = "0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."through"."~2.3" =
+    self.by-version."through"."2.3.8";
+  by-spec."through"."~2.3.1" =
+    self.by-version."through"."2.3.8";
+  by-spec."tiny-lr-fork"."0.0.5" =
+    self.by-version."tiny-lr-fork"."0.0.5";
+  by-version."tiny-lr-fork"."0.0.5" = self.buildNodePackage {
+    name = "tiny-lr-fork-0.0.5";
+    version = "0.0.5";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/tiny-lr-fork/-/tiny-lr-fork-0.0.5.tgz";
+      name = "tiny-lr-fork-0.0.5.tgz";
+      sha1 = "1e99e1e2a8469b736ab97d97eefa98c71f76ed0a";
+    };
+    deps = {
+      "qs-0.5.6" = self.by-version."qs"."0.5.6";
+      "faye-websocket-0.4.4" = self.by-version."faye-websocket"."0.4.4";
+      "noptify-0.0.3" = self.by-version."noptify"."0.0.3";
+      "debug-0.7.4" = self.by-version."debug"."0.7.4";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."tinycolor"."0.x" =
+    self.by-version."tinycolor"."0.0.1";
+  by-version."tinycolor"."0.0.1" = self.buildNodePackage {
+    name = "tinycolor-0.0.1";
+    version = "0.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/tinycolor/-/tinycolor-0.0.1.tgz";
+      name = "tinycolor-0.0.1.tgz";
+      sha1 = "320b5a52d83abb5978d81a3e887d4aefb15a6164";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."to-array"."0.1.3" =
+    self.by-version."to-array"."0.1.3";
+  by-version."to-array"."0.1.3" = self.buildNodePackage {
+    name = "to-array-0.1.3";
+    version = "0.1.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/to-array/-/to-array-0.1.3.tgz";
+      name = "to-array-0.1.3.tgz";
+      sha1 = "d45dadc6363417f60f28474fea50ecddbb4f4991";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."tough-cookie".">=0.12.0" =
+    self.by-version."tough-cookie"."2.0.0";
+  by-version."tough-cookie"."2.0.0" = self.buildNodePackage {
+    name = "tough-cookie-2.0.0";
+    version = "2.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/tough-cookie/-/tough-cookie-2.0.0.tgz";
+      name = "tough-cookie-2.0.0.tgz";
+      sha1 = "41ce08720b35cf90beb044dd2609fb19e928718f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."tunnel-agent"."~0.4.0" =
+    self.by-version."tunnel-agent"."0.4.1";
+  by-version."tunnel-agent"."0.4.1" = self.buildNodePackage {
+    name = "tunnel-agent-0.4.1";
+    version = "0.4.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.1.tgz";
+      name = "tunnel-agent-0.4.1.tgz";
+      sha1 = "bbeecff4d679ce753db9462761a88dfcec3c5ab3";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."type-is"."~1.6.4" =
+    self.by-version."type-is"."1.6.5";
+  by-version."type-is"."1.6.5" = self.buildNodePackage {
+    name = "type-is-1.6.5";
+    version = "1.6.5";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/type-is/-/type-is-1.6.5.tgz";
+      name = "type-is-1.6.5.tgz";
+      sha1 = "92129495c7b7563eaf923b447382c6c471f95de4";
+    };
+    deps = {
+      "media-typer-0.3.0" = self.by-version."media-typer"."0.3.0";
+      "mime-types-2.1.3" = self.by-version."mime-types"."2.1.3";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."typedarray"."~0.0.5" =
+    self.by-version."typedarray"."0.0.6";
+  by-version."typedarray"."0.0.6" = self.buildNodePackage {
+    name = "typedarray-0.0.6";
+    version = "0.0.6";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz";
+      name = "typedarray-0.0.6.tgz";
+      sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."uglify-js"."^2.4.0" =
+    self.by-version."uglify-js"."2.4.24";
+  by-version."uglify-js"."2.4.24" = self.buildNodePackage {
+    name = "uglify-js-2.4.24";
+    version = "2.4.24";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/uglify-js/-/uglify-js-2.4.24.tgz";
+      name = "uglify-js-2.4.24.tgz";
+      sha1 = "fad5755c1e1577658bb06ff9ab6e548c95bebd6e";
+    };
+    deps = {
+      "async-0.2.10" = self.by-version."async"."0.2.10";
+      "source-map-0.1.34" = self.by-version."source-map"."0.1.34";
+      "uglify-to-browserify-1.0.2" = self.by-version."uglify-to-browserify"."1.0.2";
+      "yargs-3.5.4" = self.by-version."yargs"."3.5.4";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."uglify-js"."~2.3" =
+    self.by-version."uglify-js"."2.3.6";
+  by-version."uglify-js"."2.3.6" = self.buildNodePackage {
+    name = "uglify-js-2.3.6";
+    version = "2.3.6";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz";
+      name = "uglify-js-2.3.6.tgz";
+      sha1 = "fa0984770b428b7a9b2a8058f46355d14fef211a";
+    };
+    deps = {
+      "async-0.2.10" = self.by-version."async"."0.2.10";
+      "source-map-0.1.43" = self.by-version."source-map"."0.1.43";
+      "optimist-0.3.7" = self.by-version."optimist"."0.3.7";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."uglify-to-browserify"."~1.0.0" =
+    self.by-version."uglify-to-browserify"."1.0.2";
+  by-version."uglify-to-browserify"."1.0.2" = self.buildNodePackage {
+    name = "uglify-to-browserify-1.0.2";
+    version = "1.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz";
+      name = "uglify-to-browserify-1.0.2.tgz";
+      sha1 = "6e0924d6bda6b5afe349e39a6d632850a0f882b7";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."underscore"."~1.7.0" =
+    self.by-version."underscore"."1.7.0";
+  by-version."underscore"."1.7.0" = self.buildNodePackage {
+    name = "underscore-1.7.0";
+    version = "1.7.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz";
+      name = "underscore-1.7.0.tgz";
+      sha1 = "6bbaf0877500d36be34ecaa584e0db9fef035209";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."underscore.string"."~2.2.1" =
+    self.by-version."underscore.string"."2.2.1";
+  by-version."underscore.string"."2.2.1" = self.buildNodePackage {
+    name = "underscore.string-2.2.1";
+    version = "2.2.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/underscore.string/-/underscore.string-2.2.1.tgz";
+      name = "underscore.string-2.2.1.tgz";
+      sha1 = "d7c0fa2af5d5a1a67f4253daee98132e733f0f19";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."underscore.string"."~2.3.3" =
+    self.by-version."underscore.string"."2.3.3";
+  by-version."underscore.string"."2.3.3" = self.buildNodePackage {
+    name = "underscore.string-2.3.3";
+    version = "2.3.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/underscore.string/-/underscore.string-2.3.3.tgz";
+      name = "underscore.string-2.3.3.tgz";
+      sha1 = "71c08bf6b428b1133f37e78fa3a21c82f7329b0d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."underscore.string"."~2.4.0" =
+    self.by-version."underscore.string"."2.4.0";
+  by-version."underscore.string"."2.4.0" = self.buildNodePackage {
+    name = "underscore.string-2.4.0";
+    version = "2.4.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/underscore.string/-/underscore.string-2.4.0.tgz";
+      name = "underscore.string-2.4.0.tgz";
+      sha1 = "8cdd8fbac4e2d2ea1e7e2e8097c42f442280f85b";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."unpipe"."~1.0.0" =
+    self.by-version."unpipe"."1.0.0";
+  by-version."unpipe"."1.0.0" = self.buildNodePackage {
+    name = "unpipe-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz";
+      name = "unpipe-1.0.0.tgz";
+      sha1 = "b2bf4ee8514aae6165b4817829d21b2ef49904ec";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."utf8"."2.0.0" =
+    self.by-version."utf8"."2.0.0";
+  by-version."utf8"."2.0.0" = self.buildNodePackage {
+    name = "utf8-2.0.0";
+    version = "2.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/utf8/-/utf8-2.0.0.tgz";
+      name = "utf8-2.0.0.tgz";
+      sha1 = "79ce59eced874809cab9a71fc7102c7d45d4118d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."util-deprecate"."~1.0.1" =
+    self.by-version."util-deprecate"."1.0.1";
+  by-version."util-deprecate"."1.0.1" = self.buildNodePackage {
+    name = "util-deprecate-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.1.tgz";
+      name = "util-deprecate-1.0.1.tgz";
+      sha1 = "3556a3d13c4c6aa7983d7e2425478197199b7881";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."utils-merge"."1.0.0" =
+    self.by-version."utils-merge"."1.0.0";
+  by-version."utils-merge"."1.0.0" = self.buildNodePackage {
+    name = "utils-merge-1.0.0";
+    version = "1.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz";
+      name = "utils-merge-1.0.0.tgz";
+      sha1 = "0294fb922bb9375153541c4f7096231f287c8af8";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."vary"."~1.0.0" =
+    self.by-version."vary"."1.0.1";
+  by-version."vary"."1.0.1" = self.buildNodePackage {
+    name = "vary-1.0.1";
+    version = "1.0.1";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/vary/-/vary-1.0.1.tgz";
+      name = "vary-1.0.1.tgz";
+      sha1 = "99e4981566a286118dfb2b817357df7993376d10";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."which"."~1.0.5" =
+    self.by-version."which"."1.0.9";
+  by-version."which"."1.0.9" = self.buildNodePackage {
+    name = "which-1.0.9";
+    version = "1.0.9";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/which/-/which-1.0.9.tgz";
+      name = "which-1.0.9.tgz";
+      sha1 = "460c1da0f810103d0321a9b633af9e575e64486f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."window-size"."0.1.0" =
+    self.by-version."window-size"."0.1.0";
+  by-version."window-size"."0.1.0" = self.buildNodePackage {
+    name = "window-size-0.1.0";
+    version = "0.1.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz";
+      name = "window-size-0.1.0.tgz";
+      sha1 = "5438cd2ea93b202efa3a19fe8887aee7c94f9c9d";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."wordwrap"."0.0.2" =
+    self.by-version."wordwrap"."0.0.2";
+  by-version."wordwrap"."0.0.2" = self.buildNodePackage {
+    name = "wordwrap-0.0.2";
+    version = "0.0.2";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz";
+      name = "wordwrap-0.0.2.tgz";
+      sha1 = "b79669bb42ecb409f83d583cad52ca17eaa1643f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."wordwrap"."~0.0.2" =
+    self.by-version."wordwrap"."0.0.3";
+  by-version."wordwrap"."0.0.3" = self.buildNodePackage {
+    name = "wordwrap-0.0.3";
+    version = "0.0.3";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz";
+      name = "wordwrap-0.0.3.tgz";
+      sha1 = "a3d5da6cd5c0bc0008d37234bbaf1bed63059107";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."ws"."0.4.31" =
+    self.by-version."ws"."0.4.31";
+  by-version."ws"."0.4.31" = self.buildNodePackage {
+    name = "ws-0.4.31";
+    version = "0.4.31";
+    bin = true;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/ws/-/ws-0.4.31.tgz";
+      name = "ws-0.4.31.tgz";
+      sha1 = "5a4849e7a9ccd1ed5a81aeb4847c9fedf3122927";
+    };
+    deps = {
+      "commander-0.6.1" = self.by-version."commander"."0.6.1";
+      "nan-0.3.2" = self.by-version."nan"."0.3.2";
+      "tinycolor-0.0.1" = self.by-version."tinycolor"."0.0.1";
+      "options-0.0.6" = self.by-version."options"."0.0.6";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."xmlhttprequest"."https://github.com/LearnBoost/node-XMLHttpRequest/archive/0f36d0b5ebc03d85f860d42a64ae9791e1daa433.tar.gz" =
+    self.by-version."xmlhttprequest"."1.5.0";
+  by-version."xmlhttprequest"."1.5.0" = self.buildNodePackage {
+    name = "xmlhttprequest-1.5.0";
+    version = "1.5.0";
+    bin = false;
+    src = fetchurl {
+      url = "https://github.com/LearnBoost/node-XMLHttpRequest/archive/0f36d0b5ebc03d85f860d42a64ae9791e1daa433.tar.gz";
+      name = "xmlhttprequest-1.5.0.tgz";
+      sha256 = "28dd0394d85befe8be4e9cd9f6803102780c62cbb09298cb174b52ff9777624f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."xtend"."^4.0.0" =
+    self.by-version."xtend"."4.0.0";
+  by-version."xtend"."4.0.0" = self.buildNodePackage {
+    name = "xtend-4.0.0";
+    version = "4.0.0";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/xtend/-/xtend-4.0.0.tgz";
+      name = "xtend-4.0.0.tgz";
+      sha1 = "8bc36ff87aedbe7ce9eaf0bca36b2354a743840f";
+    };
+    deps = {
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+  by-spec."yargs"."~3.5.4" =
+    self.by-version."yargs"."3.5.4";
+  by-version."yargs"."3.5.4" = self.buildNodePackage {
+    name = "yargs-3.5.4";
+    version = "3.5.4";
+    bin = false;
+    src = fetchurl {
+      url = "http://registry.npmjs.org/yargs/-/yargs-3.5.4.tgz";
+      name = "yargs-3.5.4.tgz";
+      sha1 = "d8aff8f665e94c34bd259bdebd1bfaf0ddd35361";
+    };
+    deps = {
+      "camelcase-1.1.0" = self.by-version."camelcase"."1.1.0";
+      "decamelize-1.0.0" = self.by-version."decamelize"."1.0.0";
+      "window-size-0.1.0" = self.by-version."window-size"."0.1.0";
+      "wordwrap-0.0.2" = self.by-version."wordwrap"."0.0.2";
+    };
+    optionalDependencies = {
+    };
+    peerDependencies = [];
+    os = [ ];
+    cpu = [ ];
+  };
+}
diff --git a/pkgs/applications/networking/irc/sic/default.nix b/pkgs/applications/networking/irc/sic/default.nix
new file mode 100644
index 00000000000..fef2b6c4cac
--- /dev/null
+++ b/pkgs/applications/networking/irc/sic/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "sic-${version}";
+  version = "1.2";
+
+  makeFlags = "PREFIX=$out";
+  src = fetchurl {
+    url = "http://dl.suckless.org/tools/sic-${version}.tar.gz";
+    sha256 = "ac07f905995e13ba2c43912d7a035fbbe78a628d7ba1c256f4ca1372fb565185";
+  };
+
+  meta = {
+    description = "Simple IRC client";
+    homepage = http://tools.suckless.org/sic/;
+    license = stdenv.lib.licenses.mit;
+  };
+}
diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix
index d5cc3fb7718..82c1504ebd9 100644
--- a/pkgs/applications/networking/irc/weechat/default.nix
+++ b/pkgs/applications/networking/irc/weechat/default.nix
@@ -1,24 +1,28 @@
 { stdenv, fetchurl, ncurses, openssl, perl, python, aspell, gnutls
 , zlib, curl , pkgconfig, libgcrypt, ruby, lua5, tcl, guile
-, pythonPackages, cacert, cmake, makeWrapper
+, pythonPackages, cmake, makeWrapper, libobjc, libiconv
 , extraBuildInputs ? [] }:
 
 stdenv.mkDerivation rec {
-  version = "1.1.1";
+  version = "1.3";
   name = "weechat-${version}";
 
   src = fetchurl {
-    url = "http://weechat.org/files/src/weechat-${version}.tar.gz";
-    sha256 = "0j8kc2zsv7ybgq6wi0r8siyd3adl3528gymgmidijd78smbpwbx3";
+    url = "http://weechat.org/files/src/weechat-${version}.tar.bz2";
+    sha256 = "0j2ic1c69ksf78wi0cmc4yi5348x6c92g6annsx928sayxqxfgbh";
   };
 
+  cmakeFlags = stdenv.lib.optional stdenv.isDarwin
+    "-DICONV_LIBRARY=${libiconv}/lib/libiconv.dylib";
+
   buildInputs = 
     [ ncurses perl python openssl aspell gnutls zlib curl pkgconfig
       libgcrypt ruby lua5 tcl guile pythonPackages.pycrypto makeWrapper
-      cacert cmake ]
+      cmake ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ pythonPackages.pync libobjc ]
     ++ extraBuildInputs;
 
-  NIX_CFLAGS_COMPILE = "-I${python}/include/${python.libPrefix} -DCA_FILE=${cacert}/etc/ca-bundle.crt";
+  NIX_CFLAGS_COMPILE = "-I${python}/include/${python.libPrefix} -DCA_FILE=/etc/ssl/certs/ca-certificates.crt";
 
   postInstall = ''
     NIX_PYTHONPATH="$out/lib/${python.libPrefix}/site-packages"
diff --git a/pkgs/applications/networking/linssid/0001-unbundled-qwt.patch b/pkgs/applications/networking/linssid/0001-unbundled-qwt.patch
new file mode 100644
index 00000000000..46224ede33d
--- /dev/null
+++ b/pkgs/applications/networking/linssid/0001-unbundled-qwt.patch
@@ -0,0 +1,43 @@
+From e57f22a5089f194013534c9a9bbc42ee639297f1 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel <ttuegel@gmail.com>
+Date: Sat, 19 Sep 2015 11:10:32 -0500
+Subject: [PATCH] unbundled qwt
+
+---
+ linssid-app/linssid-app.pro | 4 +---
+ linssid.pro                 | 4 +---
+ 2 files changed, 2 insertions(+), 6 deletions(-)
+
+diff --git a/linssid-app/linssid-app.pro b/linssid-app/linssid-app.pro
+index 26f61e7..7b80b60 100644
+--- a/linssid-app/linssid-app.pro
++++ b/linssid-app/linssid-app.pro
+@@ -19,13 +19,11 @@ QMAKE_CC = gcc
+ QMAKE_CXX = g++
+ DEFINES += 
+ INCLUDEPATH += /usr/include/qt5
+-# /usr/local/qwt-6.1.0/include
+-INCLUDEPATH += ../qwt-lib/src
+ # LIBS += /usr/lib/x86_64-linux-gnu/libboost_regex.a 
+ # LIBS += -lboost_regex
+ LIBS += -l:libboost_regex.a
+ # /usr/local/qwt-6.1.0/lib/libqwt.a
+-LIBS += ../qwt-lib/lib/libqwt.a
++LIBS += -lqwt
+ QMAKE_CXXFLAGS += -std=c++11
+ #
+ TARGET = linssid
+diff --git a/linssid.pro b/linssid.pro
+index 42dc277..26d1a2c 100644
+--- a/linssid.pro
++++ b/linssid.pro
+@@ -1,5 +1,3 @@
+ TEMPLATE = subdirs
+ CONFIG += ordered
+-SUBDIRS = qwt-lib \
+-          linssid-app
+-linssid-app.depends = qwt-lib
++SUBDIRS = linssid-app
+-- 
+2.5.2
+
diff --git a/pkgs/applications/networking/linssid/default.nix b/pkgs/applications/networking/linssid/default.nix
index 2b4c5f564be..369010f41b5 100644
--- a/pkgs/applications/networking/linssid/default.nix
+++ b/pkgs/applications/networking/linssid/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, qt5, pkgconfig, boost, wirelesstools, iw }:
+{ stdenv, fetchurl, qt5, pkgconfig, boost, wirelesstools, iw, qwt6 }:
 
 stdenv.mkDerivation rec {
   name = "linssid-${version}";
@@ -9,7 +9,9 @@ stdenv.mkDerivation rec {
     sha256 = "13d35rlcjncd8lx3khkgn9x8is2xjd5fp6ns5xsn3w6l4xj9b4gl";
   };
 
-  buildInputs = [ qt5 pkgconfig boost ];
+  buildInputs = [ qt5.base qt5.svg pkgconfig boost qwt6 ];
+
+  patches = [ ./0001-unbundled-qwt.patch ];
 
   postPatch = ''
     sed -e "s|/usr/include/|/nonexistent/|g" -i linssid-app/*.pro
@@ -20,6 +22,9 @@ stdenv.mkDerivation rec {
 
     sed -e "s|iwlist|${wirelesstools}/sbin/iwlist|g" -i linssid-app/Getter.cpp
     sed -e "s|iw dev|${iw}/sbin/iw dev|g" -i linssid-app/MainForm.cpp
+
+    # Remove bundled qwt
+    rm -fr qwt-lib
   '';
 
   configurePhase = "qmake linssid.pro";
diff --git a/pkgs/applications/networking/mailreaders/claws-mail/default.nix b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
index c22c1a275c3..f226ff16a1c 100644
--- a/pkgs/applications/networking/mailreaders/claws-mail/default.nix
+++ b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
@@ -1,7 +1,7 @@
 { fetchurl, stdenv
-, curl, dbus, dbus_glib, enchant, gtk, gnutls, gnupg, gpgme, libarchive
-, libcanberra, libetpan, libnotify, libsoup, libxml2, networkmanager, openldap
-, perl, pkgconfig, poppler, python, webkitgtk2
+, curl, dbus, dbus_glib, enchant, gtk, gnutls, gnupg, gpgme, hicolor_icon_theme
+, libarchive, libcanberra, libetpan, libnotify, libsoup, libxml2, networkmanager
+, openldap , perl, pkgconfig, poppler, python, shared_mime_info, webkitgtk2
 
 # Build options
 # TODO: A flag to build the manual.
@@ -39,6 +39,8 @@ stdenv.mkDerivation {
     homepage = http://www.claws-mail.org/;
     license = licenses.gpl3;
     platforms = platforms.linux;
+    maintainers = [ maintainers.khumba ];
+    priority = 10;  # Resolve the conflict with the share/mime link we create.
   };
 
   src = fetchurl {
@@ -46,8 +48,12 @@ stdenv.mkDerivation {
     sha256 = "0w13xzri9d3165qsxf1dig1f0gxn3ib4lysfc9pgi4zpyzd0zgrw";
   };
 
+  patches = [ ./mime.patch ];
+
   buildInputs =
-    [ curl dbus dbus_glib gtk gnutls libetpan perl pkgconfig python ]
+    [ curl dbus dbus_glib gtk gnutls hicolor_icon_theme
+      libetpan perl pkgconfig python
+    ]
     ++ optional enableSpellcheck enchant
     ++ optionals (enablePgp || enablePluginSmime) [ gnupg gpgme ]
     ++ optional enablePluginArchive libarchive
@@ -78,4 +84,13 @@ stdenv.mkDerivation {
     ++ optional (!enablePluginSpamReport) "--disable-spam_report-plugin"
     ++ optional (!enablePluginVcalendar) "--disable-vcalendar-plugin"
     ++ optional (!enableSpellcheck) "--disable-enchant";
+
+  enableParallelBuilding = true;
+
+  postInstall = ''
+    mkdir -p $out/share/applications
+    cp claws-mail.desktop $out/share/applications
+
+    ln -sT ${shared_mime_info}/share/mime $out/share/mime
+  '';
 }
diff --git a/pkgs/applications/networking/mailreaders/claws-mail/mime.patch b/pkgs/applications/networking/mailreaders/claws-mail/mime.patch
new file mode 100644
index 00000000000..5437c1c65d7
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/claws-mail/mime.patch
@@ -0,0 +1,14 @@
+--- a/src/procmime.c	2015-09-18 04:03:11.767654094 -0700
++++ b/src/procmime.c	2015-09-18 04:08:38.834503034 -0700
+@@ -1196,11 +1196,7 @@
+ 	if (mime_type_list) 
+ 		return mime_type_list;
+ 	
+-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
+ 	if ((fp = procmime_fopen(DATAROOTDIR "/mime/globs", "rb")) == NULL) 
+-#else
+-	if ((fp = procmime_fopen("/usr/share/mime/globs", "rb")) == NULL) 
+-#endif
+ 	{
+ 		fp_is_glob_file = FALSE;
+ 		if ((fp = procmime_fopen("/etc/mime.types", "rb")) == NULL) {
diff --git a/pkgs/applications/networking/mailreaders/mailnag/default.nix b/pkgs/applications/networking/mailreaders/mailnag/default.nix
new file mode 100644
index 00000000000..e4253f5bff5
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/mailnag/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, buildPythonPackage, fetchurl, gettext, gtk3, pythonPackages
+, gdk_pixbuf, libnotify, gst_all_1
+, libgnome_keyring3 ? null, networkmanager ? null
+}:
+
+buildPythonPackage rec {
+  name = "mailnag-${version}";
+  version = "1.1.0";
+
+  src = fetchurl {
+    url = "https://github.com/pulb/mailnag/archive/v${version}.tar.gz";
+    sha256 = "0li4kvxjmbz3nqg6bysgn2wdazqrd7gm9fym3rd7148aiqqwa91r";
+  };
+
+  # Sometimes the generated output isn't identical. It seems like there's a
+  # race condtion while patching the Mailnag/commons/dist_cfg.py file. This is
+  # a small workaround to produce deterministic builds.
+  # For more information see https://github.com/NixOS/nixpkgs/pull/8279
+  setupPyBuildFlags = [ "--build-base=$PWD" ];
+
+  buildInputs = [
+    gettext gtk3 pythonPackages.pygobject3 pythonPackages.dbus
+    pythonPackages.pyxdg gdk_pixbuf libnotify gst_all_1.gstreamer
+    gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
+    gst_all_1.gst-plugins-bad libgnome_keyring3 networkmanager
+  ];
+
+  preFixup = ''
+    for script in mailnag mailnag-config; do
+      wrapProgram $out/bin/$script \
+        --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
+        --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
+        --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" \
+        --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share" \
+        --prefix PYTHONPATH : "$PYTHONPATH"
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "An extensible mail notification daemon";
+    homepage = https://github.com/pulb/mailnag;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ jgeerds ];
+  };
+}
diff --git a/pkgs/applications/networking/mailreaders/mailpile/default.nix b/pkgs/applications/networking/mailreaders/mailpile/default.nix
index 695e2b38157..c43944dc597 100644
--- a/pkgs/applications/networking/mailreaders/mailpile/default.nix
+++ b/pkgs/applications/networking/mailreaders/mailpile/default.nix
@@ -27,7 +27,7 @@ pythonPackages.buildPythonPackage rec {
   meta = with stdenv.lib; {
     description = "A modern, fast web-mail client with user-friendly encryption and privacy features";
     homepage = https://www.mailpile.is/;
-    license = map (getAttr "shortName") [ licenses.asl20 licenses.agpl3 ];
+    license = [ licenses.asl20 licenses.agpl3 ];
     platforms = platforms.linux;
     maintainers = [ maintainers.iElectric ];
   };
diff --git a/pkgs/applications/networking/mailreaders/mutt-kz/default.nix b/pkgs/applications/networking/mailreaders/mutt-kz/default.nix
index a162df9f33b..5cd0ef9f7a4 100644
--- a/pkgs/applications/networking/mailreaders/mutt-kz/default.nix
+++ b/pkgs/applications/networking/mailreaders/mutt-kz/default.nix
@@ -16,14 +16,14 @@ assert saslSupport -> cyrus_sasl != null;
 assert gpgmeSupport -> gpgme != null;
 
 let
-  version = "1.5.23.1-rc1";
+  version = "1.5.23.1";
 in
 stdenv.mkDerivation rec {
   name = "mutt-kz-${version}";
 
   src = fetchurl {
     url = "https://github.com/karelzak/mutt-kz/archive/v${version}.tar.gz";
-    sha256 = "1m4bnn8psyrx2wy8ribannmp5qf75lv1gz116plji2z37z015zny";
+    sha256 = "01k4hrf8x2100pcqnrm61mm1x0pqi2kr3rx22k5hwvbs1wh8zyhz";
   };
 
   buildInputs = with stdenv.lib;
diff --git a/pkgs/applications/networking/mailreaders/mutt/default.nix b/pkgs/applications/networking/mailreaders/mutt/default.nix
index 40d302464f6..a1bfb9f854c 100644
--- a/pkgs/applications/networking/mailreaders/mutt/default.nix
+++ b/pkgs/applications/networking/mailreaders/mutt/default.nix
@@ -17,14 +17,14 @@ assert saslSupport -> cyrus_sasl != null;
 assert gpgmeSupport -> gpgme != null;
 
 let
-  version = "1.5.23";
+  version = "1.5.24";
 in
 stdenv.mkDerivation rec {
   name = "mutt${stdenv.lib.optionalString withSidebar "-with-sidebar"}-${version}";
 
   src = fetchurl {
-    url = "mirror://sourceforge/mutt/mutt-${version}.tar.gz";
-    sha256 = "0dzx4qk50pjfsb6cs5jahng96a52k12f7pm0sc78iqdrawg71w1s";
+    url = "http://ftp.mutt.org/pub/mutt/mutt-${version}.tar.gz";
+    sha256 = "0012njrgxf1barjksqkx7ccid2l0xyikhna9mjs9vcfpbrvcm4m2";
   };
 
   buildInputs = with stdenv.lib;
@@ -59,11 +59,16 @@ stdenv.mkDerivation rec {
   ];
 
   # Adding the sidebar
-  patches = [] ++
-    (stdenv.lib.optional withSidebar (fetchurl {
-      url = http://lunar-linux.org/~tchan/mutt/patch-1.5.23.sidebar.20140412.txt;
-      sha256 = "1i2r7dj0pd1k0z3jjxn2szi6sf0k28i8dwhr4f65pn8r2lh3wisz";
-    }));
+  patches = stdenv.lib.optional withSidebar [
+    ./trash-folder.patch
+    ./sidebar.patch
+    ./sidebar-dotpathsep.patch
+    ./sidebar-utf8.patch
+    ./sidebar-newonly.patch
+    ./sidebar-delimnullwide.patch
+    ./sidebar-compose.patch
+    ./sidebar-new.patch
+  ];
 
   meta = with stdenv.lib; {
     description = "A small but very powerful text-based mail client";
diff --git a/pkgs/applications/networking/mailreaders/mutt/sidebar-compose.patch b/pkgs/applications/networking/mailreaders/mutt/sidebar-compose.patch
new file mode 100644
index 00000000000..90d815b841d
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/mutt/sidebar-compose.patch
@@ -0,0 +1,40 @@
+From: Evgeni Golov <evgeni@debian.org>
+Date: Fri, 14 Mar 2014 08:54:47 +0100
+Subject: sidebar-compose
+
+draw_sidebar sets SidebarWidth to 0 when sidebar_visible is false.
+However, if you start mutt in compose mode, draw_sidebar won't be
+called until the next redraw and your header lines will be off by
+the width of the sidebar, even when you did not want a sidebar at
+all.
+
+Can be tested with:
+  HOME=/ LC_ALL=C mutt -e 'unset sidebar_visible' -s test recipient
+
+Closes: #502627
+
+Gbp-Pq: Topic mutt-patched
+---
+ compose.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/compose.c b/compose.c
+index b63695f..0fa6df2 100644
+--- a/compose.c
++++ b/compose.c
+@@ -32,6 +32,7 @@
+ #include "mailbox.h"
+ #include "sort.h"
+ #include "charset.h"
++#include "sidebar.h"
+ 
+ #ifdef MIXMASTER
+ #include "remailer.h"
+@@ -248,6 +249,7 @@ static void draw_envelope_addr (int line, ADDRESS *addr)
+ 
+ static void draw_envelope (HEADER *msg, char *fcc)
+ {
++  draw_sidebar (MENU_COMPOSE);
+   draw_envelope_addr (HDR_FROM, msg->env->from);
+   draw_envelope_addr (HDR_TO, msg->env->to);
+   draw_envelope_addr (HDR_CC, msg->env->cc);
diff --git a/pkgs/applications/networking/mailreaders/mutt/sidebar-delimnullwide.patch b/pkgs/applications/networking/mailreaders/mutt/sidebar-delimnullwide.patch
new file mode 100644
index 00000000000..11d2ced5a0c
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/mutt/sidebar-delimnullwide.patch
@@ -0,0 +1,38 @@
+From: Evgeni Golov <sargentd@die-welt.net>
+Date: Wed, 5 Mar 2014 17:46:07 +0100
+Subject: sidebar-delimnullwide
+
+SidebarDelim can be NULL and strlen(NULL) is a bad idea, as it will segfault.
+Wrap it with NONULL().
+
+While at it, change strlen to mbstowcs for better utf8 support.
+
+Closes: #696145, #663883
+
+Gbp-Pq: Topic mutt-patched
+---
+ sidebar.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/sidebar.c b/sidebar.c
+index 51a25ca..c3ea338 100644
+--- a/sidebar.c
++++ b/sidebar.c
+@@ -88,7 +88,7 @@ char *make_sidebar_entry(char *box, int size, int new, int flagged)
+     int box_len, box_bytes;
+     int int_len;
+     int right_offset = 0;
+-    int delim_len = strlen(SidebarDelim);
++    int delim_len = mbstowcs(NULL, NONULL(SidebarDelim), 0);
+     static char *entry;
+ 
+     right_width = left_width = 0;
+@@ -178,7 +178,7 @@ int draw_sidebar(int menu) {
+ #ifndef USE_SLANG_CURSES
+         attr_t attrs;
+ #endif
+-        short delim_len = strlen(SidebarDelim);
++        short delim_len = mbstowcs(NULL, NONULL(SidebarDelim), 0);
+         short color_pair;
+ 
+         static bool initialized = false;
diff --git a/pkgs/applications/networking/mailreaders/mutt/sidebar-dotpathsep.patch b/pkgs/applications/networking/mailreaders/mutt/sidebar-dotpathsep.patch
new file mode 100644
index 00000000000..315fa1649bc
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/mutt/sidebar-dotpathsep.patch
@@ -0,0 +1,98 @@
+From: Fabian Groffen <grobian@gentoo.org>
+Date: Tue, 4 Mar 2014 21:12:15 +0100
+Subject: sidebar-dotpathsep
+
+Make path separators for sidebar folders configurable.
+
+When using IMAP, a '.' is often used as path separator, hence make the
+path separators configurable through sidebar_delim_chars variable.
+It defaults to "/." to work for both mboxes as well as IMAP folders.  It
+can be set to only "/" or "." or whichever character desired as needed.
+
+Gbp-Pq: Topic mutt-patched
+---
+ globals.h |  1 +
+ init.h    |  8 ++++++++
+ sidebar.c | 31 ++++++++++++++++++++++++-------
+ 3 files changed, 33 insertions(+), 7 deletions(-)
+
+diff --git a/globals.h b/globals.h
+index 004c795..602f932 100644
+--- a/globals.h
++++ b/globals.h
+@@ -119,6 +119,7 @@ WHERE char *SendCharset;
+ WHERE char *Sendmail;
+ WHERE char *Shell;
+ WHERE char *SidebarDelim;
++WHERE char *SidebarDelimChars INITVAL (NULL);
+ WHERE char *Signature;
+ WHERE char *SimpleSearch;
+ #if USE_SMTP
+diff --git a/init.h b/init.h
+index c664e5f..166671b 100644
+--- a/init.h
++++ b/init.h
+@@ -2051,6 +2051,14 @@ struct option_t MuttVars[] = {
+   ** .pp
+   ** The width of the sidebar.
+   */
++  { "sidebar_delim_chars",		DT_STR, R_NONE, UL &SidebarDelimChars, UL "/." },
++  /*
++  ** .pp
++  ** This contains the list of characters which you would like to treat
++  ** as folder separators for displaying paths in the sidebar.  If
++  ** you're not using IMAP folders, you probably prefer setting this to "/"
++  ** alone.
++  */
+   { "pgp_use_gpg_agent", DT_BOOL, R_NONE, OPTUSEGPGAGENT, 0},
+   /*
+   ** .pp
+diff --git a/sidebar.c b/sidebar.c
+index 6098c2a..4356ffc 100644
+--- a/sidebar.c
++++ b/sidebar.c
+@@ -249,20 +249,37 @@ int draw_sidebar(int menu) {
+ 		// calculate depth of current folder and generate its display name with indented spaces
+ 		int sidebar_folder_depth = 0;
+ 		char *sidebar_folder_name;
+-		sidebar_folder_name = basename(tmp->path);
++		int i;
++		sidebar_folder_name = tmp->path;
++		/* disregard a trailing separator, so strlen() - 2
++		 * https://bugs.gentoo.org/show_bug.cgi?id=373197#c16 */
++		for (i = strlen(sidebar_folder_name) - 2; i >= 0; i--) {
++			if (SidebarDelimChars &&
++					strchr(SidebarDelimChars, sidebar_folder_name[i]))
++			{
++				sidebar_folder_name += i + 1;
++				break;
++			}
++		}
+ 		if ( maildir_is_prefix ) {
+ 			char *tmp_folder_name;
+-			int i;
++			int lastsep = 0;
+ 			tmp_folder_name = tmp->path + strlen(Maildir);
+-			for (i = 0; i < strlen(tmp->path) - strlen(Maildir); i++) {
+-				if (tmp_folder_name[i] == '/') sidebar_folder_depth++;
+-			}   
++			for (i = 0; i < strlen(tmp_folder_name) - 1; i++) {
++				if (SidebarDelimChars &&
++						strchr(SidebarDelimChars, tmp_folder_name[i]))
++				{
++					sidebar_folder_depth++;
++					lastsep = i + 1;
++				}
++			}
+ 			if (sidebar_folder_depth > 0) {
+-				sidebar_folder_name = malloc(strlen(basename(tmp->path)) + sidebar_folder_depth + 1);
++				tmp_folder_name += lastsep;  /* basename */
++				sidebar_folder_name = malloc(strlen(tmp_folder_name) + sidebar_folder_depth + 1);
+ 				for (i=0; i < sidebar_folder_depth; i++)
+ 					sidebar_folder_name[i]=' ';
+ 				sidebar_folder_name[i]=0;
+-				strncat(sidebar_folder_name, basename(tmp->path), strlen(basename(tmp->path)) + sidebar_folder_depth);
++				strncat(sidebar_folder_name, tmp_folder_name, strlen(tmp_folder_name) + sidebar_folder_depth);
+ 			}
+ 		}
+ 		printw( "%.*s", SidebarWidth - delim_len + 1,
diff --git a/pkgs/applications/networking/mailreaders/mutt/sidebar-new.patch b/pkgs/applications/networking/mailreaders/mutt/sidebar-new.patch
new file mode 100644
index 00000000000..fb265346361
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/mutt/sidebar-new.patch
@@ -0,0 +1,97 @@
+From 355399bde98203af59d20821f9e840fc056bd383 Mon Sep 17 00:00:00 2001
+From: Julius Haertl <jus@bitgrid.net>
+Date: Tue, 9 Sep 2014 22:31:49 +0200
+Subject: Patch for sidebar iteration functionality
+
+sidebar-new will move the selected folder to the next with new messages.
+If the end is reached, it will start at the top.
+
+Useful macros would be:
+
+	macro index <esc>a "<sidebar-new><sidebar-open>"
+	macro pager <esc>a "<exit><sidebar-new><sidebar-open>"
+---
+ OPS         |  1 +
+ curs_main.c |  1 +
+ functions.h |  2 ++
+ pager.c     |  1 +
+ sidebar.c   | 10 ++++++++++
+ 5 files changed, 15 insertions(+)
+
+diff --git a/OPS b/OPS
+index 1ed9c96..3ffb82a 100644
+--- a/OPS
++++ b/OPS
+@@ -187,3 +187,4 @@ OP_SIDEBAR_PREV "go to previous mailbox"
+ OP_SIDEBAR_OPEN "open hilighted mailbox"
+ OP_SIDEBAR_NEXT_NEW "go down to next mailbox with new mail"
+ OP_SIDEBAR_PREV_NEW "go to previous mailbox with new mail"
++OP_SIDEBAR_NEW "iterate though mailboxes with new mail"
+diff --git a/curs_main.c b/curs_main.c
+index acb106d..2e35f90 100644
+--- a/curs_main.c
++++ b/curs_main.c
+@@ -2328,6 +2328,7 @@ int mutt_index_menu (void)
+       case OP_SIDEBAR_PREV:
+       case OP_SIDEBAR_NEXT_NEW:
+       case OP_SIDEBAR_PREV_NEW:
++      case OP_SIDEBAR_NEW:
+         scroll_sidebar(op, menu->menu);
+         break;
+       default:
+diff --git a/functions.h b/functions.h
+index 363b4d5..1485080 100644
+--- a/functions.h
++++ b/functions.h
+@@ -176,6 +176,7 @@ const struct binding_t OpMain[] = { /* map: index */
+  { "sidebar-prev",		OP_SIDEBAR_PREV, NULL },
+  { "sidebar-next-new", OP_SIDEBAR_NEXT_NEW, NULL},
+  { "sidebar-prev-new", OP_SIDEBAR_PREV_NEW, NULL},
++ { "sidebar-new",		OP_SIDEBAR_NEW, NULL },
+  { "sidebar-open",		OP_SIDEBAR_OPEN, NULL },
+   { NULL,			0,				NULL }
+ };
+@@ -287,6 +288,7 @@ const struct binding_t OpPager[] = { /* map: pager */
+   { "sidebar-prev",	OP_SIDEBAR_PREV, NULL },
+   { "sidebar-next-new", OP_SIDEBAR_NEXT_NEW, NULL},
+   { "sidebar-prev-new", OP_SIDEBAR_PREV_NEW, NULL},
++  { "sidebar-new",		OP_SIDEBAR_NEW, NULL },
+   { "sidebar-open", OP_SIDEBAR_OPEN, NULL },
+   { NULL,		0,				NULL }
+ };
+diff --git a/pager.c b/pager.c
+index 8d64fe1..696e55c 100644
+--- a/pager.c
++++ b/pager.c
+@@ -2791,6 +2791,7 @@ search_next:
+       case OP_SIDEBAR_PREV:
+       case OP_SIDEBAR_NEXT_NEW:
+       case OP_SIDEBAR_PREV_NEW:
++      case OP_SIDEBAR_NEW:
+ 	scroll_sidebar(ch, MENU_PAGER);
+  	break;
+ 
+diff --git a/sidebar.c b/sidebar.c
+index c3ea338..eb8ecd2 100644
+--- a/sidebar.c
++++ b/sidebar.c
+@@ -429,6 +429,16 @@ void scroll_sidebar(int op, int menu)
+ 				CurBuffy = CurBuffy->next;
+ 			}
+ 			break;
++                case OP_SIDEBAR_NEW:
++                	if ( (tmp = exist_next_new()) == NULL)
++				tmp = TopBuffy;
++			if ( tmp->msg_unread == 0 ) {
++				CurBuffy = tmp;
++				tmp = exist_next_new();
++			}
++			if ( tmp != NULL )
++				CurBuffy = tmp;
++			break;
+ 		default:
+ 			return;
+ 	}
+-- 
+2.6.0.rc0.2.g7662973.dirty
+
diff --git a/pkgs/applications/networking/mailreaders/mutt/sidebar-newonly.patch b/pkgs/applications/networking/mailreaders/mutt/sidebar-newonly.patch
new file mode 100644
index 00000000000..d206848026b
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/mutt/sidebar-newonly.patch
@@ -0,0 +1,198 @@
+From: Steve Kemp <steve@steve.org.uk>
+Date: Tue, 4 Mar 2014 22:07:06 +0100
+Subject: sidebar-newonly
+
+patches written by Steve Kemp, it adds two new functionalities to the sidebar,
+so only the mailbox with new messages will be shown (and/or) selected
+See Debian bug http://bugs.debian.org/532510
+
+Gbp-Pq: Topic mutt-patched
+---
+ OPS         |  2 ++
+ curs_main.c |  2 ++
+ functions.h |  4 ++++
+ init.h      |  5 +++++
+ mutt.h      |  2 ++
+ pager.c     |  2 ++
+ sidebar.c   | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++--
+ 7 files changed, 70 insertions(+), 2 deletions(-)
+
+diff --git a/OPS b/OPS
+index b036db9..1ed9c96 100644
+--- a/OPS
++++ b/OPS
+@@ -185,3 +185,5 @@ OP_SIDEBAR_SCROLL_DOWN "scroll the mailbox pane down 1 page"
+ OP_SIDEBAR_NEXT "go down to next mailbox"
+ OP_SIDEBAR_PREV "go to previous mailbox"
+ OP_SIDEBAR_OPEN "open hilighted mailbox"
++OP_SIDEBAR_NEXT_NEW "go down to next mailbox with new mail"
++OP_SIDEBAR_PREV_NEW "go to previous mailbox with new mail"
+diff --git a/curs_main.c b/curs_main.c
+index ea530a6..acb106d 100644
+--- a/curs_main.c
++++ b/curs_main.c
+@@ -2326,6 +2326,8 @@ int mutt_index_menu (void)
+       case OP_SIDEBAR_SCROLL_DOWN:
+       case OP_SIDEBAR_NEXT:
+       case OP_SIDEBAR_PREV:
++      case OP_SIDEBAR_NEXT_NEW:
++      case OP_SIDEBAR_PREV_NEW:
+         scroll_sidebar(op, menu->menu);
+         break;
+       default:
+diff --git a/functions.h b/functions.h
+index ef8937a..363b4d5 100644
+--- a/functions.h
++++ b/functions.h
+@@ -174,6 +174,8 @@ const struct binding_t OpMain[] = { /* map: index */
+  { "sidebar-scroll-down",	OP_SIDEBAR_SCROLL_DOWN, NULL },
+  { "sidebar-next",		OP_SIDEBAR_NEXT, NULL },
+  { "sidebar-prev",		OP_SIDEBAR_PREV, NULL },
++ { "sidebar-next-new", OP_SIDEBAR_NEXT_NEW, NULL},
++ { "sidebar-prev-new", OP_SIDEBAR_PREV_NEW, NULL},
+  { "sidebar-open",		OP_SIDEBAR_OPEN, NULL },
+   { NULL,			0,				NULL }
+ };
+@@ -283,6 +285,8 @@ const struct binding_t OpPager[] = { /* map: pager */
+   { "sidebar-scroll-down",	OP_SIDEBAR_SCROLL_DOWN, NULL },
+   { "sidebar-next",	OP_SIDEBAR_NEXT, NULL },
+   { "sidebar-prev",	OP_SIDEBAR_PREV, NULL },
++  { "sidebar-next-new", OP_SIDEBAR_NEXT_NEW, NULL},
++  { "sidebar-prev-new", OP_SIDEBAR_PREV_NEW, NULL},
+   { "sidebar-open", OP_SIDEBAR_OPEN, NULL },
+   { NULL,		0,				NULL }
+ };
+diff --git a/init.h b/init.h
+index 166671b..a5d4238 100644
+--- a/init.h
++++ b/init.h
+@@ -2059,6 +2059,11 @@ struct option_t MuttVars[] = {
+   ** you're not using IMAP folders, you probably prefer setting this to "/"
+   ** alone.
+   */
++  {"sidebar_newmail_only", DT_BOOL, R_BOTH, OPTSIDEBARNEWMAILONLY, 0 },
++  /*
++  ** .pp
++  ** Show only new mail in the sidebar.
++  */
+   { "pgp_use_gpg_agent", DT_BOOL, R_NONE, OPTUSEGPGAGENT, 0},
+   /*
+   ** .pp
+diff --git a/mutt.h b/mutt.h
+index 5f25406..d73e514 100644
+--- a/mutt.h
++++ b/mutt.h
+@@ -529,6 +529,8 @@ enum
+   OPTDONTHANDLEPGPKEYS,	/* (pseudo) used to extract PGP keys */
+   OPTUNBUFFEREDINPUT,   /* (pseudo) don't use key buffer */
+ 
++  OPTSIDEBARNEWMAILONLY,
++
+   OPTMAX
+ };
+ 
+diff --git a/pager.c b/pager.c
+index 5cfcb75..8d64fe1 100644
+--- a/pager.c
++++ b/pager.c
+@@ -2789,6 +2789,8 @@ search_next:
+       case OP_SIDEBAR_SCROLL_DOWN:
+       case OP_SIDEBAR_NEXT:
+       case OP_SIDEBAR_PREV:
++      case OP_SIDEBAR_NEXT_NEW:
++      case OP_SIDEBAR_PREV_NEW:
+ 	scroll_sidebar(ch, MENU_PAGER);
+  	break;
+ 
+diff --git a/sidebar.c b/sidebar.c
+index 8f58f85..51a25ca 100644
+--- a/sidebar.c
++++ b/sidebar.c
+@@ -269,8 +269,21 @@ int draw_sidebar(int menu) {
+ 			SETCOLOR(MT_COLOR_NEW);
+ 		else if ( tmp->msg_flagged > 0 )
+ 		        SETCOLOR(MT_COLOR_FLAGGED);
+-		else
+-			SETCOLOR(MT_COLOR_NORMAL);
++		else {
++                  /* make sure the path is either:
++                     1.  Containing new mail.
++                     2.  The inbox.
++                     3.  The current box.
++                   */
++                  if ((option (OPTSIDEBARNEWMAILONLY)) &&
++                      ( (tmp->msg_unread <= 0)  &&
++                        ( tmp != Incoming ) &&
++                        Context &&
++                        ( strcmp( tmp->path, Context->path ) != 0 ) ) )
++                    continue;
++                  else
++                    SETCOLOR(MT_COLOR_NORMAL);
++                }
+ 
+ 		move( lines, 0 );
+ 		if ( Context && !strcmp( tmp->path, Context->path ) ) {
+@@ -336,6 +349,29 @@ int draw_sidebar(int menu) {
+ 	return 0;
+ }
+ 
++BUFFY * exist_next_new()
++{
++       BUFFY *tmp = CurBuffy;
++       if(tmp == NULL) return NULL;
++       while (tmp->next != NULL)
++       {
++              tmp = tmp->next;
++               if(tmp->msg_unread) return tmp;
++       }
++       return NULL;
++}
++
++BUFFY * exist_prev_new()
++{
++       BUFFY *tmp = CurBuffy;
++       if(tmp == NULL) return NULL;
++       while (tmp->prev != NULL)
++       {
++               tmp = tmp->prev;
++               if(tmp->msg_unread) return tmp;
++       }
++       return NULL;
++}
+ 
+ void set_buffystats(CONTEXT* Context)
+ {
+@@ -352,18 +388,33 @@ void set_buffystats(CONTEXT* Context)
+ 
+ void scroll_sidebar(int op, int menu)
+ {
++        BUFFY *tmp;
+         if(!SidebarWidth) return;
+         if(!CurBuffy) return;
+ 
+ 	switch (op) {
+ 		case OP_SIDEBAR_NEXT:
++                if (!option (OPTSIDEBARNEWMAILONLY)) {
+ 			if ( CurBuffy->next == NULL ) return;
+ 			CurBuffy = CurBuffy->next;
+ 			break;
++                }
++                case OP_SIDEBAR_NEXT_NEW:
++                        if ( (tmp = exist_next_new()) == NULL)
++                                return;
++                        else CurBuffy = tmp;
++                        break;
+ 		case OP_SIDEBAR_PREV:
++                 if (!option (OPTSIDEBARNEWMAILONLY)) {
+ 			if ( CurBuffy->prev == NULL ) return;
+ 			CurBuffy = CurBuffy->prev;
+ 			break;
++                }
++                case OP_SIDEBAR_PREV_NEW:
++                       if ( (tmp = exist_prev_new()) == NULL)
++                               return;
++                       else CurBuffy = tmp;
++                       break;
+ 		case OP_SIDEBAR_SCROLL_UP:
+ 			CurBuffy = TopBuffy;
+ 			if ( CurBuffy != Incoming ) {
diff --git a/pkgs/applications/networking/mailreaders/mutt/sidebar-utf8.patch b/pkgs/applications/networking/mailreaders/mutt/sidebar-utf8.patch
new file mode 100644
index 00000000000..d67e43c24b6
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/mutt/sidebar-utf8.patch
@@ -0,0 +1,132 @@
+From: Antonio Radici <antonio@debian.org>
+Date: Tue, 4 Mar 2014 15:39:14 +0100
+Subject: sidebar-utf8
+
+This patch fixes a problem with utf-8 strings and the sidebar,
+it rewrites entirely make_sidebar_entry so it also fixes some
+segfaults due to misallocations and overflows.
+
+See:
+ http://bugs.debian.org/584581
+ http://bugs.debian.org/603287
+
+Gbp-Pq: Topic mutt-patched
+---
+ sidebar.c | 97 +++++++++++++++++++++++++++++++++++++++++++--------------------
+ 1 file changed, 67 insertions(+), 30 deletions(-)
+
+diff --git a/sidebar.c b/sidebar.c
+index 4356ffc..8f58f85 100644
+--- a/sidebar.c
++++ b/sidebar.c
+@@ -30,6 +30,7 @@
+ #include <libgen.h>
+ #include "keymap.h"
+ #include <stdbool.h>
++#include <wchar.h>
+ 
+ /*BUFFY *CurBuffy = 0;*/
+ static BUFFY *TopBuffy = 0;
+@@ -82,36 +83,72 @@ void calc_boundaries (int menu)
+ 
+ char *make_sidebar_entry(char *box, int size, int new, int flagged)
+ {
+-	static char *entry = 0;
+-	char *c;
+-	int i = 0;
+-	int delim_len = strlen(SidebarDelim);
+-
+-	c = realloc(entry, SidebarWidth - delim_len + 2);
+-	if ( c ) entry = c;
+-	entry[SidebarWidth - delim_len + 1] = 0;
+-	for (; i < SidebarWidth - delim_len + 1; entry[i++] = ' ' );
+-	i = strlen(box);
+-	strncpy( entry, box, i < (SidebarWidth - delim_len + 1) ? i : (SidebarWidth - delim_len + 1) );
+-
+-        if (size == -1)
+-                sprintf(entry + SidebarWidth - delim_len - 3, "?");
+-        else if ( new ) {
+-          if (flagged > 0) {
+-              sprintf(
+-		        entry + SidebarWidth - delim_len - 5 - quick_log10(size) - quick_log10(new) - quick_log10(flagged),
+-		        "% d(%d)[%d]", size, new, flagged);
+-          } else {
+-              sprintf(
+-                      entry + SidebarWidth - delim_len - 3 - quick_log10(size) - quick_log10(new),
+-                      "% d(%d)", size, new);
+-          }
+-        } else if (flagged > 0) {
+-              sprintf( entry + SidebarWidth - delim_len - 3 - quick_log10(size) - quick_log10(flagged), "% d[%d]", size, flagged);
+-        } else {
+-              sprintf( entry + SidebarWidth - delim_len - 1 - quick_log10(size), "% d", size);
+-        }
+-	return entry;
++    char int_store[20]; // up to 64 bits integers
++    int right_width, left_width;
++    int box_len, box_bytes;
++    int int_len;
++    int right_offset = 0;
++    int delim_len = strlen(SidebarDelim);
++    static char *entry;
++
++    right_width = left_width = 0;
++    box_len = box_bytes = 0;
++
++    // allocate an entry big enough to contain SidebarWidth wide chars
++    entry = malloc((SidebarWidth*4)+1); // TODO: error check
++
++    // determine the right space (i.e.: how big are the numbers that we want to print)
++    if ( size > 0 ) {
++        int_len = snprintf(int_store, sizeof(int_store), "%d", size);
++        right_width += int_len;
++    } else {
++        right_width = 1; // to represent 0
++    }
++    if ( new > 0 ) {
++        int_len = snprintf(int_store, sizeof(int_store), "%d", new);
++        right_width += int_len + 2; // 2 is for ()
++    }
++    if ( flagged > 0 ) {
++        int_len = snprintf(int_store, sizeof(int_store), "%d", flagged);
++        right_width += int_len + 2; // 2 is for []
++    }
++
++    // determine how much space we have for *box and its padding (if any)
++    left_width = SidebarWidth - right_width - 1 - delim_len; // 1 is for the space
++    //fprintf(stdout, "left_width: %d right_width: %d\n", left_width, right_width);
++    // right side overflow case
++    if ( left_width <= 0 ) {
++        snprintf(entry, SidebarWidth*4, "%-*.*s ...", SidebarWidth-4-delim_len, SidebarWidth-4-delim_len, box);
++        return entry;
++    }
++    right_width -= delim_len;
++
++    // to support utf-8 chars we need to add enough space padding in case there
++    // are less chars than bytes in *box
++    box_len = mbstowcs(NULL, box, 0);
++    box_bytes = strlen(box);
++    // debug
++    //fprintf(stdout, "box_len: %d box_bytes: %d (diff: %d)\n", box_len, box_bytes, (box_bytes-box_len));
++    // if there is less string than the space we allow, then we will add the
++    // spaces
++    if ( box_len != -1 && box_len < left_width ) {
++        left_width += (box_bytes - box_len);
++    }
++    // otherwise sprintf will truncate the string for us (therefore, no else case)
++
++    // print the sidebar entry (without new and flagged messages, at the moment)
++    //fprintf(stdout, "left_width: %d right_width: %d\n", left_width, right_width);
++    right_offset = snprintf(entry, SidebarWidth*4, "%-*.*s %d", left_width, left_width, box, size);
++
++    // then pad new and flagged messages if any
++    if ( new > 0 ) {
++        right_offset += snprintf(entry+right_offset, SidebarWidth*4-right_offset, "(%d)", new);
++    }
++    if ( flagged > 0 ) {
++        right_offset += snprintf(entry+right_offset, SidebarWidth*4-right_offset, "[%d]", flagged);
++    }
++
++    return entry;
+ }
+ 
+ void set_curbuffy(char buf[LONG_STRING])
diff --git a/pkgs/applications/networking/mailreaders/mutt/sidebar.patch b/pkgs/applications/networking/mailreaders/mutt/sidebar.patch
new file mode 100644
index 00000000000..262e8f98a65
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/mutt/sidebar.patch
@@ -0,0 +1,1477 @@
+From: Antonio Radici <antonio@debian.org>
+Date: Tue, 4 Mar 2014 15:21:10 +0100
+Subject: sidebar
+
+When enabled, mutt will show a list of mailboxes with (new) message counts in a
+separate column on the left side of the screen.
+
+As this feature is still considered to be unstable, this patch is only applied
+in the "mutt-patched" package.
+
+* Configuration variables:
+
+  sidebar_delim (string, default "|")
+
+    This specifies the delimiter between the sidebar (if visible) and
+    other screens.
+
+  sidebar_visible (boolean, default no)
+
+    This specifies whether or not to show sidebar (left-side list of folders).
+
+  sidebar_width (integer, default 0)
+-
+    The width of the sidebar.
+
+* Patch source:
+  - http://www.lunar-linux.org/index.php?page=mutt-sidebar
+  - http://lunar-linux.org/~tchan/mutt/patch-1.5.19.sidebar.20090522.txt
+
+* Changes made:
+  - 2008-08-02 myon: Refreshed patch using quilt push -f to remove hunks we do
+    not need (Makefile.in).
+
+  - 2014-03-04 evgeni: refresh sidebar patch with the version from OpenBSD
+    Source:
+      ftp://ftp.openbsd.org/pub/OpenBSD/distfiles/mutt/sidebar-1.5.22.diff1.gz
+
+Signed-off-by: Matteo F. Vescovi <mfvescovi@gmail.com>
+Signed-off-by: Evgeni Golov <evgeni@debian.org>
+
+Gbp-Pq: Topic mutt-patched
+---
+ Makefile.am    |   1 +
+ OPS            |   5 +
+ buffy.c        | 124 +++++++++++++++++++++
+ buffy.h        |   4 +
+ color.c        |   2 +
+ compose.c      |  26 ++---
+ curs_main.c    |  30 +++++-
+ flags.c        |   3 +
+ functions.h    |  10 ++
+ globals.h      |   4 +
+ imap/command.c |   7 ++
+ imap/imap.c    |   2 +-
+ init.h         |  21 ++++
+ mailbox.h      |   1 +
+ mbox.c         |   2 +
+ menu.c         |  20 ++--
+ mh.c           |  22 ++++
+ mutt.h         |   4 +
+ mutt_curses.h  |   3 +
+ muttlib.c      |  48 +++++++++
+ mx.c           |  15 +++
+ mx.h           |   1 +
+ pager.c        |  30 ++++--
+ sidebar.c      | 333 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ sidebar.h      |  36 +++++++
+ 25 files changed, 720 insertions(+), 34 deletions(-)
+ create mode 100644 sidebar.c
+ create mode 100644 sidebar.h
+
+diff --git a/Makefile.am b/Makefile.am
+index 5dfeff6..cf1ac98 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -33,6 +33,7 @@ mutt_SOURCES = \
+ 	rfc822.c rfc1524.c rfc2047.c rfc2231.c rfc3676.c \
+ 	score.c send.c sendlib.c signal.c sort.c \
+ 	status.c system.c thread.c charset.c history.c lib.c \
++	sidebar.c \
+ 	muttlib.c editmsg.c mbyte.c \
+ 	url.c ascii.c crypt-mod.c crypt-mod.h safe_asprintf.c
+ 
+diff --git a/OPS b/OPS
+index 02cea8e..b036db9 100644
+--- a/OPS
++++ b/OPS
+@@ -180,3 +180,8 @@ OP_WHAT_KEY "display the keycode for a key press"
+ OP_MAIN_SHOW_LIMIT "show currently active limit pattern"
+ OP_MAIN_COLLAPSE_THREAD "collapse/uncollapse current thread"
+ OP_MAIN_COLLAPSE_ALL "collapse/uncollapse all threads"
++OP_SIDEBAR_SCROLL_UP "scroll the mailbox pane up 1 page"
++OP_SIDEBAR_SCROLL_DOWN "scroll the mailbox pane down 1 page"
++OP_SIDEBAR_NEXT "go down to next mailbox"
++OP_SIDEBAR_PREV "go to previous mailbox"
++OP_SIDEBAR_OPEN "open hilighted mailbox"
+diff --git a/buffy.c b/buffy.c
+index 12a16d1..90ca6db 100644
+--- a/buffy.c
++++ b/buffy.c
+@@ -161,6 +161,49 @@ void mutt_buffy_cleanup (const char *buf, struct stat *st)
+   }
+ }
+ 
++static int buffy_compare_name(const void *a, const void *b) {
++  const BUFFY *b1 = * (BUFFY * const *) a;
++  const BUFFY *b2 = * (BUFFY * const *) b;
++
++  return mutt_strcoll(b1->path, b2->path);
++}
++
++static BUFFY *buffy_sort(BUFFY *b)
++{
++  BUFFY *tmp = b;
++  int buffycount = 0;
++  BUFFY **ary;
++  int i;
++
++  if (!option(OPTSIDEBARSORT))
++    return b;
++
++  for (; tmp != NULL; tmp = tmp->next)
++    buffycount++;
++
++  ary = (BUFFY **) safe_calloc(buffycount, sizeof (*ary));
++
++  tmp = b;
++  for (i = 0; tmp != NULL; tmp = tmp->next, i++) {
++    ary[i] = tmp;
++  }
++
++  qsort(ary, buffycount, sizeof(*ary), buffy_compare_name);
++
++  for (i = 0; i < buffycount - 1; i++) {
++    ary[i]->next = ary[i+1];
++  }
++  ary[buffycount - 1]->next = NULL;
++  for (i = 1; i < buffycount; i++) {
++    ary[i]->prev = ary[i-1];
++  }
++  ary[0]->prev = NULL;
++
++  tmp = ary[0];
++  free(ary);
++  return tmp;
++}
++
+ BUFFY *mutt_find_mailbox (const char *path)
+ {
+   BUFFY *tmp = NULL;
+@@ -282,6 +325,7 @@ int mutt_parse_mailboxes (BUFFER *path, BUFFER *s, unsigned long data, BUFFER *e
+     else
+       (*tmp)->size = 0;
+   }
++  Incoming = buffy_sort(Incoming);
+   return 0;
+ }
+ 
+@@ -357,6 +401,69 @@ static int buffy_maildir_hasnew (BUFFY* mailbox)
+ 
+   return 0;
+ }
++
++/* update message counts for the sidebar */
++void buffy_maildir_update (BUFFY* mailbox)
++{
++  char path[_POSIX_PATH_MAX];
++  DIR *dirp;
++  struct dirent *de;
++  char *p;
++
++  mailbox->msgcount = 0;
++  mailbox->msg_unread = 0;
++  mailbox->msg_flagged = 0;
++
++  snprintf (path, sizeof (path), "%s/new", mailbox->path);
++        
++  if ((dirp = opendir (path)) == NULL)
++  {   
++    mailbox->magic = 0;
++    return;
++  } 
++      
++  while ((de = readdir (dirp)) != NULL)
++  {
++    if (*de->d_name == '.')
++      continue;
++
++    if (!(p = strstr (de->d_name, ":2,")) || !strchr (p + 3, 'T')) {
++      mailbox->new = 1;
++      mailbox->msgcount++;
++      mailbox->msg_unread++;
++    }
++  }
++
++  closedir (dirp);
++  snprintf (path, sizeof (path), "%s/cur", mailbox->path);
++        
++  if ((dirp = opendir (path)) == NULL)
++  {   
++    mailbox->magic = 0;
++    return;
++  } 
++      
++  while ((de = readdir (dirp)) != NULL)
++  {
++    if (*de->d_name == '.')
++      continue;
++
++    if (!(p = strstr (de->d_name, ":2,")) || !strchr (p + 3, 'T')) {
++      mailbox->msgcount++;
++      if ((p = strstr (de->d_name, ":2,"))) {
++        if (!strchr (p + 3, 'T')) {
++          if (!strchr (p + 3, 'S'))
++            mailbox->msg_unread++;
++          if (strchr(p + 3, 'F'))
++            mailbox->msg_flagged++;
++        }
++      }
++    }
++  }
++
++  closedir (dirp);
++}
++
+ /* returns 1 if mailbox has new mail */ 
+ static int buffy_mbox_hasnew (BUFFY* mailbox, struct stat *sb)
+ {
+@@ -388,6 +495,20 @@ static int buffy_mbox_hasnew (BUFFY* mailbox, struct stat *sb)
+   return rc;
+ }
+ 
++/* update message counts for the sidebar */
++void buffy_mbox_update (BUFFY* mailbox)
++{
++  CONTEXT *ctx = NULL;
++
++  ctx = mx_open_mailbox(mailbox->path, M_READONLY | M_QUIET | M_NOSORT | M_PEEK, NULL);
++  if(ctx)
++  {
++    mailbox->msgcount = ctx->msgcount;
++    mailbox->msg_unread = ctx->unread;
++    mx_close_mailbox(ctx, 0);
++  }
++}
++
+ int mutt_buffy_check (int force)
+ {
+   BUFFY *tmp;
+@@ -461,16 +582,19 @@ int mutt_buffy_check (int force)
+       {
+       case M_MBOX:
+       case M_MMDF:
++	buffy_mbox_update (tmp);
+ 	if (buffy_mbox_hasnew (tmp, &sb) > 0)
+ 	  BuffyCount++;
+ 	break;
+ 
+       case M_MAILDIR:
++	buffy_maildir_update (tmp);
+ 	if (buffy_maildir_hasnew (tmp) > 0)
+ 	  BuffyCount++;
+ 	break;
+ 
+       case M_MH:
++	mh_buffy_update (tmp->path, &tmp->msgcount, &tmp->msg_unread, &tmp->msg_flagged);
+ 	mh_buffy(tmp);
+ 	if (tmp->new)
+ 	  BuffyCount++;
+diff --git a/buffy.h b/buffy.h
+index f9fc55a..672d178 100644
+--- a/buffy.h
++++ b/buffy.h
+@@ -25,7 +25,11 @@ typedef struct buffy_t
+   char path[_POSIX_PATH_MAX];
+   off_t size;
+   struct buffy_t *next;
++  struct buffy_t *prev;
+   short new;			/* mailbox has new mail */
++  int msgcount;			/* total number of messages */
++  int msg_unread;		/* number of unread messages */
++  int msg_flagged;		/* number of flagged messages */
+   short notified;		/* user has been notified */
+   short magic;			/* mailbox type */
+   short newly_created;		/* mbox or mmdf just popped into existence */
+diff --git a/color.c b/color.c
+index 64a46dc..d6f9198 100644
+--- a/color.c
++++ b/color.c
+@@ -94,6 +94,8 @@ static const struct mapping_t Fields[] =
+   { "underline",	MT_COLOR_UNDERLINE },
+   { "index",		MT_COLOR_INDEX },
+   { "prompt",		MT_COLOR_PROMPT },
++  { "sidebar_new",	MT_COLOR_NEW },
++  { "sidebar_flagged",	MT_COLOR_FLAGGED },
+   { NULL,		0 }
+ };
+ 
+diff --git a/compose.c b/compose.c
+index 9d87060..b63695f 100644
+--- a/compose.c
++++ b/compose.c
+@@ -72,7 +72,7 @@ enum
+ 
+ #define HDR_XOFFSET 10
+ #define TITLE_FMT "%10s" /* Used for Prompts, which are ASCII */
+-#define W (COLS - HDR_XOFFSET)
++#define W (COLS - HDR_XOFFSET - SidebarWidth)
+ 
+ static const char * const Prompts[] =
+ {
+@@ -110,7 +110,7 @@ static void snd_entry (char *b, size_t blen, MUTTMENU *menu, int num)
+ 
+ static void redraw_crypt_lines (HEADER *msg)
+ {
+-  mvaddstr (HDR_CRYPT, 0, "Security: ");
++  mvaddstr (HDR_CRYPT, SidebarWidth, "Security: ");
+ 
+   if ((WithCrypto & (APPLICATION_PGP | APPLICATION_SMIME)) == 0)
+   {
+@@ -145,7 +145,7 @@ static void redraw_crypt_lines (HEADER *msg)
+       addstr (_(" (OppEnc mode)"));
+ 
+   clrtoeol ();
+-  move (HDR_CRYPTINFO, 0);
++  move (HDR_CRYPTINFO, SidebarWidth);
+   clrtoeol ();
+ 
+   if ((WithCrypto & APPLICATION_PGP)
+@@ -162,7 +162,7 @@ static void redraw_crypt_lines (HEADER *msg)
+       && (msg->security & ENCRYPT)
+       && SmimeCryptAlg
+       && *SmimeCryptAlg) {
+-      mvprintw (HDR_CRYPTINFO, 40, "%s%s", _("Encrypt with: "),
++      mvprintw (HDR_CRYPTINFO, SidebarWidth + 40, "%s%s", _("Encrypt with: "),
+ 		NONULL(SmimeCryptAlg));
+   }
+ }
+@@ -175,7 +175,7 @@ static void redraw_mix_line (LIST *chain)
+   int c;
+   char *t;
+ 
+-  mvaddstr (HDR_MIX, 0,     "     Mix: ");
++  mvaddstr (HDR_MIX, SidebarWidth,     "     Mix: ");
+ 
+   if (!chain)
+   {
+@@ -190,7 +190,7 @@ static void redraw_mix_line (LIST *chain)
+     if (t && t[0] == '0' && t[1] == '\0')
+       t = "<random>";
+     
+-    if (c + mutt_strlen (t) + 2 >= COLS)
++    if (c + mutt_strlen (t) + 2 >= COLS - SidebarWidth)
+       break;
+ 
+     addstr (NONULL(t));
+@@ -242,7 +242,7 @@ static void draw_envelope_addr (int line, ADDRESS *addr)
+ 
+   buf[0] = 0;
+   rfc822_write_address (buf, sizeof (buf), addr, 1);
+-  mvprintw (line, 0, TITLE_FMT, Prompts[line - 1]);
++  mvprintw (line, SidebarWidth, TITLE_FMT, Prompts[line - 1]);
+   mutt_paddstr (W, buf);
+ }
+ 
+@@ -252,10 +252,10 @@ static void draw_envelope (HEADER *msg, char *fcc)
+   draw_envelope_addr (HDR_TO, msg->env->to);
+   draw_envelope_addr (HDR_CC, msg->env->cc);
+   draw_envelope_addr (HDR_BCC, msg->env->bcc);
+-  mvprintw (HDR_SUBJECT, 0, TITLE_FMT, Prompts[HDR_SUBJECT - 1]);
++  mvprintw (HDR_SUBJECT, SidebarWidth, TITLE_FMT, Prompts[HDR_SUBJECT - 1]);
+   mutt_paddstr (W, NONULL (msg->env->subject));
+   draw_envelope_addr (HDR_REPLYTO, msg->env->reply_to);
+-  mvprintw (HDR_FCC, 0, TITLE_FMT, Prompts[HDR_FCC - 1]);
++  mvprintw (HDR_FCC, SidebarWidth, TITLE_FMT, Prompts[HDR_FCC - 1]);
+   mutt_paddstr (W, fcc);
+ 
+   if (WithCrypto)
+@@ -266,7 +266,7 @@ static void draw_envelope (HEADER *msg, char *fcc)
+ #endif
+ 
+   SETCOLOR (MT_COLOR_STATUS);
+-  mvaddstr (HDR_ATTACH - 1, 0, _("-- Attachments"));
++  mvaddstr (HDR_ATTACH - 1, SidebarWidth, _("-- Attachments"));
+   clrtoeol ();
+ 
+   NORMAL_COLOR;
+@@ -302,7 +302,7 @@ static int edit_address_list (int line, ADDRESS **addr)
+   /* redraw the expanded list so the user can see the result */
+   buf[0] = 0;
+   rfc822_write_address (buf, sizeof (buf), *addr, 1);
+-  move (line, HDR_XOFFSET);
++  move (line, HDR_XOFFSET+SidebarWidth);
+   mutt_paddstr (W, buf);
+   
+   return 0;
+@@ -562,7 +562,7 @@ int mutt_compose_menu (HEADER *msg,   /* structure for new message */
+ 	if (mutt_get_field ("Subject: ", buf, sizeof (buf), 0) == 0)
+ 	{
+ 	  mutt_str_replace (&msg->env->subject, buf);
+-	  move (HDR_SUBJECT, HDR_XOFFSET);
++	  move (HDR_SUBJECT, HDR_XOFFSET + SidebarWidth);
+ 	  if (msg->env->subject)
+ 	    mutt_paddstr (W, msg->env->subject);
+ 	  else
+@@ -580,7 +580,7 @@ int mutt_compose_menu (HEADER *msg,   /* structure for new message */
+ 	{
+ 	  strfcpy (fcc, buf, fcclen);
+ 	  mutt_pretty_mailbox (fcc, fcclen);
+-	  move (HDR_FCC, HDR_XOFFSET);
++	  move (HDR_FCC, HDR_XOFFSET + SidebarWidth);
+ 	  mutt_paddstr (W, fcc);
+ 	  fccSet = 1;
+ 	}
+diff --git a/curs_main.c b/curs_main.c
+index 9d718ee..ea530a6 100644
+--- a/curs_main.c
++++ b/curs_main.c
+@@ -26,7 +26,9 @@
+ #include "mailbox.h"
+ #include "mapping.h"
+ #include "sort.h"
++#include "buffy.h"
+ #include "mx.h"
++#include "sidebar.h"
+ 
+ #ifdef USE_POP
+ #include "pop.h"
+@@ -596,8 +598,12 @@ int mutt_index_menu (void)
+        menu->redraw |= REDRAW_STATUS;
+      if (do_buffy_notify)
+      {
+-       if (mutt_buffy_notify () && option (OPTBEEPNEW))
+- 	beep ();
++       if (mutt_buffy_notify ())
++       {
++         menu->redraw |= REDRAW_FULL;
++         if (option (OPTBEEPNEW))
++           beep ();
++       }
+      }
+      else
+        do_buffy_notify = 1;
+@@ -609,6 +615,7 @@ int mutt_index_menu (void)
+     if (menu->redraw & REDRAW_FULL)
+     {
+       menu_redraw_full (menu);
++      draw_sidebar(menu->menu);
+       mutt_show_error ();
+     }
+ 
+@@ -631,9 +638,12 @@ int mutt_index_menu (void)
+ 
+       if (menu->redraw & REDRAW_STATUS)
+       {
++	DrawFullLine = 1;
+ 	menu_status_line (buf, sizeof (buf), menu, NONULL (Status));
++	DrawFullLine = 0;
+ 	move (option (OPTSTATUSONTOP) ? 0 : LINES-2, 0);
+ 	SETCOLOR (MT_COLOR_STATUS);
++	set_buffystats(Context);
+ 	mutt_paddstr (COLS, buf);
+ 	NORMAL_COLOR;
+ 	menu->redraw &= ~REDRAW_STATUS;
+@@ -653,7 +663,7 @@ int mutt_index_menu (void)
+ 	menu->oldcurrent = -1;
+ 
+       if (option (OPTARROWCURSOR))
+-	move (menu->current - menu->top + menu->offset, 2);
++	move (menu->current - menu->top + menu->offset, SidebarWidth + 2);
+       else if (option (OPTBRAILLEFRIENDLY))
+ 	move (menu->current - menu->top + menu->offset, 0);
+       else
+@@ -1154,6 +1164,7 @@ int mutt_index_menu (void)
+ 	  menu->redraw = REDRAW_FULL;
+ 	break;
+ 
++      case OP_SIDEBAR_OPEN:
+       case OP_MAIN_CHANGE_FOLDER:
+       case OP_MAIN_NEXT_UNREAD_MAILBOX:
+ 
+@@ -1185,7 +1196,11 @@ int mutt_index_menu (void)
+ 	{
+ 	  mutt_buffy (buf, sizeof (buf));
+ 
+-	  if (mutt_enter_fname (cp, buf, sizeof (buf), &menu->redraw, 1) == -1)
++          if ( op == OP_SIDEBAR_OPEN ) {
++              if(!CurBuffy)
++                break;
++            strncpy( buf, CurBuffy->path, sizeof(buf) );  
++	    } else if (mutt_enter_fname (cp, buf, sizeof (buf), &menu->redraw, 1) == -1)
+ 	  {
+ 	    if (menu->menu == MENU_PAGER)
+ 	    {
+@@ -1203,6 +1218,7 @@ int mutt_index_menu (void)
+ 	}
+ 
+ 	mutt_expand_path (buf, sizeof (buf));
++        set_curbuffy(buf);
+ 	if (mx_get_magic (buf) <= 0)
+ 	{
+ 	  mutt_error (_("%s is not a mailbox."), buf);
+@@ -2306,6 +2322,12 @@ int mutt_index_menu (void)
+ 	mutt_what_key();
+ 	break;
+ 
++      case OP_SIDEBAR_SCROLL_UP:
++      case OP_SIDEBAR_SCROLL_DOWN:
++      case OP_SIDEBAR_NEXT:
++      case OP_SIDEBAR_PREV:
++        scroll_sidebar(op, menu->menu);
++        break;
+       default:
+ 	if (menu->menu == MENU_MAIN)
+ 	  km_error_key (MENU_MAIN);
+diff --git a/flags.c b/flags.c
+index 133fa35..48fb287 100644
+--- a/flags.c
++++ b/flags.c
+@@ -22,8 +22,10 @@
+ 
+ #include "mutt.h"
+ #include "mutt_curses.h"
++#include "mutt_menu.h"
+ #include "sort.h"
+ #include "mx.h"
++#include "sidebar.h"
+ 
+ void _mutt_set_flag (CONTEXT *ctx, HEADER *h, int flag, int bf, int upd_ctx)
+ {
+@@ -290,6 +292,7 @@ void _mutt_set_flag (CONTEXT *ctx, HEADER *h, int flag, int bf, int upd_ctx)
+    */
+   if (h->searched && (changed != h->changed || deleted != ctx->deleted || tagged != ctx->tagged || flagged != ctx->flagged))
+     h->searched = 0;
++	draw_sidebar(0);
+ }
+ 
+ void mutt_tag_set_flag (int flag, int bf)
+diff --git a/functions.h b/functions.h
+index 26171a0..ef8937a 100644
+--- a/functions.h
++++ b/functions.h
+@@ -170,6 +170,11 @@ const struct binding_t OpMain[] = { /* map: index */
+   { "decrypt-save",		OP_DECRYPT_SAVE,		NULL },
+ 
+ 
++ { "sidebar-scroll-up",	OP_SIDEBAR_SCROLL_UP, NULL },
++ { "sidebar-scroll-down",	OP_SIDEBAR_SCROLL_DOWN, NULL },
++ { "sidebar-next",		OP_SIDEBAR_NEXT, NULL },
++ { "sidebar-prev",		OP_SIDEBAR_PREV, NULL },
++ { "sidebar-open",		OP_SIDEBAR_OPEN, NULL },
+   { NULL,			0,				NULL }
+ };
+ 
+@@ -274,6 +279,11 @@ const struct binding_t OpPager[] = { /* map: pager */
+ 
+   { "what-key",		OP_WHAT_KEY,		NULL },
+ 
++  { "sidebar-scroll-up",	OP_SIDEBAR_SCROLL_UP, NULL },
++  { "sidebar-scroll-down",	OP_SIDEBAR_SCROLL_DOWN, NULL },
++  { "sidebar-next",	OP_SIDEBAR_NEXT, NULL },
++  { "sidebar-prev",	OP_SIDEBAR_PREV, NULL },
++  { "sidebar-open", OP_SIDEBAR_OPEN, NULL },
+   { NULL,		0,				NULL }
+ };
+ 
+diff --git a/globals.h b/globals.h
+index 282fde3..004c795 100644
+--- a/globals.h
++++ b/globals.h
+@@ -118,6 +118,7 @@ WHERE short SearchContext;
+ WHERE char *SendCharset;
+ WHERE char *Sendmail;
+ WHERE char *Shell;
++WHERE char *SidebarDelim;
+ WHERE char *Signature;
+ WHERE char *SimpleSearch;
+ #if USE_SMTP
+@@ -214,6 +215,9 @@ WHERE short ScoreThresholdDelete;
+ WHERE short ScoreThresholdRead;
+ WHERE short ScoreThresholdFlag;
+ 
++WHERE struct buffy_t *CurBuffy INITVAL(0);
++WHERE short DrawFullLine INITVAL(0);
++WHERE short SidebarWidth;
+ #ifdef USE_IMAP
+ WHERE short ImapKeepalive;
+ WHERE short ImapPipelineDepth;
+diff --git a/imap/command.c b/imap/command.c
+index 32f8417..d68e3ab 100644
+--- a/imap/command.c
++++ b/imap/command.c
+@@ -1012,6 +1012,13 @@ static void cmd_parse_status (IMAP_DATA* idata, char* s)
+ 	     opened */
+ 	  status->uidnext = oldun;
+ 
++        /* Added to make the sidebar show the correct numbers */
++        if (status->messages)
++        {
++          inc->msgcount = status->messages;
++          inc->msg_unread = status->unseen;
++        }
++
+         FREE (&value);
+         return;
+       }
+diff --git a/imap/imap.c b/imap/imap.c
+index f476873..af3ac3d 100644
+--- a/imap/imap.c
++++ b/imap/imap.c
+@@ -1529,7 +1529,7 @@ int imap_buffy_check (int force)
+ 
+     imap_munge_mbox_name (munged, sizeof (munged), name);
+     snprintf (command, sizeof (command),
+-	      "STATUS %s (UIDNEXT UIDVALIDITY UNSEEN RECENT)", munged);
++	      "STATUS %s (UIDNEXT UIDVALIDITY UNSEEN RECENT MESSAGES)", munged);
+ 
+     if (imap_exec (idata, command, IMAP_CMD_QUEUE) < 0)
+     {
+diff --git a/init.h b/init.h
+index 35224c1..c664e5f 100644
+--- a/init.h
++++ b/init.h
+@@ -2030,6 +2030,27 @@ struct option_t MuttVars[] = {
+   ** not used.
+   ** (PGP only)
+   */
++  {"sidebar_delim", DT_STR, R_BOTH, UL &SidebarDelim, "|"},
++  /*
++  ** .pp
++  ** This specifies the delimiter between the sidebar (if visible) and 
++  ** other screens.
++  */
++  { "sidebar_visible", DT_BOOL, R_BOTH, OPTSIDEBAR, 0 },
++  /*
++  ** .pp
++  ** This specifies whether or not to show sidebar (left-side list of folders).
++  */
++  { "sidebar_sort", DT_BOOL, R_BOTH, OPTSIDEBARSORT, 0 },
++  /*
++  ** .pp
++  ** This specifies whether or not to sort the sidebar alphabetically.
++  */
++  { "sidebar_width", DT_NUM, R_BOTH, UL &SidebarWidth, 0 },
++  /*
++  ** .pp
++  ** The width of the sidebar.
++  */
+   { "pgp_use_gpg_agent", DT_BOOL, R_NONE, OPTUSEGPGAGENT, 0},
+   /*
+   ** .pp
+diff --git a/mailbox.h b/mailbox.h
+index 2b2c9a1..000503d 100644
+--- a/mailbox.h
++++ b/mailbox.h
+@@ -27,6 +27,7 @@
+ #define M_NEWFOLDER	(1<<4) /* create a new folder - same as M_APPEND, but uses
+ 				* safe_fopen() for mbox-style folders.
+ 				*/
++#define M_PEEK		(1<<5) /* revert atime back after taking a look (if applicable) */
+ 
+ /* mx_open_new_message() */
+ #define M_ADD_FROM	(1<<0)	/* add a From_ line */
+diff --git a/mbox.c b/mbox.c
+index 6d3b6bd..fa82eb3 100644
+--- a/mbox.c
++++ b/mbox.c
+@@ -104,6 +104,7 @@ int mmdf_parse_mailbox (CONTEXT *ctx)
+     mutt_perror (ctx->path);
+     return (-1);
+   }
++  ctx->atime = sb.st_atime;
+   ctx->mtime = sb.st_mtime;
+   ctx->size = sb.st_size;
+ 
+@@ -255,6 +256,7 @@ int mbox_parse_mailbox (CONTEXT *ctx)
+ 
+   ctx->size = sb.st_size;
+   ctx->mtime = sb.st_mtime;
++  ctx->atime = sb.st_atime;
+ 
+ #ifdef NFS_ATTRIBUTE_HACK
+   if (sb.st_mtime > sb.st_atime)
+diff --git a/menu.c b/menu.c
+index 27b5f8e..bc3a02f 100644
+--- a/menu.c
++++ b/menu.c
+@@ -24,6 +24,7 @@
+ #include "mutt_curses.h"
+ #include "mutt_menu.h"
+ #include "mbyte.h"
++#include "sidebar.h"
+ 
+ extern size_t UngetCount;
+ 
+@@ -186,7 +187,7 @@ static void menu_pad_string (char *s, size_t n)
+ {
+   char *scratch = safe_strdup (s);
+   int shift = option (OPTARROWCURSOR) ? 3 : 0;
+-  int cols = COLS - shift;
++  int cols = COLS - shift - SidebarWidth;
+ 
+   mutt_format_string (s, n, cols, cols, FMT_LEFT, ' ', scratch, mutt_strlen (scratch), 1);
+   s[n - 1] = 0;
+@@ -239,6 +240,7 @@ void menu_redraw_index (MUTTMENU *menu)
+   int do_color;
+   int attr;
+ 
++  draw_sidebar(1);
+   for (i = menu->top; i < menu->top + menu->pagelen; i++)
+   {
+     if (i < menu->max)
+@@ -249,7 +251,7 @@ void menu_redraw_index (MUTTMENU *menu)
+       menu_pad_string (buf, sizeof (buf));
+ 
+       ATTRSET(attr);
+-      move(i - menu->top + menu->offset, 0);
++      move(i - menu->top + menu->offset, SidebarWidth);
+       do_color = 1;
+ 
+       if (i == menu->current)
+@@ -272,7 +274,7 @@ void menu_redraw_index (MUTTMENU *menu)
+     else
+     {
+       NORMAL_COLOR;
+-      CLEARLINE(i - menu->top + menu->offset);
++      CLEARLINE_WIN(i - menu->top + menu->offset);
+     }
+   }
+   NORMAL_COLOR;
+@@ -289,7 +291,7 @@ void menu_redraw_motion (MUTTMENU *menu)
+     return;
+   }
+   
+-  move (menu->oldcurrent + menu->offset - menu->top, 0);
++  move (menu->oldcurrent + menu->offset - menu->top, SidebarWidth);
+   ATTRSET(menu->color (menu->oldcurrent));
+ 
+   if (option (OPTARROWCURSOR))
+@@ -301,13 +303,13 @@ void menu_redraw_motion (MUTTMENU *menu)
+     {
+       menu_make_entry (buf, sizeof (buf), menu, menu->oldcurrent);
+       menu_pad_string (buf, sizeof (buf));
+-      move (menu->oldcurrent + menu->offset - menu->top, 3);
++      move (menu->oldcurrent + menu->offset - menu->top, SidebarWidth + 3);
+       print_enriched_string (menu->color(menu->oldcurrent), (unsigned char *) buf, 1);
+     }
+ 
+     /* now draw it in the new location */
+     SETCOLOR(MT_COLOR_INDICATOR);
+-    mvaddstr(menu->current + menu->offset - menu->top, 0, "->");
++    mvaddstr(menu->current + menu->offset - menu->top, SidebarWidth, "->");
+   }
+   else
+   {
+@@ -320,7 +322,7 @@ void menu_redraw_motion (MUTTMENU *menu)
+     menu_make_entry (buf, sizeof (buf), menu, menu->current);
+     menu_pad_string (buf, sizeof (buf));
+     SETCOLOR(MT_COLOR_INDICATOR);
+-    move(menu->current - menu->top + menu->offset, 0);
++    move(menu->current - menu->top + menu->offset, SidebarWidth);
+     print_enriched_string (menu->color(menu->current), (unsigned char *) buf, 0);
+   }
+   menu->redraw &= REDRAW_STATUS;
+@@ -332,7 +334,7 @@ void menu_redraw_current (MUTTMENU *menu)
+   char buf[LONG_STRING];
+   int attr = menu->color (menu->current);
+   
+-  move (menu->current + menu->offset - menu->top, 0);
++  move (menu->current + menu->offset - menu->top, SidebarWidth);
+   menu_make_entry (buf, sizeof (buf), menu, menu->current);
+   menu_pad_string (buf, sizeof (buf));
+ 
+@@ -881,7 +883,7 @@ int mutt_menuLoop (MUTTMENU *menu)
+     
+     
+     if (option (OPTARROWCURSOR))
+-      move (menu->current - menu->top + menu->offset, 2);
++      move (menu->current - menu->top + menu->offset, SidebarWidth + 2);
+     else if (option (OPTBRAILLEFRIENDLY))
+       move (menu->current - menu->top + menu->offset, 0);
+     else
+diff --git a/mh.c b/mh.c
+index 63e12d2..4a84a99 100644
+--- a/mh.c
++++ b/mh.c
+@@ -295,6 +295,28 @@ void mh_buffy(BUFFY *b)
+   mhs_free_sequences (&mhs);
+ }
+ 
++void mh_buffy_update (const char *path, int *msgcount, int *msg_unread, int *msg_flagged)
++{
++  int i;
++  struct mh_sequences mhs;
++  memset (&mhs, 0, sizeof (mhs));
++
++  if (mh_read_sequences (&mhs, path) < 0)
++    return;
++
++  msgcount = 0;
++  msg_unread = 0;
++  msg_flagged = 0;
++  for (i = 0; i <= mhs.max; i++)
++    msgcount++;
++  if (mhs_check (&mhs, i) & MH_SEQ_UNSEEN) {
++    msg_unread++;
++  }
++  if (mhs_check (&mhs, i) & MH_SEQ_FLAGGED)
++    msg_flagged++;
++  mhs_free_sequences (&mhs);
++}
++
+ static int mh_mkstemp (CONTEXT * dest, FILE ** fp, char **tgt)
+ {
+   int fd;
+diff --git a/mutt.h b/mutt.h
+index 01d47de..5f25406 100644
+--- a/mutt.h
++++ b/mutt.h
+@@ -435,6 +435,8 @@ enum
+   OPTSAVEEMPTY,
+   OPTSAVENAME,
+   OPTSCORE,
++  OPTSIDEBAR,
++  OPTSIDEBARSORT,
+   OPTSIGDASHES,
+   OPTSIGONTOP,
+   OPTSORTRE,
+@@ -880,6 +882,7 @@ typedef struct _context
+ {
+   char *path;
+   FILE *fp;
++  time_t atime;
+   time_t mtime;
+   off_t size;
+   off_t vsize;
+@@ -920,6 +923,7 @@ typedef struct _context
+   unsigned int quiet : 1;	/* inhibit status messages? */
+   unsigned int collapsed : 1;   /* are all threads collapsed? */
+   unsigned int closing : 1;	/* mailbox is being closed */
++  unsigned int peekonly : 1;	/* just taking a glance, revert atime */
+ 
+   /* driver hooks */
+   void *data;			/* driver specific data */
+diff --git a/mutt_curses.h b/mutt_curses.h
+index f8bc47c..ef9884e 100644
+--- a/mutt_curses.h
++++ b/mutt_curses.h
+@@ -64,6 +64,7 @@
+ #undef lines
+ #endif /* lines */
+ 
++#define CLEARLINE_WIN(x) move(x,SidebarWidth), clrtoeol()
+ #define CLEARLINE(x) move(x,0), clrtoeol()
+ #define CENTERLINE(x,y) move(y, (COLS-strlen(x))/2), addstr(x)
+ #define BEEP() do { if (option (OPTBEEP)) beep(); } while (0)
+@@ -121,6 +122,8 @@ enum
+   MT_COLOR_UNDERLINE,
+   MT_COLOR_INDEX,
+   MT_COLOR_PROMPT,
++  MT_COLOR_NEW,
++  MT_COLOR_FLAGGED,
+   MT_COLOR_MAX
+ };
+ 
+diff --git a/muttlib.c b/muttlib.c
+index c1d565f..039e7c3 100644
+--- a/muttlib.c
++++ b/muttlib.c
+@@ -1279,6 +1279,8 @@ void mutt_FormatString (char *dest,		/* output buffer */
+ 	  pl = pw = 1;
+ 
+ 	/* see if there's room to add content, else ignore */
++        if ( DrawFullLine )
++        {
+ 	if ((col < COLS && wlen < destlen) || soft)
+ 	{
+ 	  int pad;
+@@ -1322,6 +1324,52 @@ void mutt_FormatString (char *dest,		/* output buffer */
+ 	  col += wid;
+ 	  src += pl;
+ 	}
++        }
++        else
++        {
++	if ((col < COLS-SidebarWidth && wlen < destlen) || soft)
++        {
++	  int pad;
++
++	  /* get contents after padding */
++	  mutt_FormatString (buf, sizeof (buf), 0, src + pl, callback, data, flags);
++	  len = mutt_strlen (buf);
++	  wid = mutt_strwidth (buf);
++
++	  /* try to consume as many columns as we can, if we don't have
++	   * memory for that, use as much memory as possible */
++	  pad = (COLS - SidebarWidth - col - wid) / pw;
++	  if (pad > 0 && wlen + (pad * pl) + len > destlen)
++	    pad = ((signed)(destlen - wlen - len)) / pl;
++	  if (pad > 0)
++	  {
++	    while (pad--)
++	    {
++	      memcpy (wptr, src, pl);
++	      wptr += pl;
++	      wlen += pl;
++	      col += pw;
++	    }
++	  }
++	  else if (soft && pad < 0)
++	  {
++	    /* \0-terminate dest for length computation in mutt_wstr_trunc() */
++	    *wptr = 0;
++	    /* make sure right part is at most as wide as display */
++	    len = mutt_wstr_trunc (buf, destlen, COLS, &wid);
++	    /* truncate left so that right part fits completely in */
++	    wlen = mutt_wstr_trunc (dest, destlen - len, col + pad, &col);
++	    wptr = dest + wlen;
++	  }
++	  if (len + wlen > destlen)
++	    len = mutt_wstr_trunc (buf, destlen - wlen, COLS - SidebarWidth - col, NULL);
++	  memcpy (wptr, buf, len);
++	  wptr += len;
++	  wlen += len;
++	  col += wid;
++	  src += pl;
++	}
++        }
+ 	break; /* skip rest of input */
+       }
+       else if (ch == '|')
+diff --git a/mx.c b/mx.c
+index 0a1a80e..e80b8ff 100644
+--- a/mx.c
++++ b/mx.c
+@@ -595,6 +595,7 @@ static int mx_open_mailbox_append (CONTEXT *ctx, int flags)
+  *		M_APPEND	open mailbox for appending
+  *		M_READONLY	open mailbox in read-only mode
+  *		M_QUIET		only print error messages
++ *		M_PEEK		revert atime where applicable
+  *	ctx	if non-null, context struct to use
+  */
+ CONTEXT *mx_open_mailbox (const char *path, int flags, CONTEXT *pctx)
+@@ -617,6 +618,8 @@ CONTEXT *mx_open_mailbox (const char *path, int flags, CONTEXT *pctx)
+     ctx->quiet = 1;
+   if (flags & M_READONLY)
+     ctx->readonly = 1;
++  if (flags & M_PEEK)
++    ctx->peekonly = 1;
+ 
+   if (flags & (M_APPEND|M_NEWFOLDER))
+   {
+@@ -721,9 +724,21 @@ CONTEXT *mx_open_mailbox (const char *path, int flags, CONTEXT *pctx)
+ void mx_fastclose_mailbox (CONTEXT *ctx)
+ {
+   int i;
++#ifndef BUFFY_SIZE
++  struct utimbuf ut;
++#endif
+ 
+   if(!ctx) 
+     return;
++#ifndef BUFFY_SIZE
++  /* fix up the times so buffy won't get confused */
++  if (ctx->peekonly && ctx->path && ctx->mtime > ctx->atime)
++  {
++    ut.actime = ctx->atime;
++    ut.modtime = ctx->mtime;
++    utime (ctx->path, &ut); 
++  }
++#endif
+ 
+   /* never announce that a mailbox we've just left has new mail. #3290
+    * XXX: really belongs in mx_close_mailbox, but this is a nice hook point */
+diff --git a/mx.h b/mx.h
+index 2ef4ec7..4aabadf 100644
+--- a/mx.h
++++ b/mx.h
+@@ -60,6 +60,7 @@ void mbox_reset_atime (CONTEXT *, struct stat *);
+ int mh_read_dir (CONTEXT *, const char *);
+ int mh_sync_mailbox (CONTEXT *, int *);
+ int mh_check_mailbox (CONTEXT *, int *);
++void mh_buffy_update (const char *, int *, int *, int *);
+ int mh_check_empty (const char *);
+ 
+ int maildir_read_dir (CONTEXT *);
+diff --git a/pager.c b/pager.c
+index c99f1e4..5cfcb75 100644
+--- a/pager.c
++++ b/pager.c
+@@ -29,6 +29,7 @@
+ #include "pager.h"
+ #include "attach.h"
+ #include "mbyte.h"
++#include "sidebar.h"
+ 
+ #include "mutt_crypt.h"
+ 
+@@ -1095,6 +1096,7 @@ static int format_line (struct line_t **lineInfo, int n, unsigned char *buf,
+   wchar_t wc;
+   mbstate_t mbstate;
+   int wrap_cols = mutt_term_width ((flags & M_PAGER_NOWRAP) ? 0 : Wrap);
++  wrap_cols -= SidebarWidth;
+ 
+   if (check_attachment_marker ((char *)buf) == 0)
+     wrap_cols = COLS;
+@@ -1746,7 +1748,7 @@ mutt_pager (const char *banner, const char *fname, int flags, pager_t *extra)
+     if ((redraw & REDRAW_BODY) || topline != oldtopline)
+     {
+       do {
+-	move (bodyoffset, 0);
++	move (bodyoffset, SidebarWidth);
+ 	curline = oldtopline = topline;
+ 	lines = 0;
+ 	force_redraw = 0;
+@@ -1759,6 +1761,7 @@ mutt_pager (const char *banner, const char *fname, int flags, pager_t *extra)
+ 			    &QuoteList, &q_level, &force_redraw, &SearchRE) > 0)
+ 	    lines++;
+ 	  curline++;
++  	  move(lines + bodyoffset, SidebarWidth);
+ 	}
+ 	last_offset = lineInfo[curline].offset;
+       } while (force_redraw);
+@@ -1771,6 +1774,7 @@ mutt_pager (const char *banner, const char *fname, int flags, pager_t *extra)
+ 	  addch ('~');
+ 	addch ('\n');
+ 	lines++;
++  	move(lines + bodyoffset, SidebarWidth);
+       }
+       NORMAL_COLOR;
+ 
+@@ -1794,22 +1798,22 @@ mutt_pager (const char *banner, const char *fname, int flags, pager_t *extra)
+ 	strfcpy(pager_progress_str, (topline == 0) ? "all" : "end", sizeof(pager_progress_str));
+ 
+       /* print out the pager status bar */
+-      move (statusoffset, 0);
++      move (statusoffset, SidebarWidth);
+       SETCOLOR (MT_COLOR_STATUS);
+ 
+       if (IsHeader (extra) || IsMsgAttach (extra))
+       {
+-	size_t l1 = COLS * MB_LEN_MAX;
++	size_t l1 = (COLS-SidebarWidth) * MB_LEN_MAX;
+ 	size_t l2 = sizeof (buffer);
+ 	hfi.hdr = (IsHeader (extra)) ? extra->hdr : extra->bdy->hdr;
+ 	mutt_make_string_info (buffer, l1 < l2 ? l1 : l2, NONULL (PagerFmt), &hfi, M_FORMAT_MAKEPRINT);
+-	mutt_paddstr (COLS, buffer);
++	mutt_paddstr (COLS-SidebarWidth, buffer);
+       }
+       else
+       {
+ 	char bn[STRING];
+ 	snprintf (bn, sizeof (bn), "%s (%s)", banner, pager_progress_str);
+-	mutt_paddstr (COLS, bn);
++	mutt_paddstr (COLS-SidebarWidth, bn);
+       }
+       NORMAL_COLOR;
+       if (option(OPTTSENABLED) && TSSupported)
+@@ -1826,16 +1830,21 @@ mutt_pager (const char *banner, const char *fname, int flags, pager_t *extra)
+       /* redraw the pager_index indicator, because the
+        * flags for this message might have changed. */
+       menu_redraw_current (index);
++      draw_sidebar(MENU_PAGER);
+ 
+       /* print out the index status bar */
+       menu_status_line (buffer, sizeof (buffer), index, NONULL(Status));
+  
+-      move (indexoffset + (option (OPTSTATUSONTOP) ? 0 : (indexlen - 1)), 0);
++      move (indexoffset + (option (OPTSTATUSONTOP) ? 0 : (indexlen - 1)), SidebarWidth);
+       SETCOLOR (MT_COLOR_STATUS);
+-      mutt_paddstr (COLS, buffer);
++      mutt_paddstr (COLS-SidebarWidth, buffer);
+       NORMAL_COLOR;
+     }
+ 
++    /* if we're not using the index, update every time */
++    if ( index == 0 )
++      draw_sidebar(MENU_PAGER);
++
+     redraw = 0;
+ 
+     if (option(OPTBRAILLEFRIENDLY)) {
+@@ -2776,6 +2785,13 @@ search_next:
+ 	mutt_what_key ();
+ 	break;
+ 
++      case OP_SIDEBAR_SCROLL_UP:
++      case OP_SIDEBAR_SCROLL_DOWN:
++      case OP_SIDEBAR_NEXT:
++      case OP_SIDEBAR_PREV:
++	scroll_sidebar(ch, MENU_PAGER);
++ 	break;
++
+       default:
+ 	ch = -1;
+ 	break;
+diff --git a/sidebar.c b/sidebar.c
+new file mode 100644
+index 0000000..6098c2a
+--- /dev/null
++++ b/sidebar.c
+@@ -0,0 +1,333 @@
++/*
++ * Copyright (C) ????-2004 Justin Hibbits <jrh29@po.cwru.edu>
++ * Copyright (C) 2004 Thomer M. Gil <mutt@thomer.com>
++ * 
++ *     This program is free software; you can redistribute it and/or modify
++ *     it under the terms of the GNU General Public License as published by
++ *     the Free Software Foundation; either version 2 of the License, or
++ *     (at your option) any later version.
++ * 
++ *     This program 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 this program; if not, write to the Free Software
++ *     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
++ */ 
++
++
++#if HAVE_CONFIG_H
++# include "config.h"
++#endif
++
++#include "mutt.h"
++#include "mutt_menu.h"
++#include "mutt_curses.h"
++#include "sidebar.h"
++#include "buffy.h"
++#include <libgen.h>
++#include "keymap.h"
++#include <stdbool.h>
++
++/*BUFFY *CurBuffy = 0;*/
++static BUFFY *TopBuffy = 0;
++static BUFFY *BottomBuffy = 0;
++static int known_lines = 0;
++
++static int quick_log10(int n)
++{
++        char string[32];
++        sprintf(string, "%d", n);
++        return strlen(string);
++}
++
++void calc_boundaries (int menu)
++{
++	BUFFY *tmp = Incoming;
++
++	if ( known_lines != LINES ) {
++		TopBuffy = BottomBuffy = 0;
++		known_lines = LINES;
++	}
++	for ( ; tmp->next != 0; tmp = tmp->next )
++		tmp->next->prev = tmp;
++
++	if ( TopBuffy == 0 && BottomBuffy == 0 )
++		TopBuffy = Incoming;
++	if ( BottomBuffy == 0 ) {
++		int count = LINES - 2 - (menu != MENU_PAGER || option(OPTSTATUSONTOP));
++		BottomBuffy = TopBuffy;
++		while ( --count && BottomBuffy->next )
++			BottomBuffy = BottomBuffy->next;
++	}
++	else if ( TopBuffy == CurBuffy->next ) {
++		int count = LINES - 2 - (menu != MENU_PAGER);
++		BottomBuffy = CurBuffy;
++		tmp = BottomBuffy;
++		while ( --count && tmp->prev)
++			tmp = tmp->prev;
++		TopBuffy = tmp;
++	}
++	else if ( BottomBuffy == CurBuffy->prev ) {
++		int count = LINES - 2 - (menu != MENU_PAGER);
++		TopBuffy = CurBuffy;
++		tmp = TopBuffy;
++		while ( --count && tmp->next )
++			tmp = tmp->next;
++		BottomBuffy = tmp;
++	}
++}
++
++char *make_sidebar_entry(char *box, int size, int new, int flagged)
++{
++	static char *entry = 0;
++	char *c;
++	int i = 0;
++	int delim_len = strlen(SidebarDelim);
++
++	c = realloc(entry, SidebarWidth - delim_len + 2);
++	if ( c ) entry = c;
++	entry[SidebarWidth - delim_len + 1] = 0;
++	for (; i < SidebarWidth - delim_len + 1; entry[i++] = ' ' );
++	i = strlen(box);
++	strncpy( entry, box, i < (SidebarWidth - delim_len + 1) ? i : (SidebarWidth - delim_len + 1) );
++
++        if (size == -1)
++                sprintf(entry + SidebarWidth - delim_len - 3, "?");
++        else if ( new ) {
++          if (flagged > 0) {
++              sprintf(
++		        entry + SidebarWidth - delim_len - 5 - quick_log10(size) - quick_log10(new) - quick_log10(flagged),
++		        "% d(%d)[%d]", size, new, flagged);
++          } else {
++              sprintf(
++                      entry + SidebarWidth - delim_len - 3 - quick_log10(size) - quick_log10(new),
++                      "% d(%d)", size, new);
++          }
++        } else if (flagged > 0) {
++              sprintf( entry + SidebarWidth - delim_len - 3 - quick_log10(size) - quick_log10(flagged), "% d[%d]", size, flagged);
++        } else {
++              sprintf( entry + SidebarWidth - delim_len - 1 - quick_log10(size), "% d", size);
++        }
++	return entry;
++}
++
++void set_curbuffy(char buf[LONG_STRING])
++{
++  BUFFY* tmp = CurBuffy = Incoming;
++
++  if (!Incoming)
++    return;
++
++  while(1) {
++    if(!strcmp(tmp->path, buf)) {
++      CurBuffy = tmp;
++      break;
++    }
++
++    if(tmp->next)
++      tmp = tmp->next;
++    else
++      break;
++  }
++}
++
++int draw_sidebar(int menu) {
++
++	int lines = option(OPTHELP) ? 1 : 0;
++	BUFFY *tmp;
++#ifndef USE_SLANG_CURSES
++        attr_t attrs;
++#endif
++        short delim_len = strlen(SidebarDelim);
++        short color_pair;
++
++        static bool initialized = false;
++        static int prev_show_value;
++        static short saveSidebarWidth;
++
++        /* initialize first time */
++        if(!initialized) {
++                prev_show_value = option(OPTSIDEBAR);
++                saveSidebarWidth = SidebarWidth;
++                if(!option(OPTSIDEBAR)) SidebarWidth = 0;
++                initialized = true;
++        }
++
++        /* save or restore the value SidebarWidth */
++        if(prev_show_value != option(OPTSIDEBAR)) {
++                if(prev_show_value && !option(OPTSIDEBAR)) {
++                        saveSidebarWidth = SidebarWidth;
++                        SidebarWidth = 0;
++                } else if(!prev_show_value && option(OPTSIDEBAR)) {
++                        SidebarWidth = saveSidebarWidth;
++                }
++                prev_show_value = option(OPTSIDEBAR);
++        }
++
++
++//	if ( SidebarWidth == 0 ) return 0;
++       if (SidebarWidth > 0 && option (OPTSIDEBAR)
++           && delim_len >= SidebarWidth) {
++         unset_option (OPTSIDEBAR);
++         /* saveSidebarWidth = SidebarWidth; */
++         if (saveSidebarWidth > delim_len) {
++           SidebarWidth = saveSidebarWidth;
++           mutt_error (_("Value for sidebar_delim is too long. Disabling sidebar."));
++           sleep (2);
++         } else {
++           SidebarWidth = 0;
++           mutt_error (_("Value for sidebar_delim is too long. Disabling sidebar. Please set your sidebar_width to a sane value."));
++           sleep (4); /* the advise to set a sane value should be seen long enough */
++         }
++         saveSidebarWidth = 0;
++         return (0);
++       }
++
++    if ( SidebarWidth == 0 || !option(OPTSIDEBAR)) {
++      if (SidebarWidth > 0) {
++        saveSidebarWidth = SidebarWidth;
++        SidebarWidth = 0;
++      }
++      unset_option(OPTSIDEBAR);
++      return 0;
++    }
++
++        /* get attributes for divider */
++	SETCOLOR(MT_COLOR_STATUS);
++#ifndef USE_SLANG_CURSES
++        attr_get(&attrs, &color_pair, 0);
++#else
++        color_pair = attr_get();
++#endif
++	SETCOLOR(MT_COLOR_NORMAL);
++
++	/* draw the divider */
++
++	for ( ; lines < LINES-1-(menu != MENU_PAGER || option(OPTSTATUSONTOP)); lines++ ) {
++		move(lines, SidebarWidth - delim_len);
++		addstr(NONULL(SidebarDelim));
++#ifndef USE_SLANG_CURSES
++                mvchgat(lines, SidebarWidth - delim_len, delim_len, 0, color_pair, NULL);
++#endif
++	}
++
++	if ( Incoming == 0 ) return 0;
++	lines = option(OPTHELP) ? 1 : 0; /* go back to the top */
++
++	if ( known_lines != LINES || TopBuffy == 0 || BottomBuffy == 0 ) 
++		calc_boundaries(menu);
++	if ( CurBuffy == 0 ) CurBuffy = Incoming;
++
++	tmp = TopBuffy;
++
++	SETCOLOR(MT_COLOR_NORMAL);
++
++	for ( ; tmp && lines < LINES-1 - (menu != MENU_PAGER || option(OPTSTATUSONTOP)); tmp = tmp->next ) {
++		if ( tmp == CurBuffy )
++			SETCOLOR(MT_COLOR_INDICATOR);
++		else if ( tmp->msg_unread > 0 )
++			SETCOLOR(MT_COLOR_NEW);
++		else if ( tmp->msg_flagged > 0 )
++		        SETCOLOR(MT_COLOR_FLAGGED);
++		else
++			SETCOLOR(MT_COLOR_NORMAL);
++
++		move( lines, 0 );
++		if ( Context && !strcmp( tmp->path, Context->path ) ) {
++			tmp->msg_unread = Context->unread;
++			tmp->msgcount = Context->msgcount;
++			tmp->msg_flagged = Context->flagged;
++		}
++		// check whether Maildir is a prefix of the current folder's path
++		short maildir_is_prefix = 0;
++		if ( (strlen(tmp->path) > strlen(Maildir)) &&
++			(strncmp(Maildir, tmp->path, strlen(Maildir)) == 0) )
++        		maildir_is_prefix = 1;
++		// calculate depth of current folder and generate its display name with indented spaces
++		int sidebar_folder_depth = 0;
++		char *sidebar_folder_name;
++		sidebar_folder_name = basename(tmp->path);
++		if ( maildir_is_prefix ) {
++			char *tmp_folder_name;
++			int i;
++			tmp_folder_name = tmp->path + strlen(Maildir);
++			for (i = 0; i < strlen(tmp->path) - strlen(Maildir); i++) {
++				if (tmp_folder_name[i] == '/') sidebar_folder_depth++;
++			}   
++			if (sidebar_folder_depth > 0) {
++				sidebar_folder_name = malloc(strlen(basename(tmp->path)) + sidebar_folder_depth + 1);
++				for (i=0; i < sidebar_folder_depth; i++)
++					sidebar_folder_name[i]=' ';
++				sidebar_folder_name[i]=0;
++				strncat(sidebar_folder_name, basename(tmp->path), strlen(basename(tmp->path)) + sidebar_folder_depth);
++			}
++		}
++		printw( "%.*s", SidebarWidth - delim_len + 1,
++			make_sidebar_entry(sidebar_folder_name, tmp->msgcount,
++			tmp->msg_unread, tmp->msg_flagged));
++		if (sidebar_folder_depth > 0)
++		        free(sidebar_folder_name);
++		lines++;
++	}
++	SETCOLOR(MT_COLOR_NORMAL);
++	for ( ; lines < LINES-1 - (menu != MENU_PAGER || option(OPTSTATUSONTOP)); lines++ ) {
++		int i = 0;
++		move( lines, 0 );
++		for ( ; i < SidebarWidth - delim_len; i++ )
++			addch(' ');
++	}
++	return 0;
++}
++
++
++void set_buffystats(CONTEXT* Context)
++{
++        BUFFY *tmp = Incoming;
++        while(tmp) {
++                if(Context && !strcmp(tmp->path, Context->path)) {
++			tmp->msg_unread = Context->unread;
++			tmp->msgcount = Context->msgcount;
++                        break;
++                }
++                tmp = tmp->next;
++        }
++}
++
++void scroll_sidebar(int op, int menu)
++{
++        if(!SidebarWidth) return;
++        if(!CurBuffy) return;
++
++	switch (op) {
++		case OP_SIDEBAR_NEXT:
++			if ( CurBuffy->next == NULL ) return;
++			CurBuffy = CurBuffy->next;
++			break;
++		case OP_SIDEBAR_PREV:
++			if ( CurBuffy->prev == NULL ) return;
++			CurBuffy = CurBuffy->prev;
++			break;
++		case OP_SIDEBAR_SCROLL_UP:
++			CurBuffy = TopBuffy;
++			if ( CurBuffy != Incoming ) {
++				calc_boundaries(menu);
++				CurBuffy = CurBuffy->prev;
++			}
++			break;
++		case OP_SIDEBAR_SCROLL_DOWN:
++			CurBuffy = BottomBuffy;
++			if ( CurBuffy->next ) {
++				calc_boundaries(menu);
++				CurBuffy = CurBuffy->next;
++			}
++			break;
++		default:
++			return;
++	}
++	calc_boundaries(menu);
++	draw_sidebar(menu);
++}
++
+diff --git a/sidebar.h b/sidebar.h
+new file mode 100644
+index 0000000..d195f11
+--- /dev/null
++++ b/sidebar.h
+@@ -0,0 +1,36 @@
++/*
++ * Copyright (C) ????-2004 Justin Hibbits <jrh29@po.cwru.edu>
++ * Copyright (C) 2004 Thomer M. Gil <mutt@thomer.com>
++ * 
++ *     This program is free software; you can redistribute it and/or modify
++ *     it under the terms of the GNU General Public License as published by
++ *     the Free Software Foundation; either version 2 of the License, or
++ *     (at your option) any later version.
++ * 
++ *     This program 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 this program; if not, write to the Free Software
++ *     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
++ */ 
++
++#ifndef SIDEBAR_H
++#define SIDEBAR_H
++
++struct MBOX_LIST {
++	char *path;
++	int msgcount;
++	int new;
++} MBLIST;
++
++/* parameter is whether or not to go to the status line */
++/* used for omitting the last | that covers up the status bar in the index */
++int draw_sidebar(int);
++void scroll_sidebar(int, int);
++void set_curbuffy(char*);
++void set_buffystats(CONTEXT*);
++
++#endif /* SIDEBAR_H */
diff --git a/pkgs/applications/networking/mailreaders/mutt/trash-folder.patch b/pkgs/applications/networking/mailreaders/mutt/trash-folder.patch
new file mode 100644
index 00000000000..ce47b0c30e5
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/mutt/trash-folder.patch
@@ -0,0 +1,316 @@
+From: Cedric Duval <cedricduval@free.fr>
+Date: Thu, 27 Feb 2014 12:27:41 +0100
+Subject: trash-folder
+
+With this patch, if the trash variable is set to a path (unset by default), the
+deleted mails will be moved to a trash folder instead of being irremediably
+purged when syncing the mailbox.
+
+For instance, set trash="~/Mail/trash" will cause every deleted mail to go to
+this folder.
+
+Note that the append to the trash folder doesn't occur until the resync is
+done. This allows you to change your mind and undo deletes, and thus the moves
+to the trash folder are unnecessary.
+
+Notes
+
+    * You might also want to have a look at the purge message feature below
+      which is related to this patch.
+    * IMAP is now supported. To retain the previous behavior, add this to your
+      muttrc:
+      folder-hook ^imap:// 'unset trash'
+
+FAQ
+
+Every once in a while, someone asks what are the advantages of this patch over
+a macro based solution. Here's an attempt to answer this question:
+
+    * The folder history doesn't clutter up with unwanted trash entries.
+    * Delayed move to the trash allows to change one's mind.
+    * No need to treat the case of "normal folders" and trash folders
+      separately with folder-hooks, and to create two sets of macros (one for
+      the index, one for the pager).
+    * Works not only with delete-message, but also with every deletion
+      functions like delete-pattern, delete-thread or delete-subthread.
+
+To sum up, it's more integrated and transparent to the user.
+
+* Patch last synced with upstream:
+  - Date: 2007-02-15
+  - File: http://cedricduval.free.fr/mutt/patches/download/patch-1.5.5.1.cd.trash_folder.3.4
+
+* Changes made:
+  - Updated to 1.5.13:
+    - structure of _mutt_save_message changed (commands.c)
+    - context of option (OPTCONFIRMAPPEND) changed (muttlib.c)
+  - Fixed indentation of "appended" in mutt.h.
+
+Signed-off-by: Matteo F. Vescovi <mfvescovi@gmail.com>
+
+Gbp-Pq: Topic features
+---
+ commands.c     |  1 +
+ flags.c        | 19 +++++++++++++++++-
+ globals.h      |  1 +
+ imap/message.c |  2 ++
+ init.h         | 10 ++++++++++
+ mutt.h         |  3 +++
+ muttlib.c      |  4 +++-
+ mx.c           | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ postpone.c     |  3 +++
+ 9 files changed, 103 insertions(+), 2 deletions(-)
+
+diff --git a/commands.c b/commands.c
+index 5dbd100..7fd014b 100644
+--- a/commands.c
++++ b/commands.c
+@@ -720,6 +720,7 @@ int _mutt_save_message (HEADER *h, CONTEXT *ctx, int delete, int decode, int dec
+     if (option (OPTDELETEUNTAG))
+       mutt_set_flag (Context, h, M_TAG, 0);
+   }
++  mutt_set_flag (Context, h, M_APPENDED, 1);
+   
+   return 0;
+ }
+diff --git a/flags.c b/flags.c
+index f0f3d81..dfa6a50 100644
+--- a/flags.c
++++ b/flags.c
+@@ -65,7 +65,13 @@ void _mutt_set_flag (CONTEXT *ctx, HEADER *h, int flag, int bf, int upd_ctx)
+       {
+ 	h->deleted = 0;
+         update = 1;
+-	if (upd_ctx) ctx->deleted--;
++	if (upd_ctx)
++	{
++	  ctx->deleted--;
++	  if (h->appended)
++	    ctx->appended--;
++	}
++	h->appended = 0; /* when undeleting, also reset the appended flag */
+ #ifdef USE_IMAP
+         /* see my comment above */
+ 	if (ctx->magic == M_IMAP) 
+@@ -87,6 +93,17 @@ void _mutt_set_flag (CONTEXT *ctx, HEADER *h, int flag, int bf, int upd_ctx)
+       }
+       break;
+ 
++    case M_APPENDED:
++      if (bf)
++      {
++	if (!h->appended)
++	{
++	  h->appended = 1;
++	  if (upd_ctx) ctx->appended++;
++	}
++      }
++      break;
++
+     case M_NEW:
+ 
+       if (!mutt_bit_isset(ctx->rights,M_ACL_SEEN))
+diff --git a/globals.h b/globals.h
+index e77030c..6a1b8da 100644
+--- a/globals.h
++++ b/globals.h
+@@ -144,6 +144,7 @@ WHERE char *Tochars;
+ WHERE char *TSStatusFormat;
+ WHERE char *TSIconFormat;
+ WHERE short TSSupported;
++WHERE char *TrashPath;
+ WHERE char *Username;
+ WHERE char *Visual;
+ 
+diff --git a/imap/message.c b/imap/message.c
+index 3877381..039fda6 100644
+--- a/imap/message.c
++++ b/imap/message.c
+@@ -884,6 +884,7 @@ int imap_copy_messages (CONTEXT* ctx, HEADER* h, char* dest, int delete)
+         if (ctx->hdrs[n]->tagged)
+         {
+           mutt_set_flag (ctx, ctx->hdrs[n], M_DELETE, 1);
++	  mutt_set_flag (ctx, ctx->hdrs[n], M_APPENDED, 1);
+           if (option (OPTDELETEUNTAG))
+             mutt_set_flag (ctx, ctx->hdrs[n], M_TAG, 0);
+         }
+@@ -891,6 +892,7 @@ int imap_copy_messages (CONTEXT* ctx, HEADER* h, char* dest, int delete)
+     else
+     {
+       mutt_set_flag (ctx, h, M_DELETE, 1);
++      mutt_set_flag (ctx, h, M_APPENDED, 1);
+       if (option (OPTDELETEUNTAG))
+         mutt_set_flag (ctx, h, M_TAG, 0);
+     }
+diff --git a/init.h b/init.h
+index 6b49341..d3206f9 100644
+--- a/init.h
++++ b/init.h
+@@ -3341,6 +3341,16 @@ struct option_t MuttVars[] = {
+   ** provided that ``$$ts_enabled'' has been set. This string is identical in
+   ** formatting to the one used by ``$$status_format''.
+   */
++  { "trash",		DT_PATH, R_NONE, UL &TrashPath, 0 },
++  /*
++  ** .pp
++  ** If set, this variable specifies the path of the trash folder where the
++  ** mails marked for deletion will be moved, instead of being irremediably
++  ** purged.
++  ** .pp
++  ** NOTE: When you delete a message in the trash folder, it is really
++  ** deleted, so that you have a way to clean the trash.
++  */
+ #ifdef USE_SOCKET
+   { "tunnel",            DT_STR, R_NONE, UL &Tunnel, UL 0 },
+   /*
+diff --git a/mutt.h b/mutt.h
+index f8565fa..29bb6c2 100644
+--- a/mutt.h
++++ b/mutt.h
+@@ -185,6 +185,7 @@ enum
+   M_DELETE,
+   M_UNDELETE,
+   M_DELETED,
++  M_APPENDED,
+   M_FLAG,
+   M_TAG,
+   M_UNTAG,
+@@ -713,6 +714,7 @@ typedef struct header
+   unsigned int mime : 1;    		/* has a MIME-Version header? */
+   unsigned int flagged : 1; 		/* marked important? */
+   unsigned int tagged : 1;
++  unsigned int appended : 1;		/* has been saved */
+   unsigned int deleted : 1;
+   unsigned int changed : 1;
+   unsigned int attach_del : 1; 		/* has an attachment marked for deletion */
+@@ -885,6 +887,7 @@ typedef struct _context
+   int new;			/* how many new messages? */
+   int unread;			/* how many unread messages? */
+   int deleted;			/* how many deleted messages */
++  int appended;                 /* how many saved messages? */
+   int flagged;			/* how many flagged messages */
+   int msgnotreadyet;		/* which msg "new" in pager, -1 if none */
+ 
+diff --git a/muttlib.c b/muttlib.c
+index 02067cc..0fd9766 100644
+--- a/muttlib.c
++++ b/muttlib.c
+@@ -1505,7 +1505,9 @@ int mutt_save_confirm (const char *s, struct stat *st)
+ 
+   if (magic > 0 && !mx_access (s, W_OK))
+   {
+-    if (option (OPTCONFIRMAPPEND))
++    if (option (OPTCONFIRMAPPEND) &&
++	(!TrashPath || (mutt_strcmp (s, TrashPath) != 0)))
++      /* if we're appending to the trash, there's no point in asking */
+     {
+       snprintf (tmp, sizeof (tmp), _("Append messages to %s?"), s);
+       if ((rc = mutt_yesorno (tmp, M_YES)) == M_NO)
+diff --git a/mx.c b/mx.c
+index 4c5cb07..c0a6d30 100644
+--- a/mx.c
++++ b/mx.c
+@@ -776,6 +776,53 @@ static int sync_mailbox (CONTEXT *ctx, int *index_hint)
+   return rc;
+ }
+ 
++/* move deleted mails to the trash folder */
++static int trash_append (CONTEXT *ctx)
++{
++    CONTEXT *ctx_trash;
++    int i = 0;
++    struct stat st, stc;
++
++    if (!TrashPath || !ctx->deleted ||
++	(ctx->magic == M_MAILDIR && option (OPTMAILDIRTRASH)))
++      return 0;
++
++    for (;i < ctx->msgcount && (!ctx->hdrs[i]->deleted ||
++				ctx->hdrs[i]->appended); i++);
++    if (i == ctx->msgcount)
++      return 0; /* nothing to be done */
++
++    if (mutt_save_confirm (TrashPath, &st) != 0)
++    {
++      mutt_error _("message(s) not deleted");
++      return -1;
++    }
++
++    if (lstat (ctx->path, &stc) == 0 && stc.st_ino == st.st_ino
++	&& stc.st_dev == st.st_dev && stc.st_rdev == st.st_rdev)
++      return 0;  /* we are in the trash folder: simple sync */
++
++    if ((ctx_trash = mx_open_mailbox (TrashPath, M_APPEND, NULL)) != NULL)
++    {
++      for (i = 0 ; i < ctx->msgcount ; i++)
++	if (ctx->hdrs[i]->deleted && !ctx->hdrs[i]->appended
++	    && mutt_append_message (ctx_trash, ctx, ctx->hdrs[i], 0, 0) == -1)
++	  {
++	    mx_close_mailbox (ctx_trash, NULL);
++	    return -1;
++	  }
++
++      mx_close_mailbox (ctx_trash, NULL);
++    }
++    else
++    {
++      mutt_error _("Can't open trash folder");
++      return -1;
++    }
++
++    return 0;
++}
++
+ /* save changes and close mailbox */
+ int mx_close_mailbox (CONTEXT *ctx, int *index_hint)
+ {
+@@ -912,6 +959,7 @@ int mx_close_mailbox (CONTEXT *ctx, int *index_hint)
+ 	  if (mutt_append_message (&f, ctx, ctx->hdrs[i], 0, CH_UPDATE_LEN) == 0)
+ 	  {
+ 	    mutt_set_flag (ctx, ctx->hdrs[i], M_DELETE, 1);
++	    mutt_set_flag (ctx, ctx->hdrs[i], M_APPENDED, 1);
+ 	  }
+ 	  else
+ 	  {
+@@ -936,6 +984,14 @@ int mx_close_mailbox (CONTEXT *ctx, int *index_hint)
+     return 0;
+   }
+   
++  /* copy mails to the trash before expunging */
++  if (purge && ctx->deleted && mutt_strcmp(ctx->path, TrashPath))
++    if (trash_append (ctx) != 0)
++    {
++      ctx->closing = 0;
++      return -1;
++    }
++
+ #ifdef USE_IMAP
+   /* allow IMAP to preserve the deleted flag across sessions */
+   if (ctx->magic == M_IMAP)
+@@ -1133,6 +1189,12 @@ int mx_sync_mailbox (CONTEXT *ctx, int *index_hint)
+   msgcount = ctx->msgcount;
+   deleted = ctx->deleted;
+ 
++  if (purge && ctx->deleted && mutt_strcmp(ctx->path, TrashPath))
++  {
++    if (trash_append (ctx) == -1)
++      return -1;
++  }
++
+ #ifdef USE_IMAP
+   if (ctx->magic == M_IMAP)
+     rc = imap_sync_mailbox (ctx, purge, index_hint);
+diff --git a/postpone.c b/postpone.c
+index a703161..7a4cbb1 100644
+--- a/postpone.c
++++ b/postpone.c
+@@ -277,6 +277,9 @@ int mutt_get_postponed (CONTEXT *ctx, HEADER *hdr, HEADER **cur, char *fcc, size
+   /* finished with this message, so delete it. */
+   mutt_set_flag (PostContext, h, M_DELETE, 1);
+ 
++  /* and consider it saved, so that it won't be moved to the trash folder */
++  mutt_set_flag (PostContext, h, M_APPENDED, 1);
++
+   /* update the count for the status display */
+   PostCount = PostContext->msgcount - PostContext->deleted;
+ 
diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix
index 4304520383e..04d4eaebaa7 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -5,7 +5,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "notmuch-0.19";
+  name = "notmuch-0.20.2";
 
   passthru = {
     pythonSourceRoot = "${name}/bindings/python";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://notmuchmail.org/releases/${name}.tar.gz";
-    sha256 = "1szf6c44g209pcjq5nvfhlp3nzcm3lrcwv4spsxmwy13hiaccvrr";
+    sha256 = "1v5dcnlg4km5hfaq0i0qywq5fn66fi0rq4aaibyqkwxz8mis4hgp";
   };
 
   buildInputs = [ bash emacs glib gmime gnupg pkgconfig talloc xapian sphinx python ]
@@ -28,6 +28,7 @@ stdenv.mkDerivation rec {
 
     for src in \
       crypto.c \
+      notmuch-config.c \
       emacs/notmuch-crypto.el
     do
       substituteInPlace "$src" \
diff --git a/pkgs/applications/networking/mailreaders/sup/default.nix b/pkgs/applications/networking/mailreaders/sup/default.nix
index 19715d7b255..f7aff8a4d0c 100644
--- a/pkgs/applications/networking/mailreaders/sup/default.nix
+++ b/pkgs/applications/networking/mailreaders/sup/default.nix
@@ -12,7 +12,7 @@ bundlerEnv {
   meta = with lib; {
     description = "A curses threads-with-tags style email client";
     homepage    = http://supmua.org;
-    license     = with licenses; gpl2;
+    license     = licenses.gpl2;
     maintainers = with maintainers; [ cstrahan lovek323 ];
     platforms   = platforms.unix;
   };
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
index be276a4cfa2..4dd734ed043 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
@@ -19,7 +19,10 @@
 , kerberos
 , libX11
 , libXScrnSaver
+, libXcomposite
+, libXdamage
 , libXext
+, libXfixes
 , libXinerama
 , libXrender
 , libXt
@@ -88,7 +91,10 @@ stdenv.mkDerivation {
       kerberos
       libX11
       libXScrnSaver
+      libXcomposite
+      libXdamage
       libXext
+      libXfixes
       libXinerama
       libXrender
       libXt
@@ -112,20 +118,15 @@ stdenv.mkDerivation {
       ln -s "$prefix/usr/lib/thunderbird-bin-${version}/thunderbird" "$out/bin/"
 
       for executable in \
-        thunderbird mozilla-xremote-client thunderbird-bin plugin-container \
-        updater
+        thunderbird crashreporter thunderbird-bin plugin-container updater
       do
         patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
           "$out/usr/lib/thunderbird-bin-${version}/$executable"
       done
 
-      for executable in \
-        thunderbird mozilla-xremote-client thunderbird-bin plugin-container \
-        updater libxul.so
-      do
+      find . -executable -type f -exec \
         patchelf --set-rpath "$libPath" \
-          "$out/usr/lib/thunderbird-bin-${version}/$executable"
-      done
+          "$out/usr/lib/thunderbird-bin-${version}/{}" \;
 
       # Create a desktop item.
       mkdir -p $out/share/applications
@@ -133,7 +134,7 @@ stdenv.mkDerivation {
       [Desktop Entry]
       Type=Application
       Exec=$out/bin/thunderbird
-      Icon=$out/lib/thunderbird-bin-${version}/chrome/icons/default/default256.png
+      Icon=$out/usr/lib/thunderbird-bin-${version}/chrome/icons/default/default256.png
       Name=Thunderbird
       GenericName=Mail Reader
       Categories=Application;Network;
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/generate_sources.rb b/pkgs/applications/networking/mailreaders/thunderbird-bin/generate_sources.rb
index 72b9d1599e0..308e0b71c05 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/generate_sources.rb
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/generate_sources.rb
@@ -6,7 +6,7 @@ version = if ARGV.empty?
             ARGV[0]
           end
 
-base_path = "http://download-installer.cdn.mozilla.net/pub/thunderbird/releases"
+base_path = "http://archive.mozilla.org/pub/thunderbird/releases"
 
 Source = Struct.new(:hash, :arch, :locale, :filename)
 
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix
index 991f8cbd53b..bdc989fea22 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix
@@ -4,117 +4,123 @@
 # ruby generate_source.rb > source.nix
 
 {
-  version = "31.6.0";
+  version = "38.3.0";
   sources = [
-    { locale = "ar"; arch = "linux-i686"; sha1 = "4c0c50d5c315f438d09b8bf2ba821c7148552076"; }
-    { locale = "ar"; arch = "linux-x86_64"; sha1 = "d0361df60873c787ebcb487acb65e9e4e7bf6c97"; }
-    { locale = "ast"; arch = "linux-i686"; sha1 = "84e0ab9f62afbf1c673383a6c6c0d07ce369b360"; }
-    { locale = "ast"; arch = "linux-x86_64"; sha1 = "b590ca477b00dd2080a887ee4451d06d59da5e6c"; }
-    { locale = "be"; arch = "linux-i686"; sha1 = "06812c96cbd62c07180062fca293171cf4177d77"; }
-    { locale = "be"; arch = "linux-x86_64"; sha1 = "1cf6501aa77adfa41ad48316f471201f2c2e1976"; }
-    { locale = "bg"; arch = "linux-i686"; sha1 = "322654ebdf12a9d60738e0a5f30dfde77e095951"; }
-    { locale = "bg"; arch = "linux-x86_64"; sha1 = "00fa9855d81a59f7340d69ef25389503b3374c5b"; }
-    { locale = "bn-BD"; arch = "linux-i686"; sha1 = "efd6f1afc8787295071f1577e043fe8ed4824604"; }
-    { locale = "bn-BD"; arch = "linux-x86_64"; sha1 = "0163078b1edc17b3df86d9d80d2dcf1b14e289c5"; }
-    { locale = "br"; arch = "linux-i686"; sha1 = "1051e4faa171ea762dd0d4c79d1f7b6d59fa1343"; }
-    { locale = "br"; arch = "linux-x86_64"; sha1 = "cad5ff8a920a90e79c1e343022aba0d95347a9a6"; }
-    { locale = "ca"; arch = "linux-i686"; sha1 = "1801969f47164e9e40fe611b2b11c664541ea619"; }
-    { locale = "ca"; arch = "linux-x86_64"; sha1 = "8427fdbf5149c7e0a96e6037f3b7690cc43684f1"; }
-    { locale = "cs"; arch = "linux-i686"; sha1 = "8ae6c4b5e97b1a129c178c17ddb787b8a499bbbf"; }
-    { locale = "cs"; arch = "linux-x86_64"; sha1 = "422d73aa8d853afd219c4be983e9d0b0c165d3a7"; }
-    { locale = "da"; arch = "linux-i686"; sha1 = "ee6239de012bb2d581c42e4271736b3565932d2d"; }
-    { locale = "da"; arch = "linux-x86_64"; sha1 = "3e24c6d239e5d55ffefdecab5c280668d36f3c14"; }
-    { locale = "de"; arch = "linux-i686"; sha1 = "474f1b4ce9b6cf635c60ab32dc99268f30bd906b"; }
-    { locale = "de"; arch = "linux-x86_64"; sha1 = "7327c84c0b447cbeb00a57790334dbd4df02441a"; }
-    { locale = "el"; arch = "linux-i686"; sha1 = "a1cced1eb8d290f8f7668839af68a42b47172fda"; }
-    { locale = "el"; arch = "linux-x86_64"; sha1 = "c7a41b26bee1bcf1a1012ab122036983c42223ed"; }
-    { locale = "en-GB"; arch = "linux-i686"; sha1 = "73309ee5d0304762b24b040fea3be934b0193b76"; }
-    { locale = "en-GB"; arch = "linux-x86_64"; sha1 = "79466a14532bac1c5db7de4f1aacd97538b12ccd"; }
-    { locale = "en-US"; arch = "linux-i686"; sha1 = "1886939dd4fa0bd720f209a9280bdd48f2805144"; }
-    { locale = "en-US"; arch = "linux-x86_64"; sha1 = "18090d7adbb45350d47d796ee0d4a52da68629b4"; }
-    { locale = "es-AR"; arch = "linux-i686"; sha1 = "6d5b993c8c5f9a311e128520a2eb1115a1004d72"; }
-    { locale = "es-AR"; arch = "linux-x86_64"; sha1 = "04afb8826d04dc6511a77377d78f9dcdd67bb73f"; }
-    { locale = "es-ES"; arch = "linux-i686"; sha1 = "c49c2175842d40698128da293305317c5d986561"; }
-    { locale = "es-ES"; arch = "linux-x86_64"; sha1 = "65e6d24657a47d69cec4820fc699b948ef7235df"; }
-    { locale = "et"; arch = "linux-i686"; sha1 = "4a066d35ab922587ed1000b770becbaeafb91d39"; }
-    { locale = "et"; arch = "linux-x86_64"; sha1 = "fad64bc6cdf1bbc03ef0e6fd4fac96e0ddd26578"; }
-    { locale = "eu"; arch = "linux-i686"; sha1 = "ac90f02584bedfe3b958020c37d3677b2312b203"; }
-    { locale = "eu"; arch = "linux-x86_64"; sha1 = "7152187af874799ca22dffca1d85afc0346a5f7c"; }
-    { locale = "fi"; arch = "linux-i686"; sha1 = "797c494042986578e79290a827056ee56ad32526"; }
-    { locale = "fi"; arch = "linux-x86_64"; sha1 = "5fec8fc94b8296c5189be29fdc0f43f074c88722"; }
-    { locale = "fr"; arch = "linux-i686"; sha1 = "2f90216459e8bd24fe775bc84f3d3371c64c705e"; }
-    { locale = "fr"; arch = "linux-x86_64"; sha1 = "07176c2825be793521e11dde8a73ead970c58385"; }
-    { locale = "fy-NL"; arch = "linux-i686"; sha1 = "0e7f95afef9fc01667b0e2ee33e2620069662b4b"; }
-    { locale = "fy-NL"; arch = "linux-x86_64"; sha1 = "ff9a84cb2ca4e222a6d75b5591e5337b3b5e3b3b"; }
-    { locale = "ga-IE"; arch = "linux-i686"; sha1 = "a392c2287a3907b5b79c443c67dfb4d8e6624ebf"; }
-    { locale = "ga-IE"; arch = "linux-x86_64"; sha1 = "766035560552bb26b1d9a6c98357acab515153e3"; }
-    { locale = "gd"; arch = "linux-i686"; sha1 = "5f9dcab41f522ca84833cf5dc566ee9679efcc01"; }
-    { locale = "gd"; arch = "linux-x86_64"; sha1 = "46ced4f5c67f560b15341db70dc04d1a19e176cc"; }
-    { locale = "gl"; arch = "linux-i686"; sha1 = "66f1b772f981ce5bbd3c7c2a73d260d2243887a9"; }
-    { locale = "gl"; arch = "linux-x86_64"; sha1 = "2c087b2ba065f06aa4e4e491d92864ef679f14c2"; }
-    { locale = "he"; arch = "linux-i686"; sha1 = "b157e04413ee246304f30b0dc68eeed3e00d5cf3"; }
-    { locale = "he"; arch = "linux-x86_64"; sha1 = "72e77175705052c6102405897edc1c5887f94c58"; }
-    { locale = "hr"; arch = "linux-i686"; sha1 = "f515c41dda71a69974b67d70ca1980987ab895ba"; }
-    { locale = "hr"; arch = "linux-x86_64"; sha1 = "9b560bc16985e8610d11c1aa1df6a8b29a650528"; }
-    { locale = "hu"; arch = "linux-i686"; sha1 = "24b0e2555617b1b0e7dcb601b3f7a8c54bf64524"; }
-    { locale = "hu"; arch = "linux-x86_64"; sha1 = "a1cf5c244fd98a024b2987b72b95671a90c7e0f9"; }
-    { locale = "hy-AM"; arch = "linux-i686"; sha1 = "20a07254d51cc94be8153426e472d8c7b077a014"; }
-    { locale = "hy-AM"; arch = "linux-x86_64"; sha1 = "3e5c41c5239da37ee52070c043b5de2f16859055"; }
-    { locale = "id"; arch = "linux-i686"; sha1 = "bbbc669ead8c716725ad162247dbb35f6b6d3376"; }
-    { locale = "id"; arch = "linux-x86_64"; sha1 = "30c73fff969d9d94e6a24b27fa5b03285104ed38"; }
-    { locale = "is"; arch = "linux-i686"; sha1 = "d8ede481d0f04237b1a36356880d76a5439e6796"; }
-    { locale = "is"; arch = "linux-x86_64"; sha1 = "d5c70452102f0c1f513a45b3b05339b171e7e149"; }
-    { locale = "it"; arch = "linux-i686"; sha1 = "00bad56fb3a4bcc4032b204471a66dc64a9976e9"; }
-    { locale = "it"; arch = "linux-x86_64"; sha1 = "cd15137766f9bdb693743401d14e69c4c990aeab"; }
-    { locale = "ja"; arch = "linux-i686"; sha1 = "eb51ca9c4d5d22ff178c45c99ba35270d9f006d1"; }
-    { locale = "ja"; arch = "linux-x86_64"; sha1 = "ec7bdce8ecba50aa4c6f0495ec4737b032e85688"; }
-    { locale = "ko"; arch = "linux-i686"; sha1 = "ce2a6f518fe69b6cf87ba6a2d5ff7e32f676e516"; }
-    { locale = "ko"; arch = "linux-x86_64"; sha1 = "614808276829835d81f6a330154c3dbf617109e2"; }
-    { locale = "lt"; arch = "linux-i686"; sha1 = "95da07c69121bf0e22b480f3e4df9db3e7676a8b"; }
-    { locale = "lt"; arch = "linux-x86_64"; sha1 = "02dee38474393cf86c78aacfb2c546bfd2130e0a"; }
-    { locale = "nb-NO"; arch = "linux-i686"; sha1 = "cd8b7dc6eda97de0ec1c8a5dde36f4afd60b720a"; }
-    { locale = "nb-NO"; arch = "linux-x86_64"; sha1 = "748030706822a80156e5ffcfbaed413b3905280a"; }
-    { locale = "nl"; arch = "linux-i686"; sha1 = "eafd2b7fa376f58fd5320a8e67bd76c9eb17819e"; }
-    { locale = "nl"; arch = "linux-x86_64"; sha1 = "f04672081b0281dec909fd110f1c1dc8f340cc40"; }
-    { locale = "nn-NO"; arch = "linux-i686"; sha1 = "c51c6a23f5e99181cd2aa6e324165a523c7e7c41"; }
-    { locale = "nn-NO"; arch = "linux-x86_64"; sha1 = "29adc20bbdb3b1de7b0c1a325ded1159f7627478"; }
-    { locale = "pa-IN"; arch = "linux-i686"; sha1 = "b94fc235c3644455ca19238aed9e2e4cff4ce7d2"; }
-    { locale = "pa-IN"; arch = "linux-x86_64"; sha1 = "78bd45bf21196cc4bb400d10d19151931e390681"; }
-    { locale = "pl"; arch = "linux-i686"; sha1 = "0b921d11a43968bc12a31be48baa962fb084be3d"; }
-    { locale = "pl"; arch = "linux-x86_64"; sha1 = "b975d958fdb152c942cf68ed6dbde8df6b6cfe09"; }
-    { locale = "pt-BR"; arch = "linux-i686"; sha1 = "5384bc8f899d1ba75c96b11276dd98cb5049896a"; }
-    { locale = "pt-BR"; arch = "linux-x86_64"; sha1 = "dbd5db203127f01b1ec46259f9b668aa2dec8d63"; }
-    { locale = "pt-PT"; arch = "linux-i686"; sha1 = "eb6590aecd509ee02b02fd6d39aec32a77616b59"; }
-    { locale = "pt-PT"; arch = "linux-x86_64"; sha1 = "750f9d25164f2aae4d5bb3147738cb604c131b94"; }
-    { locale = "rm"; arch = "linux-i686"; sha1 = "5dc246fc1c661d5a965da6eed7d0b57dacbcc643"; }
-    { locale = "rm"; arch = "linux-x86_64"; sha1 = "ca3d7a76564552cab92cf1c3f2098bbb740e6315"; }
-    { locale = "ro"; arch = "linux-i686"; sha1 = "ceb0264ab40dc437c2a44fa03c2f9a3ff18b667c"; }
-    { locale = "ro"; arch = "linux-x86_64"; sha1 = "d2200d241c26059136169850a5ad4f702c273301"; }
-    { locale = "ru"; arch = "linux-i686"; sha1 = "678bae69497e2ab6c4d895192b5093a0d120ddc1"; }
-    { locale = "ru"; arch = "linux-x86_64"; sha1 = "9ca3af62babeeda8a46609ffd265ff0cc059349a"; }
-    { locale = "si"; arch = "linux-i686"; sha1 = "46376507d77af110a63de24a7a136c43b2d6cb1b"; }
-    { locale = "si"; arch = "linux-x86_64"; sha1 = "d43e51c5e504bfa1a0f7370e1cea3bda247b81e0"; }
-    { locale = "sk"; arch = "linux-i686"; sha1 = "e97bc9017953f91f4fc9a158dca36ae1217a8a97"; }
-    { locale = "sk"; arch = "linux-x86_64"; sha1 = "f80a0473ff265295f3eaa8ed8b8fe99a0a71b049"; }
-    { locale = "sl"; arch = "linux-i686"; sha1 = "449cf3770e4eaa4289bac9abbf7f655bbdcdf8ca"; }
-    { locale = "sl"; arch = "linux-x86_64"; sha1 = "ef1092cdef4dd2d4ebf62b29654da4ad08c7a6e0"; }
-    { locale = "sq"; arch = "linux-i686"; sha1 = "0d856fdb66ca1208a08eef5073744f66de7c94f5"; }
-    { locale = "sq"; arch = "linux-x86_64"; sha1 = "346888cbc1428897df1b50651a263ae5cc449475"; }
-    { locale = "sr"; arch = "linux-i686"; sha1 = "3252ea6a0706813d4c536cab9251ec707a46fe47"; }
-    { locale = "sr"; arch = "linux-x86_64"; sha1 = "ea55159965bc8b5fb5c692efc1a30ac3ddd74a48"; }
-    { locale = "sv-SE"; arch = "linux-i686"; sha1 = "5191f311d6324e1fbc98763e80316bb7584999ba"; }
-    { locale = "sv-SE"; arch = "linux-x86_64"; sha1 = "4c8387f5db87776ae6ba322fa81983f7bab14690"; }
-    { locale = "ta-LK"; arch = "linux-i686"; sha1 = "e1fa5437760c8964aa312ed296454c0736009479"; }
-    { locale = "ta-LK"; arch = "linux-x86_64"; sha1 = "1e277512366a60745cfdc409530943e42bb62b11"; }
-    { locale = "tr"; arch = "linux-i686"; sha1 = "8907cb5f77b0dafd6c2c69d63b6f9b72ab58d7d1"; }
-    { locale = "tr"; arch = "linux-x86_64"; sha1 = "b101b37f7fe86686db1813786cbf2ee994bf33c3"; }
-    { locale = "uk"; arch = "linux-i686"; sha1 = "ab0e84cd69808d12efa28f5062372ba8983b8c42"; }
-    { locale = "uk"; arch = "linux-x86_64"; sha1 = "bce4718c183c9fc62f38025f7f9329999ba1f8a4"; }
-    { locale = "vi"; arch = "linux-i686"; sha1 = "7a05e5dd98215dab96746166fe46c96592e8768a"; }
-    { locale = "vi"; arch = "linux-x86_64"; sha1 = "c2c54c1831199ac8b5ba0bbebb564e9dc2ff2563"; }
-    { locale = "zh-CN"; arch = "linux-i686"; sha1 = "3c2a7f6096eb16a00451d1ec71f6ff382910bf43"; }
-    { locale = "zh-CN"; arch = "linux-x86_64"; sha1 = "e3d43d6aa007419d057da99d06fdd200faf8d9c5"; }
-    { locale = "zh-TW"; arch = "linux-i686"; sha1 = "97bc53d2216eb24ad6c0496fed4698da4e481c38"; }
-    { locale = "zh-TW"; arch = "linux-x86_64"; sha1 = "3e5fcc5058646ee326f4b6b1ef885999222ab0b8"; }
+    { locale = "ar"; arch = "linux-i686"; sha1 = "45a8e9613b5d5083b264fb82704bc69c622372c5"; }
+    { locale = "ar"; arch = "linux-x86_64"; sha1 = "97ea8fa778bd4e5fc65d919f2d0f9f473e00fc38"; }
+    { locale = "ast"; arch = "linux-i686"; sha1 = "0c535223b5620f249ff32381c53e05c8f5429f1a"; }
+    { locale = "ast"; arch = "linux-x86_64"; sha1 = "01352d0046fa41d832c7f18c2b8d0c3d74ab95ce"; }
+    { locale = "be"; arch = "linux-i686"; sha1 = "f496db8690c9a7b61766a235ee1dc204f622fddf"; }
+    { locale = "be"; arch = "linux-x86_64"; sha1 = "2a62ca92f2dfafa3a58fedbf03304fd6daed01ea"; }
+    { locale = "bg"; arch = "linux-i686"; sha1 = "02934c4c9dba3fce844159dc790c0575c0202efd"; }
+    { locale = "bg"; arch = "linux-x86_64"; sha1 = "d8cf360615b05d805b88d6057e4f08527aba6576"; }
+    { locale = "bn-BD"; arch = "linux-i686"; sha1 = "880434d08155275dc4806d45afa365f62bb58ad0"; }
+    { locale = "bn-BD"; arch = "linux-x86_64"; sha1 = "e99dcde6db5bd3178ce58f67191bc3f54f75574a"; }
+    { locale = "br"; arch = "linux-i686"; sha1 = "7fab50b35a4bcff0e7e1268e3b50f2088209237e"; }
+    { locale = "br"; arch = "linux-x86_64"; sha1 = "d9d945dc271cf092746f8921f490e0f77359f5e3"; }
+    { locale = "ca"; arch = "linux-i686"; sha1 = "7f6b5f5523d3b67068e153515629bbbb3e944ee5"; }
+    { locale = "ca"; arch = "linux-x86_64"; sha1 = "abd73c39a87a2a28063e165941be98994d22f401"; }
+    { locale = "cs"; arch = "linux-i686"; sha1 = "a80a5e962d0ca4458365cee96715c830681b1ee0"; }
+    { locale = "cs"; arch = "linux-x86_64"; sha1 = "71096a0d6e8293682638abb9073cf2dc8f905ffb"; }
+    { locale = "cy"; arch = "linux-i686"; sha1 = "b64f444d523f3dd88f23d491e91193ef0422f664"; }
+    { locale = "cy"; arch = "linux-x86_64"; sha1 = "e8fdf1acb14801c97a3e48ff49706bd15f3433e6"; }
+    { locale = "da"; arch = "linux-i686"; sha1 = "73ce38987daf2a145dbca2aa8cd7ca32098598a5"; }
+    { locale = "da"; arch = "linux-x86_64"; sha1 = "f403094fbb49addc5d7dfe15370fdd612f067256"; }
+    { locale = "de"; arch = "linux-i686"; sha1 = "f265e65020397b79420691a475adb98f3bcc73a1"; }
+    { locale = "de"; arch = "linux-x86_64"; sha1 = "267ad171576e57df9a241a22332d15efa882e485"; }
+    { locale = "dsb"; arch = "linux-i686"; sha1 = "3d8fb2e858ea3210ddb9eb566235ffeddbc23cb6"; }
+    { locale = "dsb"; arch = "linux-x86_64"; sha1 = "7c50f42a6a0c5172469f37412664306049253637"; }
+    { locale = "el"; arch = "linux-i686"; sha1 = "732fade73221962dc840d3a97b440753bfda35fc"; }
+    { locale = "el"; arch = "linux-x86_64"; sha1 = "9e8f4a7698050b506a815af03534395bf6cfda31"; }
+    { locale = "en-GB"; arch = "linux-i686"; sha1 = "0c0c4f87977c0ca4a70db8ba22dcb35b5276f451"; }
+    { locale = "en-GB"; arch = "linux-x86_64"; sha1 = "0217d912251c52acaf071a6955c725e365d0298b"; }
+    { locale = "en-US"; arch = "linux-i686"; sha1 = "1ffa88c200b17e4fe8ea647c58e0d479b3e673e2"; }
+    { locale = "en-US"; arch = "linux-x86_64"; sha1 = "e2a2690e2e7b72eff8944effc6d8a70f4fb2a3e7"; }
+    { locale = "es-AR"; arch = "linux-i686"; sha1 = "7fddb79300f158ed94c970dd9a0f384093a369fe"; }
+    { locale = "es-AR"; arch = "linux-x86_64"; sha1 = "961e90db7063c5d49c8494ec31761ae1206effec"; }
+    { locale = "es-ES"; arch = "linux-i686"; sha1 = "69a5ad0cc12d9e8e17d4a47c705d3653106248f5"; }
+    { locale = "es-ES"; arch = "linux-x86_64"; sha1 = "fe84027eef32f4788a8056ea331e2a7a1ecc3c8a"; }
+    { locale = "et"; arch = "linux-i686"; sha1 = "d1cdd86f79f6bd17a98a1fcaec70af34671f60c6"; }
+    { locale = "et"; arch = "linux-x86_64"; sha1 = "3ee90372f035ba972aff2bb9e8d592cf007fd2bd"; }
+    { locale = "eu"; arch = "linux-i686"; sha1 = "d0caf6d75b169a1a420f68210782230bc83d5cfe"; }
+    { locale = "eu"; arch = "linux-x86_64"; sha1 = "eb4250e4422699d09bb9a8a2b3a539f72a91e4d1"; }
+    { locale = "fi"; arch = "linux-i686"; sha1 = "37e6d23be510eee3d908a2396eee554c65f24539"; }
+    { locale = "fi"; arch = "linux-x86_64"; sha1 = "0dc06ca1c164a3f2ca7941e376fb3e085ec29f82"; }
+    { locale = "fr"; arch = "linux-i686"; sha1 = "a057112a12aa7e214b2fec5cb3a24126fabe1dbf"; }
+    { locale = "fr"; arch = "linux-x86_64"; sha1 = "392d413e2a4c16391af122c2cbcf264d901e875b"; }
+    { locale = "fy-NL"; arch = "linux-i686"; sha1 = "207d75317e6257c1eb95e6ba133e3a7229125ffa"; }
+    { locale = "fy-NL"; arch = "linux-x86_64"; sha1 = "69e02da4f9473b25f8d3b9cd74602f966899602b"; }
+    { locale = "ga-IE"; arch = "linux-i686"; sha1 = "5f356a214e32696e8296a7fee3b9cfe3d86b8176"; }
+    { locale = "ga-IE"; arch = "linux-x86_64"; sha1 = "bce6441acd9a438ea707f6db1d8f639fa676adb8"; }
+    { locale = "gd"; arch = "linux-i686"; sha1 = "8a4473b82a10ad3dfefdc381b90a0616d1ecaf6b"; }
+    { locale = "gd"; arch = "linux-x86_64"; sha1 = "3fdbe0debaf43a741b137eeb549117747dfa08eb"; }
+    { locale = "gl"; arch = "linux-i686"; sha1 = "235d6b94cf0e44e7bac6e76ae8c13bd5c090865e"; }
+    { locale = "gl"; arch = "linux-x86_64"; sha1 = "a5f23d30426fb0d78d7840ab2b2ed457785cc6c1"; }
+    { locale = "he"; arch = "linux-i686"; sha1 = "5b98752dd745d406325682faaaba2d8ce4c34743"; }
+    { locale = "he"; arch = "linux-x86_64"; sha1 = "2ce82ecdca404f72f033f3752e34122ff97e6006"; }
+    { locale = "hr"; arch = "linux-i686"; sha1 = "b7e8899d7db51129ef94c2b34bcf950307c0eaa1"; }
+    { locale = "hr"; arch = "linux-x86_64"; sha1 = "85e0d2ee0591df75754f03566f206085a43e1603"; }
+    { locale = "hsb"; arch = "linux-i686"; sha1 = "6252d41415ec5ba7841e629b2617fb38f5bfe25f"; }
+    { locale = "hsb"; arch = "linux-x86_64"; sha1 = "40ef8f4991f9670ded25372805b05cf090ae8419"; }
+    { locale = "hu"; arch = "linux-i686"; sha1 = "b98b9198d0347ccee4cf1b46405c375ed94d1c79"; }
+    { locale = "hu"; arch = "linux-x86_64"; sha1 = "8e144f40a677471b411608cca2170c90de122ffc"; }
+    { locale = "hy-AM"; arch = "linux-i686"; sha1 = "aa4d323f658f4330b13e5883ba8b6e2a3e441add"; }
+    { locale = "hy-AM"; arch = "linux-x86_64"; sha1 = "2273f2d4d15a4dc4681a8d21e6f42f2e1ba0772a"; }
+    { locale = "id"; arch = "linux-i686"; sha1 = "60b9a32ba6b831f851399c6f4ba675bff163aba7"; }
+    { locale = "id"; arch = "linux-x86_64"; sha1 = "73cda0ab1e1c04e7ab2816642481d2f9b41746e8"; }
+    { locale = "is"; arch = "linux-i686"; sha1 = "9b61caeaf4f1a7e5153d042f6ec52c7a4c4a5573"; }
+    { locale = "is"; arch = "linux-x86_64"; sha1 = "a705d9724c2fe246a3a9e96f7304bad73ed9897d"; }
+    { locale = "it"; arch = "linux-i686"; sha1 = "0fcd397c3a8f6519ec85f7f2d71416b27053813f"; }
+    { locale = "it"; arch = "linux-x86_64"; sha1 = "6900813562473c64a50087f5d0620666763ceb09"; }
+    { locale = "ja"; arch = "linux-i686"; sha1 = "786e9aadae199fb2a84b03ac9716f021f118e16e"; }
+    { locale = "ja"; arch = "linux-x86_64"; sha1 = "8f92502e03e2bdd704d57a3298a5c109be3d3927"; }
+    { locale = "ko"; arch = "linux-i686"; sha1 = "0d3c52e88f5d0cc329b8bcb3cf3322fb59651dd1"; }
+    { locale = "ko"; arch = "linux-x86_64"; sha1 = "065a6b448189246d52bee2ea2722d22253c7fcae"; }
+    { locale = "lt"; arch = "linux-i686"; sha1 = "b667e748814e2d2ea508eac799325aa4d3e6b56f"; }
+    { locale = "lt"; arch = "linux-x86_64"; sha1 = "174214613317d4ea2c25a6c9cbc61810fe579349"; }
+    { locale = "nb-NO"; arch = "linux-i686"; sha1 = "669f7f03860c7648bc901120f5bbb43e63424759"; }
+    { locale = "nb-NO"; arch = "linux-x86_64"; sha1 = "3cb36ad745d505241bba330e0d832a77d1ba8641"; }
+    { locale = "nl"; arch = "linux-i686"; sha1 = "7b399deb6e9a8d4db099bbaaadc8e5a000c13293"; }
+    { locale = "nl"; arch = "linux-x86_64"; sha1 = "1d7391c23da59b9367071c95d43ea2cc870c5388"; }
+    { locale = "nn-NO"; arch = "linux-i686"; sha1 = "25d80451d59a19339ce8d0e8e9b3fb76c183cca0"; }
+    { locale = "nn-NO"; arch = "linux-x86_64"; sha1 = "4af717ad8b7dcc7564bada20b3f28f179d29ae91"; }
+    { locale = "pa-IN"; arch = "linux-i686"; sha1 = "225eab7baf002da6543918e1682a931fe7cb4493"; }
+    { locale = "pa-IN"; arch = "linux-x86_64"; sha1 = "d519eaf04ee57e1ca1fffe2a1dc5cfbe876ce128"; }
+    { locale = "pl"; arch = "linux-i686"; sha1 = "be4eeed21159601047b59aa832c9adbd54a812dd"; }
+    { locale = "pl"; arch = "linux-x86_64"; sha1 = "47a7a6f548dfad92a725c56858fb625e42821d9c"; }
+    { locale = "pt-BR"; arch = "linux-i686"; sha1 = "5e44c5e9e07cbb0ef864a98c17a3e2c744d7eddd"; }
+    { locale = "pt-BR"; arch = "linux-x86_64"; sha1 = "e4337edbaee9023b69518f3804459508a5fb693a"; }
+    { locale = "pt-PT"; arch = "linux-i686"; sha1 = "5ce4e8a2626835c3d17c37a68db6c4cc9f3db5e4"; }
+    { locale = "pt-PT"; arch = "linux-x86_64"; sha1 = "f155173b56f3e0302288cb359170615d925d9c12"; }
+    { locale = "rm"; arch = "linux-i686"; sha1 = "57549fda6d8c9ef67950f6729bb17c8fb79d18cb"; }
+    { locale = "rm"; arch = "linux-x86_64"; sha1 = "96cbc015ea082bf9c8a2363929bec574c3ba264d"; }
+    { locale = "ro"; arch = "linux-i686"; sha1 = "85399bb39ddb09b5aedd44c5362bda1a375255d8"; }
+    { locale = "ro"; arch = "linux-x86_64"; sha1 = "6a4f1f43d188cc0bd817d150fe7c958aec4f0ac6"; }
+    { locale = "ru"; arch = "linux-i686"; sha1 = "9fdd1b141cde49a5453540f4ceb3d74dc92b05aa"; }
+    { locale = "ru"; arch = "linux-x86_64"; sha1 = "29537fbb4eacb6a9fc396802d74b35132620613d"; }
+    { locale = "si"; arch = "linux-i686"; sha1 = "410f15673c95ce3744c84559e5801b4c1cc062b6"; }
+    { locale = "si"; arch = "linux-x86_64"; sha1 = "383acd5b025d907ed0dee36f1b8fc5bf5234c860"; }
+    { locale = "sk"; arch = "linux-i686"; sha1 = "86e7b065876b4eb0177e7523bab78d36182f1517"; }
+    { locale = "sk"; arch = "linux-x86_64"; sha1 = "cdc547aca6dfff934195a69e1ad81a357f37fef4"; }
+    { locale = "sl"; arch = "linux-i686"; sha1 = "a88a74354e6b481418d8b5aec08a0c1f87693117"; }
+    { locale = "sl"; arch = "linux-x86_64"; sha1 = "d27b3c018904dcb6862f569b84b4200b05013df0"; }
+    { locale = "sq"; arch = "linux-i686"; sha1 = "822e117f5a840f46c6b2500ad80efb6c16c2a5de"; }
+    { locale = "sq"; arch = "linux-x86_64"; sha1 = "349aeab272d702afbe9f249c54a7cf6d17918f6a"; }
+    { locale = "sr"; arch = "linux-i686"; sha1 = "170c6f23bdb3222e7eb95591a22d09d17ca1b5a2"; }
+    { locale = "sr"; arch = "linux-x86_64"; sha1 = "eda779e2154ca0ede7c69435ad49fbd541ec21d1"; }
+    { locale = "sv-SE"; arch = "linux-i686"; sha1 = "63e9eb73d9854e72f93639c1383dd21075626efb"; }
+    { locale = "sv-SE"; arch = "linux-x86_64"; sha1 = "a824725919096f53c3372a038d999ce56b242d40"; }
+    { locale = "ta-LK"; arch = "linux-i686"; sha1 = "5b40dd6b193a92ddc6344825bf6e9c547f58b0a2"; }
+    { locale = "ta-LK"; arch = "linux-x86_64"; sha1 = "5d6c019b2708b87ac32db16b828966f1b1215e08"; }
+    { locale = "tr"; arch = "linux-i686"; sha1 = "17c8ccd0c6d08dd00a6267d9c6850ea8a027b4a5"; }
+    { locale = "tr"; arch = "linux-x86_64"; sha1 = "b5c6a09750d01af1f8428425c9c7af9f73a7e42b"; }
+    { locale = "uk"; arch = "linux-i686"; sha1 = "6dbfd27fd8efd59cd1af932af3f302f9cc35e314"; }
+    { locale = "uk"; arch = "linux-x86_64"; sha1 = "690f60f461d958a076af671321b2588607369754"; }
+    { locale = "vi"; arch = "linux-i686"; sha1 = "84dc2737efcc831a63ea2ceeccfdadb2c065c201"; }
+    { locale = "vi"; arch = "linux-x86_64"; sha1 = "323be14cf52c7587200856ad31528a93d4f88766"; }
+    { locale = "zh-CN"; arch = "linux-i686"; sha1 = "9186336bcf83179205b91f51c56ee7972024d59c"; }
+    { locale = "zh-CN"; arch = "linux-x86_64"; sha1 = "97f65edfe8cbb419c4eacb54163df629b8fdb9bb"; }
+    { locale = "zh-TW"; arch = "linux-i686"; sha1 = "239c526df1c25aa4b7f639fb0a88d1969d49e2a1"; }
+    { locale = "zh-TW"; arch = "linux-x86_64"; sha1 = "88cf0f7fd1c1f73f1c8bfef0a292eac3158f7b88"; }
   ];
 }
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/default.nix b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
index 5124b78d071..32f77cfa2c2 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, which, m4, gtk, pango, perl, python, zip, libIDL
-, libjpeg, libpng, zlib, dbus, dbus_glib, bzip2, xlibs
+, libjpeg, libpng, zlib, dbus, dbus_glib, bzip2, xorg
 , freetype, fontconfig, file, alsaLib, nspr, nss, libnotify
 , yasm, mesa, sqlite, unzip, makeWrapper, pysqlite
 , hunspell, libevent, libstartup_notification, libvpx
@@ -13,24 +13,26 @@
   enableOfficialBranding ? false
 }:
 
-let version = "31.4.0"; in
+let version = "38.3.0"; in
 let verName = "${version}"; in
 
 stdenv.mkDerivation rec {
   name = "thunderbird-${verName}";
 
   src = fetchurl {
-    url = "ftp://ftp.mozilla.org/pub/thunderbird/releases/${verName}/source/thunderbird-${verName}.source.tar.bz2";
-    sha1 = "00b55e28f55b84e3cd257407d797e07a363aeef8";
+    url = "http://archive.mozilla.org/pub/thunderbird/releases/${verName}/source/thunderbird-${verName}.source.tar.bz2";
+
+    # https://archive.mozilla.org/pub/thunderbird/releases/${verName}/SHA1SUMS
+    sha1 = "7c8ef066d6b6516fddbb654b38353f894f85d469";
   };
 
   buildInputs = # from firefox30Pkgs.xulrunner, but without gstreamer and libvpx
     [ pkgconfig which libpng gtk perl zip libIDL libjpeg zlib bzip2
-      python dbus dbus_glib pango freetype fontconfig xlibs.libXi
-      xlibs.libX11 xlibs.libXrender xlibs.libXft xlibs.libXt file
-      alsaLib nspr nss libnotify xlibs.pixman yasm mesa
-      xlibs.libXScrnSaver xlibs.scrnsaverproto pysqlite
-      xlibs.libXext xlibs.xextproto sqlite unzip makeWrapper
+      python dbus dbus_glib pango freetype fontconfig xorg.libXi
+      xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file
+      alsaLib nspr nss libnotify xorg.pixman yasm mesa
+      xorg.libXScrnSaver xorg.scrnsaverproto pysqlite
+      xorg.libXext xorg.xextproto sqlite unzip makeWrapper
       hunspell libevent libstartup_notification cairo icu
     ] ++ [ m4 ];
 
@@ -75,6 +77,10 @@ stdenv.mkDerivation rec {
     cd objdir
     echo '${stdenv.lib.concatMapStrings (s : "ac_add_options ${s}\n") configureFlags}' > .mozconfig
     echo 'ac_add_options --prefix="'"$out"'"' >> .mozconfig
+    # From version 38, we need to specify the source directory to build
+    # Thunderbird. Refer to mozilla/configure and search a line with
+    # "checking for application to build" and "# Support comm-central".
+    echo 'ac_add_options --with-external-source-dir="'`realpath ..`'"' >> .mozconfig
     echo 'mk_add_options MOZ_MAKE_FLAGS="-j'"$NIX_BUILD_CORES"'"' >> .mozconfig
     echo 'mk_add_options MOZ_OBJDIR="'`pwd`'"' >> .mozconfig
 
@@ -84,6 +90,8 @@ stdenv.mkDerivation rec {
     ../mozilla/mach configure
   '';
 
+  enableParallelBuilding = true;
+
   buildPhase =  "../mozilla/mach build";
 
   installPhase =
diff --git a/pkgs/applications/networking/msmtp/default.nix b/pkgs/applications/networking/msmtp/default.nix
index 86ad4031622..363e98d46d2 100644
--- a/pkgs/applications/networking/msmtp/default.nix
+++ b/pkgs/applications/networking/msmtp/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, openssl, pkgconfig, gnutls, gsasl, libidn }:
 
 stdenv.mkDerivation rec {
-  version = "1.6.1";
+  version = "1.6.2";
   name = "msmtp-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/msmtp/${name}.tar.xz";
-    sha256 = "1ws6hdpm8vfq4vwxjwgd8xndx5ax1ppnmxn0fhzlwj3pvkr4fpf4";
+    sha256 = "12c7ljahb06pgn8yvvw526xvr11vnr6d4nr0apylixddpxycsvig";
   };
 
   buildInputs = [ openssl pkgconfig gnutls gsasl libidn ];
diff --git a/pkgs/applications/networking/mumble/default.nix b/pkgs/applications/networking/mumble/default.nix
index 611d77eb215..afe27eb3814 100644
--- a/pkgs/applications/networking/mumble/default.nix
+++ b/pkgs/applications/networking/mumble/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig
-, avahi, boost, libopus, libsndfile, protobuf, qt4, speex
+, avahi, boost, libopus, celt, libsndfile, protobuf, qt4, speex
 , jackSupport ? false, libjack2 ? null
 , speechdSupport ? false, speechd ? null
 , pulseSupport ? false, libpulseaudio ? null
@@ -15,11 +15,11 @@ let
 in
 stdenv.mkDerivation rec {
   name = "mumble-${version}";
-  version = "1.2.8";
+  version = "1.2.10";
 
   src = fetchurl {
-    url = "mirror://sourceforge/mumble/${name}.tar.gz";
-    sha256 = "0ng1xd7i0951kqnd9visf84y2dcwia79a1brjwfvr1wnykgw6bsc";
+    url = "https://github.com/mumble-voip/mumble/releases/download/${version}/${name}.tar.gz";
+    sha256 = "012vm0xf84x13414jlsx964c5a1nwnbn41jnspkciajlxxipldn6";
   };
 
   patches = optional jackSupport ./mumble-jack-support.patch;
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     "CONFIG+=no-update"
     "CONFIG+=no-server"
     "CONFIG+=no-embed-qt-translations"
-    "CONFIG+=bundled-celt"
+    "CONFIG+=no-bundled-celt"
     "CONFIG+=no-bundled-opus"
     "CONFIG+=no-bundled-speex"
   ] ++ optional (!speechdSupport) "CONFIG+=no-speechd"
@@ -43,7 +43,9 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
 
-  buildInputs = [ avahi boost libopus libsndfile protobuf qt4 speex ]
+  NIX_CFLAGS_COMPILE = [ "-I${celt}/include/celt" ];
+
+  buildInputs = [ avahi boost libopus celt libsndfile protobuf qt4 speex ]
     ++ optional jackSupport libjack2
     ++ optional speechdSupport speechd
     ++ optional pulseSupport libpulseaudio;
@@ -63,7 +65,7 @@ stdenv.mkDerivation rec {
     description = "Low-latency, high quality voice chat software";
     homepage = "http://mumble.sourceforge.net/";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ viric ];
+    maintainers = with maintainers; [ viric jgeerds ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/networking/newsreaders/kwooty/0001-search-paths.patch b/pkgs/applications/networking/newsreaders/kwooty/0001-search-paths.patch
new file mode 100644
index 00000000000..6d1d2bac409
--- /dev/null
+++ b/pkgs/applications/networking/newsreaders/kwooty/0001-search-paths.patch
@@ -0,0 +1,33 @@
+From 6b5730e729d72c8d9242163e7061b956abee61f5 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel <ttuegel@gmail.com>
+Date: Sat, 12 Sep 2015 16:14:10 -0500
+Subject: [PATCH] search paths
+
+---
+ src/utilities/utility.cpp | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/utilities/utility.cpp b/src/utilities/utility.cpp
+index 2e322aa..2e9e4d2 100644
+--- a/src/utilities/utility.cpp
++++ b/src/utilities/utility.cpp
+@@ -299,6 +299,7 @@ QString Utility::searchExternalPrograms(const QString& programToSearch, bool& pr
+ 
+     QString programPathName;
+     QStringList searchPathList = Settings::searchPathList();
++    searchPathList << "/usr/bin/unpar" << "/usr/bin/unrar" << "/usr/bin/7z";
+ 
+     QStringList programsWithDifferentNames = programToSearch.split(";");
+ 
+@@ -368,7 +369,7 @@ QStringList Utility::buildPriorityArgument(const int& processPriority, const int
+     QStringList niceProcessArgs;
+ 
+     // look for 'nice' location :
+-    QString nicePath = KStandardDirs::findExe("nice");
++    QString nicePath = QString("/usr/bin/nice");
+     niceProcessArgs.append(nicePath);
+     niceProcessArgs.append("-n");
+ 
+-- 
+2.5.0
+
diff --git a/pkgs/applications/networking/newsreaders/kwooty/default.nix b/pkgs/applications/networking/newsreaders/kwooty/default.nix
index e49e2c6fe26..d8e417cdd3a 100644
--- a/pkgs/applications/networking/newsreaders/kwooty/default.nix
+++ b/pkgs/applications/networking/newsreaders/kwooty/default.nix
@@ -5,17 +5,17 @@
 , unrar, p7zip, par2cmdline, coreutils
 }:
 
-let version = "0.8.4";
+let version = "1.1.0";
     name = "kwooty-${version}";
 in stdenv.mkDerivation {
   inherit name;
-  
+
   src = fetchurl {
-    url = "mirror://sourceforge/kwooty/${name}.tar.gz";
-    sha256 = "0i3zmh7y52n5k0yn3xc6zjpjz75f48nly40n394i6sxy89psgfc2";
+    url = "http://kde-apps.org/CONTENT/content-files/114385-${name}.tar.gz";
+    sha256 = "10a9asjv6ja1xdjli2399dyka2rbia3qdm5bdpmcng6xdsbhx3ap";
   };
 
-  patches = [ ./searchPath.patch ];
+  patches = [ ./0001-search-paths.patch ];
 
   postPatch = ''
     echo "Changing paths to archive utilities to the nix store";
@@ -31,7 +31,7 @@ in stdenv.mkDerivation {
       kdelibs kdebase_workspace phonon
       libX11 libXext libXft
     ];
-                  
+
   meta = {
     description = "Binary news reader of KDE";
   };
diff --git a/pkgs/applications/networking/newsreaders/kwooty/searchPath.patch b/pkgs/applications/networking/newsreaders/kwooty/searchPath.patch
deleted file mode 100644
index 602002d0173..00000000000
--- a/pkgs/applications/networking/newsreaders/kwooty/searchPath.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- kwooty-kwooty/src/utility.cpp	2012-01-24 22:22:45.091383072 +0100
-+++ kwooty-kwooty/src/utility.cpp	2012-01-24 22:29:08.526208140 +0100
-@@ -299,6 +299,7 @@
- 
-     QString programPathName;
-     QStringList searchPathList = Settings::searchPathList();
-+    searchPathList << "/usr/bin/unpar" << "/usr/bin/unrar" << "/usr/bin/7z";
- 
-     QStringList programsWithDifferentNames = programToSearch.split(";");
- 
-@@ -363,7 +364,7 @@
-     QStringList niceProcessArgs;
- 
-     // look for 'nice' location :
--    QString nicePath = KStandardDirs::findExe("nice");
-+    QString nicePath = QString("/usr/bin/nice");
-     niceProcessArgs.append(nicePath);
-     niceProcessArgs.append("-n");
- 
diff --git a/pkgs/applications/networking/newsreaders/liferea/default.nix b/pkgs/applications/networking/newsreaders/liferea/default.nix
index 904f6904979..def45c7e756 100644
--- a/pkgs/applications/networking/newsreaders/liferea/default.nix
+++ b/pkgs/applications/networking/newsreaders/liferea/default.nix
@@ -6,14 +6,14 @@
 }:
 
 let pname = "liferea";
-    version = "1.10.14";
+    version = "1.10.16";
 in
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${name}.tar.bz2";
-    sha256 = "0szazfknarw6ivnr4flr928ar309pz2mv6alc6pk6l1i9jchcnfs";
+    sha256 = "0b8cvlyiamc4hwjcxzs0h3mk3gxnmnwyi79mjv36601xgfjs5f9j";
   };
 
   buildInputs = with gst_all_1; [
@@ -22,20 +22,18 @@ stdenv.mkDerivation rec {
     webkitgtk json_glib gobjectIntrospection gnome3.gsettings_desktop_schemas
     gnome3.libpeas gnome3.dconf
     gst-plugins-base gst-plugins-good gst-plugins-bad
-    gnome3.libgnome_keyring
+    gnome3.libgnome_keyring gnome3.defaultIconTheme
     libnotify
     makeWrapper
   ];
 
   preFixup = ''
-    rm $out/share/icons/hicolor/icon-theme.cache
-
     for f in "$out"/bin/*; do
       wrapProgram "$f" \
         --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${pygobject3})" \
         --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
         --prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules:${glib_networking}/lib/gio/modules" \
-        --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.gnome_icon_theme}/share:${gnome3.gtk}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
+        --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.gtk}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
     done
   '';
 
diff --git a/pkgs/applications/networking/p2p/firestr/default.nix b/pkgs/applications/networking/p2p/firestr/default.nix
index 49d15f59c7f..e7be81def61 100644
--- a/pkgs/applications/networking/p2p/firestr/default.nix
+++ b/pkgs/applications/networking/p2p/firestr/default.nix
@@ -4,8 +4,6 @@
 stdenv.mkDerivation {
   name = "firestr-0.8";
 
-  buildInputs = [ cmake boost botan snappy libopus libuuid qt5 libXScrnSaver openssl ];
-
   src = fetchFromGitHub {
     owner  = "mempko";
     repo   = "firestr";
@@ -13,23 +11,25 @@ stdenv.mkDerivation {
     sha256 = "0s2kdi8rw3i3f8gbiy0ykyi6xj5n8p80m0d1i86mhh8jpagvbfzb";
   };
 
+  buildInputs = [ cmake boost botan snappy libopus libuuid qt5.base qt5.multimedia
+                  libXScrnSaver openssl ];
+
   patches = ./return.patch;
 
-  postPatch =
-    ''
+  postPatch = ''
       substituteInPlace CMakeLists.txt \
         --replace "set(Boost_USE_STATIC_LIBS on)" "" \
         --replace "/usr/include/botan" "${botan}/include/botan" \
         --replace "libopus.a"       "libopus.so" \
         --replace "libsnappy.a"     "libsnappy.so" \
         --replace "libbotan-1.10.a" "libbotan-1.10.so.0"
-    '';
+  '';
 
-  meta = with stdenv.lib;
-    { description = "Grass computing platform";
-      homepage = http://firestr.com/;
-      license = licenses.gpl3;
-      maintainers = [ maintainers.emery ];
-      platforms = platforms.linux;
-    };
+  meta = with stdenv.lib; {
+    description = "Grass computing platform";
+    homepage = http://firestr.com/;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.emery ];
+    platforms = platforms.linux;
+  };
 }
diff --git a/pkgs/applications/networking/p2p/opentracker/default.nix b/pkgs/applications/networking/p2p/opentracker/default.nix
index 32ceeb6fc8d..29dbd086a77 100644
--- a/pkgs/applications/networking/p2p/opentracker/default.nix
+++ b/pkgs/applications/networking/p2p/opentracker/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchgit, libowfat, zlib }:
 
 stdenv.mkDerivation {
-  name = "opentracker";
+  name = "opentracker-2014-08-03";
   src = fetchgit {
     url = "https://github.com/masroore/opentracker.git";
     rev = "9a26b3d203755577879315ecc2b515d0e22793cb";
@@ -21,4 +21,4 @@ stdenv.mkDerivation {
     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/p2p/qbittorrent/default.nix b/pkgs/applications/networking/p2p/qbittorrent/default.nix
index f0e5a1c13e1..f8c025ba241 100644
--- a/pkgs/applications/networking/p2p/qbittorrent/default.nix
+++ b/pkgs/applications/networking/p2p/qbittorrent/default.nix
@@ -10,11 +10,11 @@ assert guiSupport -> (dbus_libs != null);
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "qbittorrent-${version}";
-  version = "3.1.11";
+  version = "3.2.3";
 
   src = fetchurl {
     url = "mirror://sourceforge/qbittorrent/${name}.tar.xz";
-    sha256 = "0qvz8ifk01b9sw9x5yh3b5kmssx5yi026zvgvabdvfaqkvcmw43i";
+    sha256 = "05590ak4nnqkah8dy71cxf7mqv6phw0ih1719dm761mxf8vrz9w6";
   };
 
   nativeBuildInputs = [ pkgconfig which ];
@@ -23,8 +23,8 @@ stdenv.mkDerivation rec {
     ++ optional guiSupport dbus_libs;
 
   configureFlags = [
-    "--with-libboost-lib=${boost.lib}/lib"
-    "--with-libboost-inc=${boost.dev}/include"
+    "--with-boost-libdir=${boost.lib}/lib"
+    "--with-boost=${boost.dev}"
     (if guiSupport then "" else "--disable-gui")
     (if webuiSupport then "" else "--disable-webui")
   ] ++ optional debugSupport "--enable-debug";
diff --git a/pkgs/applications/networking/p2p/retroshare/0.6.nix b/pkgs/applications/networking/p2p/retroshare/0.6.nix
index 6ea7089b3fb..855ebdd0593 100644
--- a/pkgs/applications/networking/p2p/retroshare/0.6.nix
+++ b/pkgs/applications/networking/p2p/retroshare/0.6.nix
@@ -1,13 +1,14 @@
-{ stdenv, fetchsvn, cmake, qt, libupnp, gpgme, gnome3, glib, libssh, pkgconfig, protobuf, bzip2
-, libXScrnSaver, speex, curl, libxml2, libxslt, sqlcipher }:
+{ stdenv, fetchFromGitHub, cmake, qt, libupnp, gpgme, gnome3, glib, libssh, pkgconfig, protobuf, bzip2
+, libXScrnSaver, speex, curl, libxml2, libxslt, sqlcipher, libmicrohttpd, opencv }:
 
 stdenv.mkDerivation {
-  name = "retroshare-0.6-svn-7445";
+  name = "retroshare-0.6-git-fabc3a3";
 
-  src = fetchsvn {
-    url = svn://svn.code.sf.net/p/retroshare/code/trunk;
-    rev = 7445;
-    sha256 = "1dqh65bn21g7ix752ddrr10kijjdwjgjipgysyxnm90zjmdlx3cc";
+  src = fetchFromGitHub {
+    owner = "RetroShare";
+    repo = "RetroShare";
+    rev = "fabc3a398536565efe77fb1b1ef37bd484dc7d4a";
+    sha256 = "189qndkfq9kgv3qi3wx8ivla4j8fxr4iv7c8y9rjrjaz8jwdkn5x";
   };
 
   NIX_CFLAGS_COMPILE = "-I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include -I${libxml2}/include/libxml2 -I${sqlcipher}/include/sqlcipher";
@@ -29,12 +30,14 @@ stdenv.mkDerivation {
   #    retroshare-nogui/src/retroshare-nogui.pro
 
   buildInputs = [ speex qt libupnp gpgme gnome3.libgnome_keyring glib libssh pkgconfig
-                  protobuf bzip2 libXScrnSaver curl libxml2 libxslt sqlcipher ];
+                  protobuf bzip2 libXScrnSaver curl libxml2 libxslt sqlcipher libmicrohttpd opencv ];
 
   configurePhase = ''
     qmake PREFIX=$out DESTDIR=$out RetroShare.pro
   '';
 
+  enableParallelBuilding = true;
+
   postInstall = ''
     mkdir -p $out/bin
     mv $out/retroshare-nogui $out/bin
diff --git a/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix b/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
index 01ba9ff47ea..5d76b295dda 100644
--- a/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
+++ b/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
@@ -1,15 +1,21 @@
-{ stdenv, makeWrapper, fetchurl, pkgconfig, intltool, gtk3, json_glib, curl }:
+{ stdenv, autoconf, automake, libtool, makeWrapper, fetchgit, pkgconfig
+, intltool, gtk3, json_glib, curl }:
 
 
 stdenv.mkDerivation rec {
-  name = "transmission-remote-gtk-1.1.1";
+  name = "transmission-remote-gtk-${version}";
+  version = "1.2";
 
-  src = fetchurl {
-    url = "http://transmission-remote-gtk.googlecode.com/files/${name}.tar.gz";
-    sha256 = "1jbh2pm4i740cmzqd2r7zxnqqipvv2v2ndmnmk53nqrxcbgc4nlz";
+  src = fetchgit {
+    url = "https://github.com/ajf8/transmission-remote-gtk.git";
+    rev = "aa4e0c7d836cfcc10d8effd10225abb050343fc8";
+    sha256 = "0qz0jzr5w5fik2awfps0q49blwm4z7diqca2405rr3fyhyjhx42b";
   };
 
-  buildInputs = [ makeWrapper pkgconfig intltool gtk3 json_glib curl ];
+  buildInputs = [ libtool autoconf automake makeWrapper pkgconfig intltool
+                  gtk3 json_glib curl ];
+
+  preConfigure = "sh autogen.sh";
 
   preFixup = ''
     wrapProgram "$out/bin/transmission-remote-gtk" \
@@ -19,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib;
     { description = "GTK remote control for the Transmission BitTorrent client";
-      homepage = http://code.google.com/p/transmission-remote-gtk/;
+      homepage = https://github.com/ajf8/transmission-remote-gtk;
       license = licenses.gpl2;
       maintainers = [ maintainers.emery ];
       platforms = platforms.linux;
diff --git a/pkgs/applications/networking/p2p/transmission/default.nix b/pkgs/applications/networking/p2p/transmission/default.nix
index bf659816c4f..e81ef7a4f9f 100644
--- a/pkgs/applications/networking/p2p/transmission/default.nix
+++ b/pkgs/applications/networking/p2p/transmission/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, intltool, file, makeWrapper
-, openssl, curl, libevent, inotifyTools, systemd
+, openssl, curl, libevent, inotify-tools, systemd, zlib
 , enableGTK3 ? false, gtk3
 }:
 
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     sha256 = "1sxr1magqb5s26yvr5yhs1f7bmir8gl09niafg64lhgfnhv1kz59";
   };
 
-  buildInputs = [ pkgconfig intltool file openssl curl libevent inotifyTools ]
+  buildInputs = [ pkgconfig intltool file openssl curl libevent inotify-tools zlib ]
     ++ optionals enableGTK3 [ gtk3 makeWrapper ]
     ++ optional stdenv.isLinux systemd;
 
diff --git a/pkgs/applications/networking/p2p/tribler/default.nix b/pkgs/applications/networking/p2p/tribler/default.nix
index 5bc228f9a6b..a96d0f9cc67 100644
--- a/pkgs/applications/networking/p2p/tribler/default.nix
+++ b/pkgs/applications/networking/p2p/tribler/default.nix
@@ -1,33 +1,46 @@
-{ stdenv, fetchsvn, pythonPackages, makeWrapper, nettools
+{ stdenv, fetchurl, pythonPackages, makeWrapper, nettools, libtorrentRasterbar, imagemagick
 , enablePlayer ? false, vlc ? null }:
 
-let rev = "25411"; in
 
-stdenv.mkDerivation {
-  name = "tribler-5.5.21-pre${rev}";
+stdenv.mkDerivation rec {
+  name = "tribler-${version}";
+  version = "v6.4.3";
 
-  src = fetchsvn {
-    url = http://svn.tribler.org/abc/branches/release-5.5.x;
-    inherit rev;
-    sha256 = "17c9svy4zjchzihk6mf0kh4lnvaxjfmgfmimyby5w0d3cwbw49zx";
+  src = fetchurl {
+    url = "https://github.com/Tribler/tribler/releases/download/${version}/Tribler-${version}.tar.xz";
+    sha256 = "1n5qi3jlby41w60zg6dvl933ypyiflq3rb0qkwhxi4b26s3vwvgr";
   };
 
-  buildInputs = [ pythonPackages.python pythonPackages.wrapPython makeWrapper ];
-
-  pythonPath =
-    [ pythonPackages.wxPython pythonPackages.curses pythonPackages.apsw
-      pythonPackages.setuptools pythonPackages.m2crypto pythonPackages.sqlite3
-    ];
+  buildInputs = [
+    pythonPackages.python
+    pythonPackages.wrapPython
+    makeWrapper
+    imagemagick
+  ];
+
+  pythonPath = [
+    libtorrentRasterbar
+    pythonPackages.wxPython
+    pythonPackages.curses
+    pythonPackages.apsw
+    pythonPackages.twisted
+    pythonPackages.gmpy
+    pythonPackages.netifaces
+    pythonPackages.pil
+    pythonPackages.pycrypto
+    pythonPackages.pyasn1
+    pythonPackages.requests
+    pythonPackages.setuptools
+    pythonPackages.m2crypto
+    pythonPackages.sqlite3
+  ];
 
   installPhase =
     ''
-      substituteInPlace Tribler/Core/NATFirewall/guessip.py \
-          --replace /bin/netstat ${nettools}/bin/netstat \
-          --replace /sbin/ifconfig ${nettools}/sbin/ifconfig
-    
+      find . -name '*.png' -exec convert -strip {} {} \;
       # Nasty hack; call wrapPythonPrograms to set program_PYTHONPATH.
       wrapPythonPrograms
-      
+
       mkdir -p $out/share/tribler
       cp -prvd Tribler $out/share/tribler/
 
diff --git a/pkgs/applications/networking/pond/default.nix b/pkgs/applications/networking/pond/default.nix
deleted file mode 100644
index 4ac3a0448de..00000000000
--- a/pkgs/applications/networking/pond/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib, goPackages, fetchgit, trousers }:
-
-with goPackages;
-
-buildGoPackage rec {
-  rev = "f4e441c77a2039814046ff8219629c547fe8b689";
-  name = "pond-${lib.strings.substring 0 7 rev}";
-  goPackagePath = "github.com/agl/pond";
-  src = fetchgit {
-    inherit rev;
-    url = "git://github.com/agl/pond.git";
-    sha256 = "f2dfc6cb96cc4b8ae732e41d1958b62036f40cb346df2e14f27b5964a1416026";
-  };
-
-  subPackages = [ "client" ];
-
-  renameImports = [
-    "code.google.com/p/go.crypto golang.org/x/crypto"
-    "code.google.com/p/goprotobuf github.com/golang/protobuf"
-  ];
-
-  buildInputs = [ trousers net crypto protobuf ed25519 govers ];
-    
-  buildFlags = "--tags nogui";
-
-  dontInstallSrc = true;
-
-  meta = with lib; {
-    description = "Forward secure, asynchronous messaging for the discerning";
-    homepage = https://pond.imperialviolet.org;
-    license = licenses.bsd3;
-    platforms = platforms.linux;
-  };
-}
-
diff --git a/pkgs/applications/networking/remote/freerdp/default.nix b/pkgs/applications/networking/remote/freerdp/default.nix
index 092e6f53e49..f773cf6755e 100644
--- a/pkgs/applications/networking/remote/freerdp/default.nix
+++ b/pkgs/applications/networking/remote/freerdp/default.nix
@@ -15,7 +15,7 @@
 #, xmlto, docbook_xml_dtd_412, docbook_xml_xslt
 , libXinerama
 , libXv
-, pulseaudioSupport ? true, pulseaudio
+, pulseaudioSupport ? true, libpulseaudio
 }:
 
 assert printerSupport -> cups != null;
diff --git a/pkgs/applications/networking/remote/freerdp/unstable.nix b/pkgs/applications/networking/remote/freerdp/unstable.nix
index e66f78f2602..cc6ec9bd231 100644
--- a/pkgs/applications/networking/remote/freerdp/unstable.nix
+++ b/pkgs/applications/networking/remote/freerdp/unstable.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, cmake, pkgconfig, openssl, zlib, libX11, libXcursor
 , libXdamage, libXext, glib, alsaLib, ffmpeg, libxkbfile, libXinerama, libXv
 , substituteAll
-, pulseaudio ? null, cups ? null, pcsclite ? null
+, libpulseaudio ? null, cups ? null, pcsclite ? null
 , buildServer ? true, optimize ? true
 }:
 
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     cmake pkgconfig openssl zlib libX11 libXcursor libXdamage libXext glib
-    alsaLib ffmpeg libxkbfile libXinerama libXv cups pulseaudio pcsclite
+    alsaLib ffmpeg libxkbfile libXinerama libXv cups libpulseaudio pcsclite
   ];
 
   doCheck = false;
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   cmakeFlags = [
     "-DCMAKE_INSTALL_LIBDIR=lib"
     "-DWITH_CUNIT=OFF"
-  ] ++ stdenv.lib.optional (pulseaudio != null) "-DWITH_PULSE=ON"
+  ] ++ stdenv.lib.optional (libpulseaudio != null) "-DWITH_PULSE=ON"
     ++ stdenv.lib.optional (cups != null) "-DWITH_CUPS=ON"
     ++ stdenv.lib.optional (pcsclite != null) "-DWITH_PCSC=ON"
     ++ stdenv.lib.optional buildServer "-DWITH_SERVER=ON"
diff --git a/pkgs/applications/networking/remote/putty/default.nix b/pkgs/applications/networking/remote/putty/default.nix
index fe89ce61604..dda847fde07 100644
--- a/pkgs/applications/networking/remote/putty/default.nix
+++ b/pkgs/applications/networking/remote/putty/default.nix
@@ -1,20 +1,20 @@
 { stdenv, fetchurl, ncurses, gtk, pkgconfig, autoconf, automake, perl, halibut, libtool }:
 
 stdenv.mkDerivation rec {
-  version = "0.64";
+  version = "0.65";
   name = "putty-${version}";
 
   src = fetchurl {
     url = "http://the.earth.li/~sgtatham/putty/latest/${name}.tar.gz";
-    sha256 = "089qbzd7w51sc9grm2x3lcbj61jdqsnakb4j4gnf6i2131xcjiia";
+    sha256 = "180ccrsyh775hdmxqdnbclfbvsfdp2zk3gsadpa53sj497yw2hym";
   };
 
   preConfigure = ''
     perl mkfiles.pl
     ( cd doc ; make );
-    sed '/AM_PATH_GTK(/d' -i unix/configure.ac
-    sed '/AC_OUTPUT/iAM_PROG_CC_C_O' -i unix/configure.ac
-    sed '/AC_OUTPUT/iAM_PROG_AR' -i unix/configure.ac
+    sed -e '/AM_PATH_GTK(/d' \
+        -e '/AC_OUTPUT/iAM_PROG_CC_C_O' \
+        -e '/AC_OUTPUT/iAM_PROG_AR' -i configure.ac
     ./mkauto.sh
     cd unix
   '';
diff --git a/pkgs/applications/networking/remote/teamviewer/10.nix b/pkgs/applications/networking/remote/teamviewer/10.nix
index 6a54a0e7ff0..7e97a31c3a9 100644
--- a/pkgs/applications/networking/remote/teamviewer/10.nix
+++ b/pkgs/applications/networking/remote/teamviewer/10.nix
@@ -1,5 +1,8 @@
-{ stdenv, fetchurl, libX11, libXtst, libXext, libXdamage, libXfixes, wineUnstable, makeWrapper, libXau
-, bash, patchelf, config }:
+{ stdenv, fetchurl, libX11, libXtst, libXext, libXdamage, libXfixes,
+wineUnstable, makeWrapper, libXau , bash, patchelf, config,
+acceptLicense ? false }:
+
+with stdenv.lib;
 
 let
   topath = "${wineUnstable}/bin";
@@ -11,7 +14,7 @@ stdenv.mkDerivation {
   name = "teamviewer-10.0.37742";
   src = fetchurl {
     url = config.teamviewer10.url or "http://download.teamviewer.com/download/teamviewer_amd64.deb";
-    sha256 = config.teamviewer10.sha256 or "1j3zbvyj003gk8mm9sv1dld9x30l6fswwlhdyk46mixsqq5ayp6c";
+    sha256 = config.teamviewer10.sha256 or "10risay1a5a85ijbjaz2vxqbfxygpxslvh0dvzz32k988hr9p1gk";
   };
 
   buildInputs = [ makeWrapper patchelf ];
@@ -37,11 +40,18 @@ stdenv.mkDerivation {
     patchelf --set-rpath "${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib:${libX11}/lib:${libXext}/lib:${libXau}/lib:${libXdamage}/lib:${libXfixes}/lib" $out/share/teamviewer/tv_bin/teamviewerd
     patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/share/teamviewer/tv_bin/teamviewerd
     ln -s $out/share/teamviewer/tv_bin/teamviewerd $out/bin/
+    ${optionalString acceptLicense "
+      cat > $out/share/teamviewer/config/global.conf << EOF
+      [int32] EulaAccepted = 1
+      [int32] EulaAcceptedRevision = 6
+      EOF
+    "}
   '';
 
   meta = {
     homepage = "http://www.teamviewer.com";
-    license = stdenv.lib.licenses.unfree;
+    license = licenses.unfree;
     description = "Desktop sharing application, providing remote support and online meetings";
+    maintainers = with maintainers; [ jagajaga ];
   };
 }
diff --git a/pkgs/applications/networking/remote/x2goclient/default.nix b/pkgs/applications/networking/remote/x2goclient/default.nix
index 8544ccc0f79..eaa1c5e318a 100644
--- a/pkgs/applications/networking/remote/x2goclient/default.nix
+++ b/pkgs/applications/networking/remote/x2goclient/default.nix
@@ -1,23 +1,24 @@
 { stdenv, fetchurl, cups, libssh, libXpm, nxproxy, openldap, makeWrapper, qt4 }:
 
-let version = "4.0.3.2"; in
+let version = "4.0.5.0"; in
 stdenv.mkDerivation rec {
   name = "x2goclient-${version}";
 
   src = fetchurl {
     url = "http://code.x2go.org/releases/source/x2goclient/${name}.tar.gz";
-    sha256 = "0vqcz9kmnbvlj8kns68zl60019fdz97rydz4wsgnsgdf7r370npn";
+    sha256 = "18a2pszh0nq2ir64a1ah1mlzddn4qcd12b339bv30n0y1ir92bi4";
   };
 
   meta = with stdenv.lib; {
     description = "Graphical NoMachine NX3 remote desktop client";
     homepage = http://x2go.org/;
-    license = with licenses; gpl2;
+    license = licenses.gpl2;
     platforms = with platforms; linux;
     maintainers = with maintainers; [ nckx ];
   };
 
-  buildInputs = [ cups libssh libXpm nxproxy openldap makeWrapper qt4 ];
+  buildInputs = [ cups libssh libXpm nxproxy openldap qt4 ];
+  nativeBuildInputs = [ makeWrapper ];
 
   patchPhase = ''
      substituteInPlace Makefile \
diff --git a/pkgs/applications/networking/sniffers/wireshark/default.nix b/pkgs/applications/networking/sniffers/wireshark/default.nix
index f3215e7befd..40e3fdef980 100644
--- a/pkgs/applications/networking/sniffers/wireshark/default.nix
+++ b/pkgs/applications/networking/sniffers/wireshark/default.nix
@@ -10,7 +10,7 @@ assert withQt -> !withGtk && qt4 != null;
 with stdenv.lib;
 
 let
-  version = "1.12.4";
+  version = "1.12.7";
   variant = if withGtk then "gtk" else if withQt then "qt" else "cli";
 in
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://www.wireshark.org/download/src/wireshark-${version}.tar.bz2";
-    sha256 = "04n3xfakg6368ba49vj6n3csqnkzipac4sldsaavgr2jwac4x06y";
+    sha256 = "0b7rc1l1gvzcz7gfa6g7pcn32zrcfiqjx0rxm6cg3q1cwwa1qjn7";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/networking/sync/backintime/common.nix b/pkgs/applications/networking/sync/backintime/common.nix
index b6535ad7310..14fa69974e8 100644
--- a/pkgs/applications/networking/sync/backintime/common.nix
+++ b/pkgs/applications/networking/sync/backintime/common.nix
@@ -1,13 +1,13 @@
 {stdenv, fetchurl, makeWrapper, gettext, python3, python3Packages, rsync, cron, openssh, sshfsFuse, encfs }:
 
 stdenv.mkDerivation rec {
-  version = "1.1.4";
+  version = "1.1.6";
 
   name = "backintime-common-${version}";
 
   src = fetchurl {
     url = "https://launchpad.net/backintime/1.1/${version}/+download/backintime-${version}.tar.gz";
-    sha256 = "0w57b7xygwx83azz463fd4y7fxz0z6dy74f70ixhvhlsdpxw2ks3";
+    sha256 = "04yw1v6h959mmvc67mhh0km7vkxjzb7j1mniv5xfjdy27ryii1ig";
   };
 
   buildInputs = [ makeWrapper gettext python3 python3Packages.dbus python3Packages.keyring openssh cron rsync sshfsFuse encfs ];
diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix
deleted file mode 100644
index 84d0d4ba239..00000000000
--- a/pkgs/applications/networking/syncthing/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib, fetchgit, goPackages }:
-
-with goPackages;
-
-buildGoPackage rec {
-  name = "syncthing-${version}";
-  version = "0.11.1";
-  goPackagePath = "github.com/syncthing/syncthing";
-  src = fetchgit {
-    url = "git://github.com/syncthing/syncthing.git";
-    rev = "refs/tags/v${version}";
-    sha256 = "518add39e2239fc8575cdf5cafc3562f006df7201fbd272077ed3bbbbfd816d4";
-  };
-
-  subPackages = [ "cmd/syncthing" ];
-
-  buildFlagsArray = "-ldflags=-w -X main.Version v${version}";
-
-  preBuild = "export GOPATH=$GOPATH:$NIX_BUILD_TOP/go/src/${goPackagePath}/Godeps/_workspace";
-
-  doCheck = true;
-
-  dontInstallSrc = true;
-
-  meta = {
-    homepage = http://syncthing.net/;
-    description = "Replaces Dropbox and BitTorrent Sync with something open, trustworthy and decentralized";
-    license = with lib.licenses; mit;
-    maintainers = with lib.maintainers; [ matejc ];
-    platforms = with lib.platforms; unix;
-  };
-}
diff --git a/pkgs/applications/networking/umurmur/default.nix b/pkgs/applications/networking/umurmur/default.nix
index a8ae393598d..194b22f0fd7 100644
--- a/pkgs/applications/networking/umurmur/default.nix
+++ b/pkgs/applications/networking/umurmur/default.nix
@@ -13,7 +13,10 @@ stdenv.mkDerivation rec {
   
   buildInputs = [ autoreconfHook openssl protobufc libconfig ];
 
-  configureFlags = "--with-ssl=openssl";
+  configureFlags = [
+    "--with-ssl=openssl"
+    "--enable-shmapi"
+  ];
 
   meta = with stdenv.lib; {
     description = "Minimalistic Murmur (Mumble server)";
diff --git a/pkgs/applications/networking/znc/1.4.nix b/pkgs/applications/networking/znc/1.4.nix
new file mode 100644
index 00000000000..fdd02aac0b5
--- /dev/null
+++ b/pkgs/applications/networking/znc/1.4.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchurl, openssl, pkgconfig
+, withPerl ? false, perl
+, withPython ? false, python3
+, withTcl ? false, tcl
+, withCyrus ? true, cyrus_sasl
+}:
+
+with stdenv.lib;
+stdenv.mkDerivation rec {
+  name = "znc-1.4";
+
+  src = fetchurl {
+    url = "http://znc.in/releases/${name}.tar.gz";
+    sha256 = "0lkv58pq4d5lzcyx8v8anzinx0sx0zw0js4jij13jb8qxp88zsc6";
+  };
+
+  buildInputs = [ openssl pkgconfig ]
+    ++ optional withPerl perl
+    ++ optional withPython python3
+    ++ optional withTcl tcl
+    ++ optional withCyrus cyrus_sasl;
+
+  configureFlags = optionalString withPerl "--enable-perl "
+    + optionalString withPython "--enable-python "
+    + optionalString withTcl "--enable-tcl --with-tcl=${tcl}/lib "
+    + optionalString withCyrus "--enable-cyrus ";
+
+  meta = with stdenv.lib; {
+    description = "Advanced IRC bouncer";
+    homepage = http://wiki.znc.in/ZNC;
+    maintainers = with maintainers; [ viric ];
+    license = licenses.asl20;
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/networking/znc/default.nix b/pkgs/applications/networking/znc/default.nix
index 11681cfefd0..ca4c6d24315 100644
--- a/pkgs/applications/networking/znc/default.nix
+++ b/pkgs/applications/networking/znc/default.nix
@@ -7,11 +7,11 @@
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "znc-1.6.0";
+  name = "znc-1.6.1";
 
   src = fetchurl {
     url = "http://znc.in/releases/${name}.tar.gz";
-    sha256 = "df622aeae34d26193c738dff6499e56ad669ec654484e19623738d84cc80aba7";
+    sha256 = "0h61nv5kx9k8prmhsffxhlprf7gjcq8vqhjjmqr6v3glcirkjjds";
   };
 
   buildInputs = [ openssl pkgconfig ]
diff --git a/pkgs/applications/office/abiword/default.nix b/pkgs/applications/office/abiword/default.nix
index 2aaf1e8f032..18ece7a7401 100644
--- a/pkgs/applications/office/abiword/default.nix
+++ b/pkgs/applications/office/abiword/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig, gtk3, libglade, libgnomecanvas, fribidi
 , libpng, popt, libgsf, enchant, wv, librsvg, bzip2, libjpeg, perl
-, boost, libxslt
+, boost, libxslt, goffice, makeWrapper, iconTheme
 }:
 
 stdenv.mkDerivation rec {
@@ -16,9 +16,14 @@ stdenv.mkDerivation rec {
 
   buildInputs =
     [ pkgconfig gtk3 libglade librsvg bzip2 libgnomecanvas fribidi libpng popt
-      libgsf enchant wv libjpeg perl boost libxslt
+      libgsf enchant wv libjpeg perl boost libxslt goffice makeWrapper iconTheme
     ];
 
+  postFixup = ''
+    wrapProgram "$out/bin/abiword" \
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+  '';
+
   meta = with stdenv.lib; {
     description = "Word processing program, similar to Microsoft Word";
     homepage = http://www.abisource.com/;
diff --git a/pkgs/applications/office/basket/default.nix b/pkgs/applications/office/basket/default.nix
index 023d133b4dd..2417e263d44 100644
--- a/pkgs/applications/office/basket/default.nix
+++ b/pkgs/applications/office/basket/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, fetchurl, cmake, gettext, kdelibs, qimageblitz, kdepimlibs, gpgme }:
+{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
+, kdelibs, qimageblitz, kdepimlibs, gpgme
+}:
 
 stdenv.mkDerivation rec {
   name = "basket-1.81";
@@ -12,8 +14,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ kdelibs qimageblitz kdepimlibs gpgme ];
 
-  nativeBuildInputs = [ cmake gettext ];
-  
+  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
+
   meta = {
     description = "A multi-purpose note-taking application";
     homepage = http://basket.kde.org/;
diff --git a/pkgs/applications/office/calligra/default.nix b/pkgs/applications/office/calligra/default.nix
index 00f27bfc93c..3d1eada1db6 100644
--- a/pkgs/applications/office/calligra/default.nix
+++ b/pkgs/applications/office/calligra/default.nix
@@ -1,10 +1,10 @@
-{ stdenv, fetchurl, cmake, kdelibs, attica, perl, zlib, libpng, boost, mesa
+{ stdenv, fetchurl, automoc4, cmake, kdelibs, attica, perl, zlib, libpng, boost, mesa
 , kdepimlibs, createresources ? null, eigen, qca2, exiv2, soprano, marble, lcms2
 , fontconfig, freetype, sqlite, icu, libwpd, libwpg, pkgconfig, poppler_qt4
 , libkdcraw, libxslt, fftw, glew, gsl, shared_desktop_ontologies, okular
 , libvisio, kactivities, mysql, postgresql, freetds, xbase, openexr, ilmbase
 , libodfgen, opencolorio, openjpeg, pstoedit, librevenge
- }:
+}:
 
 stdenv.mkDerivation rec {
   name = "calligra-2.8.7";
@@ -14,12 +14,13 @@ stdenv.mkDerivation rec {
     sha256 = "1d8fx0xn8n8y6jglw8hhpk7kr6kbhsbaxqwqlfzmnzh7x9s8nsxg";
   };
 
-  nativeBuildInputs = [ cmake perl pkgconfig ];
+  nativeBuildInputs = [ automoc4 cmake perl pkgconfig ];
 
 # TODO: package Vc, libWPS, Spnav, m2mml, LibEtonyek, poppler-qt4-xpdf-headers
 # not found: xbase, openjpeg(too new)
 
-  buildInputs = [ kdelibs attica zlib libpng boost mesa kdepimlibs
+  buildInputs = [
+    kdelibs attica zlib libpng boost mesa kdepimlibs
     createresources eigen qca2 exiv2 soprano marble lcms2 fontconfig freetype
     sqlite icu libwpd libwpg poppler_qt4 libkdcraw libxslt fftw glew gsl
     shared_desktop_ontologies okular libodfgen opencolorio openjpeg
@@ -32,7 +33,16 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR";
 
   meta = {
-    description = "Calligra Suite is a set of applications written to help you to accomplish your work. Calligra includes efficient and capable office components: Words for text processing,  Sheets for computations, Stage for presentations, Plan for planning, Flow for flowcharts, Kexi for database creation, Krita for painting and raster drawing, and Karbon for vector graphics.";
+    description = "A suite of productivity applications";
+    longDescription = ''
+      Calligra Suite is a set of applications written to help
+      you to accomplish your work. Calligra includes efficient
+      and capable office components: Words for text processing,
+      Sheets for computations, Stage for presentations, Plan for
+      planning, Flow for flowcharts, Kexi for database creation,
+      Krita for painting and raster drawing, and Karbon for
+      vector graphics.
+    '';
     homepage = http://calligra.org;
     maintainers = with stdenv.lib.maintainers; [ urkud phreedom ];
     inherit (kdelibs.meta) platforms;
diff --git a/pkgs/applications/office/eventlist/default.nix b/pkgs/applications/office/eventlist/default.nix
index c260220aad4..395cb3d0a91 100644
--- a/pkgs/applications/office/eventlist/default.nix
+++ b/pkgs/applications/office/eventlist/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, kdelibs, kdepimlibs, akonadi, gettext, boost }:
+{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
+, kdelibs, kdepimlibs, akonadi, boost }:
 
 stdenv.mkDerivation rec {
   name = "plasmoid-eventlist-0.6.96";
@@ -8,7 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "26cc7bd1c465bf1379fd0ba1fa8592eaa62f2553734d1b283e17359103908eea";
   };
 
-  buildInputs = [ kdelibs kdepimlibs akonadi gettext boost ];
+  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
+  buildInputs = [ kdelibs kdepimlibs akonadi boost ];
 
   meta = {
     inherit (kdelibs.meta) platforms;
diff --git a/pkgs/applications/office/gnumeric/default.nix b/pkgs/applications/office/gnumeric/default.nix
index e82ce2d7b9e..8e01d30c44f 100644
--- a/pkgs/applications/office/gnumeric/default.nix
+++ b/pkgs/applications/office/gnumeric/default.nix
@@ -1,32 +1,33 @@
 { stdenv, fetchurl, pkgconfig, intltool, perl, perlXMLParser
-, goffice, makeWrapper, gtk3, gnome_icon_theme, gnome3
+, goffice, gnome3, makeWrapper, gtk3
+, python, pygobject3
 }:
 
 stdenv.mkDerivation rec {
-  name = "gnumeric-1.12.18";
+  name = "gnumeric-1.12.23";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnumeric/1.12/${name}.tar.xz";
-    sha256 = "402224f858cfa4e91503ab1be0491fa3322713dabe56b6eae171def8b736d9e9";
+    sha256 = "0lcmw4jrfg9y2fhx13xw8w85vi7bcmgyn2sdjxi21xkh3szlqiq0";
   };
 
-  preConfigure = ''sed -i 's/\(SUBDIRS.*\) doc/\1/' Makefile.in''; # fails when installing docs
-
   configureFlags = "--disable-component";
 
-  # ToDo: optional libgda, python, introspection?
+  # ToDo: optional libgda, introspection?
   buildInputs = [
     pkgconfig intltool perl perlXMLParser
-    goffice gtk3 makeWrapper
+    goffice gtk3 makeWrapper gnome3.defaultIconTheme
+    python pygobject3
   ];
 
+  enableParallelBuilding = true;
+
   preFixup = ''
     for f in "$out"/bin/gnumeric-*; do
       wrapProgram $f \
         --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
         --prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules"
     done
-    rm $out/share/icons/hicolor/icon-theme.cache
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/office/hledger-interest/default.nix b/pkgs/applications/office/hledger-interest/default.nix
deleted file mode 100644
index 393bc9cc4c7..00000000000
--- a/pkgs/applications/office/hledger-interest/default.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, Cabal, Decimal, hledgerLib, mtl, time }:
-
-cabal.mkDerivation (self: {
-  pname = "hledger-interest";
-  version = "1.4.4";
-  sha256 = "16knk1cwrpg5jn6vgcab7hqpjzg33ysz57x1f2glrmhhv1slmbfn";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [ Cabal Decimal hledgerLib mtl time ];
-  meta = {
-    homepage = "http://github.com/peti/hledger-interest";
-    description = "computes interest for a given account";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-    maintainers = with self.stdenv.lib.maintainers; [ simons ];
-  };
-})
diff --git a/pkgs/applications/office/hledger-irr/default.nix b/pkgs/applications/office/hledger-irr/default.nix
deleted file mode 100644
index 6274797f609..00000000000
--- a/pkgs/applications/office/hledger-irr/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, Cabal, hledgerLib, statistics, time }:
-
-cabal.mkDerivation (self: {
-  pname = "hledger-irr";
-  version = "0.1.1.4";
-  sha256 = "0nqd8br86d71dpwq7p8956q74pgqdimid42xikp9zvf632x2s8ax";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [ Cabal hledgerLib statistics time ];
-  meta = {
-    description = "computes the internal rate of return of an investment";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-    broken = true;
-  };
-})
diff --git a/pkgs/applications/office/kbibtex/default.nix b/pkgs/applications/office/kbibtex/default.nix
index b3e62b8e051..a18ba50cabe 100644
--- a/pkgs/applications/office/kbibtex/default.nix
+++ b/pkgs/applications/office/kbibtex/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, fetchurl, kdelibs, libxslt, poppler_qt4 }:
+{ stdenv, fetchurl, automoc4, cmake, perl, pkgconfig
+, kdelibs, libxslt, poppler_qt4
+}:
 
 stdenv.mkDerivation rec {
   pname = "kbibtex";
@@ -15,4 +17,5 @@ stdenv.mkDerivation rec {
     '';
 
   buildInputs = [ kdelibs libxslt poppler_qt4 ];
+  nativeBuildInputs = [ automoc4 cmake perl pkgconfig ];
 }
diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix
index 464b0016764..f1adef86dc9 100644
--- a/pkgs/applications/office/libreoffice/default.nix
+++ b/pkgs/applications/office/libreoffice/default.nix
@@ -1,50 +1,30 @@
-# when updating version, wait for the build to fail
-# run make without sourcing the environment and let libreoffice
-# download all extra files
-# then list extra files separated by newline and pipe them to
-# generate-libreoffice-srcs.sh and copy output to libreoffice-srcs.nix
-
 { stdenv, fetchurl, pam, python3, tcsh, libxslt, perl, ArchiveZip
 , CompressZlib, zlib, libjpeg, expat, pkgconfigUpstream, freetype, libwpd
 , libxml2, db, sablotron, curl, fontconfig, libsndfile, neon
 , bison, flex, zip, unzip, gtk, libmspack, getopt, file, cairo, which
-, icu, boost, jdk, ant, cups, xorg
+, icu, boost, jdk, ant, cups, xorg, libcmis
 , openssl, gperf, cppunit, GConf, ORBit2, poppler
-, librsvg, gnome_vfs, mesa
+, librsvg, gnome_vfs, mesa, bsh, CoinMP, libwps, libabw
 , autoconf, automake, openldap, bash, hunspell, librdf_redland, nss, nspr
 , libwpg, dbus_glib, glibc, qt4, kde4, clucene_core, libcdr, lcms, vigra
 , unixODBC, mdds, saneBackends, mythes, libexttextcat, libvisio
 , fontsConf, pkgconfig, libzip, bluez5, libtool, maven
 , libatomic_ops, graphite2, harfbuzz, libodfgen
 , librevenge, libe-book, libmwaw, glm, glew, gst_all_1
+, gdb, commonsLogging
 , langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" "sl" ]
+, withHelp ? true
 }:
 
 let
   langsSpaces = stdenv.lib.concatStringsSep " " langs;
-  major = "4";
-  minor = "4";
-  patch = "2";
+  major = "5";
+  minor = "0";
+  patch = "1";
   tweak = "2";
   subdir = "${major}.${minor}.${patch}";
   version = "${subdir}${if tweak == "" then "" else "."}${tweak}";
 
-  # doesn't exist in srcs
-  # 0.8 version is in 0.7.0 tarball
-  libixion = stdenv.mkDerivation rec {
-     version = "0.7.0";
-     name = "libixion-${version}";
-
-     src = fetchurl {
-       url = "http://kohei.us/files/ixion/src/${name}.tar.bz2";
-       sha256 = "10amvz7fzr1kcy3svfspkdykmspqgpjdmk44cyr406wi7v4lwnf9";
-     };
-
-     buildInputs = [ boost mdds pkgconfig ];
-
-     configureFlags = [ "--with-boost=${boost.dev}" ];
-  };
-
   fetchThirdParty = {name, md5, brief, subDir ? ""}: fetchurl {
     inherit name md5;
     url = if brief then
@@ -53,19 +33,6 @@ let
             "http://dev-www.libreoffice.org/src/${subDir}${md5}-${name}";
   };
 
-  # Can't find Boost inside LO build
-  liborcus = stdenv.mkDerivation rec {
-    name = "liborcus-0.7.0";
-    src = fetchThirdParty (stdenv.lib.findFirst 
-      (x: x.name == "${name}.tar.bz2")
-      ("Error: update liborcus version inside LO expression")
-      (import ./libreoffice-srcs.nix));
-
-    buildInputs = [ boost mdds pkgconfig zlib /*libixion*/ ];
-
-    configureFlags = [ "--with-boost=${boost.dev}" ];
-  };
-
   fetchSrc = {name, sha256}: fetchurl {
     url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${name}-${version}.tar.xz";
     inherit sha256;
@@ -80,24 +47,23 @@ let
 
     translations = fetchSrc {
       name = "translations";
-      sha256 = "0m1a09vzgh5mz0dgx2ji3fwmsqr7xymr0hhrrhf75nd1dr0blv2s";
+      sha256 = "0z8qf4ri8wmzgc5601fxcwxwym1h9rwk0kaqpxhqbkj04h9z0xq7";
     };
 
     # TODO: dictionaries
 
     help = fetchSrc {
       name = "help";
-      sha256 = "06i2c143dpqm4w1a9nba0gn1ayrvrhdrcm2kydzapvljgljqswkh";
+      sha256 = "0iz9jz0ppghzh33kzw7v0xqchim9brys6mnmlk74nzrhci2vj7f7";
     };
 
   };
-in
-stdenv.mkDerivation rec {
+in stdenv.mkDerivation rec {
   name = "libreoffice-${version}";
 
   src = fetchurl {
     url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
-    sha256 = "0dif783zbh9qb4636mm055clwwsv8j6pmb8msi9lr183drnaw73x";
+    sha256 = "06nj1wnx09a6v3kx9k48810mkb19dbkaln1af33f4m7bxg5bjl87";
   };
 
   # Openoffice will open libcups dynamically, so we link it directly
@@ -111,34 +77,27 @@ stdenv.mkDerivation rec {
 
   postUnpack = ''
     mkdir -v $sourceRoot/src
-  '' + (stdenv.lib.concatMapStrings (f: "ln -sv ${f} $sourceRoot/src/${f.outputHash}-${f.name}\nln -sv ${f} $sourceRoot/src/${f.name}\n") srcs.third_party)
+  '' + (stdenv.lib.concatMapStrings (f: "ln -sfv ${f} $sourceRoot/src/${f.outputHash}-${f.name}\nln -sfv ${f} $sourceRoot/src/${f.name}\n") srcs.third_party)
   + ''
     ln -sv ${srcs.help} $sourceRoot/src/${srcs.help.name}
     ln -svf ${srcs.translations} $sourceRoot/src/${srcs.translations.name}
   '';
 
-  patchPhase = ''
-    find . -type f -print0 | xargs -0 sed -i \
-      -e 's,! */bin/bash,!${bash}/bin/bash,' -e 's,\(!\|SHELL=\) */usr/bin/env bash,\1${bash}/bin/bash,' \
-      -e 's,! */usr/bin/perl,!${perl}/bin/perl,' -e 's,! */usr/bin/env perl,!${perl}/bin/perl,' \
-      -e 's,! */usr/bin/python,!${python3}/bin/${python3.executable},' -e 's,! */usr/bin/env python,!${python3}/bin/${python3.executable},'
-    #sed -i 's,ANT_OPTS+="\(.*\)",ANT_OPTS+=\1,' apache-commons/java/*/makefile.mk
-
-  '';
-
   QT4DIR = qt4;
   KDE4DIR = kde4.kdelibs;
 
-  preConfigure = ''
-    # Needed to find genccode
-    PATH=$PATH:${icu}/sbin
+  # Fix boost 1.59 compat
+  # Try removing in the next version
+  CPPFLAGS = "-DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED";
 
+  preConfigure = ''
     configureFlagsArray=(
       "--with-parallelism=$NIX_BUILD_CORES"
       "--with-lang=${langsSpaces}"
     );
 
     chmod a+x ./bin/unpack-sources
+    patchShebangs .
     # It is used only as an indicator of the proper current directory
     touch solenv/inc/target.mk
   '';
@@ -148,6 +107,11 @@ stdenv.mkDerivation rec {
   postConfigure = ''
     sed -e '1ilibreoffice-translations-${version}.tar.xz=libreoffice-translations-${version}.tar.xz' -i Makefile
     sed -e '1ilibreoffice-help-${version}.tar.xz=libreoffice-help-${version}.tar.xz' -i Makefile
+
+    # unit test sd_tiledrendering seems to be fragile
+    # http://nabble.documentfoundation.org/libreoffice-5-0-failure-in-CUT-libreofficekit-tiledrendering-td4150319.html
+    echo > ./sd/CppunitTest_sd_tiledrendering.mk
+    sed -e /CppunitTest_sd_tiledrendering/d -i sd/Module_sd.mk
   '';
 
   makeFlags = "SHELL=${bash}/bin/bash";
@@ -158,7 +122,7 @@ stdenv.mkDerivation rec {
     # This is required as some cppunittests require fontconfig configured
     export FONTCONFIG_FILE=${fontsConf}
 
-    # This to aovid using /lib:/usr/lib at linking
+    # This to avoid using /lib:/usr/lib at linking
     sed -i '/gb_LinkTarget_LDFLAGS/{ n; /rpath-link/d;}' solenv/gbuild/platform/unxgcc.mk
 
     find -name "*.cmd" -exec sed -i s,/lib:/usr/lib,, {} \;
@@ -168,74 +132,76 @@ stdenv.mkDerivation rec {
 
   # It installs only things to $out/lib/libreoffice
   postInstall = ''
-    mkdir -p $out/bin $out/share
+    mkdir -p $out/bin $out/share/desktop
+
     for a in sbase scalc sdraw smath swriter spadmin simpress soffice; do
       ln -s $out/lib/libreoffice/program/$a $out/bin/$a
     done
-    ln -s $out/bin/soffice $out/bin/libreoffice
 
+    ln -s $out/bin/soffice $out/bin/libreoffice
     ln -s $out/lib/libreoffice/share/xdg $out/share/applications
+
     for f in $out/share/applications/*.desktop; do
-      substituteInPlace "$f" --replace "Exec=libreofficedev${major}.${minor}" "Exec=$out/bin/soffice"
-      substituteInPlace "$f" --replace "Exec=libreoffice${major}.${minor}" "Exec=$out/bin/soffice"
-      substituteInPlace "$f" --replace "Exec=libreoffice" "Exec=$out/bin/soffice"
+      substituteInPlace "$f" --replace "Exec=libreofficedev${major}.${minor}" "Exec=libreoffice"
+      substituteInPlace "$f" --replace "Exec=libreoffice${major}.${minor}" "Exec=libreoffice"
+      substituteInPlace "$f" --replace "Exec=libreoffice" "Exec=libreoffice"
     done
 
-    mkdir -p "$out/share/desktop"
-    cp -r sysui/desktop/icons  "$out/share/desktop"
+    cp -r sysui/desktop/icons  "$out/share"
     sed -re 's@Icon=libreofficedev[0-9.]*-?@Icon=@' -i "$out/share/applications/"*.desktop
   '';
 
   configureFlags = [
+    "${if withHelp then "" else "--without-help"}"
     "--with-boost=${boost.dev}"
     "--with-boost-libdir=${boost.lib}/lib"
+    "--with-beanshell-jar=${bsh}"
     "--with-vendor=NixOS"
-
-    # Without these, configure does not finish
-    "--without-junit"
-
-    # Without this, it wants to download
+    "--with-commons-logging-jar=${commonsLogging}/share/java/commons-logging-1.2.jar"
+    "--disable-report-builder"
     "--enable-python=system"
     "--enable-dbus"
     "--enable-kde4"
-    "--disable-odk"
+    "--with-package-format=installed"
+    "--enable-epm"
+    "--with-jdk-home=${jdk.home}"
+    "--with-ant-home=${ant}/lib/ant"
     "--with-system-cairo"
     "--with-system-libs"
     "--with-system-headers"
     "--with-system-openssl"
+    "--with-system-libabw"
+    "--with-system-libcmis"
+    "--with-system-libwps"
     "--with-system-openldap"
-    "--without-system-libwps"  # TODO
-    "--without-doxygen"
+    "--with-system-coinmp"
+
+    # Without these, configure does not finish
+    "--without-junit"
 
     # I imagine this helps. Copied from go-oo.
     # Modified on every upgrade, though
     "--disable-kde"
+    "--disable-odk"
     "--disable-postgresql-sdbc"
-    "--with-package-format=installed"
-    "--enable-epm"
-    "--with-jdk-home=${jdk.home}"
-    "--with-ant-home=${ant}/lib/ant"
+    "--disable-firebird-sdbc"
     "--without-fonts"
     "--without-myspell-dicts"
-    "--without-system-beanshell"
+    "--without-doxygen"
+
+    # TODO: package these as system libraries
+    "--with-system-beanshell"
     "--without-system-hsqldb"
-    "--without-system-jars"
     "--without-system-altlinuxhyph"
     "--without-system-lpsolve"
     "--without-system-npapi-headers"
-    "--without-system-libcmis"
-
     "--without-system-libetonyek"
     "--without-system-libfreehand"
-    "--without-system-libabw"
-    "--without-system-firebird"
     "--without-system-liblangtag"
     "--without-system-libmspub"
-
     "--without-system-libpagemaker"
-    "--without-system-coinmp"
     "--without-system-libgltf"
-
+    # https://github.com/NixOS/nixpkgs/commit/5c5362427a3fa9aefccfca9e531492a8735d4e6f
     "--without-system-orcus"
   ];
 
@@ -251,21 +217,21 @@ stdenv.mkDerivation rec {
       hunspell icu jdk kde4.kdelibs lcms libcdr libexttextcat unixODBC libjpeg
       libmspack librdf_redland librsvg libsndfile libvisio libwpd libwpg libX11
       libXaw libXext libXi libXinerama libxml2 libxslt libXtst
-      libXdmcp libpthreadstubs mesa mythes gst_all_1.gstreamer 
+      libXdmcp libpthreadstubs mesa mythes gst_all_1.gstreamer
       gst_all_1.gst-plugins-base
       neon nspr nss openldap openssl ORBit2 pam perl pkgconfigUpstream poppler
       python3 sablotron saneBackends tcsh unzip vigra which zip zlib
-      mdds bluez5 glibc /*libixion*/
+      mdds bluez5 glibc libcmis libwps libabw
       libxshmfence libatomic_ops graphite2 harfbuzz
       librevenge libe-book libmwaw glm glew
-      /*liborcus*/ libodfgen
+      libodfgen CoinMP
     ];
 
   meta = with stdenv.lib; {
     description = "Comprehensive, professional-quality productivity suite, a variant of openoffice.org";
     homepage = http://libreoffice.org/;
     license = licenses.lgpl3;
-    maintainers = [ maintainers.viric maintainers.raskin ];
+    maintainers = with maintainers; [ viric raskin ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh b/pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh
deleted file mode 100755
index e5a867463bf..00000000000
--- a/pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/run/current-system/sw/bin/bash
-
-# Take the list of files from the main package, ooo.lst.in
-
-cat <<EOF
-[
-EOF
-
-write_entry(){
-  echo '{'
-  echo "  name = \"${name}\";"
-  echo "  md5 = \"${md5}\";"
-  echo "  brief = ${brief};"
-  echo '}'
-}
-
-while read line; do
-  case "$line" in
-    \#*)
-      echo Skipping comment: "$line" >&2;
-      ;;
-    *_MD5SUM\ :=*)
-      read tbline;
-      line=${line##* };
-      tbline=${tbline##* };
-      md5=$line
-      name=$tbline;
-      brief=true;
-      write_entry;
-      ;;
-    *_TARBALL\ :=*)
-      line=${line##* };
-      md5=${line:0:32};
-      name=${line:33};
-      brief=false;
-      write_entry;
-      ;;
-    *)
-      echo Skipping: "$line" >&2;
-      ;;
-  esac
-done
-
-echo ']'
diff --git a/pkgs/applications/office/libreoffice/libreoffice-srcs.nix b/pkgs/applications/office/libreoffice/libreoffice-srcs.nix
index 2cb20027b4c..22cf1857ae4 100644
--- a/pkgs/applications/office/libreoffice/libreoffice-srcs.nix
+++ b/pkgs/applications/office/libreoffice/libreoffice-srcs.nix
@@ -1,10 +1,6 @@
+# DEPRECATED: these dependencies sould be system libraries
 [
 {
-  name = "libabw-0.1.1.tar.bz2";
-  md5 = "7a3815b506d064313ba309617b6f5a0b";
-  brief = true;
-}
-{
   name = "commons-codec-1.6-src.tar.gz";
   md5 = "2e482c7567908d334785ce7d69ddfff7";
   brief = false;
@@ -30,16 +26,6 @@
   brief = false;
 }
 {
-  name = "commons-logging-1.1.3-src.tar.gz";
-  md5 = "e8e197d628436490886d17cffa108fe3";
-  brief = false;
-}
-{
-  name = "commons-httpclient-3.1-src.tar.gz";
-  md5 = "2c9b0f83ed5890af02c0df1c1776f39b";
-  brief = false;
-}
-{
   name = "commons-logging-1.2-src.tar.gz";
   md5 = "ce977548f1cbf46918e93cd38ac35163";
   brief = true;
@@ -55,61 +41,21 @@
   brief = true;
 }
 {
-  name = "boost_1_55_0.tar.bz2";
-  md5 = "d6eef4b4cacb2183f2bf265a5a03a354";
-  brief = false;
-}
-{
-  name = "bsh-2.0b1-src.tar.gz";
-  md5 = "ea570af93c284aa9e5621cd563f54f4d";
-  brief = false;
-}
-{
-  name = "cairo-1.10.2.tar.gz";
-  md5 = "f101a9e88b783337b20b2e26dfd26d5f";
-  brief = false;
-}
-{
-  name = "libcdr-0.1.1.tar.bz2";
-  md5 = "b33fd0be3befdd1b37777e08ce058bd9";
-  brief = true;
-}
-{
   name = "clucene-core-2.3.3.4.tar.gz";
   md5 = "48d647fbd8ef8889e5a7f422c1bfda94";
   brief = false;
 }
 {
-  name = "libcmis-0.5.0.tar.gz";
-  md5 = "5821b806a98e6c38370970e682ce76e8";
-  brief = false;
-}
-{
-  name = "CoinMP-1.7.6.tgz";
-  md5 = "1cce53bf4b40ae29790d2c5c9f8b1129";
-  brief = true;
-}
-{
   name = "collada2gltf-master-cb1d97788a.tar.bz2";
   md5 = "4b87018f7fff1d054939d19920b751a0";
   brief = false;
 }
 {
-  name = "cppunit-1.13.2.tar.gz";
-  md5 = "d1c6bdd5a76c66d2c38331e2d287bc01";
-  brief = true;
-}
-{
   name = "ConvertTextToNumber-1.3.2.oxt";
   md5 = "451ccf439a36a568653b024534669971";
   brief = false;
 }
 {
-  name = "curl-7.36.0.tar.bz2";
-  md5 = "e6d1f9d1b59da5062109ffe14e0569a4";
-  brief = true;
-}
-{
   name = "libe-book-0.1.2.tar.bz2";
   md5 = "6b48eda57914e6343efebc9381027b78";
   brief = true;
@@ -120,8 +66,8 @@
   brief = false;
 }
 {
-  name = "libetonyek-0.1.1.tar.bz2";
-  md5 = "805f941b06448212a988cb65f0691a7a";
+  name = "libetonyek-0.1.3.tar.bz2";
+  md5 = "e5947373dd7834f27e93f1636faa419f";
   brief = true;
 }
 {
@@ -130,16 +76,6 @@
   brief = false;
 }
 {
-  name = "Firebird-2.5.2.26540-0.tar.bz2";
-  md5 = "21154d2004e025c8a3666625b0357bb5";
-  brief = true;
-}
-{
-  name = "fontconfig-2.8.0.tar.gz";
-  md5 = "77e15a92006ddc2adbb06f840d591c0e";
-  brief = false;
-}
-{
   name = "crosextrafonts-20130214.tar.gz";
   md5 = "368f114c078f94214a308a74c7e991bc";
   brief = false;
@@ -195,8 +131,8 @@
   brief = false;
 }
 {
-  name = "libfreehand-0.1.0.tar.bz2";
-  md5 = "5f029fef73e42a2c2ae4524a7513f97d";
+  name = "libfreehand-0.1.1.tar.bz2";
+  md5 = "8cf70c5dc4d24d2dc4a107f509d2d6d7";
   brief = true;
 }
 {
@@ -205,23 +141,13 @@
   brief = false;
 }
 {
-  name = "glew-1.10.0.zip";
-  md5 = "594eb47b4b1210e25438d51825404d5a";
-  brief = false;
-}
-{
-  name = "glm-0.9.4.6-libreoffice.zip";
-  md5 = "bae83fa5dc7f081768daace6e199adc3";
-  brief = false;
-}
-{
   name = "graphite2-1.2.4.tgz";
   md5 = "2ef839348fe28e3b923bf8cced440227";
   brief = true;
 }
 {
-  name = "harfbuzz-0.9.23.tar.bz2";
-  md5 = "a4a9b548577e2ee22f0887937da5fd6c";
+  name = "harfbuzz-0.9.40.tar.bz2";
+  md5 = "0e27e531f4c4acff601ebff0957755c2";
   brief = true;
 }
 {
@@ -240,8 +166,8 @@
   brief = false;
 }
 {
-  name = "icu4c-53_1-src.tgz";
-  md5 = "b73baa6fbdfef197608d1f69300919b9";
+  name = "icu4c-54_1-src.tgz";
+  md5 = "e844caed8f2ca24c088505b0d6271bc0";
   brief = false;
 }
 {
@@ -300,18 +226,8 @@
   brief = false;
 }
 {
-  name = "jpegsrc.v9a.tar.gz";
-  md5 = "3353992aecaee1805ef4109aadd433e7";
-  brief = true;
-}
-{
-  name = "libjpeg-turbo-1.3.1.tar.gz";
-  md5 = "2c3a68129dac443a72815ff5bb374b05";
-  brief = true;
-}
-{
-  name = "language-subtag-registry-2014-12-03.tar.bz2";
-  md5 = "0f2677ec23bb43ddc7355d1b4cc8ed45";
+  name = "language-subtag-registry-2015-06-08.tar.bz2";
+  md5 = "d431bd8a70455be1fa8523fa633c005b";
   brief = true;
 }
 {
@@ -356,29 +272,14 @@
   brief = false;
 }
 {
-  name = "libxml2-2.9.1.tar.gz";
-  md5 = "9c0cfef285d5c4a5c80d00904ddab380";
-  brief = false;
-}
-{
-  name = "libxslt-1.1.28.tar.gz";
-  md5 = "9667bf6f9310b957254fdcf6596600b7";
-  brief = false;
-}
-{
   name = "lp_solve_5.5.tar.gz";
   md5 = "26b3e95ddf3d9c077c480ea45874b3b8";
   brief = false;
 }
 {
-  name = "mariadb_client-2.0.0-src.tar.gz";
-  md5 = "a233181e03d3c307668b4c722d881661";
-  brief = false;
-}
-{
-  name = "mdds_0.11.2.tar.bz2";
-  md5 = "cb4207cb913c7a5a8bfa5b91234618ee";
-  brief = false;
+  name = "mdds_0.12.1.tar.bz2";
+  md5 = "ef2560ed5416652a7fe195305b14cebe";
+  brief = true;
 }
 {
   name = "libmspub-0.1.2.tar.bz2";
@@ -386,8 +287,8 @@
   brief = true;
 }
 {
-  name = "libmwaw-0.3.1.tar.bz2";
-  md5 = "6f1ac4a0e24131c422e1e91f07718fb6";
+  name = "libmwaw-0.3.5.tar.bz2";
+  md5 = "bdc58bbf89aaaf6d29b3516d96830a06";
   brief = true;
 }
 {
@@ -406,13 +307,13 @@
   brief = false;
 }
 {
-  name = "nss-3.16.5-with-nspr-4.10.6.tar.gz";
-  md5 = "b279551b7638d0e36d1199548124c247";
+  name = "nss-3.19.2-with-nspr-4.10.8.tar.gz";
+  md5 = "2100bc5a7ea9685928ff68cda2e60569";
   brief = false;
 }
 {
-  name = "libodfgen-0.1.1.tar.bz2";
-  md5 = "c22c83c17cda0754382ada4e116594b7";
+  name = "libodfgen-0.1.4.tar.bz2";
+  md5 = "8716be5c22ae8353f9aaa380d74840dc";
   brief = true;
 }
 {
@@ -421,16 +322,6 @@
   brief = true;
 }
 {
-  name = "openldap-2.4.31.tgz";
-  md5 = "804c6cb5698db30b75ad0ff1c25baefd";
-  brief = false;
-}
-{
-  name = "openssl-1.0.1j.tar.gz";
-  md5 = "f7175c9cd3c39bb1907ac8bba9df8ed3";
-  brief = true;
-}
-{
   name = "liborcus-0.7.0.tar.bz2";
   md5 = "7681383be6ce489d84c1c74f4e7f9643";
   brief = false;
@@ -456,16 +347,6 @@
   brief = true;
 }
 {
-  name = "postgresql-9.2.1.tar.bz2";
-  md5 = "c0b4799ea9850eae3ead14f0a60e9418";
-  brief = false;
-}
-{
-  name = "Python-3.3.5.tgz";
-  md5 = "803a75927f8f241ca78633890c798021";
-  brief = true;
-}
-{
   name = "raptor2-2.0.9.tar.gz";
   md5 = "4ceb9316488b0ea01acf011023cf7fff";
   brief = false;
@@ -506,44 +387,8 @@
   brief = false;
 }
 {
-  name = "vigra1.6.0.tar.gz";
-  md5 = "d62650a6f908e85643e557a236ea989c";
-  brief = false;
-}
-{
-  name = "libvisio-0.1.1.tar.bz2";
-  md5 = "726c1f5be65eb7d649e0d48b63d920e7";
-  brief = true;
-}
-{
-  name = "libwpd-0.10.0.tar.bz2";
-  md5 = "0773d79a1f240ef9f4f20242b13c5bb7";
-  brief = true;
-}
-{
-  name = "libwpg-0.3.0.tar.bz2";
-  md5 = "17da9770cb8b317b7633f9807b32b71a";
-  brief = true;
-}
-{
-  name = "libwps-0.3.1.tar.bz2";
-  md5 = "a111d9ef5a0dab564e9aec0f2cf8d218";
-  brief = true;
-}
-{
   name = "xsltml_2.1.2.zip";
   md5 = "a7983f859eafb2677d7ff386a023bc40";
   brief = false;
 }
-{
-  name = "zlib-1.2.8.tar.gz";
-  md5 = "44d667c142d7cda120332623eab69f40";
-  brief = true;
-}
-{
-  name = "libgltf-0.0.0.tar.bz2";
-  md5 = "ca5436e916bfe70694adfe2607782786";
-  brief = true;
-  subDir = "libgltf/";
-}
 ]
diff --git a/pkgs/applications/office/mendeley/default.nix b/pkgs/applications/office/mendeley/default.nix
index b0c3e58cfbb..ea6d565a10b 100644
--- a/pkgs/applications/office/mendeley/default.nix
+++ b/pkgs/applications/office/mendeley/default.nix
@@ -1,5 +1,5 @@
 { fetchurl, stdenv, dpkg, makeWrapper, which
-,gcc, xlibs, qt4, zlib
+,gcc, xorg, qt4, zlib
 , ...}:
 
 assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
@@ -24,7 +24,7 @@ let
   deps = [
     gcc.cc
     qt4
-    xlibs.libX11
+    xorg.libX11
     zlib
   ];
 
diff --git a/pkgs/applications/office/mmex/default.nix b/pkgs/applications/office/mmex/default.nix
index 2940569ef65..c45eb7d53d0 100644
--- a/pkgs/applications/office/mmex/default.nix
+++ b/pkgs/applications/office/mmex/default.nix
@@ -31,5 +31,6 @@ in
       license = stdenv.lib.licenses.gpl2Plus;
       maintainers = with stdenv.lib.maintainers; [viric];
       platforms = with stdenv.lib.platforms; linux;
+      broken = true;
     };
   }
diff --git a/pkgs/applications/office/osmo/default.nix b/pkgs/applications/office/osmo/default.nix
new file mode 100644
index 00000000000..6da3bf6df83
--- /dev/null
+++ b/pkgs/applications/office/osmo/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl, pkgconfig, gtk, libxml2, gettext, libical, libnotify
+, libarchive, gtkspell, webkitgtk2, libgringotts }:
+
+stdenv.mkDerivation rec {
+  name = "osmo-${version}";
+  version = "0.2.14";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/osmo-pim/${name}.tar.gz";
+    sha256 = "0vaayrmyiqn010gr11drmhkkg8fkxdmla3gwj9v3zvp5x44kab05";
+  };
+
+  buildInputs = [ pkgconfig gtk libxml2 gettext libical libnotify libarchive
+    gtkspell webkitgtk2 libgringotts ];
+
+  meta = with stdenv.lib; {
+    description = "A handy personal organizer";
+    homepage = http://clayo.org/osmo/;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ pSub ];
+  };
+}
diff --git a/pkgs/applications/office/pinpoint/default.nix b/pkgs/applications/office/pinpoint/default.nix
index 0c3297ccc93..750fca15028 100644
--- a/pkgs/applications/office/pinpoint/default.nix
+++ b/pkgs/applications/office/pinpoint/default.nix
@@ -3,17 +3,19 @@
 
 stdenv.mkDerivation rec {
   name = "pinpoint-${version}";
-  version = "0.1.4";
+  version = "0.1.6";
   src = fetchurl {
-    url = "http://ftp.gnome.org/pub/GNOME/sources/pinpoint/0.1/${name}.tar.bz2";
-    sha256 = "26df7ba171d13f697c30c272460989b0f1b45e70c797310878a589ed5a6a47de";
+    url = "http://ftp.gnome.org/pub/GNOME/sources/pinpoint/0.1/${name}.tar.xz";
+    sha256 = "0jzkf74w75paflnvsil2y6qsyaqgxf6akz97176xdg6qri4nwal1";
   };
   buildInputs = [ pkgconfig autoconf automake clutter clutter-gst gdk_pixbuf
                   cairo ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = https://wiki.gnome.org/action/show/Apps/Pinpoint;
     description = "A tool for making hackers do excellent presentations";
-    license = stdenv.lib.licenses.lgpl21;
+    license = licenses.lgpl21;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ pSub ];
   };
 }
diff --git a/pkgs/applications/office/scribus/default.nix b/pkgs/applications/office/scribus/default.nix
index d0d6fd136ef..720a07afcfa 100644
--- a/pkgs/applications/office/scribus/default.nix
+++ b/pkgs/applications/office/scribus/default.nix
@@ -3,11 +3,11 @@
 , zlib, libpng, xorg, cairo, podofo, aspell, boost, cmake }:
 
 stdenv.mkDerivation rec {
-  name = "scribus-1.4.4";
+  name = "scribus-1.4.5";
 
   src = fetchurl {
-    url = "mirror://sourceforge/scribus/scribus/${name}.tar.xz";
-    sha256 = "1bhp09x8rgdhyq8b516226nn0p7pxd2arkfkf2vvvklca5arsfx4";
+    url = "mirror://sourceforge/scribus/scribus/${name}.tar.bz2";
+    sha256 = "1644ym79q7a1m5xf3xl1wf4kdk870np911jmpqdv2syjc42nyw4z";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/office/skrooge/default.nix b/pkgs/applications/office/skrooge/default.nix
index 52dd08e1e0d..712725f5275 100644
--- a/pkgs/applications/office/skrooge/default.nix
+++ b/pkgs/applications/office/skrooge/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, libxslt, kdelibs, kdepimlibs, grantlee, qjson, qca2, libofx, sqlite, gettext, boost }:
+{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig, shared_mime_info
+, libxslt, kdelibs, kdepimlibs, grantlee, qjson, qca2, libofx, sqlite, boost }:
 
 stdenv.mkDerivation rec {
   name = "skrooge-1.10.0";
@@ -10,7 +11,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ libxslt kdelibs kdepimlibs grantlee qjson qca2 libofx sqlite boost ];
 
-  nativeBuildInputs = [ gettext ];
+  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig shared_mime_info ];
 
   meta = {
     inherit (kdelibs.meta) platforms;
diff --git a/pkgs/applications/office/todo.txt-cli/default.nix b/pkgs/applications/office/todo.txt-cli/default.nix
index eb4c31ed9d2..70d4a0bf888 100644
--- a/pkgs/applications/office/todo.txt-cli/default.nix
+++ b/pkgs/applications/office/todo.txt-cli/default.nix
@@ -22,7 +22,6 @@ in stdenv.mkDerivation {
     description = "Simple plaintext todo list manager";
     homepage = "http://todotxt.com";
     license = stdenv.lib.licenses.gpl3;
-    maintainers = [ stdenv.lib.maintainers.shlevy ];
     platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/office/zanshin/default.nix b/pkgs/applications/office/zanshin/default.nix
index 12334288254..7ae758d7e4f 100644
--- a/pkgs/applications/office/zanshin/default.nix
+++ b/pkgs/applications/office/zanshin/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, kdelibs, kdepimlibs, boost }:
+{ stdenv, fetchurl, automoc4, cmake, perl, pkgconfig
+, kdelibs, kdepimlibs, boost }:
 
 stdenv.mkDerivation rec {
   name = "zanshin-0.2.1";
@@ -8,6 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "155k72vk7kw0p0x9dhlky6q017kanzcbwvp4dpf1hcbr1dsr55fx";
   };
 
+  nativeBuildInputs = [ automoc4 cmake perl pkgconfig ];
+
   buildInputs = [ kdelibs kdepimlibs boost ];
 
   meta = {
diff --git a/pkgs/applications/office/zim/default.nix b/pkgs/applications/office/zim/default.nix
index ac8059fc1d1..84a5680b1f4 100644
--- a/pkgs/applications/office/zim/default.nix
+++ b/pkgs/applications/office/zim/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   name = "zim-${version}";
-  version = "0.62";
+  version = "0.63";
   namePrefix = "";
   
   src = fetchurl {
     url = "http://zim-wiki.org/downloads/${name}.tar.gz";
-    sha256 = "1hmx24jjazqvs3z6h10jl8wrqxyvvk0wc807v222vaf1sbmjmmhr";
+    sha256 = "077vf4h0hjmbk8bxj9l0z9rxcb3dw642n32lvfn6vjdna1qm910m";
   };
 
   propagatedBuildInputs = [ pythonPackages.sqlite3 pygtk /*pythonPackages.pyxdg*/ pygobject ];
diff --git a/pkgs/applications/office/zotero/default.nix b/pkgs/applications/office/zotero/default.nix
index 9283072c0c1..be1729b57c9 100644
--- a/pkgs/applications/office/zotero/default.nix
+++ b/pkgs/applications/office/zotero/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, bash, firefox, perl, unzipNLS, xlibs }:
+{ stdenv, fetchurl, bash, firefox, perl, unzipNLS, xorg }:
 
 let
 
diff --git a/pkgs/applications/office/zotero/firefox-bin/default.nix b/pkgs/applications/office/zotero/firefox-bin/default.nix
index 0018f00a366..edf56c3eb4d 100644
--- a/pkgs/applications/office/zotero/firefox-bin/default.nix
+++ b/pkgs/applications/office/zotero/firefox-bin/default.nix
@@ -30,8 +30,8 @@
 , nspr
 , nss
 , pango
-, heimdal
-, pulseaudio
+, libheimdal
+, libpulseaudio
 , systemd
 }:
 
@@ -102,8 +102,8 @@ stdenv.mkDerivation {
       nspr
       nss
       pango
-      heimdal
-      pulseaudio
+      libheimdal
+      libpulseaudio
       systemd
     ] + ":" + stdenv.lib.makeSearchPath "lib64" [
       stdenv.cc.cc
diff --git a/pkgs/applications/science/astronomy/stellarium/default.nix b/pkgs/applications/science/astronomy/stellarium/default.nix
index ddcf5ba7152..e77e848bed2 100644
--- a/pkgs/applications/science/astronomy/stellarium/default.nix
+++ b/pkgs/applications/science/astronomy/stellarium/default.nix
@@ -1,15 +1,14 @@
-{ stdenv, fetchurl, cmake, freetype, libpng, mesa, gettext, openssl, qt5, perl
-, libiconv }:
+{ stdenv, fetchurl, cmake, freetype, libpng, mesa, gettext, openssl, qt5Full, perl, libiconv }:
 
 stdenv.mkDerivation rec {
-  name = "stellarium-0.13.2";
+  name = "stellarium-0.13.3";
 
   src = fetchurl {
     url = "mirror://sourceforge/stellarium/${name}.tar.gz";
-    sha256 = "1asrq1v6vjzxd2zz92brdfs5f5b1qf8zwd7k2dpg3dl4shl8wwg5";
+    sha256 = "1ml6z2xda4vx61agdz54x8fw1b115gwc7rcy0zhz1jh6g5jvf0ij";
   };
 
-  buildInputs = [ cmake freetype libpng mesa gettext openssl qt5.base qt5.quick1 perl libiconv ];
+  buildInputs = [ cmake freetype libpng mesa gettext openssl perl libiconv qt5Full ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/science/biology/arb/default.nix b/pkgs/applications/science/biology/arb/default.nix
deleted file mode 100644
index 2f622e94057..00000000000
--- a/pkgs/applications/science/biology/arb/default.nix
+++ /dev/null
@@ -1,86 +0,0 @@
-{ stdenv, fetchurl, glew, mesa, libpng, lesstif, lynx, freeglut
-, libtiff, rxp, sablotron, perl, jdk, transfig, gv, gnuplot, xorg }:
-
-# NOTE: This package does not build on 64-bit systems. Because of some faulty
-# int->pointer arithmatic. The build scripts are abnormal - but it appears to
-# work.
-
-stdenv.mkDerivation {
-  name = "arb-2007-Dec-07";
-  
-  src = fetchurl {
-    url = http://download.arb-home.de/release/2007_12_07/arbsrc.tgz;
-    sha256 = "04l7qj0wigg1h56a9d70hxhdr343v3dg5dhqrc7fahc1v4h8f1rd";
-  };
-
-  patches = [ ./makefile.patch ];
-
-  buildInputs =
-    [ glew mesa libpng xorg.libXpm lesstif lynx freeglut libtiff rxp
-      sablotron xorg.libXaw perl jdk transfig xorg.libX11 xorg.libXext
-      xorg.libXt gv gnuplot
-    ];
-
-  unpackPhase = ''
-    tar xzf $src
-  '';
-
-  buildPhase = ''
-    echo `make`   # avoids error signal
-    export ARBHOME=`pwd`
-    export PATH=$ARBHOME/bin:$PATH
-    make all
-  '';
-
-  installPhase = ''
-    mkdir -p $out/lib
-    shareddir=/nix/var/lib/arb
-    # link out writable shared location lib/pts
-    mkdir -p $shareddir/lib/pts
-    cp -vau lib/pts $shareddir/lib
-    rm -vrf lib/pts
-    ln -vs $shareddir/lib/pts $out/lib/pts
-    chmod a+rwx $shareddir/lib/pts
-    # link out writable shared location lib/nas/
-    mkdir -p $shareddir/lib/nas
-    cp -vau lib/nas $shareddir/lib
-    rm -vrf lib/nas
-    ln -vs $shareddir/lib/nas $out/lib/nas
-    chmod a+rwx $shareddir/lib/nas
-    # link out shared lib/pixmaps (not sure about this, yet):
-    mkdir -p $shareddir/lib/pixmaps
-    cp -vau lib/pixmaps $shareddir/lib
-    rm -vrf lib/pixmaps
-    ln -vs $shareddir/lib/pixmaps $out/lib/pixmaps
-    chmod a+rwx $shareddir/lib/pixmaps
-    # bulk copy
-    cp -vau * $out
-    
-    # replace arb script
-    mv $out/bin/arb $out/bin/arb.orig
-    cat > $out/bin/arb << ARB 
-    #!/bin/sh
-
-    echo Starting Nix compiled arb from $out
-    echo Shared databases are located in $shareddir
-    # sometimes local profiles override these:
-    export ARBHOME=$out
-    export LD_LIBRARY=$ARBHOME/lib   
-
-    $out/bin/arb_ntree $*
-
-    ARB
-    
-    chmod +x $out/bin/arb
-  '';
-
-  meta = {
-    description     = "Software for sequence database handling and analysis";
-    longDescription = ''The ARB software is a graphically oriented package comprising various tools for sequence database handling and data analysis. A central database of processed (aligned) sequences and any type of additional data linked to the respective sequence entries is structured according to phylogeny or other user defined criteria. Note that this package includes its own older versions of clustal etc.''; 
-    license     = "non-free";
-    pkgMaintainer = "http://BioLib.open-bio.org/";
-    homepage    = http://www.arb-home.de/;
-    priority    = "10";   # because it includes binaries of clustal etc.
-    broken = true;
-  };
-}
diff --git a/pkgs/applications/science/biology/arb/makefile.patch b/pkgs/applications/science/biology/arb/makefile.patch
deleted file mode 100644
index 8e7962511af..00000000000
--- a/pkgs/applications/science/biology/arb/makefile.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -r a1e04cdafd13 Makefile
---- a/Makefile	Thu Sep 25 11:59:19 2008 +0200
-+++ b/Makefile	Thu Sep 25 11:59:27 2008 +0200
-@@ -109,7 +109,7 @@ endif
- 
- ALLOWED_GCC_295_VERSIONS=2.95.3
- ALLOWED_GCC_3xx_VERSIONS=3.2 3.3.1 3.3.3 3.3.4 3.3.5 3.3.6 3.4.0 3.4.2 3.4.3
--ALLOWED_GCC_4xx_VERSIONS=4.0.0 4.0.2 4.0.3 4.1.1 4.1.2 4.1.3 4.2.0 4.2.1 4.2.3
-+ALLOWED_GCC_4xx_VERSIONS=4.0.0 4.0.2 4.0.3 4.1.1 4.1.2 4.1.3 4.2.0 4.2.1 4.2.3 4.2.4
- ALLOWED_GCC_VERSIONS=$(ALLOWED_GCC_295_VERSIONS) $(ALLOWED_GCC_3xx_VERSIONS) $(ALLOWED_GCC_4xx_VERSIONS)
- 
- GCC_VERSION_FOUND=$(shell $(GCC) -dumpversion)
diff --git a/pkgs/applications/science/electronics/eagle/default.nix b/pkgs/applications/science/electronics/eagle/default.nix
index e4cb4685f16..da4894c11a8 100644
--- a/pkgs/applications/science/electronics/eagle/default.nix
+++ b/pkgs/applications/science/electronics/eagle/default.nix
@@ -13,11 +13,11 @@ in
 
 stdenv.mkDerivation rec {
   name = "eagle-${version}";
-  version = "6.5.0";
+  version = "6.6.0";
 
   src = fetchurl {
-    url = "ftp://ftp.cadsoft.de/eagle/program/6.5/eagle-lin-${version}.run";
-    sha256 = "17plwx2p8q2ylk0nzj5crfbdm7jc35pw7v3j8f4j81yl37l7bj22";
+    url = "ftp://ftp.cadsoft.de/eagle/program/6.6/eagle-lin-${version}.run";
+    sha256 = "0m5289daah85b2rwpivnh2z1573v6j4alzjy9hg78fkb9jdgbn0x";
   };
 
   desktopItem = makeDesktopItem {
diff --git a/pkgs/applications/science/electronics/fritzing/default.nix b/pkgs/applications/science/electronics/fritzing/default.nix
index f5a835423bd..1fa0a0d97b5 100644
--- a/pkgs/applications/science/electronics/fritzing/default.nix
+++ b/pkgs/applications/science/electronics/fritzing/default.nix
@@ -3,7 +3,7 @@
 stdenv.mkDerivation rec {
 
   version = "0.9.0b";
-  name = "fritzing";
+  name = "fritzing-${version}";
 
   src = fetchurl {
     url = "http://fritzing.org/download/${version}/source-tarball/fritzing-${version}.source.tar_1.bz2";
diff --git a/pkgs/applications/science/electronics/geda/default.nix b/pkgs/applications/science/electronics/geda/default.nix
new file mode 100644
index 00000000000..03ddf835343
--- /dev/null
+++ b/pkgs/applications/science/electronics/geda/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, pkgconfig, guile, gtk, flex, gawk }:
+
+stdenv.mkDerivation rec {
+  name = "geda-${version}";
+  version = "1.8.2-20130925";
+
+  src = fetchurl {
+    url = "http://ftp.geda-project.org/geda-gaf/stable/v1.8/1.8.2/geda-gaf-1.8.2.tar.gz";
+    sha256 = "08dpa506xk4gjbbi8vnxcb640wq4ihlgmhzlssl52nhvxwx7gx5v";
+  };
+
+  configureFlags = "--disable-update-xdg-database";
+  buildInputs = [ pkgconfig guile gtk flex gawk ];
+
+  meta = with stdenv.lib; {
+    description = "Full GPL'd suite of Electronic Design Automation tools";
+    homepage = http://www.geda-project.org/;
+    maintainers = with maintainers; [ pjones ];
+    platforms = platforms.linux;
+    license = licenses.gpl2;
+  };
+}
diff --git a/pkgs/applications/science/electronics/gtkwave/default.nix b/pkgs/applications/science/electronics/gtkwave/default.nix
index 1a5b1f92276..36c3b7e899d 100644
--- a/pkgs/applications/science/electronics/gtkwave/default.nix
+++ b/pkgs/applications/science/electronics/gtkwave/default.nix
@@ -1,10 +1,10 @@
 {stdenv, fetchurl, gtk, gperf, pkgconfig, bzip2, tcl, tk, judy, xz}:
 stdenv.mkDerivation rec {
-  name = "gtkwave-3.3.64";
+  name = "gtkwave-3.3.66";
 
   src = fetchurl {
     url = "mirror://sourceforge/gtkwave/${name}.tar.gz";
-    sha256 = "05bisdh82rsbs0pj0687dzbp0s30p3wzq4gypb9bbjaxwnrmdsfs";
+    sha256 = "17mrmgr6zzl1x1qml0wmjjhcbw7bg3w4mqy60rsy0z6gxd8hikh4";
   };
 
   buildInputs = [ gtk gperf pkgconfig bzip2 tcl tk judy xz ];
diff --git a/pkgs/applications/science/electronics/kicad/default.nix b/pkgs/applications/science/electronics/kicad/default.nix
index 1fc97abef92..0762002b8a8 100644
--- a/pkgs/applications/science/electronics/kicad/default.nix
+++ b/pkgs/applications/science/electronics/kicad/default.nix
@@ -4,13 +4,13 @@ stdenv.mkDerivation rec {
   name = "kicad-20131025";
 
   src = fetchbzr {
-    url = "https://code.launchpad.net/~kicad-stable-committers/kicad/stable";
+    url = "https://code.launchpad.net/kicad/stable";
     rev = 4024;
     sha256 = "1sv1l2zpbn6439ccz50p05hvqg6j551aqra551wck9h3929ghly5";
   };
 
   srcLibrary = fetchbzr {
-    url = "http://bazaar.launchpad.net/~kicad-lib-committers/kicad/library";
+    url = "http://bazaar.launchpad.net/~kicad-product-committers/kicad/library";
     rev = 293;
     sha256 = "1wn9a4nhqyjzzfkq6xm7ag8n5n10xy7gkq6i7yry7wxini7pzv1i";
   };
diff --git a/pkgs/applications/science/electronics/ngspice/default.nix b/pkgs/applications/science/electronics/ngspice/default.nix
index 493af97d156..4f887f511ae 100644
--- a/pkgs/applications/science/electronics/ngspice/default.nix
+++ b/pkgs/applications/science/electronics/ngspice/default.nix
@@ -1,7 +1,7 @@
 {stdenv, fetchurl, readline, bison, libX11, libICE, libXaw, libXext}:
 
 stdenv.mkDerivation {
-  name = "ng-spice-rework-25";
+  name = "ngspice-25";
 
   src = fetchurl {
     url = "mirror://sourceforge/ngspice/ngspice-25.tar.gz";
@@ -12,11 +12,11 @@ stdenv.mkDerivation {
 
   configureFlags = [ "--enable-x" "--with-x" "--with-readline" ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "The Next Generation Spice (Electronic Circuit Simulator)";
     homepage = "http://ngspice.sourceforge.net";
-    license = ["BSD" "GPLv2"];
-    maintainers = with stdenv.lib.maintainers; [viric];
-    platforms = with stdenv.lib.platforms; linux;
+    license = with licenses; [ "BSD" gpl2 ];
+    maintainers = with maintainers; [ viric ];
+    platforms = with platforms; linux;
   };
 }
diff --git a/pkgs/applications/science/electronics/qfsm/default.nix b/pkgs/applications/science/electronics/qfsm/default.nix
index 160c530e722..8b09b7dd37d 100644
--- a/pkgs/applications/science/electronics/qfsm/default.nix
+++ b/pkgs/applications/science/electronics/qfsm/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, qt4, cmake, graphviz, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "qfsm-0.53.0";
+  name = "qfsm-0.54.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/qfsm/${name}-Source.tar.bz2";
-    sha256 = "1fx99dyai8zhs8s6mbr1i1467mnv1pf0ymh6mr0jm68mzj2jyzx4";
+    sha256 = "0rl7bc5cr29ng67yij4akciyid9z7npal812ys4c3m229vjvflrb";
   };
 
   buildInputs = [ qt4 cmake graphviz pkgconfig ];
@@ -18,6 +18,5 @@ stdenv.mkDerivation rec {
     description = "Graphical editor for finite state machines";
     homepage = "http://qfsm.sourceforge.net/";
     license = stdenv.lib.licenses.gpl3Plus;
-    broken = true;
   };
 }
diff --git a/pkgs/applications/science/electronics/verilator/default.nix b/pkgs/applications/science/electronics/verilator/default.nix
new file mode 100644
index 00000000000..825f342b443
--- /dev/null
+++ b/pkgs/applications/science/electronics/verilator/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, perl, flex, bison }:
+
+stdenv.mkDerivation rec {
+  name    = "verilator-${version}";
+  version = "3.874";
+
+  src = fetchurl {
+    url    = "http://www.veripool.org/ftp/${name}.tgz";
+    sha256 = "070binwp0jnashi6w45km26vrn6200b8hdg4179lcqyzdxi8c06j";
+  };
+
+  enableParallelBuilding = true;
+  buildInputs = [ perl flex bison ];
+
+  meta = {
+    description = "Fast and robust (System)Verilog simulator/compiler";
+    homepage    = "http://www.veripool.org/wiki/verilator";
+    license     = stdenv.lib.licenses.lgpl3;
+    platforms   = stdenv.lib.platforms.linux;
+    maintainers = with stdenv.lib.maintainers; [ thoughtpolice ];
+  };
+}
diff --git a/pkgs/applications/science/geometry/drgeo/default.nix b/pkgs/applications/science/geometry/drgeo/default.nix
index c18a6ed7426..63b757945d2 100644
--- a/pkgs/applications/science/geometry/drgeo/default.nix
+++ b/pkgs/applications/science/geometry/drgeo/default.nix
@@ -1,4 +1,4 @@
-args : with args; 
+args @ { libxml2, perl, intltool, libtool, pkgconfig, gtk, ... } : with args;
 let version = lib.attrByPath ["version"] "1.1.0" args; in
 rec {
   src = fetchurl {
@@ -17,7 +17,7 @@ rec {
   doPreBuild = fullDepEntry (''
     cp drgeo.desktop.in drgeo.desktop
   '') ["minInit" "doUnpack"];
-      
+
   name = "drgeo-" + version;
   meta = {
     description = "Interactive geometry program";
diff --git a/pkgs/applications/science/geometry/tetgen/1.4.nix b/pkgs/applications/science/geometry/tetgen/1.4.nix
new file mode 100644
index 00000000000..d542bf87c79
--- /dev/null
+++ b/pkgs/applications/science/geometry/tetgen/1.4.nix
@@ -0,0 +1,21 @@
+{stdenv, fetchurl}:
+
+stdenv.mkDerivation rec {
+  name = "tetgen-1.4.3";
+
+  src = fetchurl {
+    url = "${meta.homepage}/files/tetgen1.4.3.tar.gz";
+    sha256 = "0d70vjqdapmy1ghlsxjlvl5z9yp310zw697bapc4zxmp0sxi29wm";
+  };
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp tetgen $out/bin
+  '';
+
+  meta = {
+    description = "Quality Tetrahedral Mesh Generator and 3D Delaunay Triangulator";
+    homepage = "http://tetgen.org/";
+    license = stdenv.lib.licenses.mit;
+  };
+}
diff --git a/pkgs/applications/science/geometry/tetgen/default.nix b/pkgs/applications/science/geometry/tetgen/default.nix
index ddfb92def95..8a0565fce10 100644
--- a/pkgs/applications/science/geometry/tetgen/default.nix
+++ b/pkgs/applications/science/geometry/tetgen/default.nix
@@ -1,11 +1,12 @@
 {stdenv, fetchurl}: 
 
-stdenv.mkDerivation rec {
-  name = "tetgen-1.4.3";
+let version = "1.5.0"; in
+stdenv.mkDerivation {
+  name = "tetgen-${version}";
 
   src = fetchurl {
-    url = "${meta.homepage}/files/tetgen1.4.3.tar.gz";
-    sha256 = "0d70vjqdapmy1ghlsxjlvl5z9yp310zw697bapc4zxmp0sxi29wm";
+    url = "http://wias-berlin.de/software/tetgen/1.5/src/tetgen${version}.tar.gz";
+    sha256 = "1www3x2r6r7pck43ismlwy82x0j6xj2qiwvfs2pn687gsmhlh4ad";
   };
 
   installPhase = ''
@@ -14,8 +15,9 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
+    inherit version;
     description = "Quality Tetrahedral Mesh Generator and 3D Delaunay Triangulator";
     homepage = "http://tetgen.org/";
-    license = stdenv.lib.licenses.mit;
+    license = stdenv.lib.licenses.agpl3Plus;
   };
 }
diff --git a/pkgs/applications/science/logic/abc/default.nix b/pkgs/applications/science/logic/abc/default.nix
index 174dfe8f2b2..236045fa335 100644
--- a/pkgs/applications/science/logic/abc/default.nix
+++ b/pkgs/applications/science/logic/abc/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "abc-verifier-${version}";
-  version = "20150406";
+  version = "20150614";
 
   src = fetchhg {
     url    = "https://bitbucket.org/alanmi/abc";
-    rev    = "7d9c50a17d8676ad0c9792bb87102d7cb4b10667";
-    sha256 = "1gg5jjfjjnv0fl7jsz37hzd9dpv58r8p0q8qvms0r289fcdxalcx";
+    rev    = "38661894bc1287cad9bd35978bd252dbfe3e6c56";
+    sha256 = "04v0hkvj501r10pj3yrqrk2463d1d7lhl8dzfjwkmlbmlmpjlvvv";
   };
 
   buildInputs = [ readline ];
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "Sequential Logic Synthesis and Formal Verification";
+    description = "A tool for squential logic synthesis and ormal verification";
     homepage    = "www.eecs.berkeley.edu/~alanmi/abc/abc.htm";
     license     = stdenv.lib.licenses.mit;
     platforms   = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/science/logic/acgtk/default.nix b/pkgs/applications/science/logic/acgtk/default.nix
index 41c6cf75f32..0fd90ac13b6 100644
--- a/pkgs/applications/science/logic/acgtk/default.nix
+++ b/pkgs/applications/science/logic/acgtk/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, dypgen, bolt, ansiterminal,
+{ stdenv, fetchurl, ocaml, findlib, dypgen, bolt, ansiterminal, camlp4,
   buildBytecode ? true,
   buildNative ? true,
   installExamples ? true,
@@ -22,11 +22,16 @@ stdenv.mkDerivation {
     sha256 = "1k1ldqg34bwmgdpmi9gry9czlsk85ycjxnkd25fhlf3mmgg4n9p6";
   };
 
-  buildInputs = [ ocaml findlib dypgen bolt ansiterminal ];
+  buildInputs = [ ocaml findlib dypgen bolt ansiterminal camlp4 ];
 
   patches = [ ./install-emacs-to-site-lisp.patch
               ./use-nix-ocaml-byteflags.patch ];
 
+  postPatch = stdenv.lib.optionalString (camlp4 != null) ''
+    substituteInPlace src/Makefile.master.in \
+      --replace "+camlp4" "${camlp4}/lib/ocaml/${getVersion ocaml}/site-lib/camlp4/"
+  '';
+
   # The bytecode executable is dependent on the dynamic library provided by
   # ANSITerminal. We can use the -dllpath flag of ocamlc (analogous to
   # -rpath) to make sure that ocamlrun is able to link the library at
diff --git a/pkgs/applications/science/logic/coq/8.3.nix b/pkgs/applications/science/logic/coq/8.3.nix
index 63aaa02e67a..adae2dd067a 100644
--- a/pkgs/applications/science/logic/coq/8.3.nix
+++ b/pkgs/applications/science/logic/coq/8.3.nix
@@ -1,6 +1,9 @@
 # - coqide compilation can be disabled by setting lablgtk to null;
+# - The csdp program used for the Micromega tactic is statically referenced.
+#   However, coq can build without csdp by setting it to null.
+#   In this case some Micromega tactics will search the user's path for the csdp program and will fail if it is not found.
 
-{stdenv, fetchurl, ocaml, findlib, camlp5, ncurses, lablgtk ? null}:
+{ stdenv, make, fetchurl, ocaml, findlib, camlp5, ncurses, lablgtk ? null, csdp ? null }:
 
 let 
   version = "8.3pl4";
@@ -11,6 +14,10 @@ let
     "\"-I\"; \"+lablgtk2\"" \
     "\"-I\"; \"$(echo "${lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)\"; \"-I\"; \"$(echo "${lablgtk}"/lib/ocaml/*/site-lib/stublibs)\""
   '' else "";
+  csdpPatch = if csdp != null then ''
+    substituteInPlace plugins/micromega/sos.ml --replace "; csdp" "; ${csdp}/bin/csdp"
+    substituteInPlace plugins/micromega/coq_micromega.ml --replace "System.search_exe_in_path \"csdp\"" "Some \"${csdp}/bin/csdp\""
+  '' else "";
 in
 
 stdenv.mkDerivation {
@@ -21,7 +28,7 @@ stdenv.mkDerivation {
     sha256 = "17d3lmchmqir1rawnr52g78srg4wkd7clzpzfsivxc4y1zp6rwkr";
   };
 
-  buildInputs = [ ocaml findlib camlp5 ncurses lablgtk ];
+  buildInputs = [ make ocaml findlib camlp5 ncurses lablgtk ];
 
   prefixKey = "-prefix ";
 
@@ -44,6 +51,7 @@ stdenv.mkDerivation {
     substituteInPlace configure --replace "/bin/uname" "$UNAME"
     substituteInPlace tools/beautify-archive --replace "/bin/rm" "$RM"
     ${idePatch}
+    ${csdpPatch}
   '';
 
   # This post install step is needed to build ssrcoqide from the ssreflect package
diff --git a/pkgs/applications/science/logic/coq/8.5.nix b/pkgs/applications/science/logic/coq/8.5.nix
index 87b476249f4..2afa18d40a4 100644
--- a/pkgs/applications/science/logic/coq/8.5.nix
+++ b/pkgs/applications/science/logic/coq/8.5.nix
@@ -1,12 +1,19 @@
 # - coqide compilation can be disabled by setting lablgtk to null;
+# - The csdp program used for the Micromega tactic is statically referenced.
+#   However, coq can build without csdp by setting it to null.
+#   In this case some Micromega tactics will search the user's path for the csdp program and will fail if it is not found.
 
-{stdenv, fetchurl, writeText, pkgconfig, ocaml, findlib, camlp5, ncurses, lablgtk ? null}:
+{stdenv, fetchurl, writeText, pkgconfig, ocaml, findlib, camlp5, ncurses, lablgtk ? null, csdp ? null}:
 
 let
   version = "8.5b2";
   coq-version = "8.5";
   buildIde = lablgtk != null;
   ideFlags = if buildIde then "-lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else "";
+  csdpPatch = if csdp != null then ''
+    substituteInPlace plugins/micromega/sos.ml --replace "; csdp" "; ${csdp}/bin/csdp"
+    substituteInPlace plugins/micromega/coq_micromega.ml --replace "System.is_in_system_path \"csdp\"" "true"
+  '' else "";
 in
 
 stdenv.mkDerivation {
@@ -28,6 +35,7 @@ stdenv.mkDerivation {
     substituteInPlace configure --replace "/bin/uname" "$UNAME"
     substituteInPlace tools/beautify-archive --replace "/bin/rm" "$RM"
     substituteInPlace Makefile.build --replace "ifeq (\$(ARCH),Darwin)" "ifeq (\$(ARCH),Darwinx)"
+    ${csdpPatch}
   '';
 
   setupHook = writeText "setupHook.sh" ''
diff --git a/pkgs/applications/science/logic/coq/HEAD.nix b/pkgs/applications/science/logic/coq/HEAD.nix
index 7b5d1ce62b4..3656b5cab19 100644
--- a/pkgs/applications/science/logic/coq/HEAD.nix
+++ b/pkgs/applications/science/logic/coq/HEAD.nix
@@ -1,12 +1,19 @@
 # - coqide compilation can be disabled by setting lablgtk to null;
+# - The csdp program used for the Micromega tactic is statically referenced.
+#   However, coq can build without csdp by setting it to null.
+#   In this case some Micromega tactics will search the user's path for the csdp program and will fail if it is not found.
 
-{stdenv, fetchgit, writeText, pkgconfig, ocaml, findlib, camlp5, ncurses, lablgtk ? null}:
+{stdenv, fetchgit, writeText, pkgconfig, ocaml, findlib, camlp5, ncurses, lablgtk ? null, csdp ? null}:
 
 let
   version = "8.5pre-0c999f02";
   coq-version = "8.5";
   buildIde = lablgtk != null;
   ideFlags = if buildIde then "-lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else "";
+  csdpPatch = if csdp != null then ''
+    substituteInPlace plugins/micromega/sos.ml --replace "; csdp" "; ${csdp}/bin/csdp"
+    substituteInPlace plugins/micromega/coq_micromega.ml --replace "System.is_in_system_path \"csdp\"" "true"
+  '' else "";
 in
 
 stdenv.mkDerivation {
@@ -31,6 +38,7 @@ stdenv.mkDerivation {
     substituteInPlace configure --replace "/bin/uname" "$UNAME"
     substituteInPlace tools/beautify-archive --replace "/bin/rm" "$RM"
     substituteInPlace Makefile.build --replace "ifeq (\$(ARCH),Darwin)" "ifeq (\$(ARCH),Darwinx)"
+    ${csdpPatch}
   '';
 
   setupHook = writeText "setupHook.sh" ''
diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix
index 5a8fa9ff4dc..38ba14e83cf 100644
--- a/pkgs/applications/science/logic/coq/default.nix
+++ b/pkgs/applications/science/logic/coq/default.nix
@@ -1,12 +1,19 @@
 # - coqide compilation can be disabled by setting lablgtk to null;
+# - The csdp program used for the Micromega tactic is statically referenced.
+#   However, coq can build without csdp by setting it to null.
+#   In this case some Micromega tactics will search the user's path for the csdp program and will fail if it is not found.
 
-{stdenv, fetchurl, pkgconfig, writeText, ocaml, findlib, camlp5, ncurses, lablgtk ? null}:
+{stdenv, fetchurl, pkgconfig, writeText, ocaml, findlib, camlp5, ncurses, lablgtk ? null, csdp ? null}:
 
 let
   version = "8.4pl6";
   coq-version = "8.4";
   buildIde = lablgtk != null;
   ideFlags = if buildIde then "-lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else "";
+  csdpPatch = if csdp != null then ''
+    substituteInPlace plugins/micromega/sos.ml --replace "; csdp" "; ${csdp}/bin/csdp"
+    substituteInPlace plugins/micromega/coq_micromega.ml --replace "System.is_in_system_path \"csdp\"" "true"
+  '' else "";
 in
 
 stdenv.mkDerivation {
@@ -29,6 +36,7 @@ stdenv.mkDerivation {
     RM=$(type -tp rm)
     substituteInPlace configure --replace "/bin/uname" "$UNAME"
     substituteInPlace tools/beautify-archive --replace "/bin/rm" "$RM"
+    ${csdpPatch}
   '';
 
   preConfigure = ''
diff --git a/pkgs/applications/science/logic/cvc4/default.nix b/pkgs/applications/science/logic/cvc4/default.nix
index 5b2e9c54d6f..769f86d5d77 100644
--- a/pkgs/applications/science/logic/cvc4/default.nix
+++ b/pkgs/applications/science/logic/cvc4/default.nix
@@ -1,23 +1,23 @@
-{stdenv, fetchurl, gmp, libantlr3c, boost}:
+{ stdenv, fetchurl, gmp, libantlr3c, boost, autoreconfHook }:
+
+stdenv.mkDerivation rec {
+  name = "cvc4-${version}";
+  version = "1.4";
 
-stdenv.mkDerivation {
-  name = "cvc4-1.4";
   src = fetchurl {
-    url = http://cvc4.cs.nyu.edu/builds/src/cvc4-1.4.tar.gz;
+    url = "http://cvc4.cs.nyu.edu/builds/src/cvc4-${version}.tar.gz";
     sha256 = "093h7zgv4z4ad503j30dpn8k2pz9m90pvd7gi5axdmwsxgwlzzkn";
   };
 
-  buildInputs = [ gmp libantlr3c boost ];
-
+  buildInputs = [ gmp libantlr3c boost autoreconfHook ];
   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 ];
+    description = "A high-performance theorem prover and SMT solver";
+    homepage    = http://cvc4.cs.nyu.edu/web/;
+    license     = licenses.bsd3;
+    platforms   = platforms.unix;
+    maintainers = with maintainers; [ vbgl thoughtpolice ];
   };
 }
diff --git a/pkgs/applications/science/logic/eprover/default.nix b/pkgs/applications/science/logic/eprover/default.nix
index 35e70a4b0d7..97fe7065b85 100644
--- a/pkgs/applications/science/logic/eprover/default.nix
+++ b/pkgs/applications/science/logic/eprover/default.nix
@@ -1,13 +1,13 @@
-{ stdenv, fetchurl, which, texLive }:
+{ stdenv, fetchurl, which }:
 let
   s = # Generated upstream information
   rec {
     baseName="eprover";
-    version="1.8";
+    version="1.9";
     name="${baseName}-${version}";
-    hash="0bl4dr7k6simwdvdyxhnjkiz4nm5y0nr8bfhc34zk0360i9m6sk3";
-    url="http://www4.in.tum.de/~schulz/WORK/E_DOWNLOAD/V_1.8/E.tgz";
-    sha256="0bl4dr7k6simwdvdyxhnjkiz4nm5y0nr8bfhc34zk0360i9m6sk3";
+    hash="0vipapqjg0339lpc98vpvz58m6xkqrhgxylmp0hrnld4lrhmcdn4";
+    url="http://wwwlehre.dhbw-stuttgart.de/~sschulz/WORK/E_DOWNLOAD/V_1.9/E.tgz";
+    sha256="0vipapqjg0339lpc98vpvz58m6xkqrhgxylmp0hrnld4lrhmcdn4";
   };
 in
 stdenv.mkDerivation {
@@ -18,26 +18,22 @@ stdenv.mkDerivation {
     inherit (s) url sha256;
   };
 
-  buildInputs = [which texLive];
+  buildInputs = [ which ];
 
   preConfigure = "sed -e 's@^EXECPATH\\s.*@EXECPATH = '\$out'/bin@' -i Makefile.vars";
 
   buildPhase = "make install";
 
-  # HOME=. allows to build missing TeX formats
   installPhase = ''
     mkdir -p $out/bin
     make install
-    HOME=. make documentation
-    mkdir -p $out/share/doc
-    cp -r DOC $out/share/doc/EProver
     echo eproof -xAuto --tstp-in --tstp-out '"$@"' > $out/bin/eproof-tptp
     chmod a+x $out/bin/eproof-tptp
   '';
 
   meta = {
     inherit (s) version;
-    description = "E automated theorem prover";
+    description = "Automated theorem prover for full first-order logic with equality";
     maintainers = [stdenv.lib.maintainers.raskin];
     platforms = stdenv.lib.platforms.all;
   };
diff --git a/pkgs/applications/science/logic/eprover/default.upstream b/pkgs/applications/science/logic/eprover/default.upstream
index fb2d80fafae..f871d4985bb 100644
--- a/pkgs/applications/science/logic/eprover/default.upstream
+++ b/pkgs/applications/science/logic/eprover/default.upstream
@@ -1,3 +1,3 @@
-url http://www4.informatik.tu-muenchen.de/~schulz/E/Download.html
+url http://wwwlehre.dhbw-stuttgart.de/~sschulz/E/Download.html
 version_link '[.]tgz$'
 version '.*[/]V_([0-9.]+)[/].*' '\1'
diff --git a/pkgs/applications/science/logic/gappa/default.nix b/pkgs/applications/science/logic/gappa/default.nix
new file mode 100644
index 00000000000..71114d2f9e1
--- /dev/null
+++ b/pkgs/applications/science/logic/gappa/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl, gmp, mpfr, boost }:
+
+stdenv.mkDerivation {
+  name = "gappa-1.2";
+
+  src = fetchurl {
+    url = https://gforge.inria.fr/frs/download.php/file/34787/gappa-1.2.0.tar.gz;
+    sha256 = "03hfzmaf5jm54sjpbks20q7qixpmagrfbnyyc276vgmiyslk4dkh";
+  };
+
+  buildInputs = [ gmp mpfr boost.dev ];
+
+  buildPhase = "./remake";
+  installPhase = "./remake install";
+
+  meta = {
+    homepage = http://gappa.gforge.inria.fr/;
+    description = "Verifying and formally proving properties on numerical programs dealing with floating-point or fixed-point arithmetic";
+    license = with stdenv.lib.licenses; [ cecill20 gpl2 ];
+    maintainers = with stdenv.lib.maintainers; [ vbgl ];
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/applications/science/logic/hol/default.nix b/pkgs/applications/science/logic/hol/default.nix
index a7cdf7f3097..f8a57aebb6d 100644
--- a/pkgs/applications/science/logic/hol/default.nix
+++ b/pkgs/applications/science/logic/hol/default.nix
@@ -1,22 +1,33 @@
-{stdenv, fetchurl, polyml, graphviz, fontconfig, liberation_ttf,
+{stdenv, pkgs, fetchurl, graphviz, fontconfig, liberation_ttf,
  experimentalKernel ? true}:
 
 let
   pname = "hol4";
-  version = "k.8";
-  holsubdir = "hol-kananaskis-8";
+  vnum = "10";
+in
+
+let
+  version = "k.${vnum}";
+  longVersion = "kananaskis-${vnum}";
+  holsubdir = "hol-${longVersion}";
   kernelFlag = if experimentalKernel then "-expk" else "-stdknl";
 in
 
+let
+  polymlEnableShared = with pkgs; lib.overrideDerivation polyml (attrs: {
+    configureFlags = "--enable-shared";
+  });
+in
+
 stdenv.mkDerivation {
   name = "${pname}-${version}";
 
   src = fetchurl {
-    url = mirror://sourceforge/hol/hol/kananaskis-8/kananaskis-8.tar.gz;
-    sha256 = "5ce4c1e37301dbc38772694e98f1c7eabf69255908de204b280d8b2b1709e9d0";
+    url = "mirror://sourceforge/hol/hol/${longVersion}/${holsubdir}.tar.gz";
+    sha256 = "0x2wxksr305h1lrbklf6p42lp09rbhb4rsh74g0l70sgapyiac9b";
   };
 
-  buildInputs = [polyml graphviz fontconfig liberation_ttf];
+  buildInputs = [polymlEnableShared graphviz fontconfig liberation_ttf];
 
   buildCommand = ''
 
@@ -46,7 +57,7 @@ stdenv.mkDerivation {
     #sed -ie "/compute/,999 d" tools/build-sequence # for testing
 
     poly < tools/smart-configure.sml
-    
+
     bin/build ${kernelFlag} -symlink
 
     mkdir -p "$out/bin"
@@ -54,7 +65,7 @@ stdenv.mkDerivation {
     # ln -s $out/src/hol4.${version}/bin $out/bin
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Interactive theorem prover based on Higher-Order Logic";
     longDescription = ''
       HOL4 is the latest version of the HOL interactive proof
@@ -69,6 +80,7 @@ stdenv.mkDerivation {
       checking.
     '';
     homepage = "http://hol.sourceforge.net/";
-    license = stdenv.lib.licenses.bsd3;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ mudri ];
   };
 }
diff --git a/pkgs/applications/science/logic/hol_light/Makefile.patch b/pkgs/applications/science/logic/hol_light/Makefile.patch
new file mode 100644
index 00000000000..2cb05f27a4f
--- /dev/null
+++ b/pkgs/applications/science/logic/hol_light/Makefile.patch
@@ -0,0 +1,13 @@
+Index: Makefile
+===================================================================
+--- a/Makefile	(révision 199)
++++ b/Makefile	(copie de travail)
+@@ -59,7 +59,7 @@
+              then cp pa_j_3.1x_6.02.1.ml pa_j.ml; \
+              else if test ${CAMLP5_VERSION} = "6.02.2" -o ${CAMLP5_VERSION} = "6.02.3" -o ${CAMLP5_VERSION} = "6.03" -o ${CAMLP5_VERSION} = "6.04" -o ${CAMLP5_VERSION} = "6.05" -o ${CAMLP5_VERSION} = "6.06" ; \
+                   then cp pa_j_3.1x_6.02.2.ml pa_j.ml; \
+-                  else if test ${CAMLP5_VERSION} = "6.06" -o ${CAMLP5_VERSION} = "6.07" -o ${CAMLP5_VERSION} = "6.08" -o ${CAMLP5_VERSION} = "6.09" -o ${CAMLP5_VERSION} = "6.10" -o ${CAMLP5_VERSION} = "6.11" -o ${CAMLP5_VERSION} = "6.12" ; \
++                  else if test ${CAMLP5_VERSION} = "6.06" -o ${CAMLP5_VERSION} = "6.07" -o ${CAMLP5_VERSION} = "6.08" -o ${CAMLP5_VERSION} = "6.09" -o ${CAMLP5_VERSION} = "6.10" -o ${CAMLP5_VERSION} = "6.11" -o ${CAMLP5_VERSION} = "6.12" -o ${CAMLP5_VERSION} = "6.13" -o ${CAMLP5_VERSION} = "6.14" ; \
+                        then cp pa_j_3.1x_6.11.ml pa_j.ml; \
+                        else cp pa_j_3.1x_${CAMLP5_BINARY_VERSION}.xx.ml pa_j.ml; \
+                        fi \
diff --git a/pkgs/applications/science/logic/hol_light/default.nix b/pkgs/applications/science/logic/hol_light/default.nix
index 212da932c28..8311ac46654 100644
--- a/pkgs/applications/science/logic/hol_light/default.nix
+++ b/pkgs/applications/science/logic/hol_light/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchsvn, writeScript, ocaml, findlib, camlp5 }:
+{ stdenv, fetchsvn, writeScript, ocaml, camlp5 }:
 
 let
   start_script = ''
@@ -10,15 +10,17 @@ in
 
 stdenv.mkDerivation rec {
   name     = "hol_light-${version}";
-  version  = "218";
+  version  = "244";
 
   src = fetchsvn {
     url = http://hol-light.googlecode.com/svn/trunk;
     rev = version;
-    sha256 = "0lidcadyjpyqd2iw90gfrm8hb6g9gpabp54c0ps6z0lb6hdzln74";
+    sha256 = "1qzb48j7zbx7c327ixmvq2k0ap7y6fqvwal0195chfxvhs858lfq";
   };
 
-  buildInputs = [ ocaml findlib camlp5 ];
+  buildInputs = [ ocaml camlp5 ];
+
+  patches = [ ./Makefile.patch ];
 
   installPhase = ''
     mkdir -p "$out/lib/hol_light" "$out/bin"
diff --git a/pkgs/applications/science/logic/isabelle/default.nix b/pkgs/applications/science/logic/isabelle/default.nix
index 88bbe820e2f..97534b0ddd3 100644
--- a/pkgs/applications/science/logic/isabelle/default.nix
+++ b/pkgs/applications/science/logic/isabelle/default.nix
@@ -12,11 +12,11 @@ stdenv.mkDerivation {
 
   src = if stdenv.isDarwin
     then fetchurl {
-      url = http://isabelle.in.tum.de/dist/Isabelle2014_macos.tar.gz;
+      url = http://isabelle.in.tum.de/website-Isabelle2014/dist/Isabelle2014_macos.tar.gz;
       sha256 = "1aa3vz2nnkkyd4mlsqbs69jqfxlll5h0k5fj9m1j9wqiddqwvwcf";
     }
     else fetchurl {
-      url = http://isabelle.in.tum.de/dist/Isabelle2014_linux.tar.gz;
+      url = http://isabelle.in.tum.de/website-Isabelle2014/dist/Isabelle2014_linux.tar.gz;
       sha256 = "0z81pwwllavka4r57fx6yi9kbpbb9xbanp8dsjix49qpyj2a72jy";
     };
 
diff --git a/pkgs/applications/science/logic/jonprl/default.nix b/pkgs/applications/science/logic/jonprl/default.nix
new file mode 100644
index 00000000000..7620aa3e3e0
--- /dev/null
+++ b/pkgs/applications/science/logic/jonprl/default.nix
@@ -0,0 +1,34 @@
+{ fetchgit, stdenv, smlnj, which }:
+
+stdenv.mkDerivation rec {
+  name    = "jonprl-${version}";
+  version = "0.1.0";
+
+  src = fetchgit {
+    url = "https://github.com/jonsterling/JonPRL.git";
+    deepClone = true;
+    rev = "refs/tags/v${version}";
+    sha256 = "1z0d8dq1nb4dycic58nnk617hbfgafz0vmwr8gkl0i6405gfg1zy";
+  };
+
+  buildInputs = [ smlnj which ];
+
+  installPhase = ''
+    mkdir -p "$out/bin"
+    cp bin/.heapimg.* "$out/bin/"
+    build/mkexec.sh "${smlnj}/bin/sml" "$out" jonprl
+  '';
+
+  meta = {
+    description = "Proof Refinement Logic - Computational Type Theory";
+    longDescription = ''
+      An proof refinement logic for computational type theory
+      based on Brouwer-realizability & meaning explanations.
+      Inspired by Nuprl
+    '';
+    homepage = http://www.jonprl.org/;
+    license = stdenv.lib.licenses.mit;
+    maintainers = with stdenv.lib.maintainers; [ puffnfresh ];
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/pkgs/applications/science/logic/lci/default.nix b/pkgs/applications/science/logic/lci/default.nix
index e2aff9313e9..d7f047b84e0 100644
--- a/pkgs/applications/science/logic/lci/default.nix
+++ b/pkgs/applications/science/logic/lci/default.nix
@@ -11,6 +11,6 @@ stdenv.mkDerivation rec {
     description = ''Lambda calculus interpreter'';
     maintainers = with stdenv.lib.maintainers; [raskin];
     platforms = with stdenv.lib.platforms; linux;
-    license = with stdenv.lib.licenses; gpl3;
+    license = stdenv.lib.licenses.gpl3;
   };
 }
diff --git a/pkgs/applications/science/logic/lean/default.nix b/pkgs/applications/science/logic/lean/default.nix
index 4d391379e81..5a4e2cbbc05 100644
--- a/pkgs/applications/science/logic/lean/default.nix
+++ b/pkgs/applications/science/logic/lean/default.nix
@@ -2,19 +2,23 @@
 , gperftools, ninja }:
 
 stdenv.mkDerivation rec {
-  name = "lean-20150328";
+  name = "lean-${version}";
+  version = "20150821";
 
   src = fetchFromGitHub {
     owner  = "leanprover";
     repo   = "lean";
-    rev    = "1b15036dba469020d37f7d6b77b88974d8a36cb1";
-    sha256 = "0w38g83gp7d3ybfiz9jpl2jz3ljad70bxmar0dnnv45wx42clg96";
+    rev    = "453bd2341dac51e50d9bff07d5ff6c9c3fb3ba0b";
+    sha256 = "1hmga5my123sra873iyqc7drj4skny4hnhsasaxjkmmdhmj1zpka";
   };
 
   buildInputs = [ gmp mpfr luajit boost cmake python gperftools ninja ];
   enableParallelBuilding = true;
 
-  preConfigure = "cd src";
+  preConfigure = ''
+    patchShebangs bin/leantags
+    cd src
+  '';
 
   cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" ];
 
diff --git a/pkgs/applications/science/logic/metis-prover/default.nix b/pkgs/applications/science/logic/metis-prover/default.nix
new file mode 100644
index 00000000000..0aa3d6e51c3
--- /dev/null
+++ b/pkgs/applications/science/logic/metis-prover/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, perl, mlton }:
+
+stdenv.mkDerivation rec {
+  name = "metis-prover-${version}";
+  version = "2.3";
+
+  src = fetchurl {
+    url = "http://www.gilith.com/software/metis/metis.tar.gz";
+    sha256 = "07wqhic66i5ip2j194x6pswwrxyxrimpc4vg0haa5aqv9pfpmxad";
+  };
+
+  nativeBuildInputs = [ perl ];
+  buildInputs = [ mlton ];
+
+  patchPhase = "patchShebangs scripts/mlpp";
+
+  buildPhase = "make mlton";
+
+  installPhase = ''
+    install -Dm0755 bin/mlton/metis $out/bin/metis
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Automatic theorem prover for first-order logic with equality";
+    homepage = http://www.gilith.com/research/metis/;
+    license = licenses.mit;
+    maintainers = with maintainers; [ gebner ];
+  };
+}
diff --git a/pkgs/applications/science/logic/otter/default.nix b/pkgs/applications/science/logic/otter/default.nix
index 653c5dad03f..398f6c9a3e2 100644
--- a/pkgs/applications/science/logic/otter/default.nix
+++ b/pkgs/applications/science/logic/otter/default.nix
@@ -20,9 +20,9 @@ stdenv.mkDerivation {
   buildPhase = ''
     find . -name Makefile | xargs sed -i -e "s@/bin/rm@$(type -P rm)@g"
     find . -name Makefile | xargs sed -i -e "s@/bin/mv@$(type -P mv)@g"
-    find . -perm +111 -type f | xargs sed -i -e "s@/bin/csh@$(type -P csh)@g"
-    find . -perm +111 -type f | xargs sed -i -e "s@/bin/rm@$(type -P rm)@g"
-    find . -perm +111 -type f | xargs sed -i -e "s@/bin/mv@$(type -P mv)@g"
+    find . -perm -0100 -type f | xargs sed -i -e "s@/bin/csh@$(type -P csh)@g"
+    find . -perm -0100 -type f | xargs sed -i -e "s@/bin/rm@$(type -P rm)@g"
+    find . -perm -0100 -type f | xargs sed -i -e "s@/bin/mv@$(type -P mv)@g"
 
     sed -i -e "s/^XLIBS *=.*/XLIBS=-lXaw -lXt -lX11/" source/formed/Makefile 
 
diff --git a/pkgs/applications/science/logic/picosat/default.nix b/pkgs/applications/science/logic/picosat/default.nix
index 6c2cce0ea4b..fb5acc64c4d 100644
--- a/pkgs/applications/science/logic/picosat/default.nix
+++ b/pkgs/applications/science/logic/picosat/default.nix
@@ -1,41 +1,33 @@
-{stdenv, fetchurl }:
-
-let
-  version = "936";
-  pname = "picosat";
-
-in
+{ stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
+  name    = "picosat-${version}";
+  version = "960";
 
   src = fetchurl {
     url = "http://fmv.jku.at/picosat/${name}.tar.gz";
-    sha256 = "02hq68fmfjs085216wsj13ff6i1rhc652yscl16w9jzpfqzly91n";
+    sha256 = "05z8cfjk84mkna5ryqlq2jiksjifg3jhlgbijaq36sbn0i51iczd";
   };
 
   dontAddPrefix = true;
-
-  # configureFlags = "--shared"; the ./configure file is broken and doesn't accept this parameter :(
-  patchPhase = ''
-   sed -e 's/^shared=no/shared=yes/' -i configure
-  '';
+  configureFlags = "--shared";
 
   installPhase = ''
-   mkdir -p "$out"/bin
+   mkdir -p $out/bin $out/lib $out/include/picosat
    cp picomus "$out"/bin
    cp picosat "$out"/bin
-   mkdir -p "$out"/lib
+
    cp libpicosat.a "$out"/lib
    cp libpicosat.so "$out"/lib
-   mkdir -p "$out"/include/picosat
+
    cp picosat.h "$out"/include/picosat
   '';
 
   meta = {
-    homepage = http://fmv.jku.at/picosat/;
     description = "SAT solver with proof and core support";
-    license = stdenv.lib.licenses.mit;
-    maintainers = [ stdenv.lib.maintainers.roconnor ];
+    homepage    = http://fmv.jku.at/picosat/;
+    license     = stdenv.lib.licenses.mit;
+    platforms   = stdenv.lib.platforms.unix;
+    maintainers = with stdenv.lib.maintainers; [ roconnor thoughtpolice ];
   };
 }
diff --git a/pkgs/applications/science/logic/saw-tools/default.nix b/pkgs/applications/science/logic/saw-tools/default.nix
new file mode 100644
index 00000000000..eebe6ff0a06
--- /dev/null
+++ b/pkgs/applications/science/logic/saw-tools/default.nix
@@ -0,0 +1,61 @@
+{ stdenv, fetchurl, gmp4, ncurses, zlib, makeWrapper, clang_35 }:
+
+let
+  libPath = stdenv.lib.makeLibraryPath
+    [ stdenv.cc.libc
+      stdenv.cc.cc
+      gmp4
+      ncurses
+      zlib
+    ] + ":${stdenv.cc.cc}/lib64";
+
+  url = "https://github.com/GaloisInc/saw-script/releases/download";
+
+  saw-bin =
+    if stdenv.system == "i686-linux"
+    then fetchurl {
+      url    = url + "/v0.1.1-dev/saw-0.1.1-dev-2015-07-31-CentOS6-32.tar.gz";
+      sha256 = "126iag5nnvndi78c921z7vjrjfwcspn1hlxwwhzmqm4rvbhhr9v9";
+    }
+    else fetchurl {
+      url    = url + "/v0.1.1-dev/saw-0.1.1-dev-2015-07-31-CentOS6-64.tar.gz";
+      sha256 = "07gyf319v6ama6n1aj96403as04bixi8mbisfy7f7va689zklflr";
+    };
+in
+stdenv.mkDerivation rec {
+  name    = "saw-tools-${version}";
+  version = "0.1.1-20150731";
+
+  src = saw-bin;
+
+  installPhase = ''
+    mkdir -p $out/lib $out/share
+
+    mv bin $out/bin
+    mv doc $out/share
+
+    # Hack around lack of libtinfo in NixOS
+    ln -s ${ncurses}/lib/libncursesw.so.5       $out/lib/libtinfo.so.5
+    ln -s ${stdenv.cc.libc}/lib/libpthread.so.0 $out/lib/libpthread.so.0
+
+    # Add a clang symlink for easy building with a suitable compiler.
+    ln -s ${clang_35}/bin/clang $out/bin/saw-clang
+  '';
+
+  fixupPhase = ''
+    for x in bin/bcdump bin/extcore-info bin/jss bin/llvm-disasm bin/lss bin/saw; do
+      patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+        --set-rpath "$out/lib:${libPath}" $out/$x;
+    done
+  '';
+
+  phases = "unpackPhase installPhase fixupPhase";
+
+  meta = {
+    description = "Tools for software verification and analysis";
+    homepage    = "https://saw.galois.com";
+    license     = stdenv.lib.licenses.unfreeRedistributable;
+    platforms   = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+  };
+}
diff --git a/pkgs/applications/science/logic/stp/default.nix b/pkgs/applications/science/logic/stp/default.nix
index cfe96bc6983..444bb06c4a0 100644
--- a/pkgs/applications/science/logic/stp/default.nix
+++ b/pkgs/applications/science/logic/stp/default.nix
@@ -18,6 +18,6 @@ stdenv.mkDerivation rec {
     description = ''Simple Theorem Prover'';
     maintainers = with stdenv.lib.maintainers; [mornfall];
     platforms = with stdenv.lib.platforms; linux;
-    license = with stdenv.lib.licenses; mit;
+    license = stdenv.lib.licenses.mit;
   };
 }
diff --git a/pkgs/applications/science/logic/verit/default.nix b/pkgs/applications/science/logic/verit/default.nix
index 16a45cca644..5cafb19350c 100644
--- a/pkgs/applications/science/logic/verit/default.nix
+++ b/pkgs/applications/science/logic/verit/default.nix
@@ -1,24 +1,21 @@
-{ stdenv, fetchurl, gmp, flex, bison }:
+{ stdenv, fetchurl, autoreconfHook, gmp, flex, bison }:
 
 stdenv.mkDerivation rec {
   name = "veriT-${version}";
-  version = "201410";
+  version = "201506";
 
   src = fetchurl {
     url = "http://www.verit-solver.org/distrib/${name}.tar.gz";
-    sha256 = "0b31rl3wjn3b09jpka93lx83d26m8a5pixa216vq8pmjach8q5a3";
+    sha256 = "1cc9gcspw3namkdfypkians2j5dn224dsw6xx95qicad6033bsgk";
   };
 
-  buildInputs = [ gmp flex bison ];
+  nativeBuildInputs = [ autoreconfHook flex bison ];
+  buildInputs = [ gmp ];
 
-  enableParallelBuilding = false;
+  makeFlags = [ "LEX=${flex}/bin/flex" ];
 
-  makeFlags = [
-    "EXTERN=" # use system copy of gmp
-  ];
-
-  installPhase = ''
-    install -D -m0755 veriT $out/bin/veriT
+  preInstall = ''
+    mkdir -p $out/bin
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/science/logic/why3/default.nix b/pkgs/applications/science/logic/why3/default.nix
index 228d1a7c4d4..d1fb853ee9e 100644
--- a/pkgs/applications/science/logic/why3/default.nix
+++ b/pkgs/applications/science/logic/why3/default.nix
@@ -2,15 +2,15 @@
 
 stdenv.mkDerivation rec {
   name    = "why3-${version}";
-  version = "0.85";
+  version = "0.86.1";
 
   src = fetchurl {
-    url    = "https://gforge.inria.fr/frs/download.php/34074/why3-0.85.tar.gz";
-    sha256 = "0sj1pd50lqvnvyss1f8ysgigdi64s91rrpdrmp7crmcy1npa8apf";
+    url    = https://gforge.inria.fr/frs/download.php/file/34797/why3-0.86.1.tar.gz;
+    sha256 = "129kzq79n8h480zrlphgh1ixvwp3wm18nbcky9bp4wdnr6zaibd7";
   };
 
   buildInputs = with ocamlPackages;
-    [ coq coq.camlp5 ocaml findlib lablgtk ocamlgraph zarith ];
+    [ coq coq.camlp5 ocaml findlib lablgtk ocamlgraph zarith menhir ];
 
   meta = with stdenv.lib; {
     description = "A platform for deductive program verification";
diff --git a/pkgs/applications/science/logic/yices/default.nix b/pkgs/applications/science/logic/yices/default.nix
index e181ecfd0e1..5daaa444c12 100644
--- a/pkgs/applications/science/logic/yices/default.nix
+++ b/pkgs/applications/science/logic/yices/default.nix
@@ -1,39 +1,22 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, gmp, gperf, autoreconfHook }:
 
-assert stdenv.isLinux;
-
-let
-  libPath = stdenv.lib.makeLibraryPath [ stdenv.cc.libc ];
-in
 stdenv.mkDerivation rec {
   name    = "yices-${version}";
-  version = "2.2.1";
-
-  src =
-    if stdenv.system == "i686-linux"
-    then fetchurl {
-      url = "http://yices.csl.sri.com/cgi-bin/yices2-newdownload.cgi?file=yices-2.2.1-i686-pc-linux-gnu-static-gmp.tar.gz&accept=I+accept";
-      name = "yices-${version}-i686.tar.gz";
-      sha256 = "12jzk3kqlbqa5x6rl92cpzj7dch7gm7fnbj72wifvwgdj4zyhrra";
-    }
-    else fetchurl {
-      url = "http://yices.csl.sri.com/cgi-bin/yices2-newdownload.cgi?file=yices-2.2.1-x86_64-unknown-linux-gnu-static-gmp.tar.gz&accept=I+accept";
-      name = "yices-${version}-x86_64.tar.gz";
-      sha256 = "0fpmihf6ykcg4qbsimkamgcwp4sl1xyxmz7q28ily91rd905ijaj";
-    };
+  version = "2.3.1";
 
-  buildPhase = false;
-  installPhase = ''
-    mkdir -p $out/bin $out/lib $out/include
-    cd bin     && mv * $out/bin     && cd ..
-    cd lib     && mv * $out/lib     && cd ..
-    cd include && mv * $out/include && cd ..
+  src = fetchurl {
+    url = "http://yices.csl.sri.com/cgi-bin/yices2-newnewdownload.cgi?file=yices-2.3.1-src.tar.gz&accept=I+Agree";
+    name = "yices-${version}-src.tar.gz";
+    sha256 = "1da70n0cah0dh3pk7fcrvjkszx9qmhc0csgl15jqa7bdh707k2zs";
+  };
 
-    patchelf --set-rpath ${libPath} $out/lib/libyices.so.${version}
-  '';
+  configureFlags = [ "--with-static-gmp=${gmp}/lib/libgmp.a"
+                     "--with-static-gmp-include-dir=${gmp}/include"
+                   ];
+  buildInputs = [ gmp gperf autoreconfHook ];
 
   meta = {
-    description = "Yices is a high-performance theorem prover and SMT solver";
+    description = "A high-performance theorem prover and SMT solver";
     homepage    = "http://yices.csl.sri.com";
     license     = stdenv.lib.licenses.unfreeRedistributable;
     platforms   = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/science/logic/z3/default.nix b/pkgs/applications/science/logic/z3/default.nix
index 2296a28444b..fb3fb959ae6 100644
--- a/pkgs/applications/science/logic/z3/default.nix
+++ b/pkgs/applications/science/logic/z3/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "z3-${version}";
-  version = "4.3.2";
+  version = "4.4.0";
 
   src = fetchFromGitHub {
     owner  = "Z3Prover";
     repo   = "z3";
-    rev    = "ac21ffebdf1512da2a77dc46c47bde87cc3850f3";
-    sha256 = "1y86akhpy41wx3gx7r8gvf7xbax7dj36ikj6gqh5a7p6r6maz9ci";
+    rev    = "7f6ef0b6c0813f2e9e8f993d45722c0e5b99e152";
+    sha256 = "1xllvq9fcj4cz34biq2a9dn2sj33bdgrzyzkj26hqw70wkzv1kzx";
   };
 
   buildInputs = [ python ];
diff --git a/pkgs/applications/science/logic/z3_opt/default.nix b/pkgs/applications/science/logic/z3_opt/default.nix
new file mode 100644
index 00000000000..b4d8fbc9529
--- /dev/null
+++ b/pkgs/applications/science/logic/z3_opt/default.nix
@@ -0,0 +1,44 @@
+{ stdenv, fetchFromGitHub, python }:
+
+# Copied shamelessly from the normal z3 .nix
+
+stdenv.mkDerivation rec {
+  name = "z3_opt-${version}";
+  version = "4.3.2";
+
+  src = fetchFromGitHub {
+    owner  = "Z3Prover";
+    repo   = "z3";
+    rev    = "9377779e5818b2ca15c4f39921b2ba3a42f948e7";
+    sha256 = "15d6hsb61hrm5vy3l2gnkrfnqr68lvspnznm17vyhm61ld33yaff";
+  };
+
+  buildInputs = [ python ];
+  enableParallelBuilding = true;
+
+  configurePhase = "python scripts/mk_make.py --prefix=$out && cd build";
+
+  # z3's install phase is stupid because it tries to calculate the
+  # python package store location itself, meaning it'll attempt to
+  # write files into the nix store, and fail.
+  soext = if stdenv.system == "x86_64-darwin" then ".dylib" else ".so";
+  installPhase = ''
+    mkdir -p $out/bin $out/lib/${python.libPrefix}/site-packages $out/include
+    cp ../src/api/z3*.h       $out/include
+    cp ../src/api/c++/z3*.h   $out/include
+    cp z3                     $out/bin
+    cp libz3${soext}          $out/lib
+    cp libz3${soext}          $out/lib/${python.libPrefix}/site-packages
+    cp z3*.pyc                $out/lib/${python.libPrefix}/site-packages
+    cp ../src/api/python/*.py $out/lib/${python.libPrefix}/site-packages
+  '';
+
+  meta = {
+    description = "A high-performance theorem prover and SMT solver, optimization edition";
+    homepage    = "http://github.com/Z3Prover/z3";
+    license     = stdenv.lib.licenses.mit;
+    platforms   = stdenv.lib.platforms.unix;
+    maintainers = with stdenv.lib.maintainers; [ thoughtpolice sheganinans ];
+  };
+}
+
diff --git a/pkgs/applications/science/math/R/default.nix b/pkgs/applications/science/math/R/default.nix
index d0adb338207..0f13faf7513 100644
--- a/pkgs/applications/science/math/R/default.nix
+++ b/pkgs/applications/science/math/R/default.nix
@@ -1,22 +1,22 @@
-{ stdenv, fetchurl, blas, bzip2, gfortran, liblapack, libX11, libXmu, libXt
+{ stdenv, fetchurl, bzip2, gfortran, libX11, libXmu, libXt
 , libjpeg, libpng, libtiff, ncurses, pango, pcre, perl, readline, tcl
 , texLive, tk, xz, zlib, less, texinfo, graphviz, icu, pkgconfig, bison
-, imake, which, jdk, atlas
+, imake, which, jdk, openblas
 , withRecommendedPackages ? true
 }:
 
 stdenv.mkDerivation rec {
-  name = "R-3.2.0";
+  name = "R-3.2.1";
 
   src = fetchurl {
     url = "http://cran.r-project.org/src/base/R-3/${name}.tar.gz";
-    sha256 = "0dagyqgvi8i3nw158qi2zpwm04s4ffzvnmk5niaksvxs30zrbbpm";
+    sha256 = "d59dbc3f04f4604a5cf0fb210b8ea703ef2438b3ee65fd5ab536ec5234f4c982";
   };
 
-  buildInputs = [ blas bzip2 gfortran liblapack libX11 libXmu libXt
+  buildInputs = [ bzip2 gfortran libX11 libXmu libXt
     libXt libjpeg libpng libtiff ncurses pango pcre perl readline tcl
     texLive tk xz zlib less texinfo graphviz icu pkgconfig bison imake
-    which jdk atlas
+    which jdk openblas
   ];
 
   patches = [ ./no-usr-local-search-paths.patch ];
@@ -25,8 +25,8 @@ stdenv.mkDerivation rec {
     configureFlagsArray=(
       --disable-lto
       --with${stdenv.lib.optionalString (!withRecommendedPackages) "out"}-recommended-packages
-      --with-blas="-L${atlas}/lib -lf77blas -latlas"
-      --with-lapack="-L${liblapack}/lib -llapack"
+      --with-blas="-L${openblas}/lib -lopenblas"
+      --with-lapack="-L${openblas}/lib -lopenblas"
       --with-readline
       --with-tcltk --with-tcl-config="${tcl}/lib/tclConfig.sh" --with-tk-config="${tk}/lib/tkConfig.sh"
       --with-cairo
diff --git a/pkgs/applications/science/math/caffe/default.nix b/pkgs/applications/science/math/caffe/default.nix
new file mode 100644
index 00000000000..fc7d9611529
--- /dev/null
+++ b/pkgs/applications/science/math/caffe/default.nix
@@ -0,0 +1,70 @@
+{ stdenv
+, openblas
+, boost
+, cudaSupport ? true
+, cudnnSupport ? false
+, cudnn ? null
+, cudatoolkit7
+, fetchFromGitHub
+, google-gflags
+, glog
+, hdf5
+, leveldb
+, lmdb
+, opencv
+, protobuf
+, snappy
+}:
+
+
+let optional = stdenv.lib.optional;
+in stdenv.mkDerivation rec {
+  # Use git revision because latest "release" is really old
+  name = "caffe-git-2015-07-02";
+
+  src = fetchFromGitHub {
+    owner = "BVLC";
+    repo = "caffe";
+    rev = "77d66dfc907dd875d69bb9fc12dd950b531e464f";
+    sha256 = "0vd4qrc49dhsawj298xpkd5mvi35sh56kdswx3yp8ya4fjajwakx";
+  };
+
+  preConfigure = "mv Makefile.config.example Makefile.config";
+
+  makeFlags = "BLAS=open " +
+              (if !cudaSupport then "CPU_ONLY=1 " else "CUDA_DIR=${cudatoolkit7} ") +
+              (if cudnnSupport then "USE_CUDNN=1 " else "");
+
+  # too many issues with tests to run them for now
+  doCheck = false;
+  checkPhase = "make runtest ${makeFlags}";
+
+  buildInputs = [ openblas boost google-gflags glog hdf5 leveldb lmdb opencv
+                  protobuf snappy ]
+                ++ optional cudaSupport cudatoolkit7
+                ++ optional cudnnSupport cudnn;
+
+  installPhase = ''
+    mkdir -p $out/{bin,share,lib}
+    for bin in $(find build/tools -executable -type f -name '*.bin');
+    do
+      cp $bin $out/bin/$(basename $bin .bin)
+    done
+
+    cp -r build/examples $out/share
+    cp -r build/lib $out
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Deep learning framework";
+    longDescription = ''
+      Caffe is a deep learning framework made with expression, speed, and
+      modularity in mind. It is developed by the Berkeley Vision and Learning
+      Center (BVLC) and by community contributors.
+    '';
+    homepage = http://caffe.berkeleyvision.org/;
+    maintainers = with maintainers; [ jb55 ];
+    license = licenses.bsd2;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/science/math/cbc/default.nix b/pkgs/applications/science/math/cbc/default.nix
new file mode 100644
index 00000000000..0d1ef26092e
--- /dev/null
+++ b/pkgs/applications/science/math/cbc/default.nix
@@ -0,0 +1,26 @@
+{ lib, stdenv, fetchurl, zlib, bzip2 }:
+
+stdenv.mkDerivation {
+  name = "cbc-2.9.5";
+
+  src = fetchurl {
+    url = "http://www.coin-or.org/download/source/Cbc/Cbc-2.9.5.tgz";
+    sha256 = "0kmsg9qpajh5jhnql04m6akpdjzlppxfz99q320vw5bkzgl3i18w";
+  };
+
+  configureFlags = "-C";
+
+  enableParallelBuilding = true;
+
+  buildInputs = [ zlib bzip2 ];
+
+  # FIXME: move share/coin/Data to a separate output?
+
+  meta = {
+    homepage = https://projects.coin-or.org/Cbc;
+    license = lib.licenses.epl10;
+    maintainers = [ lib.maintainers.eelco ];
+    platforms = lib.platforms.linux ++ lib.platforms.darwin;
+    description = "A mixed integer programming solver";
+  };
+}
diff --git a/pkgs/applications/science/math/content/default.nix b/pkgs/applications/science/math/content/default.nix
index 177efd667a3..48e20d427d1 100644
--- a/pkgs/applications/science/math/content/default.nix
+++ b/pkgs/applications/science/math/content/default.nix
@@ -1,10 +1,10 @@
-a :  
-let 
+a @ { mesa, lesstif, libX11, libXaw, xproto, libXt, libSM, libICE, libXmu, libXext, libXcursor, ... } :
+let
   fetchurl = a.fetchurl;
 
-  version = "1.5"; 
+  version = "1.5";
   buildInputs = with a; [
-    mesa lesstif libX11 libXaw xproto libXt libSM libICE 
+    mesa lesstif libX11 libXaw xproto libXt libSM libICE
       libXmu libXext libXcursor
   ];
 in
@@ -28,9 +28,9 @@ rec {
   configureFlags = [];
 
   /* doConfigure should be removed if not needed */
-  phaseNames = ["unpackTarballs" 
+  phaseNames = ["unpackTarballs"
     "setPlatform" "extraVars"
-    "buildVibrant" "buildContent" 
+    "buildVibrant" "buildContent"
     "install"];
 
   unpackTarballs = a.fullDepEntry (''
@@ -42,10 +42,10 @@ rec {
     sed -e s/SGI=/SGI=no/ -i content/makefile_v
   '') ["minInit"];
 
-  platformTLAContent = if a.stdenv.isLinux then "LIN" else 
+  platformTLAContent = if a.stdenv.isLinux then "LIN" else
     throw "Three-letter code for the platform is not known";
 
-  platformTLAVibrant = if a.stdenv.isLinux then "lnx" else 
+  platformTLAVibrant = if a.stdenv.isLinux then "lnx" else
     throw "Three-letter code for the platform is not known";
 
   setPlatform = a.fullDepEntry (''
@@ -82,7 +82,7 @@ rec {
     find . -name '*.so' -exec cp '{}' $out/lib ';'
     find . -name '*.txt' -exec cp '{}' $out/share/${name}/doc ';'
     find . -name '*.hlp' -exec cp '{}' $out/share/${name}/doc ';'
-    find . -perm +111 -a ! -name '*.*' -exec cp '{}' $out/bin ';'
+    find . -perm -0100 -a ! -name '*.*' -exec cp '{}' $out/bin ';'
     cp -r . $out/share/${name}/build-snapshot
   '') ["buildContent" "defEnsureDir" "minInit"];
       
diff --git a/pkgs/applications/science/math/csdp/default.nix b/pkgs/applications/science/math/csdp/default.nix
new file mode 100644
index 00000000000..64fa4579949
--- /dev/null
+++ b/pkgs/applications/science/math/csdp/default.nix
@@ -0,0 +1,27 @@
+{ lib, stdenv, fetchurl, blas, gfortran, liblapack }:
+
+stdenv.mkDerivation {
+  name = "csdp-6.1.1";
+
+  src = fetchurl {
+    url = "http://www.coin-or.org/download/source/Csdp/Csdp-6.1.1.tgz";
+    sha256 = "1f9ql6cjy2gwiyc51ylfan24v1ca9sjajxkbhszlds1lqmma8n05";
+  };
+
+  buildInputs = [ blas gfortran liblapack ];
+
+  postPatch = ''
+    substituteInPlace Makefile --replace /usr/local/bin $out/bin
+  '';
+
+  preInstall = ''
+    mkdir -p $out/bin
+  '';
+
+  meta = {
+    homepage = https://projects.coin-or.org/Csdp;
+    license = lib.licenses.cpl10;
+    maintainers = [ lib.maintainers.roconnor ];
+    description = "A C Library for Semidefinite Programming";
+  };
+}
diff --git a/pkgs/applications/science/math/ecm/default.nix b/pkgs/applications/science/math/ecm/default.nix
index 5d378a48dd9..53b289983a4 100644
--- a/pkgs/applications/science/math/ecm/default.nix
+++ b/pkgs/applications/science/math/ecm/default.nix
@@ -1,8 +1,8 @@
-{stdenv, fetchurl, gmp}:
+{ stdenv, fetchurl, gmp, m4 }:
 
 let
   pname = "ecm";
-  version = "6.2.3";
+  version = "6.4.4";
   name = "${pname}-${version}";
 in
 
@@ -10,11 +10,11 @@ stdenv.mkDerivation {
   inherit name;
 
   src = fetchurl {
-      url = https://gforge.inria.fr/frs/download.php/22124/ecm-6.2.3.tar.gz;
-      sha256 = "1iwwhbz5vwl7j6dyh292hahc8yy16pq9mmm7mxy49zhxd81vy08p";
+      url = http://gforge.inria.fr/frs/download.php/file/32159/ecm-6.4.4.tar.gz;
+      sha256 = "0v5h2nicz9yx78c2d72plbhi30iq4nxbvphja1s9501db4aah4y8";
     };
 
-  buildInputs = [ gmp ];
+  buildInputs = [ m4 gmp ];
 
   doCheck = true;
 
@@ -23,5 +23,6 @@ stdenv.mkDerivation {
     license = stdenv.lib.licenses.gpl2Plus;
     homepage = http://ecm.gforge.inria.fr/;
     maintainers = [ stdenv.lib.maintainers.roconnor ];
+    platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/science/math/gap/default.nix b/pkgs/applications/science/math/gap/default.nix
index 0700251c3a8..e810879eba6 100644
--- a/pkgs/applications/science/math/gap/default.nix
+++ b/pkgs/applications/science/math/gap/default.nix
@@ -63,5 +63,6 @@ rec {
     license = with a.lib.licenses;
       gpl2;
     homepage = "http://gap-system.org/";
+    broken = true;
   };
 }) x
diff --git a/pkgs/applications/science/math/glsurf/default.nix b/pkgs/applications/science/math/glsurf/default.nix
index 1439d327d6e..2c09f572d12 100644
--- a/pkgs/applications/science/math/glsurf/default.nix
+++ b/pkgs/applications/science/math/glsurf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchdarcs, ocaml, findlib,  lablgl, camlimages, mesa, freeglut, ocaml_mysql, mlgmp, mpfr, gmp, libtiff, libjpeg, libpng, giflib }:
+{ stdenv, fetchdarcs, ocaml, findlib,  lablgl, camlimages, mesa, freeglut, ocaml_mysql, mysql, mlgmp, mpfr, gmp, libtiff, libjpeg, libpng, giflib }:
 
 let
   ocaml_version = (builtins.parseDrvName ocaml.name).version;
@@ -10,11 +10,11 @@ stdenv.mkDerivation {
   src = fetchdarcs {
     url = "http://lama.univ-savoie.fr/~raffalli/GlSurf";
     rev = "3.3";
-    sha256 = ""; md5="";
+    sha256 = "0ljvvzz31j7l8rvsv63x1kj70nhw3al3k294m79hpmwjvym1mzfa";
   };
 
   buildInputs = [ ocaml findlib freeglut mesa
-  	          lablgl camlimages ocaml_mysql mlgmp mpfr gmp
+  	          lablgl camlimages ocaml_mysql mysql.lib mlgmp mpfr gmp
 		  libtiff libjpeg libpng giflib ];
 
   installPhase = ''
diff --git a/pkgs/applications/science/math/jags/default.nix b/pkgs/applications/science/math/jags/default.nix
index 785c2460bb4..9d70d268691 100644
--- a/pkgs/applications/science/math/jags/default.nix
+++ b/pkgs/applications/science/math/jags/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, gfortran, liblapack, blas}:
+{stdenv, fetchurl, gfortran, openblas}:
 
 stdenv.mkDerivation rec {
   name = "JAGS-3.4.0";
@@ -6,7 +6,8 @@ stdenv.mkDerivation rec {
     url = "mirror://sourceforge/mcmc-jags/${name}.tar.gz";
     sha256 = "0ayqsz9kkmbss7mxlwr34ch2z1vsb65lryjzqpprab1ccyiaksib";
   };
-  buildInputs = [gfortran liblapack blas];
+  buildInputs = [gfortran openblas];
+  configureFlags = [ "--with-blas=-lopenblas" "--with-lapack=-lopenblas" ];
 
   meta = {
     description = "Just Another Gibbs Sampler";
diff --git a/pkgs/applications/science/math/lp_solve/default.nix b/pkgs/applications/science/math/lp_solve/default.nix
new file mode 100644
index 00000000000..09af2d708c9
--- /dev/null
+++ b/pkgs/applications/science/math/lp_solve/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+
+  name = "lp_solve-${version}";
+  version = "5.5.2.0";
+
+  src = fetchurl {
+    url = "http://sourceforge.net/projects/lpsolve/files/lpsolve/${version}/lp_solve_${version}_source.tar.gz";
+    sha256 = "176c7f023mb6b8bfmv4rfqnrlw88lsg422ca74zjh19i2h5s69sq";
+  };
+
+  buildCommand = ''
+    . $stdenv/setup
+    tar xvfz $src
+    (
+    cd lp_solve*/lpsolve55
+    bash ccc
+    mkdir -pv $out/lib
+    cp -v bin/*/* $out/lib
+    )
+    (
+    cd lp_solve*/lp_solve
+    bash ccc
+    mkdir -pv $out/bin
+    cp -v bin/*/* $out/bin
+    )
+    (
+    mkdir -pv $out/include
+    cp -v lp_solve*/*.h $out/include
+    )
+  '';
+
+  meta = with stdenv.lib; {
+    description = "lp_solve is a Mixed Integer Linear Programming (MILP) solver.";
+    homepage    = "http://lpsolve.sourceforge.net";
+    license     = licenses.gpl2Plus;
+    maintainers = with maintainers; [ smironov ];
+    platforms   = platforms.unix;
+  };
+
+}
+
diff --git a/pkgs/applications/science/math/mathematica/9.nix b/pkgs/applications/science/math/mathematica/9.nix
index c9357d7352f..7573b8955b1 100644
--- a/pkgs/applications/science/math/mathematica/9.nix
+++ b/pkgs/applications/science/math/mathematica/9.nix
@@ -12,7 +12,7 @@
 , opencv
 , openssl
 , unixODBC
-, xlibs
+, xorg
 , zlib
 }:
 
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
     opencv
     openssl
     unixODBC
-  ] ++ (with xlibs; [
+  ] ++ (with xorg; [
     libX11
     libXext
     libXtst
@@ -86,7 +86,7 @@ stdenv.mkDerivation rec {
 
   preFixup = ''
     echo "=== PatchElfing away ==="
-    find $out/libexec/Mathematica/SystemFiles -type f -perm +100 | while read f; do
+    find $out/libexec/Mathematica/SystemFiles -type f -perm -0100 | while read f; do
       type=$(readelf -h "$f" 2>/dev/null | grep 'Type:' | sed -e 's/ *Type: *\([A-Z]*\) (.*/\1/')
       if [ -z "$type" ]; then
         :
diff --git a/pkgs/applications/science/math/mathematica/default.nix b/pkgs/applications/science/math/mathematica/default.nix
index 5fc70417883..233323fceef 100644
--- a/pkgs/applications/science/math/mathematica/default.nix
+++ b/pkgs/applications/science/math/mathematica/default.nix
@@ -12,7 +12,7 @@
 , opencv
 , openssl
 , unixODBC
-, xlibs
+, xorg
 , zlib
 , libxml2
 , libuuid
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
     unixODBC
     libxml2
     libuuid
-  ] ++ (with xlibs; [
+  ] ++ (with xorg; [
     libX11
     libXext
     libXtst
@@ -96,7 +96,7 @@ stdenv.mkDerivation rec {
 
   preFixup = ''
     echo "=== PatchElfing away ==="
-    find $out/libexec/Mathematica/SystemFiles -type f -perm +100 | while read f; do
+    find $out/libexec/Mathematica/SystemFiles -type f -perm -0100 | while read f; do
       type=$(readelf -h "$f" 2>/dev/null | grep 'Type:' | sed -e 's/ *Type: *\([A-Z]*\) (.*/\1/')
       if [ -z "$type" ]; then
         :
diff --git a/pkgs/applications/science/math/maxima/default.nix b/pkgs/applications/science/math/maxima/default.nix
index ffc16a33054..e42bd0f83ee 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.35.1";
+  version = "5.36.1";
 
   searchPath =
     stdenv.lib.makeSearchPath "bin"
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://sourceforge/${name}/${name}-${version}.tar.gz";
-    sha256 = "1wwqvay9z6gal7bsyyyhhcwh0fy5ak4h2a446ali0x6zmybaklcy";
+    sha256 = "0x1rk659sn3cq0n5c90848ilzr1gb1wf0072fl6jhkdq00qgh2s0";
   };
 
   buildInputs = [sbcl texinfo perl makeWrapper];
diff --git a/pkgs/applications/science/math/pari/default.nix b/pkgs/applications/science/math/pari/default.nix
index 0dbab841a81..5719ccb6909 100644
--- a/pkgs/applications/science/math/pari/default.nix
+++ b/pkgs/applications/science/math/pari/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, gmp, readline }:
 
 stdenv.mkDerivation rec {
-  version = "2.7.3";
+  version = "2.7.4";
   name = "pari-${version}";
 
   src = fetchurl {
     url = "http://pari.math.u-bordeaux.fr/pub/pari/unix/${name}.tar.gz";
-    sha256 = "02k54m7p47r54lgxqanxvf7pdrss17n8if1qwk5wx0j1px22j0rq";
+    sha256 = "0k1qqagfl6zn7gvwmsqffj6g9yrzqvszwh2mblhmxpjlw1pigfh8";
   };
 
   buildInputs = [gmp readline];
@@ -16,12 +16,12 @@ stdenv.mkDerivation rec {
     "--with-gmp=${gmp} " +
     "--with-readline=${readline}";
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Computer algebra system for high-performance number theory computations";
     homepage    = "http://pari.math.u-bordeaux.fr/";
-    license     = "GPLv2+";
-    maintainers = with stdenv.lib.maintainers; [ertes raskin];
-    platforms   = stdenv.lib.platforms.linux;
+    license     = licenses.gpl2Plus;
+    maintainers = with maintainers; [ ertes raskin ];
+    platforms   = platforms.linux;
 
     inherit version;
     downloadPage = "http://pari.math.u-bordeaux.fr/download.html";
diff --git a/pkgs/applications/science/math/perseus/default.nix b/pkgs/applications/science/math/perseus/default.nix
new file mode 100644
index 00000000000..94029a04349
--- /dev/null
+++ b/pkgs/applications/science/math/perseus/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, unzip, gcc48 }:
+
+stdenv.mkDerivation {
+  name = "perseus-4-beta";
+  version = "4-beta";
+  buildInputs = [unzip gcc48];
+
+  src = fetchurl {
+    url = "http://www.sas.upenn.edu/~vnanda/source/perseus_4_beta.zip";
+    sha256 = "09brijnqabhgfjlj5wny0bqm5dwqcfkp1x5wif6yzdmqh080jybj";
+  };
+
+  sourceRoot = ".";
+
+  buildPhase = ''
+    g++ Pers.cpp -O3 -o perseus
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp perseus $out/bin
+  '';
+
+  meta = {
+    description = "The Persistent Homology Software";
+    longDescription = ''
+      Persistent homology - or simply, persistence - is an algebraic
+      topological invariant of a filtered cell complex. Perseus
+      computes this invariant for a wide class of filtrations built
+      around datasets arising from point samples, images, distance
+      matrices and so forth.
+    '';
+    homepage = "www.sas.upenn.edu/~vnanda/perseus/index.html";
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = with stdenv.lib.maintainers; [erikryb];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/applications/science/math/qalculate-gtk/default.nix b/pkgs/applications/science/math/qalculate-gtk/default.nix
new file mode 100644
index 00000000000..6bc5d874bc0
--- /dev/null
+++ b/pkgs/applications/science/math/qalculate-gtk/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, intltool, pkgconfig, libqalculate, gtk, gnome2 }:
+stdenv.mkDerivation rec {
+  name = "qalculate-gtk-${version}";
+  version = "0.9.7";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/qalculate/${name}.tar.gz";
+    sha256 = "0b986x5yny9vrzgxlbyg80b23mxylxv2zz8ppd9svhva6vi8xsm4";
+  };
+
+  nativeBuildInputs = [ intltool pkgconfig ];
+  buildInputs = [ libqalculate gtk gnome2.libglade gnome2.libgnome gnome2.scrollkeeper ];
+
+  meta = with stdenv.lib; {
+    description = "The ultimate desktop calculator";
+    homepage = http://qalculate.sourceforge.net;
+    maintainers = with maintainers; [ gebner ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/applications/science/math/sage/default.nix b/pkgs/applications/science/math/sage/default.nix
index a27a93dd2c6..a19a4977440 100644
--- a/pkgs/applications/science/math/sage/default.nix
+++ b/pkgs/applications/science/math/sage/default.nix
@@ -1,27 +1,32 @@
 { stdenv, fetchurl, m4, perl, gfortran, texLive, ffmpeg, tk
-, imagemagick, liblapack
+, imagemagick, liblapack, python, openssl, libpng
+, which
 }:
 
 stdenv.mkDerivation rec {
-  name = "sage-6.1.1";
+  name = "sage-6.8";
 
   src = fetchurl {
     url = "mirror://sagemath/${name}.tar.gz";
-    sha256 = "0kbzs0l9q7y34jv3f8rd1c2mrjsjkdgaw6mfdwjlpg9g4gghmq5y";
+    sha256 = "102mrzzi215g1xn5zgcv501x9sghwg758jagx2jixvg1rj2jijj9";
   };
 
-  buildInputs = [ m4 perl gfortran texLive ffmpeg tk imagemagick liblapack ];
+  buildInputs = [ m4 perl gfortran texLive ffmpeg tk imagemagick liblapack
+                  python openssl libpng which];
+
+  patches = [ ./spkg-singular.patch ./spkg-python.patch ./spkg-git.patch ];
 
   enableParallelBuilding = true;
 
   preConfigure = ''
     export SAGE_NUM_THREADS=$NIX_BUILD_CORES
-    sed -i 's/if ! [ -d "$HOME" ]/if [ -d "$HOME" ]/' src/bin/sage-env
-  '' + stdenv.lib.optionalString stdenv.isDarwin ''
-    sed -i "s/ld_version = try_run('ld  -v')/ld_version = 'Apple'/" \
-      build/pkgs/atlas/configuration.py
+    export SAGE_ATLAS_ARCH=fast
+    mkdir -p $out/sageHome
+    export HOME=$out/sageHome
   '';
 
+  installPhase = ''DESTDIR=$out make install'';
+
   meta = {
     homepage = "http://www.sagemath.org";
     description = "A free open source mathematics software system";
diff --git a/pkgs/applications/science/math/sage/spkg-git.patch b/pkgs/applications/science/math/sage/spkg-git.patch
new file mode 100644
index 00000000000..a3e768a7c24
--- /dev/null
+++ b/pkgs/applications/science/math/sage/spkg-git.patch
@@ -0,0 +1,11 @@
+--- old/build/pkgs/git/spkg-install	2015-07-26 15:34:43.000000000 +0200
++++ new/build/pkgs/git/spkg-install	2015-09-17 08:28:03.586657451 +0200
+@@ -45,6 +45,8 @@
+     fi
+ done
+ 
++find . -exec sed -e 's@/usr/bin/perl@perl@g' -i '{}' ';'
++
+ # We don't want to think about Fink or Macports
+ export NO_FINK=1
+ export NO_DARWIN_PORTS=1
diff --git a/pkgs/applications/science/math/sage/spkg-python.patch b/pkgs/applications/science/math/sage/spkg-python.patch
new file mode 100644
index 00000000000..4db9427e3e0
--- /dev/null
+++ b/pkgs/applications/science/math/sage/spkg-python.patch
@@ -0,0 +1,11 @@
+--- old/build/pkgs/python2/spkg-install	2015-07-26 15:34:43.000000000 +0200
++++ new/build/pkgs/python2/spkg-install	2015-09-16 20:48:51.904555797 +0200
+@@ -32,7 +32,7 @@
+ done
+ 
+ # We are setting LDFLAGS so that we pick up Sage's readline
+-LDFLAGS="-L$SAGE_LOCAL/lib $LDFLAGS"
++LDFLAGS="-L$SAGE_LOCAL/lib -lcrypt $LDFLAGS"
+ export LDFLAGS
+ 
+ if [ "$SAGE_DEBUG" = "yes" ]; then
diff --git a/pkgs/applications/science/math/sage/spkg-singular.patch b/pkgs/applications/science/math/sage/spkg-singular.patch
new file mode 100644
index 00000000000..a4c29825a4c
--- /dev/null
+++ b/pkgs/applications/science/math/sage/spkg-singular.patch
@@ -0,0 +1,28 @@
+--- old/build/pkgs/singular/spkg-install	2015-07-26 15:34:43.000000000 +0200
++++ new/build/pkgs/singular/spkg-install	2015-09-15 20:42:51.716505855 +0200
+@@ -115,6 +115,11 @@
+     done
+ }
+ 
++nix_nuke_bin_rm()
++{
++    find . -exec sed -e 's@/bin/rm@rm@g' -i '{}' ';'
++}
++
+ remove_old_version()
+ {
+     rm -f "$SAGE_LOCAL"/bin/Singular*
+@@ -306,11 +311,11 @@
+ 
+ 
+ # Actually run all the functions defined above
+-for i in choose_patches apply_patches remove_old_version config \
++for i in choose_patches apply_patches nix_nuke_bin_rm remove_old_version config \
+   build_singular build_libsingular build_factory build_libfac \
+   create_singular_script install_docs ; do
+     echo "### Singular spkg-install: $i ###"
+-    cd "$SRC" && $i
++    cd "$SRC" && pwd && $i
+     if [ $? -ne 0 ]; then
+         echo >&2 "Error building Singular (error in $i)."
+         exit 1
diff --git a/pkgs/applications/science/math/scilab/default.nix b/pkgs/applications/science/math/scilab/default.nix
index bbb34e08c46..8482bd6fe94 100644
--- a/pkgs/applications/science/math/scilab/default.nix
+++ b/pkgs/applications/science/math/scilab/default.nix
@@ -8,7 +8,7 @@
 , ocaml, withOCaml ? false
 #, withJava ? false
 #, atlasMath, withAtlas ? false
-, x11, withX ? false
+, xlibsWrapper, withX ? false
 }:
 
 stdenv.mkDerivation rec {
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   buildInputs = [gfortran ncurses]
   ++ lib.optionals withGtk [gtk]
   ++ lib.optionals withOCaml [ocaml]
-  ++ lib.optionals withX [x11]
+  ++ lib.optional withX xlibsWrapper
   ;
 
 
@@ -58,11 +58,7 @@ stdenv.mkDerivation rec {
   # do not compile Java interface
   + " --without-java"
   # use the X Window System
-  + (lib.optionalString withX "
-      --with-x
-      --x-libraries=${x11}/lib
-      --x-includes=${x11}/include
-    ")
+  + lib.optionalString withX "--with-x"
   ;
 
   makeFlags = "all";
diff --git a/pkgs/applications/science/math/sloane/default.nix b/pkgs/applications/science/math/sloane/default.nix
deleted file mode 100644
index 644ec3be569..00000000000
--- a/pkgs/applications/science/math/sloane/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, ansiTerminal, cereal, downloadCurl, filepath, HTTP
-, network, optparseApplicative, terminalSize, text, zlib
-}:
-
-cabal.mkDerivation (self: {
-  pname = "sloane";
-  version = "1.9.3";
-  sha256 = "0xl3dmi6czwfbi17742hqxf3d6sl9dci08qszrkdmasnvivakg78";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [
-    ansiTerminal cereal downloadCurl filepath HTTP network
-    optparseApplicative terminalSize text zlib
-  ];
-  postInstall = ''
-    mkdir -p $out/share/man/man1
-    cp sloane.1 $out/share/man/man1/
-  '';
-  meta = {
-    homepage = "http://github.com/akc/sloane";
-    description = "A command line interface to Sloane's On-Line Encyclopedia of Integer Sequences";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-    maintainers = with self.stdenv.lib.maintainers; [ akc ];
-  };
-})
diff --git a/pkgs/applications/science/math/speedcrunch/default.nix b/pkgs/applications/science/math/speedcrunch/default.nix
index dee33a04be2..66292499f2b 100644
--- a/pkgs/applications/science/math/speedcrunch/default.nix
+++ b/pkgs/applications/science/math/speedcrunch/default.nix
@@ -23,9 +23,9 @@ stdenv.mkDerivation rec {
 
   buildFlags = "VERBOSE=1";
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage    = "http://speedcrunch.digitalfanatics.org";
-    license     = "GPLv2+";
+    license     = licenses.gpl2Plus;
     description = "A fast power user calculator";
     longDescription = ''
       SpeedCrunch is a fast, high precision and powerful desktop calculator.
diff --git a/pkgs/applications/science/math/wxmaxima/default.nix b/pkgs/applications/science/math/wxmaxima/default.nix
index a73e3dbcec0..8af49621dd9 100644
--- a/pkgs/applications/science/math/wxmaxima/default.nix
+++ b/pkgs/applications/science/math/wxmaxima/default.nix
@@ -2,14 +2,14 @@
 
 let
   name    = "wxmaxima";
-  version = "14.12.1";
+  version = "15.04.0";
 in
 stdenv.mkDerivation {
   name = "${name}-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/${name}/wxMaxima/${version}/wxmaxima-${version}.tar.gz";
-    sha256 = "0sjxvh0y5w5p2xdq3qzz3yhlsigrg3ynib9dkymhynpfnb51x82z";
+    sha256 = "1fm47ah4aw5qdjqhkz67w5fwhy8yfffa5z896crp0d3hk2bh4180";
   };
 
   buildInputs = [wxGTK maxima makeWrapper];
diff --git a/pkgs/applications/science/misc/boinc/default.nix b/pkgs/applications/science/misc/boinc/default.nix
index 0898b458593..d45f4a2b210 100644
--- a/pkgs/applications/science/misc/boinc/default.nix
+++ b/pkgs/applications/science/misc/boinc/default.nix
@@ -1,14 +1,16 @@
-{ fetchgit, stdenv, autoconf, automake, pkgconfig, m4, curl,
+{ fetchFromGitHub, stdenv, autoconf, automake, pkgconfig, m4, curl,
 mesa, libXmu, libXi, freeglut, libjpeg, libtool, wxGTK, xcbutil,
 sqlite, gtk, patchelf, libXScrnSaver, libnotify, libX11, libxcb }:
 
 stdenv.mkDerivation rec {
-  name = "boinc-7.4.14";
-
-  src = fetchgit {
-    url = "git://boinc.berkeley.edu/boinc-v2.git";
-    rev = "fb31ab18f94f3b5141bea03e8537d76c606cd276";
-    sha256 = "1465zl8l87fm1ps5f2may6mcc3pp40mpd6wphpxnwwk1lmv48x96";
+  version = "7.4.42";
+  name = "boinc-${version}";
+
+  src = fetchFromGitHub {
+    owner = "BOINC";
+    repo = "boinc";
+    rev = "561fbdae0cac3be996136319828f43cbc62c9";
+    sha256 = "1rlh463yyz88p2g5pc6avndn3x1162vcksgbqich0i3qb90jms29";
   };
 
   buildInputs = [ libtool automake autoconf m4 pkgconfig curl mesa libXmu libXi
diff --git a/pkgs/applications/science/misc/fityk/default.nix b/pkgs/applications/science/misc/fityk/default.nix
index 7a534fce4f6..7d9f8542eed 100644
--- a/pkgs/applications/science/misc/fityk/default.nix
+++ b/pkgs/applications/science/misc/fityk/default.nix
@@ -1,18 +1,22 @@
-{ stdenv, fetchurl, wxGTK30, boost, lua, zlib, bzip2, xylib, readline, gnuplot }:
+{ stdenv, fetchFromGitHub, autoreconfHook, wxGTK30, boost, lua, zlib, bzip2
+, xylib, readline, gnuplot, swig3 }:
 
 let
   name    = "fityk";
-  version = "1.2.9";
+  version = "1.3.0";
 in
 stdenv.mkDerivation {
   name = "${name}-${version}";
 
-  src = fetchurl {
-    url = "https://github.com/wojdyr/fityk/releases/download/v${version}/${name}-${version}.tar.bz2";
-    sha256 = "1gl938nd2jyya8b3gzbagm1jab2mkc9zvr6zsg5d0vkfdqlk0pv1";
+  src = fetchFromGitHub {
+    owner = "wojdyr";
+    repo = "fityk";
+    rev = "v${version}";
+    sha256 = "07xzhy47q5ddg1qn51qds4wp6r5g2cx8bla0hm0a9ipr2hg92lm9";
   };
 
-  buildInputs = [wxGTK30 boost lua zlib bzip2 xylib readline gnuplot ];
+  buildInputs = [ autoreconfHook wxGTK30 boost lua zlib bzip2 xylib readline
+    gnuplot swig3 ];
 
   meta = {
     description = "Curve fitting and peak fitting software";
diff --git a/pkgs/applications/science/misc/golly/default.nix b/pkgs/applications/science/misc/golly/default.nix
index 63a0be47c47..bf6eabef909 100644
--- a/pkgs/applications/science/misc/golly/default.nix
+++ b/pkgs/applications/science/misc/golly/default.nix
@@ -3,11 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="golly";
-    version="2.6";
+    version="2.7";
     name="${baseName}-${version}";
-    hash="1n1k3yf23ymlwq4k6p4v2g04qd29pg2rabr4l7m9bj2b2j1zkqhz";
-    url="mirror://sourceforge/project/golly/golly/golly-2.6/golly-2.6-src.tar.gz";
-    sha256="1n1k3yf23ymlwq4k6p4v2g04qd29pg2rabr4l7m9bj2b2j1zkqhz";
+    hash="0wfr9dhdbwg2cbcl7g2s1h9pmsm1lkjncbs9m0df82bcw516xs2f";
+    url="mirror://sourceforge/project/golly/golly/golly-2.7/golly-2.7-src.tar.gz";
+    sha256="0wfr9dhdbwg2cbcl7g2s1h9pmsm1lkjncbs9m0df82bcw516xs2f";
   };
   buildInputs = [
     wxGTK perl python zlib
diff --git a/pkgs/applications/science/misc/openmodelica/default.nix b/pkgs/applications/science/misc/openmodelica/default.nix
new file mode 100644
index 00000000000..5357ff09b21
--- /dev/null
+++ b/pkgs/applications/science/misc/openmodelica/default.nix
@@ -0,0 +1,50 @@
+{stdenv, fetchgit, fetchsvn, autoconf, automake, libtool, gfortran, clang, cmake, gnumake,
+hwloc, jre, liblapack, blas, hdf5, expat, ncurses, readline, qt4, webkit, which,
+lp_solve, omniorb, sqlite, libatomic_ops, pkgconfig, file, gettext, flex, bison,
+doxygen, boost, openscenegraph, gnome, pangox_compat, xorg, git, bash, gtk, makeWrapper }:
+
+let
+
+  fakegit = import ./fakegit.nix {inherit stdenv fetchgit fetchsvn bash;} ;
+
+in
+
+stdenv.mkDerivation {
+  name = "openmodelica";
+
+  src = fetchgit (import ./src-main.nix);
+
+  buildInputs = [autoconf cmake automake libtool gfortran clang gnumake
+    hwloc jre liblapack blas hdf5 expat ncurses readline qt4 webkit which
+    lp_solve omniorb sqlite libatomic_ops pkgconfig file gettext flex bison
+    doxygen boost openscenegraph gnome.gtkglext pangox_compat xorg.libXmu
+    git gtk makeWrapper];
+
+  patchPhase = ''
+    cp -fv ${fakegit}/bin/checkout-git.sh libraries/checkout-git.sh
+    cp -fv ${fakegit}/bin/checkout-svn.sh libraries/checkout-svn.sh
+  '';
+
+  configurePhase = ''
+    autoconf
+    ./configure CC=${clang}/bin/clang CXX=${clang}/bin/clang++ --prefix=$out
+  '';
+
+  postFixup = ''
+    for e in $(cd $out/bin && ls); do
+      wrapProgram $out/bin/$e \
+        --prefix PATH : "${gnumake}/bin" \
+        --prefix LIBRARY_PATH : "${liblapack}/lib:${blas}/lib"
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "OpenModelica is an open-source Modelica-based modeling and simulation environment";
+    homepage    = "https://openmodelica.org";
+    license     = licenses.gpl3;
+    maintainers = with maintainers; [ smironov ];
+    platforms   = platforms.linux;
+  };
+}
+
+
diff --git a/pkgs/applications/science/misc/openmodelica/fakegit.nix b/pkgs/applications/science/misc/openmodelica/fakegit.nix
new file mode 100644
index 00000000000..de69626cd3e
--- /dev/null
+++ b/pkgs/applications/science/misc/openmodelica/fakegit.nix
@@ -0,0 +1,81 @@
+{stdenv, fetchgit, fetchsvn, bash } :
+
+let
+  mkscript = path : text : ''
+    mkdir -pv `dirname ${path}`
+    cat > ${path} <<"EOF"
+    #!${bash}/bin/bash
+    ME=`basename ${path}`
+    ${text}
+    EOF
+    sed -i "s@%out@$out@g" ${path}
+    chmod +x ${path}
+  '';
+  
+  hashname = r: let
+    rpl = stdenv.lib.replaceChars [":" "/"] ["_" "_"];
+  in
+    (rpl r.url) + "-" + (rpl r.rev);
+
+in
+
+stdenv.mkDerivation {
+  name = "fakegit";
+
+  buildCommand = ''
+    mkdir -pv $out/repos
+    ${stdenv.lib.concatMapStrings
+       (r : ''
+        cp -r ${fetchgit r} $out/repos/${hashname r}
+       ''
+       ) (import ./src-libs-git.nix)
+    }
+
+    ${mkscript "$out/bin/checkout-git.sh" ''
+      if test "$#" -ne 4; then
+        echo "Usage: $0 DESTINATION URL GITBRANCH HASH"
+        exit 1
+      fi
+      DEST=$1
+      URL=`echo $2 | tr :/ __`
+      GITBRANCH=$3
+      REVISION=$4
+
+      L=`echo $REVISION | wc -c`
+      if expr $L '<' 10 >/dev/null; then
+        REVISION=refs/tags/$REVISION
+      fi
+
+      REVISION=`echo $REVISION | tr :/ __`
+
+      rm -rf $DEST
+      mkdir -pv $DEST
+      echo "FAKEGIT cp -r %out/repos/$URL-$REVISION $DEST" >&2
+      cp -r %out/repos/$URL-$REVISION/* $DEST
+      chmod u+w -R $DEST
+    ''}
+
+    ${stdenv.lib.concatMapStrings
+       (r : ''
+        cp -r ${fetchsvn r} $out/repos/${hashname r}
+       ''
+       ) (import ./src-libs-svn.nix)
+    }
+
+    ${mkscript "$out/bin/checkout-svn.sh" ''
+      if test "$#" -ne 3; then
+        echo "Usage: $0 DESTINATION URL REVISION"
+        exit 1
+      fi
+      DEST=$1
+      URL=`echo $2 | tr :/ __`
+      REVISION=`echo $4 | tr :/ __`
+
+      rm -rf $DEST
+      mkdir -pv $DEST
+      echo "FAKE COPY %out/repos/$URL-$REVISION $DEST"
+      cp -r %out/repos/$URL-$REVISION/* $DEST
+      chmod u+w -R $DEST
+    ''}
+  '';
+}
diff --git a/pkgs/applications/science/misc/openmodelica/src-libs-git.nix b/pkgs/applications/science/misc/openmodelica/src-libs-git.nix
new file mode 100644
index 00000000000..aae5ab321fb
--- /dev/null
+++ b/pkgs/applications/science/misc/openmodelica/src-libs-git.nix
@@ -0,0 +1,71 @@
+[
+{ url = "https://github.com/modelica-3rdparty/ADGenKinetics.git"; rev = "42428db6e84bcde28543a3bba9bccee581309bb1"; sha256="14l005jwj1wz35gq8xlbzfz0bpsx99rs4q3dxkfh76yhnv1jh9h3"; }
+{ url = "https://github.com/modelica-3rdparty/ADMSL.git"; rev = "ed0305603f86b46d9af03e7d37dcb8b6704915b4"; sha256="15b0nqxyh8444az56ydjn594jikdl1ina5wamabk3nzm1yx218cl"; }
+{ url = "https://github.com/iea-annex60/modelica-annex60.git"; rev = "8015a01591bb24d219f57e7b69cdfcde66e39b47"; sha256="05k4pa007a6p628fq1xac0cfv8g8dnpy2bgy8h99rqpmlaa072z7"; }
+{ url = "https://github.com/OpenModelica/BioChem.git"; rev = "b5f3cb999f3cfad2bbb6fb429b496f61ecf2f628"; sha256="1l52dg888vwx4668spn59hqvfkpl9g06g8n2cdxiap7lvsyh6w9x"; }
+{ url = "https://github.com/modelica-3rdparty/BondGraph.git"; rev = "20c23e60d12989bd4668ccac47659d82d39d29cc"; sha256="1i9cmiy1ya04h2ld0gy0x2gvdrfksl66fmcrgdm1vpsnbb6pviv9"; }
+{ url = "https://github.com/modelica-3rdparty/BondLib.git"; rev = "df7a40fe612617da22e27d39edfa4b27d65f23d0"; sha256="005djwxd568zyk3ndss9hv165dci9x0dgjmcdjhnqmsap3w83hlz"; }
+{ url = "https://github.com/modelica-3rdparty/BrineProp.git"; rev = "fed013cdeec0fb9552964376b575a8e3635539ab"; sha256="020hm2q65d5iv3h8b3lhgl6j930vi2pbh4lvxv3b3k7i9z02q43a"; }
+{ url = "https://github.com/lbl-srg/modelica-buildings.git"; rev = "ef89361cc8673b077b9221efbf78aa63b4d7babd"; sha256="04gclknhl2f5z7w9fsbhwawisd0ibmvwpplx0siqwzvjx7nsmdg4"; }
+{ url = "https://github.com/lbl-srg/modelica-buildings.git"; rev = "444aa231f423b8d04225bf8672e3212d089fbfe4"; sha256="0q754mlkwqj0jcqsmxksvcz4ak2i86f9s41fhffh5jvra27cvq01"; }
+{ url = "https://github.com/modelica-3rdparty/Chemical.git"; rev = "aa2642608e587ddb6897e8c3ffabb3aa099510bd"; sha256="0y46spcb6rw0jpj4v20nlw8xlvi5kypij46f1msvwgr7dfgy4gl4"; }
+{ url = "https://github.com/modelica-3rdparty/ComplexLib.git"; rev = "0b78942ee4fa95ae71347a0d552dd869fdf4c708"; sha256="18llf5ccrq3b0f4cjznfycskwf78pik8370xv45w9gb51gamszrn"; }
+{ url = "https://github.com/lochel/ConPNlib.git"; rev = "bbf6e9711665d55e5a8cf2f7235fa013c2315104"; sha256="0g3ll44sn2ff14qxwdyakw9h5b8b7vzabxp8cb8km16wcdqzgcxx"; }
+{ url = "https://github.com/modelica-3rdparty/DESLib.git"; rev = "7a473d8d16b118c3ea05761c6f43b17fd9838e4e"; sha256="19f2121n8rdc9svcjk8irivsd9wqcb9ai9jx72s2r85fkbvm8jc3"; }
+{ url = "https://github.com/modelica-3rdparty/ExtendedPetriNets.git"; rev = "2f4eac0651c1ab0ed56b75ec61424e0ef15181d3"; sha256="0wwj756pg33qwb90ycbfkrk5xsiwsbrqvq3i16i4pisi21vl6jk9"; }
+{ url = "https://github.com/modelica-3rdparty/ExternData.git"; rev = "396164fa708cc7c7e64da55ac0b3cba23939f790"; sha256="09052qmv91a9wawsl93b5b3q47awrxhnsbb9mrv39kpnwygfh7dq"; }
+{ url = "https://github.com/modelica/ExternalMedia.git"; rev = "1b77869b31dc3509defeccb1236db4b05d2f6f5b"; sha256="05sszn4bn8r78syydyjq8csn9xv4az56mm9lrarqykqdh78pvlqp"; }
+{ url = "https://github.com/kdavies4/FCSys.git"; rev = "cb4b17f34313b9d8f2d4223d5365684b4dc1ab65"; sha256="114p7ja6b3fwlkvkkjhbx78fxc7v4af2sbs783hkdga86m1v4ib6"; }
+{ url = "https://github.com/modelica-3rdparty/FastBuildings.git"; rev = "1f5cfebc2f42c13e272bff639ffa3449d5740bf7"; sha256="0sry1n2pliddz0pjv8dp899fx98f16n1arc8zvq36k5grvi52fby"; }
+{ url = "https://github.com/modelica-3rdparty/FaultTriggering.git"; rev = "10c226b7e5b2af901b356ac437c90d6616a6e9a4"; sha256="0a9j18qjwigq11nghl97syxa9bscs1aj6vwpkldh50csnj5h6g2s"; }
+{ url = "https://github.com/modelica-3rdparty/FuzzyControl.git"; rev = "19ff67ff129a440482cc85f216f287b05ea6ec0d"; sha256="0ijcqns7pijsavijn4wlrdsz64k5ks626sly7r28wvrk9af2m2cx"; }
+{ url = "https://github.com/modelica-3rdparty/HelmholtzMedia.git"; rev = "e54fcd0e436d65c85de6c6b935983e363cdc9f6c"; sha256="05afh0379fx4mjjn7jb8j5p4am6qi62hjxvasb38b6fcp9rnysn4"; }
+{ url = "https://github.com/modelica-3rdparty/IdealizedContact.git"; rev = "8ebac550d913f6d2b3af4d1aea5044e72c7eb6b0"; sha256="03gh2a7hf44clshwkiyz786w847hmyr3bicdqd9969fbirgcqn6m"; }
+{ url = "https://github.com/modelica-3rdparty/IndustrialControlSystems.git"; rev = "6a2414307d5998c6d081efe803c2b575a532b3ba"; sha256="09la9h07x8bkh7zhrwykgj1467qdryjvxhvnnm8qvsim0dl9inc4"; }
+{ url = "https://github.com/modelica-3rdparty/LinearMPC.git"; rev = "1e91a5dcaa662cd30c5b09a9d0267289703f933b"; sha256="12094fqmwi65h0mc65b96krbj6b8dgn6jiww3fnv6khglb21kwvd"; }
+{ url = "https://github.com/modelica/Modelica.git"; rev = "refs/tags/v1.6"; sha256="106w83ylgbxf63wr7p9z5q8vqz2qcsaw0zwaad7d3saq6rdbj30c"; }
+{ url = "https://github.com/modelica/Modelica.git"; rev = "d442bcd461b8db9873e33b6141bdbd37bcff9de8"; sha256="1icnd0fxix5khnsvdhy7kmzn6lnqkggbvfrbln98a2h5zqd6s32w"; }
+{ url = "https://github.com/modelica/Modelica.git"; rev = "af2a3e1597d648d6826665c89cf9eaf5c2a632bc"; sha256="0ryk0iwakdazhsjqvan41w6f9bvgl329zkqchcdg6nkidiigziwh"; }
+{ url = "https://github.com/modelica/Modelica.git"; rev = "48943d87db45a6c312b5a5789d384acde44a934b"; sha256="1hi2vkpmx734baa9m1lqzallcykhh3snd68r387gndiv96f6zx3n"; }
+{ url = "https://github.com/modelica/Modelica.git"; rev = "164af873cc5955c50f9592a7d2f3c155f703849c"; sha256="071svqwd72sy85sngbg5r22ab693c0gw2xx29gk1sqrk2nchmvia"; }
+{ url = "https://github.com/OpenModelica/modelica3d.git"; rev = "daf5669b03ad33fc6999671d1c0e7521134a282b"; sha256="1scs6v2cp2r4jz4diszwbqf9kvzf49pid50dmpsz0gfhx06j9y2v"; }
+{ url = "https://github.com/modelica-deprecated/ModelicaAdditions.git"; rev = "568db43766186826b880f9d4bfafeff25cc2c4ab"; sha256="1py5i3afxdvz1dmxxwb2mqj8kyzdhg4jnnqwl8h50akizg4i49pl"; }
+{ url = "https://github.com/xogeny/ModelicaBook.git"; rev = "0e670cfae4db653bd34ea777d6b56423e9be2c9f"; sha256="0lxh08w6nii4p5yk7c0xmfi5y4xkjkzz4hirr3kqdhdfybcwq824"; }
+{ url = "https://github.com/modelica-compliance/compliance.git"; rev = "ca5092c14bb7af4507a10700ee49181a3a3ee199"; sha256="12ja6dhwlbq412kxjdviypgchipxpsg8l0sf6r17g6lbsi19i2b6"; }
+{ url = "https://github.com/modelica-3rdparty/ModelicaDEVS.git"; rev = "a987aa9552fbbe71b2ee2e8c28958f9d213087ae"; sha256="0qcw7vw28xadim0h8kr2km09d8vdj05ibdpzcnpny9n43pm9s5hx"; }
+{ url = "https://github.com/modelica/Modelica_DeviceDrivers.git"; rev = "db912ba7e1317b8f6a776ccf9a19f69c77a9c477"; sha256="052h2lr7xgfag5fks19wbldqmb985kxlc5fzysl7c9w3fnijp0ml"; }
+{ url = "https://github.com/modelica/Modelica_EnergyStorages.git"; rev = "9f057365232364e31a31a8e525f96284b98c7de3"; sha256="195m5b3z8qgg9kih9zsdx1h8zgrm37q63890r59akka05a97j48h"; }
+{ url = "https://github.com/modelica/Modelica_LinearSystems2.git"; rev = "18916fdc485285baab12481701b53d4eb606a3f1"; sha256="0fhvdwcgk8q3z1a98l2bxv8a6dysrs4ll6xfyzpni7yq8gp4mg4q"; }
+{ url = "https://github.com/modelica/Modelica_Synchronous.git"; rev = "d0f5ee57bc7b639738e88026674a87343b33dbe1"; sha256="0l75v4d0fgf07ify0h3skh4y9pfw9gxh9hbj1lbsdgglmzlrcvbg"; }
+{ url = "https://github.com/modelica-3rdparty/MotorcycleDynamics.git"; rev = "2be2667f9936d88ffb9b8a8246c5af9ccb0b307f"; sha256="0jazwmpqpyhhgs9qdn9drmplgp2yjs0ky7wll5x9929dkgy80m6x"; }
+{ url = "https://github.com/modelica-3rdparty/NCLib.git"; rev = "ed3d72f176ac6b7031ce73be9d80101141e74a69"; sha256="1pbpv8w1lsa9vdwp7qbih8iim91ms22b01wz376b548d0x2r95la"; }
+{ url = "https://github.com/modelica-3rdparty/NeuralNetwork.git"; rev = "c44e4d1fe97fd4f86dafcd05ad3713692e3f1806"; sha256="0s1v8k71zq1s9gjlvi3zr23nwfknp4x17cxm64a0y3vsi3kahj2s"; }
+{ url = "https://github.com/DLR-SR/Noise.git"; rev = "9b57476845539e56769cf76ea0fe7bf3c7eb5d11"; sha256="0icrb63f6dm4gww2nyby9i7s7qxvhvialp36xzcgmi7nlq7crjr2"; }
+{ url = "https://github.com/modelica-3rdparty/ObjectStab.git"; rev = "2a723e0b223af50f4ffdd62f8ac901e0f87b9323"; sha256="1b6zi27slzzfbkmbcqxygsn5i5w0zkq0hfrfb72vf7mbgz07j19j"; }
+{ url = "https://github.com/cparedis/OpenHydraulics.git"; rev = "d3173d1f06f7d14c9d7c41769f143617ff03a3ad"; sha256="1hn5rcnmzcbiaqdnxfn02wddmrpj9bcdi9p680f31hbh3vb0i3r6"; }
+{ url = "https://github.com/lochel/PNlib.git"; rev = "44c7d277980b7a88b449b72edec0a56416b40fa9"; sha256="026wdhbxnzarmj8gw0as70vj8f1gwc51z38hjqpswxkl0xd6mfvp"; }
+{ url = "https://github.com/MarekMatejak/Physiolibrary.git"; rev = "49d59060f6e5b4cb68560c6d7467e84ea4318056"; sha256="0klqs2axjm3s780sq4plq4wmbf9mszz2jmq9fprgxy9pw7iszbhc"; }
+{ url = "https://github.com/dzimmer/PlanarMechanics.git"; rev = "d998a1b27355e83d2ff4849d71281a919a3234aa"; sha256="0vyq6mninn38wy2d60rk753xbkfqim2y6y31py7kq2mm170jfqf4"; }
+{ url = "https://github.com/modelica/PowerSystems.git"; rev = "7b551888089277a0dd979db636d47aba0279e8f0"; sha256="0y13f1nllc7riksnly25wmmp6mc30c1b48dbq2lr1nag6yg3blwm"; }
+{ url = "https://github.com/modelica/PowerSystems.git"; rev = "3abd48aa53bbcd3f3e2ddfa2371680febf8baf48"; sha256="1nr2nbpaxywk8cpwnk9rr2zr87mm2gb9b4plqipjdlrrkjlk9fka"; }
+{ url = "https://github.com/modelica-3rdparty/PraxisSimulationstechnik.git"; rev = "f7db177786f84033f3a50b7474988b190a1dfb46"; sha256="08bdm7k7w35kg9gkrvcn382zkwf5h3iwkkx60d5fj64j5d5klray"; }
+{ url = "https://github.com/modelica-3rdparty/QCalc.git"; rev = "af6c34dda691a9bdf7ca1de10650974b2d5cecf5"; sha256="0p0zhl27cnr492byrzib0dyn7zp5yb7wcr0spv10ngm6j90cij6y"; }
+{ url = "https://github.com/modelica-3rdparty/QSSFluidFlow.git"; rev = "d84a2c107132f2cd47ea3c3751238d69e4b1f64b"; sha256="02cdvv33pi0qlmg8n401s4cxf59l9b4ff4ixf7gwn4w4n1y9bw0g"; }
+{ url = "https://github.com/modelica-3rdparty/RealTimeCoordinationLibrary.git"; rev = "655ac1a22aa6deb04ea8e3869dd0aa9fb9540754"; sha256="19crf8pl9vpqq3pq1rhcbl49kkmnm4jrzpwrpqp8qc6dj8096za4"; }
+{ url = "https://github.com/modelica-3rdparty/ScalableTestSuite.git"; rev = "c6319908d45ac97ffb10e96cd42654bce36ffb97"; sha256="1g79d88bfmzcqvaghyyj86ajs38v0qnmjxbj8d53yp6nmgnaasx5"; }
+{ url = "https://github.com/modelica-3rdparty/Servomechanisms.git"; rev = "22e1874ef9ad46156617817c67a4fb1238621bf5"; sha256="0nwb7apayk7ba9iv27yv67wi4b934dy57kkvn0acxy393jhd8jqd"; }
+{ url = "https://openmodelica.org/git/SiemensPower.git"; rev = "73a3bfc6d2ddd72165bb0f3e7e9df48b643a5ed0"; sha256="0mvrkpkmr0bx2cvsb23syg7cs8k6a15vjf4n1hivdcigq4x8g2nc"; }
+{ url = "https://openmodelica.org/git/SiemensPower.git"; rev = "5ef2e38b64ff481801c0db19d52f0bef21f85f77"; sha256="1llnpl2x1g28gari1rk34hdnnwf7a4fwwxlf7i18d8bl1vsrfaja"; }
+{ url = "https://openmodelica.org/git/SiemensPower.git"; rev = "2bd9e367baaa8d44946897c3c3a32a4050ad2a2a"; sha256="1shm9blpn9m87ci6wwkinpmihr1fik9j0a0pj2nxy0cjrr2jzbn4"; }
+{ url = "https://github.com/modelica-3rdparty/Spot.git"; rev = "2f74417f1681570900a1ed373dcbe4b42634ec7b"; sha256="0k5h2k6x98zvvsafpw7y16xs9d6lxz0csa0mlm4wwggaywadn255"; }
+{ url = "https://github.com/modelica-3rdparty/SystemDynamics.git"; rev = "c58a26dc3e62a50e64fd336dc4aa499b2d5ad314"; sha256="0ra3a2vgqmry92kmm060gfa41mrpkgbs4swzl78ih3icawfzjz8q"; }
+{ url = "https://github.com/modelica-3rdparty/ThermoPower.git"; rev = "e012268625dd1645fe5570cf31d64129d83a8192"; sha256="1rlkli48kc9hnkplgb0bjkb6ajn7agiw4yh9l5sfvlv7k7k2gc8l"; }
+{ url = "https://openmodelica.org/git/ThermoSysPro.git"; rev = "d4f9c3ed35f7520f82439eb6e9f4057ae0f82b73"; sha256="0hxbn26g479qkr6rrglx9ljdxnpzd5ll1sf2v08skghrdjjb8jcx"; }
+{ url = "https://openmodelica.org/git/ThermoSysPro.git"; rev = "51e7ea2d2e121ee640e7897335c294923f8eaeb0"; sha256="0l11mzjkaxndsqrnnr0z7qvk08svv229119qkm81yb53ich9wnyw"; }
+{ url = "https://github.com/modelica/VehicleInterfaces.git"; rev = "ad956a35643d53e207ee126d67ea1f3f38337a39"; sha256="0g90cqwjpi06gn7vca5kqnz56im76s2hrdqjhsj2bl43rza8mhr0"; }
+{ url = "https://github.com/modelica-3rdparty/WasteWater.git"; rev = "90ff44ac791ba5ed98444c8597efbd2a2af01cad"; sha256="1icrn0y389rhxmf6i0mnsfgw9v9j5innpkz3q069rfm2ji268b12"; }
+{ url = "https://github.com/xogeny/XogenyTest.git"; rev = "9b98981e8ff0f440dd319d1a806e1fd2f0ab3436"; sha256="18glaxrlxfml26w7ljlf0yj3ah1fnhpbg01py28nplsgnrfwfwqj"; }
+{ url = "https://github.com/modelica-3rdparty/msgpack-modelica.git"; rev = "6ce2ca600c4902038c0f20b43ed442f1ee204310"; sha256="01x5a9y11yf62sc0j2y49yxwm24imj2lfl3z5mwvi9038gwn0lkx"; }
+{ url = "https://github.com/modelica-3rdparty/netCDF-DataReader.git"; rev = "3d2cc8272abfbc4b667d8868f851bf3e11c6f00e"; sha256="194810a4rn0flxgirrlnxsbxarnm97309dkp1w7nva9zv1q3wj7h"; }
+{ url = "https://github.com/joewa/open-bldc-modelica.git"; rev = "7817cd703b88fc1f433269d32c31e75eb50a21c6"; sha256="1plkxkx51f9yi99ysarmx2ymldizvyr0m66k996y5lj5h81jv8a8"; }
+]
diff --git a/pkgs/applications/science/misc/openmodelica/src-libs-svn.nix b/pkgs/applications/science/misc/openmodelica/src-libs-svn.nix
new file mode 100644
index 00000000000..244da64fb4e
--- /dev/null
+++ b/pkgs/applications/science/misc/openmodelica/src-libs-svn.nix
@@ -0,0 +1,5 @@
+[
+{ url = "https://svn.modelica.org/projects/Modelica_ElectricalSystems/InstantaneousSymmetricalComponents"; rev = "7978"; sha256="0f100c7bz4ai3ryhpkbbszw8z6mykvg40p03ic92n2qq58wjk37z"; }
+{ url = "https://svn.modelica.org/projects/Modelica_EmbeddedSystems/trunk/Modelica_StateGraph2"; rev = "8121"; sha256="1cys57nc1yzkr5admc139qs5pa48rj3g69pb3j3s9xcmpd483hzp"; }
+{ url = "https://svn.modelica.org/projects/Modelica_ElectricalSystems/Modelica_PowerFlow/trunk"; rev = "3174"; sha256="0yviw1b8psn8vfyl4q1naylak3lcqi2q1bqplqg3gg9iw4aiymxl"; }
+]
diff --git a/pkgs/applications/science/misc/openmodelica/src-main.nix b/pkgs/applications/science/misc/openmodelica/src-main.nix
new file mode 100644
index 00000000000..16910675a05
--- /dev/null
+++ b/pkgs/applications/science/misc/openmodelica/src-main.nix
@@ -0,0 +1,6 @@
+{
+  url = "https://openmodelica.org/git-readonly/OpenModelica.git";
+  fetchSubmodules = true;
+  rev = "8c5d48eb31a638d5220621b20377bfe6f9e9535e";
+  sha256 = "15r0qpvnsb9a7nw3bh5n9r770ngd7p5py0ld2jy5mc4llaslkpa5";
+}
diff --git a/pkgs/applications/science/misc/openmodelica/update-src-libs-git.sh b/pkgs/applications/science/misc/openmodelica/update-src-libs-git.sh
new file mode 100755
index 00000000000..481a8979641
--- /dev/null
+++ b/pkgs/applications/science/misc/openmodelica/update-src-libs-git.sh
@@ -0,0 +1,64 @@
+#!/bin/sh
+
+CWD=`pwd`
+
+chko() { (
+T=`mktemp -d`
+trap "rm -rf $T" EXIT INT PIPE
+cd $T
+cat >check.nix <<EOF
+with import <nixpkgs> {};
+fetchgit `cat $CWD/src-main.nix`
+EOF
+nix-build check.nix
+cat result/libraries/Makefile.libs
+) }
+
+getsha256() { (
+T=`mktemp -d`
+trap "rm -rf $T" EXIT INT PIPE
+cd $T
+
+L=`echo $2 | wc -c`
+if expr $L '<' 10 >/dev/null; then
+T=`echo $2 | sed 's@"\(.*\)"@"refs/tags/\1"@'`
+cat >check.nix <<EOF
+with import <nixpkgs> {};
+fetchgit {
+  url = $1;
+  rev = $T;
+  sha256 = "0000000000000000000000000000000000000000000000000000";
+}
+EOF
+SHA=`nix-build check.nix 2>&1 | sed -n 's/.*instead has ‘\(.*\)’.*/\1/g p'`
+echo "{ url = $1; rev = $T; sha256=\"$SHA\"; }"
+else
+cat >check.nix <<EOF
+with import <nixpkgs> {};
+fetchgit {
+  url = $1;
+  rev = $2;
+  sha256 = "0000000000000000000000000000000000000000000000000000";
+}
+EOF
+SHA=`nix-build check.nix 2>&1 | sed -n 's/.*instead has ‘\(.*\)’.*/\1/g p'`
+echo "{ url = $1; rev = $2; sha256=\"$SHA\"; }"
+fi
+
+# nix-build check.nix
+) }
+
+OUT=src-libs-git.nix
+
+echo '[' > $OUT
+
+chko |
+grep checkout-git.sh |
+tr \' \" |
+while read NM TGT URL BR REV ; do
+  echo Trying $TGT $URL $REV >&2
+  getsha256 $URL $REV >> $OUT || exit 1
+done
+
+echo ']' >> $OUT
+
diff --git a/pkgs/applications/science/misc/openmodelica/update-src-libs-svn.sh b/pkgs/applications/science/misc/openmodelica/update-src-libs-svn.sh
new file mode 100755
index 00000000000..972bc7d61f1
--- /dev/null
+++ b/pkgs/applications/science/misc/openmodelica/update-src-libs-svn.sh
@@ -0,0 +1,50 @@
+#!/bin/sh
+
+CWD=`pwd`
+
+chko() { (
+T=`mktemp -d`
+trap "rm -rf $T" EXIT INT PIPE
+cd $T
+cat >check.nix <<EOF
+with import <nixpkgs> {};
+fetchgit `cat $CWD/src-main.nix`
+EOF
+nix-build check.nix
+cat result/libraries/Makefile.libs
+) }
+
+getsha256() { (
+T=`mktemp -d`
+trap "rm -rf $T" EXIT INT PIPE
+cd $T
+
+L=`echo $2 | wc -c`
+cat >check.nix <<EOF
+with import <nixpkgs> {};
+fetchsvn {
+  url = $1;
+  rev = $2;
+  sha256 = "0000000000000000000000000000000000000000000000000000";
+}
+EOF
+SHA=`nix-build check.nix 2>&1 | sed -n 's/.*instead has ‘\(.*\)’.*/\1/g p'`
+echo "{ url = $1; rev = $2; sha256=\"$SHA\"; }"
+
+# nix-build check.nix
+) }
+
+OUT=src-libs-svn.nix
+
+echo '[' > $OUT
+
+chko |
+grep checkout-svn.sh |
+tr \' \" |
+while read NM TGT URL REV ; do
+  echo Trying $TGT $URL $REV >&2
+  getsha256 $URL $REV >> $OUT || exit 1
+done
+
+echo ']' >> $OUT
+
diff --git a/pkgs/applications/science/misc/root/default.nix b/pkgs/applications/science/misc/root/default.nix
index 57d9fc40ab5..e61cb557e12 100644
--- a/pkgs/applications/science/misc/root/default.nix
+++ b/pkgs/applications/science/misc/root/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch, cmake, mesa, gfortran
+{ stdenv, fetchurl, fetchpatch, cmake, pkgconfig, mesa, gfortran
 , libX11,libXpm, libXft, libXext, zlib }:
 
 stdenv.mkDerivation rec {
@@ -10,7 +10,9 @@ stdenv.mkDerivation rec {
     sha256 = "1bkiggcyya39a794d3d2rzzmmkbdymf86hbqhh0l1pl4f38xvp6i";
   };
 
-  buildInputs = [ cmake gfortran mesa libX11 libXpm libXft libXext zlib ];
+  buildInputs = [ cmake pkgconfig gfortran mesa libX11 libXpm libXft libXext zlib ];
+
+  NIX_CFLAGS_LINK = "-lX11";
 
   # CMAKE_INSTALL_RPATH_USE_LINK_PATH is set to FALSE in
   # <rootsrc>/cmake/modules/RootBuildOptions.cmake.
diff --git a/pkgs/applications/science/molecular-dynamics/gromacs/default.nix b/pkgs/applications/science/molecular-dynamics/gromacs/default.nix
index 879690bc91e..43ef4337d57 100644
--- a/pkgs/applications/science/molecular-dynamics/gromacs/default.nix
+++ b/pkgs/applications/science/molecular-dynamics/gromacs/default.nix
@@ -19,9 +19,9 @@ stdenv.mkDerivation {
     ${if singlePrec then "-DGMX_DOUBLE=OFF" else "-DGMX_DOUBLE=ON -DGMX_DEFAULT_SUFFIX=OFF"}
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage    = "http://www.gromacs.org";
-    license     = "GPLv2";
+    license     = licenses.gpl2;
     description = "Molecular dynamics software package";
     longDescription = ''
       GROMACS is a versatile package to perform molecular dynamics,
diff --git a/pkgs/applications/science/programming/kframework/default.nix b/pkgs/applications/science/programming/kframework/default.nix
deleted file mode 100644
index e8a4f2b3156..00000000000
--- a/pkgs/applications/science/programming/kframework/default.nix
+++ /dev/null
@@ -1,102 +0,0 @@
-{ stdenv, fetchFromGitHub, maven, openjdk8, releaseTools }:
-
-# TODO:
-# - Investigate builds on platforms other than 64-bit linux
-# - Separate package for Maven cache? This would speed up builds and
-#   theoretically could still be pure
-# - Find a way to prevent Maven from downloading artifacts irrelevant
-#   to the platform for which we are building
-
-releaseTools.mvnBuild rec {
-  name = "kframework-20150415";
-
-  mvn8 = maven.override {
-    jdk = openjdk8; # K uses Java 8. The official docs reference the
-                    # Oracle VM, but it's been working with OpenJDK
-  };
-
-  src = fetchFromGitHub {
-    owner = "kframework";
-    repo = "k";
-    rev = "85a41bc024"; # nightly build for April 15th, 2015
-    sha256 = "01ndfdnqxp2w86pg3ax39sxayb2pfm39lj1h3818zzn86gqwa1vc";
-  };
-
-  buildInputs = [ mvn8 openjdk8 ];
-
-  preSetupPhase = ''
-    # z3 needs this to pass tests
-    export LD_LIBRARY_PATH=$(cat $NIX_CC/nix-support/orig-cc)/lib
-    # not sure if this does anything, since it might only speed up incremental builds
-    export MAVEN_OPTS="-XX:+TieredCompilation"
-  '';
-
-  mvnAssembly = ''
-    mvn package -Dcheckstyle.skip -Dmaven.test.skip=true -Dmaven.repo.local=$M2_REPO
-  '';
-
-  mvnRelease = ''
-    true # do nothing, since mvn package is sufficient
-  '';
-
-  # this is a custom version of k-distribution/src/main/scripts/lib/k
-  kscript = ''
-    #!/usr/bin/env bash
-    export JAVA=${openjdk8}/bin/java
-
-    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"$out/lib"
-
-    export K_OPTS="-Xms64m -Xmx1024m -Xss32m -XX:+TieredCompilation"
-    export MISC_ARGS="-Djava.awt.headless=true"
-    export ARGS="$MISC_ARGS $K_OPTS"
-    $JAVA $ARGS -cp "$out/share/kframework/lib/java/*" org.kframework.main.Main "$@"
-  '';
-
-  finalPhase = ''
-    # set some environment variables
-    export K_ROOT=$PWD/k-distribution/target/release/k/
-    export K_SHARE=$out/share/kframework/
-    # make requisite directories
-    mkdir -p $out/lib $K_SHARE/lib/native
-    # copy over bin
-    cp -R $K_ROOT/bin                             $K_SHARE/
-    # symlink $out/bin to $out/share/kframework/bin
-    ln -s $K_SHARE/bin                            $out/bin
-    # copy everything relevant to $out/share/kframework
-    # we may want to consider adding the documentation etc.
-    cp -R $K_ROOT/include                         $K_SHARE/
-    cp -R $K_ROOT/lib/java                        $K_SHARE/lib/
-    cp -R $K_ROOT/lib/native/linux                $K_SHARE/lib/native/
-    cp -R $K_ROOT/lib/native/linux64              $K_SHARE/lib/native/
-    # remove Windows batch scripts
-    rm $K_SHARE/bin/*.bat # */
-    # TODO: fix these scripts so they work
-    rm $K_SHARE/bin/kserver $K_SHARE/bin/stop-kserver
-    # make our k wrapper script and substitute $out for its value
-    echo -n "$kscript" | sed "s:\$out:$out:g" > $K_SHARE/lib/k
-    chmod +x $K_SHARE/lib/k
-    # symlink requisite binaries
-    ln -s $K_SHARE/lib/k                           $out/lib/k
-    ln -s $K_SHARE/lib/native/linux/sdf2table      $out/bin/sdf2table
-    ln -s $K_SHARE/lib/native/linux64/z3           $out/bin/z3
-    ln -s $K_SHARE/lib/native/linux64/libz3.so     $out/lib/libz3.so
-    ln -s $K_SHARE/lib/native/linux64/libz3java.so $out/lib/libz3java.so
-    # patch Z3 so it uses the right interpreter/libs
-    patchelf \
-      --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-      --set-rpath $(cat $NIX_CC/nix-support/orig-cc)/lib \
-      --force-rpath \
-      $K_SHARE/lib/native/linux64/z3
-  '';
-
-  meta = {
-    description = "A rewrite-based executable semantic framework in which programming languages, type systems and formal analysis tools can be defined";
-    homepage = http://www.kframework.org;
-    license = stdenv.lib.licenses.bsd3;     # technically it is the UIUC/NCSA license
-                                            # but LLVM uses that license as well and
-                                            # it is marked as BSD3
-    maintainers = [ stdenv.lib.maintainers.taktoa ];
-    platforms = stdenv.lib.platforms.linux; # I haven't done testing on other OSes, but
-                                            # since it's Java it should run anywhere
-  };
-}
diff --git a/pkgs/applications/science/spyder/default.nix b/pkgs/applications/science/spyder/default.nix
index 806d2f546cf..382a5cb5532 100644
--- a/pkgs/applications/science/spyder/default.nix
+++ b/pkgs/applications/science/spyder/default.nix
@@ -8,12 +8,13 @@
 }:
 
 buildPythonPackage rec {
-  name = "spyder-2.2.5";
+  name = "spyder-${version}";
+  version = "2.3.6";
   namePrefix = "";
 
   src = fetchurl {
-    url = "https://spyderlib.googlecode.com/files/${name}.zip";
-    sha256 = "1bxc5qs2bqc21s6kxljsfxnmwgrgnyjfr9mkwzg9njpqsran3bp2";
+    url = "https://pypi.python.org/packages/source/s/spyder/${name}.zip";
+    sha256 = "0e6502e0d3f270ea8916d1a3d7ca29915801d31932db399582bc468c01d535e2";
   };
 
   buildInputs = [ unzip ];
@@ -23,6 +24,11 @@ buildPythonPackage rec {
   # There is no test for spyder
   doCheck = false;
 
+  # Use setuptools instead of distutils.
+  preConfigure = ''
+    export USE_SETUPTOOLS=True
+  '';
+
   desktopItem = makeDesktopItem {
     name = "Spyder";
     exec = "spyder";
@@ -49,9 +55,9 @@ buildPythonPackage rec {
       environment for the Python language with advanced editing, interactive
       testing, debugging and introspection features.
     '';
-    homepage = https://code.google.com/p/spyderlib/;
+    homepage = https://github.com/spyder-ide/spyder/;
     license = licenses.mit;
     platforms = platforms.linux;
-    maintainers = [ maintainers.bjornfor ];
+    maintainers = with maintainers; [ bjornfor fridh ];
   };
 }
diff --git a/pkgs/applications/search/recoll/default.nix b/pkgs/applications/search/recoll/default.nix
index 4274f73c7e5..3182f4a5c66 100644
--- a/pkgs/applications/search/recoll/default.nix
+++ b/pkgs/applications/search/recoll/default.nix
@@ -1,17 +1,18 @@
 { stdenv, fetchurl
 , qt4, xapian, file, python
 , djvulibre, groff, libxslt, unzip, xpdf, antiword, catdoc, lyx
+, libwpd, unrtf, untex
 , ghostscript, gawk, gnugrep, gnused, gnutar, gzip, libiconv }:
 
 assert stdenv.system != "powerpc-linux";
 
 stdenv.mkDerivation rec {
-  ver = "1.18.1";
+  ver = "1.20.6";
   name = "recoll-${ver}";
 
   src = fetchurl {
     url = "http://www.lesbonscomptes.com/recoll/${name}.tar.gz";
-    sha256 = "0cyrkx5aza3485avb2kxc6cbsqqrb32l1kq8ravr9d828331v84f";
+    sha256 = "0ympk2w21cxfvysyx96p0npsa54csfc84cicpi8nsj1qp824zxwq";
   };
 
   configureFlags = [ "--with-inotify" ];
@@ -40,22 +41,21 @@ stdenv.mkDerivation rec {
       substituteInPlace  $f --replace unzip         ${unzip}/bin/unzip
       substituteInPlace  $f --replace xls2csv       ${catdoc}/bin/xls2csv
       substituteInPlace  $f --replace xsltproc      ${libxslt}/bin/xsltproc
+      substituteInPlace  $f --replace unrtf         ${unrtf}/bin/unrtf
+      substituteInPlace  $f --replace untex         ${untex}/bin/untex
+      substituteInPlace  $f --replace wpd2html      ${libwpd}/bin/wpd2html
     done
   '';
-    # TODO:
-    #substituteInPlace  $f --replace unrtf         ${unrtf}/bin/unrtf 
-    #substituteInPlace  $f --replace untex         ${untex}/bin/untex
-    #substituteInPlace  $f --replace wpd2html      ${wpd2html}/bin/wpd2html
 
-  meta = {
-    description = "finds keywords inside documents as well as file names";
+  meta = with stdenv.lib; {
+    description = "A full-text search tool";
     longDescription = ''
       Recoll is an Xapian frontend that can search through files, archive
       members, email attachments. 
     '';
     homepage = http://www.lesbonscomptes.com/recoll/;
-    license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.unix;
-    maintainers = with stdenv.lib.maintainers; [ jcumming ];
+    license = licenses.gpl2;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ jcumming ];
   };
 }
diff --git a/pkgs/applications/version-management/bazaar/default.nix b/pkgs/applications/version-management/bazaar/default.nix
index 648d59ac01c..28406cecbb0 100644
--- a/pkgs/applications/version-management/bazaar/default.nix
+++ b/pkgs/applications/version-management/bazaar/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pythonPackages, cacert }:
+{ stdenv, fetchurl, pythonPackages }:
 
 stdenv.mkDerivation rec {
   version = "2.6";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "1c6sj77h5f97qimjc14kr532kgc0jk3wq778xrkqi0pbh9qpk509";
   };
 
-  buildInputs = [ pythonPackages.python pythonPackages.wrapPython cacert ];
+  buildInputs = [ pythonPackages.python pythonPackages.wrapPython ];
 
   # Readline support is needed by bzrtools.
   pythonPath = [ pythonPackages.readline ];
@@ -19,10 +19,9 @@ stdenv.mkDerivation rec {
   patches = [ ./add_certificates.patch ];
   postPatch = ''
     substituteInPlace bzrlib/transport/http/_urllib2_wrappers.py \
-      --subst-var-by "certPath" "${cacert}/etc/ca-bundle.crt"
+      --subst-var-by certPath /etc/ssl/certs/ca-certificates.crt
   '';
 
-
   installPhase = ''
     python setup.py install --prefix=$out
     wrapPythonPrograms
diff --git a/pkgs/applications/version-management/bazaar/tools.nix b/pkgs/applications/version-management/bazaar/tools.nix
index f10fb5e65ce..4e03371ff19 100644
--- a/pkgs/applications/version-management/bazaar/tools.nix
+++ b/pkgs/applications/version-management/bazaar/tools.nix
@@ -1,20 +1,22 @@
-args : with args; 
+{ stdenv, fetchurl, makeWrapper, python2, bazaar }:
 
-rec {
-  version = "2.5";
+stdenv.mkDerivation rec {
+  name = "bzr-tools-${version}";
+  version = "2.6.0";
+  
   src = fetchurl {
     url = "http://launchpad.net/bzrtools/stable/${version}/+download/bzrtools-${version}.tar.gz";
-    sha256 = "0gzh63vl9006cpklszwmsymrq5ddxxrnxwbv5bwi740jlvxzdkxw";
+    sha256 = "0n3zzc6jf5866kfhmrnya1vdr2ja137a45qrzsz8vz6sc6xgn5wb";
   };
 
-  buildInputs = [];
-  configureFlags = [];
+  buildInputs = [ makeWrapper python2 ];
 
-  /* doConfigure should be specified separately */
-  phaseNames = [(simplyShare "bzrtools")];
+  installPhase = ''
+    ${python2}/bin/python ./setup.py install --prefix=$out
+  '';
       
-  name = "bzr-tools-${version}";
   meta = {
     description = "Bazaar plugins";
+    homepage = http://wiki.bazaar.canonical.com/BzrTools;
   };
 }
diff --git a/pkgs/applications/version-management/codeville/0.8.0.nix b/pkgs/applications/version-management/codeville/0.8.0.nix
deleted file mode 100644
index 0c0f3c4c19c..00000000000
--- a/pkgs/applications/version-management/codeville/0.8.0.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-args : with args; 
-
-if (! python ? dbSupport) || (! python.dbSupport) then 
-  throw ''Python DB4 support is required for codeville.'' 
-else
-
-rec {
-  src = fetchurl {
-    url = http://codeville.org/download/Codeville-0.8.0.tar.gz;
-    sha256 = "1p8zc4ijwcwf5bxl34n8d44mlxk1zhbpca68r93ywxqkqm2aqz37";
-  };
-
-  buildInputs = [python makeWrapper];
-  configureFlags = [];
-
-  /* doConfigure should be specified separately */
-  phaseNames = ["installPythonPackage" (makeManyWrappers ''$out/bin/*'' ''--prefix PYTHONPATH : $(toPythonPath $out)'')];
-      
-  name = "codeville-0.8.0";
-  meta = {
-    description = "RCS with powerful merge";
-  };
-}
diff --git a/pkgs/applications/version-management/cvs-fast-export/default.nix b/pkgs/applications/version-management/cvs-fast-export/default.nix
new file mode 100644
index 00000000000..62a58ee985c
--- /dev/null
+++ b/pkgs/applications/version-management/cvs-fast-export/default.nix
@@ -0,0 +1,50 @@
+{stdenv, fetchurl, makeWrapper, flex, bison,
+ asciidoc, docbook_xml_dtd_45, docbook_xml_xslt,
+ libxml2, libxslt,
+ python27, rcs, cvs, git,
+ coreutils, rsync}:
+with stdenv; with lib;
+mkDerivation rec {
+  name = "cvs-fast-export-${meta.version}";
+  meta = {
+    version = "1.32";
+    description = "Export an RCS or CVS history as a fast-import stream";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ dfoxfranke ];
+    homepage = "http://www.catb.org/esr/cvs-fast-export/";
+    platforms = platforms.all;
+  };
+
+  src = fetchurl {
+    url = "http://www.catb.org/~esr/cvs-fast-export/cvs-fast-export-1.32.tar.gz";
+    sha256 = "5bfb9a5650517d337a96a598795b50bc40ce12172854a6581267e7be3dbcfb97";
+  };
+
+  buildInputs = [
+    flex bison asciidoc docbook_xml_dtd_45 docbook_xml_xslt libxml2 libxslt
+    python27 rcs cvs git makeWrapper
+  ];
+
+  postPatch = "patchShebangs .";
+
+  preBuild = ''
+    makeFlagsArray=(
+      XML_CATALOG_FILES="${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml ${docbook_xml_xslt}/xml/xsl/docbook/catalog.xml"
+      LIBS=""
+      prefix="$out"
+    )
+  '';
+
+  doCheck = true;
+
+  postInstall =
+    let
+      binpath = makeSearchPath "bin" [ out rcs cvs git coreutils rsync ];
+    in ''
+      for prog in cvs-fast-export cvsconvert cvssync; do
+        wrapProgram $out/bin/$prog \
+          --prefix PATH : ${binpath}
+      done
+    ''
+  ;
+}
diff --git a/pkgs/applications/version-management/fossil/default.nix b/pkgs/applications/version-management/fossil/default.nix
index 1093bbe0d02..19c2c1f2ef1 100644
--- a/pkgs/applications/version-management/fossil/default.nix
+++ b/pkgs/applications/version-management/fossil/default.nix
@@ -1,15 +1,15 @@
 {stdenv, fetchurl, zlib, openssl, tcl, readline, sqlite, withJson ? true}:
 
 stdenv.mkDerivation rec {
-  name = "fossil-1.32";
+  name = "fossil-1.33";
 
   src = fetchurl {
     urls = 
       [
-        "https://www.fossil-scm.org/fossil/tarball/Fossil-6c40678e.tar.gz?uuid=6c40678e9114c41a50f73cc43f6f942ace0408ec"
-        ];
+        https://www.fossil-scm.org/download/fossil-src-1.33.tar.gz
+      ];
     name = "${name}.tar.gz";
-    sha256 = "0f1rvqiy630z2q1q8r3kgdd0c6sxjx8c8pm46yabn238xvf3bfnr";
+    sha256 = "0gkzd9nj3xyznh9x8whv0phdnj11l5c8164rc3l0jvs5i61c95b2";
   };
 
   buildInputs = [ zlib openssl readline sqlite ];
diff --git a/pkgs/applications/version-management/git-and-tools/default.nix b/pkgs/applications/version-management/git-and-tools/default.nix
index 56a6618e531..6a365dc69a5 100644
--- a/pkgs/applications/version-management/git-and-tools/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/default.nix
@@ -1,7 +1,7 @@
-/* moving all git tools into one attribute set because git is unlikely to be
- * referenced by other packages and you can get a fast overview.
-*/
-args: with args; with pkgs;
+/* All git-relates tools live here, in a separate attribute set so that users
+ * can get a fast overview over what's available.
+ */
+args @ {pkgs}: with args; with pkgs;
 let
   inherit (pkgs) stdenv fetchgit fetchurl subversion;
 
@@ -46,17 +46,18 @@ rec {
     sendEmailSupport = !stdenv.isDarwin;
   };
 
-  gitAnnex = pkgs.haskell-ng.packages.ghc784.git-annex;
+  git-annex = pkgs.haskellPackages.git-annex-with-assistant;
+  gitAnnex = git-annex;
 
   qgit = import ./qgit {
     inherit fetchurl stdenv;
-    inherit (xlibs) libXext libX11;
+    inherit (xorg) libXext libX11;
     qt = qt4;
   };
 
   qgitGit = import ./qgit/qgit-git.nix {
     inherit fetchurl sourceFromHead stdenv;
-    inherit (xlibs) libXext libX11;
+    inherit (xorg) libXext libX11;
     qt = qt4;
   };
 
@@ -95,6 +96,8 @@ rec {
 
   gitflow = callPackage ./gitflow { };
 
+  git-radar = callPackage ./git-radar { };
+
   git-remote-hg = callPackage ./git-remote-hg { };
 
   gitRemoteGcrypt = callPackage ./git-remote-gcrypt { };
@@ -104,4 +107,6 @@ rec {
   git-cola = callPackage ./git-cola { };
 
   git-imerge = callPackage ./git-imerge { };
+
+  git-crypt = callPackage ./git-crypt { };
 }
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
deleted file mode 100644
index d4d627d6154..00000000000
--- a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
+++ /dev/null
@@ -1,56 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, aeson, async, aws, blazeBuilder, bloomfilter, bup
-, byteable, caseInsensitive, clientsession, conduit, conduitExtra
-, cryptoApi, cryptohash, curl, dataDefault, dataenc, DAV, dbus
-, dlist, dns, editDistance, exceptions, fdoNotify, feed, filepath
-, git, gnupg1, gnutls, hamlet, hinotify, hslogger, httpClient
-, httpConduit, httpTypes, IfElse, json, lsof, MissingH
-, monadControl, mtl, network, networkInfo, networkMulticast
-, networkProtocolXmpp, networkUri, openssh, optparseApplicative
-, pathPieces, perl, QuickCheck, random, regexTdfa, resourcet, rsync
-, SafeSemaphore, securemem, SHA, shakespeare, stm, tasty
-, tastyHunit, tastyQuickcheck, tastyRerun, text, time, torrent
-, transformers, unixCompat, utf8String, uuid, wai, waiExtra, warp
-, warpTls, wget, which, xmlTypes, yesod, yesodCore, yesodDefault
-, yesodForm, yesodStatic
-}:
-
-cabal.mkDerivation (self: {
-  pname = "git-annex";
-  version = "5.20141231";
-  sha256 = "0rrwaclc3mpn39087fs5pgn0axjp5mki0nhj9a3fjjchdwd8wzyf";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [
-    aeson async aws blazeBuilder bloomfilter byteable caseInsensitive
-    clientsession conduit conduitExtra cryptoApi cryptohash dataDefault
-    dataenc DAV dbus dlist dns editDistance exceptions fdoNotify feed
-    filepath gnutls hamlet hinotify hslogger httpClient httpConduit
-    httpTypes IfElse json MissingH monadControl mtl network networkInfo
-    networkMulticast networkProtocolXmpp networkUri optparseApplicative
-    pathPieces QuickCheck random regexTdfa resourcet SafeSemaphore
-    securemem SHA shakespeare stm tasty tastyHunit tastyQuickcheck
-    tastyRerun text time torrent transformers unixCompat utf8String
-    uuid wai waiExtra warp warpTls xmlTypes yesod yesodCore
-    yesodDefault yesodForm yesodStatic
-  ];
-  buildTools = [
-    bup curl git gnupg1 lsof openssh perl rsync wget which
-  ];
-  configureFlags = "-fAssistant -fProduction";
-  preConfigure = "export HOME=$TEMPDIR";
-  installPhase = "./Setup install";
-  checkPhase = ''
-    cp dist/build/git-annex/git-annex git-annex
-    ./git-annex test
-  '';
-  propagatedUserEnvPkgs = [git lsof];
-  meta = {
-    homepage = "http://git-annex.branchable.com/";
-    description = "manage files with git, without checking their contents into git";
-    license = self.stdenv.lib.licenses.gpl3;
-    platforms = self.ghc.meta.platforms;
-    maintainers = with self.stdenv.lib.maintainers; [ simons ];
-  };
-})
diff --git a/pkgs/applications/version-management/git-and-tools/git-cola/default.nix b/pkgs/applications/version-management/git-and-tools/git-cola/default.nix
index eee17911cea..c10ab14f639 100644
--- a/pkgs/applications/version-management/git-and-tools/git-cola/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-cola/default.nix
@@ -2,11 +2,11 @@
 
 pythonPackages.buildPythonPackage rec {
   name = "git-cola-${version}";
-  version = "2.1.1";
+  version = "2.2.1";
 
   src = fetchurl {
     url = "https://github.com/git-cola/git-cola/archive/v${version}.tar.gz";
-    sha256 = "0fpi5nvhyqkx67ak5pfcpgxbc3m19dqlvdh2c9igv2j0vp5rzkj1";
+    sha256 = "1v1s9gx16xihdcck4qp92bdci8zc6pb5a3z3y8k9jqj97hfkw2nz";
   };
 
   buildInputs = [ makeWrapper gettext ];
@@ -30,7 +30,7 @@ pythonPackages.buildPythonPackage rec {
     homepage = https://github.com/git-cola/git-cola;
     description = "A sleek and powerful Git GUI";
     license = licenses.gpl2;
-    platforms = platforms.all;
+    platforms = platforms.linux;
     maintainers = [ maintainers.bobvanderlinden ];
   };
 }
diff --git a/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix b/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix
new file mode 100644
index 00000000000..c13c5e07001
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, fetchFromGitHub, openssl }:
+
+stdenv.mkDerivation rec {
+
+  name = "git-crypt-${meta.version}";
+
+  src = fetchFromGitHub {
+    owner = "AGWA";
+    repo = "git-crypt";
+    rev = meta.version;
+    sha256 = "4fe45f903a4b3cc06a5fe11334b914c225009fe8440d9e91a54fdf21cf4dcc4d";
+    inherit name;
+  };
+
+  buildInputs = [ openssl ];
+
+  installPhase = ''
+    make install PREFIX=$out
+  '';
+
+  meta = {
+    homepage = "https://www.agwa.name/projects/git-crypt";
+    description = "transparent file encryption in git";
+    longDescription = ''
+      git-crypt enables transparent encryption and decryption of files in a git
+      repository. Files which you choose to protect are encrypted when
+      committed, and decrypted when checked out. git-crypt lets you freely
+      share a repository containing a mix of public and private
+      content. git-crypt gracefully degrades, so developers without the secret
+      key can still clone and commit to a repository with encrypted files. This
+      lets you store your secret material (such as keys or passwords) in the
+      same repository as your code, without requiring you to lock down your
+      entire repository.
+    '';
+    downloadPage = "https://github.com/AGWA/git-crypt/releases";
+    license = stdenv.lib.licenses.gpl3;
+    version = "0.5.0";
+    maintainers = [ "Desmond O. Chang <dochang@gmail.com>" ];
+  };
+
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-extras/default.nix b/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
index 3392c1c0021..aa62fbc4d16 100644
--- a/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "git-extras-${version}";
-  version = "2.2.0";
+  version = "3.0.0";
 
   src = fetchurl {
     url = "https://github.com/tj/git-extras/archive/${version}.tar.gz";
-    sha256 = "0qwgaj0r9lsmwricpnma9rm7llfrcqarcfk5iq3ilxkns8a334va";
+    sha256 = "01x8n9i5sgl1s53sgglg9sd9lyp35dhvdhwlx03yimi4i11441s9";
   };
 
   phases = [ "unpackPhase" "installPhase" ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-hub/default.nix b/pkgs/applications/version-management/git-and-tools/git-hub/default.nix
new file mode 100644
index 00000000000..e47d2569b10
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-hub/default.nix
@@ -0,0 +1,44 @@
+{ stdenv, fetchFromGitHub, docutils, python }:
+
+let version = "0.9.0"; in
+stdenv.mkDerivation {
+  name = "git-hub-${version}";
+
+  src = fetchFromGitHub {
+    sha256 = "0c4kq4a906lr8nzway7qh0560n2ydvidh9rlffh44902rd48kp0h";
+    rev = "v${version}";
+    repo = "git-hub";
+    owner = "sociomantic";
+  };
+
+  meta = with stdenv.lib; {
+    inherit version;
+    description = "Git command line interface to GitHub";
+    longDescription = ''
+      A simple command line interface to GitHub, enabling most useful GitHub
+      tasks (like creating and listing pull request or issues) to be accessed
+      directly through the Git command line.
+    '';
+    homepage = https://github.com/sociomantic/git-hub;
+    license = licenses.gpl3Plus;
+    platforms = with platforms; linux;
+    maintainers = with maintainers; [ nckx ];
+  };
+
+  buildInputs = [ python ];
+  nativeBuildInputs = [ docutils ];
+
+  postPatch = ''
+    substituteInPlace Makefile --replace rst2man rst2man.py
+    patchShebangs .
+  '';
+
+  enableParallelBuilding = true;
+
+  installFlags = "prefix=$(out)";
+
+  postInstall = ''
+    # Remove inert ftdetect vim plugin and a README that's a man page subset:
+    rm -r $out/share/{doc,vim}
+  '';
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-radar/default.nix b/pkgs/applications/version-management/git-and-tools/git-radar/default.nix
new file mode 100644
index 00000000000..5cca8ebef3c
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-radar/default.nix
@@ -0,0 +1,31 @@
+{stdenv, fetchFromGitHub}:
+
+stdenv.mkDerivation rec {
+  name = "git-radar-${version}";
+  version = "0.3.2";
+
+  phases = [ "unpackPhase" "installPhase" ];
+
+  dontInstallSrc = true;
+
+  src = fetchFromGitHub {
+    owner = "michaeldfallen";
+    repo = "git-radar";
+    rev = "v${version}";
+    sha256 = "1028462b4kqxx66vjv7r8nnr6bi3kw11fixpqyg2srqriha6447p";
+  };
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp git-radar fetch.sh prompt.bash prompt.zsh radar-base.sh $out
+    ln -s $out/git-radar $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/michaeldfallen/git-radar;
+    license = licenses.mit;
+    description = "Git-radar is a tool you can add to your prompt to provide at-a-glance information on your git repo.";
+    platforms = with platforms; linux ++ darwin;
+    maintainers = with maintainers; [ kamilchm ];
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix b/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix
index a60d7d2a49b..588c7acff7c 100644
--- a/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchgit, mercurial, makeWrapper,
-  asciidoc, xmlto, dbus, docbook_xsl, docbook_xml_dtd_45, libxslt, libxml2
+  asciidoc, xmlto, docbook_xsl, docbook_xml_dtd_45, libxslt, libxml2
 }:
 
 stdenv.mkDerivation rec {
@@ -14,12 +14,12 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ mercurial.python mercurial makeWrapper
-    asciidoc xmlto dbus docbook_xsl docbook_xml_dtd_45 libxslt libxml2
+    asciidoc xmlto docbook_xsl docbook_xml_dtd_45 libxslt libxml2
   ];
 
   doCheck = false;
 
-  installFlags = "HOME=\${out}";
+  installFlags = "HOME=\${out} install-doc";
 
   postInstall = ''
     wrapProgram $out/bin/git-remote-hg \
diff --git a/pkgs/applications/version-management/git-and-tools/git/cert-path.patch b/pkgs/applications/version-management/git-and-tools/git/cert-path.patch
index 846752f5bfe..7d5dca9abfe 100644
--- a/pkgs/applications/version-management/git-and-tools/git/cert-path.patch
+++ b/pkgs/applications/version-management/git-and-tools/git/cert-path.patch
@@ -5,7 +5,7 @@ diff -ru -x '*~' git-1.9.2-orig/git-send-email.perl git-1.9.2/git-send-email.per
  		return;
  	}
  
-+	$smtp_ssl_cert_path //= $ENV{'OPENSSL_X509_CERT_FILE'};
++	$smtp_ssl_cert_path //= $ENV{'SSL_CERT_FILE'};
 +
  	if (!defined $smtp_ssl_cert_path) {
  		# use the OpenSSL defaults
diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix
index 474d509297f..0710e38c941 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -9,7 +9,7 @@
 }:
 
 let
-  version = "2.3.6";
+  version = "2.5.3";
   svn = subversionClient.override { perlBindings = true; };
 in
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
-    sha256 = "1z30gj5a9n0sylqlwd35vvpi49051ql44xzmarkkcirbx5a1rq1w";
+    sha256 = "06is8pq8gsia3dav8mgl2zlvms2ny4hs1x0w2792ya51azc2jk8j";
   };
 
   patches = [
@@ -85,6 +85,10 @@ stdenv.mkDerivation {
       # gitweb.cgi, need to patch so that it's found
       sed -i -e "s|'compressor' => \['gzip'|'compressor' => ['${gzip}/bin/gzip'|" \
           $out/share/gitweb/gitweb.cgi
+
+      # Also put git-http-backend into $PATH, so that we can use smart
+      # HTTP(s) transports for pushing
+      ln -s $out/libexec/git-core/git-http-backend $out/bin/git-http-backend
     ''
 
    + (if svnSupport then
diff --git a/pkgs/applications/version-management/git-and-tools/gitflow/default.nix b/pkgs/applications/version-management/git-and-tools/gitflow/default.nix
index 0898345c30b..99c1db20fb2 100644
--- a/pkgs/applications/version-management/git-and-tools/gitflow/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gitflow/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "gitflow-${version}";
-  version = "1.7.0";
+  version = "1.8.0";
 
   src = fetchurl {
     url = "https://github.com/petervanderdoes/gitflow/archive/${version}.tar.gz";
-    sha256 = "0rppgyqgk0drip6852bdm2479zks16cb3mj1jdw6jq80givrqnjx";
+    sha256 = "1vxdawx4sinl19g59ifmrdalmr2dl5pkgawyj9z0s5mcildi6fc2";
   };
 
   preBuild = ''
@@ -15,9 +15,15 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = https://github.com/petervanderdoes/gitflow;
-    description = "A collection of Git extensions to provide high-level repository operations for Vincent Driessen's branching model";
+    description = "Extend git with the Gitflow branching model";
+    longDescription = ''
+      A set of scripts that provide high-level repository operations
+      for managing feature/release/hotfix branches in a Git repository,
+      particularly suited to be utilised to follow Vincent Driessen's
+      branching model.
+    '';
     license = licenses.bsd2;
     platforms = platforms.all;
-    maintainers = [ maintainers.offline ];
+    maintainers = with maintainers; [ offline jgeerds ];
   };
 }
diff --git a/pkgs/applications/version-management/git-and-tools/github-backup/default.nix b/pkgs/applications/version-management/git-and-tools/github-backup/default.nix
deleted file mode 100644
index 39af61f5bb5..00000000000
--- a/pkgs/applications/version-management/git-and-tools/github-backup/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, exceptions, filepath, git, github, hslogger, IfElse
-, MissingH, mtl, network, networkUri, optparseApplicative
-, prettyShow, text, transformers, unixCompat
-}:
-
-cabal.mkDerivation (self: {
-  pname = "github-backup";
-  version = "1.20141204";
-  sha256 = "0asj0ix81k6vi95rwlhs7ikk936lzfsav4gw0gvyzf31ggmf4j4c";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [
-    exceptions filepath github hslogger IfElse MissingH mtl network
-    networkUri optparseApplicative prettyShow text transformers
-    unixCompat
-  ];
-  buildTools = [ git ];
-  meta = {
-    homepage = "https://github.com/joeyh/github-backup";
-    description = "backs up everything github knows about a repository, to the repository";
-    license = "GPL";
-    platforms = self.ghc.meta.platforms;
-  };
-})
diff --git a/pkgs/applications/version-management/git-and-tools/stgit/default.nix b/pkgs/applications/version-management/git-and-tools/stgit/default.nix
index d4b74390c4c..f6966f92eb2 100644
--- a/pkgs/applications/version-management/git-and-tools/stgit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/stgit/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = "http://procode.org/stgit/";
-    description = "StGit is a patch manager implemented on top of Git";
+    description = "A patch manager implemented on top of Git";
     license = "GPL";
 
     maintainers = with stdenv.lib.maintainers; [ simons the-kenny ];
diff --git a/pkgs/applications/version-management/git-and-tools/svn2git-kde/default.nix b/pkgs/applications/version-management/git-and-tools/svn2git-kde/default.nix
index 94c819e711b..91fe1662efe 100644
--- a/pkgs/applications/version-management/git-and-tools/svn2git-kde/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/svn2git-kde/default.nix
@@ -21,4 +21,6 @@ stdenv.mkDerivation rec {
   '';
 
   buildInputs = [ subversion apr qt4 ];
+
+  meta.broken = true;
 }
diff --git a/pkgs/applications/version-management/git-and-tools/svn2git/default.nix b/pkgs/applications/version-management/git-and-tools/svn2git/default.nix
index f30a47a78b9..c735ef4506a 100644
--- a/pkgs/applications/version-management/git-and-tools/svn2git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/svn2git/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = https://github.com/nirvdrum/svn2git;
-    description = "Ruby tool for importing existing svn projects into git";
+    description = "Tool for importing Subversion repositories into git";
     license = stdenv.lib.licenses.mit;
 
     maintainers = [ stdenv.lib.maintainers.the-kenny ];
diff --git a/pkgs/applications/version-management/git-and-tools/tig/default.nix b/pkgs/applications/version-management/git-and-tools/tig/default.nix
index c8973e4a660..4c8430ed5c5 100644
--- a/pkgs/applications/version-management/git-and-tools/tig/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/tig/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "tig-2.1";
+  name = "tig-2.1.1";
 
   src = fetchurl {
     url = "http://jonas.nitro.dk/tig/releases/${name}.tar.gz";
-    sha256 = "1c1w6w39a1dwx4whrg0ga1mhrlz095hz875z7ajn6xgmhkv8fqih";
+    sha256 = "0bw5wivswwh7vx897q8xc2cqgkqhdzk8gh6fnav2kf34sngigiah";
   };
 
   buildInputs = [ ncurses asciidoc xmlto docbook_xsl readline git makeWrapper ];
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     homepage = "http://jonas.nitro.dk/tig/";
     description = "Text-mode interface for git";
-    maintainers = with maintainers; [ garbas bjornfor iElectric ];
+    maintainers = with maintainers; [ garbas bjornfor iElectric qknight ];
     license = licenses.gpl2;
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/version-management/git-repo/default.nix b/pkgs/applications/version-management/git-repo/default.nix
index a697aaa08a1..dc5c2231a7a 100644
--- a/pkgs/applications/version-management/git-repo/default.nix
+++ b/pkgs/applications/version-management/git-repo/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, python }:
 
 stdenv.mkDerivation {
-  name = "git-repo-1.21";
+  name = "git-repo-1.22";
   src = fetchurl {
     # I could not find a versioned url for the 1.21 version. In case
     # the sha mismatches, check the homepage for new version and sha.
     url = "http://commondatastorage.googleapis.com/git-repo-downloads/repo";
-    sha1 = "b8bd1804f432ecf1bab730949c82b93b0fc5fede";
+    sha1 = "da0514e484f74648a890c0467d61ca415379f791";
   };
 
   unpackPhase = "true";
@@ -20,4 +20,4 @@ stdenv.mkDerivation {
     homepage = "http://source.android.com/source/downloading.html";
     description = "Android's repo management tool";
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/version-management/gitinspector/default.nix b/pkgs/applications/version-management/gitinspector/default.nix
new file mode 100644
index 00000000000..43df0e5b885
--- /dev/null
+++ b/pkgs/applications/version-management/gitinspector/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchzip, buildPythonPackage }:
+
+buildPythonPackage rec {
+  name = "gitinspector-${version}";
+  version = "0.4.1";
+  namePrefix = "";
+
+  src = fetchzip {
+    url = "https://github.com/ejwa/gitinspector/archive/v${version}.tar.gz";
+    sha256 = "07kjvf9cj6g6gvjgnnas5facm3nhxppf0l0fcxyd4vq6xhdb3swp";
+    name = name + "-src";
+  };
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/ejwa/gitinspector;
+    description = "Statistical analysis tool for git repositories";
+    license = licenses.gpl3;
+    platforms = platforms.all;
+    maintainers = [ maintainers.bjornfor ];
+  };
+}
diff --git a/pkgs/applications/version-management/gitlab/Gemfile.lock b/pkgs/applications/version-management/gitlab/Gemfile.lock
index 314884fa36e..c7db793060e 100644
--- a/pkgs/applications/version-management/gitlab/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/Gemfile.lock
@@ -281,7 +281,7 @@ GEM
       addressable (~> 2.3)
     letter_opener (1.1.2)
       launchy (~> 2.2)
-    libv8 (3.16.14.3)
+    libv8 (3.16.14.11)
     listen (2.3.1)
       celluloid (>= 0.15.2)
       rb-fsevent (>= 0.9.3)
diff --git a/pkgs/applications/version-management/gitlab/gemset.nix b/pkgs/applications/version-management/gitlab/gemset.nix
index 392550daae5..21a3b8fe6db 100644
--- a/pkgs/applications/version-management/gitlab/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/gemset.nix
@@ -1121,11 +1121,11 @@
       "launchy"
     ];
   };
-  "libv8" = {
-    version = "3.16.14.3";
+  libv8 = {
+    version = "3.16.14.11";
     source = {
       type = "gem";
-      sha256 = "1arjjbmr9zxkyv6pdrihsz1p5cadzmx8308vgfvrhm380ccgridm";
+      sha256 = "000vbiy78wk5r1f6p7qncab8ldg7qw5pjz7bchn3lw700gpaacxp";
     };
   };
   "listen" = {
@@ -2395,4 +2395,4 @@
       "nokogiri"
     ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/version-management/gitolite/default.nix b/pkgs/applications/version-management/gitolite/default.nix
index 72640662ead..60e0a794705 100644
--- a/pkgs/applications/version-management/gitolite/default.nix
+++ b/pkgs/applications/version-management/gitolite/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchurl, perl, git }:
+{ stdenv, fetchurl, git, nettools, perl }:
 
 stdenv.mkDerivation rec {
   name = "gitolite-${version}";
-  version = "3.6.2";
+  version = "3.6.3";
 
   src = fetchurl {
     url = "https://github.com/sitaramc/gitolite/archive/v${version}.tar.gz";
-    sha256 = "1gsgzi9ayb4rablki3mqr11b0h8db4xg43df660marfpacmkfb01";
+    sha256 = "16cxifjxnri719qb6zzwkdf61x5y957acbdhcgqcan23x1mfn84v";
   };
 
-  buildInputs = [ perl git ];
+  buildInputs = [ git nettools perl ];
   buildPhase = "true";
 
   patchPhase = ''
@@ -18,6 +18,8 @@ stdenv.mkDerivation rec {
       --replace /usr/bin/perl "${perl}/bin/perl"
     substituteInPlace src/lib/Gitolite/Hooks/Update.pm \
       --replace /usr/bin/perl "${perl}/bin/perl"
+    substituteInPlace src/lib/Gitolite/Setup.pm \
+      --replace hostname "${nettools}/bin/hostname"
   '';
 
   installPhase = ''
@@ -30,6 +32,6 @@ stdenv.mkDerivation rec {
     homepage    = http://gitolite.com/gitolite/index.html;
     license     = licenses.gpl2;
     platforms   = platforms.unix;
-    maintainers = [ maintainers.thoughtpolice ];
+    maintainers = [ maintainers.thoughtpolice maintainers.lassulus ];
   };
 }
diff --git a/pkgs/applications/version-management/kdesvn/default.nix b/pkgs/applications/version-management/kdesvn/default.nix
index 60f5d8bb9e0..b94978bb488 100644
--- a/pkgs/applications/version-management/kdesvn/default.nix
+++ b/pkgs/applications/version-management/kdesvn/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, fetchurl, gettext, apr, aprutil, subversion, db, kdelibs, expat }:
+{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
+, apr, aprutil, subversion, db, kdelibs, expat
+}:
 
 # the homepage mentions this is the final release.
 # from now on, kdesvn will be part of the official kde software distribution
@@ -16,7 +18,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ apr aprutil subversion db kdelibs expat ];
 
-  nativeBuildInputs = [ gettext ];
+  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
 
   meta = {
     description = "KDE SVN front-end";
diff --git a/pkgs/applications/version-management/meld/default.nix b/pkgs/applications/version-management/meld/default.nix
index a892d7decc0..2f7c4af0024 100644
--- a/pkgs/applications/version-management/meld/default.nix
+++ b/pkgs/applications/version-management/meld/default.nix
@@ -4,8 +4,8 @@
 
 
 let
-  minor = "3.12";
-  version = "${minor}.3";
+  minor = "3.14";
+  version = "${minor}.0";
 in
 
 buildPythonPackage rec {
@@ -14,12 +14,13 @@ buildPythonPackage rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/meld/${minor}/meld-${version}.tar.xz";
-    sha256 = "1zg6qhm53j0vxmjj3pcj2hwi8c12dxzmlh98zks0jnwhqv2p4dfv";
+    sha256 = "0g0h9wdr6nqdalqkz4r037569apw253cklwr17x0zjc7nwv2j3j3";
   };
 
   buildInputs = [
     python27 intltool makeWrapper itstool libxml2
     gnome3.gtksourceview gnome3.gsettings_desktop_schemas pycairo cairo
+    gnome3.defaultIconTheme
   ];
   propagatedBuildInputs = [ gobjectIntrospection pygobject3 gtk3 ];
 
@@ -39,18 +40,19 @@ buildPythonPackage rec {
   preFixup = ''
     wrapProgram $out/bin/meld \
       --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
-      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share"
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH:$out/share" \
+      --prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules"
   '';
 
   patchPhase = ''
-    sed -e 's,#!.*,#!${python27}/bin/python27,' -i bin/meld
+    patchShebangs bin/meld
   '';
 
   pythonPath = [ gtk3 ];
 
   meta = with stdenv.lib; {
     description = "Visual diff and merge tool";
-    homepage = http://meld.sourceforge.net;
+    homepage = http://meldmerge.org/;
     license = stdenv.lib.licenses.gpl2;
     platforms = platforms.linux ++ stdenv.lib.platforms.darwin;
   };
diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix
index a9fbd89f3fa..5a44240fa76 100644
--- a/pkgs/applications/version-management/mercurial/default.nix
+++ b/pkgs/applications/version-management/mercurial/default.nix
@@ -1,8 +1,9 @@
-{ stdenv, fetchurl, python, makeWrapper, docutils, unzip
-, guiSupport ? false, tk ? null, curses }:
+{ stdenv, fetchurl, python, makeWrapper, docutils, unzip, hg-git, dulwich
+, guiSupport ? false, tk ? null, hg-crecord ? null, curses
+, ApplicationServices }:
 
 let
-  version = "3.3.3";
+  version = "3.5.1";
   name = "mercurial-${version}";
 in
 
@@ -11,7 +12,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://mercurial.selenic.com/release/${name}.tar.gz";
-    sha256 = "04xfzwb7jabzsfv2r18c3w6vwag7cjrl79xzg5i3mbyb1mzkcid4";
+    sha256 = "1795ia6ghbqwfp4d6bz0qwlvzymh76zdgk2viikrkqq3ldfs8zcr";
   };
 
   inherit python; # pass it so that the same version can be used in hg2git
@@ -19,6 +20,8 @@ stdenv.mkDerivation {
 
   buildInputs = [ python makeWrapper docutils unzip ];
 
+  propagatedBuildInputs = stdenv.lib.optional stdenv.isDarwin ApplicationServices;
+
   makeFlags = "PREFIX=$(out)";
 
   postInstall = (stdenv.lib.optionalString guiSupport
@@ -33,24 +36,34 @@ stdenv.mkDerivation {
       WRAP_TK=" --set TK_LIBRARY \"${tk}/lib/${tk.libPrefix}\"
                 --set HG \"$out/bin/hg\"
                 --prefix PATH : \"${tk}/bin\" "
+    '') + (stdenv.lib.optionalString (hg-crecord != null)
+    ''
+      mkdir -p $out/etc/mercurial
+      cat >> $out/etc/mercurial/hgrc << EOF
+      [extensions]
+      crecord=${hg-crecord}/${python.sitePackages}/crecord
+      EOF
     '') +
     ''
       for i in $(cd $out/bin && ls); do
         wrapProgram $out/bin/$i \
-          --prefix PYTHONPATH : "$(toPythonPath "$out ${curses}")" \
+          --prefix PYTHONPATH : "$(toPythonPath "$out ${curses}"):$(toPythonPath "$out ${hg-git}"):$(toPythonPath "$out ${dulwich}")" \
           $WRAP_TK
       done
 
       mkdir -p $out/etc/mercurial
       cat >> $out/etc/mercurial/hgrc << EOF
       [web]
-      cacerts = /etc/ssl/certs/ca-bundle.crt
+      cacerts = /etc/ssl/certs/ca-certificates.crt
       EOF
 
       # copy hgweb.cgi to allow use in apache
       mkdir -p $out/share/cgi-bin
       cp -v hgweb.cgi contrib/hgweb.wsgi $out/share/cgi-bin
       chmod u+x $out/share/cgi-bin/hgweb.cgi
+
+      # install bash completion
+      install -D -v contrib/bash_completion $out/share/bash-completion/completions/mercurial
     '';
 
   meta = {
diff --git a/pkgs/applications/version-management/monotone-viz/mtn-head.nix b/pkgs/applications/version-management/monotone-viz/mtn-head.nix
index b9a2daade5b..eb75b45128e 100644
--- a/pkgs/applications/version-management/monotone-viz/mtn-head.nix
+++ b/pkgs/applications/version-management/monotone-viz/mtn-head.nix
@@ -1,4 +1,4 @@
-args : with args; 
+args @ { graphviz, pkgconfig, autoconf, automake, libtool, glib, gtk, ... }: with args;
 rec {
   srcDrv = fetchmtn {
     name = "monotone-viz-mtn-checkout";
@@ -9,7 +9,7 @@ rec {
   };
   src = srcDrv + "/";
 
-  buildInputs = [ocaml lablgtk libgnomecanvas gtk graphviz glib 
+  buildInputs = [ocaml lablgtk libgnomecanvas gtk graphviz glib
     pkgconfig autoconf automake libtool];
   configureFlags = ["--with-lablgtk-dir=$(echo ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2)"];
 
diff --git a/pkgs/applications/version-management/mr/default.nix b/pkgs/applications/version-management/mr/default.nix
index d52802e42f1..68bef621bc2 100644
--- a/pkgs/applications/version-management/mr/default.nix
+++ b/pkgs/applications/version-management/mr/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, perl }:
 
 stdenv.mkDerivation rec {
-  version = "1.20141024";
+  version = "1.20150503";
   name = "mr-${version}";
 
   src = fetchurl {
     url = "https://github.com/joeyh/myrepos/archive/${version}.tar.gz";
-    sha256 = "7b68183476867d15d6f111fc9678335b94824dcfa09f07c761a72d64cdf5ad4a";
+    sha256 = "12cf8kmn13446rszmah5wws5p2k2gjp6y4505sy1r14qnahf4qbf";
   };
 
   buildInputs = [ perl ];
diff --git a/pkgs/applications/version-management/peru/default.nix b/pkgs/applications/version-management/peru/default.nix
new file mode 100644
index 00000000000..d97aee23388
--- /dev/null
+++ b/pkgs/applications/version-management/peru/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, python3Packages }:
+
+let 
+  version = "0.2.3"; 
+in
+
+python3Packages.buildPythonPackage rec {
+  
+  # Do not prefix name with python specific version identifier.
+  namePrefix = "";
+
+  name = "peru-${version}";
+
+  src = fetchFromGitHub {
+    owner = "buildinspace";
+    repo = "peru";
+    rev = "${version}";
+    sha256 = "04bnaly50qmzkj0shdag94n8vr3ggarlqdny5zdb8nh31fqgln8b";
+  };
+
+  pythonPath = with python3Packages; [ pyyaml docopt ];
+
+  meta = {
+    homepage = https://github.com/buildinspace/peru;
+    description = "A tool for including other people's code in your projects";
+    license = stdenv.lib.licenses.mit;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/applications/version-management/rabbitvcs/default.nix b/pkgs/applications/version-management/rabbitvcs/default.nix
new file mode 100644
index 00000000000..100e854f29b
--- /dev/null
+++ b/pkgs/applications/version-management/rabbitvcs/default.nix
@@ -0,0 +1,40 @@
+{ fetchFromGitHub, lib, python2Packages, meld, subversion, gvfs, xdg_utils }:
+python2Packages.buildPythonPackage rec {
+  name = "rabbitvcs-${version}";
+  version = "0.16";
+  namePrefix = "";
+
+  src = fetchFromGitHub {
+    owner = "rabbitvcs";
+    repo = "rabbitvcs";
+    rev = "v${version}";
+    sha256 = "0964pdylrx4n9c9l8ncwv4q1p63y4hadb5v4pgvm0m2fah2jlkly";
+  };
+
+  pythonPath = with python2Packages; [ configobj dbus pygobject pygtk simplejson pysvn dulwich tkinter gvfs xdg_utils ];
+
+  prePatch = ''
+      sed -ie 's|if sys\.argv\[1\] == "install":|if False:|' ./setup.py
+      sed -ie "s|PREFIX = sys.prefix|PREFIX = \"$out\"|" ./setup.py
+      sed -ie 's|/usr/bin/meld|${meld}/bin/meld|' ./rabbitvcs/util/configspec/configspec.ini
+      sed -ie 's|/usr/bin/svnadmin|${subversion}/bin/svnadmin|' ./rabbitvcs/ui/create.py
+      sed -ie "s|/usr/share/doc|$out/share/doc|" ./rabbitvcs/ui/about.py
+      sed -ie "s|gnome-open|xdg-open|" ./rabbitvcs/util/helper.py
+    '';
+
+  outputs = [ "out" "cli" ];
+
+  postInstall = ''
+    mkdir -p $cli/bin
+    cp clients/cli/rabbitvcs $cli/bin
+    wrapPythonProgramsIn $cli "$out $pythonPath"
+  '';
+
+  meta = {
+    description = "Graphical tools for working with version control systems";
+    homepage = http://rabbitvcs.org/;
+    license = lib.licenses.gpl2Plus;
+    platforms = lib.platforms.linux;
+    maintainers = [ lib.maintainers.mathnerd314 ];
+  };
+}
diff --git a/pkgs/applications/version-management/rcs/default.nix b/pkgs/applications/version-management/rcs/default.nix
index 266ab81777b..a829af8aa23 100644
--- a/pkgs/applications/version-management/rcs/default.nix
+++ b/pkgs/applications/version-management/rcs/default.nix
@@ -12,6 +12,8 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
+  NIX_CFLAGS_COMPILE = if stdenv.isDarwin then "-std=gnu99" else null;
+
   meta = {
     homepage = http://www.gnu.org/software/rcs/;
     description = "Revision control system";
diff --git a/pkgs/applications/version-management/redmine/default.nix b/pkgs/applications/version-management/redmine/default.nix
index 26ca2ad9748..3a8df10f166 100644
--- a/pkgs/applications/version-management/redmine/default.nix
+++ b/pkgs/applications/version-management/redmine/default.nix
@@ -45,13 +45,7 @@ in stdenv.mkDerivation rec {
     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 config build.nokogiri --use-system-libraries --with-iconv-dir="${libiconv}" --with-xslt-dir="${libxslt}" --with-xml2-dir="${libxml2}"
 
     bundle install --verbose --local --deployment
 
diff --git a/pkgs/applications/version-management/reposurgeon/default.nix b/pkgs/applications/version-management/reposurgeon/default.nix
new file mode 100644
index 00000000000..5c2dde95572
--- /dev/null
+++ b/pkgs/applications/version-management/reposurgeon/default.nix
@@ -0,0 +1,66 @@
+{stdenv, fetchurl, makeWrapper, python27, python27Packages, git,
+ docbook_xml_dtd_412, docbook_xml_xslt, asciidoc, xmlto,
+ cython ? null,
+ bazaar ? null, cvs ? null, darcs ? null, fossil ? null,
+ mercurial ? null, monotone ? null, rcs ? null, src ? null,
+ subversion ? null, cvs_fast_export ? null }:
+with stdenv; with lib;
+mkDerivation rec {
+  name = "reposurgeon-${meta.version}";
+  meta = {
+    description = "A tool for editing version-control repository history";
+    version = "3.28";
+    license = licenses.bsd3;
+    homepage = "http://www.catb.org/esr/reposurgeon/";
+    maintainers = with maintainers; [ dfoxfranke ];
+    platforms = platforms.all;
+  };
+
+  src = fetchurl {
+    url = "http://www.catb.org/~esr/reposurgeon/reposurgeon-3.28.tar.gz";
+    sha256 = "3225b44109b8630310a0ea6fe63a3485d27aa46deaf80e8d07820e01a6f62626";
+  };
+
+  # See https://gitlab.com/esr/reposurgeon/issues/17
+  patches = [ ./fix-preserve-type.patch ];  
+
+  buildInputs =
+    [ docbook_xml_dtd_412 docbook_xml_xslt asciidoc xmlto makeWrapper ] ++
+    optional (cython != null) cython
+  ;
+
+  preBuild = ''
+    makeFlagsArray=(
+      XML_CATALOG_FILES="${docbook_xml_dtd_412}/xml/dtd/docbook/catalog.xml ${docbook_xml_xslt}/xml/xsl/docbook/catalog.xml"
+      prefix="$out"
+      pyinclude="-I${python27}/include/python2.7"
+      pylib="-L${python27}/lib -lpython2.7"
+    )
+  '';
+
+  buildFlags = "all" + (if cython != null then " cyreposurgeon" else "");
+
+  installTargets =
+    "install" + (if cython != null then " install-cyreposurgeon" else "")
+  ;
+
+  postInstall =
+    let
+      binpath = makeSearchPath "bin" (
+        filter (x: x != null)
+        [ out git bazaar cvs darcs fossil mercurial
+          monotone rcs src subversion cvs_fast_export ]
+      );
+      pythonpath = makeSearchPath (python27.sitePackages) (
+        filter (x: x != null)
+        [ python27Packages.readline or null python27Packages.hglib or null ]
+      );
+    in ''
+      for prog in reposurgeon repodiffer repotool; do
+        wrapProgram $out/bin/$prog \
+          --prefix PATH : "${binpath}" \
+          --prefix PYTHONPATH : "${pythonpath}"
+      done
+    ''
+  ;    
+}
diff --git a/pkgs/applications/version-management/reposurgeon/fix-preserve-type.patch b/pkgs/applications/version-management/reposurgeon/fix-preserve-type.patch
new file mode 100644
index 00000000000..ef3568b7b92
--- /dev/null
+++ b/pkgs/applications/version-management/reposurgeon/fix-preserve-type.patch
@@ -0,0 +1,12 @@
+diff -Nru reposurgeon-3.28/reposurgeon reposurgeon-3.28-new/reposurgeon
+--- reposurgeon-3.28/reposurgeon	2015-07-05 15:17:13.000000000 -0400
++++ reposurgeon-3.28-new/reposurgeon	2015-08-25 18:23:11.347591137 -0400
+@@ -193,7 +193,7 @@
+         importer=b"git fast-import --quiet",
+         checkout=b"git checkout",
+         lister=b"git ls-files",
+-        preserve=(b'.git/config', b'.git/hooks'),
++        preserve=set((b'.git/config', b'.git/hooks')),
+         authormap=b".git/cvs-authors",
+         ignorename=b".gitignore",
+         dfltignores=b"",	# Has none
diff --git a/pkgs/applications/version-management/smartgithg/default.nix b/pkgs/applications/version-management/smartgithg/default.nix
index 5bb201b60d0..778ae995f3d 100644
--- a/pkgs/applications/version-management/smartgithg/default.nix
+++ b/pkgs/applications/version-management/smartgithg/default.nix
@@ -6,18 +6,13 @@
 , which
 }:
 
-let
-  the_version = "6_5_3";
-
-in
-
 stdenv.mkDerivation rec {
-  name = "smartgithg-${the_version}";
+  name = "smartgithg-${version}";
+  version = "7_0_2";
 
   src = fetchurl {
-    url = "http://www.syntevo.com/download/smartgit/" +
-          "smartgit-generic-${the_version}.tar.gz";
-    sha256 = "0hz1y29ipls58fizr27w6rbv7v7qbbc1h70xvjjd8c94k9ajmav9";
+    url = "http://www.syntevo.com/downloads/smartgit/smartgit-generic-${version}.tar.gz";
+    sha256 = "1jpi424aqy6niq31j750rgbspwii013c8kbi965i4jzjpba1pagi";
   };
 
   buildInputs = [
@@ -28,6 +23,7 @@ stdenv.mkDerivation rec {
   buildCommand = let
     pkg_path = "$out/${name}";
     bin_path = "$out/bin";
+    install_freedesktop_items = ./install_freedesktop_items.sh;
     runtime_paths = lib.makeSearchPath "bin" [
       jre
       git mercurial subversion
@@ -53,6 +49,8 @@ stdenv.mkDerivation rec {
       --prefix SMARTGITHG_JAVA_HOME : ${jre}
     patchShebangs $out
     cp ${bin_path}/smartgit ${bin_path}/smartgithg
+
+    ${install_freedesktop_items} "${pkg_path}/bin" "$out"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/version-management/smartgithg/install_freedesktop_items.sh b/pkgs/applications/version-management/smartgithg/install_freedesktop_items.sh
new file mode 100755
index 00000000000..66fb0cf8f95
--- /dev/null
+++ b/pkgs/applications/version-management/smartgithg/install_freedesktop_items.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+inBinDir=$1
+out=$2
+
+cat $inBinDir/add-menuitem.sh | \
+sed -re 's#xdg-icon-resource[ ]+install[ ]+--size[ ]+([0-9]+)[ ]+("[^"]+")[ ]+([$0-9a-zA-Z_]+)#mkdir -p '${out}'/share/icons/hicolor/\1x\1/apps \&\& cp \2 '${out}'/share/icons/hicolor/\1x\1/apps/\3\.png #' | \
+sed -re 's#xdg-desktop-menu[ ]+install[ ]+([$0-9a-zA-Z_]+)#mkdir -p '${out}'/share/applications \&\& cp \1 '${out}'/share/applications/#' | \
+sed -re 's#Exec="[^"]+"#Exec=smartgit#' |
+sed -re 's#SMARTGIT_BIN=.*#'SMARTGIT_BIN=${inBinDir}'#' \
+| bash
diff --git a/pkgs/applications/version-management/src/default.nix b/pkgs/applications/version-management/src/default.nix
index ced82dd45c0..f6fdff16204 100644
--- a/pkgs/applications/version-management/src/default.nix
+++ b/pkgs/applications/version-management/src/default.nix
@@ -1,24 +1,16 @@
 { stdenv, fetchurl, python, rcs, git }:
 
 stdenv.mkDerivation rec {
-  name = "src-0.13";
+  name = "src-0.19";
 
   src = fetchurl {
     url = "http://www.catb.org/~esr/src/${name}.tar.gz";
-    sha256 = "03x0slgi6bnzgfn7f9qbl6jma0pj7357kwdh832l3v8zafk41p51";
+    sha256 = "0p56g09ndbmnxxjz2rn7fq3yjx572ywj0xdim9rz5cqnx0pmr71x";
   };
 
-  buildInputs = [ python ];
+  buildInputs = [ python rcs git ];
 
-  patches = [ ./path.patch ];
-
-  postPatch = ''
-    sed -i \
-      -e 's|@python@|${python}|' \
-      -e 's|@rcs@|${rcs}|' \
-      -e 's|@git@|${git}|' \
-      src srctest
-  '';
+  preConfigure = "patchShebangs .";
 
   makeFlags = [ "prefix=$(out)" ];
 
@@ -26,13 +18,8 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Simple single-file revision control";
-
     homepage = http://www.catb.org/~esr/src/;
-
-    license = [ stdenv.lib.licenses.bsd3 ];
-
-    maintainers = [ stdenv.lib.maintainers.shlevy ];
-
+    license = stdenv.lib.licenses.bsd3;
     platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/version-management/src/path.patch b/pkgs/applications/version-management/src/path.patch
deleted file mode 100644
index ef500c8e04e..00000000000
--- a/pkgs/applications/version-management/src/path.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -Naur src-0.13-orig/src src-0.13/src
---- src-0.13-orig/src	2014-11-24 03:56:16.000000000 -0500
-+++ src-0.13/src	2014-11-26 16:32:32.925151003 -0500
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python2
-+#!@python@/bin/python
- #
- # src - simple revision control.
- #
-@@ -51,6 +51,8 @@
- 
- import sys, os, subprocess, time, calendar, stat, glob, shutil, hashlib
- 
-+os.environ['PATH'] = "@rcs@/bin:@git@/bin:" + os.environ['PATH']
-+
- version="0.13"
- 
- def rfc3339(t):
-diff -Naur src-0.13-orig/srctest src-0.13/srctest
---- src-0.13-orig/srctest	2014-11-21 08:12:00.000000000 -0500
-+++ src-0.13/srctest	2014-11-26 16:33:13.627715388 -0500
-@@ -12,7 +12,7 @@
- 
- # Set the PATH to include the current directory, so the repository
- # head version of src can always be tested.
--PATH="$(pwd)":$PATH
-+PATH="$(pwd)":@git@/bin:$PATH
- 
- trap "rm -fr $SANDBOX" 0 1 2 15
- 
diff --git a/pkgs/applications/version-management/subversion/default.nix b/pkgs/applications/version-management/subversion/default.nix
index ef400af7308..db29360c9ec 100644
--- a/pkgs/applications/version-management/subversion/default.nix
+++ b/pkgs/applications/version-management/subversion/default.nix
@@ -17,13 +17,13 @@ assert javahlBindings -> jdk != null && perl != null;
 
 stdenv.mkDerivation (rec {
 
-  version = "1.8.13";
+  version = "1.9.2";
 
   name = "subversion-${version}";
 
   src = fetchurl {
     url = "mirror://apache/subversion/${name}.tar.bz2";
-    sha1 = "aa0bd14ac6a8f0fb178cc9ff325387de01cd7452";
+    sha1 = "fb9db3b7ddf48ae37aa8785872301b59bfcc7017";
   };
 
   buildInputs = [ zlib apr aprutil sqlite ]
@@ -37,7 +37,7 @@ stdenv.mkDerivation (rec {
     ${if httpServer then "--with-apxs=${apacheHttpd}/bin/apxs" else "--without-apxs"}
     ${if pythonBindings || perlBindings then "--with-swig=${swig}" else "--without-swig"}
     ${if javahlBindings then "--enable-javahl --with-jdk=${jdk}" else ""}
-    ${if stdenv.isDarwin then "--enable-keychain" else "--disable-keychain"}
+    --disable-keychain
     ${if saslSupport then "--with-sasl=${sasl}" else "--without-sasl"}
     ${if httpSupport then "--with-serf=${serf}" else "--without-serf"}
     --with-zlib=${zlib}
diff --git a/pkgs/applications/version-management/tailor/default.nix b/pkgs/applications/version-management/tailor/default.nix
index f8937f39e76..5164ed6a9b4 100644
--- a/pkgs/applications/version-management/tailor/default.nix
+++ b/pkgs/applications/version-management/tailor/default.nix
@@ -1,4 +1,4 @@
-args : with args; 
+args @ { makeWrapper, python, ... }: with args;
 let version = if args ? version then args.version else "0.9.35"; in
 rec {
   src = fetchurl {
@@ -14,10 +14,10 @@ rec {
 
   /* doConfigure should be specified separately */
   phaseNames = ["installPythonPackage" "wrapBinContentsPython"];
-      
+
   name = "tailor-" + version;
   meta = {
     description = "Version control tools integration tool";
   };
 }
- 
+
diff --git a/pkgs/applications/version-management/tortoisehg/default.nix b/pkgs/applications/version-management/tortoisehg/default.nix
new file mode 100644
index 00000000000..0c5aec00405
--- /dev/null
+++ b/pkgs/applications/version-management/tortoisehg/default.nix
@@ -0,0 +1,36 @@
+{ pkgs, lib, mercurial, pyPackages ? pkgs.python27Packages }:
+
+pkgs.buildPythonPackage rec {
+    name = "tortoisehg-${version}";
+    version = "3.4.2";
+    namePrefix = "";
+
+    src = pkgs.fetchurl {
+      url = "https://bitbucket.org/tortoisehg/targz/downloads/${name}.tar.gz";
+      sha256 = "18a587c8fybfjxbcj8i2smypxy7vfzmmrzibs74n3zy6dlb949nj";
+    };
+
+    pythonPath = [ pkgs.pyqt4 mercurial ]
+       ++ (with pyPackages; [qscintilla iniparse]);
+
+    propagatedBuildInputs = with pyPackages; [ qscintilla iniparse ];
+    
+    doCheck = false;
+
+    postUnpack = ''
+     substituteInPlace $sourceRoot/setup.py \
+       --replace "/usr/share/" "$out/share/"
+    '';
+
+    postInstall = ''
+     ln -s $out/bin/thg $out/bin/tortoisehg     #convenient alias
+    '';
+
+    meta = {
+      description = "Qt based graphical tool for working with Mercurial";
+      homepage = http://tortoisehg.bitbucket.org/;
+      license = lib.licenses.gpl2;
+      platforms = lib.platforms.linux;
+      maintainers = [ "abcz2.uprola@gmail.com" ];
+    };
+}
\ No newline at end of file
diff --git a/pkgs/applications/version-management/vcprompt/default.nix b/pkgs/applications/version-management/vcprompt/default.nix
index 476abd4e19b..4afb1b20e32 100644
--- a/pkgs/applications/version-management/vcprompt/default.nix
+++ b/pkgs/applications/version-management/vcprompt/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchhg, autoconf, sqlite }:
 
-stdenv.mkDerivation {
-  name = "vcprompt";
+stdenv.mkDerivation rec {
+  name = "vcprompt-${version}";
+  version = "1.2.1";
 
   src = fetchhg {
     url = "http://hg.gerg.ca/vcprompt/";
-    rev = "1.2.1";
+    rev = version;
     sha256 = "03xqvp6bfl98bpacrw4n82qv9cw6a4fxci802s3vrygas989v1kj";
   };
 
diff --git a/pkgs/applications/version-management/viewmtn/0.10.nix b/pkgs/applications/version-management/viewmtn/0.10.nix
index d5e7d1e7c83..be8cc83c300 100644
--- a/pkgs/applications/version-management/viewmtn/0.10.nix
+++ b/pkgs/applications/version-management/viewmtn/0.10.nix
@@ -1,5 +1,4 @@
-
-args : with args; 
+args @ { monotone, cheetahTemplate, highlight, ctags, makeWrapper, graphviz, which, python, ... }: with args;
 rec {
   src = fetchurl {
     url = http://viewmtn.1erlei.de/downloads/viewmtn-0.10.tgz;
diff --git a/pkgs/applications/video/aegisub/default.nix b/pkgs/applications/video/aegisub/default.nix
index e7cc9b78195..a5c14d0888f 100644
--- a/pkgs/applications/video/aegisub/default.nix
+++ b/pkgs/applications/video/aegisub/default.nix
@@ -9,14 +9,14 @@
 , automationSupport ? true, lua ? null
 , openalSupport ? false, openal ? null
 , alsaSupport ? true, alsaLib ? null
-, pulseaudioSupport ? true, pulseaudio ? null
+, pulseaudioSupport ? true, libpulseaudio ? null
 , portaudioSupport ? false, portaudio ? null }:
 
 assert spellcheckSupport -> (hunspell != null);
 assert automationSupport -> (lua != null);
 assert openalSupport -> (openal != null);
 assert alsaSupport -> (alsaLib != null);
-assert pulseaudioSupport -> (pulseaudio != null);
+assert pulseaudioSupport -> (libpulseaudio != null);
 assert portaudioSupport -> (portaudio != null);
 
 with stdenv.lib;
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     ++ optional automationSupport lua
     ++ optional openalSupport openal
     ++ optional alsaSupport alsaLib
-    ++ optional pulseaudioSupport pulseaudio
+    ++ optional pulseaudioSupport libpulseaudio
     ++ optional portaudioSupport portaudio
     ;
 
diff --git a/pkgs/applications/video/avxsynth/default.nix b/pkgs/applications/video/avxsynth/default.nix
index a9a2ec46397..d8ec715a38c 100644
--- a/pkgs/applications/video/avxsynth/default.nix
+++ b/pkgs/applications/video/avxsynth/default.nix
@@ -1,26 +1,42 @@
-{ stdenv, fetchurl, ffmpeg, autoconf, automake, libtool, pkgconfig, log4cpp
-, pango, cairo, python, libjpeg, ffms
-, enableQt ? true, qt4}:
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig
+, cairo, ffmpeg, ffms, libjpeg, log4cpp, pango
+, avxeditSupport ? false, qt4 ? null
+}:
+
+let
+  inherit (stdenv.lib) enableFeature optional;
+in
 
 stdenv.mkDerivation rec {
-  name = "avxsynth-4.0-e153e672bf";
+  name = "avxsynth-${version}";
+  version = "2015-04-07";
 
-  src = fetchurl {
-    url = https://github.com/avxsynth/avxsynth/tarball/e153e672bf;
-    name = "${name}.tar.gz";
-    sha256 = "16l2ld8k1nfsms6jd9d9r4l247xxbncsak66w87icr20yzyhs14s";
+  src = fetchFromGitHub {
+    owner = "avxsynth";
+    repo = "avxsynth";
+    rev = "80dcb7ec8d314bc158130c92803308aa8e5e9242";
+    sha256 = "0kckggvgv68b0qjdi7ms8vi97b46dl63n60qr96d2w67lf2nk87z";
   };
 
-  buildInputs = [ ffmpeg autoconf automake libtool pkgconfig log4cpp pango cairo python
-    libjpeg ffms ]
-    ++ stdenv.lib.optional enableQt qt4;
+  configureFlags = [
+    "--enable-autocrop"
+    "--enable-framecapture"
+    "--enable-subtitle"
+    "--enable-ffms2"
+    (enableFeature avxeditSupport "avxedit")
+    "--with-jpeg=${libjpeg}/lib"
+  ];
+
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
 
-  preConfigure = "autoreconf -vfi";
+  buildInputs = [ cairo ffmpeg ffms libjpeg log4cpp pango ]
+    ++ optional avxeditSupport qt4;
 
-  meta = {
-    homepage = https://github.com/avxsynth/avxsynth/wiki;
-    license = stdenv.lib.licenses.gpl2Plus;
-    maintainers = with stdenv.lib.maintainers; [viric];
-    platforms = with stdenv.lib.platforms; linux;
+  meta = with stdenv.lib; {
+    description = "A script system that allows advanced non-linear editing";
+    homepage = https://github.com/avxsynth/avxsynth;
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ codyopel viric ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/video/bangarang/default.nix b/pkgs/applications/video/bangarang/default.nix
index f962b52dd62..ceece8879dc 100644
--- a/pkgs/applications/video/bangarang/default.nix
+++ b/pkgs/applications/video/bangarang/default.nix
@@ -1,4 +1,8 @@
-{ stdenv, fetchurl, cmake, qt4, kdelibs, automoc4, phonon, soprano, shared_desktop_ontologies, kdemultimedia, taglib, glibc, gettext }:
+{ stdenv, fetchurl, automoc4, cmake, perl, pkgconfig
+, kdelibs, phonon, soprano, shared_desktop_ontologies
+, kdemultimedia, taglib, glibc, gettext
+}:
+
 stdenv.mkDerivation rec {
   name = "bangarang-2.1";
 
@@ -7,8 +11,12 @@ stdenv.mkDerivation rec {
     sha256 = "1g4pap79k8qaqi0py34xqvisxln1nc5hbvph692ah3af06n6cly1";
   };
 
-  buildInputs = [ kdelibs phonon soprano shared_desktop_ontologies kdemultimedia taglib gettext ];
-  nativeBuildInputs = [ cmake ];
+  buildInputs = [
+    kdelibs phonon soprano shared_desktop_ontologies kdemultimedia
+    taglib gettext
+  ];
+
+  nativeBuildInputs = [ automoc4 cmake perl pkgconfig ];
 
   patches = [ ./gcc-4.7.patch ];
 
diff --git a/pkgs/applications/video/bomi/default.nix b/pkgs/applications/video/bomi/default.nix
index 83fb7546a3b..da07458f4f6 100644
--- a/pkgs/applications/video/bomi/default.nix
+++ b/pkgs/applications/video/bomi/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchFromGitHub, pkgconfig, perl, python3, which
+{ stdenv, fetchurl, fetchFromGitHub, pkgconfig, perl, python, which, makeWrapper
 , libX11, libxcb, qt5, mesa
 , ffmpeg
 , libchardet
@@ -13,37 +13,36 @@
 , libbluray
 , jackSupport ? false, jack ? null
 , portaudioSupport ? false, portaudio ? null
-, pulseSupport ? true, pulseaudio ? null
+, pulseSupport ? true, libpulseaudio ? null
 , cddaSupport ? false, libcdda ? null
+, youtubeSupport ? true, youtube-dl ? null
 }:
 
+with stdenv.lib;
+
 assert jackSupport -> jack != null;
 assert portaudioSupport -> portaudio != null;
-assert pulseSupport -> pulseaudio != null;
+assert pulseSupport -> libpulseaudio != null;
 assert cddaSupport -> libcdda != null;
+assert youtubeSupport -> youtube-dl != null;
 
-let
-  waf = fetchurl {
-    url = http://ftp.waf.io/pub/release/waf-1.8.4;
-    sha256 = "1a7skwgpl91adhcwlmdr76xzdpidh91hvcmj34zz6548bpx3a87h";
-  };
-
+let qtPath = makeSearchPath "lib/qt5/qml" [ qt5.declarative qt5.quickcontrols ];
 in
 
 stdenv.mkDerivation rec {
   name = "bomi-${version}";
-  version = "0.9.5";
+  version = "0.9.11";
 
   src = fetchFromGitHub {
     owner = "xylosper";
     repo = "bomi";
     rev = "v${version}";
-    sha256 = "1pf82dp7v18yd7knsjl853sfzhq4rqc3sq15jgqiw37096gp0sll";
+    sha256 = "0a7n46gn3n5098lxxvl3s29s8jlkzss6by9074jx94ncn9cayf2h";
   };
 
   buildInputs = with stdenv.lib;
                 [ libX11 libxcb mesa
-                  qt5.base qt5.quick1 qt5.x11extras
+                  qt5.base qt5.x11extras
                   ffmpeg
                   libchardet
                   mpg123
@@ -59,19 +58,23 @@ stdenv.mkDerivation rec {
                 ]
                 ++ optional jackSupport jack
                 ++ optional portaudioSupport portaudio
-                ++ optional pulseSupport pulseaudio
+                ++ optional pulseSupport libpulseaudio
                 ++ optional cddaSupport libcdda
                 ;
 
   preConfigure = ''
     patchShebangs configure
-    # src/mpv/waf build-mpv; do
   '';
 
   preBuild = ''
+    patchShebangs src/mpv/waf
     patchShebangs build-mpv
-    install -m755 ${waf} src/mpv/waf
-    sed -i '1 s,.*,#!${python3.interpreter},' src/mpv/waf
+  '';
+
+  postInstall = ''
+    wrapProgram $out/bin/bomi \
+      --set QML2_IMPORT_PATH ${qtPath} \
+      ${optionalString youtubeSupport "--prefix PATH ':' '${youtube-dl}/bin'"}
   '';
 
   configureFlags = with stdenv.lib;
@@ -82,7 +85,7 @@ stdenv.mkDerivation rec {
                    ++ optional cddaSupport "--enable-cdda"
                    ;
 
-  nativeBuildInputs = [ pkgconfig perl which ];
+  nativeBuildInputs = [ pkgconfig perl python which qt5.tools makeWrapper ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/video/byzanz/default.nix b/pkgs/applications/video/byzanz/default.nix
index 69b0ffbe131..abacdf7a2d5 100644
--- a/pkgs/applications/video/byzanz/default.nix
+++ b/pkgs/applications/video/byzanz/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, which, gnome3_12, glib, intltool, pkgconfig, libtool, cairo, gtk3, gst_all_1 }:
+{ stdenv, fetchgit, which, gnome3, glib, intltool, pkgconfig, libtool, cairo, gtk3, gst_all_1 }:
 
 stdenv.mkDerivation rec {
   version = "0.2.3.alpha";
@@ -16,7 +16,9 @@ stdenv.mkDerivation rec {
     ./autogen.sh --prefix=$out
   '';
 
-  buildInputs = [ which gnome3_12.gnome_common glib intltool pkgconfig libtool cairo gtk3 gst_all_1.gstreamer gst_all_1.gst-plugins-base ];
+  NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
+
+  buildInputs = [ which gnome3.gnome_common glib intltool pkgconfig libtool cairo gtk3 gst_all_1.gstreamer gst_all_1.gst-plugins-base ];
 
   meta = with stdenv.lib; {
     description = "Tool to record a running X desktop to an animation suitable for presentation in a web browser";
diff --git a/pkgs/applications/video/clipgrab/default.nix b/pkgs/applications/video/clipgrab/default.nix
index 675f0a3a2f6..d4239685f7b 100644
--- a/pkgs/applications/video/clipgrab/default.nix
+++ b/pkgs/applications/video/clipgrab/default.nix
@@ -1,12 +1,13 @@
-{ stdenv, fetchurl, makeDesktopItem, qt4 }:
+{ stdenv, fetchurl, ffmpeg, makeDesktopItem, qt4 }:
 
-let version = "3.4.9"; in
+let version = "3.5.1"; in
 stdenv.mkDerivation rec {
   name = "clipgrab-${version}";
 
   src = fetchurl {
-    sha256 = "0valq3cgx7yz11zcscz1vdjmppwbicvg0id61dcar22pyp2zkap1";
-    url = "http://download.clipgrab.de/${name}.tar.bz2";
+    sha256 = "16hm7zv0yhxj7gdd8q462jcxy0jk6hicsk1mkhmarwrhifwsy4g9";
+    # The .tar.bz2 "Download" link is a binary blob, the source is .tar.gz!
+    url = "http://download.clipgrab.de/${name}.tar.gz";
   };
 
   meta = with stdenv.lib; {
@@ -18,12 +19,18 @@ stdenv.mkDerivation rec {
       videos to MPEG4, MP3 or other formats in just one easy step.
     '';
     homepage = http://clipgrab.org/;
-    license = with licenses; gpl3Plus;
-    platforms = with platforms; linux;
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
     maintainers = with maintainers; [ nckx ];
   };
 
-  buildInputs = [ qt4 ];
+  buildInputs = [ ffmpeg qt4 ];
+
+  postPatch = stdenv.lib.optionalString (ffmpeg != null) ''
+  substituteInPlace converter_ffmpeg.cpp \
+    --replace '"ffmpeg"' '"${ffmpeg}/bin/ffmpeg"' \
+    --replace '"ffmpeg ' '"${ffmpeg}/bin/ffmpeg '
+  '';
 
   configurePhase = ''
     qmake clipgrab.pro
diff --git a/pkgs/applications/video/dvd-slideshow/default.nix b/pkgs/applications/video/dvd-slideshow/default.nix
new file mode 100644
index 00000000000..a6197c2e6e1
--- /dev/null
+++ b/pkgs/applications/video/dvd-slideshow/default.nix
@@ -0,0 +1,69 @@
+{ stdenv, fetchurl, writeScript, cdrtools, dvdauthor, ffmpeg, imagemagick, lame, mjpegtools, sox, transcode, vorbisTools }:
+
+let
+  wrapper = writeScript "dvd-slideshow.sh" ''
+      #!/bin/bash
+      # wrapper script for dvd-slideshow programs
+      export PATH=${cdrtools}/bin:${dvdauthor}/bin:${ffmpeg}/bin:${imagemagick}/bin:${lame}/bin:${mjpegtools}/bin:${sox}/bin:${transcode}/bin:${vorbisTools}/bin:$PATH
+
+      dir=`dirname "$0"`
+      exe=`basename "$0"`
+      case "$exe" in
+        dvd-slideshow)
+          # use mpeg2enc by default as ffmpeg is known to crash.
+          # run dvd-slideshow.ffmpeg to force ffmpeg.
+          "$dir/dvd-slideshow.real" -mpeg2enc $@
+          ;;
+
+        dvd-slideshow.ffmpeg)
+          "$dir/dvd-slideshow.real" $@
+          ;;
+
+        *)
+          "$dir/$exe.real" $@
+          ;;
+      esac
+    '';
+
+in stdenv.mkDerivation rec {
+  name = "dvd-slideshow";
+  version = "0.8.4-2";
+  src = fetchurl {
+    url = "mirror://sourceforge/dvd-slideshow/files/${name}-${version}.tar.gz";
+    sha256 = "17c09aqvippiji2sd0pcxjg3nb1mnh9k5nia4gn5lhcvngjcp1q5";
+  };
+
+  patchPhase = ''
+    # fix upstream typos
+    substituteInPlace dvd-slideshow \
+      --replace "version='0.8.4-1'" "version='0.8.4-2'" \
+      --replace "mymyecho" "myecho" 
+  '';
+
+  installPhase = ''
+    mkdir -p "$out/bin"
+    cp dvd-slideshow         "$out/bin/dvd-slideshow.real"
+    cp dvd-menu              "$out/bin/dvd-menu.real"
+    cp dir2slideshow         "$out/bin/dir2slideshow.real"
+    cp gallery1-to-slideshow "$out/bin/gallery1-to-slideshow.real"
+    cp jigl2slideshow        "$out/bin/jigl2slideshow.real"
+
+    cp ${wrapper} "$out/bin/dvd-slideshow.sh"
+    ln -s dvd-slideshow.sh "$out/bin/dvd-slideshow"
+    ln -s dvd-slideshow.sh "$out/bin/dvd-slideshow.ffmpeg"
+    ln -s dvd-slideshow.sh "$out/bin/dvd-menu"
+    ln -s dvd-slideshow.sh "$out/bin/dir2slideshow"
+    ln -s dvd-slideshow.sh "$out/bin/gallery1-to-slideshow"
+    ln -s dvd-slideshow.sh "$out/bin/jigl2slideshow"
+
+    cp -a man "$out/"
+  '';
+
+  meta = {
+    description = "Suite of command line programs that creates a slideshow-style video from groups of pictures";
+    homepage = http://dvd-slideshow.sourceforge.net/wiki/Main_Page;
+    license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.robbinch ];
+  };
+}
diff --git a/pkgs/applications/video/dvdauthor/default.nix b/pkgs/applications/video/dvdauthor/default.nix
index cab7b4112d0..1711503314e 100644
--- a/pkgs/applications/video/dvdauthor/default.nix
+++ b/pkgs/applications/video/dvdauthor/default.nix
@@ -18,9 +18,9 @@ stdenv.mkDerivation rec{
     ./dvdauthor-imagemagick-0.7.0.patch
   ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Tools for generating DVD files to be played on standalone DVD players";
     homepage = http://dvdauthor.sourceforge.net/;
-    license = ["GPLv2"];
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/applications/video/gnash/default.nix b/pkgs/applications/video/gnash/default.nix
index e1e2ece8af8..615e0c7e568 100644
--- a/pkgs/applications/video/gnash/default.nix
+++ b/pkgs/applications/video/gnash/default.nix
@@ -3,7 +3,7 @@
 , gst_ffmpeg, speex
 , libogg, libxml2, libjpeg, mesa, libpng, libungif, libtool
 , boost, freetype, agg, dbus, curl, pkgconfig, gettext
-, glib, gtk, gtkglext, pangox_compat, x11, ming, dejagnu, python, perl
+, glib, gtk, gtkglext, pangox_compat, xlibsWrapper, ming, dejagnu, python, perl
 , freefont_ttf, haxe, swftools
 , lib, makeWrapper
 , xulrunner }:
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
 
   # XXX: KDE is supported as well so we could make it available optionally.
   buildInputs = [
-    gettext x11 SDL SDL_mixer gstreamer gst_plugins_base gst_plugins_good
+    gettext xlibsWrapper SDL SDL_mixer gstreamer gst_plugins_base gst_plugins_good
     gst_ffmpeg speex libtool
     libogg libxml2 libjpeg mesa libpng libungif boost freetype agg
     dbus curl pkgconfig glib gtk gtkglext pangox_compat
@@ -117,5 +117,6 @@ stdenv.mkDerivation rec {
 
     maintainers = [ ];
     platforms = stdenv.lib.platforms.gnu;
+    broken = true;
   };
 } // {mozillaPlugin = "/plugins";}
diff --git a/pkgs/applications/video/k9copy/default.nix b/pkgs/applications/video/k9copy/default.nix
new file mode 100644
index 00000000000..047f2301185
--- /dev/null
+++ b/pkgs/applications/video/k9copy/default.nix
@@ -0,0 +1,56 @@
+{ stdenv, fetchurl
+, cmake, automoc4
+, dvdauthor, xineLib, libmpeg2, libav, libdvdread, libdvdnav, dvdplusrwtools
+, phonon, qtx11extras
+, extra-cmake-modules, kio, kiconthemes, ki18n, kdesu, kdoctools, solid
+}:
+
+stdenv.mkDerivation rec {
+  version = "3.0.3";
+  name = "k9copy-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/k9copy-reloaded/${name}.tar.gz";
+    sha256 = "0dp06rwihks50c57bbv04d6bj2qc88isl91971r4lii2xp0qn7sg";
+  };
+
+  cmakeFlags = [
+    "-DQT5_BUILD=ON"
+    "-DCMAKE_MINIMUM_REQUIRED_VERSION=3.0"
+  ];
+
+  # Hack to disable documentation
+  preConfigure = ''
+   substituteInPlace ./CMakeLists.txt \
+     --replace "add_subdirectory(doc)" ""
+  '';
+
+  buildInputs = [
+    cmake
+    dvdauthor
+    xineLib
+    libmpeg2
+    libav
+    libdvdread
+    libdvdnav
+    dvdplusrwtools
+    #automoc4
+    phonon
+    extra-cmake-modules
+    kio
+    solid
+    qtx11extras
+    kiconthemes
+    ki18n
+    kdesu
+  ];
+  nativeBuildInputs = [ kdoctools ];
+
+  meta = {
+    description = "DVD backup and DVD authoring program";
+    homepage = "http://k9copy-reloaded.sourceforge.net/";
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = with stdenv.lib.maintainers; [ flosse ];
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/pkgs/applications/video/kdenlive/default.nix b/pkgs/applications/video/kdenlive/default.nix
index f29ad00ea9e..3da5180352c 100644
--- a/pkgs/applications/video/kdenlive/default.nix
+++ b/pkgs/applications/video/kdenlive/default.nix
@@ -14,9 +14,12 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    automoc4 cmake frei0r gettext kdelibs libv4l makeWrapper mlt perl
-    phonon pkgconfig qimageblitz qjson qt4 shared_desktop_ontologies
-    shared_mime_info soprano
+    frei0r kdelibs libv4l mlt phonon qimageblitz qjson qt4
+    shared_desktop_ontologies soprano
+  ];
+
+  nativeBuildInputs = [
+    automoc4 cmake gettext makeWrapper perl pkgconfig shared_mime_info
   ];
 
   propagatedUserEnvPkgs = [ oxygen_icons ];
diff --git a/pkgs/applications/video/kmplayer/default.nix b/pkgs/applications/video/kmplayer/default.nix
index 8d4a328cc09..2e62cb139e3 100644
--- a/pkgs/applications/video/kmplayer/default.nix
+++ b/pkgs/applications/video/kmplayer/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, cmake, pkgconfig, gettext, makeWrapper
+{ stdenv, fetchurl
+, automoc4, cmake, gettext, makeWrapper, perl, pkgconfig
 , kdelibs, cairo, dbus_glib, mplayer
 }:
 
@@ -11,10 +12,9 @@ stdenv.mkDerivation {
     sha256 = "1yvbkb1hh5y7fqfvixjf2rryzm0fm0fpkx4lmvhi7k7d0v4wpgky";
   };
 
-  buildInputs = [
-    cmake gettext pkgconfig makeWrapper
-    kdelibs cairo dbus_glib
-  ];
+  buildInputs = [ kdelibs cairo dbus_glib ];
+
+  nativeBuildInputs = [ automoc4 cmake gettext makeWrapper perl pkgconfig ];
 
   postInstall = ''
     wrapProgram $out/bin/kmplayer --suffix PATH : ${mplayer}/bin
diff --git a/pkgs/applications/video/kodi/default.nix b/pkgs/applications/video/kodi/default.nix
index 0b18705e6fb..3fd3d31c18c 100644
--- a/pkgs/applications/video/kodi/default.nix
+++ b/pkgs/applications/video/kodi/default.nix
@@ -15,16 +15,16 @@
 , lzo, libcdio, libmodplug, libass, libbluray
 , sqlite, mysql, nasm, gnutls, libva, wayland
 , curl, bzip2, zip, unzip, glxinfo, xdpyinfo
+, libcec, libcec_platform
 , dbus_libs ? null, dbusSupport ? true
 , udev, udevSupport ? true
 , libusb ? null, usbSupport ? false
 , samba ? null, sambaSupport ? true
 , libmicrohttpd, bash
 # TODO: would be nice to have nfsSupport (needs libnfs library)
-# TODO: librtmp
+, rtmpdump ? null, rtmpSupport ? true
 , libvdpau ? null, vdpauSupport ? true
-, pulseaudio ? null, pulseSupport ? true
-, libcec ? null, cecSupport ? true
+, libpulseaudio ? null, pulseSupport ? true
 }:
 
 assert dbusSupport  -> dbus_libs != null;
@@ -32,22 +32,22 @@ assert udevSupport  -> udev != null;
 assert usbSupport   -> libusb != null && ! udevSupport; # libusb won't be used if udev is avaliable
 assert sambaSupport -> samba != null;
 assert vdpauSupport -> libvdpau != null;
-assert pulseSupport -> pulseaudio != null;
-assert cecSupport   -> libcec != null;
+assert pulseSupport -> libpulseaudio != null;
+assert rtmpSupport  -> rtmpdump != null;
 
 let
-  rel = "Helix";
-  ffmpeg_2_4_6 = fetchurl {
-    url = "https://github.com/xbmc/FFmpeg/archive/2.4.6-${rel}.tar.gz";
-    sha256 = "1kxp2z2zgcbplm5398zrfgwcfacfzvbg9y9wwrmm8vgwfmj32wh8";
+  rel = "Isengard";
+  ffmpeg_2_6_4 = fetchurl {
+    url = "https://github.com/xbmc/FFmpeg/archive/2.6.4-${rel}.tar.gz";
+    sha256 = "0gsjz8sr0dqq68gcln29xhz3h35n77769h1gb0ias0apmpaad1r4";
   };
 in stdenv.mkDerivation rec {
     name = "kodi-" + version;
-    version = "14.2";
+    version = "15.1";
 
     src = fetchurl {
       url = "https://github.com/xbmc/xbmc/archive/${version}-${rel}.tar.gz";
-      sha256 = "1x37l8db6xrvdw933p804lnwvkcm4vdb9gm5i6vmz4ha8f88bjyr";
+      sha256 = "0187qxzyq4nhzbcwbhi71j4bl5k7pwjryhklil90gy5ziw6n3ckj";
     };
 
     buildInputs = [
@@ -68,14 +68,15 @@ in stdenv.mkDerivation rec {
       lzo libcdio libmodplug libass libbluray
       sqlite mysql.lib nasm avahi libdvdcss lame
       curl bzip2 zip unzip glxinfo xdpyinfo
+      libcec libcec_platform
     ]
     ++ lib.optional dbusSupport dbus_libs
     ++ lib.optional udevSupport udev
     ++ lib.optional usbSupport libusb
     ++ lib.optional sambaSupport samba
     ++ lib.optional vdpauSupport libvdpau
-    ++ lib.optional pulseSupport pulseaudio
-    ++ lib.optional cecSupport libcec;
+    ++ lib.optional pulseSupport libpulseaudio
+    ++ lib.optional rtmpSupport rtmpdump;
 
     dontUseCmakeConfigure = true;
 
@@ -84,19 +85,18 @@ in stdenv.mkDerivation rec {
         --replace 'usr/share/zoneinfo' 'etc/zoneinfo'
       substituteInPlace tools/depends/target/ffmpeg/autobuild.sh \
         --replace "/bin/bash" "${bash}/bin/bash -ex"
-      cp ${ffmpeg_2_4_6} tools/depends/target/ffmpeg/ffmpeg-2.4.6-${rel}.tar.gz
+      cp ${ffmpeg_2_6_4} tools/depends/target/ffmpeg/ffmpeg-2.6.4-${rel}.tar.gz
     '';
 
     preConfigure = ''
       ./bootstrap
     '';
 
-    configureFlags = [
-      "--enable-external-libraries"
-    ]
+    configureFlags = [ ]
     ++ lib.optional (!sambaSupport) "--disable-samba"
     ++ lib.optional vdpauSupport "--enable-vdpau"
-    ++ lib.optional pulseSupport "--enable-pulse";
+    ++ lib.optional pulseSupport "--enable-pulse"
+    ++ lib.optional rtmpSupport "--enable-rtmp";
 
     postInstall = ''
       for p in $(ls $out/bin/) ; do
@@ -108,7 +108,9 @@ in stdenv.mkDerivation rec {
           --prefix LD_LIBRARY_PATH ":" "${systemd}/lib" \
           --prefix LD_LIBRARY_PATH ":" "${libmad}/lib" \
           --prefix LD_LIBRARY_PATH ":" "${libvdpau}/lib" \
-          --prefix LD_LIBRARY_PATH ":" "${libcec}/lib"
+          --prefix LD_LIBRARY_PATH ":" "${libcec}/lib" \
+          --prefix LD_LIBRARY_PATH ":" "${libcec_platform}/lib" \
+          --prefix LD_LIBRARY_PATH ":" "${rtmpdump}/lib"
       done
     '';
 
diff --git a/pkgs/applications/video/makemkv/default.nix b/pkgs/applications/video/makemkv/default.nix
index 583c800a8b4..040f74c16ff 100644
--- a/pkgs/applications/video/makemkv/default.nix
+++ b/pkgs/applications/video/makemkv/default.nix
@@ -4,17 +4,17 @@
 
 stdenv.mkDerivation rec {
   name = "makemkv-${ver}";
-  ver = "1.9.2";
+  ver = "1.9.5";
   builder = ./builder.sh;
 
   src_bin = fetchurl {
     url = "http://www.makemkv.com/download/makemkv-bin-${ver}.tar.gz";
-    sha256 = "0hjby7imja9sg2h68al81n4zl72mc3y3fqmf61sf1sad4njs9bkj";
+    sha256 = "1qzkdrij89s748rvmibx083g1irfm8dqx257skr45i2gsg2qqijp";
   };
 
   src_oss = fetchurl {
     url = "http://www.makemkv.com/download/makemkv-oss-${ver}.tar.gz";
-    sha256 = "074scfz835jynzmb28i8q44hc6ixvfg3crgirmy02bbpxakyp1v6";
+    sha256 = "1immnlx1rld8iw89fxgq2sk2l050sa8h046ka8mdwg8682d75lfg";
   };
 
   buildInputs = [openssl qt4 mesa zlib pkgconfig libav];
diff --git a/pkgs/applications/video/mediathekview/default.nix b/pkgs/applications/video/mediathekview/default.nix
new file mode 100644
index 00000000000..be4363c8314
--- /dev/null
+++ b/pkgs/applications/video/mediathekview/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, jre, unzip }:
+
+stdenv.mkDerivation {
+  name = "mediathekview-9";
+  src = fetchurl {
+    url = "mirror://sourceforge/zdfmediathk/MediathekView_9.zip";
+    sha256 = "1wff0igr33z9p1mjw7yvb6658smdwnp22dv8klz0y8qg116wx7a4";
+  };
+  unpackPhase = "true";
+
+  buildInputs = [ unzip ];
+  
+  # Could use some more love
+  # Maybe we can also preconfigure locations for vlc and the others.
+  installPhase = ''
+    mkdir -p $out/bin
+    mkdir -p $out/opt/mediathekview
+    cd $out/opt/mediathekview
+    unzip $src
+    find . -iname '*.exe' -delete
+    sed -i -e 's, java, ${jre}/bin/java,' MediathekView__Linux.sh
+    ln -s $out/opt/mediathekview/MediathekView__Linux.sh $out/bin/mediathekview
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://zdfmediathk.sourceforge.net/;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = [ maintainers.chaoflow ];
+    platforms = platforms.linux;  #  also OS X and cygwin, but not investigated, yet
+  };
+}
diff --git a/pkgs/applications/video/minitube/default.nix b/pkgs/applications/video/minitube/default.nix
new file mode 100644
index 00000000000..b9c4de0811d
--- /dev/null
+++ b/pkgs/applications/video/minitube/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchFromGitHub, makeWrapper, phonon, phonon_backend_vlc, qt4
+# "Free" API key generated by nckx <tobias.geerinckx.rice@gmail.com>
+, withAPIKey ? "AIzaSyBtFgbln3bu1swQC-naMxMtKh384D3xJZE" }:
+
+let version = "2.4"; in
+stdenv.mkDerivation {
+  name = "minitube-${version}";
+
+  src = fetchFromGitHub {
+    sha256 = "0mm8v2vpspwxh2fqaykb381v6r9apywc1b0x8jkcbp7s43w10lp5";
+    rev = version;
+    repo = "minitube";
+    owner = "flaviotordini";
+  };
+
+  meta = with stdenv.lib; {
+    inherit version;
+    description = "Stand-alone YouTube video player";
+    longDescription = ''
+      Watch YouTube videos in a new way: you type a keyword, Minitube gives
+      you an endless video stream. Minitube is not about cloning the YouTube
+      website, it aims to create a new TV-like experience.
+    '';
+    homepage = http://flavio.tordini.org/minitube;
+    license = licenses.gpl3Plus;
+    platforms = with platforms; linux;
+    maintainers = with maintainers; [ nckx ];
+  };
+
+  buildInputs = [ phonon phonon_backend_vlc qt4 ];
+  nativeBuildInputs = [ makeWrapper ];
+
+  configurePhase = ''
+    qmake PREFIX=$out "DEFINES += APP_GOOGLE_API_KEY=${withAPIKey}"
+  '';
+
+  enableParallelBuilding = true;
+
+  postInstall = ''
+    wrapProgram $out/bin/minitube \
+      --prefix QT_PLUGIN_PATH : "${phonon_backend_vlc}/lib/kde4/plugins"
+  '';
+}
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index 01d96542c2e..e3f586a3a0f 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -1,49 +1,74 @@
-{ stdenv, fetchurl
-, libmatroska
-, flac
-, libvorbis
-, file
-, boost
-, xdg_utils
-, expat
-, withGUI ? true
-, wxGTK
-, zlib
-, ruby
-, gettext
-, pkgconfig
-, curl
+{ stdenv, fetchurl, gettext, pkgconfig, ruby
+, boost, expat, file, flac, libebml, libmatroska, libogg, libvorbis, xdg_utils, zlib
+# pugixml (not packaged)
+, buildConfig ? "all"
+, withGUI ? false, qt5 ? null # Disabled for now until upstream issues are resolved
+, legacyGUI ? true, wxGTK ? null
+# For now both qt5 and wxwidgets gui's are enabled, if wxwidgets is disabled the
+# build system doesn't install desktop entries, icons, etc...
 }:
 
-assert withGUI -> wxGTK != null;
+let
+  inherit (stdenv.lib) enableFeature optional;
+in
+
+assert withGUI -> qt5 != null;
+assert legacyGUI -> wxGTK != null;
 
 stdenv.mkDerivation rec {
-  version = "7.8.0";
   name = "mkvtoolnix-${version}";
+  version = "8.3.0";
 
   src = fetchurl {
     url = "http://www.bunkus.org/videotools/mkvtoolnix/sources/${name}.tar.xz";
-    sha256 = "0m7y9115bkfsm95hv2nq0hnd9w73jymsm071jm798w11vdskm8af";
+    sha256 = "0dzwmwa76y4nhb5brp5a1kxgxjr71czd8vj218qmrlwm54i85gc7";
   };
 
+  patchPhase = ''
+    patchShebangs ./rake.d/
+    patchShebangs ./Rakefile
+    # Force ruby encoding to use UTF-8 or else when enabling qt5 the Rakefile may
+    # fail with `invalid byte sequence in US-ASCII' due to UTF-8 characters
+    # This workaround replaces an arbitrary comment in the drake file
+    sed -e 's,#--,Encoding.default_external = Encoding::UTF_8,' -i ./drake
+  '';
+
+  configureFlags = [
+    "--with-boost-libdir=${boost.lib}/lib"
+    "--without-curl"
+  ] ++ (
+    if (withGUI || legacyGUI) then [
+      "--with-mkvtoolnix-gui"
+      "--enable-gui"
+      (enableFeature withGUI "qt")
+      (enableFeature legacyGUI "wxwidgets")
+    ] else [
+      "--disable-gui"
+    ]
+  );
+
+  nativeBuildInputs = [ gettext pkgconfig ruby ];
+
   buildInputs = [
-    libmatroska flac libvorbis file boost xdg_utils
-    expat zlib ruby gettext pkgconfig curl
-    ] ++ stdenv.lib.optional withGUI wxGTK;
+    boost expat file flac libebml libmatroska libogg libvorbis xdg_utils zlib
+  ] ++ optional withGUI qt5
+    ++ optional legacyGUI wxGTK;
+
+  enableParallelBuilding = true;
 
-  configureFlags = "--with-boost-libdir=${boost.lib}/lib";
   buildPhase = ''
-    ruby ./drake
+    ./drake
   '';
 
   installPhase = ''
-    ruby ./drake install
+    ./drake install
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Cross-platform tools for Matroska";
     homepage = http://www.bunkus.org/videotools/mkvtoolnix/;
-    license = stdenv.lib.licenses.gpl2;
-    maintainers = with stdenv.lib.maintainers; [ fuuzetsu ];
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ codyopel fuuzetsu ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/video/mplayer/default.nix b/pkgs/applications/video/mplayer/default.nix
index ac106431240..a317e1d4fe5 100644
--- a/pkgs/applications/video/mplayer/default.nix
+++ b/pkgs/applications/video/mplayer/default.nix
@@ -17,8 +17,8 @@
 , speexSupport ? true, speex ? null
 , theoraSupport ? true, libtheora ? null
 , x264Support ? false, x264 ? null
-, jackaudioSupport ? false, jack2 ? null
-, pulseSupport ? false, pulseaudio ? null
+, jackaudioSupport ? false, libjack2 ? null
+, pulseSupport ? false, libpulseaudio ? null
 , bs2bSupport ? false, libbs2b ? null
 # For screenshots
 , libpngSupport ? true, libpng ? null
@@ -44,8 +44,8 @@ assert lameSupport -> lame != null;
 assert speexSupport -> speex != null;
 assert theoraSupport -> libtheora != null;
 assert x264Support -> x264 != null;
-assert jackaudioSupport -> jack2 != null;
-assert pulseSupport -> pulseaudio != null;
+assert jackaudioSupport -> libjack2 != null;
+assert pulseSupport -> libpulseaudio != null;
 assert bs2bSupport -> libbs2b != null;
 assert libpngSupport -> libpng != null;
 assert libjpegSupport -> libjpeg != null;
@@ -116,10 +116,10 @@ stdenv.mkDerivation rec {
     ++ optional dvdnavSupport libdvdnav
     ++ optional bluraySupport libbluray
     ++ optional cddaSupport cdparanoia
-    ++ optional jackaudioSupport jack2
+    ++ optional jackaudioSupport libjack2
     ++ optionals amrSupport [ amrnb amrwb ]
     ++ optional x264Support x264
-    ++ optional pulseSupport pulseaudio
+    ++ optional pulseSupport libpulseaudio
     ++ optional screenSaverSupport libXScrnSaver
     ++ optional lameSupport lame
     ++ optional vdpauSupport libvdpau
diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix
index 464f5130b67..5ac70413d16 100644
--- a/pkgs/applications/video/mpv/default.nix
+++ b/pkgs/applications/video/mpv/default.nix
@@ -1,7 +1,5 @@
-{ stdenv, fetchurl, fetchgit, freetype, pkgconfig, freefont_ttf, ffmpeg, libass
-, lua, perl, libpthreadstubs
-, lua5_sockets
-, python3, docutils, which, lib
+{ stdenv, fetchurl, docutils, makeWrapper, perl, pkgconfig, python, which
+, ffmpeg, freefont_ttf, freetype, libass, libpthreadstubs, lua, lua5_sockets
 , x11Support ? true, libX11 ? null, libXext ? null, mesa ? null, libXxf86vm ? null
 , xineramaSupport ? true, libXinerama ? null
 , xvSupport ? true, libXv ? null
@@ -14,17 +12,21 @@
 , bluraySupport ? true, libbluray ? null
 , speexSupport ? true, speex ? null
 , theoraSupport ? true, libtheora ? null
-, jackaudioSupport ? true, jack2 ? null
-, pulseSupport ? true, pulseaudio ? null
-, bs2bSupport ? false, libbs2b ? null
+, jackaudioSupport ? false, libjack2 ? null
+, pulseSupport ? true, libpulseaudio ? null
+, bs2bSupport ? true, libbs2b ? null
 # For screenshots
 , libpngSupport ? true, libpng ? null
 # for Youtube support
-, youtubeSupport ? false, youtubeDL ? null
-, cacaSupport ? false, libcaca ? null
+, youtubeSupport ? true, youtube-dl ? null
+, cacaSupport ? true, libcaca ? null
 , vaapiSupport ? false, libva ? null
 }:
 
+# TODO: Wayland support
+# TODO: investigate caca support
+# TODO: investigate lua5_sockets bug
+
 assert x11Support -> (libX11 != null && libXext != null && mesa != null && libXxf86vm != null);
 assert xineramaSupport -> (libXinerama != null && x11Support);
 assert xvSupport -> (libXv != null && x11Support);
@@ -37,38 +39,57 @@ assert dvdnavSupport -> libdvdnav != null;
 assert bluraySupport -> libbluray != null;
 assert speexSupport -> speex != null;
 assert theoraSupport -> libtheora != null;
-assert jackaudioSupport -> jack2 != null;
-assert pulseSupport -> pulseaudio != null;
+assert jackaudioSupport -> libjack2 != null;
+assert pulseSupport -> libpulseaudio != null;
 assert bs2bSupport -> libbs2b != null;
 assert libpngSupport -> libpng != null;
-assert youtubeSupport -> youtubeDL != null;
+assert youtubeSupport -> youtube-dl != null;
 assert cacaSupport -> libcaca != null;
 
-# Purity problem: Waf needed to be is downloaded by bootstrap.py
-# but by purity reasons it should be avoided; thanks the-kenny to point it out!
-# Now, it will just download and package Waf, mimetizing bootstrap.py behaviour
-
 let
+  inherit (stdenv.lib) optional optionals optionalString;
+
+  # Purity: Waf is normally downloaded by bootstrap.py, but
+  # for purity reasons this behavior should be avoided.
   waf = fetchurl {
     url = http://ftp.waf.io/pub/release/waf-1.8.5;
     sha256 = "0gh266076pd9fzwkycskyd3kkv2kds9613blpxmn9w4glkiwmmh5";
   };
-
 in
 
-with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "mpv-${version}";
-  version = "0.8.3";
+  version = "0.9.2";
 
   src = fetchurl {
     url = "https://github.com/mpv-player/mpv/archive/v${version}.tar.gz";
-    sha256 = "1kw9hr957cxqgm2i94bgqc6sskm6bwhm0akzckilhs460b43h409";
+    sha256 = "0la7pmy75mq92kcrawdiw5idw6a46z7d15mlkgs0axyivdaqy560";
   };
 
-  buildInputs = 
-    [ python3 lua perl freetype pkgconfig ffmpeg libass docutils which libpthreadstubs lua5_sockets ]
-    ++ optionals x11Support [ libX11 libXext mesa libXxf86vm ]
+  patchPhase = ''
+    patchShebangs ./TOOLS/
+  '';
+
+  NIX_LDFLAGS = optionalString x11Support "-lX11 -lXext";
+
+  configureFlags = [
+    "--enable-libmpv-shared"
+    "--disable-libmpv-static"
+    "--disable-static-build"
+    "--enable-manpage-build"
+    "--disable-build-date" # Purity
+    "--enable-zsh-comp"
+  ] ++ optional vaapiSupport "--enable-vaapi";
+
+  configurePhase = ''
+    python ${waf} configure --prefix=$out $configureFlags
+  '';
+
+  nativeBuildInputs = [ docutils makeWrapper perl pkgconfig python which ];
+
+  buildInputs = [
+    ffmpeg freetype libass libpthreadstubs lua lua5_sockets
+  ] ++ optionals x11Support [ libX11 libXext mesa libXxf86vm ]
     ++ optional alsaSupport alsaLib
     ++ optional xvSupport libXv
     ++ optional theoraSupport libtheora
@@ -76,56 +97,46 @@ stdenv.mkDerivation rec {
     ++ optional dvdreadSupport libdvdread
     ++ optionals dvdnavSupport [ libdvdnav libdvdnav.libdvdread ]
     ++ optional bluraySupport libbluray
-    ++ optional jackaudioSupport jack2
-    ++ optional pulseSupport pulseaudio
+    ++ optional jackaudioSupport libjack2
+    ++ optional pulseSupport libpulseaudio
     ++ optional screenSaverSupport libXScrnSaver
     ++ optional vdpauSupport libvdpau
     ++ optional speexSupport speex
     ++ optional bs2bSupport libbs2b
     ++ optional libpngSupport libpng
-    ++ optional youtubeSupport youtubeDL
+    ++ optional youtubeSupport youtube-dl
     ++ optional sdl2Support SDL2
     ++ optional cacaSupport libcaca
-    ++ optional vaapiSupport libva
-    ;
-
-# There are almost no need of "configure flags", but some libraries
-# weren't detected; see the TODO comments below
-
-  NIX_LDFLAGS = stdenv.lib.optionalString x11Support "-lX11 -lXext";
+    ++ optional vaapiSupport libva;
 
   enableParallelBuilding = true;
 
-  configurePhase = ''
-    python3 ${waf} configure --prefix=$out ${lib.optionalString vaapiSupport "--enable-vaapi"}
-    patchShebangs TOOLS
-  '';
-
   buildPhase = ''
-    python3 ${waf} build
+    python ${waf} build
   '';
 
   installPhase = ''
-    python3 ${waf} install
-    # Maybe not needed, but it doesn't hurt anyway: a standard font
+    python ${waf} install
+
+    # Use a standard font
     mkdir -p $out/share/mpv
     ln -s ${freefont_ttf}/share/fonts/truetype/FreeSans.ttf $out/share/mpv/subfont.ttf
-    '';
+  '' + optionalString youtubeSupport ''
+    # Ensure youtube-dl is available in $PATH for MPV
+    wrapProgram $out/bin/mpv --prefix PATH : "${youtube-dl}/bin"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A media player that supports many video formats (MPlayer and mplayer2 fork)";
+    homepage = http://mpv.io;
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ AndersonTorres fuuzetsu ];
+    platforms = platforms.linux;
 
-  meta = with stdenv.lib;{
-    description = "A movie player that supports many video formats (MPlayer and mplayer2 fork)";
     longDescription = ''
       mpv is a free and open-source general-purpose video player,
       based on the MPlayer and mplayer2 projects, with great
       improvements above both.
     '';
-    homepage = http://mpv.io;
-    license = licenses.gpl2Plus;
-    maintainers = with stdenv.lib.maintainers; [ AndersonTorres fuuzetsu ];
-    platforms = platforms.linux;
   };
 }
-
-# TODO: Wayland support
-# TODO: investigate caca support
-# TODO: investigate lua5_sockets bug
diff --git a/pkgs/applications/video/mythtv/default.nix b/pkgs/applications/video/mythtv/default.nix
index 2bc635d510e..4320022192a 100644
--- a/pkgs/applications/video/mythtv/default.nix
+++ b/pkgs/applications/video/mythtv/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, which, qt4, x11, pulseaudio, fftwSinglePrec
+{ stdenv, fetchurl, which, qt4, xlibsWrapper, libpulseaudio, fftwSinglePrec
 , lame, zlib, mesa, alsaLib, freetype, perl, pkgconfig
 , libX11, libXv, libXrandr, libXvMC, libXinerama, libXxf86vm, libXmu
 , yasm, libuuid, taglib, libtool, autoconf, automake, file
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   sourceRoot = "${name}/mythtv";
 
   buildInputs = [
-    freetype qt4 lame zlib x11 mesa perl alsaLib pulseaudio fftwSinglePrec
+    freetype qt4 lame zlib xlibsWrapper mesa perl alsaLib libpulseaudio fftwSinglePrec
     libX11 libXv libXrandr libXvMC libXmu libXinerama libXxf86vm libXmu
     libuuid taglib
   ];
diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix
index 87e3047ed19..b231aad07cc 100644
--- a/pkgs/applications/video/obs-studio/default.nix
+++ b/pkgs/applications/video/obs-studio/default.nix
@@ -7,25 +7,34 @@
 , qt5
 , libv4l
 , x264
+, curl
+
+, pulseaudioSupport ? false
+, libpulseaudio
 }:
 
-stdenv.mkDerivation rec {
+let
+  optional = stdenv.lib.optional;
+in stdenv.mkDerivation rec {
   name = "obs-studio-${version}";
-  version = "0.9.1";
+  version = "0.11.1";
 
   src = fetchurl {
     url = "https://github.com/jp9000/obs-studio/archive/${version}.tar.gz";
-    sha256 = "198ymfdrg58i3by58fs68df835rkpnpagnvyzlilmn9ypvpa8h81";
+    sha256 = "12g1y6y8ixvgvwk75x7qgq0j06d5khd0w3if6kahswlc58q65fm8";
   };
 
   buildInputs = [ cmake
+                  curl
                   ffmpeg
                   jansson
                   libv4l
                   libxkbcommon
-                  qt5
+                  qt5.base
+                  qt5.x11extras
                   x264
-                ];
+                ]
+                ++ optional pulseaudioSupport libpulseaudio;
 
   # obs attempts to dlopen libobs-opengl, it fails unless we make sure
   # DL_OPENGL is an explicit path. Not sure if there's a better way
diff --git a/pkgs/applications/video/pitivi/default.nix b/pkgs/applications/video/pitivi/default.nix
index 5b77ec916b0..9515e118644 100644
--- a/pkgs/applications/video/pitivi/default.nix
+++ b/pkgs/applications/video/pitivi/default.nix
@@ -1,16 +1,16 @@
 { stdenv, fetchurl, pkgconfig, intltool, itstool, makeWrapper
-, pythonPackages, gst, clutter-gst, clutter-gtk, hicolor_icon_theme
-, gobjectIntrospection, clutter, gtk3, librsvg, gnome3, libnotify
+, python3Packages, gst, clutter-gtk, hicolor_icon_theme
+, gobjectIntrospection, librsvg, gnome3, libnotify
 }:
 
 let
-  version = "0.93";
+  version = "0.94";
 in stdenv.mkDerivation rec {
   name = "pitivi-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/pitivi/${version}/${name}.tar.xz";
-    sha256 = "0z89dwrd7akhkap270i372yszqib8yqcymv78lhdmn3a8bsa7jhp";
+    sha256 = "1v7s0qsibwykkmknspjhpdrj80s987pvbl01kh34k4aspi1hcapm";
   };
 
   meta = with stdenv.lib; {
@@ -29,15 +29,15 @@ in stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig intltool itstool makeWrapper ];
 
   buildInputs = [
-    gobjectIntrospection clutter-gst clutter-gtk librsvg gnome3.gnome_desktop
-    hicolor_icon_theme gnome3.gnome_icon_theme gnome3.gnome_icon_theme_symbolic
+    gobjectIntrospection clutter-gtk librsvg gnome3.gnome_desktop
+    gnome3.defaultIconTheme
     gnome3.gsettings_desktop_schemas libnotify
   ] ++ (with gst; [
-    gstreamer gst-python gst-editing-services
+    gstreamer gst-editing-services
     gst-plugins-base gst-plugins-good
     gst-plugins-bad gst-plugins-ugly gst-libav
-  ]) ++ (with pythonPackages; [
-    python pygobject3 pyxdg numpy pycairo sqlite3
+  ]) ++ (with python3Packages; [
+    python pygobject3 gst-python pyxdg numpy pycairo sqlite3
   ]);
 
   preFixup = ''
diff --git a/pkgs/applications/video/popcorntime/default.nix b/pkgs/applications/video/popcorntime/default.nix
new file mode 100644
index 00000000000..41d8b5a577d
--- /dev/null
+++ b/pkgs/applications/video/popcorntime/default.nix
@@ -0,0 +1,52 @@
+{ lib, stdenv, fetchurl, runCommand, makeWrapper, nwjs, zip }:
+
+let
+  version = "0.3.8-3";
+
+  popcorntimePackage = stdenv.mkDerivation rec {
+    name = "popcorntime-${version}";
+    src = if stdenv.system == "x86_64-linux" then
+        fetchurl {
+          url = "http://get.popcorntime.io/build/Popcorn-Time-${version}-Linux-64.tar.xz";
+          sha256 = "0q8c6m9majgv5a6hjl1b2ndmq4xx05zbarsydhqkivhh9aymvxgm";
+        }
+      else if stdenv.system == "i686-linux" then
+        fetchurl {
+          url = "https://get.popcorntime.io/build/Popcorn-Time-${version}-Linux-32.tar.xz";
+          sha256 = "1dz1cp31qbwamm9pf8ydmzzhnb6d9z73bigdv3y74dgicz3dpr92";
+        }
+      else throw "Unsupported system ${stdenv.system}";
+
+    sourceRoot = ".";
+
+    buildInputs = [ zip ];
+
+    buildPhase = ''
+      rm Popcorn-Time install
+      zip -r package.nw package.json src node_modules
+      cat ${nwjs}/bin/nw package.nw > Popcorn-Time
+      chmod 555 Popcorn-Time
+    '';
+
+    installPhase = ''
+      mkdir -p $out
+      cp -r * $out/
+    '';
+
+    dontPatchELF = true;
+  };
+in
+  runCommand "popcorntime-${version}" {
+    buildInputs = [ makeWrapper ];
+    meta = with stdenv.lib; {
+      homepage = http://popcorntime.io/;
+      description = "An application that streams movies and TV shows from torrents";
+      license = stdenv.lib.licenses.gpl3;
+      platforms = platforms.linux;
+      maintainers = with maintainers; [ bobvanderlinden ];
+    };
+  }
+  ''
+    mkdir -p $out/bin
+    makeWrapper ${popcorntimePackage}/Popcorn-Time $out/bin/popcorntime
+  ''
diff --git a/pkgs/applications/video/qarte/default.nix b/pkgs/applications/video/qarte/default.nix
index a7e8cd8c1b9..4517f27ce7d 100644
--- a/pkgs/applications/video/qarte/default.nix
+++ b/pkgs/applications/video/qarte/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchbzr, python, pyqt4, sip, rtmpdump, makeWrapper }:
 
 stdenv.mkDerivation {
-  name = "qarte-2.2.0";
+  name = "qarte-2.3.0";
   src = fetchbzr {
     url = http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/trunk;
-    rev = "146";
-    sha256 = "0vqhxrzb3d7id81sr02h78hn0m7k2x0yxk9cl36pr5vx3vjnsyi9";
+    rev = "148";
+    sha256 = "0bp2qbl2g3dygmb31lwlarki9lybkb9zxixda4lwrlz628w93fxh";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/video/shotcut/default.nix b/pkgs/applications/video/shotcut/default.nix
index 9ad739a361d..c0458748c96 100644
--- a/pkgs/applications/video/shotcut/default.nix
+++ b/pkgs/applications/video/shotcut/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "1504ds3ppqmpg84nb2gb74qndqysjwn3xw7n8xv19kd1pppnr10f";
   };
 
-  buildInputs = [ SDL frei0r gettext makeWrapper mlt pkgconfig qt5 ];
+  buildInputs = [ SDL frei0r gettext makeWrapper mlt pkgconfig qt5.base ];
 
   configurePhase = "qmake PREFIX=$out";
 
diff --git a/pkgs/applications/video/simplescreenrecorder/default.nix b/pkgs/applications/video/simplescreenrecorder/default.nix
index 7320a7f6d74..8560b83d5fa 100644
--- a/pkgs/applications/video/simplescreenrecorder/default.nix
+++ b/pkgs/applications/video/simplescreenrecorder/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchurl, alsaLib, ffmpeg, jack2, libX11, libXext
-, libXfixes, mesa, pkgconfig, pulseaudio, qt4
+{ stdenv, fetchurl, alsaLib, ffmpeg, libjack2, libX11, libXext
+, libXfixes, mesa, pkgconfig, libpulseaudio, qt4
 }:
 
 stdenv.mkDerivation rec {
@@ -12,8 +12,8 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    alsaLib ffmpeg jack2 libX11 libXext libXfixes mesa pkgconfig
-    pulseaudio qt4
+    alsaLib ffmpeg libjack2 libX11 libXext libXfixes mesa pkgconfig
+    libpulseaudio qt4
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/video/smtube/default.nix b/pkgs/applications/video/smtube/default.nix
index 128227d8765..3076192274b 100644
--- a/pkgs/applications/video/smtube/default.nix
+++ b/pkgs/applications/video/smtube/default.nix
@@ -1,17 +1,19 @@
-{ stdenv, fetchurl, qt4 }:
+{ stdenv, fetchurl, qt5 }:
 
 stdenv.mkDerivation rec {
-  name = "smtube-15.1.0";
+  version = "15.9.0";
+  name = "smtube-${version}";
+
   src = fetchurl {
-    url = "mirror://sourceforge/smplayer/${name}.tar.bz2";
-    sha256 = "0l87afj1fwhq8lnhv0djqdc8fy0kvs4q4jrvyiz46ifq7q10qyaf";
+    url = "mirror://sourceforge/smtube/SMTube/${version}/${name}.tar.bz2";
+    sha256 = "1mr7iz5c2sy0yikdwybchcvgm6scs75p4cwkcpnwy2hw9p28mk1f";
   };
 
-  buildInputs = [ qt4 ];
+  makeFlags = [
+    "PREFIX=$(out)"
+  ];
 
-  preConfigure = ''
-    makeFlags="PREFIX=$out"
-  '';
+  buildInputs = [ qt5.script ];
 
   meta = with stdenv.lib; {
     description = "Play and download Youtube videos";
diff --git a/pkgs/applications/video/tvtime/default.nix b/pkgs/applications/video/tvtime/default.nix
index 2ec5e813c41..459ea533dba 100644
--- a/pkgs/applications/video/tvtime/default.nix
+++ b/pkgs/applications/video/tvtime/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, xlibs, libX11, libXtst, libSM, libXext, libXv, libXxf86vm, libXau, 
+{stdenv, fetchurl, xorg, libX11, libXtst, libSM, libXext, libXv, libXxf86vm, libXau, 
    libXdmcp, zlib, libpng, libxml2, freetype, libICE, intltool, libXinerama, gettext, 
    pkgconfig, kernel, file, libXi}:
 
@@ -48,8 +48,8 @@ stdenv.mkDerivation rec {
   '';
 
   configureFlags = '' 
-    --x-includes=${xlibs.libX11}/include 
-    --x-libraries=${xlibs.libX11}/lib
+    --x-includes=${xorg.libX11}/include 
+    --x-libraries=${xorg.libX11}/lib
   '';
 
   buildInputs = [ libX11 libXtst libSM libXext libXv libXxf86vm libXau libXdmcp zlib libpng libxml2 freetype libICE intltool libXinerama gettext pkgconfig file libXi ];
diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix
index 5de5843230a..67c60a05ee9 100644
--- a/pkgs/applications/video/vlc/default.nix
+++ b/pkgs/applications/video/vlc/default.nix
@@ -1,28 +1,30 @@
-{ stdenv, fetchurl, xz, bzip2, perl, xlibs, libdvdnav, libbluray
+{ stdenv, fetchurl, xz, bzip2, perl, xorg, libdvdnav, libbluray
 , zlib, a52dec, libmad, faad2, ffmpeg, alsaLib
 , pkgconfig, dbus, fribidi, freefont_ttf, libebml, libmatroska
 , libvorbis, libtheora, speex, lua5, libgcrypt, libupnp
-, libcaca, pulseaudio, flac, schroedinger, libxml2, librsvg
-, mpeg2dec, udev, gnutls, avahi, libcddb, jack2, SDL, SDL_image
+, libcaca, libpulseaudio, flac, schroedinger, libxml2, librsvg
+, mpeg2dec, udev, gnutls, avahi, libcddb, libjack2, SDL, SDL_image
 , libmtp, unzip, taglib, libkate, libtiger, libv4l, samba, liboggz
 , libass, libva, libdvbpsi, libdc1394, libraw1394, libopus
-, libvdpau
+, libvdpau, libsamplerate
 , onlyLibVLC ? false
-, qt4 ? null, qt5 ? null, withQt5 ? false
+, qt4 ? null
+, withQt5 ? false, qtbase ? null
+, jackSupport ? false
 }:
 
 with stdenv.lib;
 
-assert (withQt5 -> qt5 != null);
+assert (withQt5 -> qtbase != null);
 assert (!withQt5 -> qt4 != null);
 
 stdenv.mkDerivation rec {
   name = "vlc-${version}";
-  version = "2.2.0";
+  version = "2.2.1";
 
   src = fetchurl {
     url = "http://download.videolan.org/vlc/${version}/${name}.tar.xz";
-    sha256 = "05smn9hqdp7iscc1dj4cxp1mrlad7b50lhlnlqisfzf493i2f2jy";
+    sha256 = "1jqzrzrpw6932lbkf863xk8cfmn4z2ngbxz7w8ggmh4f6xz9sgal";
   };
 
   # outputs TODO: some modules are "corrupt", even without splitting vlc
@@ -30,12 +32,14 @@ stdenv.mkDerivation rec {
   buildInputs =
     [ xz bzip2 perl zlib a52dec libmad faad2 ffmpeg alsaLib libdvdnav libdvdnav.libdvdread
       libbluray dbus fribidi libvorbis libtheora speex lua5 libgcrypt
-      libupnp libcaca pulseaudio flac schroedinger libxml2 librsvg mpeg2dec
-      udev gnutls avahi libcddb jack2 SDL SDL_image libmtp unzip taglib
+      libupnp libcaca libpulseaudio flac schroedinger libxml2 librsvg mpeg2dec
+      udev gnutls avahi libcddb SDL SDL_image libmtp unzip taglib
       libkate libtiger libv4l samba liboggz libass libdvbpsi libva
-      xlibs.xlibs xlibs.libXv xlibs.libXvMC xlibs.libXpm xlibs.xcbutilkeysyms
-      libdc1394 libraw1394 libopus libebml libmatroska libvdpau
-    ] ++ (if withQt5 then with qt5; [ base ] else [qt4]);
+      xorg.xlibsWrapper xorg.libXv xorg.libXvMC xorg.libXpm xorg.xcbutilkeysyms
+      libdc1394 libraw1394 libopus libebml libmatroska libvdpau libsamplerate
+    ]
+    ++ [(if withQt5 then qtbase else qt4)]
+    ++ optional jackSupport libjack2;
 
   nativeBuildInputs = [ pkgconfig ];
 
@@ -45,6 +49,8 @@ stdenv.mkDerivation rec {
       "--enable-dc1394"
       "--enable-ncurses"
       "--enable-vdpau"
+      "--enable-dvdnav"
+      "--enable-samplerate"
     ]
     ++ optional onlyLibVLC  "--disable-vlc";
 
diff --git a/pkgs/applications/video/xine-ui/default.nix b/pkgs/applications/video/xine-ui/default.nix
index 6ae4100c827..fd7b31de16e 100644
--- a/pkgs/applications/video/xine-ui/default.nix
+++ b/pkgs/applications/video/xine-ui/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, pkgconfig, xlibs, libpng, xineLib, readline, ncurses, curl
+{stdenv, fetchurl, pkgconfig, xorg, libpng, xineLib, readline, ncurses, curl
 , lirc, shared_mime_info, libjpeg }:
 
 stdenv.mkDerivation rec {
@@ -13,8 +13,8 @@ stdenv.mkDerivation rec {
 
   buildInputs =
     [ xineLib libpng readline ncurses curl lirc libjpeg
-      xlibs.xlibs xlibs.libXext xlibs.libXv xlibs.libXxf86vm xlibs.libXtst xlibs.inputproto
-      xlibs.libXinerama xlibs.libXi xlibs.libXft
+      xorg.xlibsWrapper xorg.libXext xorg.libXv xorg.libXxf86vm xorg.libXtst xorg.inputproto
+      xorg.libXinerama xorg.libXi xorg.libXft
     ];
 
   patchPhase = ''sed -e '/curl\/types\.h/d' -i src/xitk/download.c'';
diff --git a/pkgs/applications/virtualization/OVMF/default.nix b/pkgs/applications/virtualization/OVMF/default.nix
index e29ab11947f..479d625c7de 100644
--- a/pkgs/applications/virtualization/OVMF/default.nix
+++ b/pkgs/applications/virtualization/OVMF/default.nix
@@ -49,7 +49,6 @@ stdenv.mkDerivation (edk2.setup "OvmfPkg/OvmfPkg${targetArch}.dsc" {
     description = "Sample UEFI firmware for QEMU and KVM";
     homepage = http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=OVMF;
     license = stdenv.lib.licenses.bsd2;
-    maintainers = [ stdenv.lib.maintainers.shlevy ];
     platforms = ["x86_64-linux" "i686-linux"];
   };
 })
diff --git a/pkgs/applications/virtualization/bochs/default.nix b/pkgs/applications/virtualization/bochs/default.nix
index 914114467e6..b876403d632 100644
--- a/pkgs/applications/virtualization/bochs/default.nix
+++ b/pkgs/applications/virtualization/bochs/default.nix
@@ -4,7 +4,7 @@
 , docbook_xml_dtd_45, docbook_xsl
 , sdlSupport ? true, SDL2 ? null
 , termSupport ? true , ncurses ? null
-, wxSupport ? false, wxGTK ? null # Warning! Broken
+, wxSupport ? true, wxGTK ? null
 # Optional, undocumented dependencies
 , wgetSupport ? false, wget ? null
 , curlSupport ? false, curl ? null
@@ -19,11 +19,11 @@ assert curlSupport -> (curl != null);
 stdenv.mkDerivation rec {
 
   name = "bochs-${version}";
-  version = "2.6.7";
+  version = "2.6.8";
 
   src = fetchurl {
     url = "http://downloads.sourceforge.net/project/bochs/bochs/${version}/${name}.tar.gz";
-    sha256 = "10l2pgzwnmng0rd44kqv7y46nwpcc18j53h3kf3dlqlnd7mlwdd4";
+    sha256 = "1kl5cmbz6qgg33j5vv9898nzdppp1rqgy24r5pv762aaj7q0ww3r";
   };
 
   # The huge list of configurable options
diff --git a/pkgs/applications/virtualization/cbfstool/default.nix b/pkgs/applications/virtualization/cbfstool/default.nix
new file mode 100644
index 00000000000..d99f569d7e6
--- /dev/null
+++ b/pkgs/applications/virtualization/cbfstool/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchgit, iasl, flex, bison }:
+
+stdenv.mkDerivation rec {
+  name = "cbfstool-${version}";
+  version = "git-2015-07-09";
+
+  src = fetchgit {
+    url = "http://review.coreboot.org/p/coreboot";
+    rev = "5d866213f42fd22aed80abb5a91d74f6d485ac3f";
+    sha256 = "148155829jbabsgg1inmcpqmwbg0fgp8a685bzybv9j4ibasi0z2";
+  };
+
+  buildInputs = [ iasl flex bison ];
+
+  buildPhase = ''
+    export LEX=${flex}/bin/flex
+    make -C util/cbfstool
+    '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp util/cbfstool/cbfstool $out/bin
+    cp util/cbfstool/fmaptool $out/bin
+    cp util/cbfstool/rmodtool $out/bin
+    '';
+
+  meta = with stdenv.lib; {
+    description = "CBFS tool";
+    homepage = http://www.coreboot.org;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.tstrobel ];
+    platforms = platforms.linux;
+  };
+}
+
diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
index 240973044d1..2363ccd910b 100644
--- a/pkgs/applications/virtualization/docker/default.nix
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -1,30 +1,39 @@
-{ stdenv, fetchurl, makeWrapper, go, lxc, sqlite, iproute, bridge-utils, devicemapper,
-btrfsProgs, iptables, bash, e2fsprogs, xz}:
+{ stdenv, fetchFromGitHub, makeWrapper, go, lxc, sqlite, iproute, bridge-utils, devicemapper,
+btrfsProgs, iptables, bash, e2fsprogs, xz, utillinux}:
+
+# https://github.com/docker/docker/blob/master/project/PACKAGERS.md
 
 stdenv.mkDerivation rec {
   name = "docker-${version}";
-  version = "1.6.0";
+  version = "1.8.1";
 
-  src = fetchurl {
-    url = "https://github.com/dotcloud/docker/archive/v${version}.tar.gz";
-    sha256 = "03nzhikxp60falshzyk6ip8g9fhrczhvnvgmzqr8bny6w8x1v84b";
+  src = fetchFromGitHub {
+    owner = "docker";
+    repo = "docker";
+    rev = "v${version}";
+    sha256 = "0nwd5wsw9f50jh4s5c5sfd6hnyh3g2kmxcrid36y1phabh30yrcz";
   };
 
   buildInputs = [ makeWrapper go sqlite lxc iproute bridge-utils devicemapper btrfsProgs iptables e2fsprogs ];
 
   dontStrip = true;
 
+  preConfigure = ''
+    mv vendor/src/github.com/opencontainers/runc/libcontainer/seccomp/{jump_amd64.go,jump_linux.go}
+    sed -i 's/,amd64//' vendor/src/github.com/opencontainers/runc/libcontainer/seccomp/jump_linux.go
+  '';
+
   buildPhase = ''
-    patchShebangs ./project
+    patchShebangs .
     export AUTO_GOPATH=1
-    export DOCKER_GITCOMMIT="03nzhikx"
+    export DOCKER_GITCOMMIT="786b29d4"
     ./hack/make.sh dynbinary
   '';
 
   installPhase = ''
     install -Dm755 ./bundles/${version}/dynbinary/docker-${version} $out/libexec/docker/docker
     install -Dm755 ./bundles/${version}/dynbinary/dockerinit-${version} $out/libexec/docker/dockerinit
-    makeWrapper $out/libexec/docker/docker $out/bin/docker --prefix PATH : "${iproute}/sbin:sbin:${lxc}/bin:${iptables}/sbin:${e2fsprogs}/sbin:${xz}/bin"
+    makeWrapper $out/libexec/docker/docker $out/bin/docker --prefix PATH : "${iproute}/sbin:sbin:${lxc}/bin:${iptables}/sbin:${e2fsprogs}/sbin:${xz}/bin:${utillinux}/bin"
 
     # systemd
     install -Dm644 ./contrib/init/systemd/docker.service $out/etc/systemd/system/docker.service
@@ -35,7 +44,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.docker.io/;
+    homepage = http://www.docker.com/;
     description = "An open source project to pack, ship and run any application as a lightweight container";
     license = licenses.asl20;
     maintainers = with maintainers; [ offline tailhook ];
diff --git a/pkgs/applications/virtualization/driver/win-pvdrivers/default.nix b/pkgs/applications/virtualization/driver/win-pvdrivers/default.nix
new file mode 100644
index 00000000000..faa1076e299
--- /dev/null
+++ b/pkgs/applications/virtualization/driver/win-pvdrivers/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchgit }:
+
+stdenv.mkDerivation  {
+  name = "win-pvdrivers-git-20150701";
+  version = "20150701";
+
+  src = fetchgit {
+    url = "https://github.com/ts468/win-pvdrivers";
+    rev = "3054d645fc3ee182bea3e97ff01869f01cc3637a";
+    sha256 = "6232ca2b7c9af874abbcb9262faf2c74c819727ed2eb64599c790879df535106";
+  };
+
+  buildPhase =
+    let unpack = x: "tar xf $src/${x}.tar; mkdir -p x86/${x} amd64/${x}; cp ${x}/x86/* x86/${x}/.; cp ${x}/x64/* amd64/${x}/.";
+    in stdenv.lib.concatStringsSep "\n" (map unpack ["xenbus" "xeniface" "xenvif" "xennet" "xenvbd"]);
+
+  installPhase = ''
+    mkdir -p $out
+    cp -r x86 $out/.
+    cp -r amd64 $out/.
+    '';
+
+  meta = with stdenv.lib; {
+    description = "Xen Subproject: Windows PV Driver";
+    homepage = "http://xenproject.org/downloads/windows-pv-drivers.html";
+    maintainers = [ maintainers.tstrobel ];
+    platforms = platforms.linux;
+    license = licenses.bsd3;
+  };
+}
diff --git a/pkgs/applications/virtualization/driver/win-qemu/default.nix b/pkgs/applications/virtualization/driver/win-qemu/default.nix
new file mode 100644
index 00000000000..97a1f0b3039
--- /dev/null
+++ b/pkgs/applications/virtualization/driver/win-qemu/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, p7zip }:
+
+stdenv.mkDerivation  {
+  name = "win-qemu-0.1.105-1";
+  version = "0.1.105-1";
+
+  phases = [ "buildPhase" "installPhase" ];
+
+  src = fetchurl {
+    url = "https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.105-1/virtio-win.iso";
+    sha256 = "065gz7s77y0q9kfqbr27451sr28rm9azpi88sqjkfph8c6r8q3wc";
+  };
+
+  buildPhase = ''
+    ${p7zip}/bin/7z x $src
+    '';
+
+  installPhase =
+    let
+      copy_pvpanic = arch: version: "mkdir -p $out/${arch}/qemupanic; cp pvpanic/${version}/${arch}/* $out/${arch}/qemupanic/. \n";
+      copy_pciserial = arch: "mkdir -p $out/${arch}/qemupciserial; cp qemupciserial/* $out/${arch}/qemupciserial/. \n";
+      copy_agent = arch: ''
+        mkdir -p $out/${arch}/qemuagent
+        cp guest-agent/${if arch=="x86" then "qemu-ga-x86.msi" else "qemu-ga-x64.msi"} $out/${arch}/qemuagent/qemu-guest-agent.msi
+        (cd $out/${arch}/qemuagent; ${p7zip}/bin/7z x qemu-guest-agent.msi; rm qemu-guest-agent.msi)
+        '';
+      copy = arch: version: (copy_pvpanic arch version) + (copy_pciserial arch) + (copy_agent arch);
+    in
+      (copy "amd64" "w8.1") + (copy "x86" "w8.1");
+
+  meta = with stdenv.lib; {
+    description = "Windows QEMU Drivers";
+    homepage = "https://fedoraproject.org/wiki/Windows_Virtio_Drivers";
+    maintainers = [ maintainers.tstrobel ];
+    platforms = platforms.linux;
+    license = licenses.gpl2;
+  };
+}
diff --git a/pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix b/pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix
new file mode 100644
index 00000000000..c4684a20914
--- /dev/null
+++ b/pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchurl, p7zip }:
+
+let
+  src_x86 = fetchurl {
+    url = "http://apt.univention.de/download/addons/gplpv-drivers/gplpv_Vista2008x32_signed_0.11.0.373.msi";
+    sha256 = "04r11xw8ikjmcdhrsk878c86g0d0pvras5arsas3zs6dhgjykqap";
+  };
+
+  src_amd64 = fetchurl {
+    url = "http://apt.univention.de/download/addons/gplpv-drivers/gplpv_Vista2008x64_signed_0.11.0.373.msi";
+    sha256 = "00k628mg9b039p8lmg2l9n81dr15svy70p3m6xmq6f0frmci38ph";
+  };
+in
+
+stdenv.mkDerivation  {
+  name = "gplpv-0.11.0.373";
+  version = "0.11.0.373";
+
+  phases = [ "buildPhase" "installPhase" ];
+
+  buildPhase = ''
+    mkdir -p x86
+    (cd x86; ${p7zip}/bin/7z e ${src_x86})
+    mkdir -p amd64
+    (cd amd64; ${p7zip}/bin/7z e ${src_amd64})
+    '';
+
+  installPhase = ''
+    mkdir -p $out/x86 $out/amd64
+    cp x86/* $out/x86/.
+    cp amd64/* $out/amd64/.
+    '';
+
+  meta = with stdenv.lib; {
+    description = ''
+      A collection of open source Window PV drivers that allow
+      Windows to be para-virtualized.
+      The drivers are signed by Univention with a Software Publishers
+      Certificate obtained from the VeriSign CA.
+      '';
+    homepage = "http://wiki.univention.de/index.php?title=Installing-signed-GPLPV-drivers";
+    maintainers = [ maintainers.tstrobel ];
+    platforms = platforms.linux;
+    license = licenses.gpl2;
+  };
+}
diff --git a/pkgs/applications/virtualization/driver/win-spice/default.nix b/pkgs/applications/virtualization/driver/win-spice/default.nix
new file mode 100644
index 00000000000..689d36e7110
--- /dev/null
+++ b/pkgs/applications/virtualization/driver/win-spice/default.nix
@@ -0,0 +1,69 @@
+{ stdenv, fetchurl, p7zip, win-virtio }:
+
+let
+  src_usbdk_x86 = fetchurl {
+    url = "http://www.spice-space.org/download/windows/usbdk/UsbDk_1.0.4_x86.msi";
+    sha256 = "17hv8034wk1xqnanm5jxs4741nl7asps1fdz6lhnrpp6gvj6yg9y";
+  };
+
+  src_usbdk_amd64 = fetchurl {
+    url = "http://www.spice-space.org/download/windows/usbdk/UsbDk_1.0.4_x64.msi";
+    sha256 = "0alcqsivp33pm8sy0lmkvq7m5yh6mmcmxdl39zjxjra67kw8r2sd";
+  };
+
+  src_qxlwddm = fetchurl {
+    url = "http://people.redhat.com/~vrozenfe/qxlwddm/qxlwddm-0.11.zip";
+    sha256 = "082zdpbh9i3bq2ds8g33rcbcw390jsm7cqf46rrlx02x8r03dm98";
+  };
+
+  src_vdagent_x86 = fetchurl {
+    url = "http://www.spice-space.org/download/windows/vdagent/vdagent-win-0.7.3/vdagent_0_7_3_x86.zip";
+    sha256 = "0d928g49rf4dl79jmvnqh6g864hp1flw1f0384sfp82himm3bxjs";
+  };
+
+  src_vdagent_amd64 = fetchurl {
+    url = "http://www.spice-space.org/download/windows/vdagent/vdagent-win-0.7.3/vdagent_0_7_3_x64.zip";
+    sha256 = "0djmvm66jcmcyhhbjppccbai45nqpva7vyvry6w8nyc0fwi1vm9l";
+  };
+in
+
+stdenv.mkDerivation  {
+  # use version number of qxlwddm as qxlwddm is the most important component
+  name = "win-spice-0.11";
+  version = "0.11";
+
+  phases = [ "buildPhase" "installPhase" ];
+
+  buildPhase = ''
+    mkdir -p usbdk/x86 usbdk/amd64
+    (cd usbdk/x86; ${p7zip}/bin/7z x ${src_usbdk_x86})
+    (cd usbdk/amd64; ${p7zip}/bin/7z x ${src_usbdk_amd64})
+
+    mkdir -p vdagent/x86 vdagent/amd64
+    (cd vdagent/x86; ${p7zip}/bin/7z x ${src_vdagent_x86}; mv vdagent_0_7_3_x86/* .; rm -r vdagent_0_7_3_x86)
+    (cd vdagent/amd64; ${p7zip}/bin/7z x ${src_vdagent_amd64}; mv vdagent_0_7_3_x64/* .; rm -r vdagent_0_7_3_x64)
+
+    mkdir -p qxlwddm
+    (cd qxlwddm; ${p7zip}/bin/7z x ${src_qxlwddm}; mv Win8 w8.1; cd w8.1; mv x64 amd64)
+    '';
+
+  installPhase =
+    let
+      copy_qxl = arch: version: "mkdir -p $out/${arch}/qxl; cp qxlwddm/${version}/${arch}/* $out/${arch}/qxl/. \n";
+      copy_usbdk = arch: "mkdir -p $out/${arch}/usbdk; cp usbdk/${arch}/* $out/${arch}/usbdk/. \n";
+      copy_vdagent = arch: "mkdir -p $out/${arch}/vdagent; cp vdagent/${arch}/* $out/${arch}/vdagent/. \n";
+      # SPICE needs vioserial
+      # TODO: Link windows version in win-spice (here) to version used in win-virtio.
+      #       That way it would never matter whether vioserial is installed from win-virtio or win-spice.
+      copy_vioserial = arch: "mkdir -p $out/${arch}/vioserial; cp ${win-virtio}/${arch}/vioserial/* $out/${arch}/vioserial/. \n";
+      copy = arch: version: (copy_qxl arch version) + (copy_usbdk arch) + (copy_vdagent arch) + (copy_vioserial arch);
+    in
+      (copy "amd64" "w8.1") + (copy "x86" "w8.1");
+
+  meta = with stdenv.lib; {
+    description = ''Windows SPICE Drivers'';
+    homepage = "http://www.spice-space.org";
+    maintainers = [ maintainers.tstrobel ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/virtualization/driver/win-virtio/default.nix b/pkgs/applications/virtualization/driver/win-virtio/default.nix
new file mode 100644
index 00000000000..5cf2e0a3062
--- /dev/null
+++ b/pkgs/applications/virtualization/driver/win-virtio/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, p7zip }:
+
+stdenv.mkDerivation  {
+  name = "win-virtio-0.1.105-1";
+  version = "0.1.105-1";
+
+  phases = [ "buildPhase" "installPhase" ];
+
+  src = fetchurl {
+    url = "https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.105-1/virtio-win.iso";
+    sha256 = "065gz7s77y0q9kfqbr27451sr28rm9azpi88sqjkfph8c6r8q3wc";
+  };
+
+  buildPhase = ''
+    ${p7zip}/bin/7z x $src
+    '';
+
+  installPhase =
+    let
+      copy = arch: version: {input, output}: "mkdir -p $out/${arch}/${output}; cp ${input}/${version}/${arch}/* $out/${arch}/${output}/.";
+      virtio = [{input="Balloon"; output="vioballoon";}
+                {input="NetKVM"; output="vionet";}
+                {input="vioscsi"; output="vioscsi";}
+                {input="vioserial"; output="vioserial";}
+                {input="viostor"; output="viostor";}
+                {input="viorng"; output="viorng";}
+               ];
+    in
+      stdenv.lib.concatStringsSep "\n" ((map (copy "amd64" "w8.1") virtio) ++ (map (copy "x86" "w8.1") virtio));
+
+  meta = with stdenv.lib; {
+    description = "Windows VirtIO Drivers";
+    homepage = "https://fedoraproject.org/wiki/Windows_Virtio_Drivers";
+    maintainers = [ maintainers.tstrobel ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/virtualization/open-vm-tools/default.nix b/pkgs/applications/virtualization/open-vm-tools/default.nix
new file mode 100644
index 00000000000..e8c6b39f493
--- /dev/null
+++ b/pkgs/applications/virtualization/open-vm-tools/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, lib, fetchurl, makeWrapper, autoconf, automake,
+  libmspack, openssl, pam, xercesc, icu, libdnet, procps, 
+  xlibsWrapper, libXinerama, libXi, libXrender, libXrandr, libXtst,
+  pkgconfig, glib, gtk, gtkmm }:
+
+let
+  majorVersion = "9.10";
+  minorVersion = "0";
+  patchSet = "2476743";
+  version = "${majorVersion}.${minorVersion}-${patchSet}";
+
+in stdenv.mkDerivation {
+  name = "open-vm-tools-${version}";
+  src = fetchurl {
+    url = "mirror://sourceforge/project/open-vm-tools/open-vm-tools/stable-${majorVersion}.x/open-vm-tools-${version}.tar.gz";
+    sha256 = "15lwayrz9bpx4z12fj616hsn25m997y72licwwz7kms4sx9ssip1";
+  };
+
+  buildInputs = 
+    [ autoconf automake makeWrapper libmspack openssl pam xercesc icu libdnet procps
+      pkgconfig glib gtk gtkmm xlibsWrapper libXinerama libXi libXrender libXrandr libXtst ];
+
+  patchPhase = ''
+     sed -i s,-Werror,,g configure.ac
+     sed -i 's,^confdir = ,confdir = ''${prefix},' scripts/Makefile.am
+     sed -i 's,etc/vmware-tools,''${prefix}/etc/vmware-tools,' services/vmtoolsd/Makefile.am
+  '';
+
+  patches = [ ./recognize_nixos.patch ];
+
+  preConfigure = "autoreconf";
+  configureFlags = "--without-kernel-modules --without-xmlsecurity";
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/vmware/open-vm-tools";
+    description = "Set of tools for VMWare guests to improve host-guest interaction";
+    longDescription = ''
+      A set of services and modules that enable several features in VMware products for 
+      better management of, and seamless user interactions with, guests. 
+    '';
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ joamaki ];
+  };
+}
diff --git a/pkgs/applications/virtualization/open-vm-tools/recognize_nixos.patch b/pkgs/applications/virtualization/open-vm-tools/recognize_nixos.patch
new file mode 100644
index 00000000000..b69731179c1
--- /dev/null
+++ b/pkgs/applications/virtualization/open-vm-tools/recognize_nixos.patch
@@ -0,0 +1,46 @@
+From d1b753212ee5151db941de0e2b826dcf9722f2f3 Mon Sep 17 00:00:00 2001
+From: Arseniy Seroka <ars.seroka@gmail.com>
+Date: Fri, 21 Aug 2015 20:20:16 +0300
+Subject: [PATCH] [PATCH]: recognize NixOS Linux
+
+---
+ open-vm-tools/lib/include/guest_os.h   | 1 +
+ open-vm-tools/lib/misc/hostinfoPosix.c | 3 +++
+ 2 files changed, 4 insertions(+)
+
+diff --git a/open-vm-tools/lib/include/guest_os.h b/open-vm-tools/lib/include/guest_os.h
+index 4fc9ea7..f5104fd 100644
+--- a/open-vm-tools/lib/include/guest_os.h
++++ b/open-vm-tools/lib/include/guest_os.h
+@@ -215,6 +215,7 @@ Bool Gos_InSetArray(uint32 gos, const uint32 *set);
+ #define STR_OS_MANDRAKE_FULL      "Mandrake Linux"
+ #define STR_OS_MANDRIVA           "mandriva"
+ #define STR_OS_MKLINUX            "MkLinux"
++#define STR_OS_NIXOS              "NixOS"
+ #define STR_OS_NOVELL             "nld9"
+ #define STR_OS_NOVELL_FULL        "Novell Linux Desktop 9"
+ #define STR_OS_ORACLE             "oraclelinux"
+diff --git a/open-vm-tools/lib/misc/hostinfoPosix.c b/open-vm-tools/lib/misc/hostinfoPosix.c
+index 6c13fe3..5b82983 100644
+--- a/open-vm-tools/lib/misc/hostinfoPosix.c
++++ b/open-vm-tools/lib/misc/hostinfoPosix.c
+@@ -184,6 +184,7 @@ static const DistroInfo distroArray[] = {
+    {"Mandrake",           "/etc/mandrake-release"},
+    {"Mandriva",           "/etc/mandriva-release"},
+    {"Mandrake",           "/etc/mandrakelinux-release"},
++   {"NixOS",              "/etc/os-release"},
+    {"TurboLinux",         "/etc/turbolinux-release"},
+    {"Fedora Core",        "/etc/fedora-release"},
+    {"Gentoo",             "/etc/gentoo-release"},
+@@ -613,6 +614,8 @@ HostinfoGetOSShortName(char *distro,         // IN: full distro name
+       Str_Strcpy(distroShort, STR_OS_MANDRIVA, distroShortSize);
+    } else if (strstr(distroLower, "mklinux")) {
+       Str_Strcpy(distroShort, STR_OS_MKLINUX, distroShortSize);
++   } else if (strstr(distroLower, "nixos")) {
++      Str_Strcpy(distroShort, STR_OS_NIXOS, distroShortSize);
+    } else if (strstr(distroLower, "pld")) {
+       Str_Strcpy(distroShort, STR_OS_PLD, distroShortSize);
+    } else if (strstr(distroLower, "slackware")) {
+-- 
+2.5.0
+
diff --git a/pkgs/applications/virtualization/qboot/default.nix b/pkgs/applications/virtualization/qboot/default.nix
new file mode 100644
index 00000000000..e4439ec124f
--- /dev/null
+++ b/pkgs/applications/virtualization/qboot/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchgit }:
+
+stdenv.mkDerivation {
+  name = "qboot-pre-release";
+
+  src = fetchgit {
+    url = "https://github.com/yangchengwork/qboot";
+    rev = "b2bdaf4c878ef34f309c8c79613fabd1b9c4bf75";
+    sha256 = "00f24125733d24713880e430f409d6ded416286d209c9fabb45541311b01cf8d";
+  };
+
+  installPhase = ''
+    mkdir -p $out
+    cp bios.bin* $out/.
+    '';
+
+  meta = {
+    description = "A simple x86 firmware for booting Linux";
+    homepage = https://github.com/bonzini/qboot;
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = with stdenv.lib.maintainers; [ tstrobel ];
+    platforms = ["x86_64-linux" "i686-linux"];
+  };
+}
diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix
index 69888e22a01..1bedb404a2a 100644
--- a/pkgs/applications/virtualization/qemu/default.nix
+++ b/pkgs/applications/virtualization/qemu/default.nix
@@ -1,8 +1,8 @@
 { stdenv, fetchurl, python, zlib, pkgconfig, glib, ncurses, perl, pixman
 , attr, libcap, vde2, alsaLib, texinfo, libuuid, flex, bison, lzo, snappy
-, libseccomp, libaio, libcap_ng, gnutls
+, libseccomp, libaio, libcap_ng, gnutls, nettle
 , makeWrapper
-, pulseSupport ? true, pulseaudio
+, pulseSupport ? true, libpulseaudio
 , sdlSupport ? true, SDL
 , vncSupport ? true, libjpeg, libpng
 , spiceSupport ? true, spice, spice_protocol, usbredir
@@ -11,26 +11,26 @@
 
 with stdenv.lib;
 let
-  n = "qemu-2.2.1";
+  version = "2.4.0";
   audio = optionalString (hasSuffix "linux" stdenv.system) "alsa,"
     + optionalString pulseSupport "pa,"
     + optionalString sdlSupport "sdl,";
 in
 
 stdenv.mkDerivation rec {
-  name = n + (if x86Only then "-x86-only" else "");
+  name = "qemu-" + stdenv.lib.optionalString x86Only "x86-only-" + version;
 
   src = fetchurl {
-    url = "http://wiki.qemu.org/download/${n}.tar.bz2";
-    sha256 = "181m2ddsg3adw8y5dmimsi8x678imn9f6i5p20zbhi7pdr61a5s6";
+    url = "http://wiki.qemu.org/download/qemu-${version}.tar.bz2";
+    sha256 = "0836gqv5zcl0xswwjcns3mlkn18lyz2fiq8rl1ihcm6cpf8vkc3j";
   };
 
   buildInputs =
     [ python zlib pkgconfig glib ncurses perl pixman attr libcap
       vde2 texinfo libuuid flex bison makeWrapper lzo snappy libseccomp
-      libcap_ng gnutls
+      libcap_ng gnutls nettle
     ]
-    ++ optionals pulseSupport [ pulseaudio ]
+    ++ optionals pulseSupport [ libpulseaudio ]
     ++ optionals sdlSupport [ SDL ]
     ++ optionals vncSupport [ libjpeg libpng ]
     ++ optionals spiceSupport [ spice_protocol spice usbredir ]
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
     homepage = http://www.qemu.org/;
     description = "A generic and open source machine emulator and virtualizer";
     license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ viric shlevy eelco ];
+    maintainers = with maintainers; [ viric eelco ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/virtualization/qemu/no-etc-install.patch b/pkgs/applications/virtualization/qemu/no-etc-install.patch
index 81d29feea3d..833f030bed3 100644
--- a/pkgs/applications/virtualization/qemu/no-etc-install.patch
+++ b/pkgs/applications/virtualization/qemu/no-etc-install.patch
@@ -1,14 +1,11 @@
-diff --git a/Makefile b/Makefile
-index d6b9dc1..ce7c493 100644
 --- a/Makefile
 +++ b/Makefile
-@@ -384,8 +384,7 @@ install-confdir:
- install-sysconfig: install-datadir install-confdir
- 	$(INSTALL_DATA) $(SRC_PATH)/sysconfigs/target/target-x86_64.conf "$(DESTDIR)$(qemu_confdir)"
+@@ -418,7 +418,7 @@
  
--install: all $(if $(BUILD_DOCS),install-doc) install-sysconfig \
+ 
+ install: all $(if $(BUILD_DOCS),install-doc) \
 -install-datadir install-localstatedir
-+install: all $(if $(BUILD_DOCS),install-doc) install-datadir
++install-datadir
  ifneq ($(TOOLS),)
  	$(call install-prog,$(TOOLS),$(DESTDIR)$(bindir))
  endif
diff --git a/pkgs/applications/virtualization/remotebox/default.nix b/pkgs/applications/virtualization/remotebox/default.nix
index a257ef27e9f..e07f8d5b92c 100644
--- a/pkgs/applications/virtualization/remotebox/default.nix
+++ b/pkgs/applications/virtualization/remotebox/default.nix
@@ -1,40 +1,44 @@
-{ stdenv, fetchurl, perl, perlPackages }:
+{ stdenv, fetchurl, makeWrapper, perl, perlPackages }:
 
-stdenv.mkDerivation rec {
-  version = "1.9";
+let version = "2.0"; in
+stdenv.mkDerivation {
   name = "remotebox-${version}";
 
   src = fetchurl {
-    url = "${meta.homepage}/downloads/RemoteBox-${version}.tar.bz2";
-    sha256 = "0vsfz2qmha9nz60fyksgqqyrw4lz9z2d5isnwqc6afn8z3i1qmkp";
+    url = "http://remotebox.knobgoblin.org.uk/downloads/RemoteBox-${version}.tar.bz2";
+    sha256 = "0c73i53wdjd2m2sdgq3r3xp30irxh5z5rak2rk79yb686s6bv759";
   };
 
-  buildInputs = [ perl perlPackages.Gtk2 perlPackages.SOAPLite ];
+  buildInputs = with perlPackages; [ perl Glib Gtk2 Pango SOAPLite ];
+  nativeBuildInputs = [ makeWrapper ];
 
   installPhase = ''
-    mkdir -p $out/bin
-    cp -a docs/ share/ $out
+    mkdir -pv $out/bin
 
     substituteInPlace remotebox --replace "\$Bin/" "\$Bin/../"
-    install -t $out/bin remotebox
+    install -v -t $out/bin remotebox
+    wrapProgram $out/bin/remotebox --prefix PERL5LIB : $PERL5LIB
 
-    mkdir -p $out/share/applications
-    cp -p packagers-readme/*.desktop $out/share/applications
+    cp -av docs/ share/ $out
+
+    mkdir -pv $out/share/applications
+    cp -pv packagers-readme/*.desktop $out/share/applications
   '';
 
   meta = with stdenv.lib; {
+    inherit version;
     description = "VirtualBox client with remote management";
     homepage = http://remotebox.knobgoblin.org.uk/;
-    license = with licenses; gpl2Plus;
+    license = licenses.gpl2Plus;
     longDescription = ''
       VirtualBox is traditionally considered to be a virtualization solution
-      aimed at the desktop.  While it is certainly possible to install
+      aimed at the desktop. While it is certainly possible to install
       VirtualBox on a server, it offers few remote management features beyond
       using the vboxmanage command line.
       RemoteBox aims to fill this gap by providing a graphical VirtualBox
       client which is able to manage a VirtualBox server installation.
     '';
     maintainers = with maintainers; [ nckx ];
-    platforms = with platforms; all;
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/virtualization/rkt/default.nix b/pkgs/applications/virtualization/rkt/default.nix
new file mode 100644
index 00000000000..1d03eece46c
--- /dev/null
+++ b/pkgs/applications/virtualization/rkt/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, lib, autoconf, automake, go, file, git, wget, gnupg1, squashfsTools, cpio
+, fetchurl, fetchFromGitHub }:
+
+let
+  coreosImageRelease = "738.1.0";
+
+in stdenv.mkDerivation rec {
+  version = "0.8.0";
+  name = "rkt-${version}";
+
+  src = fetchFromGitHub {
+      rev = "v${version}";
+      owner = "coreos";
+      repo = "rkt";
+      sha256 = "1abv9psd5w0m8p2kvrwyjnrclzajmrpbwfwmkgpnkydhmsimhnn0";
+  };
+
+  stage1image = fetchurl {
+    url = "http://alpha.release.core-os.net/amd64-usr/${coreosImageRelease}/coreos_production_pxe_image.cpio.gz";
+    sha256 = "1rnb9rwms5g7f142d9yh169a5k2hxiximpgk4y4kqmc1294lqnl0";
+  };
+
+  buildInputs = [ autoconf automake go file git wget gnupg1 squashfsTools cpio ];
+
+  preConfigure = ''
+    ./autogen.sh
+  '';
+
+  preBuild = ''
+    # hack to avoid downloading image during build, this has been
+    # improved in rkt master
+    mkdir -p build-rkt-0.8.0/tmp/usr_from_coreos
+    cp -v ${stage1image} build-rkt-0.8.0/tmp/usr_from_coreos/pxe.img
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp -Rv build-rkt-${version}/bin/* $out/bin
+  '';
+
+  meta = with lib; {
+    description = "A fast, composable, and secure App Container runtime for Linux";
+    homepage = http://rkt.io;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ ragge ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/virtualization/virt-manager/default.nix b/pkgs/applications/virtualization/virt-manager/default.nix
index 67e3f9ade98..a98ebe424c6 100644
--- a/pkgs/applications/virtualization/virt-manager/default.nix
+++ b/pkgs/applications/virtualization/virt-manager/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, pythonPackages, intltool, libxml2Python, curl, python
-, makeWrapper, virtinst, pyGtkGlade, pythonDBus, gnome_python, gtkvnc, vte
+, wrapGAppsHook, virtinst, pyGtkGlade, pythonDBus, gnome_python, gtkvnc, vte
 , gtk3, gobjectIntrospection, libvirt-glib, gsettings_desktop_schemas, glib
-, avahi, dconf, spiceSupport ? true, spice_gtk, libosinfo
+, avahi, dconf, spiceSupport ? true, spice_gtk, libosinfo, gnome3
 }:
 
 with stdenv.lib;
@@ -9,12 +9,12 @@ with pythonPackages;
 
 buildPythonPackage rec {
   name = "virt-manager-${version}";
-  version = "1.1.0";
+  version = "1.2.1";
   namePrefix = "";
 
   src = fetchurl {
     url = "http://virt-manager.org/download/sources/virt-manager/${name}.tar.gz";
-    sha256 = "0hbr1wf4byfvbqlbq3w6s71ckhn626i4rb497y4z2cm12p5hc2db";
+    sha256 = "1gp6ijrwl6kjs54l395002pc9sblp08p4nqx9zcb9qg5f87aifvl";
   };
 
   propagatedBuildInputs =
@@ -35,6 +35,8 @@ buildPythonPackage rec {
       glib
       gobjectIntrospection
       gsettings_desktop_schemas
+      gnome3.defaultIconTheme
+      wrapGAppsHook
     ];
 
   configurePhase = ''
@@ -46,15 +48,6 @@ buildPythonPackage rec {
   buildPhase = "true";
 
   postInstall = ''
-    # GI_TYPELIB_PATH is needed at runtime for GObject stuff to work
-    for file in "$out"/bin/*; do
-        wrapProgram "$file" \
-            --prefix GI_TYPELIB_PATH : $GI_TYPELIB_PATH \
-            --prefix GIO_EXTRA_MODULES : "${dconf}/lib/gio/modules" \
-            --prefix GSETTINGS_SCHEMA_DIR : $out/share/glib-2.0/schemas \
-            --prefix XDG_DATA_DIRS : "$out/share:${gtk3}/share:$GSETTINGS_SCHEMAS_PATH:\$XDG_DATA_DIRS"
-    done
-
     ${glib}/bin/glib-compile-schemas "$out"/share/glib-2.0/schemas
   '';
 
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index c5e6f6e32d0..3576923f002 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, lib, iasl, dev86, pam, libxslt, libxml2, libX11, xproto, libXext
 , libXcursor, libXmu, qt4, libIDL, SDL, libcap, zlib, libpng, glib, kernel, lvm2
-, which, alsaLib, curl, libvpx, gawk, nettools
+, which, alsaLib, curl, libvpx, gawk, nettools, dbus
 , xorriso, makeself, perl, pkgconfig, nukeReferences
 , javaBindings ? false, jdk ? null
 , pythonBindings ? false, python ? null
 , enableExtensionPack ? false, requireFile ? null, patchelf ? null, fakeroot ? null
-, pulseSupport ? false, pulseaudio ? null
+, pulseSupport ? false, libpulseaudio ? null
 , enableHardening ? false
 }:
 
@@ -14,7 +14,11 @@ with stdenv.lib;
 let
   buildType = "release";
 
-  version = "4.3.26"; # changes ./guest-additions as well
+  # When changing this, update ./guest-additions and the extpack
+  # revision/hash as well. See
+  # http://download.virtualbox.org/virtualbox/${version}/SHA256SUMS
+  # for hashes.
+  version = "5.0.4";
 
   forEachModule = action: ''
     for mod in \
@@ -35,13 +39,12 @@ let
   '';
 
   # See https://github.com/NixOS/nixpkgs/issues/672 for details
-  extpackRevision = "98988";
+  extpackRevision = "102546";
   extensionPack = requireFile rec {
     name = "Oracle_VM_VirtualBox_Extension_Pack-${version}-${extpackRevision}.vbox-extpack";
     # IMPORTANT: Hash must be base16 encoded because it's used as an input to
     # VBoxExtPackHelperApp!
-    # Tip: see http://dlc.sun.com.edgesuite.net/virtualbox/4.3.10/SHA256SUMS
-    sha256 = "4e39a6d0da23799a31c3f6a4022b144ef3ddfe30c523e51b21bf7d9ebade62ce";
+    sha256 = "e4618e7847eff7c31426f4639bcd83c37bd817147081d3218f21c8e7b6bc7cfa";
     message = ''
       In order to use the extension pack, you need to comply with the VirtualBox Personal Use
       and Evaluation License (PUEL) by downloading the related binaries from:
@@ -60,7 +63,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2";
-    sha256 = "e2949c250a1de30997e658de9e3d8545e71318a9844d80536137d76db4f08961";
+    sha256 = "b19e23fc8e71f38aef7c059f44e59fcbff3bb2ce85baa8de81f1629b85f68fcf";
   };
 
   buildInputs =
@@ -69,7 +72,7 @@ in stdenv.mkDerivation {
       pkgconfig which libXmu nukeReferences ]
     ++ optional javaBindings jdk
     ++ optional pythonBindings python
-    ++ optional pulseSupport pulseaudio;
+    ++ optional pulseSupport libpulseaudio;
 
   prePatch = ''
     set -x
@@ -81,7 +84,15 @@ in stdenv.mkDerivation {
     ls kBuild/bin/linux.x86/k* tools/linux.x86/bin/* | xargs -n 1 patchelf --set-interpreter ${stdenv.glibc.out}/lib/ld-linux.so.2
     ls kBuild/bin/linux.amd64/k* tools/linux.amd64/bin/* | xargs -n 1 patchelf --set-interpreter ${stdenv.glibc.out}/lib/ld-linux-x86-64.so.2
     find . -type f -iname '*makefile*' -exec sed -i -e 's/depmod -a/:/g' {} +
-    sed -e 's@"libasound.so.2"@"${alsaLib}/lib/libasound.so.2"@g' -i src/VBox/Main/xml/Settings.cpp src/VBox/Devices/Audio/alsa_stubs.c
+    sed -i -e '
+      s@"libdbus-1\.so\.3"@"${dbus}/lib/libdbus-1.so.3"@g
+      s@"libasound\.so\.2"@"${alsaLib}/lib/libasound.so.2"@g
+      ${optionalString pulseSupport ''
+      s@"libpulse\.so\.0"@"${libpulseaudio}/lib/libpulse.so.0"@g
+      ''}
+    ' src/VBox/Main/xml/Settings.cpp \
+      src/VBox/Devices/Audio/{alsa,pulse}_stubs.c \
+      include/VBox/dbus-calls.h
     export USER=nix
     set +x
   '';
@@ -93,7 +104,10 @@ in stdenv.mkDerivation {
       src/apps/adpctl/VBoxNetAdpCtl.cpp
   '';
 
+  # first line: ugly hack, and it isn't yet clear why it's a problem
   configurePhase = ''
+    NIX_CFLAGS_COMPILE=$(echo "$NIX_CFLAGS_COMPILE" | sed 's,\-isystem ${stdenv.cc.libc}/include,,g')
+
     cat >> LocalConfig.kmk <<LOCAL_CONFIG
     VBOX_WITH_TESTCASES            :=
     VBOX_WITH_TESTSUITE            :=
diff --git a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
index 4db5622b925..5ca5cc1cb58 100644
--- a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
-    sha256 = "c5e46533a6ff8df177ed5c9098624f6cec46ca392bab16de2017195580088670";
+    sha256 = "de4abc28832d4e96b826efef3e7e69e69d6b941babfdc6317185f1fd6e22ffcf";
   };
 
   KERN_DIR = "${kernel.dev}/lib/modules/*/build";
@@ -87,9 +87,8 @@ stdenv.mkDerivation {
     sed -i -e "s|/usr/bin|$out/bin|" bin/VBoxClient-all
 
     # Install binaries
-    mkdir -p $out/sbin
-    install -m 4755 lib/VBoxGuestAdditions/mount.vboxsf $out/sbin/mount.vboxsf
-    install -m 755 sbin/VBoxService $out/sbin
+    install -D -m 4755 lib/VBoxGuestAdditions/mount.vboxsf $out/bin/mount.vboxsf
+    install -D -m 755 sbin/VBoxService $out/bin/VBoxService
 
     mkdir -p $out/bin
     install -m 755 bin/VBoxClient $out/bin
diff --git a/pkgs/applications/virtualization/virtualbox/hardened.patch b/pkgs/applications/virtualization/virtualbox/hardened.patch
index 3df41228ae5..37d2ad3a515 100644
--- a/pkgs/applications/virtualization/virtualbox/hardened.patch
+++ b/pkgs/applications/virtualization/virtualbox/hardened.patch
@@ -100,19 +100,6 @@ index 95dc9a7..39170bc 100644
      size_t cchBufLeft = strlen(szPath);
      szPath[cchBufLeft++] = RTPATH_DELIMITER;
      szPath[cchBufLeft] = 0;
-diff --git a/src/VBox/Main/src-server/NATNetworkServiceRunner.cpp b/src/VBox/Main/src-server/NATNetworkServiceRunner.cpp
-index 090018e..7dcfc7a 100644
---- a/src/VBox/Main/src-server/NATNetworkServiceRunner.cpp
-+++ b/src/VBox/Main/src-server/NATNetworkServiceRunner.cpp
-@@ -75,7 +75,7 @@ int NATNetworkServiceRunner::start()
- 
-     /* get the path to the executable */
-     char exePathBuf[RTPATH_MAX];
--    const char *exePath = RTProcGetExecutablePath(exePathBuf, RTPATH_MAX);
-+    const char *exePath = RTProcGetSuidPath(exePathBuf, RTPATH_MAX);
-     char *substrSl = strrchr(exePathBuf, '/');
-     char *substrBs = strrchr(exePathBuf, '\\');
-     char *suffix = substrSl ? substrSl : substrBs;
 diff --git a/src/VBox/Main/src-server/NetworkServiceRunner.cpp b/src/VBox/Main/src-server/NetworkServiceRunner.cpp
 index e9e1ba62..4d1c1e1 100644
 --- a/src/VBox/Main/src-server/NetworkServiceRunner.cpp
diff --git a/pkgs/applications/virtualization/xen/0000-qemu-seabios-enable-ATA_DMA.patch b/pkgs/applications/virtualization/xen/0000-qemu-seabios-enable-ATA_DMA.patch
new file mode 100644
index 00000000000..339972a2cde
--- /dev/null
+++ b/pkgs/applications/virtualization/xen/0000-qemu-seabios-enable-ATA_DMA.patch
@@ -0,0 +1,19 @@
+diff -uNr a/src/Kconfig b/src/Kconfig
+--- a/src/Kconfig	2015-08-31 10:15:13.231134858 +0200
++++ b/src/Kconfig	2015-08-31 10:14:24.039180178 +0200
+@@ -144,13 +144,13 @@
+     config ATA_DMA
+         depends on ATA
+         bool "ATA DMA"
+-        default n
++        default y
+         help
+             Detect and try to use ATA bus mastering DMA controllers.
+     config ATA_PIO32
+         depends on ATA
+         bool "ATA 32bit PIO"
+-        default n
++        default y
+         help
+             Use 32bit PIO accesses on ATA (minor optimization on PCI transfers).
+     config AHCI
diff --git a/pkgs/applications/virtualization/xen/0001-libxl-Spice-image-compression-setting-support-for-up.patch b/pkgs/applications/virtualization/xen/0001-libxl-Spice-image-compression-setting-support-for-up.patch
new file mode 100644
index 00000000000..67b7ac777b5
--- /dev/null
+++ b/pkgs/applications/virtualization/xen/0001-libxl-Spice-image-compression-setting-support-for-up.patch
@@ -0,0 +1,104 @@
+From bd71555985efc423b1a119b6a3177de855763453 Mon Sep 17 00:00:00 2001
+From: Fabio Fantoni <fabio.fantoni@m2r.biz>
+Date: Tue, 20 Jan 2015 11:26:30 +0100
+Subject: [PATCH] libxl: Spice image compression setting support for upstream
+ qemu
+
+Usage:
+spice_image_compression=[auto_glz|auto_lz|quic|glz|lz|off]
+
+Specifies what image compression is to be used by spice (if given),
+otherwise the qemu default will be used.
+
+Signed-off-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
+Acked-by: Wei Liu <wei.liu2@citrix.com>
+---
+ docs/man/xl.cfg.pod.5       |  6 ++++++
+ tools/libxl/libxl.h         | 11 +++++++++++
+ tools/libxl/libxl_dm.c      |  4 ++++
+ tools/libxl/libxl_types.idl |  1 +
+ tools/libxl/xl_cmdimpl.c    |  2 ++
+ 5 files changed, 24 insertions(+)
+
+diff --git a/docs/man/xl.cfg.pod.5 b/docs/man/xl.cfg.pod.5
+index e2f91fc..0c2cbac 100644
+--- a/docs/man/xl.cfg.pod.5
++++ b/docs/man/xl.cfg.pod.5
+@@ -1427,6 +1427,12 @@ for redirection of up to 4 usb devices from spice client to domU's qemu.
+ It requires an usb controller and if not defined it will automatically adds
+ an usb2 controller. The default is disabled (0).
+ 
++=item B<spice_image_compression=[auto_glz|auto_lz|quic|glz|lz|off]>
++
++Specifies what image compression is to be used by spice (if given), otherwise
++the qemu default will be used. Please see documentations of your current qemu
++version for details.
++
+ =back
+ 
+ =head3 Miscellaneous Emulated Hardware
+diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h
+index 0a123f1..b8e0b67 100644
+--- a/tools/libxl/libxl.h
++++ b/tools/libxl/libxl.h
+@@ -528,6 +528,17 @@ typedef struct libxl__ctx libxl_ctx;
+ #define LIBXL_HAVE_SPICE_USBREDIREDIRECTION 1
+ 
+ /*
++ * LIBXL_HAVE_SPICE_IMAGECOMPRESSION
++ *
++ * If defined, then the libxl_spice_info structure will contain a string type
++ * field: image_compression. This value defines what Spice image compression
++ * is used.
++ *
++ * If this is not defined, the Spice image compression setting support is ignored.
++ */
++#define LIBXL_HAVE_SPICE_IMAGECOMPRESSION 1
++
++/*
+  * LIBXL_HAVE_DOMAIN_CREATE_RESTORE_PARAMS 1
+  *
+  * If this is defined, libxl_domain_create_restore()'s API has changed to
+diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
+index c2b0487..40c8649 100644
+--- a/tools/libxl/libxl_dm.c
++++ b/tools/libxl/libxl_dm.c
+@@ -398,6 +398,10 @@ static char *dm_spice_options(libxl__gc *gc,
+     if (!libxl_defbool_val(spice->clipboard_sharing))
+         opt = libxl__sprintf(gc, "%s,disable-copy-paste", opt);
+ 
++    if (spice->image_compression)
++        opt = libxl__sprintf(gc, "%s,image-compression=%s", opt,
++                             spice->image_compression);
++
+     return opt;
+ }
+ 
+diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
+index 1214d2e..052ded9 100644
+--- a/tools/libxl/libxl_types.idl
++++ b/tools/libxl/libxl_types.idl
+@@ -241,6 +241,7 @@ libxl_spice_info = Struct("spice_info", [
+     ("vdagent",     libxl_defbool),
+     ("clipboard_sharing", libxl_defbool),
+     ("usbredirection", integer),
++    ("image_compression", string),
+     ])
+ 
+ libxl_sdl_info = Struct("sdl_info", [
+diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c
+index 0b02a6c..00aa69d 100644
+--- a/tools/libxl/xl_cmdimpl.c
++++ b/tools/libxl/xl_cmdimpl.c
+@@ -1948,6 +1948,8 @@ skip_vfb:
+                             &b_info->u.hvm.spice.clipboard_sharing, 0);
+         if (!xlu_cfg_get_long (config, "spiceusbredirection", &l, 0))
+             b_info->u.hvm.spice.usbredirection = l;
++        xlu_cfg_replace_string (config, "spice_image_compression",
++                                &b_info->u.hvm.spice.image_compression, 0);
+         xlu_cfg_get_defbool(config, "nographic", &b_info->u.hvm.nographic, 0);
+         xlu_cfg_get_defbool(config, "gfx_passthru",
+                             &b_info->u.hvm.gfx_passthru, 0);
+-- 
+1.9.2
+
diff --git a/pkgs/applications/virtualization/xen/0002-libxl-Spice-streaming-video-setting-support-for-upst.patch b/pkgs/applications/virtualization/xen/0002-libxl-Spice-streaming-video-setting-support-for-upst.patch
new file mode 100644
index 00000000000..acf9cff9925
--- /dev/null
+++ b/pkgs/applications/virtualization/xen/0002-libxl-Spice-streaming-video-setting-support-for-upst.patch
@@ -0,0 +1,104 @@
+From 296c7f3284efe655d95a8ae045a5dc1a20d6fff0 Mon Sep 17 00:00:00 2001
+From: Fabio Fantoni <fabio.fantoni@m2r.biz>
+Date: Tue, 20 Jan 2015 11:33:17 +0100
+Subject: [PATCH] libxl: Spice streaming video setting support for upstream
+ qemu
+
+Usage:
+spice_streaming_video=[filter|all|off]
+
+Specifies what streaming video setting is to be used by spice (if
+given),
+otherwise the qemu default will be used.
+
+Signed-off-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
+Acked-by: Wei Liu <wei.liu2@citrix.com>
+---
+ docs/man/xl.cfg.pod.5       |  5 +++++
+ tools/libxl/libxl.h         | 11 +++++++++++
+ tools/libxl/libxl_dm.c      |  4 ++++
+ tools/libxl/libxl_types.idl |  1 +
+ tools/libxl/xl_cmdimpl.c    |  2 ++
+ 5 files changed, 23 insertions(+)
+
+diff --git a/docs/man/xl.cfg.pod.5 b/docs/man/xl.cfg.pod.5
+index 0c2cbac..408653f 100644
+--- a/docs/man/xl.cfg.pod.5
++++ b/docs/man/xl.cfg.pod.5
+@@ -1433,6 +1433,11 @@ Specifies what image compression is to be used by spice (if given), otherwise
+ the qemu default will be used. Please see documentations of your current qemu
+ version for details.
+ 
++=item B<spice_streaming_video=[filter|all|off]>
++
++Specifies what streaming video setting is to be used by spice (if given),
++otherwise the qemu default will be used.
++
+ =back
+ 
+ =head3 Miscellaneous Emulated Hardware
+diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h
+index b8e0b67..c219f59 100644
+--- a/tools/libxl/libxl.h
++++ b/tools/libxl/libxl.h
+@@ -539,6 +539,17 @@ typedef struct libxl__ctx libxl_ctx;
+ #define LIBXL_HAVE_SPICE_IMAGECOMPRESSION 1
+ 
+ /*
++ * LIBXL_HAVE_SPICE_STREAMINGVIDEO
++ *
++ * If defined, then the libxl_spice_info structure will contain a string type
++ * field: streaming_video. This value defines what Spice streaming video setting
++ * is used.
++ *
++ * If this is not defined, the Spice streaming video setting support is ignored.
++ */
++#define LIBXL_HAVE_SPICE_STREAMINGVIDEO 1
++
++/*
+  * LIBXL_HAVE_DOMAIN_CREATE_RESTORE_PARAMS 1
+  *
+  * If this is defined, libxl_domain_create_restore()'s API has changed to
+diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
+index 40c8649..d8d6f0c 100644
+--- a/tools/libxl/libxl_dm.c
++++ b/tools/libxl/libxl_dm.c
+@@ -402,6 +402,10 @@ static char *dm_spice_options(libxl__gc *gc,
+         opt = libxl__sprintf(gc, "%s,image-compression=%s", opt,
+                              spice->image_compression);
+ 
++    if (spice->streaming_video)
++        opt = libxl__sprintf(gc, "%s,streaming-video=%s", opt,
++                             spice->streaming_video);
++
+     return opt;
+ }
+ 
+diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
+index 052ded9..02be466 100644
+--- a/tools/libxl/libxl_types.idl
++++ b/tools/libxl/libxl_types.idl
+@@ -242,6 +242,7 @@ libxl_spice_info = Struct("spice_info", [
+     ("clipboard_sharing", libxl_defbool),
+     ("usbredirection", integer),
+     ("image_compression", string),
++    ("streaming_video", string),
+     ])
+ 
+ libxl_sdl_info = Struct("sdl_info", [
+diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c
+index 00aa69d..b7eac29 100644
+--- a/tools/libxl/xl_cmdimpl.c
++++ b/tools/libxl/xl_cmdimpl.c
+@@ -1950,6 +1950,8 @@ skip_vfb:
+             b_info->u.hvm.spice.usbredirection = l;
+         xlu_cfg_replace_string (config, "spice_image_compression",
+                                 &b_info->u.hvm.spice.image_compression, 0);
++        xlu_cfg_replace_string (config, "spice_streaming_video",
++                                &b_info->u.hvm.spice.streaming_video, 0);
+         xlu_cfg_get_defbool(config, "nographic", &b_info->u.hvm.nographic, 0);
+         xlu_cfg_get_defbool(config, "gfx_passthru",
+                             &b_info->u.hvm.gfx_passthru, 0);
+-- 
+1.9.2
+
diff --git a/pkgs/applications/virtualization/xen/0003-Add-qxl-vga-interface-support-for-upstream-qem.patch b/pkgs/applications/virtualization/xen/0003-Add-qxl-vga-interface-support-for-upstream-qem.patch
new file mode 100644
index 00000000000..1771b662bc3
--- /dev/null
+++ b/pkgs/applications/virtualization/xen/0003-Add-qxl-vga-interface-support-for-upstream-qem.patch
@@ -0,0 +1,165 @@
+From 161212ef02312c0681d2d809c8ff1e1f0ea6f6f9 Mon Sep 17 00:00:00 2001
+From: Fabio Fantoni <fabio.fantoni@m2r.biz>
+Date: Wed, 29 Apr 2015 11:20:28 +0200
+Subject: [PATCH] libxl: Add qxl vga interface support for upstream qemu
+
+Usage:
+vga="qxl"
+
+Qxl vga support many resolutions that not supported by stdvga,
+mainly the 16:9 ones and other high up to 2560x1600.
+With QXL you can get improved performance and smooth video also
+with high resolutions and high quality.
+Require their drivers installed in the domU and spice used
+otherwise act as a simple stdvga.
+
+Signed-off-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
+Signed-off-by: Zhou Peng <zpengxen@gmail.com>
+Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
+Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
+Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
+---
+ docs/man/xl.cfg.pod.5       | 10 +++++++++-
+ tools/libxl/libxl.h         | 10 ++++++++++
+ tools/libxl/libxl_create.c  | 13 +++++++++++++
+ tools/libxl/libxl_dm.c      |  8 ++++++++
+ tools/libxl/libxl_types.idl |  1 +
+ tools/libxl/xl_cmdimpl.c    |  2 ++
+ 6 files changed, 43 insertions(+), 1 deletion(-)
+
+diff --git a/docs/man/xl.cfg.pod.5 b/docs/man/xl.cfg.pod.5
+index f936dfc..8e4154f 100644
+--- a/docs/man/xl.cfg.pod.5
++++ b/docs/man/xl.cfg.pod.5
+@@ -1360,6 +1360,9 @@ qemu-xen-traditional device-model, the amount of video RAM is fixed at 4 MB,
+ which is sufficient for 1024x768 at 32 bpp. For the upstream qemu-xen
+ device-model, the default and minimum is 8 MB.
+ 
++For B<qxl> vga, the default is both default and minimal 128MB.
++If B<videoram> is set less than 128MB, an error will be triggered.
++
+ =item B<stdvga=BOOLEAN>
+ 
+ Select a standard VGA card with VBE (VESA BIOS Extensions) as the
+@@ -1371,9 +1374,14 @@ This option is deprecated, use vga="stdvga" instead.
+ 
+ =item B<vga="STRING">
+ 
+-Selects the emulated video card (none|stdvga|cirrus).
++Selects the emulated video card (none|stdvga|cirrus|qxl).
+ The default is cirrus.
+ 
++In general, QXL should work with the Spice remote display protocol
++for acceleration, and QXL driver is necessary in guest in this case.
++QXL can also work with the VNC protocol, but it will be like a standard
++VGA without acceleration.
++
+ =item B<vnc=BOOLEAN>
+ 
+ Allow access to the display via the VNC protocol.  This enables the
+diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h
+index 44bd8e2..efc0617 100644
+--- a/tools/libxl/libxl.h
++++ b/tools/libxl/libxl.h
+@@ -535,6 +535,16 @@ typedef struct libxl__ctx libxl_ctx;
+ #define LIBXL_HAVE_DOMINFO_OUTSTANDING_MEMKB 1
+ 
+ /*
++ * LIBXL_HAVE_QXL
++ *
++ * If defined, then the libxl_vga_interface_type will contain another value:
++ * "QXL". This value define if qxl vga is supported.
++ *
++ * If this is not defined, the qxl vga support is missed.
++ */
++#define LIBXL_HAVE_QXL 1
++
++/*
+  * LIBXL_HAVE_SPICE_VDAGENT
+  *
+  * If defined, then the libxl_spice_info structure will contain a boolean type:
+diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c
+index e5a343f..188f7df 100644
+--- a/tools/libxl/libxl_create.c
++++ b/tools/libxl/libxl_create.c
+@@ -248,6 +248,10 @@ int libxl__domain_build_info_setdefault(libxl__gc *gc,
+                 if (b_info->video_memkb == LIBXL_MEMKB_DEFAULT)
+                     b_info->video_memkb = 0;
+                 break;
++            case LIBXL_VGA_INTERFACE_TYPE_QXL:
++                LOG(ERROR,"qemu upstream required for qxl vga");
++                return ERROR_INVAL;
++                break;
+             case LIBXL_VGA_INTERFACE_TYPE_STD:
+                 if (b_info->video_memkb == LIBXL_MEMKB_DEFAULT)
+                     b_info->video_memkb = 8 * 1024;
+@@ -272,6 +276,15 @@ int libxl__domain_build_info_setdefault(libxl__gc *gc,
+                 if (b_info->video_memkb == LIBXL_MEMKB_DEFAULT)
+                     b_info->video_memkb = 0;
+                 break;
++            case LIBXL_VGA_INTERFACE_TYPE_QXL:
++                if (b_info->video_memkb == LIBXL_MEMKB_DEFAULT) {
++                    b_info->video_memkb = (128 * 1024);
++                } else if (b_info->video_memkb < (128 * 1024)) {
++                    LOG(ERROR,
++                        "128 Mib videoram is the minimum for qxl default");
++                    return ERROR_INVAL;
++                }
++                break;
+             case LIBXL_VGA_INTERFACE_TYPE_STD:
+                 if (b_info->video_memkb == LIBXL_MEMKB_DEFAULT)
+                     b_info->video_memkb = 16 * 1024;
+diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
+index 30c1578..58c9b99 100644
+--- a/tools/libxl/libxl_dm.c
++++ b/tools/libxl/libxl_dm.c
+@@ -251,6 +251,8 @@ static char ** libxl__build_device_model_args_old(libxl__gc *gc,
+         case LIBXL_VGA_INTERFACE_TYPE_NONE:
+             flexarray_append_pair(dm_args, "-vga", "none");
+             break;
++        case LIBXL_VGA_INTERFACE_TYPE_QXL:
++            break;
+         }
+ 
+         if (b_info->u.hvm.boot) {
+@@ -625,6 +627,12 @@ static char ** libxl__build_device_model_args_new(libxl__gc *gc,
+             break;
+         case LIBXL_VGA_INTERFACE_TYPE_NONE:
+             break;
++        case LIBXL_VGA_INTERFACE_TYPE_QXL:
++            /* QXL have 2 ram regions, ram and vram */
++            flexarray_append_pair(dm_args, "-device",
++                GCSPRINTF("qxl-vga,vram_size_mb=%"PRIu64",ram_size_mb=%"PRIu64,
++                (b_info->video_memkb/2/1024), (b_info->video_memkb/2/1024) ) );
++            break;
+         }
+ 
+         if (b_info->u.hvm.boot) {
+diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
+index 117b61d..023b21e 100644
+--- a/tools/libxl/libxl_types.idl
++++ b/tools/libxl/libxl_types.idl
+@@ -183,6 +183,7 @@ libxl_vga_interface_type = Enumeration("vga_interface_type", [
+     (1, "CIRRUS"),
+     (2, "STD"),
+     (3, "NONE"),
++    (4, "QXL"),
+     ], init_val = "LIBXL_VGA_INTERFACE_TYPE_CIRRUS")
+ 
+ libxl_vendor_device = Enumeration("vendor_device", [
+diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c
+index 648ca08..526a1f6 100644
+--- a/tools/libxl/xl_cmdimpl.c
++++ b/tools/libxl/xl_cmdimpl.c
+@@ -2115,6 +2115,8 @@ skip_vfb:
+                 b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_CIRRUS;
+             } else if (!strcmp(buf, "none")) {
+                 b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_NONE;
++            } else if (!strcmp(buf, "qxl")) {
++                b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_QXL;
+             } else {
+                 fprintf(stderr, "Unknown vga \"%s\" specified\n", buf);
+                 exit(1);
+-- 
+1.9.2
+
diff --git a/pkgs/applications/virtualization/xen/4.4.1.nix b/pkgs/applications/virtualization/xen/4.4.1.nix
deleted file mode 100644
index a13a51a1d4e..00000000000
--- a/pkgs/applications/virtualization/xen/4.4.1.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-{ callPackage, fetchurl, ... } @ args:
-
-let
-  # Xen 4.4.1
-  xenConfig = {
-    name = "xen-4.4.1";
-    version = "4.4.1";
-
-    src = fetchurl {
-      url = "http://bits.xensource.com/oss-xen/release/4.4.1/xen-4.4.1.tar.gz";
-      sha256 = "09gaqydqmy64s5pqnwgjyzhd3wc61xyghpqjfl97kmvm8ly9vd2m";
-    };
-
-    # Sources needed to build the xen tools and tools/firmware.
-    toolsGits =
-      [ # tag qemu-xen-4.4.1
-        { name = "qemu-xen";
-          url = git://xenbits.xen.org/qemu-upstream-4.4-testing.git;
-          rev = "65fc9b78ba3d868a26952db0d8e51cecf01d47b4";
-          sha256 = "e24fb58f773fd9134c5aae6d3ca7e9f754dc9822de92b1eb2cedc76faf911f18";
-        }
-        # tag xen-4.4.1
-        {  name = "qemu-xen-traditional";
-          url = git://xenbits.xen.org/qemu-xen-4.4-testing.git;
-          rev = "6ae4e588081620b141071eb010ec40aca7e12876";
-          sha256 = "b1ed1feb92fbe658273a8d6d38d6ea60b79c1658413dd93979d6d128d8554ded";
-        }
-      ];
-
-    firmwareGits =
-      [ # tag 1.7.3.1
-        { name = "seabios";
-          url = git://xenbits.xen.org/seabios.git;
-          rev = "7d9cbe613694924921ed1a6f8947d711c5832eee";
-          sha256 = "c071282bbcb1dd0d98536ef90cd1410f5d8da19648138e0e3863bc540d954a87";
-        }
-        { name = "ovmf";
-          url = git://xenbits.xen.org/ovmf.git;
-          rev = "447d264115c476142f884af0be287622cd244423";
-          sha256 = "7086f882495a8be1497d881074e8f1005dc283a5e1686aec06c1913c76a6319b";
-        }
-      ];
-
-  };
-
-in callPackage ./generic.nix (args // { xenConfig=xenConfig; })
diff --git a/pkgs/applications/virtualization/xen/4.5.0.nix b/pkgs/applications/virtualization/xen/4.5.0.nix
index 176e15ea2c7..48b3ee4d75b 100644
--- a/pkgs/applications/virtualization/xen/4.5.0.nix
+++ b/pkgs/applications/virtualization/xen/4.5.0.nix
@@ -14,44 +14,66 @@ let
     # Sources needed to build the xen tools and tools/firmware.
     firmwareGits =
       [ # tag 1.7.5
-        { name = "seabios";
-          url = git://xenbits.xen.org/seabios.git;
-          rev = "e51488c5f8800a52ac5c8da7a31b85cca5cc95d2";
-          sha256 = "b96a0b9f31cab0f3993d007dcbe5f1bd69ad02b0a23eb2dc8a3ed1aafe7985cb";
+        { git = { name = "seabios";
+                  url = git://xenbits.xen.org/seabios.git;
+                  rev = "e51488c5f8800a52ac5c8da7a31b85cca5cc95d2";
+                  sha256 = "b96a0b9f31cab0f3993d007dcbe5f1bd69ad02b0a23eb2dc8a3ed1aafe7985cb";
+                };
+          patches = [ ./0000-qemu-seabios-enable-ATA_DMA.patch ];
         }
-        { name = "ovmf";
-          url = git://xenbits.xen.org/ovmf.git;
-          rev = "447d264115c476142f884af0be287622cd244423";
-          sha256 = "7086f882495a8be1497d881074e8f1005dc283a5e1686aec06c1913c76a6319b";
+        { git = { name = "ovmf";
+                  url = git://xenbits.xen.org/ovmf.git;
+                  rev = "447d264115c476142f884af0be287622cd244423";
+                  sha256 = "7086f882495a8be1497d881074e8f1005dc283a5e1686aec06c1913c76a6319b";
+                };
         }
       ];
 
     toolsGits =
       [ # tag qemu-xen-4.5.0
-        { name = "qemu-xen";
-          url = git://xenbits.xen.org/qemu-upstream-4.5-testing.git;
-          rev = "1ebb75b1fee779621b63e84fefa7b07354c43a99";
-          sha256 = "1j312q2mqvkvby9adkkxf7f1pn3nz85g5mr9nbg4qpf2y9cg122z";
+        { git = { name = "qemu-xen";
+                  url = git://xenbits.xen.org/qemu-upstream-4.5-testing.git;
+                  rev = "1ebb75b1fee779621b63e84fefa7b07354c43a99";
+                  sha256 = "1j312q2mqvkvby9adkkxf7f1pn3nz85g5mr9nbg4qpf2y9cg122z";
+                };
         }
         # tag xen-4.5.0
-        { name = "qemu-xen-traditional";
-          url = git://xenbits.xen.org/qemu-xen-4.5-testing.git;
-          rev = "b0d42741f8e9a00854c3b3faca1da84bfc69bf22";
-          sha256 = "ce52b5108936c30ab85ec0c9554f88d5e7b34896f3acb666d56765b49c86f2af";
+        { git = { name = "qemu-xen-traditional";
+                  url = git://xenbits.xen.org/qemu-xen-4.5-testing.git;
+                  rev = "b0d42741f8e9a00854c3b3faca1da84bfc69bf22";
+                  sha256 = "ce52b5108936c30ab85ec0c9554f88d5e7b34896f3acb666d56765b49c86f2af";
+                };
+        }
+        { git = { name = "xen-libhvm";
+                  url = "https://github.com/ts468/xen-libhvm";
+                  rev = "442dcc4f6f4e374a51e4613532468bd6b48bdf63";
+                  sha256 = "9ba97c39a00a54c154785716aa06691d312c99be498ebbc00dc3769968178ba8";
+                };
+          description = ''
+            Helper library for reading ACPI and SMBIOS firmware values
+            from the host system for use with the HVM guest firmware
+            pass-through feature in Xen.
+            '';
+          #license = licenses.bsd2;
         }
       ];
 
-    xenserverPatches = let
-      patches = {
-        url = https://github.com/ts468/xen-4.5.pg.git;
-        rev = "3442b65b490f43c817cbc53369220d0b1ab9b785";
-        sha256 = "31436c15def0a300b3ea1a63b2208c4a3bcbb143db5c6488d4db370b3ceeb845";
-      };
+    xenserverPatches =
+      let
+        patches = {
+          url = https://github.com/ts468/xen-4.5.pg.git;
+          rev = "3442b65b490f43c817cbc53369220d0b1ab9b785";
+          sha256 = "31436c15def0a300b3ea1a63b2208c4a3bcbb143db5c6488d4db370b3ceeb845";
+        };
       in ''
         cp -r ${fetchgit patches}/master patches
         quilt push -a
         substituteInPlace tools/xenguest/Makefile --replace "_BSD_SOURCE" "_DEFAULT_SOURCE"
-        '';
+      '';
+
+    xenPatches = [ ./0001-libxl-Spice-image-compression-setting-support-for-up.patch
+                   ./0002-libxl-Spice-streaming-video-setting-support-for-upst.patch
+                   ./0003-Add-qxl-vga-interface-support-for-upstream-qem.patch ];
   };
 
 in callPackage ./generic.nix (args // { xenConfig=xenConfig; })
diff --git a/pkgs/applications/virtualization/xen/4.5.1.nix b/pkgs/applications/virtualization/xen/4.5.1.nix
new file mode 100644
index 00000000000..3412a0bd6ec
--- /dev/null
+++ b/pkgs/applications/virtualization/xen/4.5.1.nix
@@ -0,0 +1,67 @@
+{ callPackage, fetchurl, fetchgit, ... } @ args:
+
+let
+  # Xen 4.5.1
+  xenConfig = {
+    name = "xen-4.5.1";
+    version = "4.5.1";
+
+    src = fetchurl {
+      url = "http://bits.xensource.com/oss-xen/release/4.5.1/xen-4.5.1.tar.gz";
+      sha256 = "0w8kbqy7zixacrpbk3yj51xx7b3f6l8ghsg3551w8ym6zka13336";
+    };
+
+    # Sources needed to build the xen tools and tools/firmware.
+    firmwareGits =
+      [ # tag 1.7.5
+        { git = { name = "seabios";
+                  url = git://xenbits.xen.org/seabios.git;
+                  rev = "e51488c5f8800a52ac5c8da7a31b85cca5cc95d2";
+                  sha256 = "b96a0b9f31cab0f3993d007dcbe5f1bd69ad02b0a23eb2dc8a3ed1aafe7985cb";
+                };
+          patches = [ ./0000-qemu-seabios-enable-ATA_DMA.patch ];
+        }
+        { git = { name = "ovmf";
+                  url = git://xenbits.xen.org/ovmf.git;
+                  rev = "447d264115c476142f884af0be287622cd244423";
+                  sha256 = "7086f882495a8be1497d881074e8f1005dc283a5e1686aec06c1913c76a6319b";
+                };
+        }
+      ];
+
+    toolsGits =
+      [ # tag qemu-xen-4.5.1
+        { git = { name = "qemu-xen";
+                  url = git://xenbits.xen.org/qemu-upstream-4.5-testing.git;
+                  rev = "d9552b0af21c27535cd3c8549bb31d26bbecd506";
+                  sha256 = "15dbz8j26wl4vs5jijhccwgd8c6wkmpj4mz899fa7i1bbh8yysfy";
+                };
+        }
+        # tag xen-4.5.1
+        { git = { name = "qemu-xen-traditional";
+                  url = git://xenbits.xen.org/qemu-xen-4.5-testing.git;
+                  rev = "afaa35b4bc975b2b89ad44c481d0d7623e3d1c49";
+                  sha256 = "906b31cf32b52d29e521abaa76d641123bdf24f33fa53c6f109b6d7834e514be";
+                };
+        }
+        { git = { name = "xen-libhvm";
+                  url = "https://github.com/ts468/xen-libhvm";
+                  rev = "442dcc4f6f4e374a51e4613532468bd6b48bdf63";
+                  sha256 = "9ba97c39a00a54c154785716aa06691d312c99be498ebbc00dc3769968178ba8";
+                };
+          description = ''
+            Helper library for reading ACPI and SMBIOS firmware values
+            from the host system for use with the HVM guest firmware
+            pass-through feature in Xen.
+            '';
+          #license = licenses.bsd2;
+        }
+      ];
+
+    xenPatches = [ ./0001-libxl-Spice-image-compression-setting-support-for-up.patch
+                   ./0002-libxl-Spice-streaming-video-setting-support-for-upst.patch
+                   ./0003-Add-qxl-vga-interface-support-for-upstream-qem.patch ];
+  };
+
+in callPackage ./generic.nix (args // { xenConfig=xenConfig; })
+
diff --git a/pkgs/applications/virtualization/xen/generic.nix b/pkgs/applications/virtualization/xen/generic.nix
index 711fd505efa..71c26c5f99c 100644
--- a/pkgs/applications/virtualization/xen/generic.nix
+++ b/pkgs/applications/virtualization/xen/generic.nix
@@ -1,9 +1,9 @@
 { stdenv, fetchurl, which, zlib, pkgconfig, SDL, openssl
 , libuuid, gettext, ncurses, dev86, iasl, pciutils, bzip2
 , lvm2, utillinux, procps, texinfo, perl, pythonPackages
-, glib, bridge-utils, xlibs, pixman, iproute, udev, bison
+, glib, bridge-utils, xorg, pixman, iproute, udev, bison
 , flex, cmake, ocaml, ocamlPackages, figlet, libaio, yajl
-, checkpolicy, transfig, glusterfs, fetchgit, xz, spice
+, checkpolicy, transfig, glusterfs, acl, fetchgit, xz, spice
 , spice_protocol, usbredir, alsaLib, quilt
 , coreutils, gawk, gnused, gnugrep, diffutils, multipath_tools
 , inetutils, iptables, openvswitch, nbd, drbd, xenConfig
@@ -66,18 +66,42 @@ stdenv.mkDerivation {
     [ which zlib pkgconfig SDL openssl libuuid gettext ncurses
       dev86 iasl pciutils bzip2 xz texinfo perl yajl
       pythonPackages.python pythonPackages.wrapPython
-      glib bridge-utils pixman iproute udev bison xlibs.libX11
+      glib bridge-utils pixman iproute udev bison xorg.libX11
       flex ocaml ocamlPackages.findlib figlet libaio
       checkpolicy pythonPackages.markdown transfig
-      glusterfs cmake spice spice_protocol usbredir
+      glusterfs acl cmake spice spice_protocol usbredir
       alsaLib quilt
     ];
 
   pythonPath = [ pythonPackages.curses ];
 
-  patchPhase = if ((xenserverPatched == true) && (builtins.hasAttr "xenserverPatches" xenConfig))
-    then xenConfig.xenserverPatches
-    else "";
+  patches = stdenv.lib.optionals ((xenserverPatched == false) && (builtins.hasAttr "xenPatches" xenConfig)) xenConfig.xenPatches;
+
+  postPatch = ''
+      ${stdenv.lib.optionalString ((xenserverPatched == true) && (builtins.hasAttr "xenserverPatches" xenConfig)) xenConfig.xenserverPatches}
+
+      # Xen's tools and firmares need various git repositories that it
+      # usually checks out at time using git.  We can't have that.
+      ${flip concatMapStrings xenConfig.toolsGits (x: let src = fetchgit x.git; in ''
+        cp -r ${src} tools/${src.name}-dir-remote
+        chmod -R +w tools/${src.name}-dir-remote
+      '' + stdenv.lib.optionalString (builtins.hasAttr "patches" x) ''
+        ( cd tools/${src.name}-dir-remote; ${concatStringsSep "; " (map (p: "patch -p1 < ${p}") x.patches)} )
+      '')}
+      ${flip concatMapStrings xenConfig.firmwareGits (x: let src = fetchgit x.git; in ''
+        cp -r ${src} tools/firmware/${src.name}-dir-remote
+        chmod -R +w tools/firmware/${src.name}-dir-remote
+      '' + stdenv.lib.optionalString (builtins.hasAttr "patches" x) ''
+        ( cd tools/firmware/${src.name}-dir-remote; ${concatStringsSep "; " (map (p: "patch -p1 < ${p}") x.patches)} )
+      '')}
+
+      # Xen's stubdoms and firmwares need various sources that are usually fetched
+      # at build time using wget. We can't have that, so we prefetch Xen's ext_files.
+      mkdir xen_ext_files
+      ${flip concatMapStrings xenExtfiles (x: let src = fetchurl x; in ''
+        cp ${src} xen_ext_files/${src.name}
+      '')}
+  '';
 
   preConfigure = ''
     # Fake wget: copy prefetched downloads instead
@@ -87,20 +111,10 @@ stdenv.mkDerivation {
     echo "cp \$4 \$3" >> wget/wget
     chmod +x wget/wget
     export PATH=$PATH:$PWD/wget
+    export EXTRA_QEMUU_CONFIGURE_ARGS="--enable-spice --enable-usb-redir --enable-linux-aio"
   '';
 
-  # TODO: If multiple arguments are given with with-extra-qemuu,
-  #       then the configuration aborts; the reason is unclear.
-  #       If you know how to fix it, please let me know! :)
-  #configureFlags = "--with-extra-qemuu-configure-args='--enable-spice --enable-usb-redir --enable-linux-aio'";
-
-  # TODO: Flask needs more testing before enabling it by default.
-  #makeFlags = "XSM_ENABLE=y FLASK_ENABLE=y PREFIX=$(out) CONFIG_DIR=/etc XEN_EXTFILES_URL=\\$(XEN_ROOT)/xen_ext_files ";
-  makeFlags = "PREFIX=$(out) CONFIG_DIR=/etc XEN_EXTFILES_URL=\\$(XEN_ROOT)/xen_ext_files ";
-
-  buildFlags = "xen tools stubdom";
-
-  preBuild =
+  postConfigure =
     ''
       substituteInPlace tools/libfsimage/common/fsimage_plugin.c \
         --replace /usr $out
@@ -118,7 +132,10 @@ stdenv.mkDerivation {
       substituteInPlace tools/xenstat/Makefile \
         --replace /usr/include/curses.h ${ncurses}/include/curses.h
 
-      substituteInPlace tools/ioemu-qemu-xen/xen-hooks.mak \
+      substituteInPlace tools/qemu-xen-traditional/xen-hooks.mak \
+        --replace /usr/include/pci ${pciutils}/include/pci
+
+      substituteInPlace tools/qemu-xen-traditional-dir-remote/xen-hooks.mak \
         --replace /usr/include/pci ${pciutils}/include/pci
 
       substituteInPlace tools/hotplug/Linux/xen-backend.rules \
@@ -132,18 +149,6 @@ stdenv.mkDerivation {
       substituteInPlace xen/Makefile \
         --replace '$(CC) $(CFLAGS) -v' '$(CC) -v'
 
-      substituteInPlace tools/python/xen/xend/server/BlktapController.py \
-        --replace /usr/sbin/tapdisk2 $out/sbin/tapdisk2
-
-      substituteInPlace tools/python/xen/xend/XendQCoWStorageRepo.py \
-        --replace /usr/sbin/qcow-create $out/sbin/qcow-create
-
-      substituteInPlace tools/python/xen/remus/save.py \
-        --replace /usr/lib/xen/bin/xc_save $out/${libDir}/xen/bin/xc_save
-
-      substituteInPlace tools/python/xen/remus/device.py \
-        --replace /usr/lib/xen/bin/imqebt $out/${libDir}/xen/bin/imqebt
-
       # Allow the location of the xendomains config file to be
       # overriden at runtime.
       substituteInPlace tools/hotplug/Linux/init.d/xendomains \
@@ -152,32 +157,26 @@ stdenv.mkDerivation {
         --replace /etc/xen/scripts/hotplugpath.sh $out/etc/xen/scripts/hotplugpath.sh \
         --replace /bin/ls ls
 
-      # Xen's tools and firmares need various git repositories that it
-      # usually checks out at time using git.  We can't have that.
-      ${flip concatMapStrings xenConfig.toolsGits (x: let src = fetchgit x; in ''
-        cp -r ${src} tools/${src.name}-dir-remote
-        chmod +w tools/${src.name}-dir-remote
-      '')}
-      ${flip concatMapStrings xenConfig.firmwareGits (x: let src = fetchgit x; in ''
-        cp -r ${src} tools/firmware/${src.name}-dir-remote
-        chmod +w tools/firmware/${src.name}-dir-remote
-      '')}
-
-      # Xen's stubdoms and firmwares need various sources that are usually fetched
-      # at build time using wget. We can't have that, so we prefetch Xen's ext_files.
-      mkdir xen_ext_files
-      ${flip concatMapStrings xenExtfiles (x: let src = fetchurl x; in ''
-        cp ${src} xen_ext_files/${src.name}
-      '')}
+      substituteInPlace tools/hotplug/Linux/xendomains \
+        --replace /bin/ls ls
 
       # Hack to get `gcc -m32' to work without having 32-bit Glibc headers.
       mkdir -p tools/include/gnu
       touch tools/include/gnu/stubs-32.h
     '';
 
+  # TODO: Flask needs more testing before enabling it by default.
+  #makeFlags = "XSM_ENABLE=y FLASK_ENABLE=y PREFIX=$(out) CONFIG_DIR=/etc XEN_EXTFILES_URL=\\$(XEN_ROOT)/xen_ext_files ";
+  makeFlags = "PREFIX=$(out) CONFIG_DIR=/etc XEN_EXTFILES_URL=\\$(XEN_ROOT)/xen_ext_files ";
+
+  buildFlags = "xen tools stubdom";
+
   postBuild =
     ''
       make -C docs man-pages
+
+      (cd tools/xen-libhvm-dir-remote; make)
+      (cd tools/xen-libhvm-dir-remote/biospt; cc -Wall -g -D_LINUX -Wstrict-prototypes biospt.c -o biospt -I../libhvm -L../libhvm -lxenhvm)
     '';
 
   installPhase =
@@ -192,8 +191,11 @@ stdenv.mkDerivation {
 
       shopt -s extglob
       for i in $out/etc/xen/scripts/!(*.sh); do
-        sed -i '2s@^@export PATH=$out/bin:${scriptEnvPath}@' $i
+        sed -i "2s@^@export PATH=$out/bin:${scriptEnvPath}\n@" $i
       done
+
+      (cd tools/xen-libhvm-dir-remote; make install)
+      cp tools/xen-libhvm-dir-remote/biospt/biospt $out/bin/.
     '';
 
   meta = {
diff --git a/pkgs/applications/virtualization/xhyve/default.nix b/pkgs/applications/virtualization/xhyve/default.nix
new file mode 100644
index 00000000000..b7205ac000e
--- /dev/null
+++ b/pkgs/applications/virtualization/xhyve/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, lib, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "xhyve-${version}";
+  version = "0.2.0";
+
+  src = fetchurl {
+    url = "https://github.com/mist64/xhyve/archive/v${version}.tar.gz";
+    sha256 = "0g1vknnh88kxc8aaqv3j9wqhq45mm9xxxbn1vcrypj3kk9991hrj";
+  };
+
+  # Don't use git to determine version
+  buildFlags = ''
+    CFLAGS=-DVERSION=\"${version}\"
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp build/xhyve $out/bin
+  '';
+
+  meta = {
+    description = "Lightweight Virtualization on OS X Based on bhyve";
+    homepage = "https://github.com/mist64/xhyve";
+    maintainers = [ lib.maintainers.lnl7 ];
+    platforms = lib.platforms.darwin;
+  };
+}
diff --git a/pkgs/applications/window-managers/awesome/default.nix b/pkgs/applications/window-managers/awesome/default.nix
index 3541743057c..9c9d3d5f451 100644
--- a/pkgs/applications/window-managers/awesome/default.nix
+++ b/pkgs/applications/window-managers/awesome/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, luaPackages, cairo, cmake, imagemagick, pkgconfig, gdk_pixbuf
-, xlibs, libstartup_notification, libxdg_basedir, libpthreadstubs
+, xorg, libstartup_notification, libxdg_basedir, libpthreadstubs
 , xcb-util-cursor, makeWrapper, pango, gobjectIntrospection, unclutter
 , compton, procps, iproute, coreutils, curl, alsaUtils, findutils, xterm
 , which, dbus, nettools, git, asciidoc, doxygen
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Highly configurable, dynamic window manager for X";
     homepage    = http://awesome.naquadah.org/;
-    license     = "GPLv2+";
+    license     = licenses.gpl2Plus;
     maintainers = with maintainers; [ lovek323 ];
     platforms   = platforms.linux;
   };
@@ -46,15 +46,15 @@ stdenv.mkDerivation rec {
     pango
     pkgconfig
     xcb-util-cursor
-    xlibs.libXau
-    xlibs.libXdmcp
-    xlibs.libxcb
-    xlibs.libxshmfence
-    xlibs.xcbutil
-    xlibs.xcbutilimage
-    xlibs.xcbutilkeysyms
-    xlibs.xcbutilrenderutil
-    xlibs.xcbutilwm
+    xorg.libXau
+    xorg.libXdmcp
+    xorg.libxcb
+    xorg.libxshmfence
+    xorg.xcbutil
+    xorg.xcbutilimage
+    xorg.xcbutilkeysyms
+    xorg.xcbutilrenderutil
+    xorg.xcbutilwm
     #xmlto docbook_xml_dtd_45 docbook_xsl
   ];
 
diff --git a/pkgs/applications/window-managers/bar/default.nix b/pkgs/applications/window-managers/bar/default.nix
index 46a19b90b8b..964390d3b59 100644
--- a/pkgs/applications/window-managers/bar/default.nix
+++ b/pkgs/applications/window-managers/bar/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, perl, libxcb }:
 
 let
-  version = "1.0";
+  version = "1.1";
 in
   stdenv.mkDerivation rec {
     name = "bar-${version}";
   
     src = fetchurl {
       url = "https://github.com/LemonBoy/bar/archive/v${version}.tar.gz";
-      sha256 = "1n2vak2acs37sslxl250cnz9c3irif5z4s54wi9qjyxbfzr2h2nc";
+      sha256 = "171ciw676cvj80zzbqfbg9nwix36zph0683zmqf279q9b9bmayan";
     };
   
     buildInputs = [ libxcb perl ];
diff --git a/pkgs/applications/window-managers/bar/xft.nix b/pkgs/applications/window-managers/bar/xft.nix
new file mode 100644
index 00000000000..c671f1a4e03
--- /dev/null
+++ b/pkgs/applications/window-managers/bar/xft.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchgit, perl, libxcb, libXft }:
+
+let
+  version = "2015-07-23";
+in
+  stdenv.mkDerivation rec {
+    name = "bar-xft-git-${version}";
+
+    src = fetchgit {
+      url = "https://github.com/krypt-n/bar";
+      rev = "020a3e1848ce03287886e9ff80b0b443e9aed543";
+      sha256 = "1xzs37syhlwyjfxnk36qnij5bqa0mi53lf1k851viw4qai2bfkgr";
+    };
+
+    buildInputs = [ libxcb libXft perl ];
+
+    prePatch = ''sed -i "s@/usr@$out@" Makefile'';
+
+    meta = {
+      description = "A lightweight xcb based bar with XFT-support";
+      homepage = https://github.com/krypt-n/bar;
+      maintainers = [ stdenv.lib.maintainers.hiberno ];
+      license = "Custom";
+      platforms = stdenv.lib.platforms.linux;
+    };
+}
diff --git a/pkgs/applications/window-managers/bspwm/default.nix b/pkgs/applications/window-managers/bspwm/default.nix
index c17107ae97b..fbe7e33baad 100644
--- a/pkgs/applications/window-managers/bspwm/default.nix
+++ b/pkgs/applications/window-managers/bspwm/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, libxcb, libXinerama, sxhkd, xcbutil, xcbutilkeysyms, xcbutilwm }:
 
 stdenv.mkDerivation rec {
-  name = "bspwm-0.8.9";
+  name = "bspwm-0.9";
   
 
   src = fetchurl {
-    url = "https://github.com/baskerville/bspwm/archive/0.8.9.tar.gz";
-    sha256 = "750c76132914661d8d5edf7809e9b601977215d31e747dd780c60fd562913d55";
+    url = "https://github.com/baskerville/bspwm/archive/0.9.tar.gz";
+    sha256 = "1efb2db7b8a251bcc006d66a050cf66e9d311761c94890bebf91a32905042fde";
   };
 
   buildInputs = [ libxcb libXinerama xcbutil xcbutilkeysyms xcbutilwm ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "A tiling window manager based on binary space partitioning";
     homepage = http://github.com/baskerville/bspwm;
-    maintainers = [ stdenv.lib.maintainers.meisternu ];
+    maintainers = [ stdenv.lib.maintainers.meisternu stdenv.lib.maintainers.epitrochoid ];
     license = stdenv.lib.licenses.bsd2;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/window-managers/compiz/default.nix b/pkgs/applications/window-managers/compiz/default.nix
index 6b9a579a08b..977409d0ef1 100644
--- a/pkgs/applications/window-managers/compiz/default.nix
+++ b/pkgs/applications/window-managers/compiz/default.nix
@@ -50,6 +50,9 @@ stdenv.mkDerivation rec {
       --prefix PYTHONPATH : "$out/lib/${python.libPrefix}/site-packages"
   '';
 
+  # automatic moving fails, perhaps due to having two $out/lib*/pkgconfig
+  dontMoveLib64 = true;
+
   meta = {
     description = "Compoziting window manager";
     homepage = "http://launchpad.net/compiz/";
diff --git a/pkgs/applications/window-managers/herbstluftwm/default.nix b/pkgs/applications/window-managers/herbstluftwm/default.nix
index c4b265f4b41..8b6422df828 100644
--- a/pkgs/applications/window-managers/herbstluftwm/default.nix
+++ b/pkgs/applications/window-managers/herbstluftwm/default.nix
@@ -9,9 +9,10 @@ stdenv.mkDerivation rec {
   };
 
   patchPhase = ''
-      sed -i -e "s:/usr/local:$\{out}:" \
-             -e "s:/etc:$\{out}/etc:" \
-          config.mk
+    substituteInPlace config.mk \
+      --replace "/usr/local" "$out" \
+      --replace "/etc" "$out/etc" \
+      --replace "/zsh/functions/Completion/X" "/zsh/site-functions"
   '';
 
   buildInputs = [ pkgconfig glib libX11 libXext libXinerama ];
diff --git a/pkgs/applications/window-managers/i3/default.nix b/pkgs/applications/window-managers/i3/default.nix
index 21836bd4fff..9ac17566b94 100644
--- a/pkgs/applications/window-managers/i3/default.nix
+++ b/pkgs/applications/window-managers/i3/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "i3-${version}";
-  version = "4.10.2";
+  version = "4.10.4";
 
   src = fetchurl {
     url = "http://i3wm.org/downloads/${name}.tar.bz2";
-    sha256 = "1n6grkpv5rsn9zgg8if76mmg85w1asbm3rpplxyn6fzr8wds7587";
+    sha256 = "0pk580jkv7cxmsrr276q25fgdbrkzldiiz4ny61szzmqqnjsfkyx";
   };
 
   buildInputs = [
@@ -24,7 +24,13 @@ stdenv.mkDerivation rec {
     patchShebangs .
   '';
 
-  doCheck = stdenv.system == "x86_64-linux";
+  # Tests have been failing (at least for some people in some cases)
+  # and have been disabled until someone wants to fix them. Some
+  # initial digging uncovers that the tests call out to `git`, which
+  # they shouldn't, and then even once that's fixed have some
+  # perl-related errors later on. For more, see
+  # https://github.com/NixOS/nixpkgs/issues/7957
+  doCheck = false; # stdenv.system == "x86_64-linux";
 
   checkPhase = stdenv.lib.optionalString (stdenv.system == "x86_64-linux")
   ''
@@ -60,4 +66,3 @@ stdenv.mkDerivation rec {
   };
 
 }
-
diff --git a/pkgs/applications/window-managers/i3/lock.nix b/pkgs/applications/window-managers/i3/lock.nix
index b9d5ac168b2..099a2523fb4 100644
--- a/pkgs/applications/window-managers/i3/lock.nix
+++ b/pkgs/applications/window-managers/i3/lock.nix
@@ -2,11 +2,11 @@
   pam, libX11, libev, cairo, libxkbcommon, libxkbfile }:
 
 stdenv.mkDerivation rec {
-  name = "i3lock-2.6";
+  name = "i3lock-2.7";
 
   src = fetchurl {
     url = "http://i3wm.org/i3lock/${name}.tar.bz2";
-    sha256 = "0aj0an8fwv66jhda499r3xa00546cc9ja1dk8xpc6sy6xygqjbf0";
+    sha256 = "1qlgafbyqjpqdfs50f2y0xphn2jdigafkqqsmpikk97cs0z1i0k8";
   };
 
   buildInputs = [ which pkgconfig libxcb xcbutilkeysyms xcbutilimage pam libX11
@@ -20,9 +20,9 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "i3lock is a simple screen locker like slock";
+    description = "A simple screen locker like slock";
     homepage = http://i3wm.org/i3lock/;
-    maintainers = with maintainers; [ garbas malyn ];
+    maintainers = with maintainers; [ garbas malyn iElectric ];
     license = licenses.bsd3;
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/window-managers/i3/status.nix b/pkgs/applications/window-managers/i3/status.nix
index 99562ebd662..97b200e340e 100644
--- a/pkgs/applications/window-managers/i3/status.nix
+++ b/pkgs/applications/window-managers/i3/status.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   installFlags = "PREFIX=\${out}";
 
   meta = {
-    description = "i3 is a tiling window manager";
+    description = "A tiling window manager";
     homepage = http://i3wm.org;
     maintainers = [ stdenv.lib.maintainers.garbas ];
     license = stdenv.lib.licenses.bsd3;
diff --git a/pkgs/applications/window-managers/icewm/default.nix b/pkgs/applications/window-managers/icewm/default.nix
index f3d88c55c58..b1b63df574a 100644
--- a/pkgs/applications/window-managers/icewm/default.nix
+++ b/pkgs/applications/window-managers/icewm/default.nix
@@ -1,35 +1,39 @@
-{ stdenv, fetchurl, gettext, libjpeg, libtiff, libungif, libpng, freetype
-, fontconfig, xlibs, automake, pkgconfig, gdk_pixbuf }:
+{ stdenv, fetchurl, cmake, gettext
+, libjpeg, libtiff, libungif, libpng, imlib, expat
+, freetype, fontconfig, pkgconfig, gdk_pixbuf
+, mkfontdir, libX11, libXft, libXext, libXinerama
+, libXrandr, libICE, libSM, libXpm, libXdmcp, libxcb
+, libpthreadstubs }:
 
+with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "icewm-1.3.8";
+  name = "icewm-${version}";
+  version = "1.3.10";
 
   buildInputs =
-    [ gettext libjpeg libtiff libungif libpng
-      xlibs.libX11 xlibs.libXft xlibs.libXext xlibs.libXinerama xlibs.libXrandr
-      xlibs.libICE xlibs.libSM freetype fontconfig
-      pkgconfig gdk_pixbuf
-    ];
+  [ cmake gettext libjpeg libtiff libungif libpng imlib expat
+    freetype fontconfig pkgconfig gdk_pixbuf mkfontdir libX11
+    libXft libXext libXinerama libXrandr libICE libSM libXpm
+    libXdmcp libxcb libpthreadstubs ];
 
   src = fetchurl {
-    url = "mirror://sourceforge/icewm/${name}.tar.gz";
-    sha256 = "066d1mw0vm9ygxnyxksfi6k4vzclvnlkvj04pj3kbcmv1fg8sn0p";
+    url = "https://github.com/bbidulock/icewm/archive/${version}.tar.gz";
+    sha256 = "01i7a21gf810spmzjx32dxsmx4527qivs744rhvhaw4gr00amrns";
   };
 
-  NIX_LDFLAGS = "-lfontconfig";
-
-  # The fuloong2f is not supported by 1.3.6 still
-  #
-  # Don't know whether 1.3.7 supports fuloong2f and don't know how to test it
-  # on x86_64 hardware. So I left this 'cp' -- urkud
-
   preConfigure = ''
-    cp -v ${automake}/share/automake*/config.{sub,guess} .
+    export cmakeFlags="-DPREFIX=$out"
   '';
 
   meta = {
-    description = "A window manager for the X Window System";
+    description = "A simple, lightweight X window manager";
+    longDescription = ''
+      IceWM is a window manager for the X Window System. The goal of
+      IceWM is speed, simplicity, and not getting in the user's way.
+    '';
     homepage = http://www.icewm.org/;
-    platforms = stdenv.lib.platforms.unix;
+    license = licenses.lgpl2;
+    maintainers = [ maintainers.AndersonTorres ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/window-managers/ion-3/default.nix b/pkgs/applications/window-managers/ion-3/default.nix
index 7a467b1fcdb..f4199073077 100644
--- a/pkgs/applications/window-managers/ion-3/default.nix
+++ b/pkgs/applications/window-managers/ion-3/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, x11, lua, gettext, groff }:
+{ stdenv, fetchurl, xlibsWrapper, lua, gettext, groff }:
 
 stdenv.mkDerivation {
   name = "ion-3-20090110";
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
     url = http://tuomov.iki.fi/software/dl/ion-3-20090110.tar.gz;
     sha256 = "1nkks5a95986nyfkxvg2rik6zmwx0lh7szd5fji7yizccwzc9xns";
   };
-  buildInputs = [ x11 lua gettext groff ];
+  buildInputs = [ xlibsWrapper lua gettext groff ];
   buildFlags = "LUA_DIR=${lua} X11_PREFIX=/no-such-path PREFIX=\${out}";
   installFlags = "PREFIX=\${out}";
 }
diff --git a/pkgs/applications/window-managers/notion/default.nix b/pkgs/applications/window-managers/notion/default.nix
new file mode 100644
index 00000000000..2177d1a871f
--- /dev/null
+++ b/pkgs/applications/window-managers/notion/default.nix
@@ -0,0 +1,33 @@
+{
+  enableXft ? true, libXft ? null,
+  patches ? [],
+  stdenv, fetchurl,
+  lua, gettext, groff,
+  pkgconfig, busybox,
+  xlibsWrapper, libXinerama, libXrandr, libX11
+}:
+
+assert enableXft -> libXft != null;
+
+stdenv.mkDerivation {
+  name     = "notion";
+  version  = "3-2015061300";
+  meta = with stdenv.lib; {
+    description = "Tiling tabbed window manager, follow-on to the ion window manager";
+    homepage = http://notion.sourceforge.net;
+    platforms = platforms.linux;
+    license   = licenses.notion_lgpl;
+    maintainers = [maintainers.jfb];
+  };
+  src = fetchurl {
+    url = https://github.com/raboof/notion/archive/3-2015061300.tar.gz;
+    sha256 = "3c9d9f35a9fb0d17c263b76fe28f7a1a4a05b7d6140545524cc1effd98c5c305";
+  };
+
+  patches = patches ++ stdenv.lib.optional enableXft ./notion-xft_nixos.diff;
+  postPatch = "substituteInPlace system-autodetect.mk --replace '#PRELOAD_MODULES=1' 'PRELOAD_MODULES=1'";
+  buildInputs = [xlibsWrapper lua gettext groff pkgconfig busybox libXinerama libXrandr libX11] ++ stdenv.lib.optional enableXft libXft;
+
+  buildFlags = "LUA_DIR=${lua} X11_PREFIX=/no-such-path PREFIX=\${out}";
+  installFlags = "PREFIX=\${out}";
+}
diff --git a/pkgs/applications/window-managers/notion/notion-xft_nixos.diff b/pkgs/applications/window-managers/notion/notion-xft_nixos.diff
new file mode 100644
index 00000000000..542aa446c3f
--- /dev/null
+++ b/pkgs/applications/window-managers/notion/notion-xft_nixos.diff
@@ -0,0 +1,662 @@
+diff -ur notion-3-2015061300/de/brush.c notion-3-2015061300-PATCHED/de/brush.c
+--- notion-3-2015061300/de/brush.c	2015-06-13 10:37:26.000000000 -0400
++++ notion-3-2015061300-PATCHED/de/brush.c	2015-07-13 10:37:23.093298917 -0400
+@@ -48,6 +48,9 @@
+     
+     gr_stylespec_init(&brush->current_attr);
+     
++#ifdef XFT
++    brush->draw=NULL;
++#endif /* XFT */
+     style->usecount++;
+ 
+     if(!grbrush_init(&(brush->grbrush))){
+@@ -128,6 +131,10 @@
+ {
+     destyle_unref(brush->d);
+     brush->d=NULL;
++#ifdef XFT
++    if(brush->draw!=NULL)
++        XftDrawDestroy(brush->draw);
++#endif /* XFT */
+     gr_stylespec_unalloc(&brush->current_attr);
+     grbrush_deinit(&(brush->grbrush));
+ }
+@@ -139,6 +146,21 @@
+ }
+ 
+ 
++#ifdef XFT
++XftDraw *debrush_get_draw(DEBrush *brush, Drawable d)
++{
++    if(brush->draw==NULL)
++        brush->draw=XftDrawCreate(ioncore_g.dpy, d,
++                                  XftDEDefaultVisual(),
++                                  DefaultColormap(ioncore_g.dpy,
++                                  0));
++    else
++        XftDrawChange(brush->draw, d);
++
++    return brush->draw;
++}
++#endif
++
+ /*}}}*/
+ 
+ 
+diff -ur notion-3-2015061300/de/brush.h notion-3-2015061300-PATCHED/de/brush.h
+--- notion-3-2015061300/de/brush.h	2015-06-13 10:37:26.000000000 -0400
++++ notion-3-2015061300-PATCHED/de/brush.h	2015-07-13 10:37:23.096298747 -0400
+@@ -15,6 +15,10 @@
+ #include <ioncore/gr.h>
+ #include <ioncore/rectangle.h>
+ 
++#ifdef XFT
++#include <X11/Xft/Xft.h>
++#endif /* XFT */
++
+ INTRCLASS(DEBrush);
+ 
+ #include "style.h"
+@@ -33,6 +37,9 @@
+ DECLCLASS(DEBrush){
+     GrBrush grbrush;
+     DEStyle *d;
++#ifdef XFT
++    XftDraw *draw;
++#endif
+     DEBrushExtrasFn *extras_fn;
+     int indicator_w;
+     Window win;
+@@ -108,5 +115,8 @@
+ extern void debrush_fill_area(DEBrush *brush, const WRectangle *geom);
+ extern void debrush_clear_area(DEBrush *brush, const WRectangle *geom);
+ 
++#ifdef XFT
++XftDraw *debrush_get_draw(DEBrush *brush, Drawable d);
++#endif
+ 
+ #endif /* ION_DE_BRUSH_H */
+diff -ur notion-3-2015061300/de/colour.c notion-3-2015061300-PATCHED/de/colour.c
+--- notion-3-2015061300/de/colour.c	2015-06-13 10:37:26.000000000 -0400
++++ notion-3-2015061300-PATCHED/de/colour.c	2015-07-13 10:37:23.098298633 -0400
+@@ -12,9 +12,21 @@
+ 
+ bool de_alloc_colour(WRootWin *rootwin, DEColour *ret, const char *name)
+ {
++#ifndef XFT
+     XColor c;
+     bool ok=FALSE;
++#else /* XFT */
++    if(name==NULL)
++        return FALSE;
++    return XftColorAllocName(
++        ioncore_g.dpy,
++        XftDEDefaultVisual(),
++        rootwin->default_cmap,
++        name,
++        ret);
++#endif /* XFT */
+ 
++#ifndef XFT
+     if(name==NULL)
+         return FALSE;
+ 
+@@ -25,11 +37,13 @@
+     }
+     
+     return ok;
++#endif /* ! XFT */
+ }
+ 
+ 
+ bool de_duplicate_colour(WRootWin *rootwin, DEColour in, DEColour *out)
+ {
++#ifndef XFT
+     XColor c;
+     c.pixel=in;
+     XQueryColor(ioncore_g.dpy, rootwin->default_cmap, &c);
+@@ -38,11 +52,20 @@
+         return TRUE;
+     }
+     return FALSE;
++#else /* XFT */
++    return XftColorAllocName(
++        ioncore_g.dpy,
++        XftDEDefaultVisual(),
++        rootwin->default_cmap,
++        &(in.color),
++        out);
++#endif /* XFT */
+ }
+ 
+ 
+ void de_free_colour_group(WRootWin *rootwin, DEColourGroup *cg)
+ {
++#ifndef XFT
+     DEColour pixels[5];
+     
+     pixels[0]=cg->bg;
+@@ -54,15 +77,26 @@
+     XFreeColors(ioncore_g.dpy, rootwin->default_cmap, pixels, 5, 0);
+     
+     gr_stylespec_unalloc(&cg->spec);
++#else /* XFT */
++    de_free_colour(rootwin, cg->bg);
++    de_free_colour(rootwin, cg->fg);
++    de_free_colour(rootwin, cg->hl);
++    de_free_colour(rootwin, cg->sh);
++    de_free_colour(rootwin, cg->pad);
++#endif /* XFT */
+ }
+ 
+ 
+ void de_free_colour(WRootWin *rootwin, DEColour col)
+ {
++#ifndef XFT
+     DEColour pixels[1];
+     
+     pixels[0]=col;
+     
+     XFreeColors(ioncore_g.dpy, rootwin->default_cmap, pixels, 1, 0);
++#else /* XFT */
++    XftColorFree(ioncore_g.dpy, XftDEDefaultVisual(), rootwin->default_cmap, &col);
++#endif /* XFT */
+ }
+ 
+diff -ur notion-3-2015061300/de/colour.h notion-3-2015061300-PATCHED/de/colour.h
+--- notion-3-2015061300/de/colour.h	2015-06-13 10:37:26.000000000 -0400
++++ notion-3-2015061300-PATCHED/de/colour.h	2015-07-13 10:37:23.099298576 -0400
+@@ -12,12 +12,19 @@
+ #include <ioncore/common.h>
+ #include <ioncore/global.h>
+ #include <ioncore/rootwin.h>
++#ifdef XFT
++#include <X11/Xft/Xft.h>
++#endif /* XFT */
+ 
+ 
+ INTRSTRUCT(DEColourGroup);
+ 
+ 
++#ifndef XFT
+ typedef unsigned long DEColour;
++#else /* XFT */
++typedef XftColor DEColour;
++#endif /* XFT */
+ 
+ 
+ DECLSTRUCT(DEColourGroup){
+@@ -34,5 +41,6 @@
+ bool de_duplicate_colour(WRootWin *rootwin, DEColour in, DEColour *out);
+ void de_free_colour_group(WRootWin *rootwin, DEColourGroup *cg);
+ void de_free_colour(WRootWin *rootwin, DEColour col);
++#define XftDEDefaultVisual()    DefaultVisual(ioncore_g.dpy, 0)
+ 
+ #endif /* ION_DE_COLOUR_H */
+diff -ur notion-3-2015061300/de/draw.c notion-3-2015061300-PATCHED/de/draw.c
+--- notion-3-2015061300/de/draw.c	2015-06-13 10:37:26.000000000 -0400
++++ notion-3-2015061300-PATCHED/de/draw.c	2015-07-13 10:37:23.109298008 -0400
+@@ -20,6 +20,14 @@
+ #include <X11/extensions/shape.h>
+ 
+ 
++#ifndef XFT
++#define PIXEL(x) x
++#else /* XFT */
++#define PIXEL(x) x.pixel
++#endif /* XFT */
++
++
++
+ /*{{{ Colour group lookup */
+ 
+ 
+@@ -84,8 +92,7 @@
+     w--;
+     h--;
+ 
+-    XSetForeground(ioncore_g.dpy, gc, tlc);
+-
++    XSetForeground(ioncore_g.dpy, gc, PIXEL(tlc));
+     
+     a=(br!=0);
+     b=0;
+@@ -104,7 +111,7 @@
+     }
+ 
+     
+-    XSetForeground(ioncore_g.dpy, gc, brc);
++    XSetForeground(ioncore_g.dpy, gc, PIXEL(brc));
+ 
+     a=(tl!=0);
+     b=0;
+@@ -141,23 +148,23 @@
+                             GrBorderLine line)
+ {
+     if(line==GR_BORDERLINE_LEFT && geom->h>0 && tl>0){
+-        XSetForeground(ioncore_g.dpy, gc, tlc);
+-        XSetBackground(ioncore_g.dpy, gc, tlc);
++        XSetForeground(ioncore_g.dpy, gc, PIXEL(tlc));
++        XSetBackground(ioncore_g.dpy, gc, PIXEL(tlc));
+         XFillRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y, tl, geom->h);
+         geom->x+=tl;
+     }else if(line==GR_BORDERLINE_TOP && geom->w>0 && tl>0){
+-        XSetForeground(ioncore_g.dpy, gc, tlc);
+-        XSetBackground(ioncore_g.dpy, gc, tlc);
++        XSetForeground(ioncore_g.dpy, gc, PIXEL(tlc));
++        XSetBackground(ioncore_g.dpy, gc, PIXEL(tlc));
+         XFillRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y, geom->w, tl);
+         geom->y+=tl;
+     }else if(line==GR_BORDERLINE_RIGHT && geom->h>0 && br>0){
+-        XSetForeground(ioncore_g.dpy, gc, brc);
+-        XSetBackground(ioncore_g.dpy, gc, brc);
++        XSetForeground(ioncore_g.dpy, gc, PIXEL(brc));
++        XSetBackground(ioncore_g.dpy, gc, PIXEL(brc));
+         XFillRectangle(ioncore_g.dpy, win, gc, geom->x+geom->w-br, geom->y, br, geom->h);
+         geom->w-=br;
+     }else if(line==GR_BORDERLINE_BOTTOM && geom->w>0 && br>0){
+-        XSetForeground(ioncore_g.dpy, gc, brc);
+-        XSetBackground(ioncore_g.dpy, gc, brc);
++        XSetForeground(ioncore_g.dpy, gc, PIXEL(brc));
++        XSetBackground(ioncore_g.dpy, gc, PIXEL(brc));
+         XFillRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y+geom->h-br, geom->w, br);
+         geom->h-=br;
+     }
+@@ -388,7 +395,7 @@
+     }
+     
+     if(ISSET(a2, GR_ATTR(tagged)) || ISSET(a1, GR_ATTR(tagged))){
+-        XSetForeground(ioncore_g.dpy, d->copy_gc, cg->fg);
++        XSetForeground(ioncore_g.dpy, d->copy_gc, PIXEL(cg->fg));
+             
+         copy_masked(brush, d->tag_pixmap, brush->win, 0, 0,
+                     d->tag_pixmap_w, d->tag_pixmap_h,
+@@ -437,7 +444,7 @@
+     GC gc=brush->d->normal_gc;
+     
+     if(TRUE/*needfill*/){
+-        XSetForeground(ioncore_g.dpy, gc, cg->bg);
++        XSetForeground(ioncore_g.dpy, gc, PIXEL(cg->bg));
+         XFillRectangle(ioncore_g.dpy, brush->win, gc, geom->x, geom->y, 
+                        geom->w, geom->h);
+     }
+@@ -605,7 +612,7 @@
+         attr.background_pixmap=ParentRelative;
+     }else{
+         attrflags=CWBackPixel;
+-        attr.background_pixel=brush->d->cgrp.bg;
++        attr.background_pixel=brush->d->PIXEL(cgrp.bg);
+     }
+     
+     XChangeWindowAttributes(ioncore_g.dpy, brush->win, attrflags, &attr);
+@@ -621,7 +628,7 @@
+     if(cg==NULL)
+         return;
+     
+-    XSetForeground(ioncore_g.dpy, gc, cg->bg);
++    XSetForeground(ioncore_g.dpy, gc, PIXEL(cg->bg));
+     XFillRectangle(ioncore_g.dpy, brush->win, gc, 
+                    geom->x, geom->y, geom->w, geom->h);
+ }
+diff -ur notion-3-2015061300/de/font.c notion-3-2015061300-PATCHED/de/font.c
+--- notion-3-2015061300/de/font.c	2015-06-13 10:37:26.000000000 -0400
++++ notion-3-2015061300-PATCHED/de/font.c	2015-07-13 10:37:23.118297497 -0400
+@@ -13,7 +13,9 @@
+ #include <ioncore/common.h>
+ #include <ioncore/log.h>
+ #include "font.h"
++#ifndef XFT
+ #include "fontset.h"
++#endif /* ! XFT */
+ #include "brush.h"
+ #include "precompose.h"
+ 
+@@ -106,6 +108,9 @@
+ 
+ DEFont *de_load_font(const char *fontname)
+ {
++#ifdef XFT
++    XftFont *font;
++#endif
+     DEFont *fnt;
+     XFontSet fontset=NULL;
+     XFontStruct *fontstruct=NULL;
+@@ -120,7 +125,8 @@
+             return fnt;
+         }
+     }
+-    
++
++#ifndef XFT
+     if(ioncore_g.use_mb && !(ioncore_g.enc_utf8 && iso10646_font(fontname))){
+         LOG(DEBUG, FONT, "Loading fontset %s", fontname); 
+         fontset=de_create_font_set(fontname);
+@@ -149,13 +155,34 @@
+         return NULL;
+     }
+     
++#else /* XFT */
++    if(strncmp(fontname, "xft:", 4)==0){
++        font=XftFontOpenName(ioncore_g.dpy, DefaultScreen(ioncore_g.dpy),
++                 fontname+4);
++    }else{
++        font=XftFontOpenXlfd(ioncore_g.dpy, DefaultScreen(ioncore_g.dpy), fontname);
++    }
++    
++    if(font==NULL){
++        if(strcmp(fontname, CF_FALLBACK_FONT_NAME)!=0){
++            warn(TR("Could not load font \"%s\", trying \"%s\""),
++             fontname, CF_FALLBACK_FONT_NAME);
++            return de_load_font(CF_FALLBACK_FONT_NAME);
++        }
++        return NULL;
++    }
++#endif /* XFT */
+     fnt=ALLOC(DEFont);
+     
+     if(fnt==NULL)
+         return NULL;
+     
++#ifndef XFT
+     fnt->fontset=fontset;
+     fnt->fontstruct=fontstruct;
++#else
++    fnt->font=font;
++#endif
+     fnt->pattern=scopy(fontname);
+     fnt->next=NULL;
+     fnt->prev=NULL;
+@@ -175,11 +202,13 @@
+     style->font=font;
+     font->refcount++;
+     
++#ifndef XFT
+     if(style->font->fontstruct!=NULL){
+         XSetFont(ioncore_g.dpy, style->normal_gc, 
+                  style->font->fontstruct->fid);
+     }
+ 
++#endif /* ! XFT */
+     return TRUE;
+ }
+ 
+@@ -194,11 +223,13 @@
+     if(style->font==NULL)
+         return FALSE;
+     
++#ifndef XFT
+     if(style->font->fontstruct!=NULL){
+         XSetFont(ioncore_g.dpy, style->normal_gc, 
+                  style->font->fontstruct->fid);
+     }
+     
++#endif /* ! XFT */
+     return TRUE;
+ }
+ 
+@@ -208,10 +239,15 @@
+     if(--font->refcount!=0)
+         return;
+     
++#ifndef XFT
+     if(font->fontset!=NULL)
+         XFreeFontSet(ioncore_g.dpy, font->fontset);
+     if(font->fontstruct!=NULL)
+         XFreeFont(ioncore_g.dpy, font->fontstruct);
++#else /* XFT */
++    if(font->font!=NULL)
++        XftFontClose(ioncore_g.dpy, font->font);
++#endif /* XFT */
+     if(font->pattern!=NULL)
+         free(font->pattern);
+     
+@@ -239,6 +275,7 @@
+ 
+ void defont_get_font_extents(DEFont *font, GrFontExtents *fnte)
+ {
++#ifndef XFT
+     if(font->fontset!=NULL){
+         XFontSetExtents *ext=XExtentsOfFontSet(font->fontset);
+         if(ext==NULL)
+@@ -254,7 +291,14 @@
+         fnte->baseline=fnt->ascent;
+         return;
+     }
+-    
++#else /* XFT */
++    if(font->font!=NULL){
++        fnte->max_height=font->font->ascent+font->font->descent;
++        fnte->max_width=font->font->max_advance_width;
++        fnte->baseline=font->font->ascent;
++        return;
++    }
++#endif /* XFT */
+ fail:
+     DE_RESET_FONT_EXTENTS(fnte);
+ }
+@@ -271,6 +315,7 @@
+ 
+ uint defont_get_text_width(DEFont *font, const char *text, uint len)
+ {
++#ifndef XFT
+     if(font->fontset!=NULL){
+         XRectangle lext;
+ #ifdef CF_DE_USE_XUTF8
+@@ -298,6 +343,18 @@
+     }else{
+         return 0;
+     }
++#else /* XFT */
++    if(font->font!=NULL){
++        XGlyphInfo extents;
++        if(ioncore_g.enc_utf8)
++            XftTextExtentsUtf8(ioncore_g.dpy, font->font, (XftChar8 *)text, len, &extents);
++        else
++            XftTextExtents8(ioncore_g.dpy, font->font, (XftChar8 *)text, len, &extents);
++        return extents.xOff;
++    }else{
++        return 0;
++    }
++#endif /* XFT */
+ }
+ 
+ 
+@@ -307,6 +364,7 @@
+ /*{{{ String drawing */
+ 
+ 
++#ifndef XFT
+ void debrush_do_draw_string_default(DEBrush *brush, int x, int y,
+                                     const char *str, int len, bool needfill, 
+                                     DEColourGroup *colours)
+@@ -366,6 +424,43 @@
+     }
+ }
+ 
++#else /* XFT */
++void debrush_do_draw_string_default(DEBrush *brush, 
++                                    int x, int y, const char *str,
++                                    int len, bool needfill, 
++                                    DEColourGroup *colours)
++{
++    Window win = brush->win;
++    GC gc=brush->d->normal_gc;
++    XftDraw *draw;
++    XftFont *font;
++    
++    if(brush->d->font==NULL)
++        return;
++
++    font=brush->d->font->font;
++    draw=debrush_get_draw(brush, win);
++
++    if(needfill){
++        XGlyphInfo extents;
++        if(ioncore_g.enc_utf8){
++            XftTextExtentsUtf8(ioncore_g.dpy, font, (XftChar8 *)str, len,
++                               &extents);
++        }else{
++            XftTextExtents8(ioncore_g.dpy, font, (XftChar8 *)str, len, &extents);
++            XftDrawRect(draw, &(colours->bg), x-extents.x, y-extents.y,
++                        extents.width+10, extents.height);
++        }
++    }
++
++    if(ioncore_g.enc_utf8){
++        XftDrawStringUtf8(draw, &(colours->fg), font, x, y, (XftChar8 *)str,
++                          len);
++    }else{
++        XftDrawString8(draw, &(colours->fg), font, x, y, (XftChar8 *)str, len);
++    }
++}
++#endif /* XFT */
+ 
+ void debrush_do_draw_string(DEBrush *brush, int x, int y,
+                             const char *str, int len, bool needfill, 
+diff -ur notion-3-2015061300/de/font.h notion-3-2015061300-PATCHED/de/font.h
+--- notion-3-2015061300/de/font.h	2015-06-13 10:37:26.000000000 -0400
++++ notion-3-2015061300-PATCHED/de/font.h	2015-07-13 10:37:23.119297440 -0400
+@@ -12,6 +12,9 @@
+ 
+ #include <ioncore/common.h>
+ #include <ioncore/gr.h>
++#ifdef XFT
++#include <X11/Xft/Xft.h>
++#endif /* XFT */
+ 
+ INTRSTRUCT(DEFont);
+ 
+@@ -27,6 +30,9 @@
+     int refcount;
+     XFontSet fontset;
+     XFontStruct *fontstruct;
++#ifdef XFT /* XFT */
++    XftFont *font;
++#endif /* XFT */
+     DEFont *next, *prev;
+ };
+ 
+diff -ur notion-3-2015061300/de/init.c notion-3-2015061300-PATCHED/de/init.c
+--- notion-3-2015061300/de/init.c	2015-06-13 10:37:26.000000000 -0400
++++ notion-3-2015061300-PATCHED/de/init.c	2015-07-13 10:37:23.122297270 -0400
+@@ -165,17 +165,26 @@
+ {
+     bool bgset;
+     DEColour padinh;
+-    
++    DEColour black, white;
++
++#ifdef XFT
++    de_alloc_colour(rootwin, &black, "black");
++    de_alloc_colour(rootwin, &white, "white");
++#else
++    black=DE_BLACK(rootwin);
++    white=DE_WHITE(rootwin);
++#endif
++
+     de_get_colour(rootwin, &(cg->hl), tab, "highlight_colour",
+-                  (based_on ? based_on->cgrp.hl : DE_WHITE(rootwin)));
++                  (based_on ? based_on->cgrp.hl : white));
+     de_get_colour(rootwin, &(cg->sh), tab, "shadow_colour",
+-                  (based_on ? based_on->cgrp.sh : DE_WHITE(rootwin)));
++                  (based_on ? based_on->cgrp.sh : white));
+     de_get_colour(rootwin, &(cg->fg), tab, "foreground_colour",
+-                  (based_on ? based_on->cgrp.fg : DE_WHITE(rootwin)));
++                  (based_on ? based_on->cgrp.fg : white));
+     bgset=de_get_colour(rootwin, &(cg->bg), tab, "background_colour",
+-                        (based_on ? based_on->cgrp.bg : DE_BLACK(rootwin)));
++                        (based_on ? based_on->cgrp.bg : black));
+                         
+-    padinh=(based_on ? based_on->cgrp.pad : DE_WHITE(rootwin));
++    padinh=(based_on ? based_on->cgrp.pad : white);
+     
+     de_get_colour_(rootwin, &(cg->pad), tab, "padding_colour", 
+                    (bgset ? cg->bg : padinh), padinh);
+diff -ur notion-3-2015061300/de/style.c notion-3-2015061300-PATCHED/de/style.c
+--- notion-3-2015061300/de/style.c	2015-06-13 10:37:26.000000000 -0400
++++ notion-3-2015061300-PATCHED/de/style.c	2015-07-13 10:37:23.128296929 -0400
+@@ -70,10 +70,17 @@
+     /*gcv.function=GXclear;*/
+     gcv.stipple=stipple_pixmap;
+     gcvmask=GCFillStyle|GCStipple/*|GCFunction*/;
++#ifndef XFT
+     if(style->font!=NULL && style->font->fontstruct!=NULL){
+         gcv.font=style->font->fontstruct->fid;
+         gcvmask|=GCFont;
+     }
++#else /* XFT */
++//    if(style->font!=NULL){
++//        gcv.font=style->font;
++//        gcvmask|=GCFont;
++//    }
++#endif /* XFT */
+ 
+     style->stipple_gc=XCreateGC(dpy, root, gcvmask, &gcv);
+     XCopyGC(dpy, style->normal_gc, 
+@@ -201,6 +208,14 @@
+ 
+ bool destyle_init(DEStyle *style, WRootWin *rootwin, const char *name)
+ {
++    DEColour black, white;
++#ifdef XFT
++    de_alloc_colour(rootwin, &black, "black");
++    de_alloc_colour(rootwin, &white, "white");
++#else
++    black=DE_BLACK(rootwin);
++    white=DE_WHITE(rootwin);
++#endif /* XFT */
+     if(!gr_stylespec_load(&style->spec, name))
+         return FALSE;
+     
+@@ -223,11 +238,11 @@
+     style->textalign=DEALIGN_CENTER;
+ 
+     style->cgrp_alloced=FALSE;
+-    style->cgrp.bg=DE_BLACK(rootwin);
+-    style->cgrp.pad=DE_BLACK(rootwin);
+-    style->cgrp.fg=DE_WHITE(rootwin);
+-    style->cgrp.hl=DE_WHITE(rootwin);
+-    style->cgrp.sh=DE_WHITE(rootwin);
++    style->cgrp.bg=black;
++    style->cgrp.pad=black;
++    style->cgrp.fg=white;
++    style->cgrp.hl=white;
++    style->cgrp.sh=white;
+     gr_stylespec_init(&style->cgrp.spec);
+     
+     style->font=NULL;
+diff -ur notion-3-2015061300/de/style.h notion-3-2015061300-PATCHED/de/style.h
+--- notion-3-2015061300/de/style.h	2015-06-13 10:37:26.000000000 -0400
++++ notion-3-2015061300-PATCHED/de/style.h	2015-07-13 10:37:23.130296815 -0400
+@@ -80,6 +80,7 @@
+     Pixmap tag_pixmap;
+     int tag_pixmap_w;
+     int tag_pixmap_h;
++    int xft_style;
+     
+     DEStyle *next, *prev;
+ };
+diff -ur notion-3-2015061300/system-autodetect.mk notion-3-2015061300-PATCHED/system-autodetect.mk
+--- notion-3-2015061300/system-autodetect.mk	2015-06-13 10:37:26.000000000 -0400
++++ notion-3-2015061300-PATCHED/system-autodetect.mk	2015-07-13 10:38:14.921332013 -0400
+@@ -103,6 +103,19 @@
+ 
+ 
+ ##
++## Xft support
++##
++
++USE_XFT=1
++
++ifeq ($(USE_XFT),1)
++EXTRA_INCLUDES += `pkg-config xft --cflags`
++EXTRA_LIBS += `pkg-config xft --libs`
++DEFINES += -DXFT -DCF_FALLBACK_FONT_NAME=\"Sans\"
++endif
++
++
++##
+ ## Localisation
+ ##
+ 
diff --git a/pkgs/applications/window-managers/openbox/default.nix b/pkgs/applications/window-managers/openbox/default.nix
index 2756525b2b0..326cd2a49f4 100644
--- a/pkgs/applications/window-managers/openbox/default.nix
+++ b/pkgs/applications/window-managers/openbox/default.nix
@@ -1,20 +1,23 @@
 { stdenv, fetchurl, pkgconfig
 , libxml2, libXinerama, libXcursor, libXau, libXrandr
-, imlib2, pango, libstartup_notification, makeWrapper}:
+, imlib2, pango, libstartup_notification, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "openbox-3.5.2";
+  name = "openbox-3.6.1";
 
   buildInputs = [
     pkgconfig libxml2
     libXinerama libXcursor libXau libXrandr
-    imlib2 pango libstartup_notification
-    makeWrapper
+    libstartup_notification makeWrapper
+  ];
+
+  propagatedBuildInputs = [
+    pango imlib2
   ];
 
   src = fetchurl {
     url = "http://openbox.org/dist/openbox/${name}.tar.gz";
-    sha256 = "0cxgb334zj6aszwiki9g10i56sm18i7w1kw52vdnwgzq27pv93qj";
+    sha256 = "1xvyvqxlhy08n61rjkckmrzah2si1i7nmc7s8h07riqq01vc0jlb";
   };
 
   setlayoutSrc = fetchurl {
diff --git a/pkgs/applications/window-managers/oroborus/default.nix b/pkgs/applications/window-managers/oroborus/default.nix
new file mode 100644
index 00000000000..226b33be060
--- /dev/null
+++ b/pkgs/applications/window-managers/oroborus/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, pkgconfig
+, freetype, fribidi
+, libSM, libICE, libXt, libXaw, libXmu
+, libXext, libXft, libXpm, libXrandr
+, libXrender, xextproto, libXinerama }:
+
+with stdenv.lib;
+stdenv.mkDerivation rec {
+
+  name = "oroborus-${version}";
+  version = "2.0.20";
+
+  buildInputs = [ pkgconfig freetype fribidi libSM libICE libXt libXaw libXmu libXext libXft libXpm libXrandr libXrender xextproto libXinerama ];
+
+  src = fetchurl {
+    url = "http://ftp.debian.org/debian/pool/main/o/oroborus/oroborus_${version}.tar.gz";
+    sha256 = "12bvk8x8rfnymbfbwmdcrd9g8m1zxbcq7rgvfdkjr0gnpi0aa82j";
+  };
+
+  meta = {
+    description = "A really minimalistic X window manager";
+    homepage = http://www.oroborus.org/;
+    license = licenses.gpl2Plus;
+    maintainers = [ maintainers.AndersonTorres ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/window-managers/qtile/default.nix b/pkgs/applications/window-managers/qtile/default.nix
new file mode 100644
index 00000000000..236baa131c9
--- /dev/null
+++ b/pkgs/applications/window-managers/qtile/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, fetchFromGitHub, buildPythonPackage, python27Packages, pkgs }:
+
+buildPythonPackage rec {
+  name = "qtile-${version}";
+  version = "0.10.1";
+
+  src = fetchFromGitHub {
+    owner = "qtile";
+    repo = "qtile";
+    rev = "v${version}";
+    sha256 = "1g02lvk2cqy6w6y6nw6dnsmy4i9k4fyawyibpkf0a7a1nfrd6a99";
+  };
+
+  patches = [ ./restart_executable.patch ];
+
+  postPatch = ''
+    substituteInPlace libqtile/manager.py --subst-var-by out $out
+  '';
+
+  buildInputs = [ pkgs.pkgconfig pkgs.glib pkgs.xorg.libxcb pkgs.cairo pkgs.pango python27Packages.xcffib ];
+
+  cairocffi-xcffib = python27Packages.cairocffi.override {
+    LD_LIBRARY_PATH = "${pkgs.xorg.libxcb}/lib:${pkgs.cairo}/lib";
+    pythonPath = [ python27Packages.xcffib ];
+  };
+
+  pythonPath = with python27Packages; [ xcffib cairocffi-xcffib trollius readline ];
+
+  LD_LIBRARY_PATH = "${pkgs.xorg.libxcb}/lib:${pkgs.cairo}/lib";
+
+  postInstall = ''
+    wrapProgram $out/bin/qtile \
+      --prefix LD_LIBRARY_PATH : ${pkgs.xorg.libxcb}/lib \
+      --prefix LD_LIBRARY_PATH : ${pkgs.glib}/lib \
+      --prefix LD_LIBRARY_PATH : ${pkgs.cairo}/lib \
+      --prefix LD_LIBRARY_PATH : ${pkgs.pango}/lib
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://www.qtile.org/;
+    license = licenses.mit;
+    description = "A small, flexible, scriptable tiling window manager written in Python";
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ kamilchm ];
+  };
+}
+
diff --git a/pkgs/applications/window-managers/qtile/restart_executable.patch b/pkgs/applications/window-managers/qtile/restart_executable.patch
new file mode 100644
index 00000000000..a1e74a575d9
--- /dev/null
+++ b/pkgs/applications/window-managers/qtile/restart_executable.patch
@@ -0,0 +1,12 @@
+diff -ruP a/libqtile/manager.py b/libqtile/manager.py
+--- a/libqtile/manager.py	2015-07-26 21:26:16.947976520 +0200
++++ b/libqtile/manager.py	2015-07-26 21:37:45.581316712 +0200
+@@ -1262,7 +1262,7 @@
+         argv = [s for s in argv if not s.startswith('--with-state')]
+         argv.append('--with-state=' + buf.getvalue().decode())
+ 
+-        self.cmd_execute(sys.executable, argv)
++        self.cmd_execute("@out@/bin/qtile", argv[1:])
+ 
+     def cmd_spawn(self, cmd):
+         """
diff --git a/pkgs/applications/window-managers/spectrwm/default.nix b/pkgs/applications/window-managers/spectrwm/default.nix
index ad6fcddf5be..39825e37f30 100644
--- a/pkgs/applications/window-managers/spectrwm/default.nix
+++ b/pkgs/applications/window-managers/spectrwm/default.nix
@@ -15,13 +15,14 @@
 
 stdenv.mkDerivation rec {
   name = "spectrwm-${version}";
-  version = "2.6.2";
+  version = "2.7.2";
 
   src = fetchurl {
-    url = "https://github.com/conformal/spectrwm/archive/SPECTRWM_2_6_2.tar.gz";
-    sha256 = "1pc9p3vwa4bsv76myqkqhp4cxspr72s5igi7cs9xrpd4xx6xc90s";
+    url = "https://github.com/conformal/spectrwm/archive/SPECTRWM_2_7_2.tar.gz";
+    sha256 = "1yssqnhxlfl1b60gziqp8c5pzs1lr8p6anrnp9ga1zfdql3b7993";
   };
 
+
   buildInputs = [
     libX11
     libxcb
@@ -35,7 +36,7 @@ stdenv.mkDerivation rec {
     xcbutilwm
   ];
 
-  sourceRoot = "spectrwm-SPECTRWM_2_6_2/linux";
+  sourceRoot = "spectrwm-SPECTRWM_2_7_2/linux";
   makeFlags="PREFIX=$(out)";
   installPhase = "PREFIX=$out make install";
 
diff --git a/pkgs/applications/window-managers/stumpwm/default.nix b/pkgs/applications/window-managers/stumpwm/default.nix
index fe62b8250ae..88faae64be7 100644
--- a/pkgs/applications/window-managers/stumpwm/default.nix
+++ b/pkgs/applications/window-managers/stumpwm/default.nix
@@ -41,6 +41,8 @@ stdenv.mkDerivation rec {
 
   preBuild = ''
     cp -r --no-preserve=mode ${contrib} modules
+    substituteInPlace  head.lisp \
+      --replace 'run-shell-command "xdpyinfo' 'run-shell-command "${xdpyinfo}/bin/xdpyinfo'
   '';
 
   installPhase = ''
@@ -69,7 +71,7 @@ stdenv.mkDerivation rec {
     description = "A tiling window manager for X11";
     homepage    = https://github.com/stumpwm/;
     license     = licenses.gpl2Plus;
-    maintainers = with maintainers; [ _1126 the-kenny ];
+    maintainers = with maintainers; [ hiberno the-kenny ];
     platforms   = platforms.linux;
   };
 }
diff --git a/pkgs/applications/window-managers/tabbed/default.nix b/pkgs/applications/window-managers/tabbed/default.nix
index 2dec3b2241f..a7e2059cd04 100644
--- a/pkgs/applications/window-managers/tabbed/default.nix
+++ b/pkgs/applications/window-managers/tabbed/default.nix
@@ -1,28 +1,29 @@
-{stdenv, fetchhg, xproto, libX11, patches ? []}:
+{stdenv, fetchgit, xproto, libX11, enableXft, libXft}:
+
+with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "tabbed-20120209";
- 
-  src = fetchhg {
-    url = http://hg.suckless.org/tabbed;
-    rev = "d7542a6f6dc5";
-    sha256 = "1963jsazfmh5k7923c1mfwppz1xbh48z16j0sa64fiscq22as2gj";
+  name = "tabbed-20150509";
+
+  src = fetchgit {
+    url = http://git.suckless.org/tabbed;
+    rev = "55dc32b27b73c121cab18009bf087e95ef3d9c18";
+    sha256 = "0c5ayf1lrb1xiz5h8dfd4mh05kas42zzi5m5ylrvl67sfz3z4wg1";
   };
 
-  # Allow users set their own list of patches
-  inherit patches;
+  patches = optional enableXft ./xft.patch;
 
-  buildInputs = [ xproto libX11 ];
+  buildInputs = [ xproto libX11 ] ++ optional enableXft libXft;
 
   preInstall = ''
     export makeFlags="PREFIX=$out"
   '';
- 
+
   meta = {
     homepage = http://tools.suckless.org/tabbed;
     description = "Simple generic tabbed fronted to xembed aware applications";
-    license="MIT";
-    maintainers = with stdenv.lib.maintainers; [viric];
-    platforms = with stdenv.lib.platforms; linux;
+    license = licenses.mit;
+    maintainers = with maintainers; [ viric ];
+    platforms = with platforms; linux;
   };
 }
diff --git a/pkgs/applications/window-managers/tabbed/xft.patch b/pkgs/applications/window-managers/tabbed/xft.patch
new file mode 100644
index 00000000000..f4f1e82e705
--- /dev/null
+++ b/pkgs/applications/window-managers/tabbed/xft.patch
@@ -0,0 +1,234 @@
+diff --git a/config.def.h b/config.def.h
+index b3da7f0..ce43686 100644
+--- a/config.def.h
++++ b/config.def.h
+@@ -1,7 +1,7 @@
+ /* See LICENSE file for copyright and license details. */
+ 
+ /* appearance */
+-static const char font[]        = "-*-*-medium-*-*-*-14-*-*-*-*-*-*-*";
++static const char font[]        = "monospace-9";
+ static const char* normbgcolor  = "#222222";
+ static const char* normfgcolor  = "#cccccc";
+ static const char* selbgcolor   = "#555555";
+diff --git a/config.mk b/config.mk
+index dd741e4..ed3a2e9 100644
+--- a/config.mk
++++ b/config.mk
+@@ -9,7 +9,7 @@ MANPREFIX = ${PREFIX}/share/man
+ 
+ # includes and libs
+ INCS = -I. -I/usr/include
+-LIBS = -L/usr/lib -lc -lX11
++LIBS = -L/usr/lib -lc -lXft -lX11
+ 
+ # flags
+ CPPFLAGS = -DVERSION=\"${VERSION}\" -D_DEFAULT_SOURCE
+diff --git a/tabbed.c b/tabbed.c
+index b15f9cb..6e50c41 100644
+--- a/tabbed.c
++++ b/tabbed.c
+@@ -15,6 +15,7 @@
+ #include <X11/Xproto.h>
+ #include <X11/Xutil.h>
+ #include <X11/XKBlib.h>
++#include <X11/Xft/Xft.h>
+ 
+ #include "arg.h"
+ 
+@@ -64,17 +65,16 @@ typedef struct {
+ 
+ typedef struct {
+ 	int x, y, w, h;
+-	unsigned long norm[ColLast];
+-	unsigned long sel[ColLast];
+-	unsigned long urg[ColLast];
++	XftColor norm[ColLast];
++	XftColor sel[ColLast];
++	XftColor urg[ColLast];
+ 	Drawable drawable;
+ 	GC gc;
+ 	struct {
+ 		int ascent;
+ 		int descent;
+ 		int height;
+-		XFontSet set;
+-		XFontStruct *xfont;
++		XftFont *xfont;
+ 	} font;
+ } DC; /* draw context */
+ 
+@@ -97,7 +97,7 @@ static void unmapnotify(const XEvent *e);
+ static void destroynotify(const XEvent *e);
+ static void die(const char *errstr, ...);
+ static void drawbar(void);
+-static void drawtext(const char *text, unsigned long col[ColLast]);
++static void drawtext(const char *text, XftColor col[ColLast]);
+ static void *ecalloc(size_t n, size_t size);
+ static void *erealloc(void *o, size_t size);
+ static void expose(const XEvent *e);
+@@ -107,7 +107,7 @@ static void focusonce(const Arg *arg);
+ static void fullscreen(const Arg *arg);
+ static char* getatom(int a);
+ static int getclient(Window w);
+-static unsigned long getcolor(const char *colstr);
++static XftColor getcolor(const char *colstr);
+ static int getfirsttab(void);
+ static Bool gettextprop(Window w, Atom atom, char *text, unsigned int size);
+ static void initfont(const char *fontstr);
+@@ -220,12 +220,6 @@ cleanup(void) {
+ 	free(clients);
+ 	clients = NULL;
+ 
+-	if(dc.font.set) {
+-		XFreeFontSet(dpy, dc.font.set);
+-	} else {
+-		XFreeFont(dpy, dc.font.xfont);
+-	}
+-
+ 	XFreePixmap(dpy, dc.drawable);
+ 	XFreeGC(dpy, dc.gc);
+ 	XDestroyWindow(dpy, win);
+@@ -315,7 +309,7 @@ die(const char *errstr, ...) {
+ 
+ void
+ drawbar(void) {
+-	unsigned long *col;
++	XftColor *col;
+ 	int c, cc, fc, width;
+ 	char *name = NULL;
+ 
+@@ -368,12 +362,13 @@ drawbar(void) {
+ }
+ 
+ void
+-drawtext(const char *text, unsigned long col[ColLast]) {
++drawtext(const char *text, XftColor col[ColLast]) {
+ 	int i, x, y, h, len, olen;
+ 	char buf[256];
++	XftDraw *d;
+ 	XRectangle r = { dc.x, dc.y, dc.w, dc.h };
+ 
+-	XSetForeground(dpy, dc.gc, col[ColBG]);
++	XSetForeground(dpy, dc.gc, col[ColBG].pixel);
+ 	XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
+ 	if(!text)
+ 		return;
+@@ -394,13 +389,12 @@ drawtext(const char *text, unsigned long col[ColLast]) {
+ 		for(i = len; i && i > len - 3; buf[--i] = '.');
+ 	}
+ 
+-	XSetForeground(dpy, dc.gc, col[ColFG]);
+-	if(dc.font.set) {
+-		XmbDrawString(dpy, dc.drawable, dc.font.set,
+-				dc.gc, x, y, buf, len);
+-	} else {
+-		XDrawString(dpy, dc.drawable, dc.gc, x, y, buf, len);
+-	}
++	XSetForeground(dpy, dc.gc, col[ColFG].pixel);
++
++	d = XftDrawCreate(dpy, dc.drawable, DefaultVisual(dpy, screen), DefaultColormap(dpy,screen));
++
++	XftDrawStringUtf8(d, &col[ColFG], dc.font.xfont, x, y, (XftChar8 *) buf, len);
++	XftDrawDestroy(d);
+ }
+ 
+ void *
+@@ -537,15 +531,14 @@ getclient(Window w) {
+ 	return -1;
+ }
+ 
+-unsigned long
++XftColor
+ getcolor(const char *colstr) {
+-	Colormap cmap = DefaultColormap(dpy, screen);
+-	XColor color;
++	XftColor color;
+ 
+-	if(!XAllocNamedColor(dpy, cmap, colstr, &color, &color))
++	if(!XftColorAllocName(dpy, DefaultVisual(dpy, screen), DefaultColormap(dpy, screen), colstr, &color))
+ 		die("tabbed: cannot allocate color '%s'\n", colstr);
+ 
+-	return color.pixel;
++	return color;
+ }
+ 
+ int
+@@ -594,41 +587,11 @@ gettextprop(Window w, Atom atom, char *text, unsigned int size) {
+ 
+ void
+ initfont(const char *fontstr) {
+-	char *def, **missing, **font_names;
+-	int i, n;
+-	XFontStruct **xfonts;
+-
+-	missing = NULL;
+-	if(dc.font.set)
+-		XFreeFontSet(dpy, dc.font.set);
+-
+-	dc.font.set = XCreateFontSet(dpy, fontstr, &missing, &n, &def);
+-	if(missing) {
+-		while(n--)
+-			fprintf(stderr, "tabbed: missing fontset: %s\n", missing[n]);
+-		XFreeStringList(missing);
+-	}
+-
+-	if(dc.font.set) {
+-		dc.font.ascent = dc.font.descent = 0;
+-		n = XFontsOfFontSet(dc.font.set, &xfonts, &font_names);
+-		for(i = 0, dc.font.ascent = 0, dc.font.descent = 0; i < n; i++) {
+-			dc.font.ascent = MAX(dc.font.ascent, (*xfonts)->ascent);
+-			dc.font.descent = MAX(dc.font.descent,(*xfonts)->descent);
+-			xfonts++;
+-		}
+-	} else {
+-		if(dc.font.xfont)
+-			XFreeFont(dpy, dc.font.xfont);
+-		dc.font.xfont = NULL;
+-		if(!(dc.font.xfont = XLoadQueryFont(dpy, fontstr))
+-				&& !(dc.font.xfont = XLoadQueryFont(dpy, "fixed"))) {
+-			die("tabbed: cannot load font: '%s'\n", fontstr);
+-		}
++	if(!(dc.font.xfont = XftFontOpenName(dpy,screen,fontstr)) && !(dc.font.xfont = XftFontOpenName(dpy,screen,"fixed")))
++		die("error, cannot load font: '%s'\n", fontstr);
+ 
+-		dc.font.ascent = dc.font.xfont->ascent;
+-		dc.font.descent = dc.font.xfont->descent;
+-	}
++	dc.font.ascent = dc.font.xfont->ascent;
++	dc.font.descent = dc.font.xfont->descent;
+ 	dc.font.height = dc.font.ascent + dc.font.descent;
+ }
+ 
+@@ -1000,11 +963,9 @@ setup(void) {
+ 	dc.drawable = XCreatePixmap(dpy, root, ww, wh,
+ 			DefaultDepth(dpy, screen));
+ 	dc.gc = XCreateGC(dpy, root, 0, 0);
+-	if(!dc.font.set)
+-		XSetFont(dpy, dc.gc, dc.font.xfont->fid);
+ 
+ 	win = XCreateSimpleWindow(dpy, root, wx, wy, ww, wh, 0,
+-			dc.norm[ColFG], dc.norm[ColBG]);
++			dc.norm[ColFG].pixel, dc.norm[ColBG].pixel);
+ 	XMapRaised(dpy, win);
+ 	XSelectInput(dpy, win, SubstructureNotifyMask|FocusChangeMask|
+ 			ButtonPressMask|ExposureMask|KeyPressMask|PropertyChangeMask|
+@@ -1070,15 +1031,9 @@ spawn(const Arg *arg) {
+ 
+ int
+ textnw(const char *text, unsigned int len) {
+-	XRectangle r;
+-
+-	if(dc.font.set) {
+-		XmbTextExtents(dc.font.set, text, len, NULL, &r);
+-
+-		return r.width;
+-	}
+-
+-	return XTextWidth(dc.font.xfont, text, len);
++	XGlyphInfo ext;
++	XftTextExtentsUtf8(dpy, dc.font.xfont, (XftChar8 *) text, len, &ext);
++	return ext.xOff;
+ }
+ 
+ void
diff --git a/pkgs/applications/window-managers/taffybar/default.nix b/pkgs/applications/window-managers/taffybar/default.nix
new file mode 100644
index 00000000000..66e880197bb
--- /dev/null
+++ b/pkgs/applications/window-managers/taffybar/default.nix
@@ -0,0 +1,15 @@
+{ stdenv, ghcWithPackages, xmessage, makeWrapper, packages ? (x: []) }:
+
+let
+taffybarEnv = ghcWithPackages (self: [ self.taffybar ] ++ packages self);
+in stdenv.mkDerivation {
+  name = "taffybar-with-packages";
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildCommand = ''
+    mkdir -p $out/bin
+    makeWrapper ${taffybarEnv}/bin/taffybar $out/bin/taffybar \
+      --set NIX_GHC "${taffybarEnv}/bin/ghc"
+  '';
+}
diff --git a/pkgs/applications/window-managers/vwm/default.nix b/pkgs/applications/window-managers/vwm/default.nix
index 3613bb21ff6..1e6b53446aa 100644
--- a/pkgs/applications/window-managers/vwm/default.nix
+++ b/pkgs/applications/window-managers/vwm/default.nix
@@ -22,11 +22,11 @@ stdenv.mkDerivation rec {
  
   buildInputs = [ ncurses pkgconfig glib libviper libpseudo gpm libvterm ];
  
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://vwm.sourceforge.net/;
     description = "Dynamic window manager for the console";
-    license="GPLv2+";
-    maintainers = with stdenv.lib.maintainers; [viric];
-    platforms = with stdenv.lib.platforms; linux;
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ viric ];
+    platforms = with platforms; linux;
   };
 }
diff --git a/pkgs/applications/window-managers/weston/default.nix b/pkgs/applications/window-managers/weston/default.nix
index 9b88400ef53..862e8b0ea01 100644
--- a/pkgs/applications/window-managers/weston/default.nix
+++ b/pkgs/applications/window-managers/weston/default.nix
@@ -1,20 +1,22 @@
 { stdenv, fetchurl, pkgconfig, wayland, mesa, libxkbcommon, cairo, libxcb
-, libXcursor, x11, udev, libdrm, mtdev, libjpeg, pam, dbus, libinput
+, libXcursor, xlibsWrapper, udev, libdrm, mtdev, libjpeg, pam, dbus, libinput
 , pango ? null, libunwind ? null, freerdp ? null, vaapi ? null, libva ? null
 , libwebp ? null, xwayland ? null
 # beware of null defaults, as the parameters *are* supplied by callPackage by default
 }:
 
 stdenv.mkDerivation rec {
-  name = "weston-${wayland.version}";
+  name = "weston-${version}";
+  version = "1.9.0";
 
   src = fetchurl {
     url = "http://wayland.freedesktop.org/releases/${name}.tar.xz";
-    sha256 = "1kb6a494j56sh7iy43xwkjlr3bh0nnkq4bkimwj6qirzbya12i8w";
+    sha256 = "1ks8mja6glzy2dkayi535hd6w5c5h021bqk7vzgv182g33rh66ww";
   };
 
+  nativeBuildInputs = [ pkgconfig ];
   buildInputs = [
-    pkgconfig wayland mesa libxkbcommon cairo libxcb libXcursor x11 udev libdrm
+    wayland mesa libxkbcommon cairo libxcb libXcursor xlibsWrapper udev libdrm
     mtdev libjpeg pam dbus.libs libinput pango libunwind freerdp vaapi libva
     libwebp
   ];
diff --git a/pkgs/applications/window-managers/wmii-hg/default.nix b/pkgs/applications/window-managers/wmii-hg/default.nix
new file mode 100644
index 00000000000..a7d492a05dc
--- /dev/null
+++ b/pkgs/applications/window-managers/wmii-hg/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, fetchhg, pkgconfig, libixp_hg, txt2tags, dash, python
+, libX11 , libXrender, libXext, libXinerama, libXrandr, libXft }:
+
+stdenv.mkDerivation rec {
+  rev = "2823";
+  version = "hg-2012-12-09";
+  name = "wmii-${version}";
+
+  src = fetchhg {
+    url = https://code.google.com/p/wmii/;
+    sha256 = "1wqw41jb2fhq902a04ixfzmx0lia1pawahm1ymyrs3is6mm32r51";
+    inherit rev;
+  };
+
+  # for dlopen-ing
+  patchPhase = ''
+    substituteInPlace lib/libstuff/x11/xft.c --replace "libXft.so" "${libXft}/lib/libXft.so"
+  '';
+
+  configurePhase = ''
+    for file in $(grep -lr '#!.*sh'); do
+      sed -i 's|#!.*sh|#!${dash}/bin/dash|' $file
+    done
+
+    cat <<EOF >> config.mk
+    PREFIX = $out
+    LIBIXP = ${libixp_hg}/lib/libixp.a
+    BINSH = ${dash}/bin/dash
+    EOF
+  '';
+
+  buildInputs = [ pkgconfig libixp_hg txt2tags dash python
+                  libX11 libXrender libXext libXinerama libXrandr libXft ];
+
+  # For some reason including mercurial in buildInputs did not help
+  makeFlags = "WMII_HGVERSION=hg${rev}";
+
+  meta = {
+    homepage = "https://code.google.com/p/wmii/";
+    description = "A small window manager controlled by a 9P filesystem";
+    maintainers = with stdenv.lib.maintainers; [ kovirobi ];
+    license = stdenv.lib.licenses.mit;
+    inherit version;
+  };
+}
diff --git a/pkgs/applications/window-managers/wmii/default.nix b/pkgs/applications/window-managers/wmii/default.nix
deleted file mode 100644
index a44c54f7b57..00000000000
--- a/pkgs/applications/window-managers/wmii/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-args: with args; stdenv.mkDerivation {
-  name = "wmii-3.6";
-
-  src = fetchurl {
-    url = http://dl.suckless.org/wmii/wmii-3.6.tar.gz;
-    sha256 = "46f39b788c5ef4695040b36cc7d9c539db0306bafc4d8cefdc5980ed4331b216";
-  };
-
-  buildInputs = [ libX11 libixp xextproto libXt libXext ];
-  inherit libixp;
-
-  phases = "unpackPhase installPhase";
-
-  installPhase = "
-     for i in libfmt libutf libregexp libbio; do
-       cd $i; make; cd ..
-     done
-     mkdir -p \$out/lib
-     cp ${libixp}/lib/libixp.a \$out/lib
-     export CFLAGS=\$NIX_CFLAGS_COMPILE
-     export LDFLAGS\=$(echo \$NIX_LDFLAGS | sed -e 's/-rpath/-L/g')
-     sed -i -e \"s%^PREFIX.*%PREFIX=\$out%\" \\
-            -e \"s%^\\(INCS.*\\)%\\1 \$NIX_CFLAGS_COMPILE%\" \\
-            -e \"s%^\\(LIBS.*\\)%\\1 \$LDFLAGS%\" \\
-            -e 's%^\\(AWKPATH = \\).*%\\1${gawk}/bin/gawk%' \\
-            config.mk
-     # don't use the default one installed by nixos!
-     #sed -i -e \"s%ixpc%\$libixp/bin/ixpc%\" wmiir
-     make install
-  ";
-  meta = { homepage = "www.suckless.org";
-           description = "a really cool window manager which can by driven by keyboard only";
-           license="MIT";
-         };
-}
diff --git a/pkgs/applications/window-managers/wmii31/default.nix b/pkgs/applications/window-managers/wmii31/default.nix
deleted file mode 100644
index dd49cf5ec43..00000000000
--- a/pkgs/applications/window-managers/wmii31/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-args: with args; stdenv.mkDerivation {
-  name = "wmiimenu-3.1";
-
-  src = fetchurl {
-    url = http://dl.suckless.org/wmii/wmii-3.1.tar.gz;
-    sha256 = "0sviwxbanpsfdm55zvx9hflncw35slkz41xr517y3yfgxx6qlhlk";
-  };
-
-  buildInputs = [ libX11 libixp ];
-  inherit libixp;
- 
-  phases = "unpackPhase installPhase";
-
-  installPhase = "
-     export CFLAGS=\$NIX_CFLAGS_COMPILE
-     export LDFLAGS\=$(echo \$NIX_LDFLAGS | sed -e 's/-rpath/-L/g')
-     sed -i -e \"s%^PREFIX.*%PREFIX=\$out%\" \\
-            -e \"s%^\\(INCS.*\\)%\\1 \$NIX_CFLAGS_COMPILE%\" \\
-            -e \"s%^\\(LIBS.*\\)%\\1 \$LDFLAGS%\" \\
-            config.mk
-     # don't use the default one installed by nixos!
-     # sed -i -e \"s%ixpc%\$libixp/bin/ixpc%\" wmiir
-
-     # This will fail but wmiimenu has been built (hack!)
-     set +e
-     make &> /dev/null
-     set -e
-     mkdir -p \$out/bin
-     cp cmd/wmiimenu \$out/bin
-  ";
-  meta = { homepage = "www.suckless.org";
-           description = "One small tool of the wmii window manger to let the user select an item from a list by filtering";
-           license="MIT";
-         };
-}
diff --git a/pkgs/applications/window-managers/xcompmgr/default.nix b/pkgs/applications/window-managers/xcompmgr/default.nix
deleted file mode 100644
index 930b612f691..00000000000
--- a/pkgs/applications/window-managers/xcompmgr/default.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, libXcomposite, libXfixes, libXdamage
-, libXrender, libXext }:
-stdenv.mkDerivation rec {
-  name = "xcompmgr-1.1.6";
-  src = fetchurl {
-    url = "mirror://xorg/individual/app/${name}.tar.bz2";
-    sha256 = "c98949d36793b30ed1ed47495c87a05fa245ac0fc2857d2abc54979124687c02";
-  };
-  buildInputs = [ pkgconfig libXcomposite libXfixes libXdamage libXrender libXext ];
-  meta = {
-    homepage = http://www.x.org/;
-    description = "A sample compositing manager for X servers";
-    longDescription = ''
-      A sample compositing manager for X servers supporting the XFIXES,
-      DAMAGE, RENDER, and COMPOSITE extensions.  It enables basic eye-candy
-      effects.
-    '';
-    license = "bsd";
-    maintainers = with stdenv.lib.maintainers; [ astsmtl ];
-    platforms = with stdenv.lib.platforms; linux;
-  };
-}
diff --git a/pkgs/applications/window-managers/xmonad/default.nix b/pkgs/applications/window-managers/xmonad/default.nix
deleted file mode 100644
index 16b0ac365a2..00000000000
--- a/pkgs/applications/window-managers/xmonad/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, extensibleExceptions, filepath, mtl, utf8String, X11 }:
-
-cabal.mkDerivation (self: {
-  pname = "xmonad";
-  version = "0.11";
-  sha256 = "1nsv88y2b206n3s5hrsp5ginvz1bj818ns7jmikavb2g33akdgg5";
-  isLibrary = true;
-  isExecutable = true;
-  buildDepends = [
-    extensibleExceptions filepath mtl utf8String X11
-  ];
-  postInstall = ''
-    shopt -s globstar
-    mkdir -p $out/share/man/man1
-    mv "$out/"**"/man/"*.1 $out/share/man/man1/
-  '';
-  patches = [
-    # Patch to make xmonad use XMONAD_{GHC,XMESSAGE} (if available).
-    ../../../development/haskell-modules/xmonad-nix.patch
-  ];
-  meta = {
-    homepage = "http://xmonad.org";
-    description = "A tiling window manager";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-    maintainers = [ self.stdenv.lib.maintainers.andres ];
-  };
-})
diff --git a/pkgs/applications/window-managers/xmonad/wrapper.nix b/pkgs/applications/window-managers/xmonad/wrapper.nix
index cb02a214d5b..e8dc0b1fdac 100644
--- a/pkgs/applications/window-managers/xmonad/wrapper.nix
+++ b/pkgs/applications/window-managers/xmonad/wrapper.nix
@@ -13,4 +13,8 @@ in stdenv.mkDerivation {
       --set NIX_GHC "${xmonadEnv}/bin/ghc" \
       --set XMONAD_XMESSAGE "${xmessage}/bin/xmessage"
   '';
+
+  # trivial derivation
+  preferLocalBuild = true;
+  allowSubstitutes = false;
 }
diff --git a/pkgs/applications/window-managers/xmonad/xmonad-contrib.nix b/pkgs/applications/window-managers/xmonad/xmonad-contrib.nix
deleted file mode 100644
index 086d80963d8..00000000000
--- a/pkgs/applications/window-managers/xmonad/xmonad-contrib.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, extensibleExceptions, mtl, random, utf8String, X11, X11Xft
-, xmonad
-}:
-
-cabal.mkDerivation (self: {
-  pname = "xmonad-contrib";
-  version = "0.11.3";
-  sha256 = "14h9vr33yljymswj50wbimav263y9abdcgi07mvfis0zd08rxqxa";
-  buildDepends = [
-    extensibleExceptions mtl random utf8String X11 X11Xft xmonad
-  ];
-  meta = {
-    homepage = "http://xmonad.org/";
-    description = "Third party extensions for xmonad";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-    maintainers = with self.stdenv.lib.maintainers; [ simons ];
-  };
-})
diff --git a/pkgs/applications/window-managers/xmonad/xmonad-extras.nix b/pkgs/applications/window-managers/xmonad/xmonad-extras.nix
deleted file mode 100644
index 87ee4994e45..00000000000
--- a/pkgs/applications/window-managers/xmonad/xmonad-extras.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, hint, libmpd, mtl, network, parsec, random, regexPosix
-, split, X11, xmonad, xmonadContrib
-}:
-
-cabal.mkDerivation (self: {
-  pname = "xmonad-extras";
-  version = "0.12";
-  sha256 = "1gyj9j6x21rvs6kg6g74wr0jdd36c5ml63a670456fhjr96s8y0g";
-  buildDepends = [
-    hint libmpd mtl network parsec random regexPosix split X11 xmonad
-    xmonadContrib
-  ];
-  configureFlags = "-f-with_hlist -fwith_split -fwith_parsec";
-  jailbreak = true;
-  meta = {
-    homepage = "http://projects.haskell.org/xmonad-extras";
-    description = "Third party extensions for xmonad with wacky dependencies";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-    maintainers = with self.stdenv.lib.maintainers; [ simons ];
-  };
-})