about summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/audio/ardour/default.nix4
-rw-r--r--pkgs/applications/audio/cmus/default.nix15
-rw-r--r--pkgs/applications/audio/csound/default.nix6
-rw-r--r--pkgs/applications/audio/drumgizmo/default.nix28
-rw-r--r--pkgs/applications/audio/faust-compiler/default.nix101
-rw-r--r--pkgs/applications/audio/faust/default.nix79
-rw-r--r--pkgs/applications/audio/gpodder/default.nix18
-rw-r--r--pkgs/applications/audio/gtkpod/default.nix7
-rw-r--r--pkgs/applications/audio/guitarix/default.nix4
-rw-r--r--pkgs/applications/audio/praat/default.nix7
-rw-r--r--pkgs/applications/audio/qtractor/default.nix4
-rw-r--r--pkgs/applications/audio/tomahawk/default.nix48
-rw-r--r--pkgs/applications/audio/vimus/default.nix29
-rw-r--r--pkgs/applications/backup/crashplan/default.nix4
-rw-r--r--pkgs/applications/editors/atom/default.nix6
-rw-r--r--pkgs/applications/editors/emacs-24/macport-24.4.nix4
-rw-r--r--pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/default.nix9
-rw-r--r--pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/fix-build.patch10
-rw-r--r--pkgs/applications/editors/emacs-modes/js2/default.nix6
-rw-r--r--pkgs/applications/editors/emacs-modes/rainbow-delimiters/default.nix4
-rw-r--r--pkgs/applications/editors/idea/default.nix27
-rw-r--r--pkgs/applications/editors/neovim/default.nix65
-rw-r--r--pkgs/applications/editors/sublime3/default.nix4
-rw-r--r--pkgs/applications/editors/vim/configurable.nix8
-rw-r--r--pkgs/applications/editors/vim/default.nix6
-rw-r--r--pkgs/applications/editors/vim/ft-nix-support.patch34
-rw-r--r--pkgs/applications/editors/vim/qvim.nix11
-rw-r--r--pkgs/applications/gis/saga/default.nix11
-rw-r--r--pkgs/applications/graphics/ImageMagick/default.nix2
-rw-r--r--pkgs/applications/graphics/digikam/default.nix4
-rw-r--r--pkgs/applications/graphics/openimageio/default.nix4
-rw-r--r--pkgs/applications/graphics/sane/backends.nix4
-rw-r--r--pkgs/applications/graphics/sane/xsane.nix1
-rw-r--r--pkgs/applications/graphics/shotwell/default.nix10
-rw-r--r--pkgs/applications/graphics/sxiv/default.nix9
-rw-r--r--pkgs/applications/graphics/synfigstudio/default.nix4
-rw-r--r--pkgs/applications/graphics/yed/default.nix29
-rw-r--r--pkgs/applications/misc/calibre/default.nix4
-rw-r--r--pkgs/applications/misc/doomseeker/default.nix1
-rw-r--r--pkgs/applications/misc/eaglemode/default.nix8
-rw-r--r--pkgs/applications/misc/epdfview/default.nix14
-rw-r--r--pkgs/applications/misc/epdfview/glib-top-level-header.patch12
-rw-r--r--pkgs/applications/misc/gammu/default.nix6
-rw-r--r--pkgs/applications/misc/girara/default.nix27
-rw-r--r--pkgs/applications/misc/gosmore/default.nix38
-rw-r--r--pkgs/applications/misc/hello/ex-2/default.nix6
-rw-r--r--pkgs/applications/misc/llpp/default.nix82
-rw-r--r--pkgs/applications/misc/pcmanfm/default.nix6
-rw-r--r--pkgs/applications/misc/redshift/default.nix4
-rw-r--r--pkgs/applications/misc/slic3r/default.nix13
-rw-r--r--pkgs/applications/misc/slic3r/fix-no-display.patch59
-rw-r--r--pkgs/applications/misc/sqliteman/default.nix31
-rw-r--r--pkgs/applications/misc/synergy/default.nix17
-rw-r--r--pkgs/applications/misc/tilda/default.nix4
-rw-r--r--pkgs/applications/misc/xrandr-invert-colors/default.nix26
-rw-r--r--pkgs/applications/networking/browsers/chromium/browser.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix3
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix17
-rw-r--r--pkgs/applications/networking/browsers/chromium/plugins.nix51
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/missing_alg_import.patch11
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths.patch99
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/sources.nix24
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/default.nix5
-rw-r--r--pkgs/applications/networking/browsers/firefox/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix7
-rw-r--r--pkgs/applications/networking/browsers/rekonq/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/kubernetes/default.nix37
-rw-r--r--pkgs/applications/networking/dropbox/default.nix6
-rw-r--r--pkgs/applications/networking/ids/daq/default.nix4
-rw-r--r--pkgs/applications/networking/ids/snort/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/gajim/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/mcabber/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin/default.nix7
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin/wrapper.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/teamspeak/client.nix6
-rw-r--r--pkgs/applications/networking/irc/konversation/default.nix4
-rw-r--r--pkgs/applications/networking/jmeter/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/alpine/default.nix38
-rw-r--r--pkgs/applications/networking/mailreaders/imapfilter.nix6
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/default.nix22
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/default.nix17
-rw-r--r--pkgs/applications/networking/mailreaders/realpine/default.nix39
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix5
-rw-r--r--pkgs/applications/networking/owncloud-client/default.nix32
-rw-r--r--pkgs/applications/networking/p2p/mldonkey/default.nix1
-rw-r--r--pkgs/applications/networking/p2p/twister/default.nix6
-rw-r--r--pkgs/applications/networking/pond/default.nix32
-rw-r--r--pkgs/applications/networking/pond/deps.nix60
-rw-r--r--pkgs/applications/office/calligra/default.nix4
-rw-r--r--pkgs/applications/office/zim/default.nix7
-rw-r--r--pkgs/applications/science/astronomy/stellarium/default.nix6
-rw-r--r--pkgs/applications/science/logic/coq/HEAD.nix6
-rw-r--r--pkgs/applications/science/logic/hol_light/Makefile.patch13
-rw-r--r--pkgs/applications/science/logic/hol_light/default.nix6
-rw-r--r--pkgs/applications/science/math/R/setup-hook.sh2
-rw-r--r--pkgs/applications/version-management/git-and-tools/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-extras/default.nix23
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/default.nix9
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/ssl-cert-file.patch13
-rw-r--r--pkgs/applications/version-management/gource/default.nix15
-rw-r--r--pkgs/applications/version-management/mr/default.nix55
-rw-r--r--pkgs/applications/version-management/src/default.nix38
-rw-r--r--pkgs/applications/version-management/src/path.patch30
-rw-r--r--pkgs/applications/version-management/subversion/default.nix10
-rw-r--r--pkgs/applications/video/aegisub/default.nix28
-rw-r--r--pkgs/applications/video/makemkv/default.nix11
-rw-r--r--pkgs/applications/video/mpv/default.nix17
-rw-r--r--pkgs/applications/virtualization/bochs/default.nix12
-rw-r--r--pkgs/applications/virtualization/docker/default.nix4
-rw-r--r--pkgs/applications/virtualization/virtualbox/default.nix36
-rw-r--r--pkgs/applications/virtualization/virtualbox/hardened.patch26
113 files changed, 1445 insertions, 495 deletions
diff --git a/pkgs/applications/audio/ardour/default.nix b/pkgs/applications/audio/ardour/default.nix
index 62b88cbe0775..5180be3c940c 100644
--- a/pkgs/applications/audio/ardour/default.nix
+++ b/pkgs/applications/audio/ardour/default.nix
@@ -6,7 +6,7 @@
 , perl, pkgconfig, python, serd, sord, sratom, suil }:
 
 let
-  tag = "3.5.380";
+  tag = "3.5.403";
 in
 
 stdenv.mkDerivation rec {
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   src = fetchgit {
     url = git://git.ardour.org/ardour/ardour.git;
     rev = "refs/tags/${tag}";
-    sha256 = "dbcbb2d9143e196d079c27b15266e47d24b81cb7591fe64b717f3485965ded7b";
+    sha256 = "7d7c8e2c7ccccca6c8324fd874509e1b0d89f3f42cb92982c50d212797463f4c";
   };
 
   buildInputs = 
diff --git a/pkgs/applications/audio/cmus/default.nix b/pkgs/applications/audio/cmus/default.nix
index 4f9c491a3a59..7cabc98ebaa9 100644
--- a/pkgs/applications/audio/cmus/default.nix
+++ b/pkgs/applications/audio/cmus/default.nix
@@ -1,21 +1,22 @@
-{ stdenv, fetchurl, ncurses, pkgconfig, alsaLib, flac, libmad, ffmpeg, libvorbis, mpc, mp4v2 }:
+{ stdenv, fetchgit, ncurses, pkgconfig, alsaLib, flac, libmad, ffmpeg, libvorbis, mpc, mp4v2, libcue, pulseaudio}:
 
 stdenv.mkDerivation rec {
   name = "cmus-${version}";
-  version = "2.5.0";
+  version = "2.6.0";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/cmus/cmus-v${version}.tar.bz2";
-    sha256 = "1pwd3jifv12yr0yr77hsv5c9y8ay6kn2b5a3s5i8v2c882vgl890";
+  src = fetchgit {
+    url = https://github.com/cmus/cmus.git;
+    rev = "46b71032da827d22d4fae5bf2afcc4c9afef568c";
+    sha256 = "1hkqifll5ryf3ljp3w1dxz1p8m6rk34fpazc6vwavis6ga310hka";
   };
 
   configurePhase = "./configure prefix=$out";
 
-  buildInputs = [ ncurses pkgconfig alsaLib flac libmad ffmpeg libvorbis mpc mp4v2 ];
+  buildInputs = [ ncurses pkgconfig alsaLib flac libmad ffmpeg libvorbis mpc mp4v2 libcue pulseaudio ];
 
   meta = {
     description = "Small, fast and powerful console music player for Linux and *BSD";
-    homepage = http://cmus.sourceforge.net;
+    homepage = https://cmus.github.io/;
     license = stdenv.lib.licenses.gpl2;
   };
 }
diff --git a/pkgs/applications/audio/csound/default.nix b/pkgs/applications/audio/csound/default.nix
index 19c590330f65..64f3f3586a36 100644
--- a/pkgs/applications/audio/csound/default.nix
+++ b/pkgs/applications/audio/csound/default.nix
@@ -12,13 +12,13 @@
 }:
 
 stdenv.mkDerivation {
-  name = "csound-5.19.01";
+  name = "csound-6.03.2";
 
   enableParallelBuilding = true;
 
   src = fetchurl {
-    url = mirror://sourceforge/csound/Csound5.19.01.tar.gz;
-    sha256 = "078i69jwgadmxwa5ffn8h1py7cmd9asa8swnh38fyp56lzgzn669";
+    url = mirror://sourceforge/csound/Csound6.03.2.tar.gz;
+    sha256 = "0w6ij57dbfjljpf05bb9r91jphwaq1v63rh0713vl2n11d73dy7m";
   };
 
   buildInputs = [ cmake libsndfile flex bison alsaLib pulseaudio tcltk ];
diff --git a/pkgs/applications/audio/drumgizmo/default.nix b/pkgs/applications/audio/drumgizmo/default.nix
new file mode 100644
index 000000000000..2daafda554e7
--- /dev/null
+++ b/pkgs/applications/audio/drumgizmo/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchurl, alsaLib, expat, glib, jack2, libX11, libpng
+, libpthreadstubs, libsmf, libsndfile, lv2, pkgconfig
+}:
+
+stdenv.mkDerivation rec {
+  version = "0.9.6";
+  name = "drumgizmo-${version}";
+
+  src = fetchurl {
+    url = "http://www.drumgizmo.org/releases/${name}/${name}.tar.gz";
+    sha256 = "1qs8aa1v8cw5zgfzcnr2dc4w0y5yzsgrywlnx2hfvx2si3as0mw4";
+  };
+
+  configureFlags = [ "--enable-lv2" ];
+
+  buildInputs = [
+    alsaLib expat glib jack2 libX11 libpng libpthreadstubs libsmf
+    libsndfile lv2 pkgconfig
+  ];
+
+  meta = with stdenv.lib; {
+    description = "An LV2 sample based drum plugin";
+    homepage = http://www.drumgizmo.org;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.goibhniu ];
+  };
+}
diff --git a/pkgs/applications/audio/faust-compiler/default.nix b/pkgs/applications/audio/faust-compiler/default.nix
new file mode 100644
index 000000000000..5e980691df6d
--- /dev/null
+++ b/pkgs/applications/audio/faust-compiler/default.nix
@@ -0,0 +1,101 @@
+{ fetchurl, stdenv, unzip, pkgconfig, makeWrapper, libsndfile, libmicrohttpd, vim }:
+
+stdenv.mkDerivation rec {
+
+  version = "0.9.67";
+  name = "faust-compiler-${version}";
+  src = fetchurl {
+    url = "http://downloads.sourceforge.net/project/faudiostream/faust-${version}.zip";
+    sha256 = "068vl9536zn0j4pknwfcchzi90rx5pk64wbcbd67z32w0csx8xm1";
+  };
+
+  buildInputs = [ unzip pkgconfig makeWrapper libsndfile libmicrohttpd vim];
+
+
+  makeFlags="PREFIX = $(out)";
+  FPATH="$out"; # <- where to search
+
+  patchPhase = ''
+    sed -i 's@?= $(shell uname -s)@:= Linux@g'  architecture/osclib/oscpack/Makefile
+    sed -i 's@faust/misc.h@../../architecture/faust/misc.h@g' tools/sound2faust/sound2faust.cpp
+    sed -i 's@faust/gui/@../../architecture/faust/gui/@g' architecture/faust/misc.h
+    '';
+
+  buildPhase = ''
+    make -C compiler -f Makefile.unix
+    make -C architecture/osclib
+	g++ -O3 tools/sound2faust/sound2faust.cpp `pkg-config --cflags --static --libs sndfile` -o tools/sound2faust/sound2faust
+    make httpd
+
+  '';
+
+  installPhase = ''
+
+    echo install faust itself
+    mkdir -p $out/bin/
+    mkdir -p $out/include/
+	mkdir -p $out/include/faust/
+	mkdir -p $out/include/faust/osc/
+    install compiler/faust $out/bin/
+
+    echo install architecture and faust library files
+    mkdir -p $out/lib/faust
+    cp architecture/*.lib $out/lib/faust/
+    cp architecture/*.cpp $out/lib/faust/
+
+    echo install math documentation files
+	cp architecture/mathdoctexts-*.txt $out/lib/faust/
+	cp architecture/latexheader.tex $out/lib/faust/
+
+    echo install additional binary libraries: osc, http
+	([ -e architecture/httpdlib/libHTTPDFaust.a ] && cp architecture/httpdlib/libHTTPDFaust.a $out/lib/faust/) || echo libHTTPDFaust not available	
+	cp architecture/osclib/*.a $out/lib/faust/
+	cp -r architecture/httpdlib/html/js $out/lib/faust/js
+	([ -e architecture/httpdlib/src/hexa/stylesheet ] && cp architecture/httpdlib/src/hexa/stylesheet $out/lib/faust/js/stylesheet.js) || echo stylesheet not available
+	([ -e architecture/httpdlib/src/hexa/jsscripts ] && cp architecture/httpdlib/src/hexa/jsscripts $out/lib/faust/js/jsscripts.js) || echo jsscripts not available
+
+    echo install includes files for architectures
+	cp -r architecture/faust $out/include/
+
+    echo install additional includes files for binary libraries:  osc, http
+	cp architecture/osclib/faust/faust/OSCControler.h $out/include/faust/gui/
+	cp architecture/osclib/faust/faust/osc/*.h $out/include/faust/osc/
+	cp architecture/httpdlib/src/include/*.h $out/include/faust/gui/
+
+
+    echo patch header and cpp files
+    find $out/include/ -name "*.h" -type f | xargs sed "s@#include \"faust/@#include \"$out/include/faust/@g" -i
+    find $out/lib/faust/ -name "*.cpp" -type f | xargs sed "s@#include \"faust/@#include \"$out/include/faust/@g" -i
+    sed -i "s@../../architecture/faust/gui/@$out/include/faust/gui/@g"  $out/include/faust/misc.h
+
+    wrapProgram $out/bin/faust \
+    --set FAUSTLIB $out/lib/faust \
+    --set FAUST_LIB_PATH  $out/lib/faust \
+    --set FAUSTINC $out/include/
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A functional programming language for realtime audio signal processing";
+    longDescription = ''
+      FAUST (Functional Audio Stream) is a functional programming
+      language specifically designed for real-time signal processing
+      and synthesis. FAUST targets high-performance signal processing
+      applications and audio plug-ins for a variety of platforms and
+      standards.
+      The Faust compiler translates DSP specifications into very
+      efficient C++ code. Thanks to the notion of architecture,
+      FAUST programs can be easily deployed on a large variety of
+      audio platforms and plugin formats (jack, alsa, ladspa, maxmsp,
+      puredata, csound, supercollider, pure, vst, coreaudio) without
+      any change to the FAUST code.
+      This package has just the compiler. Install faust for the full
+      set of faust2somethingElse tools.
+    '';
+    homepage = http://faust.grame.fr/;
+    downloadPage = http://sourceforge.net/projects/faudiostream/files/;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.magnetophon ];
+  };
+}
+
diff --git a/pkgs/applications/audio/faust/default.nix b/pkgs/applications/audio/faust/default.nix
new file mode 100644
index 000000000000..9d25573ccc81
--- /dev/null
+++ b/pkgs/applications/audio/faust/default.nix
@@ -0,0 +1,79 @@
+{ fetchurl, stdenv, bash, alsaLib, atk, cairo, faust-compiler, fontconfig, freetype
+, gcc, gdk_pixbuf, glib, gtk, makeWrapper, pango, pkgconfig, unzip
+, gtkSupport ? true
+}:
+
+stdenv.mkDerivation rec {
+
+  version = "0.9.67";
+  name = "faust-${version}";
+  src = fetchurl {
+    url = "http://downloads.sourceforge.net/project/faudiostream/faust-${version}.zip";
+    sha256 = "068vl9536zn0j4pknwfcchzi90rx5pk64wbcbd67z32w0csx8xm1";
+  };
+
+  buildInputs = [ bash unzip faust-compiler gcc makeWrapper pkgconfig ]
+    ++ stdenv.lib.optionals gtkSupport [
+      alsaLib atk cairo fontconfig freetype gdk_pixbuf glib gtk pango
+    ]
+  ;
+
+  makeFlags="PREFIX=$(out)";
+  FPATH="$out"; # <- where to search
+
+  phases = [ "unpackPhase installPhase postInstall" ];
+
+  installPhase  = ''
+    mkdir $out/bin
+    install tools/faust2appls/faust2alsaconsole $out/bin
+    install tools/faust2appls/faustpath  $out/bin
+    install tools/faust2appls/faustoptflags  $out/bin
+    install tools/faust2appls/faust2alsa $out/bin
+
+    wrapProgram $out/bin/faust2alsaconsole \
+    --prefix PKG_CONFIG_PATH : ${alsaLib}/lib/pkgconfig \
+    --set FAUSTLIB ${faust-compiler}/lib/faust \
+    --set FAUSTINC ${faust-compiler}/include/
+
+    GTK_PKGCONFIG_PATHS=${gtk}/lib/pkgconfig:${pango}/lib/pkgconfig:${glib}/lib/pkgconfig:${cairo}/lib/pkgconfig:${gdk_pixbuf}/lib/pkgconfig:${atk}/lib/pkgconfig:${freetype}/lib/pkgconfig:${fontconfig}/lib/pkgconfig
+
+    wrapProgram  $out/bin/faust2alsa \
+    --prefix PKG_CONFIG_PATH :  ${alsaLib}/lib/pkgconfig:$GTK_PKGCONFIG_PATHS \
+    --set FAUSTLIB ${faust-compiler}/lib/faust \
+    --set FAUSTINC ${faust-compiler}/include/ \
+    '' + stdenv.lib.optionalString (!gtkSupport) "rm $out/bin/faust2alsa"
+  ;
+
+  postInstall = ''
+    find $out/bin/ -name "faust2*" -type f | xargs sed "s@/bin/bash@${bash}/bin/bash@g" -i
+    sed -i "s@/bin/bash@${bash}/bin/bash@g" $out/bin/faustpath
+    sed -e "s@\$FAUST_INSTALL /usr/local /usr /opt /opt/local@${faust-compiler}@g" -i $out/bin/faustpath
+    sed -i "s@/bin/bash@${bash}/bin/bash@g" $out/bin/faustoptflags
+    find $out/bin/ -name "faust2*" -type f | xargs sed "s@pkg-config@${pkgconfig}/bin/pkg-config@g" -i
+    find $out/bin/ -name "faust2*" -type f | xargs sed "s@CXX=g++@CXX=${gcc}/bin/g++@g" -i
+    find $out/bin/ -name "faust2*" -type f | xargs sed "s@faust -i -a @${faust-compiler}/bin/faust -i -a ${faust-compiler}/lib/faust/@g" -i
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A functional programming language for realtime audio signal processing";
+    longDescription = ''
+      FAUST (Functional Audio Stream) is a functional programming
+      language specifically designed for real-time signal processing
+      and synthesis. FAUST targets high-performance signal processing
+      applications and audio plug-ins for a variety of platforms and
+      standards.
+      The Faust compiler translates DSP specifications into very
+      efficient C++ code. Thanks to the notion of architecture,
+      FAUST programs can be easily deployed on a large variety of
+      audio platforms and plugin formats (jack, alsa, ladspa, maxmsp,
+      puredata, csound, supercollider, pure, vst, coreaudio) without
+      any change to the FAUST code.
+    '';
+    homepage = http://faust.grame.fr/;
+    downloadPage = http://sourceforge.net/projects/faudiostream/files/;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.magnetophon ];
+  };
+}
+
diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix
index ebe847353dd9..e8c14a9c763d 100644
--- a/pkgs/applications/audio/gpodder/default.nix
+++ b/pkgs/applications/audio/gpodder/default.nix
@@ -1,6 +1,5 @@
 { pkgs, stdenv, fetchurl, python, buildPythonPackage, pythonPackages, mygpoclient, intltool,
-  ipodSupport ? true, libgpod, gpodderHome ? "", gpodderDownloadDir ? "",
-  gnome3, hicolor_icon_theme }:
+  ipodSupport ? true, libgpod, gnome3, hicolor_icon_theme }:
 
 with pkgs.lib;
 
@@ -8,20 +7,23 @@ let
   inherit (pythonPackages) coverage feedparser minimock sqlite3 dbus pygtk eyeD3;
 
 in buildPythonPackage rec {
-  name = "gpodder-3.8.0";
+  name = "gpodder-3.8.3";
 
   src = fetchurl {
     url = "http://gpodder.org/src/${name}.tar.gz";
-    sha256 = "0731f08f4270c81872b841b55200ae80feb4502706397d0085079471fb9a8fe4";
+    sha256 = "8ac120a6084bded6bc88ecadbbc9df54a85f44ef4507f73a76de1d7a5574303c";
   };
 
   buildInputs = [
     coverage feedparser minimock sqlite3 mygpoclient intltool
-    gnome3.gnome_icon_theme gnome3.gnome_icon_theme_symbolic
-    hicolor_icon_theme
+    gnome3.gnome_themes_standard gnome3.gnome_icon_theme
+    gnome3.gnome_icon_theme_symbolic hicolor_icon_theme
+    gnome3.gsettings_desktop_schemas
   ];
 
-  propagatedBuildInputs = [ feedparser dbus mygpoclient sqlite3 pygtk eyeD3 ]
+  propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
+
+  pythonPath = [ feedparser dbus mygpoclient sqlite3 pygtk eyeD3 ]
     ++ stdenv.lib.optional ipodSupport libgpod;
 
   postPatch = "sed -ie 's/PYTHONPATH=src/PYTHONPATH=\$(PYTHONPATH):src/' makefile";
@@ -30,8 +32,6 @@ in buildPythonPackage rec {
 
   preFixup = ''
     wrapProgram $out/bin/gpodder \
-      ${optionalString (gpodderHome != "") "--set GPODDER_HOME ${gpodderHome}"} \
-      ${optionalString (gpodderDownloadDir != "") "--set GPODDER_DOWNLOAD_DIR ${gpodderDownloadDir}"} \
       --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
   '';
 
diff --git a/pkgs/applications/audio/gtkpod/default.nix b/pkgs/applications/audio/gtkpod/default.nix
index 80a7cf52cd8d..9c08b2ab6d7d 100644
--- a/pkgs/applications/audio/gtkpod/default.nix
+++ b/pkgs/applications/audio/gtkpod/default.nix
@@ -1,11 +1,8 @@
 { stdenv, fetchurl, pkgconfig, makeWrapper, intltool, libgpod, curl, flac,
-  gnome3_12, gtk3, glib, gettext, perl, perlXMLParser , libglade, flex, libid3tag,
+  gnome, gtk3, glib, gettext, perl, perlXMLParser, flex, libglade, libid3tag,
   libvorbis, hicolor_icon_theme, gdk_pixbuf }:
 
-let
-  gnome = gnome3_12;
-
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   version = "2.1.4";
   name = "gtkpod-${version}";
 
diff --git a/pkgs/applications/audio/guitarix/default.nix b/pkgs/applications/audio/guitarix/default.nix
index 5e88da8f856e..c4ba88c87edf 100644
--- a/pkgs/applications/audio/guitarix/default.nix
+++ b/pkgs/applications/audio/guitarix/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "guitarix-${version}";
-  version = "0.31.0";
+  version = "0.32.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/guitarix/guitarix2-${version}.tar.bz2";
-    sha256 = "0n3swk4xahspf42qglikfmvcz8my43wmp6sp4ns7h4m8hr9lgfk6";
+    sha256 = "06qxydcba1ga1l19kyqy0mk141mv6pa4wbkyh75xbwhyr65bwkc4";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/audio/praat/default.nix b/pkgs/applications/audio/praat/default.nix
index 86c68d087b77..354a3e43616d 100644
--- a/pkgs/applications/audio/praat/default.nix
+++ b/pkgs/applications/audio/praat/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchurl, alsaLib, gtk, pkgconfig }:
 
+let version = "5401"; in
 stdenv.mkDerivation {
-  name = "praat-5365";
+  name = "praat-${version}";
 
   src = fetchurl {
-    url = http://www.fon.hum.uva.nl/praat/praat5365_sources.tar.gz;
-    sha256 = "1w3mcq0mipx88i7ckhvzhmdj0p67nhppnn7kbkp21d01yyyz5rgq";
+    url = "http://www.fon.hum.uva.nl/praat/praat${version}_sources.tar.gz";
+    sha256 = "1hx0simc0hp5w5scyaiw8h8lrpafra4h1zy1jn1kzb0299yd06n3";
   };
 
   configurePhase = ''
diff --git a/pkgs/applications/audio/qtractor/default.nix b/pkgs/applications/audio/qtractor/default.nix
index 561a72bb38ba..079703d40ae3 100644
--- a/pkgs/applications/audio/qtractor/default.nix
+++ b/pkgs/applications/audio/qtractor/default.nix
@@ -3,12 +3,12 @@
 , libtool, libvorbis, pkgconfig, qt4, rubberband, stdenv }:
 
 stdenv.mkDerivation rec {
-  version = "0.6.3";
+  version = "0.6.4";
   name = "qtractor-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/qtractor/${name}.tar.gz";
-    sha256 = "1lsmd83vhgfzb3bf02hi6xp5ryh08lz4h21agy7wm3acjqc6gsc2";
+    sha256 = "1wgm9cx9mrxgd69kdabh78vb3nlyhhfbpd5k4g9s15ifny9cgwz4";
   };
 
   buildInputs =
diff --git a/pkgs/applications/audio/tomahawk/default.nix b/pkgs/applications/audio/tomahawk/default.nix
new file mode 100644
index 000000000000..fec93f0183d9
--- /dev/null
+++ b/pkgs/applications/audio/tomahawk/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchurl, cmake, pkgconfig, attica, boost, gnutls, libechonest
+, liblastfm, lucenepp, phonon, phonon_backend_vlc, qca2, qjson, qt4, qtkeychain
+, quazip, sparsehash, taglib, websocketpp
+
+, enableXMPP      ? true,  libjreen     ? null
+, enableKDE       ? false, kdelibs      ? null
+, enableTelepathy ? false, telepathy_qt ? null
+}:
+
+assert enableXMPP      -> libjreen     != null;
+assert enableKDE       -> kdelibs      != null;
+assert enableTelepathy -> telepathy_qt != null;
+
+let
+  quazipQt4 = quazip.override { qt = qt4; };
+in stdenv.mkDerivation rec {
+  name = "tomahawk-${version}";
+  version = "0.8.1";
+
+  src = fetchurl {
+    url = "http://download.tomahawk-player.org/tomahawk-0.8.1.tar.bz2";
+    sha256 = "0ca6fah30a2s8nnlryav95wyzhwys1ikjfwakrqf2hb0y5aczdpw";
+  };
+
+  cmakeFlags = [
+    "-DLUCENEPP_INCLUDE_DIR=${lucenepp}/include"
+    "-DLUCENEPP_LIBRARY_DIR=${lucenepp}/lib"
+  ];
+
+  buildInputs = [
+    cmake pkgconfig attica boost gnutls libechonest liblastfm lucenepp phonon
+    qca2 qjson qt4 qtkeychain quazipQt4 sparsehash taglib websocketpp
+  ] ++ stdenv.lib.optional enableXMPP      libjreen
+    ++ stdenv.lib.optional enableKDE       kdelibs
+    ++ stdenv.lib.optional enableTelepathy telepathy_qt;
+
+  propagatedBuildInputs = [ phonon_backend_vlc ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "A multi-source music player";
+    homepage = "http://tomahawk-player.org/";
+    license = licenses.gpl3Plus;
+    platforms = platforms.all;
+    maintainers = [ maintainers.aszlig ];
+  };
+}
diff --git a/pkgs/applications/audio/vimus/default.nix b/pkgs/applications/audio/vimus/default.nix
new file mode 100644
index 000000000000..6bd51760e884
--- /dev/null
+++ b/pkgs/applications/audio/vimus/default.nix
@@ -0,0 +1,29 @@
+# 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 ];
+  };
+})
diff --git a/pkgs/applications/backup/crashplan/default.nix b/pkgs/applications/backup/crashplan/default.nix
index 8359c0dbc392..1a78dea21578 100644
--- a/pkgs/applications/backup/crashplan/default.nix
+++ b/pkgs/applications/backup/crashplan/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, makeWrapper, jre, cpio, gawk, gnugrep, gnused, procps, swt, gtk2, glib, libXtst }:
 
-let version = "3.6.3";
+let version = "3.6.4";
 
 in stdenv.mkDerivation rec {
   name = "crashplan-${version}";
 
   crashPlanArchive = fetchurl {
     url = "http://download.crashplan.com/installs/linux/install/CrashPlan/CrashPlan_${version}_Linux.tgz";
-    sha256 = "0v01fzc62bxr6lpamnxg1nb7vh4a8ky6mahbq76kmjxfqv7q0mb0";
+    sha256 = "0xmzpxfm8vghk552jy167wg1nky1pp93dqds1p922hn73g0x5cv3";
   };
 
   srcs = [ crashPlanArchive ];
diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix
index 2fa28f5e591c..d16233332e5c 100644
--- a/pkgs/applications/editors/atom/default.nix
+++ b/pkgs/applications/editors/atom/default.nix
@@ -16,11 +16,11 @@ let
   };
 in stdenv.mkDerivation rec {
   name = "atom-${version}";
-  version = "0.139.0";
+  version = "0.150.0";
 
   src = fetchurl {
     url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
-    sha256 = "0732s4r9qx0sgsnz415z5r9685scly2084q80kz2xw0d2gfx04xr";
+    sha256 = "1vvsxj1pwpcz0hn58k1hsrv994vm61lxkih58ix1rkj32wpvdjxn";
     name = "${name}.deb";
   };
 
@@ -39,6 +39,8 @@ in stdenv.mkDerivation rec {
       $out/share/atom/resources/app/apm/node_modules/atom-package-manager/bin/node
     wrapProgram $out/bin/atom \
       --prefix "LD_LIBRARY_PATH" : "${atomEnv}/lib:${atomEnv}/lib64"
+    wrapProgram $out/bin/apm \
+      --prefix "LD_LIBRARY_PATH" : "${atomEnv}/lib:${atomEnv}/lib64"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/editors/emacs-24/macport-24.4.nix b/pkgs/applications/editors/emacs-24/macport-24.4.nix
index b357d19b6746..0af0e479a07f 100644
--- a/pkgs/applications/editors/emacs-24/macport-24.4.nix
+++ b/pkgs/applications/editors/emacs-24/macport-24.4.nix
@@ -3,7 +3,7 @@
 
 stdenv.mkDerivation rec {
   emacsName = "emacs-24.4";
-  name = "${emacsName}-mac-5.0";
+  name = "${emacsName}-mac-5.1";
 
   #builder = ./builder.sh;
 
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   macportSrc = fetchurl {
     url = "ftp://ftp.math.s.chiba-u.ac.jp/emacs/${name}.tar.gz";
-    sha256 = "14ipkwmzv0b02sclhgp2xj0cvhl3gk40sc2l21s87621kk640dzv";
+    sha256 = "0qn200vv91qxf93x6y8fdi7l3bsni3clqzf8rcjdpbva1qzgcx27";
   };
 
   patches = [ ./darwin-new-sections.patch ];
diff --git a/pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/default.nix b/pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/default.nix
index af031a6e1a16..aa0bac9a0106 100644
--- a/pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/default.nix
+++ b/pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/default.nix
@@ -1,4 +1,4 @@
-{ clangStdenv, fetchgit, llvm, clang }:
+{ clangStdenv, fetchgit, llvmPackages, clang }:
 
 clangStdenv.mkDerivation {
   name = "emacs-clang-complete-async-20130218";
@@ -8,7 +8,12 @@ clangStdenv.mkDerivation {
     sha256 = "1c8zqi6axbsb951azz9iqx3j52j30nd9ypv396hvids3g02cirrf";
   };
 
-  buildInputs = [ llvm clang.clang ];
+  buildInputs = [ llvmPackages.llvm ];
+
+  patches = [ ./fix-build.patch ];
+
+  CFLAGS = "-I${llvmPackages.clang}/include";
+  LDFLAGS = "-L${llvmPackages.clang}/lib";
 
   installPhase = ''
     mkdir -p $out/bin
diff --git a/pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/fix-build.patch b/pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/fix-build.patch
new file mode 100644
index 000000000000..89de339a436b
--- /dev/null
+++ b/pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/fix-build.patch
@@ -0,0 +1,10 @@
+--- old/src/completion.h	2014-11-16 16:58:16.625150124 +0100
++++ new/src/completion.h	2014-11-16 16:58:28.020207508 +0100
+@@ -3,6 +3,7 @@
+ 
+ 
+ #include <clang-c/Index.h>
++#include <stdio.h>
+ 
+ 
+ typedef struct __completion_Session_struct
diff --git a/pkgs/applications/editors/emacs-modes/js2/default.nix b/pkgs/applications/editors/emacs-modes/js2/default.nix
index 00123bfc8c75..ba9fb4f8d6f8 100644
--- a/pkgs/applications/editors/emacs-modes/js2/default.nix
+++ b/pkgs/applications/editors/emacs-modes/js2/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchgit, emacs }:
 
 stdenv.mkDerivation {
-  name = "js2-mode-0-20140114";
+  name = "js2-mode-0-20141118";
 
   src = fetchgit {
     url = "git://github.com/mooz/js2-mode.git";
-    rev = "b250efaad886dd07b8c69d4573425d095c6652e2";
-    sha256 = "30e61e7d364e9175d408bdaf57fda886a4eea22cf5cbd97abb5c307c52b05918";
+    rev = "3abcd90ddc2f446ddf0fb874dd79ba870c26ad2d";
+    sha256 = "c0aaab4eeb8d60cfd5c382c3e30d4725e5ec492720d573e663ea69ee43aa73a8";
   };
 
   buildInputs = [ emacs ];
diff --git a/pkgs/applications/editors/emacs-modes/rainbow-delimiters/default.nix b/pkgs/applications/editors/emacs-modes/rainbow-delimiters/default.nix
index 62b3a0af1fbc..2b4223cdc1fd 100644
--- a/pkgs/applications/editors/emacs-modes/rainbow-delimiters/default.nix
+++ b/pkgs/applications/editors/emacs-modes/rainbow-delimiters/default.nix
@@ -1,13 +1,13 @@
 {stdenv, fetchurl, emacs}:
 
-let version = "1.3.12";
+let version = "1.3.13";
 
 in stdenv.mkDerivation {
   name = "emacs-rainbow-delimiters-${version}";
 
   src = fetchurl {
     url = "https://github.com/jlr/rainbow-delimiters/archive/${version}.tar.gz";
-    sha256 = "0l65rqmnrc02q1b406kxc29w5cfpmrmq0glv493pjzhzc5m3r63z";
+    sha256 = "075j3nsk4jm0rs5671n28c1wksrfbvpl9a4f89kzcd7sk1h6ncvl";
   };
 
   buildInputs = [ emacs ];
diff --git a/pkgs/applications/editors/idea/default.nix b/pkgs/applications/editors/idea/default.nix
index 8f055476dcdf..7f69e1864c15 100644
--- a/pkgs/applications/editors/idea/default.nix
+++ b/pkgs/applications/editors/idea/default.nix
@@ -147,6 +147,7 @@ let
   buildRubyMine = { name, version, build, src, license, description }:
     (mkIdeaProduct rec {
       inherit name version build src;
+      patchSnappy = false;
       product = "RubyMine";
       meta = with stdenv.lib; {
         homepage = "https://www.jetbrains.com/ruby/";
@@ -208,62 +209,62 @@ in
 
   android-studio = buildAndroidStudio rec {
     name = "android-studio-${version}";
-    version = "0.8.12";
-    build = "135.1503853";
+    version = "1.0.0-rc1";
+    build = "135.1598475";
     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 = "225c8b2f90b9159c465eae5797132350660994184a568c631d4383313a510695";
+      sha256 = "1d0gj9c2hkrcij79xv8i5fy1z8zss1fp8szjp6h7z7zak989rsrf";
     };
   };
 
   clion = buildClion rec {
     name = "clion";
     version = "eap";
-    build = "138.2344.17";
+    build = "140.569.17";
     description  = "C/C++ IDE. New. Intelligent. Cross-platform.";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "http://download.jetbrains.com/cpp/${name}-${build}.tar.gz";
-      sha256 = "4b568d31132a787b748bc41c69b614dcd90229db69b02406677361bc077efab3";
+      sha256 = "1y4137dxbydf3g5s6c58bf015k2q7dsl8h4n0q2llqj5bprwcr23";
     };
   };
 
   idea-community = buildIdea rec {
     name = "idea-community-${version}";
-    version = "14";
-    build = "IC-139.224";
+    version = "14.0.1";
+    build = "IC-139.225";
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "http://download-ln.jetbrains.com/idea/ideaIC-${version}.tar.gz";
-      sha256 = "72e1e7659aa90c0b520eed8190fa96899e26bde7448a9fe4ed43929ef25c508a";
+      sha256 = "166m55q33q4jwfvzwxm8mak6ic32h63bvpxdnjd41si6bs19ynvg";
     };
   };
 
   idea-ultimate = buildIdea rec {
     name = "idea-ultimate-${version}";
-    version = "14";
-    build = "IU-139.224";
+    version = "14.0.1";
+    build = "IU-139.225";
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "http://download-ln.jetbrains.com/idea/ideaIU-${version}.tar.gz";
-      sha256 = "e1c86f0b39e74b3468f7512d299ad9e0ca0c492316e996e65089368aff5446c6";
+      sha256 = "0hh84f3297ak63n2kv76xv1rnf1fhjws9d3b2r5pwzgfd78zja4q";
     };
   };
 
   ruby-mine = buildRubyMine rec {
     name = "ruby-mine-${version}";
-    version = "6.3.3";
+    version = "7.0";
     build = "135.1104";
     description = "The Most Intelligent Ruby and Rails IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "http://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
-      sha256 = "58d555c2702a93fe62f3809a5cc34e566ecce0c3f1f15daaf87744402157dfac";
+      sha256 = "0xsx44gaddarkw5k4yjidzwkayf2xvsxklfzdnzcck4rg4vyk4v4";
     };
   };
 
diff --git a/pkgs/applications/editors/neovim/default.nix b/pkgs/applications/editors/neovim/default.nix
new file mode 100644
index 000000000000..1c1c050b0000
--- /dev/null
+++ b/pkgs/applications/editors/neovim/default.nix
@@ -0,0 +1,65 @@
+{ stdenv, fetchgit, fetchurl, unzip, callPackage, ncurses, gettext, pkgconfig,
+cmake, pkgs, lpeg, lua, luajit, luaMessagePack, luabitop }:
+
+stdenv.mkDerivation rec {
+  name = "neovim-nightly";
+
+  version = "nightly";
+
+  src = fetchgit {
+    url = "https://github.com/neovim/neovim";
+    rev = "68fcd8b696dae33897303c9f8265629a31afbf17";
+    sha256 = "0hxkcy641jpn4qka44gfvhmb6q3dkjx6lvn9748lcl2gx2d36w4i";
+  };
+
+  libmsgpack = stdenv.mkDerivation rec {
+    version = "0.5.9";
+    name = "libmsgpack-${version}";
+
+    src = fetchgit {
+      rev = "ecf4b09acd29746829b6a02939db91dfdec635b4";
+      url = "https://github.com/msgpack/msgpack-c";
+      sha256 = "076ygqgxrc3vk2l20l8x2cgcv05py3am6mjjkknr418pf8yav2ww";
+    };
+
+    buildInputs = [ cmake ];
+
+    meta = with stdenv.lib; {
+      description = "MessagePack implementation for C and C++";
+      homepage = http://msgpack.org;
+      maintainers = [ maintainers.manveru ];
+      license = licenses.asl20;
+      platforms = platforms.all;
+    };
+  };
+
+  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;
+  };
+}
+
diff --git a/pkgs/applications/editors/sublime3/default.nix b/pkgs/applications/editors/sublime3/default.nix
index 87310efc8754..c27f5171de59 100644
--- a/pkgs/applications/editors/sublime3/default.nix
+++ b/pkgs/applications/editors/sublime3/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, glib, xlibs, cairo, gtk, pango, makeWrapper}:
+{ fetchurl, stdenv, glib, xlibs, cairo, gtk, pango, makeWrapper, openssl, bzip2 }:
 
 assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
 
@@ -41,7 +41,7 @@ in let
       mkdir -p $out
       cp -prvd * $out/
       # Without this, plugin_host crashes, even though it has the rpath
-      wrapProgram $out/plugin_host --prefix LD_PRELOAD : ${stdenv.gcc.gcc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}/libgcc_s.so.1
+      wrapProgram $out/plugin_host --prefix LD_PRELOAD : ${stdenv.gcc.gcc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}/libgcc_s.so.1:${openssl}/lib/libssl.so:${bzip2}/lib/libbz2.so
     '';
   };
 in stdenv.mkDerivation {
diff --git a/pkgs/applications/editors/vim/configurable.nix b/pkgs/applications/editors/vim/configurable.nix
index 572bce7a2f56..d5b7182c64a7 100644
--- a/pkgs/applications/editors/vim/configurable.nix
+++ b/pkgs/applications/editors/vim/configurable.nix
@@ -37,7 +37,7 @@ composableDerivation {
                    else stdenv ).mkDerivation;
 } (fix: {
 
-    name = "vim_configurable-7.4.335";
+    name = "vim_configurable-7.4.516";
 
     enableParallelBuilding = true; # test this
 
@@ -46,9 +46,9 @@ composableDerivation {
       "default" =
         # latest release
       args.fetchhg {
-            url = "https://vim.googlecode.com/hg/";
-            rev = "v7-4-335";
-            sha256 = "0qnpzfcbi6fhz82pj68l4vrnigca1akq2ksrxz6krwlfhns6jhhj";
+            url = "http://vim.googlecode.com/hg/";
+            rev = "v7-4-516";
+            sha256 = "0a3b5qaywfn7jjr7fjpl8y8jx4wjj2630wxfjnmn3hi1l7iiz4z8";
       };
 
       "vim-nox" =
diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix
index 95f654eb8cac..8f27f5409975 100644
--- a/pkgs/applications/editors/vim/default.nix
+++ b/pkgs/applications/editors/vim/default.nix
@@ -3,12 +3,12 @@
 stdenv.mkDerivation rec {
   name = "vim-${version}";
 
-  version = "7.4.335";
+  version = "7.4.410";
 
   src = fetchhg {
     url = "https://vim.googlecode.com/hg/";
-    rev = "v7-4-335";
-    sha256 = "0qnpzfcbi6fhz82pj68l4vrnigca1akq2ksrxz6krwlfhns6jhhj";
+    rev = "v7-4-410";
+    sha256 = "145llhj6gq2bh9b7p8xkxc388krrximq80b87f3cn4w4d4k9fhqp";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/editors/vim/ft-nix-support.patch b/pkgs/applications/editors/vim/ft-nix-support.patch
index ed508784813c..cbbe1ccb212f 100644
--- a/pkgs/applications/editors/vim/ft-nix-support.patch
+++ b/pkgs/applications/editors/vim/ft-nix-support.patch
@@ -23,39 +23,42 @@ new file mode 100644
 index 0000000..a2f9918
 --- /dev/null
 +++ b/runtime/syntax/nix.vim
-@@ -0,0 +1,47 @@
+@@ -0,0 +1,56 @@
 +" Vim syntax file
 +" Language:	nix
 +" Maintainer:	Marc Weber <marco-oweber@gmx.de>
 +"               Modify and commit if you feel that way
-+" Last Change:	2007 Dec
++" Last Change:	2011 Jun
 +"
 +" this syntax file can be still be enhanced very much..
 +" Don't ask, do it :-)
++" This file (github.com/MarcWeber/vim-addon-nix) is periodically synced with
++" the patch found in vim_configurable (nixpkgs)
 +
 +" Quit when a (custom) syntax file was already loaded
 +if exists("b:current_syntax")
 +  finish
 +endif
 +
-+syn keyword	nixKeyword	let in rec assert inherit import true false null with ...
-+syn keyword	nixBuiltin	import abort baseNameOf dirOf isNull builtins map removeAttrs throw toString derivation
++
++sy cluster nixStrings contains=nixStringParam,nixStringIndented
++
++syn keyword	nixKeyword	let throw inherit import true false null with
 +syn keyword	nixConditional	if else then
 +syn keyword     nixBrace        ( ) { } =
 +syn keyword     nixBuiltin         __currentSystem __currentTime __isFunction __getEnv __trace __toPath __pathExists 
 +  \ __readFile __toXML __toFile __filterSource __attrNames __getAttr __hasAttr __isAttrs __listToAttrs __isList 
 +  \ __head __tail __add __sub __lessThan __substring __stringLength
 +
-+syn match nixAttr "[a-zA-Z0-9-_]\+\ze\s*="
-+syn match nixFuncArg "\zs[a-zA-Z0-9-_]\+\ze\s*:"
-+syn region nixStringParam start=+\${+ end=+}+
++syn region nixStringIndented start=+''+ skip=+'''\|''${\|"+ end=+''+ contains=nixStringParam
++" syn region nixString         start=+"+ skip=+\\"+ end=+"+
++syn match nixAttr "\w\+\ze\s*="
++syn match nixFuncArg "\zs\w\+\ze\s*:"
++syn region nixStringParam start=+\${+ end=+}+ contains=@nixStrings
 +syn region nixMultiLineComment start=+/\*+ skip=+\\"+ end=+\*/+
 +syn match  nixEndOfLineComment "#.*$"
-+syn region nixStringIndented start=+''+ skip=+'''\|''${\|"+ end=+''+ contains=nixStringParam
-+syn region nixString         start=+"+ skip=+\\"+ end=+"+ contains=nixStringParam
 +
 +hi def link nixKeyword       Keyword
-+hi def link nixBuiltin       Function
 +hi def link nixConditional   Conditional
 +hi def link nixBrace         Special
 +hi def link nixString        String
@@ -67,9 +70,20 @@ index 0000000..a2f9918
 +hi def link nixAttr        Identifier
 +hi def link nixFuncArg     Identifier
 +
++syn sync maxlines=20000
++syn sync minlines=50000
++
 +let b:current_syntax = "nix"
 +
++" thanks to iElectric
 +" scan backwards to find begining of multiline statements
 +syn sync ccomment nixMultiLineComment minlines=10 maxlines=500
 +syn sync ccomment nixStringIndented minlines=10 maxlines=500
 +syn sync ccomment nixString maxlines=10
+diff --git a/runtime/ftplugin/nix.vim b/runtime/ftplugin/nix.vim
+new file mode 100644
+--- /dev/null
++++ b/runtime/ftplugin/nix.vim
+@@ -0,0 +1,2 @@
++" coding conventions
++setlocal sw=2 ts=2 expandtab
diff --git a/pkgs/applications/editors/vim/qvim.nix b/pkgs/applications/editors/vim/qvim.nix
index 2357e23bf014..5d1a8a6f1410 100644
--- a/pkgs/applications/editors/vim/qvim.nix
+++ b/pkgs/applications/editors/vim/qvim.nix
@@ -1,5 +1,8 @@
 args@{...}: with args;
 
+let tag = "20140827";
+    sha256 = "02adf2212872db3c5d133642d2c12fbfc28b506e4c0c42552e3d079756f63f65";
+in
 
 let inherit (args.composableDerivation) composableDerivation edf; in
 composableDerivation {
@@ -9,14 +12,14 @@ composableDerivation {
                    else stdenv ).mkDerivation;
 } (fix: {
 
-    name = "qvim-7.4";
+    name = "qvim-7.4." + tag;
 
     enableParallelBuilding = true; # test this
 
     src = fetchgit {
       url = https://bitbucket.org/equalsraf/vim-qt.git ;
-      rev = "4160bfd5c1380e899d2f426b494fc4f1cf6ae85e";
-      sha256 = "1qa3xl1b9gqw66p71h53l7ibs4y3zfyj553jss70ybxaxchbhi5b";
+      rev = "refs/tags/package-" + tag;
+      inherit sha256;
     };
 
     # FIXME: adopt Darwin fixes from vim/default.nix, then chage meta.platforms.linux
@@ -119,7 +122,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;
-    maintainers = with maintainers; [ smironov ];
+    maintainers = with maintainers; [ smironov ttuegel ];
     platforms   = platforms.linux;
   };
 })
diff --git a/pkgs/applications/gis/saga/default.nix b/pkgs/applications/gis/saga/default.nix
index a990e19dbc3f..bb31b24bf5ef 100644
--- a/pkgs/applications/gis/saga/default.nix
+++ b/pkgs/applications/gis/saga/default.nix
@@ -2,23 +2,22 @@
   libharu, opencv, vigra, postgresql }:
 
 stdenv.mkDerivation rec {
-  name = "saga-2.1.2";
+  name = "saga-2.1.4";
 
   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.2/saga_2.1.2.tar.gz";
-    sha256 = "51885446f717191210c4b13f0c35a1c5194c9d696d4f9b8f594bc1014809b2f5";
+    url = "http://sourceforge.net/projects/saga-gis/files/SAGA%20-%202.1/SAGA%202.1.4/saga_2.1.4.tar.gz";
+    sha256 = "694e4102f592f512c635328c40fdeff33493f74698d9466bb654baf3247e7b76";
   };
 
   meta = {
-    description = "SAGA - System for Automated Geoscientific Analyses";
+    description = "System for Automated Geoscientific Analyses";
     homepage = http://www.saga-gis.org;
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [ stdenv.lib.maintainers.michelk ];
-    platforms = with stdenv.lib.platforms; linux;
-    broken = true;
+    platforms = ["x86_64-linux" ];
   };
 }
diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix
index da2ca64d9758..69bc2006666c 100644
--- a/pkgs/applications/graphics/ImageMagick/default.nix
+++ b/pkgs/applications/graphics/ImageMagick/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   name = "ImageMagick-${version}";
 
   src = fetchurl {
-    url = "mirror://imagemagick/${name}.tar.xz";
+    url = "mirror://imagemagick/releases/${name}.tar.xz";
     sha256 = "1c792hbwi308lm9xkml319xaa4w3bz6hwy6i92jwrm7kqr4h8di7";
   };
 
diff --git a/pkgs/applications/graphics/digikam/default.nix b/pkgs/applications/graphics/digikam/default.nix
index 5bc409d10e52..b067358ea065 100644
--- a/pkgs/applications/graphics/digikam/default.nix
+++ b/pkgs/applications/graphics/digikam/default.nix
@@ -4,11 +4,11 @@ liblqr1, lensfun, pkgconfig, qjson, libkdcraw, opencv, libkexiv2, libkipi, boost
 shared_desktop_ontologies, marble, mysql }:
 
 stdenv.mkDerivation rec {
-  name = "digikam-3.5.0";
+  name = "digikam-4.4.0";
 
   src = fetchurl {
     url = "http://download.kde.org/stable/digikam/${name}.tar.bz2";
-    sha256 = "0an4awlg0b8pwl6v8p5zfl3aghgnxck2pc322cyk6i6yznj2mgap";
+    sha256 = "1sflh3i989f9xi4qym3rzcrx7ahrjf1n9si8c5q05dgm039a4s2w";
   };
 
   nativeBuildInputs = [ cmake automoc4 pkgconfig ];
diff --git a/pkgs/applications/graphics/openimageio/default.nix b/pkgs/applications/graphics/openimageio/default.nix
index 00ba14d98af6..473db68dc274 100644
--- a/pkgs/applications/graphics/openimageio/default.nix
+++ b/pkgs/applications/graphics/openimageio/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "oiio-${version}";
-  version = "1.4.13";
+  version = "1.4.15";
 
   src = fetchurl {
     url = "https://github.com/OpenImageIO/oiio/archive/Release-${version}.zip";
-    sha256 = "1idscm2qqdjgv362l7xk9v162axji7hqh7xdnd3i0wcxwjpgygca";
+    sha256 = "1fc5v3qmrzf9qx765fd15r2dc3ccrz4xf4f9q4cwsrspmaxqyqzs";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/sane/backends.nix b/pkgs/applications/graphics/sane/backends.nix
index 28d2f1e200b2..743215493187 100644
--- a/pkgs/applications/graphics/sane/backends.nix
+++ b/pkgs/applications/graphics/sane/backends.nix
@@ -33,8 +33,8 @@ stdenv.mkDerivation rec {
   postInstall = ''
     if test "$udevSupport" = "1"; then
       mkdir -p $out/etc/udev/rules.d/
-      ./tools/sane-desc -m udev > $out/etc/udev/rules.d/60-libsane.rules || \
-      cp tools/udev/libsane.rules $out/etc/udev/rules.d/60-libsane.rules
+      ./tools/sane-desc -m udev > $out/etc/udev/rules.d/49-libsane.rules || \
+      cp tools/udev/libsane.rules $out/etc/udev/rules.d/49-libsane.rules
     fi
   '';
 
diff --git a/pkgs/applications/graphics/sane/xsane.nix b/pkgs/applications/graphics/sane/xsane.nix
index 221a4340dce2..9bca047a7cf1 100644
--- a/pkgs/applications/graphics/sane/xsane.nix
+++ b/pkgs/applications/graphics/sane/xsane.nix
@@ -15,6 +15,7 @@ stdenv.mkDerivation rec {
 
   preConfigure = ''
     sed -e '/SANE_CAP_ALWAYS_SETTABLE/d' -i src/xsane-back-gtk.c
+    chmod a+rX -R .
   '';
 
   buildInputs = [libpng saneBackends saneFrontends libX11 gtk pkgconfig ]
diff --git a/pkgs/applications/graphics/shotwell/default.nix b/pkgs/applications/graphics/shotwell/default.nix
index 1953f951d169..48044fba1666 100644
--- a/pkgs/applications/graphics/shotwell/default.nix
+++ b/pkgs/applications/graphics/shotwell/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, m4, glibc, gtk3, libexif, libgphoto2, libsoup, libxml2, vala, sqlite, webkit
+{ 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 }:
 
@@ -18,12 +18,12 @@ let
     buildInputs = [ pkgconfig glib libsoup ];
   };
 in stdenv.mkDerivation rec {
-  version = "0.18.0";
+  version = "0.20.2";
   name = "shotwell-${version}";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/shotwell/0.18/${name}.tar.xz";
-    sha256 = "0cq0zs13f3f4xyz46yvj4qfpm5nh4ypds7r53pkqm4a3n8ybf5v7";
+    url = "mirror://gnome/sources/shotwell/0.20/${name}.tar.xz";
+    sha256 = "0h5pdczsrkplvlvq54zk3am4kjmfpd6pn2sz0ky8lfq1fngwiqip";
   };
 
   NIX_CFLAGS_COMPILE = "-I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include";
@@ -47,7 +47,7 @@ in stdenv.mkDerivation rec {
   '';
 
 
-  buildInputs = [ m4 glibc gtk3 libexif libgphoto2 libsoup libxml2 vala sqlite webkit pkgconfig
+  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 ];
diff --git a/pkgs/applications/graphics/sxiv/default.nix b/pkgs/applications/graphics/sxiv/default.nix
index ea982d87c138..c1c78f9116c9 100644
--- a/pkgs/applications/graphics/sxiv/default.nix
+++ b/pkgs/applications/graphics/sxiv/default.nix
@@ -1,13 +1,12 @@
 { stdenv, fetchgit, libX11, imlib2, giflib, libexif }:
 
-stdenv.mkDerivation rec {
-  version = "1.3-git";
-  name = "sxiv-${version}";
+stdenv.mkDerivation {
+  name = "sxiv-1.3-git";
 
   src = fetchgit {
     url = "https://github.com/muennich/sxiv.git";
-    rev = "f55d9f4283f7133ab5a137fc04ee19d1df62fafb";
-    sha256 = "85f734f40fdc837514b72694de12bac92fe130286fa6f1dc374e94d575ca8280";
+    rev = "54af451b4a81b5b1072f27de0981a2d39cabc2d6";
+    sha256 = "1b0fb6bd8d36af4c7f1160fcc12b5b7382546c7da35b4924d259f7efaa4c97d0";
   };
 
   postUnpack = ''
diff --git a/pkgs/applications/graphics/synfigstudio/default.nix b/pkgs/applications/graphics/synfigstudio/default.nix
index 6af51e817785..2b3f4c80bcd0 100644
--- a/pkgs/applications/graphics/synfigstudio/default.nix
+++ b/pkgs/applications/graphics/synfigstudio/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    ETL boost cairo fontsConf gettext glibmm gtk gtkmm imagemagick intltool
+    ETL boost cairo gettext glibmm gtk gtkmm imagemagick intltool
     intltool libsigcxx libtool libxmlxx pkgconfig synfig
   ];
 
@@ -58,6 +58,8 @@ stdenv.mkDerivation rec {
     export FONTCONFIG_FILE=${fontsConf}
   '';
 
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
     description = "A 2D animation program";
     homepage = http://www.synfig.org;
diff --git a/pkgs/applications/graphics/yed/default.nix b/pkgs/applications/graphics/yed/default.nix
new file mode 100644
index 000000000000..2929513952e1
--- /dev/null
+++ b/pkgs/applications/graphics/yed/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, makeWrapper, unzip, jre }:
+
+stdenv.mkDerivation rec {
+  name = "yEd-3.13";
+
+  src = fetchurl {
+    url = "http://www.yworks.com/products/yed/demo/${name}.zip";
+    sha256 = "1d5qs6q31k49y9gh054aafck548pv9f97b3il4iksnna1r59w5jy";
+  };
+
+  nativeBuildInputs = [ unzip makeWrapper ];
+
+  installPhase = ''
+    mkdir -p $out/yed
+    cp -r * $out/yed
+    mkdir -p $out/bin
+
+    makeWrapper ${jre}/bin/java $out/bin/yed \
+      --add-flags "-jar $out/yed/yed.jar --"
+  '';
+
+  meta = with stdenv.lib; {
+    license = licenses.unfreeRedistributable;
+    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;
+    maintainer = with maintainers; [ abbradar ];
+  };
+}
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index 9cda2d93d7a5..4656e5add13f 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -5,11 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "calibre-2.10.0";
+  name = "calibre-2.12.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/calibre/${name}.tar.xz";
-    sha256 = "06nya8r3bfkgfjsl83fl6l6g3ccw3mpmn3kih4i51gpcgma3aa6b";
+    sha256 = "1qp3aq6f6ngfy8m0bj6rzdf6p2vmk4bxycxfby2n8byfhr8gaclf";
   };
 
   inherit python;
diff --git a/pkgs/applications/misc/doomseeker/default.nix b/pkgs/applications/misc/doomseeker/default.nix
index 4a06ee9a1b15..404fb9553861 100644
--- a/pkgs/applications/misc/doomseeker/default.nix
+++ b/pkgs/applications/misc/doomseeker/default.nix
@@ -23,6 +23,7 @@ stdenv.mkDerivation rec {
     homepage = http://doomseeker.drdteam.org/;
     description = "Multiplayer server browser for many Doom source ports";
     license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers; [ MP2E ];
   };
 }
diff --git a/pkgs/applications/misc/eaglemode/default.nix b/pkgs/applications/misc/eaglemode/default.nix
index ea9383a6e10f..9d9b22abcb19 100644
--- a/pkgs/applications/misc/eaglemode/default.nix
+++ b/pkgs/applications/misc/eaglemode/default.nix
@@ -1,16 +1,16 @@
 { stdenv, fetchurl, perl, libX11, libjpeg, libpng, libtiff, pkgconfig,
-librsvg, glib, gtk, libXext, libXxf86vm, poppler }:
+librsvg, glib, gtk, libXext, libXxf86vm, poppler, xineLib }:
 
 stdenv.mkDerivation rec {
-  name = "eaglemode-0.85.0";
+  name = "eaglemode-0.86.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/eaglemode/${name}.tar.bz2";
-    sha256 = "0mz4rg2k36wvcv55dg0a5znaczpl5h4gwkkb34syj89xk8jlbwsc";
+    sha256 = "1a2hzyck95g740qg4p4wd4fjwsmlknh75i9sbx5r5v9pyr4i3m4f";
   };
 
   buildInputs = [ perl libX11 libjpeg libpng libtiff pkgconfig
-    librsvg glib gtk libXxf86vm libXext poppler ];
+    librsvg glib gtk libXxf86vm libXext poppler xineLib ];
 
   # The program tries to dlopen both Xxf86vm and Xext, so we use the
   # trick on NIX_LDFLAGS and dontPatchELF to make it find them.
diff --git a/pkgs/applications/misc/epdfview/default.nix b/pkgs/applications/misc/epdfview/default.nix
index d79162289c3c..da198e6d88b0 100644
--- a/pkgs/applications/misc/epdfview/default.nix
+++ b/pkgs/applications/misc/epdfview/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, gtk, poppler }:
+{ stdenv, fetchurl, fetchpatch, pkgconfig, gtk, poppler }:
 stdenv.mkDerivation rec {
   name = "epdfview-0.1.8";
   src = fetchurl {
@@ -6,7 +6,17 @@ stdenv.mkDerivation rec {
     sha256 = "1w7qybh8ssl4dffi5qfajq8mndw7ipsd92vkim03nywxgjp4i1ll";
   };
   buildInputs = [ pkgconfig gtk poppler ];
-  patches = [ ./glib-top-level-header.patch ];
+  patches = [ (fetchpatch {
+                name = "epdfview-0.1.8-glib2-headers.patch";
+                url = "https://projects.archlinux.org/svntogit/community.git/plain/trunk/epdfview-0.1.8-glib2-headers.patch?h=packages/epdfview&id=40ba115c860bdec31d03a30fa594a7ec2864d634";
+                sha256 = "17df6s1zij5ficj67xszq6kd88cy620az3ic55065ccnmsd73f8h";
+              })
+              (fetchpatch {
+                name = "epdfview-0.1.8-modern-cups.patch";
+                url = "https://projects.archlinux.org/svntogit/community.git/plain/trunk/epdfview-0.1.8-modern-cups.patch?h=packages/epdfview&id=40ba115c860bdec31d03a30fa594a7ec2864d634";
+                sha256 = "07yvgvai2bvbr5fa1mv6lg7nqr0qyryjn1xyjlh8nidg9k9vv001";
+              })
+            ];
   meta = {
     homepage = http://trac.emma-soft.com/epdfview/;
     description = "A lightweight PDF document viewer using Poppler and GTK+";
diff --git a/pkgs/applications/misc/epdfview/glib-top-level-header.patch b/pkgs/applications/misc/epdfview/glib-top-level-header.patch
deleted file mode 100644
index a321ad3a2b67..000000000000
--- a/pkgs/applications/misc/epdfview/glib-top-level-header.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur epdfview-0.1.8-orig/src/gtk/StockIcons.h epdfview-0.1.8/src/gtk/StockIcons.h
---- epdfview-0.1.8-orig/src/gtk/StockIcons.h	2011-05-28 06:24:57.000000000 -0400
-+++ epdfview-0.1.8/src/gtk/StockIcons.h	2012-07-15 11:02:43.946339253 -0400
-@@ -18,7 +18,7 @@
- #if !defined (__STOCK_ICONS_H__)
- #define __STOCK_ICONS_H__
- 
--#include <glib/gmacros.h>
-+#include <glib.h>
- 
- G_BEGIN_DECLS
- 
diff --git a/pkgs/applications/misc/gammu/default.nix b/pkgs/applications/misc/gammu/default.nix
index 56e45b11c706..b90a243aec4b 100644
--- a/pkgs/applications/misc/gammu/default.nix
+++ b/pkgs/applications/misc/gammu/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, python, pkgconfig, cmake, bluez, libusb1, curl
-, libiconv, gettext, sqlite }:
+, libiconvOrEmpty, gettext, sqlite }:
 
 with stdenv.lib;
 
@@ -14,8 +14,8 @@ stdenv.mkDerivation rec {
 
   patches = [ ./bashcomp-dir.patch ];
 
-  buildInputs = [ python pkgconfig cmake bluez libusb1 curl libiconv
-    gettext sqlite ];
+  buildInputs = [ python pkgconfig cmake bluez libusb1 curl gettext sqlite ]
+    ++ libiconvOrEmpty;
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/misc/girara/default.nix b/pkgs/applications/misc/girara/default.nix
index 3a7e5da1e737..c7c110a978a5 100644
--- a/pkgs/applications/misc/girara/default.nix
+++ b/pkgs/applications/misc/girara/default.nix
@@ -1,19 +1,27 @@
-{ stdenv, fetchurl, pkgconfig, gtk, gettext, ncurses }:
+{ stdenv, fetchurl, pkgconfig, gtk, gettext, withBuildColors ? true, ncurses ? null}:
 
+assert withBuildColors -> ncurses != null;
+
+with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "girara-0.2.3";
+  name = "girara-${version}";
+  version = "0.2.3";
 
   src = fetchurl {
     url = "http://pwmt.org/projects/girara/download/${name}.tar.gz";
     sha256 = "1phfmqp8y17zcy9yi6pm2f80x8ldbk60iswpm4bmjz5217jwqzxh";
   };
 
+  preConfigure = ''
+    sed -i 's/ifdef TPUT_AVAILABLE/ifneq ($(TPUT_AVAILABLE), 0)/' colors.mk
+  '';
+
   buildInputs = [ pkgconfig gtk gettext ];
 
-  makeFlags = [
-    "PREFIX=$(out)"
-    "TPUT=${ncurses}/bin/tput"
-  ];
+  makeFlags = [ "PREFIX=$(out)" ]
+    ++ optional withBuildColors "TPUT=${ncurses}/bin/tput"
+    ++ optional (!withBuildColors) "TPUT_AVAILABLE=0"
+    ;
 
   meta = {
     homepage = http://pwmt.org/projects/girara/;
@@ -22,9 +30,8 @@ stdenv.mkDerivation rec {
       girara is a library that implements a GTK+ based VIM-like user interface
       that focuses on simplicity and minimalism.
     '';
-    license = stdenv.lib.licenses.zlib;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = [ stdenv.lib.maintainers.garbas ];
+    license = licenses.zlib;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.garbas ];
   };
 }
-
diff --git a/pkgs/applications/misc/gosmore/default.nix b/pkgs/applications/misc/gosmore/default.nix
index e93e2be85e38..ea72dc032695 100644
--- a/pkgs/applications/misc/gosmore/default.nix
+++ b/pkgs/applications/misc/gosmore/default.nix
@@ -1,34 +1,30 @@
-a@{fetchsvn, libxml2, gtk, curl, pkgconfig, lib, ...} :  
-let 
-  fetchsvn = a.fetchsvn;
+{ stdenv, fetchsvn, libxml2, gtk, curl, pkgconfig } :
 
-  buildInputs = with a; [
-    libxml2 gtk curl pkgconfig
-  ];
+let
+  version = "30811";
 in
-rec {
+stdenv.mkDerivation {
+  name = "gosmore-r${version}";
   src = fetchsvn {
     url = http://svn.openstreetmap.org/applications/rendering/gosmore;
-    sha256 = "0ds61gl75rnzvm0hj9papl5sfcgdv4310df9ch7x9rifssfli9zm";
-    rev = "24178";
-  } + "/";
+    sha256 = "0qyvrb4xgy4msc7f65widzkvjzc8mlddc4dyr1i76b7wd3gpk0xj";
+    rev = "${version}";
+  };
 
-  inherit buildInputs;
-  configureFlags = [];
+  buildInputs = [ libxml2 gtk curl ];
 
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["fixCurlIncludes" "doConfigure" "doMakeInstall"];
+  nativeBuildInputs = [ pkgconfig ];
 
-  fixCurlIncludes = a.fullDepEntry ''
+  prePatch = ''
     sed -e '/curl.types.h/d' -i *.{c,h,hpp,cpp}
-  '' ["minInit" "doUnpack"];
+  '';
       
-  name = "gosmore-r21657";
-  meta = {
+  meta = with stdenv.lib; {
     description = "Open Street Map viewer";
-    maintainers = [
-      a.lib.maintainers.raskin
+    homepage = http://sourceforge.net/projects/gosmore/;
+    maintainers = with maintainers; [
+      raskin
     ];
-    platforms = a.lib.platforms.linux;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/misc/hello/ex-2/default.nix b/pkgs/applications/misc/hello/ex-2/default.nix
index 71c9777ff9b7..161be5c6f1be 100644
--- a/pkgs/applications/misc/hello/ex-2/default.nix
+++ b/pkgs/applications/misc/hello/ex-2/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "hello-2.9";
+  name = "hello-2.10";
 
   src = fetchurl {
     url = "mirror://gnu/hello/${name}.tar.gz";
-    sha256 = "19qy37gkasc4csb1d3bdiz9snn8mir2p3aj0jgzmfv0r2hi7mfzc";
+    sha256 = "0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i";
   };
 
   doCheck = true;
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = http://www.gnu.org/software/hello/manual/;
     license = stdenv.lib.licenses.gpl3Plus;
-    maintainers = [ stdenv.lib.maintainers.ludo ];
+    maintainers = [ stdenv.lib.maintainers.ludo stdenv.lib.maintainers.eelco ];
     platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/misc/llpp/default.nix b/pkgs/applications/misc/llpp/default.nix
index e04898fba29f..5284d441b44f 100644
--- a/pkgs/applications/misc/llpp/default.nix
+++ b/pkgs/applications/misc/llpp/default.nix
@@ -1,75 +1,41 @@
-{ stdenv, fetchgit, ocaml, mupdf, lablgl, mesa
-, libX11, libXext, gtk3, freetype, zlib, openjpeg
-, jbig2dec, libjpeg, ncurses }:
+{ stdenv, makeWrapper, fetchgit, pkgconfig, ninja, ocaml, findlib, mupdf, lablgl
+, gtk3, openjpeg, jbig2dec, mujs }:
 
-stdenv.mkDerivation {
-  name = "llpp-2014-05-26";
+let ocamlVersion = (builtins.parseDrvName (ocaml.name)).version;
+in stdenv.mkDerivation rec {
+  name = "llpp-2014-11-29";
 
   src = fetchgit {
     url = "git://repo.or.cz/llpp.git";
-    rev  = "902143de64d86b5714b3a59d2cc7085083b87249";
-    sha256 = "038xl4gbvm57na2lz1fw36sf43zaxq407zi2d53985vc33677j9s";
+    rev  = "481c8398b2c5dc4589738f5f80104ed75b9c73ff";
+    sha256 = "13zi5mzpd9j4mmm68m3zkv49xgkhswhqvmp4bbyi0psmhxak8y5l";
   };
 
-  buildInputs = [ ocaml mupdf lablgl mesa libX11 libXext gtk3
-                  freetype jbig2dec libjpeg openjpeg zlib ncurses ];
+  buildInputs = [ pkgconfig ninja makeWrapper ocaml findlib mupdf lablgl
+                  gtk3 jbig2dec openjpeg mujs ];
 
-  # The build phase was extracted from buildall.sh, because that script
-  # fetched the dependencies on its own.
-  buildPhase = ''
-    ccopt="-O"
-    ccopt="$ccopt -I ${jbig2dec}/include"
-    ccopt="$ccopt -I ${libjpeg}/include"
-    ccopt="$ccopt -I ${freetype}/include/freetype2"
-    ccopt="$ccopt -I ${openjpeg}/include"
-    ccopt="$ccopt -I ${zlib}/include"
-    ccopt="$ccopt -I ${mupdf}/include"
-    ccopt="$ccopt -include ft2build.h"
-    ccopt="$ccopt -D_GNU_SOURCE"
-
-    cclib="$cclib -lmupdf"
-    cclib="$cclib -lz -ljpeg -lopenjp2 -ljbig2dec -lfreetype -lpthread"
-    cclib="$cclib -lX11"
-    cclib="$cclib -lfreetype"
-
-    comp=ocamlc.opt
-    cmsuf=cmo
-
-    sh mkhelp.sh keystoml.ml KEYS > help.ml
-
-    $comp -c -o link.o -ccopt "$ccopt" link.c
-    $comp -c -o help.$cmsuf help.ml
-    $comp -c -o utils.$cmsuf utils.ml
-    $comp -c -o wsi.cmi wsi.mli
-    $comp -c -o wsi.$cmsuf wsi.ml
-    $comp -c -o parser.$cmsuf parser.ml
-    $comp -c -o main.$cmsuf -I ${lablgl}/lib/ocaml/4.01.0/site-lib/lablgl main.ml
-
-    $comp -custom -o llpp           \
-          -I ${lablgl}/lib/ocaml/4.01.0/site-lib/lablgl \
-          str.cma unix.cma lablgl.cma \
-          link.o                      \
-          -cclib "$cclib"             \
-          help.cmo                    \
-          utils.cmo                   \
-          parser.cmo                  \
-          wsi.cmo                     \
-          main.cmo
+  configurePhase = ''
+      sh configure.sh -O -F ${mupdf}
+      sed -i 's;-lopenjpeg;-lopenjp2;g' .config
+      sed -i 's;$builddir/link\.so;link.so;g' build.ninja
   '';
 
-  # Binary fails with 'No bytecode file specified.' if stripped.
-  dontStrip = true;
+  buildPhase = "${ninja}/bin/ninja";
 
   installPhase = ''
-    install -d $out/bin
-    install llpp llppac $out/bin
+    install -d $out/bin $out/lib
+    install build/llpp $out/bin
+    install link.so $out/lib
+    wrapProgram $out/bin/llpp \
+        --prefix CAML_LD_LIBRARY_PATH ":" "${lablgl}/lib/ocaml/${ocamlVersion}/site-lib/lablgl" \
+        --prefix CAML_LD_LIBRARY_PATH ":" "$out/lib"
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://repo.or.cz/w/llpp.git;
     description = "A MuPDF based PDF pager written in OCaml";
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = [ stdenv.lib.maintainers.pSub ];
-    license = "GPL";
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ pSub ];
+    license = licenses.gpl3;
   };
 }
diff --git a/pkgs/applications/misc/pcmanfm/default.nix b/pkgs/applications/misc/pcmanfm/default.nix
index d7577987a171..b245a6aace7b 100644
--- a/pkgs/applications/misc/pcmanfm/default.nix
+++ b/pkgs/applications/misc/pcmanfm/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, glib, gtk, intltool, libfm, libX11, pango, pkgconfig }:
 
 stdenv.mkDerivation {
-  name = "pcmanfm-1.2.2";
+  name = "pcmanfm-1.2.3";
   src = fetchurl {
-    url = "mirror://sourceforge/pcmanfm/pcmanfm-1.2.2.tar.xz";
-    sha256 = "00wmbqrbcrxk1mcdkgdl8ddf3gp28rm5mamqdq72sfr0q2d0287n";
+    url = "mirror://sourceforge/pcmanfm/pcmanfm-1.2.3.tar.xz";
+    sha256 = "1033rw5jd7nlzbcdpx3bik7347kyh1sg1gkla424gq9vqqpxia6g";
   };
 
   buildInputs = [ glib gtk intltool libfm libX11 pango pkgconfig ];
diff --git a/pkgs/applications/misc/redshift/default.nix b/pkgs/applications/misc/redshift/default.nix
index 8ee006c5d7f1..6070c560815d 100644
--- a/pkgs/applications/misc/redshift/default.nix
+++ b/pkgs/applications/misc/redshift/default.nix
@@ -3,11 +3,11 @@
 , GConf, dbus, dbus_glib, makeWrapper, gtk, pygtk, pyxdg, geoclue }:
 
 stdenv.mkDerivation rec {
-  version = "1.8";
+  version = "1.9.1";
   name = "redshift-${version}";
   src = fetchurl {
     url = "https://github.com/jonls/redshift/archive/v${version}.tar.gz";
-    sha256 = "1srj2dwy32h71iqikb4ysv5ipclym80i9lys2ns8vjmclg7hj3vi";
+    sha256 = "0rj7lyg4ikwpk1hr1k2bgk9gjqvvv51z8hydsgpx2k2lqdv6lqri";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/slic3r/default.nix b/pkgs/applications/misc/slic3r/default.nix
index 06a5cca94a8d..a057197a92de 100644
--- a/pkgs/applications/misc/slic3r/default.nix
+++ b/pkgs/applications/misc/slic3r/default.nix
@@ -3,21 +3,20 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.1.7";
+  version = "1.2.1";
   name = "slic3r-${version}";
 
-  # Slic3r doesn't put out tarballs, only a git repository is available
   src = fetchgit {
     url = "git://github.com/alexrj/Slic3r";
     rev = "refs/tags/${version}";
-    sha256 = "0hss90iw4xwca08d03wrz0fds5nqwb9zjqii2n6rgpcl4km69fka";
+    sha256 = "03xj2kv2d4j6nwmdd5cyghnvjyj4g7g9z0ynynbviyfiplmka2ph";
   };
 
   buildInputs = with perlPackages; [ perl makeWrapper which
     EncodeLocale MathClipper ExtUtilsXSpp BoostGeometryUtils
     MathConvexHullMonotoneChain MathGeometryVoronoi MathPlanePath Moo
     IOStringy ClassXSAccessor Wx GrowlGNTP NetDBus ImportInto XMLSAX
-    ExtUtilsMakeMaker
+    ExtUtilsMakeMaker OpenGL WxGLCanvas
   ];
 
   desktopItem = makeDesktopItem {
@@ -34,12 +33,16 @@ stdenv.mkDerivation rec {
     export SLIC3R_NO_AUTO=true
     export PERL5LIB="./xs/blib/arch/:./xs/blib/lib:$PERL5LIB"
 
+    substituteInPlace Build.PL \
+      --replace "0.9918" "0.9923" \
+      --replace "eval" ""
+
     pushd xs
       perl Build.PL
       perl Build
     popd
 
-    perl Build.PL
+    perl Build.PL --gui
   '';
 
   installPhase = ''
diff --git a/pkgs/applications/misc/slic3r/fix-no-display.patch b/pkgs/applications/misc/slic3r/fix-no-display.patch
new file mode 100644
index 000000000000..b5aeca3a4167
--- /dev/null
+++ b/pkgs/applications/misc/slic3r/fix-no-display.patch
@@ -0,0 +1,59 @@
+diff --git a/Build.PL b/Build.PL
+index 8b21c15..fd3aff0 100644
+--- a/Build.PL
++++ b/Build.PL
+@@ -33,9 +33,6 @@ my $sudo    = grep { $_ eq '--sudo' } @ARGV;
+ my $gui     = grep { $_ eq '--gui' } @ARGV;
+ my $xs_only = grep { $_ eq '--xs' }  @ARGV;
+ if ($gui) {
+-    %prereqs = qw(
+-    Wx                              0.9918
+-    );
+     %recommends = qw(
+     Growl::GNTP                     0.15
+     Wx::GLCanvas                    0
+diff --git a/lib/Slic3r/GUI.pm b/lib/Slic3r/GUI.pm
+index 842ff44..ea0af64 100644
+--- a/lib/Slic3r/GUI.pm
++++ b/lib/Slic3r/GUI.pm
+@@ -26,7 +26,7 @@ use Slic3r::GUI::OptionsGroup::Field;
+ use Slic3r::GUI::SimpleTab;
+ use Slic3r::GUI::Tab;
+ 
+-our $have_OpenGL = eval "use Slic3r::GUI::PreviewCanvas; 1";
++our $have_OpenGL = 0;
+ 
+ use Wx 0.9901 qw(:bitmap :dialog :icon :id :misc :systemsettings :toplevelwindow
+     :filedialog);
+diff --git a/lib/Slic3r/GUI/Plater/2DToolpaths.pm b/lib/Slic3r/GUI/Plater/2DToolpaths.pm
+index 8e48a72..7bed973 100644
+--- a/lib/Slic3r/GUI/Plater/2DToolpaths.pm
++++ b/lib/Slic3r/GUI/Plater/2DToolpaths.pm
+@@ -90,18 +90,20 @@ sub set_z {
+ package Slic3r::GUI::Plater::2DToolpaths::Canvas;
+ 
+ use Wx::Event qw(EVT_PAINT EVT_SIZE EVT_ERASE_BACKGROUND EVT_IDLE EVT_MOUSEWHEEL EVT_MOUSE_EVENTS);
+-use OpenGL qw(:glconstants :glfunctions :glufunctions);
+-use base qw(Wx::GLCanvas Class::Accessor);
+-use Wx::GLCanvas qw(:all);
+ use List::Util qw(min first);
+ use Slic3r::Geometry qw(scale unscale epsilon);
+ 
+ __PACKAGE__->mk_accessors(qw(print z layers color init dirty bb));
+ 
+-# make OpenGL::Array thread-safe
+-{
+-    no warnings 'redefine';
+-    *OpenGL::Array::CLONE_SKIP = sub { 1 };
++if ($Slic3r::GUI::have_OpenGL) {
++    use OpenGL qw(:glconstants :glfunctions :glufunctions);
++    use Wx::GLCanvas qw(:all);
++    use base qw(Wx::GLCanvas Class::Accessor);
++    # make OpenGL::Array thread-safe
++    {
++        no warnings 'redefine';
++        *OpenGL::Array::CLONE_SKIP = sub { 1 };
++    }
+ }
+ 
+ sub new {
diff --git a/pkgs/applications/misc/sqliteman/default.nix b/pkgs/applications/misc/sqliteman/default.nix
new file mode 100644
index 000000000000..803dfe075c19
--- /dev/null
+++ b/pkgs/applications/misc/sqliteman/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, cmake, qt4, qscintilla }:
+
+stdenv.mkDerivation rec {
+  name = "sqliteman";
+  version = "1.2.0-c41b89e1";
+
+  src = fetchurl {
+    url = https://github.com/pvanek/sqliteman/archive/1.2.0.tar.gz;
+    sha256 = "1x4ppwf01jdnz3a4ycia6vv5qf3w2smbqx690z1pnkwbvk337akm";
+  };
+
+  buildInputs = [ cmake qt4 qscintilla ];
+
+  prePatch = ''
+    sed -i 's,m_file(0),m_file(QString()),' Sqliteman/sqliteman/main.cpp
+  '';
+
+  preConfigure = ''
+    cd Sqliteman
+    sed -i 's,/usr/include/Qsci,${qscintilla}/include/Qsci,' cmake/modules/FindQScintilla.cmake
+    sed -i 's,PATHS ''${QT_LIBRARY_DIR},PATHS ${qscintilla}/libs,' cmake/modules/FindQScintilla.cmake
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Sqliteman is simple but powerfull Sqlite3 GUI database manager.";
+    homepage = http://sqliteman.yarpen.cz/;
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.eikek ];
+  };
+}
diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix
index df4c0ea97ebd..2a518b9d7cc9 100644
--- a/pkgs/applications/misc/synergy/default.nix
+++ b/pkgs/applications/misc/synergy/default.nix
@@ -1,16 +1,19 @@
-{ stdenv, fetchurl, cmake, x11, libX11, libXi, libXtst, libXrandr, xinput, curl
-, cryptopp ? null, unzip }:
+{ stdenv, fetchFromGitHub, cmake, x11, libX11, libXi, libXtst, libXrandr
+, xinput, curl, cryptopp ? null, unzip }:
 
 assert stdenv.isLinux -> cryptopp != null;
 
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "synergy-1.5.1";
-
-  src = fetchurl {
-    url = "http://synergy-project.org/files/packages/${name}-r2398-Source.tar.gz";
-    sha256 = "19q8ck15f0jgpbzlm34dzp046wf3iiwa21s1qfyj5sj7xjxwa367";
+  name = "synergy-${version}";
+  version = "1.6.1";
+
+  src = fetchFromGitHub {
+    owner = "synergy";
+    repo = "synergy";
+    rev = "1.6.1";
+    sha256 = "1043101c4phv1nbxiqp2jn1jhgzspv9q6v75z0kfzwgii5n5xq1c";
   };
 
   patches = optional stdenv.isLinux ./cryptopp.patch;
diff --git a/pkgs/applications/misc/tilda/default.nix b/pkgs/applications/misc/tilda/default.nix
index 7edd86c7409e..187ab0390143 100644
--- a/pkgs/applications/misc/tilda/default.nix
+++ b/pkgs/applications/misc/tilda/default.nix
@@ -6,11 +6,11 @@
 stdenv.mkDerivation rec {
 
   name = "tilda-${version}";
-  version = "1.1.13";
+  version = "1.2.2";
 
   src = fetchurl {
     url = "https://github.com/lanoxx/tilda/archive/${name}.tar.gz";
-    sha256 = "1b9rnyrdvqmw2xjv899a4k6hvr9w482c4xvlpfnckckxdyp2852d";
+    sha256 = "1mzly0llsrxpc2yd1hml3gmwm023my2j3aszjw383pp34dab2nl5";
   };
 
   buildInputs = [ pkgconfig autoreconfHook gettext confuse vte gtk makeWrapper ];
diff --git a/pkgs/applications/misc/xrandr-invert-colors/default.nix b/pkgs/applications/misc/xrandr-invert-colors/default.nix
new file mode 100644
index 000000000000..e9bb722dcab0
--- /dev/null
+++ b/pkgs/applications/misc/xrandr-invert-colors/default.nix
@@ -0,0 +1,26 @@
+{ fetchurl, stdenv, libXrandr}:
+
+stdenv.mkDerivation rec {
+  version = "v0.01";
+  name = "xrandr-invert-colors-${version}";
+  src = fetchurl {
+    url = "https://github.com/zoltanp/xrandr-invert-colors/archive/${version}.tar.gz";
+    sha256 = "1z4hxn56rlflvqanb8ncqa1xqawnda85b1b37w6r2iqs8rw52d75";
+  };
+
+  buildInputs = [ libXrandr ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    mv xrandr-invert-colors.bin xrandr-invert-colors
+    install xrandr-invert-colors $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Inverts the colors of your screen";
+    license = stdenv.lib.licenses.gpl3Plus;
+    homepage = https://github.com/zoltanp/xrandr-invert-colors;
+    maintainers = [stdenv.lib.maintainers.magnetophon ];
+    platforms = platforms.linux;
+  }; 
+}
diff --git a/pkgs/applications/networking/browsers/chromium/browser.nix b/pkgs/applications/networking/browsers/chromium/browser.nix
index daab75c74ff9..f88d7df40306 100644
--- a/pkgs/applications/networking/browsers/chromium/browser.nix
+++ b/pkgs/applications/networking/browsers/chromium/browser.nix
@@ -12,7 +12,7 @@ mkChromiumDerivation (base: rec {
     cp -v "$buildPath/"*.pak "$libExecPath/"
     cp -v "$buildPath/icudtl.dat" "$libExecPath/"
     cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"
-    cp -v $buildPath/libffmpegsumo.so "$libExecPath/"
+    cp -v "$buildPath/libpdf.so" "$buildPath/libffmpegsumo.so" "$libExecPath/"
 
     cp -v "$buildPath/chrome" "$libExecPath/$packageName"
 
@@ -35,7 +35,7 @@ mkChromiumDerivation (base: rec {
   meta = {
     description = "An open source web browser from Google";
     homepage = http://www.chromium.org/;
-    maintainers = with maintainers; [ goibhniu chaoflow aszlig wizeman ];
+    maintainers = with maintainers; [ goibhniu chaoflow aszlig ];
     license = licenses.bsd3;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index 2676104db3e0..dea816e5be9b 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -69,7 +69,7 @@ let
     use_system_xdg_utils = true;
     use_system_yasm = true;
     use_system_zlib = false;
-    use_system_protobuf = true;
+    use_system_protobuf = false; # needs newer protobuf
 
     use_system_harfbuzz = false;
     use_system_icu = false; # Doesn't support ICU 52 yet.
@@ -190,6 +190,7 @@ let
       libExecPath="${libExecPath}"
       python build/linux/unbundle/replace_gyp_files.py ${gypFlags}
       python build/gyp_chromium -f ninja --depth "$(pwd)" ${gypFlags}
+      find . -iname '*.py[co]' -delete
     '';
 
     buildPhase = let
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 14881d11601e..75d5f1c248e9 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -9,7 +9,6 @@
 , gnomeKeyringSupport ? false
 , proprietaryCodecs ? true
 , enablePepperFlash ? false
-, enablePepperPDF ? false
 , enableWideVine ? false
 , cupsSupport ? false
 , pulseSupport ? false
@@ -36,7 +35,7 @@ let
     sandbox = callPackage ./sandbox.nix { };
 
     plugins = callPackage ./plugins.nix {
-      inherit enablePepperFlash enablePepperPDF enableWideVine;
+      inherit enablePepperFlash enableWideVine;
     };
   };
 
@@ -56,25 +55,33 @@ let
       "x-scheme-handler/ftp"
       "x-scheme-handler/mailto"
       "x-scheme-handler/webcal"
+      "x-scheme-handler/about"
+      "x-scheme-handler/unknown"
     ];
     categories = "Network;WebBrowser";
   };
 
+  suffix = if channel != "stable" then "-" + channel else "";
+
 in stdenv.mkDerivation {
-  name = "chromium${if channel != "stable" then "-" + channel else ""}-${chromium.browser.version}";
+  name = "chromium${suffix}-${chromium.browser.version}";
 
   buildInputs = [ makeWrapper ];
 
   buildCommand = let
     browserBinary = "${chromium.browser}/libexec/chromium/chromium";
     sandboxBinary = "${chromium.sandbox}/bin/chromium-sandbox";
-  in ''
+    mkEnvVar = key: val: "--set '${key}' '${val}'";
+    envVars = chromium.plugins.settings.envVars or {};
+    flags = chromium.plugins.settings.flags or [];
+  in with stdenv.lib; ''
     mkdir -p "$out/bin" "$out/share/applications"
 
     ln -s "${chromium.browser}/share" "$out/share"
     makeWrapper "${browserBinary}" "$out/bin/chromium" \
       --set CHROMIUM_SANDBOX_BINARY_PATH "${sandboxBinary}" \
-      --add-flags "${chromium.plugins.flagsEnabled}"
+      ${concatStrings (mapAttrsToList mkEnvVar envVars)} \
+      --add-flags "${concatStringsSep " " flags}"
 
     ln -s "$out/bin/chromium" "$out/bin/chromium-browser"
     ln -s "${chromium.browser}/share/icons" "$out/share/icons"
diff --git a/pkgs/applications/networking/browsers/chromium/plugins.nix b/pkgs/applications/networking/browsers/chromium/plugins.nix
index 5bd411586320..55e0cc4caa21 100644
--- a/pkgs/applications/networking/browsers/chromium/plugins.nix
+++ b/pkgs/applications/networking/browsers/chromium/plugins.nix
@@ -1,6 +1,5 @@
 { stdenv
 , enablePepperFlash ? false
-, enablePepperPDF ? false
 , enableWideVine ? false
 
 , source
@@ -16,7 +15,7 @@ let
     src = source.plugins;
 
     phases = [ "unpackPhase" "patchPhase" "installPhase" "checkPhase" ];
-    outputs = [ "pdf" "flash" "widevine" ];
+    outputs = [ "flash" "widevine" ];
 
     unpackCmd = let
       chan = if source.channel == "dev"    then "chrome-unstable"
@@ -26,7 +25,6 @@ let
       mkdir -p plugins
       ar p "$src" data.tar.lzma | tar xJ -C plugins --strip-components=4 \
         ./opt/google/${chan}/PepperFlash \
-        ./opt/google/${chan}/libpdf.so \
         ./opt/google/${chan}/libwidevinecdm.so \
         ./opt/google/${chan}/libwidevinecdmadapter.so
     '';
@@ -40,7 +38,7 @@ let
       rpaths = [ stdenv.gcc.gcc ];
       mkrpath = p: "${makeSearchPath "lib64" p}:${makeSearchPath "lib" p}";
     in ''
-      for sofile in PepperFlash/libpepflashplayer.so libpdf.so \
+      for sofile in PepperFlash/libpepflashplayer.so \
                     libwidevinecdm.so libwidevinecdmadapter.so; do
         chmod +x "$sofile"
         patchelf --set-rpath "${mkrpath rpaths}" "$sofile"
@@ -51,25 +49,12 @@ let
     '';
 
     installPhase = let
-      pdfName = "Chrome PDF Viewer";
-      pdfDescription = "Portable Document Format";
-      pdfMimeTypes = concatStringsSep ";" [
-        "application/pdf"
-        "application/x-google-chrome-print-preview-pdf"
-      ];
-      pdfInfo = "#${pdfName}#${pdfDescription};${pdfMimeTypes}";
-
       wvName = "Widevine Content Decryption Module";
       wvDescription = "Playback of encrypted HTML audio/video content";
       wvMimeTypes = "application/x-ppapi-widevine-cdm";
       wvModule = "$widevine/lib/libwidevinecdmadapter.so";
       wvInfo = "#${wvName}#${wvDescription}:${wvMimeTypes}";
     in ''
-      install -vD libpdf.so "$pdf/lib/libpdf.so"
-      mkdir -p "$pdf/nix-support"
-      echo "--register-pepper-plugins='$pdf/lib/libpdf.so${pdfInfo}'" \
-        > "$pdf/nix-support/chromium-flags"
-
       flashVersion="$(
         sed -n -r 's/.*"version": "([^"]+)",.*/\1/p' PepperFlash/manifest.json
       )"
@@ -77,24 +62,38 @@ let
       install -vD PepperFlash/libpepflashplayer.so \
         "$flash/lib/libpepflashplayer.so"
       mkdir -p "$flash/nix-support"
-      echo "--ppapi-flash-path='$flash/lib/libpepflashplayer.so'" \
-           "--ppapi-flash-version=$flashVersion" \
-           > "$flash/nix-support/chromium-flags"
+      cat > "$flash/nix-support/chromium-plugin.nix" <<NIXOUT
+        { flags = [
+            "--ppapi-flash-path='$flash/lib/libpepflashplayer.so'"
+            "--ppapi-flash-version=$flashVersion"
+          ];
+        }
+      NIXOUT
 
       install -vD libwidevinecdm.so \
         "$widevine/lib/libwidevinecdm.so"
       install -vD libwidevinecdmadapter.so \
         "$widevine/lib/libwidevinecdmadapter.so"
       mkdir -p "$widevine/nix-support"
-      echo "--register-pepper-plugins='${wvModule}${wvInfo}'" \
-        > "$widevine/nix-support/chromium-flags"
+      cat > "$widevine/nix-support/chromium-plugin.nix" <<NIXOUT
+        { flags = [ "--register-pepper-plugins='${wvModule}${wvInfo}'" ];
+          envVars.NIX_CHROMIUM_PLUGIN_PATH_WIDEVINE = "$widevine/lib";
+        }
+      NIXOUT
     '';
 
-    passthru.flagsEnabled = let
+    passthru = let
       enabledPlugins = optional enablePepperFlash plugins.flash
-                    ++ optional enablePepperPDF   plugins.pdf
                     ++ optional enableWideVine    plugins.widevine;
-      getFlags = plugin: "$(< ${plugin}/nix-support/chromium-flags)";
-    in concatStringsSep " " (map getFlags enabledPlugins);
+      getNix = plugin: import "${plugin}/nix-support/chromium-plugin.nix";
+      mergeAttrsets = let
+        f = v: if all isAttrs v then mergeAttrsets v
+          else if all isList  v then concatLists   v
+          else if tail v == []  then head          v
+          else head (tail v);
+      in fold (l: r: zipAttrsWith (_: f) [ l r ]) {};
+    in {
+      settings = mergeAttrsets (map getNix enabledPlugins);
+    };
   };
 in plugins
diff --git a/pkgs/applications/networking/browsers/chromium/source/default.nix b/pkgs/applications/networking/browsers/chromium/source/default.nix
index 3c7abc0d5e2f..adac4baa29cd 100644
--- a/pkgs/applications/networking/browsers/chromium/source/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/source/default.nix
@@ -22,9 +22,7 @@ stdenv.mkDerivation {
 
   prePatch = "patchShebangs .";
 
-  patches = let
-    onPre39 = optional (versionOlder version "39.0.0.0");
-  in [ ./sandbox_userns_36.patch ] ++ onPre39 ./missing_alg_import.patch;
+  patches = [ ./sandbox_userns_36.patch ./nix_plugin_paths.patch ];
 
   postPatch = ''
     sed -i -r \
diff --git a/pkgs/applications/networking/browsers/chromium/source/missing_alg_import.patch b/pkgs/applications/networking/browsers/chromium/source/missing_alg_import.patch
deleted file mode 100644
index 243e3fe70498..000000000000
--- a/pkgs/applications/networking/browsers/chromium/source/missing_alg_import.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Naur chromium-37.0.2062.94.old/media/cast/logging/encoding_event_subscriber.cc chromium-37.0.2062.94/media/cast/logging/encoding_event_subscriber.cc
---- chromium-37.0.2062.94.old/media/cast/logging/encoding_event_subscriber.cc	2014-08-29 02:05:15.149140733 -0700
-+++ chromium-37.0.2062.94/media/cast/logging/encoding_event_subscriber.cc	2014-08-29 02:06:00.182853590 -0700
-@@ -4,6 +4,7 @@
- 
- #include "media/cast/logging/encoding_event_subscriber.h"
- 
-+#include <algorithm>
- #include <cstring>
- #include <utility>
- 
diff --git a/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths.patch b/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths.patch
new file mode 100644
index 000000000000..0220d0429413
--- /dev/null
+++ b/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths.patch
@@ -0,0 +1,99 @@
+diff --git a/chrome/common/chrome_paths.cc b/chrome/common/chrome_paths.cc
+index 8a205a6..d5c24e1 100644
+--- a/chrome/common/chrome_paths.cc
++++ b/chrome/common/chrome_paths.cc
+@@ -97,21 +97,14 @@ static base::LazyInstance<base::FilePath>
+     g_invalid_specified_user_data_dir = LAZY_INSTANCE_INITIALIZER;
+ 
+ // Gets the path for internal plugins.
+-bool GetInternalPluginsDirectory(base::FilePath* result) {
+-#if defined(OS_MACOSX) && !defined(OS_IOS)
+-  // If called from Chrome, get internal plugins from a subdirectory of the
+-  // framework.
+-  if (base::mac::AmIBundled()) {
+-    *result = chrome::GetFrameworkBundlePath();
+-    DCHECK(!result->empty());
+-    *result = result->Append("Internet Plug-Ins");
+-    return true;
+-  }
+-  // In tests, just look in the module directory (below).
+-#endif
+-
+-  // The rest of the world expects plugins in the module directory.
+-  return PathService::Get(base::DIR_MODULE, result);
++bool GetInternalPluginsDirectory(base::FilePath* result,
++                                 const std::string& ident) {
++  std::string full_env = std::string("NIX_CHROMIUM_PLUGIN_PATH_") + ident;
++  const char* value = getenv(full_env.c_str());
++  if (value == NULL)
++      return PathService::Get(base::DIR_MODULE, result);
++  else
++      *result = base::FilePath(value);
+ }
+ 
+ }  // namespace
+@@ -248,11 +241,11 @@ bool PathProvider(int key, base::FilePath* result) {
+       create_dir = true;
+       break;
+     case chrome::DIR_INTERNAL_PLUGINS:
+-      if (!GetInternalPluginsDirectory(&cur))
++      if (!GetInternalPluginsDirectory(&cur, "ALL"))
+         return false;
+       break;
+     case chrome::DIR_PEPPER_FLASH_PLUGIN:
+-      if (!GetInternalPluginsDirectory(&cur))
++      if (!GetInternalPluginsDirectory(&cur, "PEPPERFLASH"))
+         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) {
+     // We currently need a path here to look up whether the plugin is disabled
+     // and what its permissions are.
+     case chrome::FILE_NACL_PLUGIN:
+-      if (!GetInternalPluginsDirectory(&cur))
++      if (!GetInternalPluginsDirectory(&cur, "NACL"))
+         return false;
+       cur = cur.Append(kInternalNaClPluginFileName);
+       break;
+@@ -343,7 +336,7 @@ bool PathProvider(int key, base::FilePath* result) {
+         cur = cur.DirName();
+       }
+ #else
+-      if (!GetInternalPluginsDirectory(&cur))
++      if (!GetInternalPluginsDirectory(&cur, "PNACL"))
+         return false;
+ #endif
+       cur = cur.Append(FILE_PATH_LITERAL("pnacl"));
+@@ -372,7 +365,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:
+-      if (!GetInternalPluginsDirectory(&cur))
++      if (!GetInternalPluginsDirectory(&cur, "WIDEVINE"))
+         return false;
+       cur = cur.AppendASCII(kWidevineCdmAdapterFileName);
+       break;
diff --git a/pkgs/applications/networking/browsers/chromium/source/sources.nix b/pkgs/applications/networking/browsers/chromium/source/sources.nix
index 0640a6abd09c..5437f8e283ae 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 = "40.0.2182.3";
-    sha256 = "1713y6f2q5qh32wg027nphkv6p6rgq0q1awqcy543ypbk9p1jvbm";
-    sha256bin32 = "0qf0ccfg77qc17iy5cndkp827s8li3qyxasmgjq224g579wcj0bl";
-    sha256bin64 = "07f97m548kj7indpzyyvksa4gisndxc1s8qslk43mgsx26kz62rf";
+    version = "41.0.2224.3";
+    sha256 = "04lgklidxx4bryqhnm7kjqbfr12ns8ic9g4yxk3dig71081sas5f";
+    sha256bin32 = "17fgh57yckk318r7r6qkc934dpq35qa6ps4x5fwscl070rzjf81k";
+    sha256bin64 = "1qsvjm38cxx3inrw0hs4q9f4i9arqfj9cs57xh64wflrnh2z52zf";
   };
   beta = {
-    version = "39.0.2171.19";
-    sha256 = "19j86hzh552a73mvabzgdiq0s1ypr30b6lkn4kfxc2vhs1ds8nmg";
-    sha256bin32 = "06imcc3r6g4f7yi8b4mzknqk11khzk44pjrw0qnw40kgjf0kkgd3";
-    sha256bin64 = "0qd594rbg049g1h4s7lgw9abcccx6wrl3fggkd1z9bl8ihj54j4b";
+    version = "40.0.2214.10";
+    sha256 = "0wxkxgj6z18l2qkm0k16r8bpv9rdxk1g1ias03zzvlbj1bw3brdn";
+    sha256bin32 = "0wr2vg97d3qrryb5sz31sd3ycb1l17irrs79vfa04ip85jqv89zn";
+    sha256bin64 = "0bclgy386vdmfdf59hwkypcs8wwmlpgl3npp089hmcdvv7dmars8";
   };
   stable = {
-    version = "38.0.2125.101";
-    sha256 = "12hrl7i0xrjdwz8yaap5jhc6bzn29pk6dcz96743n6j7mcckac6k";
-    sha256bin32 = "1c35j4wx53njcqbdqznz2m0791bb9lpmhnpkrll36051437f25wl";
-    sha256bin64 = "1k8hrrxlqc1mv88v2qkyq8188lfaibvqpqg0g8qgj2ha5vsnvwvw";
+    version = "39.0.2171.65";
+    sha256 = "0lglcjvyhgmdm0sd76wv509pgwcfl86rlp9rj83z9giadwqlcmxi";
+    sha256bin32 = "1iqzi462vw8da5f8ysk76q68xhiw5ndqc3hhc6djipsc6h240bji";
+    sha256bin64 = "1gxh3sxpnl0167la9ncnz7l85gzi4ax6g5pqni1nma5g5cqqm177";
   };
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/default.nix b/pkgs/applications/networking/browsers/firefox-bin/default.nix
index 7e48eb83653d..3f85467fe315 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/default.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/default.nix
@@ -151,11 +151,10 @@ stdenv.mkDerivation {
     '';
 
   meta = with stdenv.lib; {
-    description = "Mozilla Firefox, free web browser";
+    description = "Mozilla Firefox, free web browser (binary package)";
     homepage = http://www.mozilla.org/firefox/;
     license = {
-      shortName = "unfree"; # not sure
-      fullName = "unfree";
+      free = false;
       url = http://www.mozilla.org/en-US/foundation/trademarks/policy/;
     };
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix
index bb96d417a4d8..60befdbaad53 100644
--- a/pkgs/applications/networking/browsers/firefox/default.nix
+++ b/pkgs/applications/networking/browsers/firefox/default.nix
@@ -15,14 +15,14 @@
 
 assert stdenv.gcc ? libc && stdenv.gcc.libc != null;
 
-let version = "33.1"; in
+let version = "33.1.1"; in
 
 stdenv.mkDerivation rec {
   name = "firefox-${version}";
 
   src = fetchurl {
     url = "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${version}/source/firefox-${version}.source.tar.bz2";
-    sha1 = "bc87055d3b68e8458f07d0c04503b6aaed3771df";
+    sha1 = "1e9e3176e7d221c4f2ce479f37ee7c432236a0ec";
   };
 
   buildInputs =
@@ -97,7 +97,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Web browser";
     homepage = http://www.mozilla.com/en-US/firefox/;
-    maintainers = with lib.maintainers; [ eelco wizeman ];
+    maintainers = with lib.maintainers; [ eelco ];
     platforms = 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 656a639b2c35..f04a5f12ea2d 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.418";
+  version = "11.2.202.424";
 
   src =
     if stdenv.system == "x86_64-linux" then
@@ -47,7 +47,7 @@ let
       else rec {
         inherit version;
         url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
-        sha256 = "0c7iid6apab99axrhl509hycbc4yc55k8xrh0pvr005q5jlmx99n";
+        sha256 = "1nkk77lbvvq9x17rlygwlkprq2pgnci5riwxvvriknkqr277dhz8";
       }
     else if stdenv.system == "i686-linux" then
       if debug then
@@ -60,7 +60,7 @@ let
       else rec {
         inherit version;
         url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
-        sha256 = "17mpjvkvvb7wwmyvwz93w7q4lvjrpma1f9lcf83i927jqpzg8x73";
+        sha256 = "1zwlzc7z6q8vr5hjzx6jywjcx9r0g9jxz141hlf6lqzicf4x6qan";
       }
     else throw "Flash Player is not supported on this platform";
 
@@ -90,7 +90,6 @@ stdenv.mkDerivation {
   meta = {
     description = "Adobe Flash Player browser plugin";
     homepage = http://www.adobe.com/products/flashplayer/;
-    maintainers = with stdenv.lib.maintainers; [ wizeman ];
     license = stdenv.lib.licenses.unfree;
   };
 }
diff --git a/pkgs/applications/networking/browsers/rekonq/default.nix b/pkgs/applications/networking/browsers/rekonq/default.nix
index 3deabd42e013..ce36e26d6fcc 100644
--- a/pkgs/applications/networking/browsers/rekonq/default.nix
+++ b/pkgs/applications/networking/browsers/rekonq/default.nix
@@ -3,11 +3,11 @@
 assert builtins.compareVersions "4.8.3" kde4.release != 1; # https://bugs.kde.org/show_bug.cgi?id=306077
 
 stdenv.mkDerivation rec {
-  name = "rekonq-1.80"; # >=1.80 need kde >=4.9.0
+  name = "rekonq-2.4.2"; # >=1.80 need kde >=4.9.0
 
   src = fetchurl {
-    url = "mirror://sourceforge/rekonq/${name}.tar.bz2";
-    sha256 = "1lzmg8psy1j1v8vrmsyw609jv9scgnigdivx97fb4spb7x6sxn4g";
+    url = "mirror://sourceforge/rekonq/${name}.tar.xz";
+    sha256 = "09jihyf4xl7bwfwahwwbx6f11h3zqljccchnpl4mijljylr5p079";
   };
 
   buildInputs = [ kde4.kdelibs qca2 qoauth ];
diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix
new file mode 100644
index 000000000000..547338a11ae8
--- /dev/null
+++ b/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchFromGitHub, which, go, makeWrapper, iptables,rsync }:
+
+stdenv.mkDerivation rec {
+  name = "kubernetes-${version}";
+  version = "v0.5.4";
+
+  src = fetchFromGitHub {
+    owner = "GoogleCloudPlatform";
+    repo = "kubernetes";
+    rev = version;
+    sha256 = "1pipcqpjz9zsi4kfsbdvbbbia642l4xg50pznjw5v061c5xk7vnk";
+  };
+
+  buildInputs = [ makeWrapper which go iptables rsync ];
+
+  preBuild = "patchShebangs ./hack";
+
+  postBuild = ''go build --ldflags '-extldflags "-static" -s' build/pause/pause.go'';
+
+  installPhase = ''
+    mkdir -p "$out/bin"
+    cp _output/local/go/bin/* "$out/bin/"
+    cp pause $out/bin/kube-pause
+  '';
+
+  preFixup = ''
+    wrapProgram "$out/bin/kube-proxy" --set "PATH" "${iptables}/bin"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Open source implementation of container cluster management.";
+    license = licenses.asl20;
+    homepage = https://github.com/GoogleCloudPlatform;
+    maintainers = with maintainers; [offline];
+    platforms = with platforms; linux;
+  };
+}
diff --git a/pkgs/applications/networking/dropbox/default.nix b/pkgs/applications/networking/dropbox/default.nix
index 82a340591f21..d55e2b18162b 100644
--- a/pkgs/applications/networking/dropbox/default.nix
+++ b/pkgs/applications/networking/dropbox/default.nix
@@ -25,9 +25,9 @@ let
     else if stdenv.system == "i686-linux" then "ld-linux.so.2"
     else throw "Dropbox client for: ${stdenv.system} not supported!";
 
-  version = "2.10.30";
-  sha256 = if stdenv.system == "x86_64-linux" then "1gdch4fka5f671zwl329j6b60igki1rzxw9ggxcywcg1h4rlvw7r"
-    else if stdenv.system == "i686-linux" then "1a4pswpy945iqzvi8kcs1r0sydb04h28v5zv0hdyra0c548wsm2g"
+  version = "2.10.52";
+  sha256 = if stdenv.system == "x86_64-linux" then "0fn2frp00f0p0r6v5czzxfbw1ifan9w12k3ry8gq1m4bvx6g27p6"
+    else if stdenv.system == "i686-linux" then "1rm5kspb53zqgaz48v8x3ffk1mcfi0nh0zsmsdniyrgqbis5mmm9"
     else throw "Dropbox client for: ${stdenv.system} not supported!";
 
   # relative location where the dropbox libraries are stored
diff --git a/pkgs/applications/networking/ids/daq/default.nix b/pkgs/applications/networking/ids/daq/default.nix
index 3e7a80f137d5..287a4239c2c0 100644
--- a/pkgs/applications/networking/ids/daq/default.nix
+++ b/pkgs/applications/networking/ids/daq/default.nix
@@ -1,12 +1,12 @@
 {stdenv, fetchurl, flex, bison, libpcap}:
 
 stdenv.mkDerivation rec {
-  name = "daq-2.0.2";
+  name = "daq-2.0.4";
   
   src = fetchurl {
     name = "${name}.tar.gz";
     url = "http://www.snort.org/downloads/snort/${name}.tar.gz";
-    sha256 = "1a39qbm9nc05yr8llawl7mz0ny1fci4acj9c2k1h4klrqikiwpfn";
+    sha256 = "0g15kny0s6mpqfc723jxv7mgjfh45izhwcidhjzh52fd04ysm552";
   };
   
   buildInputs = [ flex bison libpcap ];
diff --git a/pkgs/applications/networking/ids/snort/default.nix b/pkgs/applications/networking/ids/snort/default.nix
index 5b740cec9355..3f99094ffd45 100644
--- a/pkgs/applications/networking/ids/snort/default.nix
+++ b/pkgs/applications/networking/ids/snort/default.nix
@@ -1,12 +1,12 @@
 {stdenv, fetchurl, libpcap, pcre, libdnet, daq, zlib, flex, bison}:
 
 stdenv.mkDerivation rec {
-  name = "snort-2.9.6.2";
+  name = "snort-2.9.7.0";
   
   src = fetchurl {
     name = "${name}.tar.gz";
     url = "http://www.snort.org/downloads/snort/${name}.tar.gz";
-    sha256 = "0xsxbd5h701ncnhn9sf7zkmzravlqhn1182whinphfjjw72py7cf";
+    sha256 = "16z4mi7bri7ygvc0j4hhl2pgcw6xwxah1h3wk5vpy2yj8pmayf4p";
   };
   
   buildInputs = [ libpcap pcre libdnet daq zlib flex bison ];
diff --git a/pkgs/applications/networking/instant-messengers/gajim/default.nix b/pkgs/applications/networking/instant-messengers/gajim/default.nix
index 8584eb84273d..82d11e02fe1d 100644
--- a/pkgs/applications/networking/instant-messengers/gajim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gajim/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, python, intltool, pkgconfig, libX11, gtk
-, ldns, pyopenssl, pythonDBus, pythonPackages
+, ldns, pythonDBus, pythonPackages
 
 , enableJingle ? true, farstream ? null, gst_plugins_bad ? null
 ,                      libnice ? null
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
     pythonPackages.sqlite3 pythonPackages.pyasn1
     pythonPackages.pyxdg
     pythonPackages.nbxmpp
-    pyopenssl pythonDBus
+    pythonPackages.pyopenssl pythonDBus
   ] ++ optionals enableJingle [ farstream gst_plugins_bad libnice ]
     ++ optional enableE2E pythonPackages.pycrypto
     ++ optional enableRST pythonPackages.docutils
diff --git a/pkgs/applications/networking/instant-messengers/mcabber/default.nix b/pkgs/applications/networking/instant-messengers/mcabber/default.nix
index 362bf0de9774..4fda2d9cc066 100644
--- a/pkgs/applications/networking/instant-messengers/mcabber/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mcabber/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, openssl, ncurses, pkgconfig, glib, loudmouth}:
+{stdenv, fetchurl, openssl, ncurses, pkgconfig, glib, loudmouth, libotr}:
 
 stdenv.mkDerivation rec {
   name = "mcabber-${version}";
@@ -6,12 +6,12 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://mcabber.com/files/mcabber-${version}.tar.bz2";
-    sha256 = "1248cgci1v2ypb90wfhyipwdyp1wskn3gzh78af5ai1a4w5rrjq0";
+    sha256 = "0vgsqw6yn0lzzcnr4fql4ycgf3gwqj6w4p0l4nqnvhkc94w62ikp";
   };
 
-  buildInputs = [openssl ncurses pkgconfig glib loudmouth];
+  buildInputs = [openssl ncurses pkgconfig glib loudmouth libotr];
 
-  configureFlags = "--with-openssl=${openssl}";
+  configureFlags = "--with-openssl=${openssl} --enable-modules --enable-otr";
   
   meta = with stdenv.lib; {
     homepage = http://mcabber.com/;
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 7cbc38ea0dc0..2fa7d5f37f24 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, libotr, pidgin, intltool } :
 
 stdenv.mkDerivation rec {
-  name = "pidgin-otr-4.0.0";
+  name = "pidgin-otr-4.0.1";
   src = fetchurl {
     url = "http://www.cypherpunks.ca/otr/${name}.tar.gz";
-    sha256 = "14a6vxvlkm8wazng9aj7p82dr12857fx5is1frcyd7my5l4kysym";
+    sha256 = "02pkkf86fh5jvzsdn9y78impsgzj1n0p81kc2girvk3vq941yy0v";
   };
 
   postInstall = "ln -s \$out/lib/pidgin \$out/share/pidgin-otr";
diff --git a/pkgs/applications/networking/instant-messengers/pidgin/default.nix b/pkgs/applications/networking/instant-messengers/pidgin/default.nix
index 32004496534f..5e8f266930ff 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin/default.nix
@@ -12,11 +12,12 @@
 
 stdenv.mkDerivation rec {
   name = "pidgin-${version}";
-  version = "2.10.10";
+  majorVersion = "2";
+  version = "${majorVersion}.10.11";
 
   src = fetchurl {
     url = "mirror://sourceforge/pidgin/${name}.tar.bz2";
-    sha256 = "0bc2bk2g3w90mpz9sn9j95c71z4i2i3wxaqa2zpmmixf5r8rasyw";
+    sha256 = "01s0q30qrjlzj7kkz6f8lvrwsdd55a9yjh2xjjwyyxzw849j3bpj";
   };
 
   inherit nss ncurses;
@@ -51,6 +52,8 @@ stdenv.mkDerivation rec {
   ]
   ++ (lib.optionals (gnutls != null) ["--enable-gnutls=yes" "--enable-nss=no"]);
 
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
     description = "Multi-protocol instant messaging client";
     homepage = http://pidgin.im;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin/wrapper.nix b/pkgs/applications/networking/instant-messengers/pidgin/wrapper.nix
index 0c498dd612e1..7e637c767cfa 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin/wrapper.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin/wrapper.nix
@@ -17,7 +17,7 @@ drv = buildEnv {
       done
     fi
     wrapProgram $out/bin/pidgin \
-      --suffix-each PURPLE_PLUGIN_PATH ':' "$out/lib/purple-${pidgin.version} $out/lib/pidgin" \
+      --suffix-each PURPLE_PLUGIN_PATH ':' "$out/lib/purple-${pidgin.majorVersion} $out/lib/pidgin" \
       ${toString extraArgs}
   '';
   };
diff --git a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix b/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
index 3870533aa89b..8a3e7203f265 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
+, libredirect, quazip, less, which
 }:
 
 let
@@ -33,11 +33,11 @@ stdenv.mkDerivation rec {
                 else "1b3nbvfpd8lx3dig8z5yk6zjkbmsy6y938dhj1f562wc8adixciz";
   };
 
-  buildInputs = [ makeWrapper ];
+  buildInputs = [ makeWrapper less which ];
 
   unpackPhase =
     ''
-      yes | sh $src
+      echo -e 'q\ny' | sh -xe $src
       cd TeamSpeak*
     '';
 
diff --git a/pkgs/applications/networking/irc/konversation/default.nix b/pkgs/applications/networking/irc/konversation/default.nix
index 7554ad7d1a8c..cbe4e3be28d4 100644
--- a/pkgs/applications/networking/irc/konversation/default.nix
+++ b/pkgs/applications/networking/irc/konversation/default.nix
@@ -3,7 +3,7 @@
 
 let
   pn = "konversation";
-  v = "1.5";
+  v = "1.5.1";
 in
 
 stdenv.mkDerivation rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://kde/stable/${pn}/${v}/src/${name}.tar.xz";
-    sha256 = "0vsl34kiar7kbsgncycwd7f66f493fip6d635qlprqn1gqhycb9q";
+    sha256 = "11hrjrq4r6v1v14ybx9llgzmrl3a45z26n292nb0q887rg1qv0wp";
   };
 
   buildInputs = [ cmake qt4 perl gettext libXScrnSaver kdelibs kdepimlibs
diff --git a/pkgs/applications/networking/jmeter/default.nix b/pkgs/applications/networking/jmeter/default.nix
index 77aeb64478f0..4f936f2677ec 100644
--- a/pkgs/applications/networking/jmeter/default.nix
+++ b/pkgs/applications/networking/jmeter/default.nix
@@ -3,7 +3,7 @@
 stdenv.mkDerivation rec {
   name = "jmeter-2.11";
   src = fetchurl {
-    url = "http://ftp.unicamp.br/pub/apache//jmeter/binaries/apache-${name}.tgz";
+    url = "http://archive.apache.org/dist/jmeter/binaries/apache-${name}.tgz";
     sha256 = "1fr3sw06qncb6yygcf2lbnkxma4v1dbigpf39ajrm0isxbpyv944";
   };
 
diff --git a/pkgs/applications/networking/mailreaders/alpine/default.nix b/pkgs/applications/networking/mailreaders/alpine/default.nix
new file mode 100644
index 000000000000..87e824a977d3
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/alpine/default.nix
@@ -0,0 +1,38 @@
+{stdenv, fetchurl, ncurses, tcl, openssl, pam, pkgconfig, gettext, kerberos
+, openldap
+}:
+let
+  s = 
+  rec {
+    version = "2.00";
+    url = "ftp://ftp.cac.washington.edu/alpine/alpine-${version}.tar.bz2";
+    sha256 = "19m2w21dqn55rhxbh5lr9qarc2fqa9wmpj204jx7a0zrb90bhpf8";
+    baseName = "alpine";
+    name = "${baseName}-${version}";
+  };
+  buildInputs = [
+    ncurses tcl openssl pam kerberos openldap
+  ];
+in
+stdenv.mkDerivation {
+  inherit (s) name version;
+  inherit buildInputs;
+  src = fetchurl {
+    inherit (s) url sha256;
+  };
+  configureFlags = [
+    "--with-ssl-include-dir=${openssl}/include/openssl"
+    "--with-tcl-lib=tcl8.5"
+    ];
+  preConfigure = ''
+    export NIX_LDFLAGS="$NIX_LDFLAGS -lgcc_s"
+  '';
+  meta = {
+    inherit (s) version;
+    description = ''Console mail reader'';
+    license = stdenv.lib.licenses.asl20;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+    homepage = "https://www.washington.edu/alpine/";
+  };
+}
diff --git a/pkgs/applications/networking/mailreaders/imapfilter.nix b/pkgs/applications/networking/mailreaders/imapfilter.nix
index d42b71b23121..d7aff753e237 100644
--- a/pkgs/applications/networking/mailreaders/imapfilter.nix
+++ b/pkgs/applications/networking/mailreaders/imapfilter.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, openssl, lua, pcre }:
 
 stdenv.mkDerivation rec {
-  name = "imapfilter-2.5.6";
+  name = "imapfilter-2.5.7";
 
   src = fetchurl {
-    url = "https://github.com/lefcha/imapfilter/archive/v2.5.6.tar.gz";
-    sha256 = "0c94xdcnkk33d2filzkbraymfzm09np78486kqzqwidnnfllsk86";
+    url = "https://github.com/lefcha/imapfilter/archive/v2.5.7.tar.gz";
+    sha256 = "1l7sg7pyw1i8cxqnyb5xv983fakj8mxq6w44qd7w3kc7l6ixd4n7";
   };
 
   makeFlagsArray = "PREFIX=$(out)";
diff --git a/pkgs/applications/networking/mailreaders/mutt/default.nix b/pkgs/applications/networking/mailreaders/mutt/default.nix
index 4091876cbe3c..7c60864b486c 100644
--- a/pkgs/applications/networking/mailreaders/mutt/default.nix
+++ b/pkgs/applications/networking/mailreaders/mutt/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ncurses, which, perl, automake, autoconf
+{ stdenv, fetchurl, ncurses, which, perl, autoreconfHook
 , sslSupport ? true
 , imapSupport ? true
 , headerCache ? true
@@ -14,6 +14,7 @@
 assert headerCache -> gdbm != null;
 assert sslSupport -> openssl != null;
 assert saslSupport -> cyrus_sasl != null;
+assert gpgmeSupport -> gpgme != null;
 
 let
   version = "1.5.23";
@@ -26,15 +27,14 @@ stdenv.mkDerivation rec {
     sha256 = "0dzx4qk50pjfsb6cs5jahng96a52k12f7pm0sc78iqdrawg71w1s";
   };
 
-  buildInputs = [
-    ncurses which perl
-    (if headerCache then gdbm else null)
-    (if sslSupport then openssl else null)
-    (if saslSupport then cyrus_sasl else null)
-    (if gpgmeSupport then gpgme else null)
-  ]
-  ++ (stdenv.lib.optionals withSidebar [automake autoconf])
-  ;
+  buildInputs = with stdenv.lib;
+    [ ncurses which perl ]
+    ++ optional headerCache gdbm
+    ++ optional sslSupport openssl
+    ++ optional saslSupport cyrus_sasl
+    ++ optional gpgmeSupport gpgme;
+
+  nativeBuildInputs = stdenv.lib.optional withSidebar autoreconfHook;
 
   configureFlags = [
     "--with-mailpath=" "--enable-smtp"
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
   patches = [] ++
     (stdenv.lib.optional withSidebar (fetchurl {
       url = http://lunar-linux.org/~tchan/mutt/patch-1.5.23.sidebar.20140412.txt;
-      sha256 = "0bq556sycl0qkr5vg5c3l16bh2bifqc2j7d64n4hw19q0ba2b45w";
+      sha256 = "1i2r7dj0pd1k0z3jjxn2szi6sf0k28i8dwhr4f65pn8r2lh3wisz";
     }));
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix
index 75eca10d9aa5..a5af880728a1 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -1,17 +1,18 @@
-{ fetchurl, stdenv, bash, emacs, fixDarwinDylibNames,
-  gdb, glib, gmime, gnupg,
-  pkgconfig, talloc, xapian
+{ fetchurl, stdenv, bash, emacs, fixDarwinDylibNames
+, gdb, glib, gmime, gnupg
+, pkgconfig, talloc, xapian
+, sphinx, python
 }:
 
 stdenv.mkDerivation rec {
-  name = "notmuch-0.18.2";
+  name = "notmuch-0.19";
 
   src = fetchurl {
     url = "http://notmuchmail.org/releases/${name}.tar.gz";
-    sha256 = "175wzrw1mfpl4h72n9ims66zn5l34zn2dn857vraj2i5w7z7p7z9";
+    sha256 = "1szf6c44g209pcjq5nvfhlp3nzcm3lrcwv4spsxmwy13hiaccvrr";
   };
 
-  buildInputs = [ bash emacs gdb glib gmime gnupg pkgconfig talloc xapian ]
+  buildInputs = [ bash emacs gdb glib gmime gnupg pkgconfig talloc xapian sphinx python ]
     ++ stdenv.lib.optionals stdenv.isDarwin [ fixDarwinDylibNames ];
 
   patchPhase = ''
@@ -29,6 +30,10 @@ stdenv.mkDerivation rec {
     done
   '';
 
+  postInstall = ''
+    make install-man
+  '';
+
   preFixup = if stdenv.isDarwin then
     ''
       prg="$out/bin/notmuch"
diff --git a/pkgs/applications/networking/mailreaders/realpine/default.nix b/pkgs/applications/networking/mailreaders/realpine/default.nix
new file mode 100644
index 000000000000..11097672ae7f
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/realpine/default.nix
@@ -0,0 +1,39 @@
+{stdenv, fetchurl, ncurses, tcl, openssl, pam, pkgconfig, gettext, kerberos
+, openldap
+}:
+let
+  s = 
+  rec {
+    version = "2.03";
+    url = "mirror://sourceforge/re-alpine/re-alpine-${version}.tar.bz2";
+    sha256 = "11xspzbk9cwmklmcw6rxsan7j71ysd4m9c7qldlc59ck595k5nbh";
+    baseName = "re-alpine";
+    name = "${baseName}-${version}";
+  };
+  buildInputs = [
+    ncurses tcl openssl pam kerberos openldap
+  ];
+in
+stdenv.mkDerivation {
+  inherit (s) name version;
+  inherit buildInputs;
+  src = fetchurl {
+    inherit (s) url sha256;
+  };
+  configureFlags = [
+    "--with-ssl-include-dir=${openssl}/include/openssl"
+    "--with-tcl-lib=tcl8.5"
+    ];
+  preConfigure = ''
+    export NIX_LDFLAGS="$NIX_LDFLAGS -lgcc_s"
+  '';
+  meta = {
+    inherit (s) version;
+    description = ''Console mail reader'';
+    license = stdenv.lib.licenses.asl20;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+    homepage = "http://re-alpine.sf.net/";
+    downloadPage = "http://sourceforge.net/projects/re-alpine/files/";
+  };
+}
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
index 41a24dc8a9f7..55e5820a5d2b 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
@@ -141,11 +141,10 @@ stdenv.mkDerivation {
     '';
 
   meta = with stdenv.lib; {
-    description = "Mozilla Thunderbird, a full-featured email client";
+    description = "Mozilla Thunderbird, a full-featured email client (binary package)";
     homepage = http://www.mozilla.org/thunderbird/;
     license = {
-      shortName = "unfree"; # not sure
-      fullName = "unfree";
+      free = false;
       url = http://www.mozilla.org/en-US/foundation/trademarks/policy/;
     };
     maintainers = with stdenv.lib.maintainers; [ fuuzetsu ];
diff --git a/pkgs/applications/networking/owncloud-client/default.nix b/pkgs/applications/networking/owncloud-client/default.nix
new file mode 100644
index 000000000000..6e7755c7bf43
--- /dev/null
+++ b/pkgs/applications/networking/owncloud-client/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl, cmake, qt4, pkgconfig, neon, qtkeychain, sqlite }:
+
+stdenv.mkDerivation rec {
+  name = "owncloud-client" + "-" + version;
+
+  version = "1.7.0";
+
+  src = fetchurl {
+    url = "https://download.owncloud.com/desktop/stable/mirall-${version}.tar.bz2";
+    sha256 = "b1cb0612e5022de263dc4c6309eba8207d694a40a80dae6762b4a56fa8d4d944";
+  };
+
+  buildInputs =
+    [ cmake qt4 pkgconfig neon qtkeychain sqlite];
+
+  #configurePhase = ''
+  #  mkdir build
+  #  cd build
+  #  cmake -DBUILD_WITH_QT4=on \
+  #        -DCMAKE_INSTALL_PREFIX=$out \
+  #        -DCMAKE_BUILD_TYPE=Release \
+  #        ..
+  #'';
+
+  enableParallelBuilding = true;
+
+  meta = {
+    description = "Synchronise your ownCloud with your computer using this desktop client";
+    homepage = https://owncloud.org;
+    maintainers = with stdenv.lib.maintainers; [ qknight ];
+  };
+}
diff --git a/pkgs/applications/networking/p2p/mldonkey/default.nix b/pkgs/applications/networking/p2p/mldonkey/default.nix
index 57ea62485310..9813393c4b50 100644
--- a/pkgs/applications/networking/p2p/mldonkey/default.nix
+++ b/pkgs/applications/networking/p2p/mldonkey/default.nix
@@ -11,6 +11,7 @@ stdenv.mkDerivation (rec {
   meta = {
     description = "Client for many p2p networks, with multiple frontends";
     homepage = http://mldonkey.sourceforge.net/;
+    license = stdenv.lib.licenses.gpl2;
   };
 
   buildInputs = [ ocaml zlib ncurses bzip2 file gd libpng ];
diff --git a/pkgs/applications/networking/p2p/twister/default.nix b/pkgs/applications/networking/p2p/twister/default.nix
index 8d47ab2d777d..e6fd674e9e7c 100644
--- a/pkgs/applications/networking/p2p/twister/default.nix
+++ b/pkgs/applications/networking/p2p/twister/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, autoconf, automake, libtool, pkgconfig, python
-, boost, db, openssl, geoip, libiconv, miniupnpc
+, boost, db, openssl, geoip, libiconvOrEmpty, miniupnpc
 , srcOnly, fetchgit
 }:
 
@@ -33,8 +33,8 @@ in stdenv.mkDerivation rec {
 
   buildInputs = [
     autoconf automake libtool pkgconfig python
-    boost db openssl geoip libiconv miniupnpc
-  ];
+    boost db openssl geoip miniupnpc
+  ] ++ libiconvOrEmpty;
 
   postPatch = ''
     sed -i -e '/-htmldir/s|(default: [^)]*)|(default: ${twisterHTML})|' \
diff --git a/pkgs/applications/networking/pond/default.nix b/pkgs/applications/networking/pond/default.nix
new file mode 100644
index 000000000000..9d3954d839ba
--- /dev/null
+++ b/pkgs/applications/networking/pond/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, lib, fetchgit, fetchhg, go, trousers }:
+
+let deps = import ./deps.nix {
+  inherit stdenv lib fetchgit fetchhg;
+};
+
+in stdenv.mkDerivation rec {
+  name = "pond";
+
+  buildInputs  = [ go trousers ];
+
+  unpackPhase = ''
+    export GOPATH=$PWD
+    echo $PWD
+    cp -LR ${deps}/src src
+    chmod u+w -R src
+  '';
+
+  installPhase = ''
+    export GOPATH="$PWD"
+    mkdir -p $out/bin
+    go build --tags nogui -v -o $out/bin/pond-cli github.com/agl/pond/client
+  '';
+
+  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/pond/deps.nix b/pkgs/applications/networking/pond/deps.nix
new file mode 100644
index 000000000000..0983ad275e22
--- /dev/null
+++ b/pkgs/applications/networking/pond/deps.nix
@@ -0,0 +1,60 @@
+# This file was generated by go2nix.
+{ stdenv, lib, fetchgit, fetchhg}:
+
+let
+  goDeps = [
+    {
+      root = "github.com/agl/pond";
+      src = fetchgit {
+        url = "git://github.com/agl/pond.git";
+        rev = "f4e441c77a2039814046ff8219629c547fe8b689";
+        sha256 = "f2dfc6cb96cc4b8ae732e41d1958b62036f40cb346df2e14f27b5964a1416026";
+      };
+    }
+    {
+      root = "github.com/agl/ed25519";
+      src = fetchgit {
+        url = "git://github.com/agl/ed25519.git";
+        rev = "d2b94fd789ea21d12fac1a4443dd3a3f79cda72c";
+        sha256 = "83e3010509805d1d315c7aa85a356fda69d91b51ff99ed98a503d63adb3613e9";
+      };
+    }
+    {
+      root = "code.google.com/p/go.crypto";
+      src = fetchhg {
+        url = "https://code.google.com/p/go.crypto";
+        rev = "31393df5baea";
+        sha256 = "0b95dpsvxxapcjjvhj05fdmyn0mzffamc25hvxy7xgsl2l9yy3nw";
+      };
+    }
+    {
+      root = "code.google.com/p/go.net";
+      src = fetchhg {
+        url = "https://code.google.com/p/go.net";
+        rev = "90e232e2462d";
+        sha256 = "0hqvkaa0rbxwbi74xa6aqbkf63zk662x5hp3bp8vbhzkc4yl1h59";
+      };
+    }
+    {
+      root = "code.google.com/p/goprotobuf";
+      src = fetchhg {
+        url = "https://code.google.com/p/goprotobuf";
+        rev = "36be16571e14";
+        sha256 = "14yay2sgfbbs0bx3q03bdqn1kivyvxfdm34rmp2612gvinlll215";
+      };
+    }
+  ];
+
+in
+
+stdenv.mkDerivation rec {
+  name = "go-deps";
+
+  buildCommand =
+    lib.concatStrings
+      (map (dep: ''
+              mkdir -p $out/src/`dirname ${dep.root}`
+              ln -s ${dep.src} $out/src/${dep.root}
+            '') goDeps);
+}
+
diff --git a/pkgs/applications/office/calligra/default.nix b/pkgs/applications/office/calligra/default.nix
index e87053d53264..3c58d367ab1e 100644
--- a/pkgs/applications/office/calligra/default.nix
+++ b/pkgs/applications/office/calligra/default.nix
@@ -6,11 +6,11 @@
  }:
 
 stdenv.mkDerivation rec {
-  name = "calligra-2.7.5";
+  name = "calligra-2.8.6";
 
   src = fetchurl {
     url = "mirror://kde/stable/${name}/${name}.tar.xz";
-    sha256 = "0png8ac10xywxsml1z18as18kc9k9162l6an67hi6lgx0rv27ldi";
+    sha256 = "587dda4a340f46e28fe69de8f292fa33a3cf237445013f6ce5ceafa191cb3694";
   };
 
   nativeBuildInputs = [ cmake perl pkgconfig ];
diff --git a/pkgs/applications/office/zim/default.nix b/pkgs/applications/office/zim/default.nix
index 658f460793f1..85ec081ea416 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.60";
+  version = "0.62";
   namePrefix = "";
   
   src = fetchurl {
-    url = "http://zim-wiki.org/downloads/zim-0.61.tar.gz";
-    sha256 = "0jncxkf83bwra3022jbvjfwhk5w8az0jlwr8nsvm7wa1zfrajhsq";
+    url = "http://zim-wiki.org/downloads/${name}.tar.gz";
+    sha256 = "1hmx24jjazqvs3z6h10jl8wrqxyvvk0wc807v222vaf1sbmjmmhr";
   };
 
   propagatedBuildInputs = [ pythonPackages.sqlite3 pygtk /*pythonPackages.pyxdg*/ pygobject ];
@@ -100,4 +100,3 @@ buildPythonPackage rec {
       license = stdenv.lib.licenses.gpl2Plus;
   };
 }
-
diff --git a/pkgs/applications/science/astronomy/stellarium/default.nix b/pkgs/applications/science/astronomy/stellarium/default.nix
index 6b84143d0138..d7ae496f5aa6 100644
--- a/pkgs/applications/science/astronomy/stellarium/default.nix
+++ b/pkgs/applications/science/astronomy/stellarium/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, cmake, freetype, libpng, mesa, gettext, openssl, qt4, perl, libiconv }:
+{ stdenv, fetchurl, cmake, freetype, libpng, mesa, gettext, openssl, qt4, perl
+, libiconvOrEmpty }:
 
 stdenv.mkDerivation rec {
   name = "stellarium-0.12.4";
@@ -8,7 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "11367hv9niyz9v47lf31vjsqkgc8da0vy2nhiyxgmk1i49p1pbhg";
   };
 
-  buildInputs = [ cmake freetype libpng mesa gettext openssl qt4 perl libiconv ];
+  buildInputs = [ cmake freetype libpng mesa gettext openssl qt4 perl ]
+    ++ libiconvOrEmpty;
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/science/logic/coq/HEAD.nix b/pkgs/applications/science/logic/coq/HEAD.nix
index 293fcaf8cee6..edf3091ef169 100644
--- a/pkgs/applications/science/logic/coq/HEAD.nix
+++ b/pkgs/applications/science/logic/coq/HEAD.nix
@@ -3,7 +3,7 @@
 {stdenv, fetchgit, writeText, pkgconfig, ocaml, findlib, camlp5, ncurses, lablgtk ? null}:
 
 let
-  version = "8.5pre-edbd6a21";
+  version = "8.5pre-52f51fb3";
   coq-version = "8.5";
   buildIde = lablgtk != null;
   ideFlags = if buildIde then "-lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else "";
@@ -17,8 +17,8 @@ stdenv.mkDerivation {
 
   src = fetchgit {
     url = git://scm.gforge.inria.fr/coq/coq.git;
-    rev = "edbd6a211c934778d9721c36463836ef902b4fdd";
-    sha256 = "19zk1lghqljh86z2kv6kpxwzinpkbwxzf244dmszx31zw4zdrskl";
+    rev = "52f51fb385d6a1c90bd7d055185fee50ef2670be";
+    sha256 = "0pgp59j2j8vk7nmcja5smly39dpkqfhpp29wpsn71piq6n52pql3";
   };
 
   buildInputs = [ pkgconfig ocaml findlib camlp5 ncurses lablgtk ];
diff --git a/pkgs/applications/science/logic/hol_light/Makefile.patch b/pkgs/applications/science/logic/hol_light/Makefile.patch
deleted file mode 100644
index ae521004f338..000000000000
--- a/pkgs/applications/science/logic/hol_light/Makefile.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: Makefile
-===================================================================
---- /Makefile	(révision 199)
-+++ /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" ; \
-+                  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" ; \
-                        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 9b8f25cab779..1e4fe08639f5 100644
--- a/pkgs/applications/science/logic/hol_light/default.nix
+++ b/pkgs/applications/science/logic/hol_light/default.nix
@@ -10,18 +10,16 @@ in
 
 stdenv.mkDerivation rec {
   name     = "hol_light-${version}";
-  version  = "199";
+  version  = "205";
 
   src = fetchsvn {
     url = http://hol-light.googlecode.com/svn/trunk;
     rev = version;
-    sha256 = "0308nw91iww18wvl30g5ygf6lhw329jh1vqi9hsh30inhb3dx3jw";
+    sha256 = "1qnk3fkfr6f74nd8wsi84s9kg872cw766sa15a2ldlhs9ma76chj";
   };
 
   buildInputs = [ ocaml findlib camlp5 ];
 
-  patches = [ ./Makefile.patch ];
-
   installPhase = ''
     mkdir -p "$out/lib/hol_light" "$out/bin"
     cp -a  . $out/lib/hol_light
diff --git a/pkgs/applications/science/math/R/setup-hook.sh b/pkgs/applications/science/math/R/setup-hook.sh
index a31289bbfba9..09a775db9bf5 100644
--- a/pkgs/applications/science/math/R/setup-hook.sh
+++ b/pkgs/applications/science/math/R/setup-hook.sh
@@ -2,4 +2,4 @@ addRLibPath () {
     addToSearchPath R_LIBS_SITE $1/library
 }
 
-envHooks=(${envHooks[@]} addRLibPath)
+envHooks+=(addRLibPath)
diff --git a/pkgs/applications/version-management/git-and-tools/default.nix b/pkgs/applications/version-management/git-and-tools/default.nix
index 4cabe3a4e2ab..71fb75a21576 100644
--- a/pkgs/applications/version-management/git-and-tools/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/default.nix
@@ -99,4 +99,6 @@ rec {
   git-remote-hg = callPackage ./git-remote-hg { };
 
   gitRemoteGcrypt = callPackage ./git-remote-gcrypt { };
+
+  git-extras = callPackage ./git-extras { };
 }
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
new file mode 100644
index 000000000000..3392c1c00217
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "git-extras-${version}";
+  version = "2.2.0";
+
+  src = fetchurl {
+    url = "https://github.com/tj/git-extras/archive/${version}.tar.gz";
+    sha256 = "0qwgaj0r9lsmwricpnma9rm7llfrcqarcfk5iq3ilxkns8a334va";
+  };
+
+  phases = [ "unpackPhase" "installPhase" ];
+
+  makeFlags = "DESTDIR=$(out) PREFIX=";
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/tj/git-extras;
+    description = "GIT utilities -- repo summary, repl, changelog population, author commit percentages and more";
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = [ maintainers.spwhitt ];
+  };
+}
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 7ba69a9fc182..69e88f32c41d 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -24,7 +24,12 @@ stdenv.mkDerivation {
     sha256 = "0mvgvr2hz25p49dhhizcw9591f2h17y2699mpmndis3kzap0c6zy";
   };
 
-  patches = [ ./docbook2texi.patch ./symlinks-in-bin.patch ./cert-path.patch ];
+  patches = [
+    ./docbook2texi.patch
+    ./symlinks-in-bin.patch
+    ./cert-path.patch
+    ./ssl-cert-file.patch
+  ];
 
   buildInputs = [curl openssl zlib expat gettext cpio makeWrapper]
     ++ stdenv.lib.optionals withManual [ asciidoc texinfo xmlto docbook2x
@@ -142,6 +147,6 @@ stdenv.mkDerivation {
     '';
 
     platforms = stdenv.lib.platforms.all;
-    maintainers = with stdenv.lib.maintainers; [ simons the-kenny ];
+    maintainers = with stdenv.lib.maintainers; [ simons the-kenny wmertens ];
   };
 }
diff --git a/pkgs/applications/version-management/git-and-tools/git/ssl-cert-file.patch b/pkgs/applications/version-management/git-and-tools/git/ssl-cert-file.patch
new file mode 100644
index 000000000000..dd216b7bf6f8
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git/ssl-cert-file.patch
@@ -0,0 +1,13 @@
+This patch adds support for the OpenSSL SSL_CERT_FILE environment variable.
+GIT_SSL_CAINFO still takes precedence.
+
+--- git-orig/http.c.orig	2014-11-25 23:27:56.000000000 +0100
++++ git-orig/http.c	2014-11-25 23:28:48.000000000 +0100
+@@ -433,6 +433,7 @@
+ #if LIBCURL_VERSION_NUM >= 0x070908
+ 	set_from_env(&ssl_capath, "GIT_SSL_CAPATH");
+ #endif
++	set_from_env(&ssl_cainfo, "SSL_CERT_FILE");
+ 	set_from_env(&ssl_cainfo, "GIT_SSL_CAINFO");
+ 
+ 	set_from_env(&user_agent, "GIT_HTTP_USER_AGENT");
diff --git a/pkgs/applications/version-management/gource/default.nix b/pkgs/applications/version-management/gource/default.nix
index 56095762f04b..8d784b3e3d30 100644
--- a/pkgs/applications/version-management/gource/default.nix
+++ b/pkgs/applications/version-management/gource/default.nix
@@ -3,12 +3,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.42";
+  version = "0.43";
   name = "gource-${version}";
 
   src = fetchurl {
     url = "https://github.com/acaudwell/Gource/releases/download/${name}/${name}.tar.gz";
-    sha256 = "08ab57z44y8b5wxg1193j6hiy50njbpi6dwafjh6nb0apcq8ziz5";
+    sha256 = "1r5x9ai86f609hf584n0xaf5hxkbilj5qihn89v7ghpmwk40m945";
   };
 
   buildInputs = [
@@ -20,10 +20,10 @@ stdenv.mkDerivation rec {
 
   NIX_CFLAGS_COMPILE = "-fpermissive"; # fix build with newer gcc versions
 
-  meta = {
-    homepage = "http://code.google.com/p/gource/";
-    description = "software version control visualization tool";
-    license = stdenv.lib.licenses.gpl3Plus;
+  meta = with stdenv.lib; {
+    homepage = http://code.google.com/p/gource/;
+    description = "A Software version control visualization tool";
+    license = licenses.gpl3Plus;
     longDescription = ''
       Software projects are displayed by Gource as an animated tree with
       the root directory of the project at its centre. Directories
@@ -34,6 +34,7 @@ stdenv.mkDerivation rec {
       Mercurial and Bazaar and SVN. Gource can also parse logs produced
       by several third party tools for CVS repositories.
     '';
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ pSub ];
   };
 }
diff --git a/pkgs/applications/version-management/mr/default.nix b/pkgs/applications/version-management/mr/default.nix
index 29fafc4db74c..d52802e42f1d 100644
--- a/pkgs/applications/version-management/mr/default.nix
+++ b/pkgs/applications/version-management/mr/default.nix
@@ -1,56 +1,31 @@
 { stdenv, fetchurl, perl }:
 
 stdenv.mkDerivation rec {
-
-  version = "1.13";
-  name = "mr-" + version;
+  version = "1.20141024";
+  name = "mr-${version}";
 
   src = fetchurl {
-    url = "http://ftp.de.debian.org/debian/pool/main/m/mr/mr_${version}.tar.gz";
-    sha256 = "1q3qxk8dwbv30v2xxh852wnwl1msgkvk5cgxyicpqj8kh5b96zlz";
+    url = "https://github.com/joeyh/myrepos/archive/${version}.tar.gz";
+    sha256 = "7b68183476867d15d6f111fc9678335b94824dcfa09f07c761a72d64cdf5ad4a";
   };
 
-  buildInputs = [perl];
-
-  buildPhase = ''
-    make build
-  '';
+  buildInputs = [ perl ];
 
-  installPhase = ''
-    mkdir -pv $out/bin $out/share/man/man1 $out/share/mr
-    cp -v mr $out/bin
-    cp -v webcheckout $out/bin
-    cp -v mr.1 $out/share/man/man1
-    cp -v webcheckout.1 $out/share/man/man1
-    cp -v lib/* $out/share/mr
-  '';
+  makeFlags = "PREFIX=$(out)";
 
   meta = {
     description = "Multiple Repository management tool";
-    longDescription = ''The mr(1) command can checkout, update, or perform other actions on a
-      set of repositories as if they were one combined respository. It
-      supports any combination of subversion, git, cvs, mercurial, bzr,
-      darcs, cvs, vcsh, fossil and veracity repositories, and support for
-      other revision control systems can easily be added. (There are
-      extensions adding support for unison and git-svn.)
-
-      It is extremely configurable via simple shell scripting. Some examples
-      of things it can do include:
-
-        - Update a repository no more frequently than once every twelve
-          hours.
-        - Run an arbitrary command before committing to a
-          repository.
-        - When updating a git repository, pull from two
-          different upstreams and merge the two together.
-        - Run several repository updates in parallel, greatly speeding
-          up the update process.
-        - Remember actions that failed due to a laptop being
-          offline, so they can be retried when it comes back online.
+    longDescription = ''
+      mr is a tool to manage all your version control repos. It can
+      checkout, update, or perform other actions on a set of
+      repositories as if they were one combined repository. It
+      supports any combination of subversion, git, cvs, mercurial,
+      bzr, darcs, fossil and veracity repositories, and support for
+      other version control systems can easily be added.
     '';
-    homepage = http://joeyh.name/code/mr/;
+    homepage = http://myrepos.branchable.com/;
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.unix;
-    maintainers = [ stdenv.lib.maintainers.antono ];
+    maintainers = with stdenv.lib.maintainers; [ antono henrytill ];
   };
 }
diff --git a/pkgs/applications/version-management/src/default.nix b/pkgs/applications/version-management/src/default.nix
new file mode 100644
index 000000000000..ced82dd45c00
--- /dev/null
+++ b/pkgs/applications/version-management/src/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, python, rcs, git }:
+
+stdenv.mkDerivation rec {
+  name = "src-0.13";
+
+  src = fetchurl {
+    url = "http://www.catb.org/~esr/src/${name}.tar.gz";
+    sha256 = "03x0slgi6bnzgfn7f9qbl6jma0pj7357kwdh832l3v8zafk41p51";
+  };
+
+  buildInputs = [ python ];
+
+  patches = [ ./path.patch ];
+
+  postPatch = ''
+    sed -i \
+      -e 's|@python@|${python}|' \
+      -e 's|@rcs@|${rcs}|' \
+      -e 's|@git@|${git}|' \
+      src srctest
+  '';
+
+  makeFlags = [ "prefix=$(out)" ];
+
+  doCheck = true;
+
+  meta = {
+    description = "Simple single-file revision control";
+
+    homepage = http://www.catb.org/~esr/src/;
+
+    license = [ stdenv.lib.licenses.bsd3 ];
+
+    maintainers = [ stdenv.lib.maintainers.shlevy ];
+
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/applications/version-management/src/path.patch b/pkgs/applications/version-management/src/path.patch
new file mode 100644
index 000000000000..ef500c8e04e7
--- /dev/null
+++ b/pkgs/applications/version-management/src/path.patch
@@ -0,0 +1,30 @@
+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 c2a14665a898..1ec4866f1aa4 100644
--- a/pkgs/applications/version-management/subversion/default.nix
+++ b/pkgs/applications/version-management/subversion/default.nix
@@ -38,16 +38,14 @@ stdenv.mkDerivation rec {
     ${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"}
-    ${if saslSupport then "--enable-sasl --with-sasl=${sasl}" else "--disable-sasl"}
-    ${if httpSupport then "--enable-serf --with-serf=${serf}" else "--disable-serf"}
+    ${if saslSupport then "--with-sasl=${sasl}" else "--without-sasl"}
+    ${if httpSupport then "--with-serf=${serf}" else "--without-serf"}
     --with-zlib=${zlib}
     --with-sqlite=${sqlite}
   '';
 
   preBuild = ''
     makeFlagsArray=(APACHE_LIBEXECDIR=$out/modules)
-  '' + stdenv.lib.optionalString stdenv.isDarwin ''
-    substituteInPlace configure --replace "-no-cpp-precomp" ""
   '';
 
   postInstall = ''
@@ -73,10 +71,6 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  # Hack to build on Mac OS X. The system header files use C99-style
-  # comments, but Subversion passes -std=c90.
-  NIX_CFLAGS_COMPILE = "-std=c99";
-
   meta = {
     description = "A version control system intended to be a compelling replacement for CVS in the open source community";
     homepage = http://subversion.apache.org/;
diff --git a/pkgs/applications/video/aegisub/default.nix b/pkgs/applications/video/aegisub/default.nix
index 579990746097..c32235a592fd 100644
--- a/pkgs/applications/video/aegisub/default.nix
+++ b/pkgs/applications/video/aegisub/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl
-, libX11, gettext, wxGTK
-, libiconv, fontconfig, freetype
+, libX11, wxGTK
+, libiconvOrEmpty, fontconfig, freetype
 , mesa
 , libass, fftw, ffms
 , ffmpeg, pkgconfig, zlib # Undocumented (?) dependencies
@@ -29,16 +29,20 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = with stdenv.lib;
-  [ intltool libX11 gettext wxGTK libiconv fontconfig freetype mesa libass fftw ffms ffmpeg pkgconfig zlib icu boost ]
-  ++ optional spellChecking hunspell
-  ++ optional automationSupport lua
-  ++ optional openalSupport openal
-  ++ optional alsaSupport alsaLib
-  ++ optional pulseaudioSupport pulseaudio
-  ++ optional portaudioSupport portaudio
-  ;
-
-  NIX_LDFLAGS = "-liconv -lavutil -lavformat -lavcodec -lswscale -lz -lm -lGL";
+  [ pkgconfig intltool libX11 wxGTK fontconfig freetype mesa
+    libass fftw ffms ffmpeg zlib icu boost boost.lib
+  ]
+    ++ libiconvOrEmpty
+    ++ optional spellChecking hunspell
+    ++ optional automationSupport lua
+    ++ optional openalSupport openal
+    ++ optional alsaSupport alsaLib
+    ++ optional pulseaudioSupport pulseaudio
+    ++ optional portaudioSupport portaudio
+    ;
+
+
+  enableParallelBuilding = true;
 
   postInstall = "ln -s $out/bin/aegisub-* $out/bin/aegisub";
 
diff --git a/pkgs/applications/video/makemkv/default.nix b/pkgs/applications/video/makemkv/default.nix
index 3513f76da4e3..9f360e964af5 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.8.14";
+  ver = "1.9.0";
   builder = ./builder.sh;
 
   src_bin = fetchurl {
     url = "http://www.makemkv.com/download/makemkv-bin-${ver}.tar.gz";
-    sha256 = "1kjxawqh6xnjcgvaqy7idg8k0g3zqrr1w5r2r3bf11pg0h1ys5l5";
+    sha256 = "1rcvg7a1h59mfwsl5w0fr89m101pkqm9vgj06dl91hkgp5nh3wah";
   };
 
   src_oss = fetchurl { 
     url = "http://www.makemkv.com/download/makemkv-oss-${ver}.tar.gz";
-    sha256 = "0cq3h45yyqma0kzi594dz0gbgjf3gyjcgxkiynifz3hacrbxbnd5";
+    sha256 = "0415gw2nacb57sz5m0hcaznynmznc6v8qb6028qnsqgv39d4w8f8";
   };
 
   buildInputs = [openssl qt4 mesa zlib pkgconfig libav];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   libPath = stdenv.lib.makeLibraryPath [stdenv.gcc.gcc openssl mesa qt4 zlib ] 
           + ":" + stdenv.gcc.gcc + "/lib64";
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "convert blu-ray and dvd to mkv";
     longDescription = ''
       makemkv is a one-click QT application that transcodes an encrypted
@@ -33,7 +33,8 @@ stdenv.mkDerivation rec {
       can always download the latest version from makemkv.com that will reset the
       expiration date.
     '';
-    license = stdenv.lib.licenses.unfree;
+    license = licenses.unfree;
     homepage = http://makemkv.com;
+    maintainers = [ maintainers.titanous ];
   };
 }
diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix
index 46595c5609fa..5acdcac97372 100644
--- a/pkgs/applications/video/mpv/default.nix
+++ b/pkgs/applications/video/mpv/default.nix
@@ -20,7 +20,7 @@
 # For screenshots
 , libpngSupport ? true, libpng ? null
 # for Youtube support
-, quviSupport ? false, libquvi ? null
+, youtubeSupport ? false, youtubeDL ? null
 , cacaSupport ? false, libcaca ? null
 , vaapiSupport ? false, libva ? null
 }:
@@ -41,7 +41,7 @@ assert jackaudioSupport -> jack2 != null;
 assert pulseSupport -> pulseaudio != null;
 assert bs2bSupport -> libbs2b != null;
 assert libpngSupport -> libpng != null;
-assert quviSupport -> libquvi != null;
+assert youtubeSupport -> youtubeDL != null;
 assert cacaSupport -> libcaca != null;
 
 # Purity problem: Waf needed to be is downloaded by bootstrap.py
@@ -50,23 +50,23 @@ assert cacaSupport -> libcaca != null;
 
 let
   waf = fetchurl {
-    url = http://ftp.waf.io/pub/release/waf-1.7.16;
-    sha256 = "b64dc26c882572415fd450b745006107965f3fe17b357e3eb43d6676c9635a61";
+    url = http://ftp.waf.io/pub/release/waf-1.8.1;
+    sha256 = "ec658116ba0b96629d91fde0b32321849e866e0819f1e835c4c2c7f7ffe1a21d";
   };
 
 in
 
 stdenv.mkDerivation rec {
   name = "mpv-${version}";
-  version = "0.6.1";
+  version = "0.7.0";
 
   src = fetchurl {
     url = "https://github.com/mpv-player/mpv/archive/v${version}.tar.gz";
-    sha256 = "03vzsvvb1dvm4rn70m97fdbzhlqj9crk7zpvcp00bcl956xjfc9s";
+    sha256 = "0rz8dp44yag442gamaa2vdmf69h25gqh2bgybx89prkfh8n4hy8x";
   };
 
   buildInputs = with stdenv.lib;
-    [ waf python3 lua perl freetype pkgconfig ffmpeg libass docutils which libpthreadstubs lua5_sockets ]
+    [ python3 lua perl freetype pkgconfig ffmpeg libass docutils which libpthreadstubs lua5_sockets ]
     ++ optionals x11Support [ libX11 libXext mesa libXxf86vm ]
     ++ optional alsaSupport alsaLib
     ++ optional xvSupport libXv
@@ -82,7 +82,7 @@ stdenv.mkDerivation rec {
     ++ optional speexSupport speex
     ++ optional bs2bSupport libbs2b
     ++ optional libpngSupport libpng
-    ++ optional quviSupport libquvi
+    ++ optional youtubeSupport youtubeDL
     ++ optional sdl2Support SDL2
     ++ optional cacaSupport libcaca
     ++ optional vaapiSupport libva
@@ -126,6 +126,5 @@ stdenv.mkDerivation rec {
 }
 
 # TODO: Wayland support
-# TODO: investigate libquvi problems (related to Youtube support)
 # TODO: investigate caca support
 # TODO: investigate lua5_sockets bug
diff --git a/pkgs/applications/virtualization/bochs/default.nix b/pkgs/applications/virtualization/bochs/default.nix
index a3e7a5b2994d..914114467e67 100644
--- a/pkgs/applications/virtualization/bochs/default.nix
+++ b/pkgs/applications/virtualization/bochs/default.nix
@@ -2,7 +2,7 @@
 , pkgconfig, libtool
 , gtk, mesa, readline, libX11, libXpm
 , docbook_xml_dtd_45, docbook_xsl
-, sdlSupport ? true, SDL ? null
+, sdlSupport ? true, SDL2 ? null
 , termSupport ? true , ncurses ? null
 , wxSupport ? false, wxGTK ? null # Warning! Broken
 # Optional, undocumented dependencies
@@ -10,7 +10,7 @@
 , curlSupport ? false, curl ? null
 }:
 
-assert sdlSupport -> (SDL != null);
+assert sdlSupport -> (SDL2 != null);
 assert termSupport -> (ncurses != null);
 assert wxSupport -> (gtk != null && wxGTK != null);
 assert wgetSupport -> (wget != null);
@@ -19,11 +19,11 @@ assert curlSupport -> (curl != null);
 stdenv.mkDerivation rec {
 
   name = "bochs-${version}";
-  version = "2.6.6";
+  version = "2.6.7";
 
   src = fetchurl {
     url = "http://downloads.sourceforge.net/project/bochs/bochs/${version}/${name}.tar.gz";
-    sha256 = "0nlrl218x93vz97n46aw2szsalx97r020mn43fjsif100v7zix6f";
+    sha256 = "10l2pgzwnmng0rd44kqv7y46nwpcc18j53h3kf3dlqlnd7mlwdd4";
   };
 
   # The huge list of configurable options
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
   buildInputs = with stdenv.lib;
   [ pkgconfig libtool gtk mesa readline libX11 libXpm docbook_xml_dtd_45 docbook_xsl ]
   ++ optionals termSupport [ ncurses ]
-  ++ optionals sdlSupport [ SDL ]
+  ++ optionals sdlSupport [ SDL2 ]
   ++ optionals wxSupport [ wxGTK ]
   ++ optionals wgetSupport [ wget ]
   ++ optionals curlSupport [ curl ];
@@ -105,7 +105,7 @@ stdenv.mkDerivation rec {
     "--enable-raw-serial=no" ]
     # Boolean flags
     ++ stdenv.lib.optional termSupport "--with-term"
-    ++ stdenv.lib.optional sdlSupport "--with-sdl"
+    ++ stdenv.lib.optional sdlSupport "--with-sdl2"
     ++ stdenv.lib.optional wxSupport "--with-wx"
     ++ stdenv.lib.optional largefile "--enable-largefile"
     ++ stdenv.lib.optional idleHack "--enable-idle-hack"
diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
index b5292b908f7b..354666f3374b 100644
--- a/pkgs/applications/virtualization/docker/default.nix
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -3,11 +3,11 @@ btrfsProgs, iptables, bash, e2fsprogs, xz}:
 
 stdenv.mkDerivation rec {
   name = "docker-${version}";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchurl {
     url = "https://github.com/dotcloud/docker/archive/v${version}.tar.gz";
-    sha256 = "09bn88i8acv7kw39js1p7mgf3sglq7d782xnafkp0i97svf0x4y9";
+    sha256 = "0w1gz1apkcrmhgng2rkkzy7wmxm68zgs6a16bi4cx3a38n4mgday";
   };
 
   buildInputs = [ makeWrapper go sqlite lxc iproute bridge_utils devicemapper btrfsProgs iptables e2fsprogs];
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index 68ac9ea0716e..a188d6620960 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -6,6 +6,7 @@
 , pythonBindings ? false, python ? null
 , enableExtensionPack ? false, requireFile ? null, patchelf ? null
 , pulseSupport ? false, pulseaudio ? null
+, enableHardening ? true
 }:
 
 with stdenv.lib;
@@ -77,34 +78,45 @@ in stdenv.mkDerivation {
         -i configure
     ls kBuild/bin/linux.x86/k* tools/linux.x86/bin/* | xargs -n 1 patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux.so.2
     ls kBuild/bin/linux.amd64/k* tools/linux.amd64/bin/* | xargs -n 1 patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux-x86-64.so.2
-    find . -type f | xargs sed 's/depmod -a/true/' -i
+    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
     export USER=nix
     set +x
   '';
 
+  patches = optional enableHardening ./hardened.patch;
+
   configurePhase = ''
     sourcedir="$(pwd)"
+    cat >> LocalConfig.kmk <<LOCAL_CONFIG
+    VBOX_WITH_TESTCASES          :=
+    VBOX_WITH_TESTSUITE          :=
+    VBOX_WITH_VALIDATIONKIT      :=
+    VBOX_WITH_DOCS               :=
+    VBOX_WITH_WARNINGS_AS_ERRORS :=
+
+    VBOX_WITH_ORIGIN           :=
+    VBOX_PATH_APP_PRIVATE_ARCH := $out/libexec/virtualbox
+    VBOX_PATH_SHARED_LIBS      := $out/libexec/virtualbox
+    VBOX_WITH_RUNPATH          := $out/libexec/virtualbox
+    VBOX_PATH_APP_PRIVATE      := $out
+    VBOX_PATH_APP_DOCS         := $out/doc
+    ${optionalString javaBindings ''
+    VBOX_JAVA_HOME             := ${jdk}
+    ''}
+    LOCAL_CONFIG
+
     ./configure --with-qt4-dir=${qt4} \
       ${optionalString (!javaBindings) "--disable-java"} \
       ${optionalString (!pythonBindings) "--disable-python"} \
       ${optionalString (!pulseSupport) "--disable-pulse"} \
-      --disable-hardening --disable-kmods \
-      --with-mkisofs=${xorriso}/bin/xorrisofs
+      ${optionalString (!enableHardening) "--disable-hardening"} \
+      --disable-kmods --with-mkisofs=${xorriso}/bin/xorrisofs
     sed -e 's@PKG_CONFIG_PATH=.*@PKG_CONFIG_PATH=${libIDL}/lib/pkgconfig:${glib}/lib/pkgconfig ${libIDL}/bin/libIDL-config-2@' \
         -i AutoConfig.kmk
     sed -e 's@arch/x86/@@' \
         -i Config.kmk
     substituteInPlace Config.kmk --replace "VBOX_WITH_TESTCASES = 1" "#"
-    cat >> AutoConfig.kmk << END_PATHS
-    VBOX_PATH_APP_PRIVATE := $out
-    VBOX_PATH_APP_DOCS := $out/doc
-    ${optionalString javaBindings ''
-      VBOX_JAVA_HOME := ${jdk}
-    ''}
-    END_PATHS
-    echo "VBOX_WITH_DOCS :=" >> LocalConfig.kmk
-    echo "VBOX_WITH_WARNINGS_AS_ERRORS :=" >> LocalConfig.kmk
   '';
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/virtualization/virtualbox/hardened.patch b/pkgs/applications/virtualization/virtualbox/hardened.patch
new file mode 100644
index 000000000000..b789ddbeacbd
--- /dev/null
+++ b/pkgs/applications/virtualization/virtualbox/hardened.patch
@@ -0,0 +1,26 @@
+diff --git a/src/VBox/HostDrivers/Support/SUPR3HardenedVerify.cpp b/src/VBox/HostDrivers/Support/SUPR3HardenedVerify.cpp
+index c39d2f7..f6a4031 100644
+--- a/src/VBox/HostDrivers/Support/SUPR3HardenedVerify.cpp
++++ b/src/VBox/HostDrivers/Support/SUPR3HardenedVerify.cpp
+@@ -1415,7 +1415,7 @@ static int supR3HardenedVerifyFsObject(PCSUPR3HARDENEDFSOBJSTATE pFsObjState, bo
+         NOREF(fRelaxed);
+ #else
+         NOREF(fRelaxed);
+-        bool fBad = true;
++        bool fBad = !(fDir && pFsObjState->Stat.st_mode & S_ISVTX && !suplibHardenedStrCmp(pszPath, "/nix/store"));
+ #endif
+         if (fBad)
+             return supR3HardenedSetError3(VERR_SUPLIB_WRITE_NON_SYS_GROUP, pErrInfo,
+diff --git a/src/VBox/Main/src-server/MachineImpl.cpp b/src/VBox/Main/src-server/MachineImpl.cpp
+index 95dc9a7..39170bc 100644
+--- a/src/VBox/Main/src-server/MachineImpl.cpp
++++ b/src/VBox/Main/src-server/MachineImpl.cpp
+@@ -7326,7 +7326,7 @@ HRESULT Machine::i_launchVMProcess(IInternalSessionControl *aControl,
+ 
+     /* get the path to the executable */
+     char szPath[RTPATH_MAX];
+-    RTPathAppPrivateArch(szPath, sizeof(szPath) - 1);
++    RTStrCopy(szPath, sizeof(szPath) - 1, "/var/setuid-wrappers");
+     size_t cchBufLeft = strlen(szPath);
+     szPath[cchBufLeft++] = RTPATH_DELIMITER;
+     szPath[cchBufLeft] = 0;