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/banshee/default.nix55
-rw-r--r--pkgs/applications/audio/clementine/default.nix6
-rw-r--r--pkgs/applications/audio/drumgizmo/default.nix6
-rw-r--r--pkgs/applications/audio/ekho/default.nix1
-rw-r--r--pkgs/applications/audio/seq24/default.nix9
-rw-r--r--pkgs/applications/audio/spotify/default.nix4
-rw-r--r--pkgs/applications/audio/vmpk/default.nix1
-rw-r--r--pkgs/applications/audio/xmp/default.nix1
-rw-r--r--pkgs/applications/audio/zam-plugins/default.nix2
-rw-r--r--pkgs/applications/audio/zynaddsubfx/default.nix8
-rw-r--r--pkgs/applications/backup/crashplan/CrashPlanDesktop.patch16
-rw-r--r--pkgs/applications/backup/crashplan/default.nix18
-rw-r--r--pkgs/applications/editors/aseprite/default.nix1
-rw-r--r--pkgs/applications/editors/atom/default.nix4
-rw-r--r--pkgs/applications/editors/eclipse/default.nix17
-rw-r--r--pkgs/applications/editors/eclipse/plugins.nix6
-rw-r--r--pkgs/applications/editors/emacs-modes/elpa-packages.nix10
-rw-r--r--pkgs/applications/editors/geany/default.nix4
-rw-r--r--pkgs/applications/editors/idea/default.nix12
-rw-r--r--pkgs/applications/editors/kdevelop/default.nix10
-rw-r--r--pkgs/applications/editors/kdevelop/gettext.patch8
-rw-r--r--pkgs/applications/editors/tiled/default.nix1
-rw-r--r--pkgs/applications/editors/tweak/default.nix21
-rw-r--r--pkgs/applications/editors/vim/default.nix4
-rw-r--r--pkgs/applications/graphics/darktable/default.nix6
-rw-r--r--pkgs/applications/graphics/digikam/default.nix224
-rw-r--r--pkgs/applications/graphics/hugin/default.nix4
-rw-r--r--pkgs/applications/graphics/leocad/default.nix5
-rw-r--r--pkgs/applications/graphics/openimageio/default.nix4
-rw-r--r--pkgs/applications/graphics/pencil/default.nix4
-rw-r--r--pkgs/applications/graphics/phototonic/default.nix6
-rw-r--r--pkgs/applications/graphics/sane/backends/git.nix6
-rw-r--r--pkgs/applications/graphics/simple-scan/default.nix8
-rw-r--r--pkgs/applications/misc/abook/default.nix18
-rw-r--r--pkgs/applications/misc/blender/default.nix6
-rw-r--r--pkgs/applications/misc/buku/default.nix34
-rw-r--r--pkgs/applications/misc/calibre/default.nix4
-rw-r--r--pkgs/applications/misc/cdrtools/default.nix5
-rw-r--r--pkgs/applications/misc/d4x/default.nix2
-rw-r--r--pkgs/applications/misc/deco/default.nix36
-rw-r--r--pkgs/applications/misc/electrum/default.nix4
-rw-r--r--pkgs/applications/misc/emem/default.nix12
-rw-r--r--pkgs/applications/misc/gnuradio/default.nix8
-rw-r--r--pkgs/applications/misc/gqrx/default.nix18
-rw-r--r--pkgs/applications/misc/josm/default.nix4
-rw-r--r--pkgs/applications/misc/keepass/default.nix4
-rw-r--r--pkgs/applications/misc/khal/default.nix1
-rw-r--r--pkgs/applications/misc/mediainfo-gui/default.nix21
-rw-r--r--pkgs/applications/misc/mediainfo/default.nix10
-rw-r--r--pkgs/applications/misc/octoprint/0001-Don-t-use-static-library.patch16
-rw-r--r--pkgs/applications/misc/octoprint/default.nix4
-rw-r--r--pkgs/applications/misc/octoprint/plugins.nix4
-rw-r--r--pkgs/applications/misc/pgadmin/default.nix2
-rw-r--r--pkgs/applications/misc/ranger/default.nix1
-rw-r--r--pkgs/applications/misc/slic3r/default.nix2
-rw-r--r--pkgs/applications/misc/stardict/stardict-3.0.3-compositelookup_cpp.patch19
-rw-r--r--pkgs/applications/misc/stardict/stardict-3.0.3-correct-glib-include.patch13
-rw-r--r--pkgs/applications/misc/stardict/stardict-3.0.3-entry.patch20
-rw-r--r--pkgs/applications/misc/stardict/stardict-3.0.3-gcc46.patch13
-rw-r--r--pkgs/applications/misc/stardict/stardict-3.0.3-overflow.patch26
-rw-r--r--pkgs/applications/misc/stardict/stardict-3.0.3-zlib-1.2.5.2.patch39
-rw-r--r--pkgs/applications/misc/stardict/stardict.nix44
-rw-r--r--pkgs/applications/misc/xautoclick/default.nix24
-rw-r--r--pkgs/applications/networking/browsers/chromium/browser.nix2
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix46
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix7
-rw-r--r--pkgs/applications/networking/browsers/chromium/patches/build_fixes_46.patch (renamed from pkgs/applications/networking/browsers/chromium/source/build_fixes_46.patch)0
-rw-r--r--pkgs/applications/networking/browsers/chromium/patches/nix_plugin_paths_46.patch (renamed from pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_46.patch)0
-rw-r--r--pkgs/applications/networking/browsers/chromium/patches/nix_plugin_paths_50.patch (renamed from pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_50.patch)0
-rw-r--r--pkgs/applications/networking/browsers/chromium/patches/widevine.patch (renamed from pkgs/applications/networking/browsers/chromium/source/widevine.patch)0
-rw-r--r--pkgs/applications/networking/browsers/chromium/plugins.nix15
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/default.nix78
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/sources.nix18
-rw-r--r--pkgs/applications/networking/browsers/chromium/update.nix (renamed from pkgs/applications/networking/browsers/chromium/source/update.nix)19
-rwxr-xr-xpkgs/applications/networking/browsers/chromium/update.sh5
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.nix18
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/sources.nix362
-rw-r--r--pkgs/applications/networking/browsers/firefox/default.nix16
-rw-r--r--pkgs/applications/networking/browsers/google-chrome/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/lynx/default.nix13
-rw-r--r--pkgs/applications/networking/browsers/midori/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/mesos/default.nix35
-rw-r--r--pkgs/applications/networking/dropbox-cli/default.nix4
-rw-r--r--pkgs/applications/networking/ftp/filezilla/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/bitlbee/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/hipchat/default.nix71
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix38
-rw-r--r--pkgs/applications/networking/instant-messengers/qtox/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/skype/default.nix3
-rw-r--r--pkgs/applications/networking/instant-messengers/slack/default.nix85
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/cutegram/default.nix14
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/libqtelegram-aseman-edition/default.nix5
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/telegram-qml/default.nix5
-rw-r--r--pkgs/applications/networking/instant-messengers/utox/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/vacuum/default.nix66
-rw-r--r--pkgs/applications/networking/irc/communi/default.nix2
-rw-r--r--pkgs/applications/networking/irc/quassel/default.nix8
-rw-r--r--pkgs/applications/networking/irc/quassel/qt-5.nix16
-rw-r--r--pkgs/applications/networking/irc/quassel/source.nix9
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/default.nix6
-rw-r--r--pkgs/applications/networking/p2p/transmission/default.nix1
-rw-r--r--pkgs/applications/office/scribus/default.nix6
-rw-r--r--pkgs/applications/office/zim/default.nix17
-rw-r--r--pkgs/applications/office/zotero/default.nix22
-rw-r--r--pkgs/applications/science/logic/acgtk/default.nix2
-rw-r--r--pkgs/applications/science/math/lp_solve/default.nix1
-rw-r--r--pkgs/applications/science/math/scotch/default.nix36
-rw-r--r--pkgs/applications/science/robotics/qgroundcontrol/0001-fix-gcc-cmath-namespace-issues.patch140
-rw-r--r--pkgs/applications/science/robotics/qgroundcontrol/default.nix98
-rw-r--r--pkgs/applications/search/catfish/default.nix60
-rw-r--r--pkgs/applications/search/grepm/default.nix33
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix6
-rw-r--r--pkgs/applications/version-management/gitlab/gemset.nix38
-rw-r--r--pkgs/applications/version-management/rcs/default.nix2
-rw-r--r--pkgs/applications/version-management/smartgithg/default.nix7
-rw-r--r--pkgs/applications/version-management/subversion/default.nix8
-rw-r--r--pkgs/applications/video/dvdbackup/default.nix20
-rw-r--r--pkgs/applications/video/kodi/plugins.nix126
-rw-r--r--pkgs/applications/video/makemkv/default.nix6
-rw-r--r--pkgs/applications/video/mjpg-streamer/default.nix37
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix2
-rw-r--r--pkgs/applications/video/pitivi/default.nix1
-rw-r--r--pkgs/applications/video/popcorntime/default.nix78
-rw-r--r--pkgs/applications/video/subtitleeditor/default.nix63
-rw-r--r--pkgs/applications/video/subtitleeditor/subtitleeditor-0.52.1-build-fix.patch55
-rw-r--r--pkgs/applications/virtualization/docker/default.nix4
-rw-r--r--pkgs/applications/virtualization/rkt/default.nix4
-rw-r--r--pkgs/applications/window-managers/awesome/default.nix19
-rw-r--r--pkgs/applications/window-managers/clfswm/default.nix1
-rw-r--r--pkgs/applications/window-managers/i3/default.nix4
-rw-r--r--pkgs/applications/window-managers/openbox/default.nix4
-rw-r--r--pkgs/applications/window-managers/stumpwm/default.nix4
-rw-r--r--pkgs/applications/window-managers/sway/default.nix30
134 files changed, 1804 insertions, 1028 deletions
diff --git a/pkgs/applications/audio/banshee/default.nix b/pkgs/applications/audio/banshee/default.nix
new file mode 100644
index 0000000000000..4e5086bdb26da
--- /dev/null
+++ b/pkgs/applications/audio/banshee/default.nix
@@ -0,0 +1,55 @@
+{ pkgs, stdenv, lib, fetchurl, intltool, pkgconfig, gstreamer, gst_plugins_base
+, gst_plugins_good, gst_plugins_bad, gst_plugins_ugly, gst_ffmpeg, glib
+, mono, mono-addins, dbus-sharp-1_0, dbus-sharp-glib-1_0, notify-sharp, gtk-sharp-2_0
+, boo, gdata-sharp, taglib-sharp, sqlite, gnome-sharp, gconf, gtk-sharp-beans, gio-sharp
+, libmtp, libgpod, mono-zeroconf }:
+
+stdenv.mkDerivation rec {
+  name = "banshee-${version}";
+  version = "2.6.2";
+
+  src = fetchurl {
+    url = "http://ftp.gnome.org/pub/GNOME/sources/banshee/2.6/banshee-${version}.tar.xz";
+    sha256 = "1y30p8wxx5li39i5gpq2wib0ympy8llz0gyi6ri9bp730ndhhz7p";
+  };
+
+  dontStrip = true;
+
+  nativeBuildInputs = [ pkgconfig intltool ];
+  buildInputs = [
+    gtk-sharp-2_0.gtk gstreamer gst_plugins_base gst_plugins_good
+    gst_plugins_bad gst_plugins_ugly gst_ffmpeg
+    mono dbus-sharp-1_0 dbus-sharp-glib-1_0 mono-addins notify-sharp
+    gtk-sharp-2_0 boo gdata-sharp taglib-sharp sqlite gnome-sharp gconf gtk-sharp-beans
+    gio-sharp libmtp libgpod mono-zeroconf
+  ];
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  postPatch = ''
+    patchShebangs data/desktop-files/update-desktop-file.sh
+    patchShebangs build/private-icon-theme-installer
+    sed -i "s,DOCDIR=.*,DOCDIR=$out/lib/monodoc," configure
+  '';
+
+  postInstall = let
+    ldLibraryPath = lib.makeLibraryPath [ gtk-sharp-2_0.gtk gtk-sharp-2_0 sqlite gconf glib gstreamer ];
+
+    monoGACPrefix = lib.concatStringsSep ":" [
+      mono dbus-sharp-1_0 dbus-sharp-glib-1_0 mono-addins notify-sharp gtk-sharp-2_0
+      boo gdata-sharp taglib-sharp sqlite gnome-sharp gconf gtk-sharp-beans
+      gio-sharp libmtp libgpod mono-zeroconf
+    ];
+  in ''
+    sed -e '2a export MONO_GAC_PREFIX=${monoGACPrefix}' \
+        -e 's|LD_LIBRARY_PATH=|LD_LIBRARY_PATH=${ldLibraryPath}:|' \
+        -e "s|GST_PLUGIN_PATH=|GST_PLUGIN_PATH=$GST_PLUGIN_SYSTEM_PATH:|" \
+        -e 's| mono | ${mono}/bin/mono |' \
+        -i $out/bin/banshee
+  '';
+  meta = with lib; {
+    description = "A music player written in C# using GNOME technologies";
+    platforms = platforms.linux;
+    maintainers = [ maintainers.zohl ];
+  };
+}
diff --git a/pkgs/applications/audio/clementine/default.nix b/pkgs/applications/audio/clementine/default.nix
index c9b16b65267d4..cf58dffef02c0 100644
--- a/pkgs/applications/audio/clementine/default.nix
+++ b/pkgs/applications/audio/clementine/default.nix
@@ -50,6 +50,12 @@ let
     name = "clementine-free-${version}";
     inherit patches src buildInputs;
     enableParallelBuilding = true;
+    postPatch = ''
+      sed -i src/CMakeLists.txt \
+        -e 's,-Werror,,g' \
+        -e 's,-Wno-unknown-warning-option,,g' \
+        -e 's,-Wno-unused-private-field,,g'
+    '';
     meta = with stdenv.lib; {
       homepage = "http://www.clementine-player.org";
       description = "A multiplatform music player";
diff --git a/pkgs/applications/audio/drumgizmo/default.nix b/pkgs/applications/audio/drumgizmo/default.nix
index 9afcae1901efd..08d0afcd3f2b2 100644
--- a/pkgs/applications/audio/drumgizmo/default.nix
+++ b/pkgs/applications/audio/drumgizmo/default.nix
@@ -3,12 +3,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.9.8.1";
+  version = "0.9.9";
   name = "drumgizmo-${version}";
 
   src = fetchurl {
     url = "http://www.drumgizmo.org/releases/${name}/${name}.tar.gz";
-    sha256 = "1plfjhwhaz1mr3kgf5imcp3kjflk6ni9sq39gmxjxzya6gn2r6gg";
+    sha256 = "03dnh2p4s6n107n0r86h9j1jwy85a8qwjkh0288k60qpdqy1c7vp";
   };
 
   configureFlags = [ "--enable-lv2" ];
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "An LV2 sample based drum plugin";
     homepage = http://www.drumgizmo.org;
-    license = licenses.gpl3;
+    license = licenses.lgpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu maintainers.nico202 ];
   };
diff --git a/pkgs/applications/audio/ekho/default.nix b/pkgs/applications/audio/ekho/default.nix
index 78383eec95392..209ffa05bf283 100644
--- a/pkgs/applications/audio/ekho/default.nix
+++ b/pkgs/applications/audio/ekho/default.nix
@@ -20,7 +20,6 @@ in stdenv.mkDerivation rec {
     license        = licenses.gpl2Plus;
     platforms      = platforms.linux;
     hydraPlatforms = [];
-    maintainers    = with maintainers; [ iyzsong ];
   };
 
   src = fetchurl {
diff --git a/pkgs/applications/audio/seq24/default.nix b/pkgs/applications/audio/seq24/default.nix
index 63db865eba5da..7976a7bf67896 100644
--- a/pkgs/applications/audio/seq24/default.nix
+++ b/pkgs/applications/audio/seq24/default.nix
@@ -2,20 +2,21 @@
 
 stdenv.mkDerivation  rec {
   name = "seq24-${version}";
-  version = "0.9.2";
+  version = "0.9.3";
 
   src = fetchurl {
     url = "http://launchpad.net/seq24/trunk/${version}/+download/${name}.tar.gz";
-    sha256 = "07n80zj95i80vjmsflnlbqx5vv90qmp5f6a0zap8d30849l4y258";
+    sha256 = "1qpyb7355s21sgy6gibkybxpzx4ikha57a8w644lca6qy9mhcwi3";
   };
 
-  buildInputs = [ alsaLib gtkmm libjack2 pkgconfig ];
+  buildInputs = [ alsaLib gtkmm libjack2 ];
+  nativeBuildInputs = [ pkgconfig ];
 
   meta = with stdenv.lib; {
     description = "minimal loop based midi sequencer";
     homepage = "http://www.filter24.org/seq24";
     license = licenses.gpl2;
     platforms = platforms.linux;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = with maintainers; [ goibhniu nckx ];
   };
 }
diff --git a/pkgs/applications/audio/spotify/default.nix b/pkgs/applications/audio/spotify/default.nix
index bf06761bc533f..498a4be7ff4d8 100644
--- a/pkgs/applications/audio/spotify/default.nix
+++ b/pkgs/applications/audio/spotify/default.nix
@@ -5,7 +5,7 @@
 assert stdenv.system == "x86_64-linux";
 
 let
-  version = "1.0.23.93.gd6cfae15-30";
+  version = "1.0.25.127.g58007b4c-22";
 
   deps = [
     alsaLib
@@ -50,7 +50,7 @@ stdenv.mkDerivation {
   src =
     fetchurl {
       url = "http://repository-origin.spotify.com/pool/non-free/s/spotify-client/spotify-client_${version}_amd64.deb";
-      sha256 = "0n6vz51jv6s20dp4zlqkk52bpmpyfm1qn5bfm4lfq09x1g6ir5lr";
+      sha256 = "1fxps0ls0g4idw10la3qrpmp2jn85lkm3xj4nam4ycx0jj8g1v2p";
     };
 
   buildInputs = [ dpkg makeWrapper ];
diff --git a/pkgs/applications/audio/vmpk/default.nix b/pkgs/applications/audio/vmpk/default.nix
index 5db7fe5afbc09..dde96764fe6c6 100644
--- a/pkgs/applications/audio/vmpk/default.nix
+++ b/pkgs/applications/audio/vmpk/default.nix
@@ -12,7 +12,6 @@ in stdenv.mkDerivation rec {
     homepage    = "http://vmpk.sourceforge.net/";
     license     = licenses.gpl3Plus;
     platforms   = platforms.linux;
-    maintainers = with maintainers; [ iyzsong ];
   };
 
   src = fetchurl {
diff --git a/pkgs/applications/audio/xmp/default.nix b/pkgs/applications/audio/xmp/default.nix
index 6bec03bd71b04..10b5bc0c117de 100644
--- a/pkgs/applications/audio/xmp/default.nix
+++ b/pkgs/applications/audio/xmp/default.nix
@@ -8,7 +8,6 @@ stdenv.mkDerivation rec {
     homepage    = "http://xmp.sourceforge.net/";
     license     = licenses.gpl2Plus;
     platforms   = platforms.linux;
-    maintainers = with maintainers; [ iyzsong ];
   };
 
   src = fetchurl {
diff --git a/pkgs/applications/audio/zam-plugins/default.nix b/pkgs/applications/audio/zam-plugins/default.nix
index 48f559dfd86dc..0710e7f942af4 100644
--- a/pkgs/applications/audio/zam-plugins/default.nix
+++ b/pkgs/applications/audio/zam-plugins/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     url = "https://github.com/zamaudio/zam-plugins.git";
     deepClone = true;
     rev = "91fe56931a3e57b80f18c740d2dde6b44f962aee";
-    sha256 = "0n29zxg4l2m3jsnfw6q2alyzaw7ibbv9nvk57k07sv3lh2yy3f30";
+    sha256 = "1s0s028h3z3pfd4qvi63fsg6bv33bvz0p5fbmbmhypzqjlx6mlkb";
   };
 
   buildInputs = [ boost libX11 mesa liblo libjack2 ladspaH lv2 pkgconfig rubberband libsndfile ];
diff --git a/pkgs/applications/audio/zynaddsubfx/default.nix b/pkgs/applications/audio/zynaddsubfx/default.nix
index 84a62d34fa63b..0fccf66ddbc73 100644
--- a/pkgs/applications/audio/zynaddsubfx/default.nix
+++ b/pkgs/applications/audio/zynaddsubfx/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation  rec {
   name = "zynaddsubfx-${version}";
-  version = "2.5.2";
+  version = "2.5.4";
 
   src = fetchurl {
-    url = "mirror://sourceforge/zynaddsubfx/zynaddsubfx-${version}.tar.gz";
-    sha256 = "11yrady7xwfrzszkk2fvq81ymv99mq474h60qnirk27khdygk24m";
+    url = "mirror://sourceforge/zynaddsubfx/zynaddsubfx-${version}.tar.bz2";
+    sha256 = "16llaa2wg2gbgjhwp3632b2vx9jvanj4csv7d41k233ms6d1sjq1";
   };
 
   buildInputs = [ alsaLib libjack2 fftw fltk13 libjpeg minixml zlib liblo ];
@@ -19,6 +19,6 @@ stdenv.mkDerivation  rec {
     homepage = http://zynaddsubfx.sourceforge.net;
     license = licenses.gpl2;
     platforms = platforms.linux;
-    maintainers = [ maintainers.goibhniu maintainers.palo ];
+    maintainers = [ maintainers.goibhniu maintainers.nico202 ];
   };
 }
diff --git a/pkgs/applications/backup/crashplan/CrashPlanDesktop.patch b/pkgs/applications/backup/crashplan/CrashPlanDesktop.patch
index 0051648489059..7fa68ba4a3883 100644
--- a/pkgs/applications/backup/crashplan/CrashPlanDesktop.patch
+++ b/pkgs/applications/backup/crashplan/CrashPlanDesktop.patch
@@ -1,8 +1,12 @@
---- ./scripts/CrashPlanDesktop    2014-12-18 09:51:14.050804325 +0100
-+++ ./scripts/CrashPlanDesktop-1  2014-12-18 09:51:32.271009382 +0100
-@@ -9,4 +9,4 @@
- 
+--- ./scripts/CrashPlanDesktop	2016-03-02 21:01:58.000000000 -0500
++++ ./scripts/CrashPlanDesktop-1	2016-03-18 20:52:10.117686266 -0400
+@@ -11,7 +11,7 @@
  cd ${TARGETDIR}
  
--${JAVACOMMON} ${GUI_JAVA_OPTS} -classpath "./lib/com.backup42.desktop.jar:./lang:./skin" com.backup42.desktop.CPDesktop > ${TARGETDIR}/log/ui_output.log 2> ${TARGETDIR}/log/ui_error.log &
-+${JAVACOMMON} ${GUI_JAVA_OPTS} -classpath "./lib/com.backup42.desktop.jar:./lang:./skin" com.backup42.desktop.CPDesktop &
+ if [ "_${VERSION_5_UI}" == "_true" ]; then
+-	${TARGETDIR}/electron/crashplan > ${TARGETDIR}/log/ui_output.log 2> ${TARGETDIR}/log/ui_error.log &
++	${TARGETDIR}/electron/crashplan &
+ else
+-	${JAVACOMMON} ${GUI_JAVA_OPTS} -classpath "./lib/com.backup42.desktop.jar:./lang:./skin" com.backup42.desktop.CPDesktop > ${TARGETDIR}/log/ui_output.log 2> ${TARGETDIR}/log/ui_error.log &
++	${JAVACOMMON} ${GUI_JAVA_OPTS} -classpath "./lib/com.backup42.desktop.jar:./lang:./skin" com.backup42.desktop.CPDesktop &
+ fi
diff --git a/pkgs/applications/backup/crashplan/default.nix b/pkgs/applications/backup/crashplan/default.nix
index f86ab91344f1b..e89de9b4c6aad 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.4";
+let version = "4.6.0";
 
 in stdenv.mkDerivation rec {
   name = "crashplan-${version}";
 
   crashPlanArchive = fetchurl {
-    url = "http://download.crashplan.com/installs/linux/install/CrashPlan/CrashPlan_${version}_Linux.tgz";
-    sha256 = "0xmzpxfm8vghk552jy167wg1nky1pp93dqds1p922hn73g0x5cv3";
+    url = "https://download.code42.com/installs/linux/install/CrashPlan/CrashPlan_${version}_Linux.tgz";
+    sha256 = "0h9zk6i1pdvl101c8l4v4x6i7q4wkmkqp2dkm0lq7ha96lrvac47";
   };
 
   srcs = [ crashPlanArchive ];
@@ -16,7 +16,6 @@ in stdenv.mkDerivation rec {
     description = "An online/offline backup solution";
     homepage = "http://www.crashplan.org";
     license = licenses.unfree;
-    broken = true;  # outdated and new client has trouble starting (nullpointer exception)
     maintainers = with maintainers; [ sztupi iElectric ];
   };
 
@@ -38,7 +37,7 @@ in stdenv.mkDerivation rec {
     # Make sure the daemon is running using the same localization as
     # the (installing) user
     echo "" >> run.conf
-    echo "export LC_ALL=en_US.UTF-8" >> run.conf
+    echo "LC_ALL=en_US.UTF-8" >> run.conf
 
     install -d -m 755 unpacked $out
 
@@ -49,15 +48,15 @@ in stdenv.mkDerivation rec {
     install -D -m 644 scripts/CrashPlan.desktop $out/share/applications/CrashPlan.desktop
 
     rm -r $out/log
+    mv -v $out/conf $out/conf.template
     ln -s $vardir/log $out/log
     ln -s $vardir/cache $out/cache
     ln -s $vardir/backupArchives $out/backupArchives
-    ln -s $vardir/conf/service.model $out/conf/service.model
-    ln -s $vardir/conf/my.service.xml $out/conf/my.service.xml
+    ln -s $vardir/conf $out/conf
 
     echo "JAVACOMMON=${jre}/bin/java" > $out/install.vars
     echo "APP_BASENAME=CrashPlan" >> $out/install.vars
-    echo "TARGETDIR=$out" >> $out/install.vars
+    echo "TARGETDIR=${vardir}" >> $out/install.vars
     echo "BINSDIR=$out/bin" >> $out/install.vars
     echo "MANIFESTDIR=${manifestdir}" >> $out/install.vars
     echo "VARDIR=${vardir}" >> $out/install.vars
@@ -77,7 +76,8 @@ in stdenv.mkDerivation rec {
     
     substituteInPlace $out/share/applications/CrashPlan.desktop \
       --replace /usr/local  $out \
-      --replace crashplan/skin skin
+      --replace crashplan/skin skin \
+      --replace bin/CrashPlanDesktop CrashPlanDesktop
 
     wrapProgram $out/bin/CrashPlanDesktop --prefix LD_LIBRARY_PATH ":" "${gtk2}/lib:${glib}/lib:${libXtst}/lib"
   '';
diff --git a/pkgs/applications/editors/aseprite/default.nix b/pkgs/applications/editors/aseprite/default.nix
index 43180bd04e31a..15230a7a0000e 100644
--- a/pkgs/applications/editors/aseprite/default.nix
+++ b/pkgs/applications/editors/aseprite/default.nix
@@ -43,6 +43,5 @@ stdenv.mkDerivation rec {
     homepage = "http://www.aseprite.org/";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [iyzsong];
   };
 }
diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix
index 8dc1e2d0c0136..de857b7a8c6ec 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 = "1.5.4";
+  version = "1.6.0";
 
   src = fetchurl {
     url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
-    sha256 = "0jnszf1v7xqhm2sy5wzm3f8aw7j1dnapnbw4d46bvshv9hbbzrn8";
+    sha256 = "1izp2fwxk4rrksdbhcaj8fn0aazi7brid72n1vp7f49adrkqqc1b";
     name = "${name}.deb";
   };
 
diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix
index 62271998060f2..f4804c75ca3b5 100644
--- a/pkgs/applications/editors/eclipse/default.nix
+++ b/pkgs/applications/editors/eclipse/default.nix
@@ -312,7 +312,7 @@ rec {
   };
   eclipse_sdk_451 = eclipse-sdk-451; # backward compatibility, added 2016-01-30
 
-  eclipse-platform = eclipse-platform-451;
+  eclipse-platform = eclipse-platform-452;
 
   eclipse-platform-45 = buildEclipse {
     name = "eclipse-platform-4.5";
@@ -344,6 +344,21 @@ rec {
     };
   };
 
+  eclipse-platform-452 = buildEclipse {
+    name = "eclipse-platform-4.5.2";
+    description = "Eclipse platform";
+    sources = {
+      "x86_64-linux" = fetchurl {
+          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.5.2-201602121500/eclipse-SDK-4.5.2-linux-gtk-x86_64.tar.gz;
+          sha256 = "13dsd5f5i39wd0sr2bgp57hd2msn8g2dnmw5j8hfwif22c62py47";
+        };
+      "i686-linux" = fetchurl {
+          url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.5.2-201602121500/eclipse-SDK-4.5.2-linux-gtk.tar.gz;
+          sha256 = "00jsmbrl4xhpbgd8hyxijgzqdic700kd3yw2qwgl0cs3ncvybxvq";
+        };
+    };
+  };
+
   eclipseWithPlugins = { eclipse, plugins ? [], jvmArgs ? [] }:
     let
       # Gather up the desired plugins.
diff --git a/pkgs/applications/editors/eclipse/plugins.nix b/pkgs/applications/editors/eclipse/plugins.nix
index 3bde9b1434c69..0e0c75fcfc880 100644
--- a/pkgs/applications/editors/eclipse/plugins.nix
+++ b/pkgs/applications/editors/eclipse/plugins.nix
@@ -377,16 +377,16 @@ rec {
 
   testng = buildEclipsePlugin rec {
     name = "testng-${version}";
-    version = "6.9.10.201512020421";
+    version = "6.9.11.201603260617";
 
     srcFeature = fetchurl {
       url = "http://beust.com/eclipse-old/eclipse_${version}/features/org.testng.eclipse_${version}.jar";
-      sha256 = "17y0cb1xprldjav14iy2sinv7lcw4xnjs2fwz9gl41m9m1c0hajk";
+      sha256 = "0cd7d3bdp6f081vrampsv53z55g1mjn04w9ngz3h8dr0h6jnxz3y";
     };
 
     srcPlugin = fetchurl {
       url = "http://beust.com/eclipse-old/eclipse_${version}/plugins/org.testng.eclipse_${version}.jar";
-      sha256 = "1iwq0ifk9l56z11vhy5yscvl8l1xk6igkp103v9vwvcx6nlmkfgc";
+      sha256 = "10kdwnydmsvngn8ahijxrv50aps6wa4ckbf7p24mxbwlnmpqfj03";
     };
 
     meta = with stdenv.lib; {
diff --git a/pkgs/applications/editors/emacs-modes/elpa-packages.nix b/pkgs/applications/editors/emacs-modes/elpa-packages.nix
index 7fc8a06644f9d..29cb586484a24 100644
--- a/pkgs/applications/editors/emacs-modes/elpa-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/elpa-packages.nix
@@ -35,11 +35,11 @@ self:
     };
 
     overrides = {
-      # These packages require emacs-25
-      el-search = markBroken super.el-search;
-      iterators = markBroken super.iterators;
-      midi-kbd = markBroken super.midi-kbd;
-      stream = markBroken super.stream;
+      el-search = markBroken super.el-search; # requires emacs-25
+      iterators = markBroken super.iterators; # requires emacs-25
+      midi-kbd = markBroken super.midi-kbd; # requires emacs-25
+      stream = markBroken super.stream; # requires emacs-25
+      cl-lib = null; # builtin
     };
 
     elpaPackages = super // overrides;
diff --git a/pkgs/applications/editors/geany/default.nix b/pkgs/applications/editors/geany/default.nix
index 1b99d44bcc5a4..b4f6baa9c64a5 100644
--- a/pkgs/applications/editors/geany/default.nix
+++ b/pkgs/applications/editors/geany/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, gtk2, which, pkgconfig, intltool, file }:
 
 let
-  version = "1.26";
+  version = "1.27";
 in
 
 stdenv.mkDerivation rec {
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://download.geany.org/${name}.tar.bz2";
-    sha256 = "e38530e87c577e1e9806be3b40e08fb9ee321eb1abc6361ddacdad89c825f90d";
+    sha256 = "846ff699a5944c5c3c068ae0199d4c13946a668bfc6d03f8c79765667c20cadf";
   };
 
   buildInputs = [ gtk2 which pkgconfig intltool file ];
diff --git a/pkgs/applications/editors/idea/default.nix b/pkgs/applications/editors/idea/default.nix
index e9d25720f346c..7a9f409d12898 100644
--- a/pkgs/applications/editors/idea/default.nix
+++ b/pkgs/applications/editors/idea/default.nix
@@ -185,25 +185,25 @@ in
 
   idea-community = buildIdea rec {
     name = "idea-community-${version}";
-    version = "15.0.4";
-    build = "IC-143.2287";
+    version = "2016.1";
+    build = "IC-145.258.11";
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
-      sha256 = "05kah5cx7x3rlaaxkvbbm7g8jvy9hc38q4jv7j5r9rkxd38fslvn";
+      sha256 = "1grgyaapsbf7xn0m18x6fgghjh9n1n2zblz9608g9qgx5p28kn6q";
     };
   };
 
   idea-ultimate = buildIdea rec {
     name = "idea-ultimate-${version}";
-    version = "15.0.4";
-    build = "IU-143.2287";
+    version = "2016.1";
+    build = "IU-145.258.11";
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIU-${version}.tar.gz";
-      sha256 = "0416y7krrak1q5pb8axskdamy06nfxmn4hj7421j8jaz0nc50dn4";
+      sha256 = "15ybqdy311wi3iqi7bzk798cd91jpl73ngl86kzwr68d24nyy3zb";
     };
   };
 
diff --git a/pkgs/applications/editors/kdevelop/default.nix b/pkgs/applications/editors/kdevelop/default.nix
index b0ac24ee61a0f..938a56518d5fe 100644
--- a/pkgs/applications/editors/kdevelop/default.nix
+++ b/pkgs/applications/editors/kdevelop/default.nix
@@ -3,12 +3,12 @@
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
-  version = "4.7.1";
+  version = "4.7.3";
   pname = "kdevelop";
 
   src = fetchurl {
-    url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.xz";
-    sha256 = "e3ad5377f53739a67216d37cda3f88c03f8fbb0c96e2a9ef4056df3c124e95c1";
+    url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.bz2";
+    sha256 = "9db388d1c8274da7d168c13db612c7e94ece7815757b945b0aa0371620a06b35";
   };
 
   buildInputs = [ kdevplatform kdebase_workspace okteta qjson ];
@@ -17,6 +17,8 @@ stdenv.mkDerivation rec {
 
   propagatedUserEnvPkgs = [ kdevplatform kate konsole kde_runtime oxygen_icons ];
 
+  patches = [ ./gettext.patch ];
+
   NIX_CFLAGS_COMPILE = "-I${okteta}/include/KDE";
 
   meta = with stdenv.lib; {
@@ -31,6 +33,6 @@ stdenv.mkDerivation rec {
         programing languages. It is based on KDevPlatform, KDE and Qt
         libraries and is under development since 1998.
       '';
-    homepage = http://www.kdevelop.org;
+    homepage = https://www.kdevelop.org;
   };
 }
diff --git a/pkgs/applications/editors/kdevelop/gettext.patch b/pkgs/applications/editors/kdevelop/gettext.patch
new file mode 100644
index 0000000000000..cefbc743fc3e9
--- /dev/null
+++ b/pkgs/applications/editors/kdevelop/gettext.patch
@@ -0,0 +1,8 @@
+diff -urN kdevelop-4.7.3.orig/po/CMakeLists.txt kdevelop-4.7.3/po/CMakeLists.txt
+--- kdevelop-4.7.3.orig/po/CMakeLists.txt	2016-03-04 23:29:09.411886565 +0100
++++ kdevelop-4.7.3/po/CMakeLists.txt	2016-03-04 23:28:35.108451713 +0100
+@@ -1,3 +1,4 @@
++cmake_policy(SET CMP0002 OLD)
+ find_package(Gettext REQUIRED)
+ if (NOT GETTEXT_MSGMERGE_EXECUTABLE)
+ MESSAGE(FATAL_ERROR "Please install msgmerge binary")
diff --git a/pkgs/applications/editors/tiled/default.nix b/pkgs/applications/editors/tiled/default.nix
index 4590baf6b8e24..059b85cee5f77 100644
--- a/pkgs/applications/editors/tiled/default.nix
+++ b/pkgs/applications/editors/tiled/default.nix
@@ -24,6 +24,5 @@ stdenv.mkDerivation rec {
     # The rest is GPL2 or later.
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ iyzsong ];
   };
 }
diff --git a/pkgs/applications/editors/tweak/default.nix b/pkgs/applications/editors/tweak/default.nix
new file mode 100644
index 0000000000000..5ebe4672cab08
--- /dev/null
+++ b/pkgs/applications/editors/tweak/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, ncurses }:
+
+stdenv.mkDerivation rec {
+  name = "tweak-${version}";
+  version = "3.02";
+
+  src = fetchurl {
+    url = "http://www.chiark.greenend.org.uk/~sgtatham/tweak/${name}.tar.gz";
+    sha256 = "06js54pr5hwpwyxj77zs5s40n5aqvaw48dkj7rid2d47pyqijk2v";
+  };
+
+  buildInputs = [ ncurses ];
+  preBuild = "substituteInPlace Makefile --replace '$(DESTDIR)/usr/local' $out";
+
+  meta = with stdenv.lib; {
+    description = "An efficient hex editor";
+    homepage = "http://www.chiark.greenend.org.uk/~sgtatham/tweak";
+    license = licenses.mit;
+    platform = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix
index 1249b0b956416..97a40e5c7e5a4 100644
--- a/pkgs/applications/editors/vim/default.nix
+++ b/pkgs/applications/editors/vim/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   name = "vim-${version}";
-  version = "7.4.827";
+  version = "7.4.1585";
 
   src = fetchFromGitHub {
     owner = "vim";
     repo = "vim";
     rev = "v${version}";
-    sha256 = "1m34s2hsc5lcish6gmvn2iwaz0k7jc3kg9q4nf30fj9inl7gaybs";
+    sha256 = "1kjdwpka269i4cyl0rmnmzg23dl26g65k26h32w8ayzfm3kbj123";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/graphics/darktable/default.nix b/pkgs/applications/graphics/darktable/default.nix
index ef222d2e816fe..d0a1f7b78d3b0 100644
--- a/pkgs/applications/graphics/darktable/default.nix
+++ b/pkgs/applications/graphics/darktable/default.nix
@@ -11,12 +11,12 @@
 assert stdenv ? glibc;
 
 stdenv.mkDerivation rec {
-  version = "2.0.0";
+  version = "2.0.2";
   name = "darktable-${version}";
 
   src = fetchurl {
     url = "https://github.com/darktable-org/darktable/releases/download/release-${version}/darktable-${version}.tar.xz";
-    sha256 = "1cbwvzqn3158cy7r499rdwipx7fpb30lrrvh6jy5a4xvpcjzbwnl";
+    sha256 = "0014j73sy956xqdhd4jrxvbamildqqadx8hmagrbiah8xda67skm";
   };
 
   buildInputs =
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Virtual lighttable and darkroom for photographers";
-    homepage = http://www.darktable.org;
+    homepage = https://www.darktable.org;
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu maintainers.rickynils maintainers.flosse ];
diff --git a/pkgs/applications/graphics/digikam/default.nix b/pkgs/applications/graphics/digikam/default.nix
index bdf8077624db2..a41e1ad07d3c1 100644
--- a/pkgs/applications/graphics/digikam/default.nix
+++ b/pkgs/applications/graphics/digikam/default.nix
@@ -3,42 +3,222 @@
 , libgphoto2, libjpeg, libkdcraw, libkexiv2, libkipi, libpgf, libtiff
 , libusb1, liblqr1, marble, mysql, opencv, perl, phonon, pkgconfig
 , qca2, qimageblitz, qjson, qt4, soprano
+
+# Optional build time dependencies
+, baloo, doxygen, kfilemetadata
+, lcms2
+, kfaceSupport ? true, libkface ? null
+, kgeomapSupport ? true, libkgeomap ? null
+, libxslt
+
+# Plugins optional build time dependencies
+, gdk_pixbuf, imagemagick
+, libgpod, libksane, libkvkontakte
+, qt_gstreamer1 /*qt_soap, <https://github.com/commontk/QtSOAP>  herqq <http://www.herqq.org> -> is missing its av part.*/
+  /*qt_koauth <http://gitorious.org/kqoauth>*/
+
+# Supplementary packages required only by the wrapper.
+, bash, kde_runtime, kde_baseapps, makeWrapper, oxygen_icons
+, phonon_backend_vlc /*phonon_backend_gstreamer,*/
+, ffmpegthumbs /*mplayerthumbs*/
+, runCommand, shared_mime_info, writeScriptBin
 }:
 
-stdenv.mkDerivation rec {
-  name = "digikam-4.12.0";
+let 
+  version = "4.12.0";
+  pName = "digikam-${version}";
+
+  build = stdenv.mkDerivation rec {
+    name = "digikam-build-${version}";
+
+    src = fetchurl {
+      url = "http://download.kde.org/stable/digikam/${pName}.tar.bz2";
+      sha256 = "081ldsaf3frf5khznjd3sxkjmi4dyp6w6nqnc2a0agkk0kxkl10m";
+    };
+
+    nativeBuildInputs = [ 
+      automoc4 cmake gettext perl pkgconfig
+    ] ++ [
+      # Optional
+      doxygen 
+    ];
+
+    buildInputs = [
+      boost eigen jasper kdelibs kdepimlibs lcms lensfun
+      libgphoto2 libjpeg libkdcraw libkexiv2 libkipi liblqr1 libpgf
+      libtiff marble mysql.lib opencv phonon qca2 qimageblitz qjson qt4
+      shared_desktop_ontologies soprano ]
+    # Optional build time dependencies
+    ++ [
+      baloo 
+      kfilemetadata 
+      lcms2 ] 
+    ++ stdenv.lib.optional (kfaceSupport && null != libkface) [ libkface ]
+    ++ stdenv.lib.optional (kgeomapSupport && null != libkgeomap) [ libkgeomap ] ++ 
+    [ libxslt ]
+    # Plugins optional build time dependencies
+    ++ [
+      gdk_pixbuf imagemagick libgpod libksane
+      libkvkontakte
+      qt_gstreamer1 ];
+
+    # Make digikam find some FindXXXX.cmake
+    KDEDIRS="${marble}:${qjson}";
+
+    # Find kdepimlibs's upper case headers under `include/KDE`.
+    NIX_CFLAGS_COMPILE = "-I${kdepimlibs}/include/KDE";
+
+    # Help digiKam find libusb, otherwise gphoto2 support is disabled
+    cmakeFlags = [
+      "-DLIBUSB_LIBRARIES=${libusb1}/lib"
+      "-DLIBUSB_INCLUDE_DIR=${libusb1}/include/libusb-1.0"
+      "-DENABLE_BALOOSUPPORT=ON"
+      "-DENABLE_KDEPIMLIBSSUPPORT=ON"
+      "-DENABLE_LCMS2=ON" ] 
+    ++ stdenv.lib.optional (kfaceSupport && null == libkface) [ "-DDIGIKAMSC_COMPILE_LIBKFACE=ON" ]
+    ++ stdenv.lib.optional (kgeomapSupport && null == libkgeomap) [ "-DDIGIKAMSC_COMPILE_LIBKGEOMAP=ON" ];
 
-  src = fetchurl {
-    url = "http://download.kde.org/stable/digikam/${name}.tar.bz2";
-    sha256 = "081ldsaf3frf5khznjd3sxkjmi4dyp6w6nqnc2a0agkk0kxkl10m";
+    enableParallelBuilding = true;
+
+    meta = {
+      description = "Photo Management Program";
+      license = stdenv.lib.licenses.gpl2;
+      homepage = http://www.digikam.org;
+      maintainers = with stdenv.lib.maintainers; [ goibhniu viric urkud ];
+      inherit (kdelibs.meta) platforms;
+    };
   };
 
-  nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
 
-  buildInputs = [
-    boost eigen jasper kdelibs kdepimlibs lcms lensfun libgphoto2
-    libjpeg libkdcraw libkexiv2 libkipi liblqr1 libpgf libtiff marble
-    mysql.lib opencv phonon qca2 qimageblitz qjson qt4
-    shared_desktop_ontologies soprano
+  kdePkgs = [
+    build # digikam's own build
+    kdelibs kdepimlibs kde_runtime kde_baseapps libkdcraw oxygen_icons
+    /*phonon_backend_gstreamer*/ phonon_backend_vlc
+    ffmpegthumbs /*mplayerthumbs*/ shared_mime_info ]
+  # Optional build time dependencies
+  ++ [
+
+    baloo kfilemetadata ] 
+  ++ stdenv.lib.optional (kfaceSupport && null != libkface) [ libkface ]
+  ++ stdenv.lib.optional (kgeomapSupport && null != libkgeomap) [ libkgeomap ] 
+  ++ [ 
+    libkipi ] 
+  # Plugins optional build time dependencies
+  ++ [
+    libksane libkvkontakte
   ];
 
-  # Make digikam find some FindXXXX.cmake
-  KDEDIRS="${marble}:${qjson}";
 
-  # Help digiKam find libusb, otherwise gphoto2 support is disabled
-  cmakeFlags = [
-    "-DLIBUSB_LIBRARIES=${libusb1}/lib"
-    "-DLIBUSB_INCLUDE_DIR=${libusb1}/include/libusb-1.0"
-    "-DDIGIKAMSC_COMPILE_LIBKFACE=ON"
-  ];
+  # TODO: It should be the responsability of these packages to add themselves to `KDEDIRS`. See
+  # <https://github.com/ttuegel/nixpkgs/commit/a0efeacc0ef2cf63bbb768bfb172a483307d080b> for
+  # a practical example.
+  # IMPORTANT: Note that using `XDG_DATA_DIRS` here instead of `KDEDIRS` won't work properly.
+  KDEDIRS = with stdenv.lib; concatStrings (intersperse ":" (map (x: "${x}") kdePkgs));
+
+  sycocaDirRelPath = "var/lib/kdesycoca";
+  sycocaFileRelPath = "${sycocaDirRelPath}/${pName}.sycoca";
+
+  sycoca = runCommand "${pName}" {
+
+    name = "digikam-sycoca-${version}";
+
+    nativeBuildInputs = [ kdelibs ];
+
+    dontPatchELF = true;
+    dontStrip = true;
+
+  } ''
+    # Make sure kbuildsycoca4 does not attempt to write to user home directory.
+    export HOME=$PWD
 
-  enableParallelBuilding = true;
+    export KDESYCOCA="$out/${sycocaFileRelPath}"
+
+    mkdir -p $out/${sycocaDirRelPath}
+    export XDG_DATA_DIRS=""
+    export KDEDIRS="${KDEDIRS}"
+    kbuildsycoca4 --noincremental --nosignal
+  '';
+
+
+  replaceExeListWithWrapped = 
+    let f = exeName: ''
+        rm -f "$out/bin/${exeName}"
+        makeWrapper "${build}/bin/${exeName}" "$out/bin/${exeName}" \
+          --set XDG_DATA_DIRS "" \
+          --set KDEDIRS "${KDEDIRS}" \
+          --set KDESYCOCA "${sycoca}/${sycocaFileRelPath}"
+      '';
+    in 
+      with stdenv.lib; exeNameList: concatStrings (intersperse "\n" (map f exeNameList));
+
+in
+
+
+with stdenv.lib;
+
+/*
+  Final derivation
+  ----------------
+
+   -  Create symlinks to our original build derivation items.
+   -  Wrap specific executables so that they know of the appropriate
+      sycoca database, `KDEDIRS` to use and block any interference
+      from `XDG_DATA_DIRS` (only `dnginfo` is not wrapped).
+*/
+runCommand "${pName}" {
+  inherit build;
+  inherit sycoca;
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs = kdePkgs;
+
+  dontPatchELF = true;
+  dontStrip = true;
 
   meta = {
     description = "Photo Management Program";
     license = stdenv.lib.licenses.gpl2;
     homepage = http://www.digikam.org;
-    maintainers = with stdenv.lib.maintainers; [ goibhniu viric urkud ];
+    maintainers = with stdenv.lib.maintainers; [ /*jraygauthier*/ ];
     inherit (kdelibs.meta) platforms;
   };
-}
+
+} ''
+  pushd $build > /dev/null
+  for d in `find . -maxdepth 1 -name "*" -printf "%f\n" | tail -n+2`; do
+    mkdir -p $out/$d
+    for f in `find $d -maxdepth 1 -name "*" -printf "%f\n" | tail -n+2`; do
+        ln -s "$build/$d/$f" "$out/$d/$f"
+    done
+  done
+  popd > /dev/null
+  
+  ${replaceExeListWithWrapped [ "cleanup_digikamdb" "digitaglinktree" "digikam" "dngconverter" 
+                                "expoblending" "photolayoutseditor" "scangui" "showfoto" ]}
+''
+
+/*
+  
+TODO
+----
+
+### Useful ###
+
+ -  Per lib `KDELIBS` environment variable export. See above in-code TODO comment.
+ -  Missing optional `qt_soap` or `herqq` (av + normal package) dependencies. Those are not
+    yet (or not fully) packaged in nix. Mainly required for upnp export.
+ -  Possibility to use the `phonon_backend_gstreamer` with its own user specified set of backend.
+ -  Allow user to disable optional features or dependencies reacting properly.
+ -  Compile `kipiplugins` as a separate package (so that it can be used by other kde packages
+    and so that this package's build time is reduced).
+
+### Not so useful ###
+
+ -  Missing optional `qt_koauth` (not packaged in nix).
+ -  Missing optional `libmediawiki` (not packaged in nix)..
+ -  For some reason the cmake build does not detect `libkvkontakte`. Fix this.
+ -  Possibility to use `mplayerthumbs` thumbnail creator backend. In digikam dev docs,
+    it is however suggested to use `ffmpegthumbs`. Maybe we should stick to it.
+
+*/
diff --git a/pkgs/applications/graphics/hugin/default.nix b/pkgs/applications/graphics/hugin/default.nix
index 97181cb0d1bfb..338b3cf0f97e1 100644
--- a/pkgs/applications/graphics/hugin/default.nix
+++ b/pkgs/applications/graphics/hugin/default.nix
@@ -1,6 +1,6 @@
 { stdenv, cmake, fetchurl, gnumake, pkgconfig, makeWrapper
 , boost, gettext, tclap, wxGTK
-, freeglut, glew, libXi, libXmu, mesa
+, freeglut, glew, libX11, libXi, libXmu, mesa, cairo
 , autopanosiftc, enblend-enfuse, exiv2, fftw, ilmbase, lensfun, libpng, libtiff
 , openexr, panotools, perlPackages, sqlite, vigra
 }:
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR";
 
   buildInputs = [ boost gettext tclap wxGTK
-                  freeglut glew libXi libXmu mesa
+                  freeglut glew libX11 libXi libXmu mesa cairo
                   exiv2 fftw ilmbase lensfun libtiff libpng openexr panotools
                   sqlite vigra
                   perlPackages.ImageExifTool makeWrapper
diff --git a/pkgs/applications/graphics/leocad/default.nix b/pkgs/applications/graphics/leocad/default.nix
index eaaf047c9bb3b..9ca9c59210280 100644
--- a/pkgs/applications/graphics/leocad/default.nix
+++ b/pkgs/applications/graphics/leocad/default.nix
@@ -16,8 +16,11 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ qt4 zlib ];
 
-  prefixKey="INSTALL_PREFIX=";
+  prefixKey = "INSTALL_PREFIX=";
   configureScript = "qmake leocad.pro";
+  postPatch = ''
+    substituteInPlace common/camera.cpp --replace "isnan(" "std::isnan("
+  '';
 
   meta = with stdenv.lib; {
     description = "CAD program for creating virtual LEGO models";
diff --git a/pkgs/applications/graphics/openimageio/default.nix b/pkgs/applications/graphics/openimageio/default.nix
index 97607e8195146..79db732750dd5 100644
--- a/pkgs/applications/graphics/openimageio/default.nix
+++ b/pkgs/applications/graphics/openimageio/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "openimageio-${version}";
-  version = "1.6.9";
+  version = "1.6.11";
 
   src = fetchurl {
     url = "https://github.com/OpenImageIO/oiio/archive/Release-${version}.zip";
-    sha256 = "0942xj877875f4dpfg7aqwyw015y82vkhaqap7yhybmvzsfj7wki";
+    sha256 = "0cr0z81a41bg193dx9crcq1mns7mmzz7qys4lrbm18cmdbwkk88x";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/pencil/default.nix b/pkgs/applications/graphics/pencil/default.nix
index 8ee39c135ef88..80774fba5ff29 100644
--- a/pkgs/applications/graphics/pencil/default.nix
+++ b/pkgs/applications/graphics/pencil/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, makeWrapper, xulrunner }:
 
 stdenv.mkDerivation rec {
-  version = "2.0.15";
+  version = "2.0.18";
   name = "pencil-${version}";
 
   src = fetchurl {
     url = "https://github.com/prikhi/pencil/releases/download/v${version}/Pencil-${version}-linux-pkg.tar.gz";
-    sha256 = "be338558b613f51506337a2c7c80f209e8644656c2925f41c294e2872feabc3b";
+    sha256 = "0x0kibb2na12fwl0x68xhkjpbm5h2widm346cx2r29gp1kq9kklc";
   };
 
   buildPhase = "";
diff --git a/pkgs/applications/graphics/phototonic/default.nix b/pkgs/applications/graphics/phototonic/default.nix
index 6803b969b4b55..a26346add7ff2 100644
--- a/pkgs/applications/graphics/phototonic/default.nix
+++ b/pkgs/applications/graphics/phototonic/default.nix
@@ -2,12 +2,14 @@
 
 stdenv.mkDerivation rec {
   name = "phototonic-${version}";
-  version = "1.7";
+  version = "1.7.1";
 
   src = fetchFromGitHub {
     repo = "phototonic";
     owner = "oferkv";
-    rev = "v${version}";
+    # There is currently no tag for 1.7.1 see
+    # https://github.com/oferkv/phototonic/issues/214
+    rev = "c37070e4a068570d34ece8de1e48aa0882c80c5b";
     sha256 = "1agd3bsrpljd019qrjvlbim5l0bhpx53dhpc0gvyn0wmcdzn92gj";
   };
 
diff --git a/pkgs/applications/graphics/sane/backends/git.nix b/pkgs/applications/graphics/sane/backends/git.nix
index 84e1f783e2a3a..b285edd71e032 100644
--- a/pkgs/applications/graphics/sane/backends/git.nix
+++ b/pkgs/applications/graphics/sane/backends/git.nix
@@ -1,10 +1,10 @@
 { callPackage, fetchgit, ... } @ args:
 
 callPackage ./generic.nix (args // {
-  version = "2016-03-05";
+  version = "2016-03-24";
   src = fetchgit {
-    sha256 = "dc84530d5e0233427acfd132aa08a4cf9973c936ff72a66ee08ecf836200d367";
-    rev = "23eb95582da718791103b83ea002e947caa0f5fc";
+    sha256 = "593672ccfef6e3e0f3cb8ae4bbc67db9b2f1a821df4914343e4cf32f75cea865";
+    rev = "41a416e4afcf6cada69193dc408ef184d0e5f678";
     url = "git://alioth.debian.org/git/sane/sane-backends.git";
   };
 })
diff --git a/pkgs/applications/graphics/simple-scan/default.nix b/pkgs/applications/graphics/simple-scan/default.nix
index 7ee298f728116..417d117d6886c 100644
--- a/pkgs/applications/graphics/simple-scan/default.nix
+++ b/pkgs/applications/graphics/simple-scan/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   name = "simple-scan-${version}";
-  version = "3.19.91";
+  version = "3.20.0";
 
   src = fetchurl {
-    sha256 = "1c5glf5vxgld41w4jxfqcv17q76qnh43fawpv33hncgh8d283xkf";
-    url = "https://launchpad.net/simple-scan/3.19/${version}/+download/${name}.tar.xz";
+    sha256 = "0b5ndrjwi7yipkr9bhyifpbdil65izdm677if23yj832n2jsbxcd";
+    url = "https://launchpad.net/simple-scan/3.20/${version}/+download/${name}.tar.xz";
   };
 
   buildInputs = [ cairo colord glib gusb gtk3 libusb1 libxml2 sane-backends
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   configureFlags = [ "--disable-packagekit" ];
 
   preBuild = ''
-    # Clean up stale .c files referencing packagekit headers as of 3.19.91:
+    # Clean up stale .c files referencing packagekit headers as of 3.20.0:
     make clean
   '';
 
diff --git a/pkgs/applications/misc/abook/default.nix b/pkgs/applications/misc/abook/default.nix
index 77e48e49dd89e..2c4bc0f21284e 100644
--- a/pkgs/applications/misc/abook/default.nix
+++ b/pkgs/applications/misc/abook/default.nix
@@ -1,15 +1,23 @@
-{ stdenv, fetchurl, pkgconfig, ncurses, readline }:
+{ stdenv, fetchurl, fetchpatch, pkgconfig, ncurses, readline }:
 
-let version = "0.6.0pre2"; in
 stdenv.mkDerivation rec {
-  name = "abook-${version}";
+  name = "abook-0.6.0pre2";
 
   src = fetchurl {
     url = "http://abook.sourceforge.net/devel/${name}.tar.gz";
-    sha256 = "59d444504109dd96816e003b3023175981ae179af479349c34fa70bc12f6d385";
+    sha256 = "11fkyq9bqw7s6jf38yglk8bsx0ar2wik0fq0ds0rdp8985849m2r";
   };
 
-  buildInputs = [ pkgconfig ncurses readline ];
+  patches = [
+    (fetchpatch {
+       url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/gcc5.patch?h=packages/abook";
+       name = "gcc5.patch";
+       sha256 = "13n3qd6yy45i5n8ppjn9hj6y63ymjrq96280683xk7f7rjavw5nn";
+     })
+  ];
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ ncurses readline ];
 
   meta = {
     homepage = "http://abook.sourceforge.net/";
diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix
index 0b9cbe029998c..0085da5b468fd 100644
--- a/pkgs/applications/misc/blender/default.nix
+++ b/pkgs/applications/misc/blender/default.nix
@@ -10,11 +10,11 @@
 with lib;
 
 stdenv.mkDerivation rec {
-  name = "blender-2.76b";
+  name = "blender-2.77";
 
   src = fetchurl {
     url = "http://download.blender.org/source/${name}.tar.gz";
-    sha256 = "0pb0mlj4vj0iir528ifqq67nsh3ca1942933d9cwlbpcja2jm1dx";
+    sha256 = "0aynm249xgrnm6h5hlp9x40ww0hn391d9ka2mg9mmqrdzhih286n";
   };
 
   buildInputs =
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
     # They comment two licenses: GPLv2 and Blender License, but they
     # say: "We've decided to cancel the BL offering for an indefinite period."
     license = licenses.gpl2Plus;
-    platforms = platforms.linux;
+    platforms = [ "x86_64-linux" ];
     maintainers = [ maintainers.goibhniu ];
   };
 }
diff --git a/pkgs/applications/misc/buku/default.nix b/pkgs/applications/misc/buku/default.nix
new file mode 100644
index 0000000000000..ccebb8bfc1157
--- /dev/null
+++ b/pkgs/applications/misc/buku/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, pythonPackages, fetchFromGitHub,
+  encryptionSupport ? false
+}:
+
+pythonPackages.buildPythonApplication rec {
+  version = "1.8";
+  name = "buku-${version}";
+
+  src = fetchFromGitHub {
+    owner = "jarun";
+    repo = "buku";
+    rev = "53d48ee56a3abfb53b94ed25fb620ee759141c96";
+    sha256 = "185d3gndw20c3l6f3mf0iq4qapm8g30bl0hn0wsqpp36vl0bpq28";
+  };
+
+  buildInputs = stdenv.lib.optional encryptionSupport pythonPackages.pycrypto;
+
+  phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
+
+  installPhase = ''
+    make install PREFIX=$out
+  '';
+
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "Private cmdline bookmark manager";
+    homepage = https://github.com/jarun/Buku;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ matthiasbeyer ];
+  };
+}
+
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index 5d936421d9eea..e66f260af969b 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -5,12 +5,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "2.52.0";
+  version = "2.53.0";
   name = "calibre-${version}";
 
   src = fetchurl {
     url = "http://download.calibre-ebook.com/${version}/${name}.tar.xz";
-    sha256 = "1la114vhkm73iv0rrzwws28ydiszl58q5y9d6aafn5sh16ph2aws";
+    sha256 = "0rvfh39a6j5r398p6xzrbzvhxapm1iyhc0d46xk5fwa52kscadhz";
   };
 
   inherit python;
diff --git a/pkgs/applications/misc/cdrtools/default.nix b/pkgs/applications/misc/cdrtools/default.nix
index b83857b6045e8..2168a21f7da08 100644
--- a/pkgs/applications/misc/cdrtools/default.nix
+++ b/pkgs/applications/misc/cdrtools/default.nix
@@ -12,6 +12,11 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ acl libcap ];
 
+  postPatch = ''
+    sed "/\.mk3/d" -i libschily/Targets.man
+    substituteInPlace man/Makefile --replace "man4" ""
+  '';
+
   configurePhase = "true";
 
   GMAKE_NOWARN = true;
diff --git a/pkgs/applications/misc/d4x/default.nix b/pkgs/applications/misc/d4x/default.nix
index 3c146249dd0b2..cdcada196b98b 100644
--- a/pkgs/applications/misc/d4x/default.nix
+++ b/pkgs/applications/misc/d4x/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
   inherit boost;
 
   src = fetchurl {
-    url =  http://d4x.krasu.ru/files/d4x-2.5.7.1.tar.bz2;
+    url = http://pkgs.fedoraproject.org/repo/pkgs/d4x/d4x-2.5.7.1.tar.bz2/68d6336c3749a7caabb0f5a5f84f4102/d4x-2.5.7.1.tar.bz2;
     sha256 = "1i1jj02bxynisqapv31481sz9jpfp3f023ky47spz1v1wlwbs13m";
   };
 
diff --git a/pkgs/applications/misc/deco/default.nix b/pkgs/applications/misc/deco/default.nix
new file mode 100644
index 0000000000000..170018dc972d4
--- /dev/null
+++ b/pkgs/applications/misc/deco/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchFromGitHub, scsh, feh, xlibs }:
+
+stdenv.mkDerivation rec {
+  pname = "deco";
+  version = "0.0.1";
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "ebzzry";
+    repo = pname;
+    rev = "037f473ae4bdce5d3e2f76891785f0f7479cca75";
+    sha256 = "1fv15nc9zqbn3c51vnm50yidj5ivpi61zg55cs46x3gi2x79x43q";
+  };
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp ${pname} $out/bin
+    chmod +x $out/bin/${pname}
+  '';
+
+  postFixup = ''
+    substituteInPlace $out/bin/deco --replace "/usr/bin/env scsh" "${scsh}/bin/scsh"
+    substituteInPlace $out/bin/deco --replace "feh" "${feh}/bin/feh"
+    substituteInPlace $out/bin/deco --replace "xdpyinfo" "${xlibs.xdpyinfo}/bin/xdpyinfo"
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/ebzzry/deco;
+    description = "A simple root image setter";
+    license = licenses.mit;
+    maintainers = [ maintainers.ebzzry ];
+    platforms = platforms.unix;
+  };
+
+  dontBuild = true;
+}
diff --git a/pkgs/applications/misc/electrum/default.nix b/pkgs/applications/misc/electrum/default.nix
index 82f90380113c2..69f41571c4504 100644
--- a/pkgs/applications/misc/electrum/default.nix
+++ b/pkgs/applications/misc/electrum/default.nix
@@ -18,11 +18,11 @@ in
 
 pythonPackages.buildPythonApplication rec {
   name = "electrum-${version}";
-  version = "2.6.1";
+  version = "2.6.3";
 
   src = fetchurl {
     url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
-    sha256 = "14q6y1hwzki56nfhd3nfbxid07d5fv0pgmklvcf7yxjmpdxrg0iq";
+    sha256 = "0lj3a8zg6dznpnnxyza8a05c13py52j62rqlad1zcgksm5g63vic";
   };
 
   propagatedBuildInputs = with pythonPackages; [
diff --git a/pkgs/applications/misc/emem/default.nix b/pkgs/applications/misc/emem/default.nix
index 3d8e4742fa642..b2855e5a287e8 100644
--- a/pkgs/applications/misc/emem/default.nix
+++ b/pkgs/applications/misc/emem/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "emem";
-  version = "0.2.12";
+  version = "0.2.15";
   name = "${pname}-${version}";
 
   inherit jdk;
 
   src = fetchurl {
     url = "https://github.com/ebzzry/${pname}/releases/download/v${version}/${pname}.jar";
-    sha256 = "1ynn72n9pw9zk29c9q2zybxjg8dniilp05vghrc9vnslyi8ml90d";
+    sha256 = "0jj990syd9biq2awnjydi4x3p4hivigc522ds59hdf5wg4y2gg6c";
   };
 
   buildInputs = [ ];
@@ -22,14 +22,14 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
-    cp $src $out/share/java
+    cp $src $out/share/java/${pname}.jar
 
-    cat > $out/bin/emem <<EOF
+    cat > $out/bin/${pname} <<EOF
 #! $SHELL
-$jdk/bin/java -jar $out/share/java/$(basename $src) "\$@"
+$jdk/bin/java -jar $out/share/java/${pname}.jar "\$@"
 EOF
 
-    chmod +x $out/bin/emem
+    chmod +x $out/bin/${pname}
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/gnuradio/default.nix b/pkgs/applications/misc/gnuradio/default.nix
index ab02238606ab4..734ffee51e237 100644
--- a/pkgs/applications/misc/gnuradio/default.nix
+++ b/pkgs/applications/misc/gnuradio/default.nix
@@ -23,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   name = "gnuradio-${version}";
-  version = "3.7.8.1";
+  version = "3.7.9.1";
 
   src = fetchurl {
     url = "http://gnuradio.org/releases/gnuradio/${name}.tar.gz";
-    sha256 = "1ap5gbgisnbny3jbnm2i5wm2sy6qkbhz747av3sjxp2z12fz81l4";
+    sha256 = "0zlnxyqq3dyrg0nz2hpydlhyzv26vlkdavs8w01k448lxkqz01lw";
   };
 
   buildInputs = [
@@ -39,6 +39,8 @@ stdenv.mkDerivation rec {
     cheetahTemplate numpy scipy matplotlib pyqt4 pygtk wxPython pyopengl
   ];
 
+  enableParallelBuilding = true;
+
   preConfigure = ''
     export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -Wno-unused-variable"
   '';
@@ -72,6 +74,6 @@ stdenv.mkDerivation rec {
     homepage = http://www.gnuradio.org;
     license = licenses.gpl3;
     platforms = platforms.linux;
-    maintainers = [ maintainers.bjornfor ];
+    maintainers = with maintainers; [ bjornfor fpletz ];
   };
 }
diff --git a/pkgs/applications/misc/gqrx/default.nix b/pkgs/applications/misc/gqrx/default.nix
index d3e61da4fab01..d30b6b8e8f96b 100644
--- a/pkgs/applications/misc/gqrx/default.nix
+++ b/pkgs/applications/misc/gqrx/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, qt4, gnuradio, boost, gnuradio-osmosdr
+{ stdenv, fetchFromGitHub, qt4, gnuradio, boost, gnuradio-osmosdr
 # drivers (optional):
 , rtl-sdr, hackrf
 , pulseaudioSupport ? true, libpulseaudio
@@ -8,11 +8,13 @@ assert pulseaudioSupport -> libpulseaudio != null;
 
 stdenv.mkDerivation rec {
   name = "gqrx-${version}";
-  version = "2.3.2";
+  version = "2.5.3";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/project/gqrx/${version}/${name}.tar.xz";
-    sha256 = "1vfqqa976xlbapqkpc9nka364zydvsy18xiwfqjy015kpasshdz1";
+  src = fetchFromGitHub {
+    owner = "csete";
+    repo = "gqrx";
+    rev = "v${version}";
+    sha256 = "02pavd1kc0gsnrl18bfa01r2f3j4j05zly4a8zwss9yrsgf8432x";
   };
 
   buildInputs = [
@@ -21,12 +23,14 @@ stdenv.mkDerivation rec {
 
   configurePhase = ''qmake PREFIX="$out"'';
 
+  enableParallelBuilding = true;
+
   postInstall = ''
     mkdir -p "$out/share/applications"
     mkdir -p "$out/share/icons"
 
     cp gqrx.desktop "$out/share/applications/"
-    cp icons/gqrx.svg "$out/share/icons/"
+    cp resources/icons/gqrx.svg "$out/share/icons/"
   '';
 
   meta = with stdenv.lib; {
@@ -42,6 +46,6 @@ stdenv.mkDerivation rec {
     # it's currently unknown which version of the BSD license that is.
     license = licenses.gpl3Plus;
     platforms = platforms.linux;  # should work on Darwin / OS X too
-    maintainers = with maintainers; [ bjornfor the-kenny ];
+    maintainers = with maintainers; [ bjornfor the-kenny fpletz ];
   };
 }
diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix
index 99e337baa1a4e..410f56c2299be 100644
--- a/pkgs/applications/misc/josm/default.nix
+++ b/pkgs/applications/misc/josm/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "josm-${version}";
-  version = "9900";
+  version = "9979";
 
   src = fetchurl {
     url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
-    sha256 = "1dsfamh2bsiz3xkhmh7g4jz6bbh25x22k3zgj1k0v0gj8k6yl7dy";
+    sha256 = "0zy88f4h71qyj7vlhiwnayaaz50gg6bj5pfypy43ghmjrh01d9vh";
   };
 
   phases = [ "installPhase" ];
diff --git a/pkgs/applications/misc/keepass/default.nix b/pkgs/applications/misc/keepass/default.nix
index 948d03262b6b2..d6835388d89e2 100644
--- a/pkgs/applications/misc/keepass/default.nix
+++ b/pkgs/applications/misc/keepass/default.nix
@@ -8,11 +8,11 @@
 # plugin derivations in the Nix store and nowhere else.
 with builtins; buildDotnetPackage rec {
   baseName = "keepass";
-  version = "2.31";
+  version = "2.32";
 
   src = fetchurl {
     url = "mirror://sourceforge/keepass/KeePass-${version}-Source.zip";
-    sha256 = "10bqxpq30gzfq2ip6dkmqlzzsh3bnfdb01jry5xhgxvlycq1lnsm";
+    sha256 = "11bkflmqrpfk95v2j7pjcm78nilx2s611mn2x7kxwn77ilnbcjbw";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/applications/misc/khal/default.nix b/pkgs/applications/misc/khal/default.nix
index ab55e3618ec78..9f083592c4099 100644
--- a/pkgs/applications/misc/khal/default.nix
+++ b/pkgs/applications/misc/khal/default.nix
@@ -24,6 +24,7 @@ python3Packages.buildPythonApplication rec {
     urwid
     pkginfo
   ];
+  buildInputs = with python3Packages; [ setuptools_scm ];
 
   meta = with stdenv.lib; {
     homepage = http://lostpackets.de/khal/;
diff --git a/pkgs/applications/misc/mediainfo-gui/default.nix b/pkgs/applications/misc/mediainfo-gui/default.nix
index ffb4c147c7768..83130164fd995 100644
--- a/pkgs/applications/misc/mediainfo-gui/default.nix
+++ b/pkgs/applications/misc/mediainfo-gui/default.nix
@@ -1,28 +1,29 @@
-{ stdenv, fetchurl, automake, autoconf, libtool, pkgconfig, libzen, libmediainfo, wxGTK, desktop_file_utils, libSM, imagemagick }:
+{ stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, libmediainfo, wxGTK
+, desktop_file_utils, libSM, imagemagick }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.82";
+  version = "0.7.83";
   name = "mediainfo-gui-${version}";
   src = fetchurl {
     url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
-    sha256 = "0ivvmxx93aldfbms6wg46x9npghg304j2zxl5i70m710gybjr232";
+    sha256 = "0d8mph9lbg2lw0ccg1la0kqhbisra8q9rzn195lncch5cia5zyg7";
   };
 
-  buildInputs = [ automake autoconf libtool pkgconfig libzen libmediainfo wxGTK desktop_file_utils libSM imagemagick ];
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+  buildInputs = [ libzen libmediainfo wxGTK desktop_file_utils libSM
+                  imagemagick ];
 
   sourceRoot = "./MediaInfo/Project/GNU/GUI/";
 
-  preConfigure = "sh autogen.sh";
-
-  meta = {
+  meta = with stdenv.lib; {
     description = "Supplies technical and tag information about a video or audio file (GUI version)";
     longDescription = ''
       MediaInfo is a convenient unified display of the most relevant technical
       and tag data for video and audio files.
     '';
     homepage = http://mediaarea.net/;
-    license = stdenv.lib.licenses.bsd2;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = [ stdenv.lib.maintainers.devhell ];
+    license = licenses.bsd2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.devhell ];
   };
 }
diff --git a/pkgs/applications/misc/mediainfo/default.nix b/pkgs/applications/misc/mediainfo/default.nix
index 5d953fed53a97..cf1a4ce82800a 100644
--- a/pkgs/applications/misc/mediainfo/default.nix
+++ b/pkgs/applications/misc/mediainfo/default.nix
@@ -1,19 +1,19 @@
-{ stdenv, fetchurl, automake, autoconf, libtool, pkgconfig, libzen, libmediainfo, zlib }:
+{ stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, libmediainfo, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.82";
+  version = "0.7.83";
   name = "mediainfo-${version}";
   src = fetchurl {
     url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
-    sha256 = "0ivvmxx93aldfbms6wg46x9npghg304j2zxl5i70m710gybjr232";
+    sha256 = "0d8mph9lbg2lw0ccg1la0kqhbisra8q9rzn195lncch5cia5zyg7";
   };
 
-  buildInputs = [ automake autoconf libtool pkgconfig libzen libmediainfo zlib ];
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+  buildInputs = [ libzen libmediainfo zlib ];
 
   sourceRoot = "./MediaInfo/Project/GNU/CLI/";
 
   configureFlags = [ "--with-libmediainfo=${libmediainfo}" ];
-  preConfigure = "sh autogen.sh";
 
   meta = with stdenv.lib; {
     description = "Supplies technical and tag information about a video or audio file";
diff --git a/pkgs/applications/misc/octoprint/0001-Don-t-use-static-library.patch b/pkgs/applications/misc/octoprint/0001-Don-t-use-static-library.patch
index 01b0c8f9cce9c..54116b80a6e89 100644
--- a/pkgs/applications/misc/octoprint/0001-Don-t-use-static-library.patch
+++ b/pkgs/applications/misc/octoprint/0001-Don-t-use-static-library.patch
@@ -1,7 +1,7 @@
-From 73ff28c3ee5b737303871268a5487db0fcffc0f6 Mon Sep 17 00:00:00 2001
+From 0be3198cccf753226758684955f49a32d8d920c0 Mon Sep 17 00:00:00 2001
 From: Nikolay Amiantov <ab@fmap.me>
 Date: Wed, 17 Feb 2016 14:37:31 +0300
-Subject: [PATCH 1/2] Don't use static library
+Subject: [PATCH] Don't use static library
 
 ---
  octoprint_m3dfio/__init__.py   | 67 +-----------------------------------------
@@ -9,23 +9,23 @@ Subject: [PATCH 1/2] Don't use static library
  2 files changed, 5 insertions(+), 68 deletions(-)
 
 diff --git a/octoprint_m3dfio/__init__.py b/octoprint_m3dfio/__init__.py
-index 5e5369b..9f59768 100644
+index a2ca533..43f178a 100644
 --- a/octoprint_m3dfio/__init__.py
 +++ b/octoprint_m3dfio/__init__.py
-@@ -764,72 +764,7 @@ class M3DFioPlugin(
+@@ -793,72 +793,7 @@ class M3DFioPlugin(
  		# Set file locations
  		self.setFileLocations()
  		
 -		# Check if running on Linux
 -		if platform.uname()[0].startswith("Linux") :
 -		
--			# Check if running on a Raspberry Pi
+-			# Check if running on a Raspberry Pi 1
 -			if platform.uname()[4].startswith("armv6l") and self.getCpuHardware() == "BCM2708" :
 -			
 -				# Set shared library
 -				self.sharedLibrary = ctypes.cdll.LoadLibrary(self._basefolder.replace('\\', '/') + "/static/libraries/preprocessor_arm1176jzf-s.so")
 -			
--			# Otherwise check if running on a Raspberry Pi 2
+-			# Otherwise check if running on a Raspberry Pi 2 or Raspberry Pi 3
 -			elif platform.uname()[4].startswith("armv7l") and self.getCpuHardware() == "BCM2709" :
 -			
 -				# Set shared library
@@ -87,7 +87,7 @@ index 5e5369b..9f59768 100644
  		if self.sharedLibrary :
  		
 diff --git a/shared library source/Makefile b/shared library source/Makefile
-index 4062a91..89dab71 100644
+index 9d015a1..a24f134 100644
 --- a/shared library source/Makefile	
 +++ b/shared library source/Makefile	
 @@ -58,13 +58,15 @@ ifeq ($(TARGET_PLATFORM), OSX64)
@@ -109,5 +109,5 @@ index 4062a91..89dab71 100644
  clean:
  	rm -f ../octoprint_m3dfio/static/libraries/$(PROG)
 -- 
-2.7.0
+2.7.1
 
diff --git a/pkgs/applications/misc/octoprint/default.nix b/pkgs/applications/misc/octoprint/default.nix
index 67b351ba906e3..b9b6c10a13faa 100644
--- a/pkgs/applications/misc/octoprint/default.nix
+++ b/pkgs/applications/misc/octoprint/default.nix
@@ -2,13 +2,13 @@
 
 pythonPackages.buildPythonApplication rec {
   name = "OctoPrint-${version}";
-  version = "1.2.9";
+  version = "1.2.10";
 
   src = fetchFromGitHub {
     owner = "foosel";
     repo = "OctoPrint";
     rev = version;
-    sha256 = "00hhq52jqwykhk3p57mn9kkcjbjz6g9mcrp96vx8lqzhw42m3a86";
+    sha256 = "1ips1083c4qrfnkssvp1lxrs92svlid29l225ifsymrinpbjawav";
   };
 
   # We need old Tornado
diff --git a/pkgs/applications/misc/octoprint/plugins.nix b/pkgs/applications/misc/octoprint/plugins.nix
index 1ae11be3cdd36..7ff6686a93720 100644
--- a/pkgs/applications/misc/octoprint/plugins.nix
+++ b/pkgs/applications/misc/octoprint/plugins.nix
@@ -8,13 +8,13 @@ in {
 
   m3d-fio = buildPlugin rec {
     name = "M3D-Fio-${version}";
-    version = "0.28.2";
+    version = "0.30.2";
 
     src = fetchFromGitHub {
       owner = "donovan6000";
       repo = "M3D-Fio";
       rev = "V${version}";
-      sha256 = "1fwy6xmbid89rn7w7v779wb34gmfzc1fkggv3im1r7a7jrzph6nx";
+      sha256 = "1knm41hwjf6v4yjx8khr2zd9ryndmw8bkp3y80hgjc5p4nqxrmg3";
     };
 
     patches = [
diff --git a/pkgs/applications/misc/pgadmin/default.nix b/pkgs/applications/misc/pgadmin/default.nix
index 55db70c1d2495..894aeaab42539 100644
--- a/pkgs/applications/misc/pgadmin/default.nix
+++ b/pkgs/applications/misc/pgadmin/default.nix
@@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "0gkqpj8cg6jd6yhssrij1cbh960rg9fkjbdzcpryi6axwv0ag7ki";
   };
 
+  enableParallelBuilding = true;
+
   buildInputs = [ postgresql wxGTK libxml2 libxslt openssl ];
 
   preConfigure = ''
diff --git a/pkgs/applications/misc/ranger/default.nix b/pkgs/applications/misc/ranger/default.nix
index 14ae58a293277..7969695f1ad2b 100644
--- a/pkgs/applications/misc/ranger/default.nix
+++ b/pkgs/applications/misc/ranger/default.nix
@@ -8,7 +8,6 @@ buildPythonApplication rec {
     homepage = "http://ranger.nongnu.org/";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.unix;
-    maintainers = with stdenv.lib.maintainers; [ iyzsong ];
   };
 
   src = fetchurl {
diff --git a/pkgs/applications/misc/slic3r/default.nix b/pkgs/applications/misc/slic3r/default.nix
index 1a5fa03c54ca3..5dd9795fba05e 100644
--- a/pkgs/applications/misc/slic3r/default.nix
+++ b/pkgs/applications/misc/slic3r/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     EncodeLocale MathClipper ExtUtilsXSpp threads
     MathConvexHullMonotoneChain MathGeometryVoronoi MathPlanePath Moo
     IOStringy ClassXSAccessor Wx GrowlGNTP NetDBus ImportInto XMLSAX
-    ExtUtilsMakeMaker OpenGL WxGLCanvas
+    ExtUtilsMakeMaker OpenGL WxGLCanvas ModuleBuild
   ];
 
   desktopItem = makeDesktopItem {
diff --git a/pkgs/applications/misc/stardict/stardict-3.0.3-compositelookup_cpp.patch b/pkgs/applications/misc/stardict/stardict-3.0.3-compositelookup_cpp.patch
deleted file mode 100644
index 86825555d9cb4..0000000000000
--- a/pkgs/applications/misc/stardict/stardict-3.0.3-compositelookup_cpp.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-This patch is from OpenSUSE .src.rpm for the following crash on startup:
-
-ERROR:compositelookup.cpp:53:void CompositeLookup::send_net_dict_request(const string&, const string&): assertion failed: (NetDictRequests.end() == std::find(NetDictRequests.begin(), NetDictRequests.end(), request))
-
---- dict/src/lib/compositelookup.cpp
-+++ dict/src/lib/compositelookup.cpp
-@@ -50,8 +50,10 @@
- void CompositeLookup::send_net_dict_request(const std::string& dict_id, const std::string& key)
- {
- 	NetDictRequest request(dict_id, key);
--	g_assert(NetDictRequests.end() == std::find(NetDictRequests.begin(), NetDictRequests.end(), request));
--	NetDictRequests.push_back(request);
-+	if(NetDictRequests.end() == std::find(NetDictRequests.begin(), NetDictRequests.end(), request))
-+	{
-+	  NetDictRequests.push_back(request);
-+	}
- }
- 
- /* returns true if got expected response */
diff --git a/pkgs/applications/misc/stardict/stardict-3.0.3-correct-glib-include.patch b/pkgs/applications/misc/stardict/stardict-3.0.3-correct-glib-include.patch
deleted file mode 100644
index fd89243938eb3..0000000000000
--- a/pkgs/applications/misc/stardict/stardict-3.0.3-correct-glib-include.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-http://bugs.gentoo.org/396219
-
---- dict/src/tomboykeybinder.h
-+++ dict/src/tomboykeybinder.h
-@@ -21,7 +21,7 @@
- #ifndef __TOMBOY_KEY_BINDER_H__
- #define __TOMBOY_KEY_BINDER_H__
- 
--#include <glib/gtypes.h>
-+#include <glib.h>
- 
- G_BEGIN_DECLS
- 
diff --git a/pkgs/applications/misc/stardict/stardict-3.0.3-entry.patch b/pkgs/applications/misc/stardict/stardict-3.0.3-entry.patch
deleted file mode 100644
index 38182b0c8e0b7..0000000000000
--- a/pkgs/applications/misc/stardict/stardict-3.0.3-entry.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-warning: key "Encoding" in group "Desktop Entry" is deprecated
-error: value "stardict.png" for key "Icon" in group "Desktop Entry" is an icon name with an extension, but there should be no extension
-error: value "Dictionary" in key "Categories" in group "Desktop Entry" requires another category to be present among the following categories: Office;TextTools
-
---- dict/data/stardict.desktop.in
-+++ dict/data/stardict.desktop.in
-@@ -1,11 +1,10 @@
- [Desktop Entry]
--Encoding=UTF-8
- _Name=StarDict
- _Comment=Lookup words
- Exec=stardict
- Terminal=false
- Type=Application
--Icon=stardict.png
-+Icon=stardict
- StartupNotify=true
--Categories=Utility;Dictionary;
-+Categories=Utility;Office;TextTools;Dictionary;
- X-GNOME-DocPath=stardict/stardict.xml
diff --git a/pkgs/applications/misc/stardict/stardict-3.0.3-gcc46.patch b/pkgs/applications/misc/stardict/stardict-3.0.3-gcc46.patch
deleted file mode 100644
index d85bc0de5ce0c..0000000000000
--- a/pkgs/applications/misc/stardict/stardict-3.0.3-gcc46.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-http://bugs.gentoo.org/362299
-
---- dict/stardict-plugins/stardict-wordnet-plugin/scene.h
-+++ dict/stardict-plugins/stardict-wordnet-plugin/scene.h
-@@ -25,6 +25,8 @@
- #ifndef __PHYSICS_H__
- #define __PHYSICS_H__
- 
-+#include <cstddef>
-+
- #include "partic.h"
- #include "spring.h"
- 
diff --git a/pkgs/applications/misc/stardict/stardict-3.0.3-overflow.patch b/pkgs/applications/misc/stardict/stardict-3.0.3-overflow.patch
deleted file mode 100644
index 482490105704d..0000000000000
--- a/pkgs/applications/misc/stardict/stardict-3.0.3-overflow.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-This patch is stardict-tools-3.0.3-destbufferoverflow.patch from OpenSUSE .src.rpm for:
-
-warning: call to ‘__fgets_chk_warn’ declared with attribute warning: fgets called with bigger size than length of destination buffer [enabled by default]
-
---- tools/src/myspell2dic.c
-+++ tools/src/myspell2dic.c
-@@ -132,7 +132,7 @@ if (argc<3) 
- 
- fprintf(stderr, "Enter grammar language [Spanish]: ");
- fflush(stderr);
--fgets(lang, 100, stdin);
-+fgets(lang, 50, stdin);
- if ((p=strchr(lang, '\n'))!=NULL) *p=0;
- if (*lang==0) strcpy(lang, "Spanish");
- 
---- tools/src/ooo2dict.c
-+++ tools/src/ooo2dict.c
-@@ -71,7 +71,7 @@ current2=malloc(10000);
- 
- fprintf(stderr, "Enter thesaurus language [WordNet_English]: ");
- fflush(stderr);
--fgets(lang, 100, stdin);
-+fgets(lang, 50, stdin);
- if ((p=strchr(lang, '\n'))!=NULL) *p=0;
- if (*lang==0) strcpy(lang, "WordNet_English");
- F=fopen((argc>1)? argv[1]: "/usr/share/myspell/dicts/th_en_US_v2.dat", "rt");
diff --git a/pkgs/applications/misc/stardict/stardict-3.0.3-zlib-1.2.5.2.patch b/pkgs/applications/misc/stardict/stardict-3.0.3-zlib-1.2.5.2.patch
deleted file mode 100644
index 6a320bd4a9f23..0000000000000
--- a/pkgs/applications/misc/stardict/stardict-3.0.3-zlib-1.2.5.2.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-http://bugs.gentoo.org/401887
-
-diff --git a/lib/src/libcommon.cpp b/lib/src/libcommon.cpp
-index 16770a3..a4299e7 100644
---- a/lib/src/libcommon.cpp
-+++ b/lib/src/libcommon.cpp
-@@ -614,7 +614,7 @@ int unpack_zlib(const char* arch_file_name, const char* out_file_name)
- 		return EXIT_FAILURE;
- 	}
- 	while(true) {
--		len = gzread(get_impl(in), buf, buffer_size);
-+		len = gzread((gzFile)get_impl(in), buf, buffer_size);
- 		if(len < 0) {
- 			g_critical(read_file_err, arch_file_name, "");
- 			return EXIT_FAILURE;
-@@ -871,3 +871,8 @@ int remove_recursive(const std::string& path)
- 		return res;
- 	}
- }
-+
-+int gzclose_compat(void * file)
-+{
-+    return gzclose ((gzFile)file);
-+}
-diff --git a/lib/src/libcommon.h b/lib/src/libcommon.h
-index 10f13b4..bdcbf2f 100644
---- a/lib/src/libcommon.h
-+++ b/lib/src/libcommon.h
-@@ -187,8 +187,9 @@ namespace clib {
- 	typedef ResourceWrapper<FILE, FILE*, int, fclose> File;
- }
- 
-+extern int gzclose_compat(void * file);
- namespace zip {
--typedef ResourceWrapper<void, void*, int, gzclose> gzFile;
-+typedef ResourceWrapper<void, void*, int, gzclose_compat> gzFile;
- }
- 
- /* Create a new temporary file. Return file name in file name encoding.
diff --git a/pkgs/applications/misc/stardict/stardict.nix b/pkgs/applications/misc/stardict/stardict.nix
deleted file mode 100644
index 600642f488acf..0000000000000
--- a/pkgs/applications/misc/stardict/stardict.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{stdenv, fetchurl, pkgconfig, gtk, glib, zlib, libxml2, intltool, gnome_doc_utils, libgnomeui, scrollkeeper, mysql, pcre, which, libxslt}:
-stdenv.mkDerivation rec {
-  name= "stardict-3.0.3";
-
-  src = fetchurl {
-    url = "http://stardict-3.googlecode.com/files/${name}.tar.bz2";
-    sha256 = "0wrb8xqy6x9piwrn0vw5alivr9h3b70xlf51qy0jpl6d7mdhm8cv";
-  };
-
-  buildInputs = [ pkgconfig gtk glib zlib libxml2 intltool gnome_doc_utils libgnomeui scrollkeeper mysql.lib pcre which libxslt];
-
-  postPatch = ''
-    # mysql hacks: we need dynamic linking as there is no libmysqlclient.a
-    substituteInPlace tools/configure --replace '/usr/local/include/mysql' '${mysql.lib}/include/mysql/'
-    substituteInPlace tools/configure --replace 'AC_FIND_FILE([libmysqlclient.a]' 'AC_FIND_FILE([libmysqlclient.so]'
-    substituteInPlace tools/configure --replace '/usr/local/lib/mysql' '${mysql.lib}/lib/mysql/'
-    substituteInPlace tools/configure --replace 'for y in libmysqlclient.a' 'for y in libmysqlclient.so'
-    substituteInPlace tools/configure --replace 'libmysqlclient.a' 'libmysqlclient.so'
-
-    # a list of p0 patches from gentoo devs
-    patch -p0 < ${./stardict-3.0.3-overflow.patch}
-    patch -p0 < ${./stardict-3.0.3-gcc46.patch}
-    patch -p0 < ${./stardict-3.0.3-compositelookup_cpp.patch}
-    patch -p0 < ${./stardict-3.0.3-correct-glib-include.patch}
-    patch -p0 < ${./stardict-3.0.3-entry.patch}
-
-    # disable the xsltproc internet query
-    substituteInPlace dict/help/Makefile.am --replace 'xsltproc -o' 'xsltproc --nonet -o'
-    substituteInPlace dict/help/Makefile.in --replace 'xsltproc -o' 'xsltproc --nonet -o'
-  '';
-
-  # another gentoo patch: a p1 patch
-  patches = [ ./stardict-3.0.3-zlib-1.2.5.2.patch ];
-
-  configurePhase = ''
-    ./configure --disable-spell --disable-gucharmap --disable-festival --disable-espeak --disable-scrollkeeper --prefix=$out
-  '';
-
-  meta = {
-    description = "An international dictionary supporting fuzzy and glob style matching";
-    license = stdenv.lib.licenses.lgpl3;
-    maintainers = with stdenv.lib.maintainers; [qknight];
-  };
-}
diff --git a/pkgs/applications/misc/xautoclick/default.nix b/pkgs/applications/misc/xautoclick/default.nix
new file mode 100644
index 0000000000000..49a94ac397973
--- /dev/null
+++ b/pkgs/applications/misc/xautoclick/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, xorg, pkgconfig
+, gtkSupport ? true, gtk
+, qtSupport ? true, qt4
+}:
+
+stdenv.mkDerivation rec {
+  version = "0.31";
+  name = "xautoclick-${version}";
+  src = fetchurl {
+    url = "http://downloads.sourceforge.net/project/xautoclick/xautoclick/xautoclick-0.31/xautoclick-0.31.tar.gz";
+    sha256 = "0h522f12a7v2b89411xm51iwixmjp2mp90rnizjgiakx9ajnmqnm";
+  };
+  buildInputs = [ xorg.libX11 xorg.libXtst xorg.xinput xorg.libXi xorg.libXext pkgconfig ]
+    ++ stdenv.lib.optionals gtkSupport [ gtk ]
+    ++ stdenv.lib.optionals qtSupport [ qt4 ];
+  patchPhase = ''
+    substituteInPlace configure --replace /usr/X11R6 ${xorg.libX11}
+  '';
+  preConfigure = stdenv.lib.optional qtSupport ''
+    mkdir .bin
+    ln -s ${qt4}/bin/moc .bin/moc-qt4
+    addToSearchPath PATH .bin
+  '';
+}
diff --git a/pkgs/applications/networking/browsers/chromium/browser.nix b/pkgs/applications/networking/browsers/chromium/browser.nix
index 2fb33fda6105c..982c6d659ee6f 100644
--- a/pkgs/applications/networking/browsers/chromium/browser.nix
+++ b/pkgs/applications/networking/browsers/chromium/browser.nix
@@ -29,8 +29,6 @@ mkChromiumDerivation (base: rec {
     done
   '';
 
-  preHook = "unset NIX_ENFORCE_PURITY";
-
   meta = {
     description = "An open source web browser from Google";
     homepage = http://www.chromium.org/;
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index 237dfd17ac71c..5494b77b807c6 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ninja, which
+{ stdenv, ninja, which
 
 # default dependencies
 , bzip2, flac, speex, libopus
@@ -29,8 +29,7 @@
 , pulseSupport ? false, libpulseaudio ? null
 , hiDPISupport ? false
 
-, source
-, plugins
+, upstream-info
 }:
 
 buildFun:
@@ -98,9 +97,17 @@ let
 
   base = rec {
     name = "${packageName}-${version}";
-    inherit (source) version;
+    inherit (upstream-info) version;
     inherit packageName buildType buildPath;
-    src = source;
+
+    src = upstream-info.main;
+
+    unpackCmd = ''
+      tar xf "$src" \
+        --anchored \
+        --no-wildcards-match-slash \
+        --exclude='*/tools/gyp'
+    '';
 
     buildInputs = defaultDependencies ++ [
       which
@@ -118,16 +125,21 @@ let
       ++ optionals cupsSupport [ libgcrypt cups ]
       ++ optional pulseSupport libpulseaudio;
 
-    # XXX: Wait for https://crbug.com/239107 and https://crbug.com/239181 to
-    #      be fixed, then try again to unbundle everything into separate
-    #      derivations.
-    prePatch = ''
-      cp -dr --no-preserve=mode "${source.main}"/* .
-      cp -dr "${source.bundled}" third_party
-      chmod -R u+w third_party
-    '';
+    patches = [
+      ./patches/build_fixes_46.patch
+      ./patches/widevine.patch
+      (if versionOlder version "50.0.0.0"
+       then ./patches/nix_plugin_paths_46.patch
+       else ./patches/nix_plugin_paths_50.patch)
+    ];
 
     postPatch = ''
+      sed -i -r \
+        -e 's/-f(stack-protector)(-all)?/-fno-\1/' \
+        -e 's|/bin/echo|echo|' \
+        -e "/python_arch/s/: *'[^']*'/: '""'/" \
+        build/common.gypi chrome/chrome_tests.gypi
+
       sed -i -e '/module_path *=.*libexif.so/ {
         s|= [^;]*|= base::FilePath().AppendASCII("${libexif}/lib/libexif.so")|
       }' chrome/utility/media_galleries/image_metadata_extractor.cc
@@ -142,8 +154,8 @@ let
     gypFlags = mkGypFlags (gypFlagsUseSystemLibs // {
       linux_use_bundled_binutils = false;
       linux_use_bundled_gold = false;
-      linux_use_gold_binary = false;
-      linux_use_gold_flags = false;
+      linux_use_gold_flags = true;
+
       proprietary_codecs = false;
       use_sysroot = false;
       use_gnome_keyring = gnomeKeyringSupport;
@@ -182,8 +194,8 @@ let
     } // (extraAttrs.gypFlags or {}));
 
     configurePhase = ''
-      # Precompile .pyc files to prevent race conditions during build
-      python -m compileall -q -f . || : # ignore errors
+      echo "Precompiling .py files to prevent race conditions..." >&2
+      python -m compileall -q -f . > /dev/null 2>&1 || : # ignore errors
 
       # This is to ensure expansion of $out.
       libExecPath="${libExecPath}"
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index f9ed1f31e5402..79e5e2dfec348 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -19,10 +19,9 @@ let
   callPackage = newScope chromium;
 
   chromium = {
-    source = callPackage ./source {
-      inherit channel;
-      # XXX: common config
-    };
+    upstream-info = (import ./update.nix {
+      inherit (stdenv) system;
+    }).getChannel channel;
 
     mkChromiumDerivation = callPackage ./common.nix {
       inherit enableSELinux enableNaCl enableHotwording gnomeSupport
diff --git a/pkgs/applications/networking/browsers/chromium/source/build_fixes_46.patch b/pkgs/applications/networking/browsers/chromium/patches/build_fixes_46.patch
index c0aeb5d3a56c6..c0aeb5d3a56c6 100644
--- a/pkgs/applications/networking/browsers/chromium/source/build_fixes_46.patch
+++ b/pkgs/applications/networking/browsers/chromium/patches/build_fixes_46.patch
diff --git a/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_46.patch b/pkgs/applications/networking/browsers/chromium/patches/nix_plugin_paths_46.patch
index 7482be7062d01..7482be7062d01 100644
--- a/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_46.patch
+++ b/pkgs/applications/networking/browsers/chromium/patches/nix_plugin_paths_46.patch
diff --git a/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_50.patch b/pkgs/applications/networking/browsers/chromium/patches/nix_plugin_paths_50.patch
index 062098a852252..062098a852252 100644
--- a/pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_50.patch
+++ b/pkgs/applications/networking/browsers/chromium/patches/nix_plugin_paths_50.patch
diff --git a/pkgs/applications/networking/browsers/chromium/source/widevine.patch b/pkgs/applications/networking/browsers/chromium/patches/widevine.patch
index 45048cada875a..45048cada875a 100644
--- a/pkgs/applications/networking/browsers/chromium/source/widevine.patch
+++ b/pkgs/applications/networking/browsers/chromium/patches/widevine.patch
diff --git a/pkgs/applications/networking/browsers/chromium/plugins.nix b/pkgs/applications/networking/browsers/chromium/plugins.nix
index c3b294876c879..a0b354f0327c8 100644
--- a/pkgs/applications/networking/browsers/chromium/plugins.nix
+++ b/pkgs/applications/networking/browsers/chromium/plugins.nix
@@ -3,7 +3,7 @@
 , enablePepperFlash ? false
 , enableWideVine ? false
 
-, source
+, upstream-info
 }:
 
 with stdenv.lib;
@@ -40,16 +40,15 @@ let
   plugins = stdenv.mkDerivation {
     name = "chromium-binary-plugins";
 
-    # XXX: Only temporary and has to be version-specific
-    src = source.plugins;
+    src = upstream-info.binary;
 
     phases = [ "unpackPhase" "patchPhase" "installPhase" "checkPhase" ];
     outputs = [ "flash" "widevine" ];
 
     unpackCmd = let
-      chan = if source.channel == "dev"    then "chrome-unstable"
-        else if source.channel == "stable" then "chrome"
-        else "chrome-${source.channel}";
+      chan = if upstream-info.channel == "dev"    then "chrome-unstable"
+        else if upstream-info.channel == "stable" then "chrome"
+        else "chrome-${upstream-info.channel}";
     in ''
       mkdir -p plugins
       ar p "$src" data.tar.xz | tar xJ -C plugins --strip-components=4 \
@@ -84,7 +83,9 @@ let
       wvModule = "@widevine@/lib/libwidevinecdmadapter.so";
       wvInfo = "#${wvName}#${wvDescription};${wvMimeTypes}";
     in ''
-      flashVersion="$(${jshon}/bin/jshon -F PepperFlash/manifest.json -e version -u)"
+      flashVersion="$(
+        "${jshon}/bin/jshon" -F PepperFlash/manifest.json -e version -u
+      )"
 
       install -vD PepperFlash/libpepflashplayer.so \
         "$flash/lib/libpepflashplayer.so"
diff --git a/pkgs/applications/networking/browsers/chromium/source/default.nix b/pkgs/applications/networking/browsers/chromium/source/default.nix
deleted file mode 100644
index a566c4bb1c874..0000000000000
--- a/pkgs/applications/networking/browsers/chromium/source/default.nix
+++ /dev/null
@@ -1,78 +0,0 @@
-{ stdenv, fetchurl, fetchpatch, patchutils, python
-, channel ? "stable"
-}:
-
-with stdenv.lib;
-
-with (import ./update.nix {
-  inherit (stdenv) system;
-}).getChannel channel;
-
-let
-  transform = flags: concatStringsSep ";" (map (subst: subst + flags) [
-    "s,^[^/]+(.*)$,$main\\1,"
-    "s,$main/(build|tools)(/.*)?$,$out/\\1\\2,"
-    "s,$main/third_party(/.*)?$,$bundled\\1,"
-    "s,^/,,"
-  ]);
-
-in stdenv.mkDerivation {
-  name = "chromium-source-${version}";
-
-  src = fetchurl main;
-
-  buildInputs = [ python ]; # cannot patch shebangs otherwise
-
-  phases = [ "unpackPhase" "patchPhase" ];
-  outputs = [ "out" "bundled" "main" ];
-
-  unpackPhase = ''
-    tar xf "$src" -C / \
-      --transform="${transform "xS"}" \
-      --anchored \
-      --no-wildcards-match-slash \
-      --exclude='*/tools/gyp' \
-      --exclude='*/.*'
-  '';
-
-  prePatch = ''
-    for i in $outputs; do
-      eval patchShebangs "\$$i"
-    done
-  '';
-
-  patches = [
-    ./build_fixes_46.patch
-    ./widevine.patch
-    (if versionOlder version "50.0.0.0"
-     then ./nix_plugin_paths_46.patch
-     else ./nix_plugin_paths_50.patch)
-  ];
-
-  patchPhase = let
-    diffmod = sym: "/^${sym} /{s/^${sym} //;${transform ""};s/^/${sym} /}";
-    allmods = "${diffmod "---"};${diffmod "\\+\\+\\+"}";
-    sedexpr = "/^(---|\\+\\+\\+) *\\/dev\\/null/b;${allmods}";
-  in ''
-    runHook prePatch
-    for i in $patches; do
-      header "applying patch $i" 3
-      sed -r -e "${sedexpr}" "$i" | patch -d / -p0
-      stopNest
-    done
-    runHook postPatch
-  '';
-
-  postPatch = ''
-    sed -i -r \
-      -e 's/-f(stack-protector)(-all)?/-fno-\1/' \
-      -e 's|/bin/echo|echo|' \
-      -e "/python_arch/s/: *'[^']*'/: '""'/" \
-      "$out/build/common.gypi" "$main/chrome/chrome_tests.gypi"
-  '';
-
-  passthru = {
-    inherit version channel;
-    plugins = fetchurl binary;
-  };
-}
diff --git a/pkgs/applications/networking/browsers/chromium/source/sources.nix b/pkgs/applications/networking/browsers/chromium/source/sources.nix
deleted file mode 100644
index ffec5c8b80736..0000000000000
--- a/pkgs/applications/networking/browsers/chromium/source/sources.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-# This file is autogenerated from update.sh in the parent directory.
-{
-  beta = {
-    sha256 = "1xc2npbc829nxria1j37kxyy95jkalkkphxgv24if0ibn62lrzd4";
-    sha256bin64 = "1arm15g3vmm3zlvcql3qylw1fhrn5ddzl2v8mkpb3a251m425dsi";
-    version = "49.0.2623.75";
-  };
-  dev = {
-    sha256 = "04j0nyz20gi7vf1javbw06wrqpkfw6vg024i3wkgx42hzd6hjgw4";
-    sha256bin64 = "12ff4q615rwakgpr9v84p55maasqb4vg61s89vgxrlsgqrmkahg4";
-    version = "50.0.2661.11";
-  };
-  stable = {
-    sha256 = "1xc2npbc829nxria1j37kxyy95jkalkkphxgv24if0ibn62lrzd4";
-    sha256bin64 = "01qi5jmlmdpy6icc4y51bn5a063mxrnkncg3pbmbl4r02vqca5jh";
-    version = "49.0.2623.75";
-  };
-}
diff --git a/pkgs/applications/networking/browsers/chromium/source/update.nix b/pkgs/applications/networking/browsers/chromium/update.nix
index d4dc3b59cbc76..cff8419956248 100644
--- a/pkgs/applications/networking/browsers/chromium/source/update.nix
+++ b/pkgs/applications/networking/browsers/chromium/update.nix
@@ -1,12 +1,12 @@
 { system ? builtins.currentSystem }:
 
 let
-  inherit (import ../../../../../../. {
+  inherit (import ../../../../../. {
     inherit system;
-  }) lib runCommand writeText stdenv curl cacert nix;
+  }) lib runCommand fetchurl writeText stdenv curl cacert nix;
 
-  sources = if builtins.pathExists ./sources.nix
-            then import ./sources.nix
+  sources = if builtins.pathExists ./upstream-info.nix
+            then import ./upstream-info.nix
             else {};
 
   bucketURL = "https://commondatastorage.googleapis.com/"
@@ -32,14 +32,15 @@ in rec {
   getChannel = channel: let
     chanAttrs = builtins.getAttr channel sources;
   in {
+    inherit channel;
     inherit (chanAttrs) version;
 
-    main = {
+    main = fetchurl {
       url = mkVerURL chanAttrs.version;
       inherit (chanAttrs) sha256;
     };
 
-    binary = let
+    binary = fetchurl (let
       mkUrls = arch: let
         mkURLForMirror = getDebURL channel chanAttrs.version arch;
       in map mkURLForMirror ([ debURL ] ++ debMirrors);
@@ -49,7 +50,7 @@ in rec {
     } else if !stdenv.is64bit && chanAttrs ? sha256bin32 then {
       urls = mkUrls "i386";
       sha256 = chanAttrs.sha256bin32;
-    } else throw "No Chrome plugins are available for your architecture.";
+    } else throw "No Chrome plugins are available for your architecture.");
   };
 
   update = let
@@ -224,8 +225,8 @@ in rec {
       mkAttr = key: val: "${mkIndent (indent + 1)}${key} = ${mkVal val};\n";
       attrLines = lib.mapAttrsToList mkAttr attrs;
     in "{\n" + (lib.concatStrings attrLines) + (mkIndent indent) + "}";
-  in writeText "chromium-new-sources.nix" ''
-    # This file is autogenerated from update.sh in the parent directory.
+  in writeText "chromium-new-upstream-info.nix" ''
+    # This file is autogenerated from update.sh in the same directory.
     ${dumpAttrs 0 newChannels}
   '';
 }
diff --git a/pkgs/applications/networking/browsers/chromium/update.sh b/pkgs/applications/networking/browsers/chromium/update.sh
index 05cc671d31cec..df53068713de4 100755
--- a/pkgs/applications/networking/browsers/chromium/update.sh
+++ b/pkgs/applications/networking/browsers/chromium/update.sh
@@ -1,3 +1,4 @@
 #!/bin/sh -e
-sp="$(nix-build -Q --no-out-link source/update.nix -A update)"
-cat "$sp" > source/sources.nix
+cd "$(dirname "$0")"
+sp="$(nix-build -Q --no-out-link update.nix -A update)"
+cat "$sp" > upstream-info.nix
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
new file mode 100644
index 0000000000000..bcb5c3f2311ac
--- /dev/null
+++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
@@ -0,0 +1,18 @@
+# This file is autogenerated from update.sh in the same directory.
+{
+  beta = {
+    sha256 = "1lgpjnjhy3idha5b6wp31kdk6knic96dmajyrgn1701q3mq81g1i";
+    sha256bin64 = "1yb3rk38zfgjzka0aim1xc4r0qaz2qkwaq06mjifpkszmfffhyd0";
+    version = "50.0.2661.26";
+  };
+  dev = {
+    sha256 = "0z9m1mv6pv43y3ccd0nzqg5f9q8qxc8mlmy9y3dc9kqpvmqggnvp";
+    sha256bin64 = "0khsxci970vclfg24b7m8w1jqfkv5rzswgwa62b4r7jzrglx1azj";
+    version = "50.0.2661.18";
+  };
+  stable = {
+    sha256 = "0kbph3l964bh7cb9yf8nydjaxa20yf8ls5a2vzsj8phz7n20z3f9";
+    sha256bin64 = "1k6nhccdqzzzicwi07nldqfsdlic65i2xfyb7dbasbbg9zl3s9yw";
+    version = "49.0.2623.87";
+  };
+}
diff --git a/pkgs/applications/networking/browsers/firefox-bin/sources.nix b/pkgs/applications/networking/browsers/firefox-bin/sources.nix
index 6ae91e165a988..1ff70cb8ccf73 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/sources.nix
@@ -4,187 +4,187 @@
 # ruby generate_sources.rb > sources.nix
 
 {
-  version = "45.0";
+  version = "45.0.1";
   sources = [
-    { locale = "ach"; arch = "linux-i686"; sha256 = "795f7db97ecbc58cf3b0f599375d5ce86eccdd1159aba8ea5523229efce84f0a"; }
-    { locale = "ach"; arch = "linux-x86_64"; sha256 = "b511f394a8f313fcb8993cc220698150cdf16e6ce962004cb1be768bd26042d8"; }
-    { locale = "af"; arch = "linux-i686"; sha256 = "dec09a59488c4e532b409be866560bd4b874fcd6400129a23ed7dc8b272949e3"; }
-    { locale = "af"; arch = "linux-x86_64"; sha256 = "b19f3bbcef86ea03dd99cd6f59cdb755c9d724a6c8d6c8d5480f333a73260ed2"; }
-    { locale = "an"; arch = "linux-i686"; sha256 = "c9ff3f690d42585f5dbaae7d62305efeebd093c4ffe751fe989cc9d237e0e761"; }
-    { locale = "an"; arch = "linux-x86_64"; sha256 = "0dc5385e1bf23e3fbd25c82d32742add279ea293311159d283c7e93eb6e73396"; }
-    { locale = "ar"; arch = "linux-i686"; sha256 = "fe690e7fb25d96b830fcd06a88c44118eb06644104c5ed74c69621c128f5dcd8"; }
-    { locale = "ar"; arch = "linux-x86_64"; sha256 = "06e7c7e4e37621d7d14e81e79da6a4d35025476f87ed95ed4bb11d6160ce8546"; }
-    { locale = "as"; arch = "linux-i686"; sha256 = "f1f1bde8406ecc4275425ef91579f82a49bb9bc33a4c1de95c770e89205dd001"; }
-    { locale = "as"; arch = "linux-x86_64"; sha256 = "e31171d2470713b8cc211e5a1193a89890588c7c537a4c0405aa8db4a41b8862"; }
-    { locale = "ast"; arch = "linux-i686"; sha256 = "9bdbbc47a1a31ac45cee3222b03b2fd9661e8e9685c672ca5b378abff1a60c76"; }
-    { locale = "ast"; arch = "linux-x86_64"; sha256 = "511d340af37b8909006a446de906503a7b0904379597df36f8072790de727fed"; }
-    { locale = "az"; arch = "linux-i686"; sha256 = "c9d43c61ef5677a70e19ea3ff7400a93b926aa72edddb793fcc4e502b7f77b91"; }
-    { locale = "az"; arch = "linux-x86_64"; sha256 = "6450e41e581f49a76fa4bb7e685b2010899608aaa5c58224eec679b56e9d9d32"; }
-    { locale = "be"; arch = "linux-i686"; sha256 = "eef6cb47db9c3909b813d01a78a7af439dccdd00c040e513c4e784ee537a2d38"; }
-    { locale = "be"; arch = "linux-x86_64"; sha256 = "f20a4da9edd845a43b7bf85b70e2a67f3a96a4db9c461d0b4b168f0a6f0a3a73"; }
-    { locale = "bg"; arch = "linux-i686"; sha256 = "3af1a3fb90685e819fad2c69daf11df29b01a97899045ba49a79588e9e5e2e01"; }
-    { locale = "bg"; arch = "linux-x86_64"; sha256 = "d3662db0b9417d68a423b31f9aac7d03c3eccba36bcc0ba9b84ccf194325e521"; }
-    { locale = "bn-BD"; arch = "linux-i686"; sha256 = "f867fbbf3dbfe06dc027592543700802270daf2956d45e921f968277e84e75bd"; }
-    { locale = "bn-BD"; arch = "linux-x86_64"; sha256 = "08fdde0f76553ca018efeb0e0fd439b42d6e13715aee680ee77435bda20f684f"; }
-    { locale = "bn-IN"; arch = "linux-i686"; sha256 = "dc3251e661966174be97c99aa2d332e9c605e99ce6526a0b69daa56e2266f6da"; }
-    { locale = "bn-IN"; arch = "linux-x86_64"; sha256 = "9558f4bfb37dfaf3915345702c22fc14c19721c9f283c9824fa30151a8c2065e"; }
-    { locale = "br"; arch = "linux-i686"; sha256 = "b3f51cf697aba530f13ed7207b3fdb4416272d7d4324147722c7c9cf3b336485"; }
-    { locale = "br"; arch = "linux-x86_64"; sha256 = "c5c6804ae9d730c32c7b97219cbfef63be0ee28b8a3eacc3f21291f228aa0624"; }
-    { locale = "bs"; arch = "linux-i686"; sha256 = "099d3845b98baef27225f77b56663f2e290ec75ab0569cea10722c84a779c829"; }
-    { locale = "bs"; arch = "linux-x86_64"; sha256 = "d7688be752320867c31de94363f7c8b6321b1d6d11f57b6295e4e58db281fc0f"; }
-    { locale = "ca"; arch = "linux-i686"; sha256 = "ec55163d35d4b3e9f5c0a000b389e91aa4c6d8ea0df800f69feaa26840ac5f6e"; }
-    { locale = "ca"; arch = "linux-x86_64"; sha256 = "79c99f2dee213d7316060134562db67bbb377e6f44642869e25bd6b7533df464"; }
-    { locale = "cs"; arch = "linux-i686"; sha256 = "a2833f106cf999416eed734352873e99d4ac0dce6ebf541d9219e9eaee250604"; }
-    { locale = "cs"; arch = "linux-x86_64"; sha256 = "ccc6858d55578a0caa8edc3cd6b44e876266063a08b22c6aa82f6b975ba9265b"; }
-    { locale = "cy"; arch = "linux-i686"; sha256 = "0d3b8e10346653b658f31fffc806d3067e1215ce02ba737c38f5a90acf9ddce9"; }
-    { locale = "cy"; arch = "linux-x86_64"; sha256 = "0fe6206618a90d50927954dfff9de0653d0780de472c9be9eef7b679e8acbbde"; }
-    { locale = "da"; arch = "linux-i686"; sha256 = "c4998f1ac1b80621fc8172d300c473739bd1563fa9eda1560919d359bae0ba81"; }
-    { locale = "da"; arch = "linux-x86_64"; sha256 = "adc7129bb0992adc693577eb4846adad01bcf120f740b4fdc5f06f3dd5997a77"; }
-    { locale = "de"; arch = "linux-i686"; sha256 = "a19ce1edec32fc3f54444a52de13fbf5d5a9838782b288f39069a6aaa8c0bdc2"; }
-    { locale = "de"; arch = "linux-x86_64"; sha256 = "524c4aab74a14f97b42c830f1bca53d8dfcf53102873f47fbdfef21e6fe05170"; }
-    { locale = "dsb"; arch = "linux-i686"; sha256 = "965326f3f6fbdd3fe3aeb0d82113b86537db0b70e6eb93aeab154793660a84f4"; }
-    { locale = "dsb"; arch = "linux-x86_64"; sha256 = "a750854356b464d898a02ee82eeecfebca13b4217d3c0e427da8635210b3437e"; }
-    { locale = "el"; arch = "linux-i686"; sha256 = "fb72a501b2358fb803b0902d7a7c56f20a662d073451d22d85a0e75f9e62a5b4"; }
-    { locale = "el"; arch = "linux-x86_64"; sha256 = "cf72cc228f61bdcb94a5f7c508312e1b7c03f9e0828547ac18c08d1020ca9065"; }
-    { locale = "en-GB"; arch = "linux-i686"; sha256 = "bd4ad892ce6cc1be8d460bb1306a1f727abfaf4868155d9bab8508181c9f9796"; }
-    { locale = "en-GB"; arch = "linux-x86_64"; sha256 = "9f28b5f905b9a7118d7f50ea93c4ce75bf447f052a1ef9daad8a70cf9cd48e95"; }
-    { locale = "en-US"; arch = "linux-i686"; sha256 = "310e16225f31ffcda25a70eda0defe2d361946c2705f39f4694059208d9f5223"; }
-    { locale = "en-US"; arch = "linux-x86_64"; sha256 = "d86c67b5d12fe7a0e219f823a47644b952cb3ced105fbe428bc89e2a728a9988"; }
-    { locale = "en-ZA"; arch = "linux-i686"; sha256 = "55ee09437fe8c2492a5f55682ae18d326c71c13ef88e9444dbdb0b5fe5f7ebde"; }
-    { locale = "en-ZA"; arch = "linux-x86_64"; sha256 = "b96c05a0e32604672d2ae420e1e534f4b19a539386360e93caf607e3ea8f5620"; }
-    { locale = "eo"; arch = "linux-i686"; sha256 = "75071e72dfd0b6212f6e160cb985964302e689432d226a6c08a5aa9ccf10a43e"; }
-    { locale = "eo"; arch = "linux-x86_64"; sha256 = "7d23e926420a7c29af93957b641636d2c23382b23940109b337f17e073445401"; }
-    { locale = "es-AR"; arch = "linux-i686"; sha256 = "769f306e31b319dec281fe2afa03f586e83942403b4f1ec40ceef1f522fdaf0a"; }
-    { locale = "es-AR"; arch = "linux-x86_64"; sha256 = "d9146b07f48840ca7a33f3c20f99392ea1c10de8cbebd053a60b2ed8e03053bd"; }
-    { locale = "es-CL"; arch = "linux-i686"; sha256 = "c95df915aee57fb0e86368378025de462815dd15cf4fbfc1f4cc606f5dcf1fa2"; }
-    { locale = "es-CL"; arch = "linux-x86_64"; sha256 = "1b7244f8132135e1f965f59eba6688f40dc377f7b9f7be4df4dd74fd07708778"; }
-    { locale = "es-ES"; arch = "linux-i686"; sha256 = "5de57ca5bb98bdd8b6a51e6223800309ccdbb448ee8a0519aa15da03efa3587b"; }
-    { locale = "es-ES"; arch = "linux-x86_64"; sha256 = "1bea15feaab6bdb596cdf55e312609b637c79a185c11737939db20c45a130471"; }
-    { locale = "es-MX"; arch = "linux-i686"; sha256 = "5edbe5767f96cc197a7e546eef168c5b9543459ef0c6a2bbed1b99d032b3cb12"; }
-    { locale = "es-MX"; arch = "linux-x86_64"; sha256 = "4bf18487452db842f5bd5a5ee7658e19a57f1ee16af4773d9647252c9e6c1385"; }
-    { locale = "et"; arch = "linux-i686"; sha256 = "41d37a5d2a839c5a9f63fd86939df187ec9f77094071097d80a19d85969b5400"; }
-    { locale = "et"; arch = "linux-x86_64"; sha256 = "8a2e8b97563f62c63f55711f0cc54fb57d6927cb7aad89cc4ab2300bccab16b4"; }
-    { locale = "eu"; arch = "linux-i686"; sha256 = "40c6722ee1e01281fb2bdccb2cd2239f222174803edd2c7face78e3a1e3eeb17"; }
-    { locale = "eu"; arch = "linux-x86_64"; sha256 = "0fe4cd9d4c7eead144596868402e2feacef5f0140765db3f97ee2bb26445dd19"; }
-    { locale = "fa"; arch = "linux-i686"; sha256 = "094893d8e4fb045ce68d3342d6f542f33604aa9eb9dd308b16591eba68b0fae6"; }
-    { locale = "fa"; arch = "linux-x86_64"; sha256 = "5d4c570aeca30053b5530d4a77ac92a622e6808c073f03273d5f95ec47b61aed"; }
-    { locale = "ff"; arch = "linux-i686"; sha256 = "aa13e64b3700f0727798ce0584c1ca458be2d37b854316eb8db95a766a603fc9"; }
-    { locale = "ff"; arch = "linux-x86_64"; sha256 = "19bc6d3991835acce993a3ece7d16338c718a4208060a730d197f74e830affdf"; }
-    { locale = "fi"; arch = "linux-i686"; sha256 = "d30a56a801c2305ca47b416923f93f9e0f5238d5e2054ca86b2facee25884870"; }
-    { locale = "fi"; arch = "linux-x86_64"; sha256 = "9db94e8ca2ca1409b3e0989af4ba9d2aa0101c9c2d5b6f1ee321532327a9a74c"; }
-    { locale = "fr"; arch = "linux-i686"; sha256 = "467c744b88987ea094367228175ee1d6f2d1b1deda2db056d143dbd4d214fd80"; }
-    { locale = "fr"; arch = "linux-x86_64"; sha256 = "50e4a71de78d4fa1b11a0fb57185456a2cfd01cf755e655324332ec28657680d"; }
-    { locale = "fy-NL"; arch = "linux-i686"; sha256 = "b7aa53b6c83ec514f650c1af83cdbda731775c8caadc508e34101161df6757a4"; }
-    { locale = "fy-NL"; arch = "linux-x86_64"; sha256 = "d71b1aae6c70176894abfcc3fed8c84b1d3c426ef2125241172259bf4205892e"; }
-    { locale = "ga-IE"; arch = "linux-i686"; sha256 = "70555105f42429e574e1df7f860fc1331c5d5c68e7b4fae6a6d1a00d14c2cf07"; }
-    { locale = "ga-IE"; arch = "linux-x86_64"; sha256 = "207a0a310b8fbaad1e030e7a3904170b44b6a796bfe8216ea4cf9bac93a08b1f"; }
-    { locale = "gd"; arch = "linux-i686"; sha256 = "19884e9d9511156bacb54414e8722fdf5f6579eaa911f5cacf736200ba989e85"; }
-    { locale = "gd"; arch = "linux-x86_64"; sha256 = "5e5f343c9367b6c8b67f326269152c0582e4f03b3d5abfc4747d96a3f43c2674"; }
-    { locale = "gl"; arch = "linux-i686"; sha256 = "b0495e2078e7f0748bf285a667d46a518297a54dd081d3fd612060528696d736"; }
-    { locale = "gl"; arch = "linux-x86_64"; sha256 = "991ca23b93fd2e9306e3b1c3128633e5e147265b95dfa72cff5b00bc4f5faab4"; }
-    { locale = "gn"; arch = "linux-i686"; sha256 = "4750afd6310a9be2c8e5697076d436c7321aa6b883971979453fc7148be6cf88"; }
-    { locale = "gn"; arch = "linux-x86_64"; sha256 = "2b14b5b286e541bca2465c2d3472a3113946b205da5a0acefdd9db9849d1b921"; }
-    { locale = "gu-IN"; arch = "linux-i686"; sha256 = "1c1f03dd683889b4ce80d6fc10d0939c1172b9becf4305989a5a3896a2230043"; }
-    { locale = "gu-IN"; arch = "linux-x86_64"; sha256 = "0ddd8706942b4ba46ac126f9eae33945b90ba2e8fce5d85ed61307189c37701d"; }
-    { locale = "he"; arch = "linux-i686"; sha256 = "e9c35252df6dc6ffe6d028404ea9d4157042c0743aad8deba42cf5da32ca354f"; }
-    { locale = "he"; arch = "linux-x86_64"; sha256 = "ae6b86a28daf441f22ac50adb6205bbbb0ffac978f638fd0558a63b9704dccce"; }
-    { locale = "hi-IN"; arch = "linux-i686"; sha256 = "84c638031ea3ac329d683ea282f26c530327ede87a42345f9eae417fd8fd4211"; }
-    { locale = "hi-IN"; arch = "linux-x86_64"; sha256 = "62e161cd10cbf6d1cd91067ddff474b0a73e3be93d44255311e3d44b41cb1cd1"; }
-    { locale = "hr"; arch = "linux-i686"; sha256 = "7349f78a35747de2a9d7a49526ea555a96e7aba5832f0eeaca4f367db3429555"; }
-    { locale = "hr"; arch = "linux-x86_64"; sha256 = "7f269905b76bdf9fbeeaccf1de194a9ff27a6aa3a871636320d46db9a585b3a7"; }
-    { locale = "hsb"; arch = "linux-i686"; sha256 = "72a14ca50ed839a9cd448254edb88e8f71d7d0f1de226bd2ba8f558721f249db"; }
-    { locale = "hsb"; arch = "linux-x86_64"; sha256 = "b546ee12183aefb64071f503ddf1e11820d2782cbd0984979fa6f6b77c66ab9b"; }
-    { locale = "hu"; arch = "linux-i686"; sha256 = "7882259d133231976be807bb170f887830cf2827deb6b9605708a42fcb10caaf"; }
-    { locale = "hu"; arch = "linux-x86_64"; sha256 = "55a23b51b3c90fd1936878ee48db16e8ad328ee68cf97170276e84fb5658119e"; }
-    { locale = "hy-AM"; arch = "linux-i686"; sha256 = "4cf64098fb6ae55553f5c5c60126e0a9ebcd224eb67240fef013988c21fef165"; }
-    { locale = "hy-AM"; arch = "linux-x86_64"; sha256 = "58ffcbfb60b63b06c520a5cf543e6ad8cdcda490fb2baf7c35ad0e7c17c8b255"; }
-    { locale = "id"; arch = "linux-i686"; sha256 = "3fad57b21f866534ce73d1a3702038a73aa64e9d28c96249cca890b886bc8817"; }
-    { locale = "id"; arch = "linux-x86_64"; sha256 = "eca4ec8568d02af755351db846ceed5bc58b401e2ac3eb6ac25eb235884912c1"; }
-    { locale = "is"; arch = "linux-i686"; sha256 = "c7a5b48d8055a46da40d650f18aab8f5aa7aefd59d165d5fdec0cf361b5360e3"; }
-    { locale = "is"; arch = "linux-x86_64"; sha256 = "7e0043f25378fafd3176a5b735ab35449c2febc83188d93bbcf12e47b729e0a8"; }
-    { locale = "it"; arch = "linux-i686"; sha256 = "e77950e24117e0e25e0a77f40819e9b10711725b2fe8e8772d8875120ae58751"; }
-    { locale = "it"; arch = "linux-x86_64"; sha256 = "347ec5d8bb5f61ef3003c2ed106ec7d70534816341c168acf46565571a76c0bf"; }
-    { locale = "ja"; arch = "linux-i686"; sha256 = "8ca089d2624572f38d9fe7911d9ab77dae2589b3022de9132215dafdc8f78ce8"; }
-    { locale = "ja"; arch = "linux-x86_64"; sha256 = "f5f5825ae34f819744c2a03c7af7ba38a2b2c3f65494f381a6561230c1bfc5a6"; }
-    { locale = "kk"; arch = "linux-i686"; sha256 = "58e863ff852874e797c6358bf5f7d52e29e504f03186b8b6c7a92cc44501ea13"; }
-    { locale = "kk"; arch = "linux-x86_64"; sha256 = "ece9759a53a5269be626d6f68c49da70f2c8e60b9d8ea2061328050d2c31b7eb"; }
-    { locale = "km"; arch = "linux-i686"; sha256 = "9ed22fef8e3d94b7a15fa557d86b05e883ad9d12755ba3420a263232dad7d5a0"; }
-    { locale = "km"; arch = "linux-x86_64"; sha256 = "fbba67f3ac60bc8d41e527e7bb7a82266efe47a9a09eb757433a52209c1b9754"; }
-    { locale = "kn"; arch = "linux-i686"; sha256 = "8cf7a3036d0221fa162683348ae047338b38e5755e6cf0cd6530a20e43eddc74"; }
-    { locale = "kn"; arch = "linux-x86_64"; sha256 = "cd99f17bfc77cb632c7c2d5627f43a98c1591c25a6175cbe88d0b8b5d6c7d4e8"; }
-    { locale = "ko"; arch = "linux-i686"; sha256 = "d1e27ad88e411d59448bc7d2aea0fac386d71a9579b246a151ecba7d10cb74eb"; }
-    { locale = "ko"; arch = "linux-x86_64"; sha256 = "82ece26a18be4db481a9bd9748bce59d14a2704e5e4c3873d2788e07efddfd67"; }
-    { locale = "lij"; arch = "linux-i686"; sha256 = "468085b58dfe815fb6a9b229d876ee6d14737edd7e34ffe7987bce1eec2e0079"; }
-    { locale = "lij"; arch = "linux-x86_64"; sha256 = "1e1a210f42e17de155b2f53a94d402be03f3a475e75db73e1aced157edafa9b0"; }
-    { locale = "lt"; arch = "linux-i686"; sha256 = "1350737560c2e5e69bc70152fc3ae246b3ab18e4dade066e6b9488ddadba29f5"; }
-    { locale = "lt"; arch = "linux-x86_64"; sha256 = "e96616deedc0c1967ca0d17dcd21d1b5f43838cb1c313fcf5394ee7a552ccf0c"; }
-    { locale = "lv"; arch = "linux-i686"; sha256 = "e7728d5d0e76df3750f1f5ed9e8585fc6210200f41d9b1a8f6b638582f623dd8"; }
-    { locale = "lv"; arch = "linux-x86_64"; sha256 = "5cab37509109146ae3ceb82df40152cf2de4b755c479248cfbc5ee9e7780399b"; }
-    { locale = "mai"; arch = "linux-i686"; sha256 = "3014cda0a3b95c7d5ce6e098e220bb107e2ff2974eb7d4b71ea9061cdc102955"; }
-    { locale = "mai"; arch = "linux-x86_64"; sha256 = "46b5b4f03bd32f5c84068326a78e5e744bfdc23b68ec067b6774574a6a952dc7"; }
-    { locale = "mk"; arch = "linux-i686"; sha256 = "55dcdaa2cf783171bf2e3f3244cb9f8165d7c873b62ee65d2392581585be7b99"; }
-    { locale = "mk"; arch = "linux-x86_64"; sha256 = "5002a14dbd07b29dc08f683d28c74429cfc1a924626e93f76f7568465cc550dc"; }
-    { locale = "ml"; arch = "linux-i686"; sha256 = "d1e4c7a26cfb2ea04abb1348e7bb57204fa355112537c26877d6e80bcbe3fd25"; }
-    { locale = "ml"; arch = "linux-x86_64"; sha256 = "d534c4a30eacff662fb387f1753be7e95fcfc1b0702ba3c98b88f121f1109859"; }
-    { locale = "mr"; arch = "linux-i686"; sha256 = "48d8cec7812fa7989a79f4560be33898c83525f383710d60f6dc8a2292851764"; }
-    { locale = "mr"; arch = "linux-x86_64"; sha256 = "5df095d48eedcfd1d102ced7b2928585ac1c7fc3e4fa84878b5a34914aec7c9a"; }
-    { locale = "ms"; arch = "linux-i686"; sha256 = "d377e167c3154143cceabc931dca1b031f45e9e8bb39dae923bca3842edb661e"; }
-    { locale = "ms"; arch = "linux-x86_64"; sha256 = "af023d2ccae69120958a0a5c4613e205972789603b43f11a32b24566fdee2d0c"; }
-    { locale = "nb-NO"; arch = "linux-i686"; sha256 = "8e50da27fc1ac9f2707afe7e964473e065de55ef726c03159029e89fa092b520"; }
-    { locale = "nb-NO"; arch = "linux-x86_64"; sha256 = "38c214d32b85bf1a55a66605614c72eeab693d39df9e95ec6971b6ba46a0d854"; }
-    { locale = "nl"; arch = "linux-i686"; sha256 = "9732ac83b4636b84e9084c0bcefe2ad8e0399e67aa5e9e22aaa40a2bb43c3274"; }
-    { locale = "nl"; arch = "linux-x86_64"; sha256 = "d4e424f62748bd9f35a98fe6a01300b13615ff6dba914eb69f4f343ef7630515"; }
-    { locale = "nn-NO"; arch = "linux-i686"; sha256 = "a0acef371c32189f78d13e9a7f24601559a5292642330a609267cda8929291ed"; }
-    { locale = "nn-NO"; arch = "linux-x86_64"; sha256 = "90fd2eeebebc9c2ca6413cd527697d1566312e099828035ce24204136b568466"; }
-    { locale = "or"; arch = "linux-i686"; sha256 = "bb628039e4d3e8e6cba0efb5754d4e61cae6b6a50f88aaf9b034570c5d25ba06"; }
-    { locale = "or"; arch = "linux-x86_64"; sha256 = "e1af53035829620db80c0e75ff28738a480ff0c946edd3f5c821dcb8683ef800"; }
-    { locale = "pa-IN"; arch = "linux-i686"; sha256 = "20665cc6f3d073530f459d8a14712e59cb5db82957042dc498e112db69957f5d"; }
-    { locale = "pa-IN"; arch = "linux-x86_64"; sha256 = "8a912aa7900012512a93e740f078a47340d724a936f4949467e028e2d44adac5"; }
-    { locale = "pl"; arch = "linux-i686"; sha256 = "a51c8e58ba89dbf53411b1d61229c1a515c1af53a28b7d39d654d1dd46c3f7bb"; }
-    { locale = "pl"; arch = "linux-x86_64"; sha256 = "e060bd9b72ce6feb151ebcb8630598f53c0ab5069a2cbc88c80b369ef5b4e924"; }
-    { locale = "pt-BR"; arch = "linux-i686"; sha256 = "d9391656b4e5959dba3eeb3537fe06ec67e56248259af723d09f0dc0d451d5c2"; }
-    { locale = "pt-BR"; arch = "linux-x86_64"; sha256 = "35cd35737abdf04ee714177a62b59bb2ecf819b508728ba5ce1ea4b85cbc9db6"; }
-    { locale = "pt-PT"; arch = "linux-i686"; sha256 = "22a90cc9e3da6abfc21d2ed039ab1877738b2f2d7aeb4fbfcbf1c3763b6516da"; }
-    { locale = "pt-PT"; arch = "linux-x86_64"; sha256 = "b4bca72d7b866de19b18d60a7278c124af9d00f44ff3b635eb80b042077634c5"; }
-    { locale = "rm"; arch = "linux-i686"; sha256 = "7d94fe2c2abbe8f27c10e27540cb415f61a338a121f87f4c4e93b923e544c923"; }
-    { locale = "rm"; arch = "linux-x86_64"; sha256 = "b55153028773d452c696eab97aff90393caf19d9ed8977c0b0d147284040d075"; }
-    { locale = "ro"; arch = "linux-i686"; sha256 = "80ccb9bb187f3b9597f6112ccd13b7274f4a7d9eed82567180a7ac99e0748323"; }
-    { locale = "ro"; arch = "linux-x86_64"; sha256 = "3a393002af7c9d6a90f15707e0a6c960f01a4335d647e8dd2ee237d02271a74a"; }
-    { locale = "ru"; arch = "linux-i686"; sha256 = "5c4456bc1711203b68467122c1bec0b7a323cd944cd2a2daa7cea3fe9d8bf79d"; }
-    { locale = "ru"; arch = "linux-x86_64"; sha256 = "82fe5ab5ffccfa4ae600e084b20ea9d60fe5d1d2f22fb836c6d05eec398239af"; }
-    { locale = "si"; arch = "linux-i686"; sha256 = "5cef376fb82f8d952d467f5c5db88282c6a812065a2c64beaae663e2a8c8ff86"; }
-    { locale = "si"; arch = "linux-x86_64"; sha256 = "b905f7ece85de9b13e055b93811d3b21bc07b95279b2f89a6837863821db546f"; }
-    { locale = "sk"; arch = "linux-i686"; sha256 = "5b671c85ae04e379ee7426f1a7e92c2295edb04362addd612812f39d4d90cac8"; }
-    { locale = "sk"; arch = "linux-x86_64"; sha256 = "3bb734435111310df7b8e7e3e52c36378fcbfe388420b3e144c008ee3e142044"; }
-    { locale = "sl"; arch = "linux-i686"; sha256 = "8c6af8ab571d42492b8d2aeb6ccbb29a261c1401293cef76b2158ad6e7841eac"; }
-    { locale = "sl"; arch = "linux-x86_64"; sha256 = "3cc7b211f88458d1b261ea92ce20fd4f72ba39fe9ec86dd4f0410874c227874d"; }
-    { locale = "son"; arch = "linux-i686"; sha256 = "b38286ece3dae0f9998e37ba7494d394daa8ac390ba60f6f75960adc87d0f7a1"; }
-    { locale = "son"; arch = "linux-x86_64"; sha256 = "b99b4334c2ca7731db895972d55ecad7420c4a4da825a496aed2fccb81cd6ff4"; }
-    { locale = "sq"; arch = "linux-i686"; sha256 = "bdd66c3d22c66c908bf275ee1ad1b7827b4439cf3fb75a537625a39e7acca3c9"; }
-    { locale = "sq"; arch = "linux-x86_64"; sha256 = "d7ce54fb3cce04bad41ba5491834e6cbf8daa93e983b7f66d4bc2f6b52c4c41e"; }
-    { locale = "sr"; arch = "linux-i686"; sha256 = "20cba6a11d976c036243dd3e55c2a7ad586006b5355bb8b742db4fd71d0bb7eb"; }
-    { locale = "sr"; arch = "linux-x86_64"; sha256 = "a9c8be3942abe8d14b89316f32402fae1abadacf5ddb844d0e50a69c7173bf22"; }
-    { locale = "sv-SE"; arch = "linux-i686"; sha256 = "f692fbb6fd82d1fdac23cde63687490c1ccebac715003b6212238f6a78289fd6"; }
-    { locale = "sv-SE"; arch = "linux-x86_64"; sha256 = "cdd7d6f9ea77f209c1ce3b2c405757ce44a0bdbe1803d32e8bf8e683b7f1894f"; }
-    { locale = "ta"; arch = "linux-i686"; sha256 = "064ecf6db5cc65f281e03763acb3512e0e2c54237c6a7a0be3c8828804e2b433"; }
-    { locale = "ta"; arch = "linux-x86_64"; sha256 = "33187d93b82edbfd01debc0956c1194539339b3949ef9f65a2aed7791b5a253a"; }
-    { locale = "te"; arch = "linux-i686"; sha256 = "ffa689f1111d373300785a5e62b501ac53300e02b520345d8a31de5122302e25"; }
-    { locale = "te"; arch = "linux-x86_64"; sha256 = "4d7504b72456d68aec2f73daeaf89112fb8372c00f117a436a5feb7ad5c255b7"; }
-    { locale = "th"; arch = "linux-i686"; sha256 = "d22c3e017c1897c6b4f4da0d43647289f35854d43b0dcc18d3e5898d70e163fd"; }
-    { locale = "th"; arch = "linux-x86_64"; sha256 = "4f3b91bef8c6d778e33ff17fe97535ddb7bc6d8ecf050d09ee722f065dada050"; }
-    { locale = "tr"; arch = "linux-i686"; sha256 = "d8effc19f4f9991c3e0cc8f34aef9040a1e36e0e0c7a4f541a8bc4c5e837a1ea"; }
-    { locale = "tr"; arch = "linux-x86_64"; sha256 = "9a6db03d21904d9b5e335137c866c61037d9a0074cdae77bb436ffd6fffe7595"; }
-    { locale = "uk"; arch = "linux-i686"; sha256 = "f5053f5d3237ab26971b678ce53d052fc3d87282127577b2590f3a911feef140"; }
-    { locale = "uk"; arch = "linux-x86_64"; sha256 = "2a9f26d892db02c97ebeb9486ab582a20b08b73ebd8cc71a4f4f3596bcf875af"; }
-    { locale = "uz"; arch = "linux-i686"; sha256 = "b2cca9b4e5a15d80cecee587c7b7738c22fe41f7ea106b3a336d15940cca1f39"; }
-    { locale = "uz"; arch = "linux-x86_64"; sha256 = "efd24f9c7ec712ba72b9305f30232b6129af8d75e9bbac7133c9dd3e056d6f0d"; }
-    { locale = "vi"; arch = "linux-i686"; sha256 = "3d1ba2ed2615a0543bf6484a130922e3176b07fd91f2c5294ecfb65978fe454c"; }
-    { locale = "vi"; arch = "linux-x86_64"; sha256 = "15807c890efbc934385766fa04ced69c9cf125da52a01ac685689a2873b689dd"; }
-    { locale = "xh"; arch = "linux-i686"; sha256 = "c9ed7d523d2fe5fe9b60972d48148ca95f56ea801c49dd962e832c7485d368d1"; }
-    { locale = "xh"; arch = "linux-x86_64"; sha256 = "f7d1314255490fae9ab31fe36adb7ea8a657a11539a7d2f95fb7d34d18a83322"; }
-    { locale = "zh-CN"; arch = "linux-i686"; sha256 = "6fe6f89f22cd9752ad5d91cb0cf7da8b362090aab9e0576483dd14df509732e8"; }
-    { locale = "zh-CN"; arch = "linux-x86_64"; sha256 = "1443bc4a7b07d2393d5914df42d3fefe8736e927590d8373f9f7db8d6c903c43"; }
-    { locale = "zh-TW"; arch = "linux-i686"; sha256 = "12a793f7033926dcd760c428ae015983e1c5175adc1768609a8859c653ce2272"; }
-    { locale = "zh-TW"; arch = "linux-x86_64"; sha256 = "eca47abc014870a7799aedb3f7e5603297dffd1ffd54ce2536c3399881127605"; }
+    { locale = "ach"; arch = "linux-i686"; sha256 = "6dff17afbbbb9ba8e064b431db1f6b6a1862ec56e11dfa8cb8ef5d89dd9f7705"; }
+    { locale = "ach"; arch = "linux-x86_64"; sha256 = "4f806511a1e7c2100d976a9753f0e7ecee483f19ca1176e1867021a55725aabf"; }
+    { locale = "af"; arch = "linux-i686"; sha256 = "0a2e0b55e43b41304895f624ae95372e4ab52b06c8892e0ef02a8e41c5ff28e5"; }
+    { locale = "af"; arch = "linux-x86_64"; sha256 = "c865d4a431c3b92347393b62c4589fe67f4323458faf1ee07367e1f432d0e839"; }
+    { locale = "an"; arch = "linux-i686"; sha256 = "d58dcdb222fad88650d65623005897de7a693d16c44d86f25694a00d7fa5111d"; }
+    { locale = "an"; arch = "linux-x86_64"; sha256 = "b00ac5cf76fe562cac8f72327cdf0e54b2c4384586fbb064deb72d2741e05268"; }
+    { locale = "ar"; arch = "linux-i686"; sha256 = "42851096189bc53d18ea26d9de1d0321b033a5601594c0515530263cf3155b12"; }
+    { locale = "ar"; arch = "linux-x86_64"; sha256 = "4d7e8760da3dac6cffa8eafeb22c759bfad3664bba7f690c0f1d1aa5284aed3c"; }
+    { locale = "as"; arch = "linux-i686"; sha256 = "706d584ea78172ec88c29d124abf2bd34881c9752231fdb3f491d0bf858fc5c5"; }
+    { locale = "as"; arch = "linux-x86_64"; sha256 = "13ed628c2ef29b8d3188274e6fc101ba622d4e1ca20880b381e62225c5f057d5"; }
+    { locale = "ast"; arch = "linux-i686"; sha256 = "9f8f5870245cf0016d4a9a540d29d31249188fa8f390c47cfd330874eb20e8dd"; }
+    { locale = "ast"; arch = "linux-x86_64"; sha256 = "9bd85381abe1335ca9208ad764477e6f2a926288058c91aee0af3a3967aa1e57"; }
+    { locale = "az"; arch = "linux-i686"; sha256 = "9e117f5aabdb8f71bcaf8073c76c4b795c957e6739471fed0f484d0ed39b5a98"; }
+    { locale = "az"; arch = "linux-x86_64"; sha256 = "06ee5bd4f1096e6728120fbed4ed6cbc88cb1003c484a15dd624254ae93ed849"; }
+    { locale = "be"; arch = "linux-i686"; sha256 = "c6091272b395905e746271176d354ff59eccc9d96c5e1ecc2e8e5c3ac65ed2f0"; }
+    { locale = "be"; arch = "linux-x86_64"; sha256 = "090ba5d28858b2c58a6a29ce0f435797a938cd788ebd3413db4ced224329d2e4"; }
+    { locale = "bg"; arch = "linux-i686"; sha256 = "1b8b5bbe6473b13fb80ca31514f7386015f5920c7a3d8391aa5549eedcfd09ce"; }
+    { locale = "bg"; arch = "linux-x86_64"; sha256 = "b49fa01d8749c1b4d327dca2379e4940d5d85d310e998cad66efecc2f485cf9c"; }
+    { locale = "bn-BD"; arch = "linux-i686"; sha256 = "3372a82af514706d8eacc5e4d35584379408db964c3cfd35ea75597ddefad7e8"; }
+    { locale = "bn-BD"; arch = "linux-x86_64"; sha256 = "798a2a405e175f8347dfd933300eba728cde6dbe47fa831552e40b87455bd921"; }
+    { locale = "bn-IN"; arch = "linux-i686"; sha256 = "3895feec666feb59a554310efc70b248d63906ca6bde59c03d9a29fa2d4cd7c2"; }
+    { locale = "bn-IN"; arch = "linux-x86_64"; sha256 = "58725666980beeb5a651683a76be2084ba9d40530a063f1f1ebf160fb4db8e0b"; }
+    { locale = "br"; arch = "linux-i686"; sha256 = "21d56c17d225a6a35711bb8354724a05ad15ec565cc70ec128384f9b8762edba"; }
+    { locale = "br"; arch = "linux-x86_64"; sha256 = "c0cc5568b2fac5ba35ef742fd1f87fbb73e1bca47240e888848ac804f4bd7714"; }
+    { locale = "bs"; arch = "linux-i686"; sha256 = "4b2d818c81bc15dad48c47847c14a00cec5b93615a23cb5d2068f4a2ef98b810"; }
+    { locale = "bs"; arch = "linux-x86_64"; sha256 = "a35a4cd723c446ac5593989f7fc4a56aace5cbf6bce757f3a92986e795ab07ba"; }
+    { locale = "ca"; arch = "linux-i686"; sha256 = "66497de3bf6069c1af68f6a50988919b8ff37afb9da7ce327a5beb014b75aa0f"; }
+    { locale = "ca"; arch = "linux-x86_64"; sha256 = "188b43172959c2ef064ef558d0b6518409eb19bb33add98d77a8bf260def55e6"; }
+    { locale = "cs"; arch = "linux-i686"; sha256 = "2ccd96ef1b831580dcfe84f62501fcebae7fdf8a803786913bd24a9cc9904ff7"; }
+    { locale = "cs"; arch = "linux-x86_64"; sha256 = "c9e1665399f055c561ec6d8df90235c3bfb3570d7ec613b959e80c5080e7c614"; }
+    { locale = "cy"; arch = "linux-i686"; sha256 = "789aadc04e83af8cc08cb9dd67bc61aef337a31d2ac17239c194de2d12608b6e"; }
+    { locale = "cy"; arch = "linux-x86_64"; sha256 = "6d695037d9000911422a6b50d09ef250044d629368900ec569a06ac245c1eb2a"; }
+    { locale = "da"; arch = "linux-i686"; sha256 = "b63788d28be0cbc37499e5ad41b8a904413c537a5786b1c2934c304f2adf4ded"; }
+    { locale = "da"; arch = "linux-x86_64"; sha256 = "a5d4cf1dec637ce5c09ee9f8be82ad32756a56ff0e8c529c945b40adb3b928e0"; }
+    { locale = "de"; arch = "linux-i686"; sha256 = "ae3b299a514423faf79bd21952f90e37a4d8e7be2cadca9a1befff4160f103e7"; }
+    { locale = "de"; arch = "linux-x86_64"; sha256 = "971b80131db7e1facd480546d9bd780bf69d2a99338d9e50415eb6583e550cdd"; }
+    { locale = "dsb"; arch = "linux-i686"; sha256 = "87c439cfbd139477055e5a8bd421aa65cb75cdb93090a54899d25411ab3d5dde"; }
+    { locale = "dsb"; arch = "linux-x86_64"; sha256 = "2a04b723d1ed3f9bab3dc9f11fc315fbce2543bfff37532e7cd7a4b9a33d7936"; }
+    { locale = "el"; arch = "linux-i686"; sha256 = "37e02fb347d8cb1f3b5079c3be055c0e37cdb3a6ab97b2928237beeb446e800e"; }
+    { locale = "el"; arch = "linux-x86_64"; sha256 = "9a439341ff9c39cfe8dcb6681221d0d78690ad063ac99a201001f5787b5ec270"; }
+    { locale = "en-GB"; arch = "linux-i686"; sha256 = "a3cc4951a826e483ddb7832333e032e9197418cacdb4250e5072de1ad2fef5d2"; }
+    { locale = "en-GB"; arch = "linux-x86_64"; sha256 = "433ecbabc4d1fabb2ebad958c4e7a0bb9cff9a657b1a641f820d5f0a7ba8c1f1"; }
+    { locale = "en-US"; arch = "linux-i686"; sha256 = "a78498b51059f46d42cf2fcb2232d57d97f2ab4e8a789151d3a26e013132dbb8"; }
+    { locale = "en-US"; arch = "linux-x86_64"; sha256 = "251e8d67abe989ddbf7cf9e78bba58eee43e3b1eb0c461a9c6c376bda6c71a87"; }
+    { locale = "en-ZA"; arch = "linux-i686"; sha256 = "d6195b72e56ca9ea366ab47885ee22b0f7bf4811b3cc937c36af53fe4e6f5d89"; }
+    { locale = "en-ZA"; arch = "linux-x86_64"; sha256 = "f82eba9a593fd6ad8a9b5b8b61d2ccf986080a1cff2af598afe930cd96423a5d"; }
+    { locale = "eo"; arch = "linux-i686"; sha256 = "b6bcfea89be5883e1e5d2899bab371b7d972d4be5717d21d522bc56679463dd9"; }
+    { locale = "eo"; arch = "linux-x86_64"; sha256 = "4908438cf56646665f91bf12e46c611818c5323979048d01bbdc4d5cf945832d"; }
+    { locale = "es-AR"; arch = "linux-i686"; sha256 = "ace48b5a36bccf1d21e17611e9ef7c21786f207da111473479473e5bc5817fe9"; }
+    { locale = "es-AR"; arch = "linux-x86_64"; sha256 = "277ec48d9b45bd41dcaa141d67f5f814845d5e0faeca97c6f5d507f8c9ce5312"; }
+    { locale = "es-CL"; arch = "linux-i686"; sha256 = "78cb60452201df5cff7ed7da54f3f876596de0a895887f8016b3d642d727e96c"; }
+    { locale = "es-CL"; arch = "linux-x86_64"; sha256 = "3be79c28ea7f7ea075fc92e418ff980176dc9707329f1043c54161e703b43028"; }
+    { locale = "es-ES"; arch = "linux-i686"; sha256 = "4bb8d2732754c1112bc8d32a26b0cfee79449447a4cb8ca368f1d41e9ba43d37"; }
+    { locale = "es-ES"; arch = "linux-x86_64"; sha256 = "f512f8f1b163c72234173944c5781550810b90c2b6a1a6f8d070b87a8f85192e"; }
+    { locale = "es-MX"; arch = "linux-i686"; sha256 = "01f2b5e09792714b6315933ec714c5d1baa77bbab5b4e4d06ecf670c47c75d40"; }
+    { locale = "es-MX"; arch = "linux-x86_64"; sha256 = "c7af08a37c116a5cb805cf0b60ef1b1a8f956fec3381ceb0288c62355b05c91b"; }
+    { locale = "et"; arch = "linux-i686"; sha256 = "0aac86a5cd520a806aedc2f8111798eebcb08919099973f7d7fc7addfbaa0584"; }
+    { locale = "et"; arch = "linux-x86_64"; sha256 = "fa0ad1bfd65d231cc58c9d79fb07cd4a98d5976e870af017642a77ebd7a4b260"; }
+    { locale = "eu"; arch = "linux-i686"; sha256 = "4bad5d7e4e2d917606f63efa079092516ff1435013adb8aedbe95a53aa2c594a"; }
+    { locale = "eu"; arch = "linux-x86_64"; sha256 = "9e390ebf06c5abc46f80ec8c77bd7572de827ee5d368de34c1252ee386687372"; }
+    { locale = "fa"; arch = "linux-i686"; sha256 = "9738ddfbaaf3e34c5546c584d9dbdeca68086e66f06b438760befb23e07593cd"; }
+    { locale = "fa"; arch = "linux-x86_64"; sha256 = "55e8f1f2547a9c7c3bb3cf7029e166ae42a3745f51b58c87d7eeaf6ecdb81952"; }
+    { locale = "ff"; arch = "linux-i686"; sha256 = "dfb266913e27299469de2a5ffedd5fa47f344d6d7e092ddf630cde726b94934d"; }
+    { locale = "ff"; arch = "linux-x86_64"; sha256 = "370e310c39f0a87cc8e3ecc5bd6c8f3bbd863b1a8d7e613a0c2fa9be7b8b988c"; }
+    { locale = "fi"; arch = "linux-i686"; sha256 = "2d10c5e21f414cc83a5413e8a2fc53124c2dadb718861410fa45e57c8ba4fd7c"; }
+    { locale = "fi"; arch = "linux-x86_64"; sha256 = "d791eda3135572d0735393ee1101383b4d20142a4279dfe615a9e20c341ea4ea"; }
+    { locale = "fr"; arch = "linux-i686"; sha256 = "94118a53c25a0fb243b63d51a64c077672c4c93d7ca964f6384e3bb8234891a1"; }
+    { locale = "fr"; arch = "linux-x86_64"; sha256 = "6ccd8216017b2593430a812ea167a97012060d41fbf610bf518b8d997ac59c53"; }
+    { locale = "fy-NL"; arch = "linux-i686"; sha256 = "bd5cfd3565353ae8d01d8c9089a364394aa0ebc4547a41dba11ced14a494ed9d"; }
+    { locale = "fy-NL"; arch = "linux-x86_64"; sha256 = "0db0aa59c0df881f901d794fdf99f5abd27db88e0c3ab2d364b22eb7326152db"; }
+    { locale = "ga-IE"; arch = "linux-i686"; sha256 = "59486516e8aa13ca113e1f2998b05509dba0546aa7b11d99ff6da55a6f069f64"; }
+    { locale = "ga-IE"; arch = "linux-x86_64"; sha256 = "1cda950ea6cc6d8957d580fd2c59784bf6cd339083f0fc3cd3a084e0326b0041"; }
+    { locale = "gd"; arch = "linux-i686"; sha256 = "602047e1669e9551f7a3501082e81e3e79287082b981d59f515887c5e892fb70"; }
+    { locale = "gd"; arch = "linux-x86_64"; sha256 = "d5b901d78e06a75d2534214bb849e31696ec44349c18b9b511e68951d29fde90"; }
+    { locale = "gl"; arch = "linux-i686"; sha256 = "d55a556321c600024ea2fc38d9671f34c490046da88a89e4ae46d9217bf64677"; }
+    { locale = "gl"; arch = "linux-x86_64"; sha256 = "3deb86b766f51a218266cf4d97e1b3332c8ca7d75cc86491d940a8b9f37c0bb5"; }
+    { locale = "gn"; arch = "linux-i686"; sha256 = "f38099f998e5bc396360856fe2543152feed086b64a85b7ac3bd2b9e3e0ad609"; }
+    { locale = "gn"; arch = "linux-x86_64"; sha256 = "af4055322dc0524a00fc3ac08a4b2eb40a305dd574b92cc591fee6a00482c4b6"; }
+    { locale = "gu-IN"; arch = "linux-i686"; sha256 = "3210857982a6628f8c2632995c248eed1bd1c719ddcbacb663839990e67b88c8"; }
+    { locale = "gu-IN"; arch = "linux-x86_64"; sha256 = "bb2154aba760896180ae747648530880127c8c46481b04a1ea0cb3b47c2a6f41"; }
+    { locale = "he"; arch = "linux-i686"; sha256 = "18b5217fee9e30bd4bb7f1ea27445ff4aede149a286c07b7c8e9740330b7e6eb"; }
+    { locale = "he"; arch = "linux-x86_64"; sha256 = "2f51ccc6e5c64976c2f81818d0a4381e508aa5f70ec2108f0e6f512a51574709"; }
+    { locale = "hi-IN"; arch = "linux-i686"; sha256 = "555318d41795c988f41655bcf4653aef259c2e3dc80fdcf95670c6ada7fe687c"; }
+    { locale = "hi-IN"; arch = "linux-x86_64"; sha256 = "683e0437ff9168e159e933bf72f6db2d95ae94bb06bc48a1d1fafd30b7028fe1"; }
+    { locale = "hr"; arch = "linux-i686"; sha256 = "c7a2cfb5f4594a3690797ee5559949154b3dd8c9e6a4dbd774e312f914e0b268"; }
+    { locale = "hr"; arch = "linux-x86_64"; sha256 = "94098ca5f069445a6514d4b7500ae10b018b4e1dba2eb7052a200c5eb707ba41"; }
+    { locale = "hsb"; arch = "linux-i686"; sha256 = "c81cde05298660186d2760e977e43e554a896105765c043caac74b09326358fb"; }
+    { locale = "hsb"; arch = "linux-x86_64"; sha256 = "4cdd381d2eb94f163637a328e5ee9369eddc0559f17861377566853e2a7ec571"; }
+    { locale = "hu"; arch = "linux-i686"; sha256 = "0af518a42e35174f838b958823ad1aa24a14ff75a6058c2171594e16d5670d77"; }
+    { locale = "hu"; arch = "linux-x86_64"; sha256 = "b4c0212fe6a8df9689d5dfcaa9ebb2a1cf07e1e9817727581411542ea9bf26b5"; }
+    { locale = "hy-AM"; arch = "linux-i686"; sha256 = "0d62e6627e3ea838089a6b8b8692d034a64b47c66af80561a23bcdd74fcc777b"; }
+    { locale = "hy-AM"; arch = "linux-x86_64"; sha256 = "0e07e77cfac6588f8b1c3579b7dfc62feafcb72e7f9f57e2618364e3c02c0527"; }
+    { locale = "id"; arch = "linux-i686"; sha256 = "9361b3c83f4b3fe84d2918810b4651bc2878eeb3cdc849c513aa3faa17bb9a72"; }
+    { locale = "id"; arch = "linux-x86_64"; sha256 = "baaa11970fb695434fc2c7829d99578f7f48debb5e11729f94b58df330608c36"; }
+    { locale = "is"; arch = "linux-i686"; sha256 = "3f1fc35dc18a684a22c05a2ce468b5a164b6c83457694f9de4e6f9a72c28c6df"; }
+    { locale = "is"; arch = "linux-x86_64"; sha256 = "046fa860343ea079db768d94c5dbc563d6564df5a177f2a5cb7fdfa965576019"; }
+    { locale = "it"; arch = "linux-i686"; sha256 = "ce736af6240e803a3c1fabb58bdae2e27e44ff593e56172b3d6d174c89f606e5"; }
+    { locale = "it"; arch = "linux-x86_64"; sha256 = "e2a8fb6e3f18b2be4b7736e3c8adf77968bc13dea7f981e20ae47430b137695c"; }
+    { locale = "ja"; arch = "linux-i686"; sha256 = "2153c10104c62a5814a4f72fab7be6ffa2e03e5c5cc5f7172820d0a139134fe6"; }
+    { locale = "ja"; arch = "linux-x86_64"; sha256 = "446a20d4ca5c7086045f8750eb0bcc850118d2f020a77f8fa4d116064b443953"; }
+    { locale = "kk"; arch = "linux-i686"; sha256 = "3ddda0311feee7c247fd309a7721f4be8458fa528e63a2e8f58c005f70007144"; }
+    { locale = "kk"; arch = "linux-x86_64"; sha256 = "4dd8f3ea040fb2d6056f0c0f615ed38f09c980cee660fba1f8aaf0fd506745eb"; }
+    { locale = "km"; arch = "linux-i686"; sha256 = "a295d9d466aef89c95989866a38080d3d1b110e4efb52b1a01479817dd1c866c"; }
+    { locale = "km"; arch = "linux-x86_64"; sha256 = "dbb249a1398c335a155ea2b2f6ac4656f8ff00b999035dce9f5a59532043f9c3"; }
+    { locale = "kn"; arch = "linux-i686"; sha256 = "357077be38c6869602a13abf1f494ec8a124a9eb2c03a395a1b30276110b6913"; }
+    { locale = "kn"; arch = "linux-x86_64"; sha256 = "11658a25f30558a6f11f28c80a98800095ef4c5879d456dc3503737a8d9cb465"; }
+    { locale = "ko"; arch = "linux-i686"; sha256 = "a653f4030480ab17d77c48b144296e78faba7ad48fdce812afbe8243299575c5"; }
+    { locale = "ko"; arch = "linux-x86_64"; sha256 = "182858b0c4bd6ece47aff2b406da7442eb3fbe148c3bc20975f6bafd2acd37ac"; }
+    { locale = "lij"; arch = "linux-i686"; sha256 = "449088107c0077318d95176a90a65219a76c851c98dd5b929452bfde2a87773f"; }
+    { locale = "lij"; arch = "linux-x86_64"; sha256 = "8b45df098143a01f915b8eee0f8b7d56b4ec73fc9cfd0fba8c5f4b8582992f80"; }
+    { locale = "lt"; arch = "linux-i686"; sha256 = "085e9873154fab87c909cef005a82f0d5ab81a8ece9adfe46766ae69418084f6"; }
+    { locale = "lt"; arch = "linux-x86_64"; sha256 = "dde643769a14714cb9990fa489389fd5cabcfb26b23c31bb32dbaa17a38f5150"; }
+    { locale = "lv"; arch = "linux-i686"; sha256 = "f6363da3c7ebd5f9d80454ad126ac1cf03ef2c9fd2eebf5cb174f0d7a9cf1e36"; }
+    { locale = "lv"; arch = "linux-x86_64"; sha256 = "41fb793c10d5eb52dd3847f9dee30c3f67c8ad5061897d9f13135b7d1666a84b"; }
+    { locale = "mai"; arch = "linux-i686"; sha256 = "96af787075b06d96a2e8a261b900f6eb590f4997354dcd9f57a8714af3432a12"; }
+    { locale = "mai"; arch = "linux-x86_64"; sha256 = "514e75157308cd6fc96c54592dd1c1f5b556c15c5b211543644f324eee09b1a2"; }
+    { locale = "mk"; arch = "linux-i686"; sha256 = "1f809ef4d0afcb13bb40459a63be49ab6e074641e8f4ce54e9d2bd89c4b0b141"; }
+    { locale = "mk"; arch = "linux-x86_64"; sha256 = "4931d99ddd6851e4e4596a808e6b6e5fe45012711723c6748b752217c70be9d6"; }
+    { locale = "ml"; arch = "linux-i686"; sha256 = "5081b42676c174226c357c798d64cade2acecf6e935bbfabdaab548d364dd1ff"; }
+    { locale = "ml"; arch = "linux-x86_64"; sha256 = "1cbaa2c64d8fc098b67f77660e18a3df3e051396a3d5e0f984294b0823324365"; }
+    { locale = "mr"; arch = "linux-i686"; sha256 = "d1cc4ef0d9938c85a21e64e4a71539d46a78c709edd1ac1dc331da8ae6af57e1"; }
+    { locale = "mr"; arch = "linux-x86_64"; sha256 = "8fc0abfe8e834c0894187fab63becd1e3d4e071609676c1d0a8fd35a4265ec60"; }
+    { locale = "ms"; arch = "linux-i686"; sha256 = "7f471e30f28f0ccf6bc285d24923be2b53415891f4f0909c31160bd09d8e2c21"; }
+    { locale = "ms"; arch = "linux-x86_64"; sha256 = "150101c5a3556664a9e3827edf36c412c64037871a5af5f66c47bed448c8931d"; }
+    { locale = "nb-NO"; arch = "linux-i686"; sha256 = "67b888c5b666e1428c182dfa79aa1a9a471c785d4dac85e6cf1f618dee9c796a"; }
+    { locale = "nb-NO"; arch = "linux-x86_64"; sha256 = "57c1aee6f309536788a9a9bd2be3046d65c9b174583de7e0b72cf45f28156f67"; }
+    { locale = "nl"; arch = "linux-i686"; sha256 = "43feb0205631ff5caa6e7d71fa37a6643b3b3fd92fc06b77cef9e9a0113bb1ce"; }
+    { locale = "nl"; arch = "linux-x86_64"; sha256 = "182481c49deb71d9344a8789db40e233326719dbe19973fedeaaa504ba771fcb"; }
+    { locale = "nn-NO"; arch = "linux-i686"; sha256 = "995abcace6138d11252b60958a8d5a13a1abf94c8017e567053468f811549b24"; }
+    { locale = "nn-NO"; arch = "linux-x86_64"; sha256 = "d449fa5534d9a7f5e772678388770f14fa32226b0366e9a2adf7cd245b911139"; }
+    { locale = "or"; arch = "linux-i686"; sha256 = "a7abea23a03ed38048e724e2f7fa234e24f0f74d8681e39bca5ef183178df923"; }
+    { locale = "or"; arch = "linux-x86_64"; sha256 = "b05963dc6e13757b4afd1a1fa72c3128cbdfc9db3ba16adc20d2fd2eb101f165"; }
+    { locale = "pa-IN"; arch = "linux-i686"; sha256 = "4a30beb8ca9feca58487264abbed2a403336835140767ebac31be24bcf4b9386"; }
+    { locale = "pa-IN"; arch = "linux-x86_64"; sha256 = "77b77274a7eac09f4d1a7163ba5555ced722369717d98ba1dab014140a4ac235"; }
+    { locale = "pl"; arch = "linux-i686"; sha256 = "699b72fd6bdda12d71521bc0e32fb1a95d933dc45f62595e6b02f5441ff6d016"; }
+    { locale = "pl"; arch = "linux-x86_64"; sha256 = "d748461e3e45a3d07aa36bde8fd265a51888e34ce0a8e23fdf893e540cc90e16"; }
+    { locale = "pt-BR"; arch = "linux-i686"; sha256 = "0b7062f911ce1d70e5300cd85328aa507c9a39ad14110a0241e23280af0f6db5"; }
+    { locale = "pt-BR"; arch = "linux-x86_64"; sha256 = "b2de3df121d0ca4b4c322533040ae5187cff9fad8e8b83997425867c051b636c"; }
+    { locale = "pt-PT"; arch = "linux-i686"; sha256 = "801a04cd65d7253c95bfb9b680abba87b45e3f0cff18f94b81945ed47154b9e7"; }
+    { locale = "pt-PT"; arch = "linux-x86_64"; sha256 = "5e6a28463b388fb2a242af899e521a7c2a4bcc48959d0f6813335fd11e3b5861"; }
+    { locale = "rm"; arch = "linux-i686"; sha256 = "57d8127547da954a6fdecaaab0006d570125ad577ad7d66e53c97e1c2194258e"; }
+    { locale = "rm"; arch = "linux-x86_64"; sha256 = "f6158506cbf3c96a5f6a551969338a65369f2be52bfa80359da3941d2f3277bb"; }
+    { locale = "ro"; arch = "linux-i686"; sha256 = "980701a87255b999c4df5d82a53b653bb513675ba93e5138bc47e91174d03c3f"; }
+    { locale = "ro"; arch = "linux-x86_64"; sha256 = "95e80b8bbd38510719463ca1b67e574f0a1d62daa8fbd09f4bba277749c57517"; }
+    { locale = "ru"; arch = "linux-i686"; sha256 = "16e6775a26756b445e5c72220297062b3e4e1ab66efd0324eb161a4d5b353874"; }
+    { locale = "ru"; arch = "linux-x86_64"; sha256 = "9bc067f5c158f33fdafd8b7ea1ab3492002ceca579a177a292a835d52c430c27"; }
+    { locale = "si"; arch = "linux-i686"; sha256 = "2fdc744bc85488514b9bcf93b017e6f6fcfd4cf7c249c1e7d307956cb62baf43"; }
+    { locale = "si"; arch = "linux-x86_64"; sha256 = "366893e7b7337ff6bdfe0def0ac88615e9cadb460fbcb17dd047f18172782208"; }
+    { locale = "sk"; arch = "linux-i686"; sha256 = "3efabb4f04376688f51df5c70fb4cfc0b382e9b6160eb625969945a8e3272a18"; }
+    { locale = "sk"; arch = "linux-x86_64"; sha256 = "dd97fc87382cca475b4b8ef8ab137b8f436e4a4792bfc06bcf0e7736e1f5e452"; }
+    { locale = "sl"; arch = "linux-i686"; sha256 = "3ba940deb5b1db31aaf07c005e62ddbd6acf44d3d0e775aab51c2eb0dc2da936"; }
+    { locale = "sl"; arch = "linux-x86_64"; sha256 = "dae438abc4cdd552bc7750ecebe958cbb7ef0edbb745d19e9b670db1e5c9fa8f"; }
+    { locale = "son"; arch = "linux-i686"; sha256 = "ef1baa4e6b333cd19df938dd13b91e091c9ed838b72767def2c0eec7a473532f"; }
+    { locale = "son"; arch = "linux-x86_64"; sha256 = "c2e45137b18717889977e0203951ddd078e1379f05875915f295b14677b6e75a"; }
+    { locale = "sq"; arch = "linux-i686"; sha256 = "d4f48c90a2bd4f8751b66653e0aed0de3f4ff9b40bba306377577ef8cbf94541"; }
+    { locale = "sq"; arch = "linux-x86_64"; sha256 = "85cf583913978c109dcaf07b22442505554813b6129862668ef78f491588a153"; }
+    { locale = "sr"; arch = "linux-i686"; sha256 = "08725f28304608e029e9e4ccf0fb478eda4b6cde138ad65a53e2f88af97e8a6c"; }
+    { locale = "sr"; arch = "linux-x86_64"; sha256 = "bfdca6d30f044bed181d45396c81f0a1d0e9b9026607e0700cc1bf225408ac20"; }
+    { locale = "sv-SE"; arch = "linux-i686"; sha256 = "01f98e4954e1a1df5b0aaf711696b6f7e7237ea3df57071479e8749c621fbbf1"; }
+    { locale = "sv-SE"; arch = "linux-x86_64"; sha256 = "b1c292410edaa4d6595b21b803287030d21ddd64e7a6a941d7627bb4cbff2435"; }
+    { locale = "ta"; arch = "linux-i686"; sha256 = "d6d62857ccfe54ab870bcbe0ea98e41d59524b3958c28ddffcfb009d6305fde0"; }
+    { locale = "ta"; arch = "linux-x86_64"; sha256 = "253080f66f47850222c676d98626c5a879ee708d1f03b3598d4ac205998676c4"; }
+    { locale = "te"; arch = "linux-i686"; sha256 = "ffa9371d8960707a0062bc6cb5ed5aa84c9e5b9b898ddc403b346b519bf6f814"; }
+    { locale = "te"; arch = "linux-x86_64"; sha256 = "69c3776bfd41bae4067da4f5f350c5f0a906c2b8d1edffe5d3907bc7ca2ee863"; }
+    { locale = "th"; arch = "linux-i686"; sha256 = "3dbead624ae46c14208a61ed8c6b515117d472a8f8bebf14478bc467da23eeee"; }
+    { locale = "th"; arch = "linux-x86_64"; sha256 = "4c0db90021ad46d67f68b3d2d928a279cdff14b7d62f8fa4e07a33135ab925b7"; }
+    { locale = "tr"; arch = "linux-i686"; sha256 = "744327c6a3c514ff7b0bc5940f1744c95c6ac47165d5b316bbea11412a2d8550"; }
+    { locale = "tr"; arch = "linux-x86_64"; sha256 = "321f096a89898ed027b95efa4f02fdaa9118eb414e35088ce259b76048bf77fd"; }
+    { locale = "uk"; arch = "linux-i686"; sha256 = "f3d0a5a328b686cf18339e50a59920fe002166b35c5b5b29c04156bc5b5c6d4b"; }
+    { locale = "uk"; arch = "linux-x86_64"; sha256 = "b15e82737c69703bcdd97f5699280338e4c2029b5eea7df98fb218a5e2a579f3"; }
+    { locale = "uz"; arch = "linux-i686"; sha256 = "dfdf28670cacfd43f71d81c609fc2961682ec2c7a64ea540e49a571195e68852"; }
+    { locale = "uz"; arch = "linux-x86_64"; sha256 = "eaacd1534711def0ab30eb9a53db2553c4cc202ec07c40bc5b2ded7e729347ac"; }
+    { locale = "vi"; arch = "linux-i686"; sha256 = "4b4753038753d814d1e5a1ff995445abec80fd74d9443cac38495193bf039762"; }
+    { locale = "vi"; arch = "linux-x86_64"; sha256 = "3051a5f8b0d47860f98839c4496298d71aeb6ef98f099937b8da9d87d7a1986c"; }
+    { locale = "xh"; arch = "linux-i686"; sha256 = "2798bca7d894a0ba223694fe585e1b9fcf60cc96d881d7570c06a4d77afc4b20"; }
+    { locale = "xh"; arch = "linux-x86_64"; sha256 = "acb1084e32bc467cd3374e6930c8f51deea38e94ddde09bf5a257d473d2579e8"; }
+    { locale = "zh-CN"; arch = "linux-i686"; sha256 = "93a3f1b92aeb7a3e7659ebe0ad7c7df966279926fe3fdc7b0047bd858482234f"; }
+    { locale = "zh-CN"; arch = "linux-x86_64"; sha256 = "047d74546e4767d728e7522d908056c8aaad9cd8152517425443b59ff580bebe"; }
+    { locale = "zh-TW"; arch = "linux-i686"; sha256 = "b710126e2d7cd6f55b0dd54811de64c30eb69f97ea8a71905b3ea49e59abdfe2"; }
+    { locale = "zh-TW"; arch = "linux-x86_64"; sha256 = "d3b52404ab397385fcbb617f6cd8cda821d3927852e0a617dd60443c2cad6b65"; }
   ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix
index 0ef3bc7f5dae4..41f8cc155a8e7 100644
--- a/pkgs/applications/networking/browsers/firefox/default.nix
+++ b/pkgs/applications/networking/browsers/firefox/default.nix
@@ -73,7 +73,7 @@ common = { pname, version, sha256 }: stdenv.mkDerivation rec {
     ++ lib.optional enableGTK3 "--enable-default-toolkit=cairo-gtk3"
     ++ (if debugBuild then [ "--enable-debug" "--enable-profiling" ]
                       else [ "--disable-debug" "--enable-release"
-                             "--enable-optimize${lib.optionalString (stdenv.system == "i686-linux") "=-O1"}"
+                             "--enable-optimize"
                              "--enable-strip" ])
     ++ lib.optional enableOfficialBranding "--enable-official-branding";
 
@@ -81,13 +81,9 @@ common = { pname, version, sha256 }: stdenv.mkDerivation rec {
 
   preConfigure =
     ''
+      configureScript="$(realpath ./configure)"
       mkdir ../objdir
       cd ../objdir
-      if [ -e ../${pname}-${version} ]; then
-        configureScript=../${pname}-${version}/configure
-      else
-        configureScript=../mozilla-*/configure
-      fi
     '';
 
   preInstall =
@@ -133,14 +129,14 @@ in {
 
   firefox-unwrapped = common {
     pname = "firefox";
-    version = "45.0";
-    sha256 = "1wbrygxj285vs5qbpv3cq26w36bd533779mgi8d0gpxin44hzarn";
+    version = "45.0.1";
+    sha256 = "1j6raz51zcj2hxk0spk5zq8xzxi5nlxxm60dpnb7cs6dv334m0fi";
   };
 
   firefox-esr-unwrapped = common {
     pname = "firefox-esr";
-    version = "38.6.1esr";
-    sha256 = "1zyhzczhknplxfmk2r7cczavbsml8ckyimibj2sphwdc300ls5wi";
+    version = "45.0.1esr";
+    sha256 = "0rkk3cr3r7v5xzbcqhyx8b633v4a16ika0wk46p0ichh9n5mci0s";
   };
 
 }
diff --git a/pkgs/applications/networking/browsers/google-chrome/default.nix b/pkgs/applications/networking/browsers/google-chrome/default.nix
index 89e545d12e4b3..eb51fa5c10209 100644
--- a/pkgs/applications/networking/browsers/google-chrome/default.nix
+++ b/pkgs/applications/networking/browsers/google-chrome/default.nix
@@ -30,7 +30,7 @@
 
 with stdenv.lib;
 
-with (import ../chromium/source/update.nix {
+with (import ../chromium/update.nix {
   inherit (stdenv) system;
 }).getChannel channel;
 
@@ -59,7 +59,7 @@ in stdenv.mkDerivation rec {
 
   name = "google-chrome-${version}";
 
-  src = fetchurl binary;
+  src = binary;
 
   buildInputs = [ env patchelf ];
 
diff --git a/pkgs/applications/networking/browsers/lynx/default.nix b/pkgs/applications/networking/browsers/lynx/default.nix
index 74c9574c7d62b..e7b5ba89db696 100644
--- a/pkgs/applications/networking/browsers/lynx/default.nix
+++ b/pkgs/applications/networking/browsers/lynx/default.nix
@@ -4,22 +4,23 @@
 
 assert sslSupport -> openssl != null;
 
-stdenv.mkDerivation {
-  name = "lynx-2.8.8";
+stdenv.mkDerivation rec {
+  name = "lynx-${version}";
+  version = "2.8.8rel.2";
   
   src = fetchurl {
-    url = http://lynx.isc.org/lynx2.8.8/lynx2.8.8.tar.bz2;
+    url = "http://invisible-mirror.net/archives/lynx/tarballs/lynx${version}.tar.bz2";
     sha256 = "1rxysl08acqll5b87368f04kckl8sggy1qhnq59gsxyny1ffg039";
   };
   
-  configureFlags = if sslSupport then "--with-ssl=${openssl}" else "";
+  configureFlags = []
+    ++ stdenv.lib.optionals sslSupport [ "--with-ssl=${openssl}" ];
   
   buildInputs = [ ncurses gzip ];
   nativeBuildInputs = [ ncurses ];
 
   crossAttrs = {
-    configureFlags = "--enable-widec" +
-      (if sslSupport then " --with-ssl" else "");
+    configureFlags = configureFlags ++ [ "--enable-widec" ];
   };
 
   meta = {
diff --git a/pkgs/applications/networking/browsers/midori/default.nix b/pkgs/applications/networking/browsers/midori/default.nix
index 336d6ae609d54..9eaf254b23b58 100644
--- a/pkgs/applications/networking/browsers/midori/default.nix
+++ b/pkgs/applications/networking/browsers/midori/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     homepage = "http://midori-browser.org";
     license = stdenv.lib.licenses.lgpl21Plus;
     platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ raskin iyzsong ];
+    maintainers = with stdenv.lib.maintainers; [ raskin ];
   };
 
   src = fetchurl {
@@ -39,6 +39,8 @@ stdenv.mkDerivation rec {
     -DUSE_ZEITGEIST=OFF
   '';
 
+  NIX_LDFLAGS="-lX11";
+
   preFixup = ''
     wrapProgram $out/bin/midori \
       --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules" \
diff --git a/pkgs/applications/networking/cluster/mesos/default.nix b/pkgs/applications/networking/cluster/mesos/default.nix
index 86b82db60e142..b1b4518551102 100644
--- a/pkgs/applications/networking/cluster/mesos/default.nix
+++ b/pkgs/applications/networking/cluster/mesos/default.nix
@@ -41,25 +41,43 @@ in stdenv.mkDerivation rec {
 
   preConfigure = ''
     substituteInPlace src/Makefile.am --subst-var-by mavenRepo ${mavenRepo}
+    
+    substituteInPlace 3rdparty/libprocess/include/process/subprocess.hpp \
+      --replace '"sh"' '"${bash}/bin/bash"'
+
+    substituteInPlace 3rdparty/libprocess/3rdparty/stout/include/stout/posix/os.hpp \
+      --replace '"sh"' '"${bash}/bin/bash"'
 
+    substituteInPlace 3rdparty/libprocess/3rdparty/stout/include/stout/os/posix/fork.hpp \
+      --replace '"sh"' '"${bash}/bin/bash"'
+
+    substituteInPlace src/cli/mesos-scp        \
+      --replace "'scp " "'${openssh}/bin/scp "
+
+    substituteInPlace src/launcher/executor.cpp \
+      --replace '"sh"' '"${bash}/bin/bash"'
+    
     substituteInPlace src/launcher/fetcher.cpp \
       --replace '"gzip' '"${gzip}/bin/gzip'    \
       --replace '"tar' '"${gnutar}/bin/tar'    \
       --replace '"unzip' '"${unzip}/bin/unzip'
 
-    substituteInPlace src/cli/mesos-scp        \
-      --replace "'scp " "'${openssh}/bin/scp "
-
     substituteInPlace src/python/cli/src/mesos/cli.py \
      --replace "['mesos-resolve'" "['$out/bin/mesos-resolve'"
+    
+    substituteInPlace src/slave/containerizer/mesos/launch.cpp \
+      --replace '"sh"' '"${bash}/bin/bash"'
 
-  '' + lib.optionalString (stdenv.isLinux) ''
+  '' + lib.optionalString stdenv.isLinux ''
 
     substituteInPlace configure.ac             \
       --replace /usr/include/libnl3 ${libnl}/include/libnl3
 
     substituteInPlace src/linux/perf.cpp       \
       --replace '"perf ' '"${perf}/bin/perf '
+    
+    substituteInPlace src/linux/systemd.cpp \
+      --replace 'os::realpath("/sbin/init")' '"${systemd}/lib/systemd/systemd"'
 
     substituteInPlace src/slave/containerizer/mesos/isolators/filesystem/shared.cpp \
       --replace '"mount ' '"${utillinux}/bin/mount ' \
@@ -72,15 +90,6 @@ in stdenv.mkDerivation rec {
       --replace '"ip ' '"${iproute}/bin/ip '   \
       --replace '"mount ' '"${utillinux}/bin/mount ' \
       --replace '/bin/sh' "${stdenv.shell}"
-    
-    substituteInPlace src/launcher/executor.cpp \
-      --replace '"sh"' '"${bash}/bin/bash"'
-    
-    substituteInPlace src/slave/containerizer/mesos/launch.cpp \
-      --replace '"sh"' '"${bash}/bin/bash"'
-    
-    substituteInPlace src/linux/systemd.cpp \
-      --replace 'os::realpath("/sbin/init")' '"${systemd}/lib/systemd/systemd"'
   '';
 
   configureFlags = [
diff --git a/pkgs/applications/networking/dropbox-cli/default.nix b/pkgs/applications/networking/dropbox-cli/default.nix
index 892d8fa330093..ab79159ea6e1e 100644
--- a/pkgs/applications/networking/dropbox-cli/default.nix
+++ b/pkgs/applications/networking/dropbox-cli/default.nix
@@ -16,8 +16,7 @@ stdenv.mkDerivation {
   phases = "unpackPhase installPhase";
 
   installPhase = ''
-    mkdir -p "$out/bin/" "$out/share/applications"
-    cp data/dropbox.desktop "$out/share/applications"
+    mkdir -p "$out/bin/"
     substitute "dropbox.in" "$out/bin/dropbox" \
       --replace '@PACKAGE_VERSION@' ${version} \
       --replace '@DESKTOP_FILE_DIR@' "$out/share/applications" \
@@ -25,6 +24,7 @@ stdenv.mkDerivation {
       --replace '@IMAGEDATA64@' '"too-lazy-to-fix"'
     sed -i 's:db_path = .*:db_path = "${dropboxd}":' $out/bin/dropbox
     chmod +x "$out/bin/"*
+    mv $out/bin/dropbox $out/bin/dropbox-cli
     patchShebangs "$out/bin"
   '';
 
diff --git a/pkgs/applications/networking/ftp/filezilla/default.nix b/pkgs/applications/networking/ftp/filezilla/default.nix
index 57b93bfd65680..698f379c09cf2 100644
--- a/pkgs/applications/networking/ftp/filezilla/default.nix
+++ b/pkgs/applications/networking/ftp/filezilla/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, dbus, gnutls, wxGTK30, libidn, tinyxml, gettext
 , pkgconfig, xdg_utils, gtk2, sqlite, pugixml, libfilezilla }:
 
-let version = "3.16.0"; in
+let version = "3.16.1"; in
 stdenv.mkDerivation {
   name = "filezilla-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/filezilla/FileZilla_Client/${version}/FileZilla_${version}_src.tar.bz2";
-    sha256 = "0ilv4xhgav4srx6iqn0v0kv8rifgkysyx1hb9bnm45dc0skmbgbx";
+    sha256 = "1a6xvpnsjpgdrxla0i2zag30hy825rfsl4ka9p0zj5za9j2ny11v";
   };
 
   configureFlags = [
diff --git a/pkgs/applications/networking/instant-messengers/bitlbee/default.nix b/pkgs/applications/networking/instant-messengers/bitlbee/default.nix
index 41a698be29074..d7c52ccfd6b8f 100644
--- a/pkgs/applications/networking/instant-messengers/bitlbee/default.nix
+++ b/pkgs/applications/networking/instant-messengers/bitlbee/default.nix
@@ -21,6 +21,7 @@ stdenv.mkDerivation rec {
     "--gcov=1"
     "--otr=1"
     "--ssl=gnutls"
+    "--pidfile=/var/lib/bitlbee/bitlbee.pid"
   ];
 
   buildPhase = ''
diff --git a/pkgs/applications/networking/instant-messengers/hipchat/default.nix b/pkgs/applications/networking/instant-messengers/hipchat/default.nix
index 6dc0df03eef88..3ff93c35dcd13 100644
--- a/pkgs/applications/networking/instant-messengers/hipchat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/hipchat/default.nix
@@ -1,58 +1,48 @@
-{ stdenv, fetchurl, libtool, xorg, freetype, fontconfig, openssl, glib
-, mesa, gstreamer, gst_plugins_base, dbus, alsaLib, zlib, libuuid
-, libxml2, libxslt, sqlite, libogg, libvorbis, xz, libcanberra
-, makeWrapper, libredirect, xkeyboard_config, xcbutilkeysyms }:
+{ stdenv, fetchurl, xorg, freetype, fontconfig, openssl, glib, nss, nspr, expat
+, alsaLib, dbus, zlib, libxml2, libxslt, makeWrapper, xkeyboard_config, systemd
+, mesa_noglu, xcbutilkeysyms }:
 
 let
 
-  version = "2.2.1388";
+  version = "4.0.1631";
 
   rpath = stdenv.lib.makeSearchPath "lib" [
-    stdenv.glibc
-    libtool
     xorg.libXext
     xorg.libSM
     xorg.libICE
     xorg.libX11
-    xorg.libXft
-    xorg.libXau
-    xorg.libXdmcp
+    xorg.libXrandr
+    xorg.libXdamage
     xorg.libXrender
     xorg.libXfixes
     xorg.libXcomposite
+    xorg.libXcursor
     xorg.libxcb
     xorg.libXi
+    xorg.libXScrnSaver
+    xorg.libXtst
     freetype
     fontconfig
     openssl
     glib
-    mesa
-    gstreamer
-    gst_plugins_base
+    nss
+    nspr
     dbus
     alsaLib
     zlib
-    libuuid
     libxml2
     libxslt
-    sqlite
-    libogg
-    libvorbis
-    xz
-    libcanberra
+    expat
     xcbutilkeysyms
-  ] + ":${stdenv.cc.cc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}";
+    systemd
+    mesa_noglu
+  ] + ":${stdenv.cc.cc}/lib64";
 
   src =
     if stdenv.system == "x86_64-linux" then
       fetchurl {
-        url = "http://downloads.hipchat.com/linux/arch/x86_64/hipchat-${version}-x86_64.pkg.tar.xz";
-        sha256 = "18vl0c7xgyzd2miwkfzc638z0wzszgsdlbnslkkvxmg95ykdrdnz";
-      }
-    else if stdenv.system == "i686-linux" then
-      fetchurl {
-        url = "http://downloads.hipchat.com/linux/arch/i686/hipchat-${version}-i686.pkg.tar.xz";
-        sha256 = "12q8hf3gmcgrqg6v9xqyknwsmwywpwm76jc54sfniiqv5ngq24hl";
+        url = "https://atlassian.artifactoryonline.com/atlassian/hipchat-apt-client/pool/HipChat4-${version}-Linux.deb";
+        sha256 = "1ip79zq7j7842sf254296wvvd236w7c764r8wgjdyxzqyvfjfd81";
       }
     else
       throw "HipChat is not supported on ${stdenv.system}";
@@ -67,36 +57,37 @@ stdenv.mkDerivation {
   buildInputs = [ makeWrapper ];
 
   buildCommand = ''
-    tar xf ${src}
+    ar x $src
+    tar xfvz data.tar.gz
 
-    mkdir -p $out/libexec/hipchat/bin
+    mkdir -p $out/libexec/hipchat
     d=$out/libexec/hipchat/lib
-    rm -rfv opt/HipChat/lib/{libstdc++*,libz*,libuuid*,libxml2*,libxslt*,libsqlite*,libogg*,libvorbis*,liblzma*,libcanberra.*,libcanberra-*}
-    mv opt/HipChat/lib/ $d
+    mv opt/HipChat4/* $out/libexec/hipchat/
     mv usr/share $out
 
     for file in $(find $d -type f); do
         patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $file || true
-        patchelf --set-rpath ${rpath}:\$ORIGIN $file || true
+        patchelf --set-rpath ${rpath}:$out/libexec/hipchat/lib:\$ORIGIN $file || true
     done
 
-    substituteInPlace $out/share/applications/hipchat.desktop \
-      --replace /opt/HipChat/bin $out/bin
+    substituteInPlace $out/share/applications/hipchat4.desktop \
+      --replace /opt/HipChat4/bin/HipChat4 $out/bin/hipchat
 
-    makeWrapper $d/hipchat.bin $out/bin/hipchat \
+    makeWrapper $d/HipChat.bin $out/bin/hipchat \
       --set HIPCHAT_LD_LIBRARY_PATH '"$LD_LIBRARY_PATH"' \
       --set HIPCHAT_QT_PLUGIN_PATH '"$QT_PLUGIN_PATH"' \
-      --set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
-      --set NIX_REDIRECTS /usr/share/X11/xkb=${xkeyboard_config}/share/X11/xkb
+      --set QT_XKB_CONFIG_ROOT ${xkeyboard_config}/share/X11/xkb \
+      --set QTWEBENGINEPROCESS_PATH $d/QtWebEngineProcess
 
-    mv opt/HipChat/bin/linuxbrowserlaunch $out/libexec/hipchat/bin/
+    makeWrapper $d/QtWebEngineProcess.bin $d/QtWebEngineProcess \
+      --set QT_PLUGIN_PATH "$d/plugins"
   '';
 
   meta = with stdenv.lib; {
     description = "Desktop client for HipChat services";
     homepage = http://www.hipchat.com;
     license = licenses.unfree;
-    platforms = [ "i686-linux" "x86_64-linux" ];
-    maintainers = with maintainers; [ jgeerds ];
+    platforms = [ "x86_64-linux" ];
+    maintainers = with maintainers; [ jgeerds puffnfresh ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix
new file mode 100644
index 0000000000000..b04673a5d6ade
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchgit, pkgconfig, pidgin, libwebp, libgcrypt, gettext } :
+
+let
+  version = "2016-03-17";
+in
+stdenv.mkDerivation rec {
+  name = "telegram-purple-${version}";
+
+  src = fetchgit {
+    url = "https://github.com/majn/telegram-purple";
+    rev = "ee2a6fb740fe9580336e4af9a153b845bc715927";
+    sha256 = "10y99rclxbpbmmyiapn4vk1d7yjwmg7v1wb4jlz678qkvcni3nv7";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ pidgin libwebp libgcrypt gettext ];
+
+  preConfigure = ''
+    sed -i "s|/etc/telegram-purple/server.tglpub|$out/lib/pidgin/server.tglpub|g" telegram-purple.c
+  '';
+
+  installPhase = ''
+    mkdir -p $out/lib/pidgin/
+    cp bin/*.so $out/lib/pidgin/
+    cp tg-server.tglpub $out/lib/pidgin/server.tglpub
+    mkdir -p $out/pixmaps/pidgin/protocols/{16,22,48}
+    cp imgs/telegram16.png $out/pixmaps/pidgin/protocols/16
+    cp imgs/telegram22.png $out/pixmaps/pidgin/protocols/22
+    cp imgs/telegram48.png $out/pixmaps/pidgin/protocols/48
+  '';
+
+  meta = {
+    homepage = https://github.com/majn/telegram-purple;
+    description = "Telegram for Pidgin / libpurple";
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = stdenv.lib.maintainers.jagajaga;
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/qtox/default.nix b/pkgs/applications/networking/instant-messengers/qtox/default.nix
index 541fb5727ced7..e08a112664acc 100644
--- a/pkgs/applications/networking/instant-messengers/qtox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/qtox/default.nix
@@ -4,7 +4,7 @@
   qtbase, qtsvg, qttools, qttranslations, sqlcipher }:
 
 let
-  version = "1.2.4";
+  version = "1.3.0";
   revision = "v${version}";
 in
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
       owner = "tux3";
       repo = "qTox";
       rev = revision;
-      sha256 = "0iqnl00kmbpf3pn6z38n3cjzzsqpw2793j60c24kkrydapihknz9";
+      sha256 = "0z2rxsa23vpl4q0h63mybw7kv8n1sm6nwb93l0cc046a3n9axid8";
   };
 
   buildInputs =
diff --git a/pkgs/applications/networking/instant-messengers/skype/default.nix b/pkgs/applications/networking/instant-messengers/skype/default.nix
index 1e84e015bc14b..98672a29d0b63 100644
--- a/pkgs/applications/networking/instant-messengers/skype/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skype/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     cat > $out/bin/skype << EOF
     #!${stdenv.shell}
     export PULSE_LATENCY_MSEC=60  # workaround for pulseaudio glitches
-    $out/libexec/skype/skype --resources=$out/libexec/skype "\$@"
+    exec $out/libexec/skype/skype --resources=$out/libexec/skype "\$@"
     EOF
 
     chmod +x $out/bin/skype
@@ -67,5 +67,6 @@ stdenv.mkDerivation rec {
     description = "A proprietary voice-over-IP (VoIP) client";
     homepage = http://www.skype.com/;
     license = stdenv.lib.licenses.unfree;
+    platforms = [ "i686-linux" ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/slack/default.nix b/pkgs/applications/networking/instant-messengers/slack/default.nix
new file mode 100644
index 0000000000000..c6e550b5e8fdf
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/slack/default.nix
@@ -0,0 +1,85 @@
+{ stdenv, fetchurl, dpkg
+, alsaLib, atk, cairo, cups, dbus, expat, fontconfig, freetype, glib, gnome
+, libnotify, nspr, nss, systemd, xorg }:
+
+let
+
+  version = "2.0.1";
+
+  rpath = stdenv.lib.makeSearchPath "lib" [
+    alsaLib
+    atk
+    cairo
+    cups
+    dbus
+    expat
+    fontconfig
+    freetype
+    glib
+    gnome.GConf
+    gnome.gdk_pixbuf
+    gnome.gtk
+    gnome.pango
+    libnotify
+    nspr
+    nss
+    systemd
+
+    xorg.libX11
+    xorg.libXcomposite
+    xorg.libXcursor
+    xorg.libXdamage
+    xorg.libXext
+    xorg.libXfixes
+    xorg.libXi
+    xorg.libXrandr
+    xorg.libXrender
+    xorg.libXtst
+  ] + ":${stdenv.cc.cc}/lib64";
+
+  src =
+    if stdenv.system == "x86_64-linux" then
+      fetchurl {
+        url = "https://slack-ssb-updates.global.ssl.fastly.net/linux_releases/slack-desktop-${version}-amd64.deb";
+        sha256 = "12d84e61ba366cc5bac105b3f9930f2dfdd64c1e5fabbb08a6877e1c98bfb9c7";
+      }
+    else
+      throw "Slack is not supported on ${stdenv.system}";
+
+in stdenv.mkDerivation {
+  name = "slack-${version}";
+
+  inherit src;
+
+  buildInputs = [ dpkg ];
+  unpackPhase = "true";
+  buildCommand = ''
+    mkdir -p $out
+    dpkg -x $src $out
+    cp -av $out/usr/* $out
+    rm -rf $out/usr
+
+    # Otherwise it looks "suspicious"
+    chmod -R g-w $out
+
+    for file in $(find $out -type f \( -perm /0111 -o -name \*.so\* \) ); do
+      patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$file" || true
+      patchelf --set-rpath ${rpath}:$out/share/slack $file || true
+    done
+
+    # Fix the symlink
+    rm $out/bin/slack
+    ln -s $out/share/slack/slack $out/bin/slack
+
+    # Fix the desktop link
+    substituteInPlace $out/share/applications/slack.desktop \
+      --replace /usr/share/slack/slack $out/share/slack/slack
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Desktop client for Slack";
+    homepage = "https://slack.com";
+    license = licenses.unfree;
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/telegram/cutegram/default.nix b/pkgs/applications/networking/instant-messengers/telegram/cutegram/default.nix
index ec188e9828437..29a0f188516f0 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/cutegram/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/cutegram/default.nix
@@ -2,7 +2,7 @@
 , qtbase, qtmultimedia, qtquick1, qtquickcontrols
 , qtimageformats, qtgraphicaleffects
 , telegram-qml, libqtelegram-aseman-edition
-, gst_plugins_base, gst_plugins_good, gst_plugins_bad, gst_plugins_ugly
+, gst_all_1
 , makeQtWrapper }:
 
 stdenv.mkDerivation rec {
@@ -18,13 +18,18 @@ stdenv.mkDerivation rec {
   [ qtbase qtmultimedia qtquick1 qtquickcontrols
     qtimageformats qtgraphicaleffects
     telegram-qml libqtelegram-aseman-edition 
-    gst_plugins_base gst_plugins_good gst_plugins_bad gst_plugins_ugly ];
+  ] ++ (with gst_all_1; [ gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly ]);
+
   nativeBuildInputs = [ makeQtWrapper ];
-  enableParallelBuild = true;
+
+  enableParallelBuilding = true;
 
   configurePhase = "qmake -r PREFIX=$out";
 
-  fixupPhase = "wrapQtProgram $out/bin/cutegram";
+  fixupPhase = ''
+    wrapQtProgram $out/bin/cutegram \
+      --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0"
+  '';
 
   meta = with stdenv.lib; {
     version = "2.7.1";
@@ -32,6 +37,7 @@ stdenv.mkDerivation rec {
     homepage = "http://aseman.co/en/products/cutegram/";
     license = licenses.gpl3;
     maintainers = with maintainers; [ profpatsch AndersonTorres ];
+    platforms = platforms.linux;
   };
 }
 #TODO: appindicator, for system tray plugin (by @profpatsch)
diff --git a/pkgs/applications/networking/instant-messengers/telegram/libqtelegram-aseman-edition/default.nix b/pkgs/applications/networking/instant-messengers/telegram/libqtelegram-aseman-edition/default.nix
index 957c59b88e557..206b2a0747636 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/libqtelegram-aseman-edition/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/libqtelegram-aseman-edition/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ qtbase qtmultimedia qtquick1 ];
-  enableParallelBuild = true;
+  enableParallelBuilding = true;
 
   patchPhase = ''
     substituteInPlace libqtelegram-ae.pro --replace "/libqtelegram-ae" ""
@@ -27,8 +27,9 @@ stdenv.mkDerivation rec {
     version = "6.1";
     description = "A fork of libqtelegram by Aseman, using qmake";
     homepage = src.meta.homepage;
-    license = stdenv.lib.licenses.gpl3;
+    license = licenses.gpl3;
     maintainers = [ maintainers.profpatsch ];
+    platforms = platforms.linux;
   };
 
 }
diff --git a/pkgs/applications/networking/instant-messengers/telegram/telegram-qml/default.nix b/pkgs/applications/networking/instant-messengers/telegram/telegram-qml/default.nix
index aa442cbe8b2d6..372531f658e5c 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/telegram-qml/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/telegram-qml/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   };
 
   propagatedBuildInputs = [ qtbase qtmultimedia qtquick1 libqtelegram-aseman-edition ];
-  enableParallelBuild = true;
+  enableParallelBuilding = true;
 
   patchPhase = ''
     substituteInPlace telegramqml.pro --replace "/\$\$LIB_PATH" ""
@@ -28,8 +28,9 @@ stdenv.mkDerivation rec {
     version = "0.9.2";
     description = "Telegram API tools for QtQml and Qml";
     homepage = src.meta.homepage;
-    license = stdenv.lib.licenses.gpl3;
+    license = licenses.gpl3;
     maintainers = [ maintainers.profpatsch ];
+    platforms = platforms.linux;
   };
 
 }
diff --git a/pkgs/applications/networking/instant-messengers/utox/default.nix b/pkgs/applications/networking/instant-messengers/utox/default.nix
index 55ec1560c5e5c..0ae0cca599187 100644
--- a/pkgs/applications/networking/instant-messengers/utox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/utox/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "utox-${version}";
-  version = "0.5.0";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "GrayHatter";
     repo = "uTox";
     rev = "v${version}";
-    sha256 = "074wa0np8hyqwy9xqgyyds94pdfv2i1jh019m98d8apxc5vn36wk";
+    sha256 = "1md8fw6zqd3giskd89i56dgrsl83vn27xwr8k22263wkj1fxxw4c";
   };
 
   buildInputs = [ pkgconfig libtoxcore-dev dbus libvpx libX11 openal freetype
diff --git a/pkgs/applications/networking/instant-messengers/vacuum/default.nix b/pkgs/applications/networking/instant-messengers/vacuum/default.nix
index 205c21adab427..d7798273e7c69 100644
--- a/pkgs/applications/networking/instant-messengers/vacuum/default.nix
+++ b/pkgs/applications/networking/instant-messengers/vacuum/default.nix
@@ -1,56 +1,30 @@
-x@{builderDefsPackage
+{ stdenv, lib, fetchurl
   , qt4, openssl
   , xproto, libX11, libXScrnSaver, scrnsaverproto
-  , xz
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
+  , xz, zlib
+}:
+stdenv.mkDerivation rec {
+  name = "vacuum-im-${version}";
+  version = "1.2.4";
 
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    version="1.2.4";
-    baseName="vacuum-im";
-    name="${baseName}-${version}";
-    url="https://googledrive.com/host/0B7A5K_290X8-d1hjQmJaSGZmTTA/vacuum-1.2.4.tar.gz";
-    sha256="10qxpfbbaagqcalhk0nagvi5irbbz5hk31w19lba8hxf6pfylrhf";
+  src = fetchurl {
+    url = "https://googledrive.com/host/0B7A5K_290X8-d1hjQmJaSGZmTTA/vacuum-${version}.tar.gz";
+    sha256 = "10qxpfbbaagqcalhk0nagvi5irbbz5hk31w19lba8hxf6pfylrhf";
   };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = sourceInfo.sha256;
-  };
-
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
 
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["addInputs" "doQMake" "doMakeInstall"];
+  buildInputs = [
+    qt4 openssl xproto libX11 libXScrnSaver scrnsaverproto xz zlib
+  ];
 
-  doQMake = a.fullDepEntry (''
+  configurePhase = ''
     qmake INSTALL_PREFIX=$out -recursive vacuum.pro
-  '') ["doUnpack" "addInputs"];
-      
-  meta = {
+  '';
+
+  meta = with stdenv.lib; {
     description = "An XMPP client fully composed of plugins";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    license = with a.lib.licenses;
-      gpl3;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.linux;
+    license = licenses.gpl3;
     homepage = "http://code.google.com/p/vacuum-im/";
   };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://code.google.com/p/vacuum-im/downloads/list?can=2&q=&colspec=Filename";
-    };
-  };
-}) x
-
+}
diff --git a/pkgs/applications/networking/irc/communi/default.nix b/pkgs/applications/networking/irc/communi/default.nix
index 65a526b88af4a..312fd8df908a9 100644
--- a/pkgs/applications/networking/irc/communi/default.nix
+++ b/pkgs/applications/networking/irc/communi/default.nix
@@ -29,6 +29,8 @@ stdenv.mkDerivation rec {
 
   postInstall = ''
     wrapQtProgram "$out/bin/communi"
+    substituteInPlace "$out/share/applications/communi.desktop" \
+      --replace "/usr/bin" "$out/bin"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/irc/quassel/default.nix b/pkgs/applications/networking/irc/quassel/default.nix
index aca68f94670d6..f48309d0b0498 100644
--- a/pkgs/applications/networking/irc/quassel/default.nix
+++ b/pkgs/applications/networking/irc/quassel/default.nix
@@ -22,17 +22,13 @@ assert !buildClient -> !withKDE; # KDE is used by the client only
 
 let
   edf = flag: feature: [("-D" + feature + (if flag then "=ON" else "=OFF"))];
+  source = import ./source.nix { inherit fetchurl; };
 
 in with stdenv; mkDerivation rec {
+  inherit (source) src version;
 
-  version = "0.12.2";
   name = "quassel${tag}-${version}";
 
-  src = fetchurl {
-    url = "http://quassel-irc.org/pub/quassel-${version}.tar.bz2";
-    sha256 = "15vqjiw38mifvnc95bhvy0zl23xxldkwg2byx9xqbyw8rfgggmkb";
-  };
-
   enableParallelBuilding = true;
 
   buildInputs =
diff --git a/pkgs/applications/networking/irc/quassel/qt-5.nix b/pkgs/applications/networking/irc/quassel/qt-5.nix
index 19e0c475c6650..c80624ac0510f 100644
--- a/pkgs/applications/networking/irc/quassel/qt-5.nix
+++ b/pkgs/applications/networking/irc/quassel/qt-5.nix
@@ -33,25 +33,13 @@ assert !buildClient -> !withKDE; # KDE is used by the client only
 
 let
   edf = flag: feature: [("-D" + feature + (if flag then "=ON" else "=OFF"))];
+  source = import ./source.nix { inherit fetchurl; };
 
 in with stdenv; mkDerivation rec {
+  inherit (source) src version;
 
-  version = "0.12.2";
   name = "quassel${tag}-${version}";
 
-  src = fetchurl {
-    url = "http://quassel-irc.org/pub/quassel-${version}.tar.bz2";
-    sha256 = "15vqjiw38mifvnc95bhvy0zl23xxldkwg2byx9xqbyw8rfgggmkb";
-  };
-
-  patches = [
-    # fix build with Qt 5.5
-    (fetchurl {
-      url = "https://github.com/quassel/quassel/commit/078477395aaec1edee90922037ebc8a36b072d90.patch";
-      sha256 = "1njwnay7pjjw0g7m0x5cwvck8xcznc7jbdfyhbrd121nc7jgpbc5";
-    })
-  ];
-
   enableParallelBuilding = true;
 
   buildInputs =
diff --git a/pkgs/applications/networking/irc/quassel/source.nix b/pkgs/applications/networking/irc/quassel/source.nix
new file mode 100644
index 0000000000000..17d12b575d75b
--- /dev/null
+++ b/pkgs/applications/networking/irc/quassel/source.nix
@@ -0,0 +1,9 @@
+{ fetchurl }:
+
+rec {
+  version = "0.12.3";
+  src = fetchurl {
+    url = "http://quassel-irc.org/pub/quassel-${version}.tar.bz2";
+    sha256 = "0d6lwf6qblj1ia5j9mjy112zrmpbbg9mmxgscbgxiqychldyjgjd";
+  };
+}
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/default.nix b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
index 7fd4e3e1515fd..ef9ec03ecd9f3 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
@@ -13,7 +13,7 @@
   enableOfficialBranding ? false
 }:
 
-let version = "38.6.0"; in
+let version = "38.7.0"; in
 let verName = "${version}"; in
 
 stdenv.mkDerivation rec {
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://archive.mozilla.org/pub/thunderbird/releases/${verName}/source/thunderbird-${verName}.source.tar.bz2";
-    sha256 = "0sssw45sf4vfy63y0x1lj05zl9g3gjdcvgw232k6zfm44l9p25q4";
+    sha256 = "1wbkj8a0p62mcbxlq8yyzrx51xi65qm8f2ccqiv5pb6qd51b5d0v";
   };
 
   buildInputs = # from firefox30Pkgs.xulrunner, but without gstreamer and libvpx
@@ -67,7 +67,7 @@ stdenv.mkDerivation rec {
                                "--enable-optimize" "--enable-strip" ])
     ++ [
       "--disable-javaxpcom"
-      "--enable-stdcxx-compat" # Avoid dependency on libstdc++ 4.7
+      #"--enable-stdcxx-compat" # Avoid dependency on libstdc++ 4.7
     ]
     ++ stdenv.lib.optional enableOfficialBranding "--enable-official-branding";
   in ''
diff --git a/pkgs/applications/networking/p2p/transmission/default.nix b/pkgs/applications/networking/p2p/transmission/default.nix
index eb8c5350a6ff6..24b7a50b032fd 100644
--- a/pkgs/applications/networking/p2p/transmission/default.nix
+++ b/pkgs/applications/networking/p2p/transmission/default.nix
@@ -26,6 +26,7 @@ stdenv.mkDerivation rec {
   '';
 
   configureFlags = [ "--with-systemd-daemon" ]
+    ++ [ "--enable-cli" ]
     ++ optional enableGTK3 "--with-gtk";
 
   preFixup = optionalString enableGTK3 /* gsettings schemas for file dialogues */ ''
diff --git a/pkgs/applications/office/scribus/default.nix b/pkgs/applications/office/scribus/default.nix
index 720a07afcfa3e..d592e149588a7 100644
--- a/pkgs/applications/office/scribus/default.nix
+++ b/pkgs/applications/office/scribus/default.nix
@@ -3,11 +3,11 @@
 , zlib, libpng, xorg, cairo, podofo, aspell, boost, cmake }:
 
 stdenv.mkDerivation rec {
-  name = "scribus-1.4.5";
+  name = "scribus-1.4.6";
 
   src = fetchurl {
-    url = "mirror://sourceforge/scribus/scribus/${name}.tar.bz2";
-    sha256 = "1644ym79q7a1m5xf3xl1wf4kdk870np911jmpqdv2syjc42nyw4z";
+    url = "mirror://sourceforge/scribus/scribus/${name}.tar.xz";
+    sha256 = "16m1g38dig37ag0zxjx3wk1rxx9xxzjqfc7prj89rp4y1m83dqr1";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/office/zim/default.nix b/pkgs/applications/office/zim/default.nix
index 4d2396e8a1174..9014e3884688d 100644
--- a/pkgs/applications/office/zim/default.nix
+++ b/pkgs/applications/office/zim/default.nix
@@ -9,19 +9,18 @@
 
 buildPythonApplication rec {
   name = "zim-${version}";
-  version = "0.63";
+  version = "0.65";
   namePrefix = "";
 
   src = fetchurl {
     url = "http://zim-wiki.org/downloads/${name}.tar.gz";
-    sha256 = "077vf4h0hjmbk8bxj9l0z9rxcb3dw642n32lvfn6vjdna1qm910m";
+    sha256 = "15pdq4fxag85qjsrdmmssiq85qsk5vnbp8mrqnpvx8lm8crz6hjl";
   };
 
   propagatedBuildInputs = [ pythonPackages.sqlite3 pygtk pythonPackages.pyxdg pygobject ];
 
   preBuild = ''
-    mkdir -p /tmp/home
-    export HOME="/tmp/home"
+    export HOME=$TMP
 
     sed -i '/zim_install_class,/d' setup.py
   '';
@@ -30,8 +29,14 @@ buildPythonApplication rec {
   preFixup = ''
     export makeWrapperArgs="--prefix XDG_DATA_DIRS : $out/share --argv0 $out/bin/.zim-wrapped"
   '';
-  # Testing fails.
-  doCheck = false;
+
+  postFixup = ''
+    wrapPythonPrograms
+    substituteInPlace $out/bin/.zim-wrapped \
+    --replace "sys.argv[0] = 'zim'" "sys.argv[0] = '$out/bin/zim'"
+  '';
+
+  doCheck = true;
 
   meta = {
       description = "A desktop wiki";
diff --git a/pkgs/applications/office/zotero/default.nix b/pkgs/applications/office/zotero/default.nix
index 5939478d695ff..5a21754b44e3b 100644
--- a/pkgs/applications/office/zotero/default.nix
+++ b/pkgs/applications/office/zotero/default.nix
@@ -1,21 +1,13 @@
-{ stdenv, fetchurl, fetchpatch, bash, firefox, perl, unzipNLS, xorg }:
+{ stdenv, fetchurl, bash, firefox, perl, unzipNLS, xorg }:
 
 let
 
   xpi = fetchurl {
     url = "https://download.zotero.org/extension/zotero-${version}.xpi";
-    sha256 = "02h2ja08v8as4fawj683rh5rmxsjf5d0qmvqa77i176nm20y5s7s";
+    sha256 = "1dyf578yfj3xr9kkhmsvbkvraw2arghmh67ksi5c8qlxczx5i1xy";
   };
 
-  firefox' = stdenv.lib.overrideDerivation (firefox) (attrs: {
-    patches = [ (fetchpatch {
-      url = "https://hg.mozilla.org/releases/mozilla-beta/raw-rev/0558da46f20c";
-      sha256 = "08ibp7hny78x8ywfvrh56z90kf8fjpf04mibdlrwkw4f1vgm3fc3";
-      name = "fix-external-xpi-loader";
-    }) ];
-  });
-
-  version = "4.0.28";
+  version = "4.0.29";
 
 in
 stdenv.mkDerivation {
@@ -23,15 +15,13 @@ stdenv.mkDerivation {
   inherit version;
 
   src = fetchurl {
-    url = "https://github.com/zotero/zotero-standalone-build/archive/4.0.28.8.tar.gz";
-    sha256 = "ab1fd5dde9bd2a6b6d31cc9a53183a04de3698f1273a943ef31ecc4c42808a68";
+    url = "https://github.com/zotero/zotero-standalone-build/archive/4.0.29.2.tar.gz";
+    sha256 = "0pfip6s5dawp7wp8r5czvzlnxvvdwjja64g71h9dxyxrh49v2mxa";
   };
 
   nativeBuildInputs = [ perl unzipNLS ];
 
-  inherit bash;
-
-  firefox = firefox';
+  inherit bash firefox;
 
   phases = "unpackPhase installPhase fixupPhase";
 
diff --git a/pkgs/applications/science/logic/acgtk/default.nix b/pkgs/applications/science/logic/acgtk/default.nix
index 0fd90ac13b6e2..fa890c03b6f71 100644
--- a/pkgs/applications/science/logic/acgtk/default.nix
+++ b/pkgs/applications/science/logic/acgtk/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation {
     homepage = "http://www.loria.fr/equipes/calligramme/acg";
     description = "A toolkit for developing ACG signatures and lexicon";
     license = licenses.cecill20;
-    platforms = ocaml.meta.platforms;
+    platforms = ocaml.meta.platforms or [];
     maintainers = [ maintainers.jirkamarsik ];
   };
 }
diff --git a/pkgs/applications/science/math/lp_solve/default.nix b/pkgs/applications/science/math/lp_solve/default.nix
index 7726793fcaf83..b92691cb61194 100644
--- a/pkgs/applications/science/math/lp_solve/default.nix
+++ b/pkgs/applications/science/math/lp_solve/default.nix
@@ -37,6 +37,7 @@ stdenv.mkDerivation rec {
     license     = licenses.gpl2Plus;
     maintainers = with maintainers; [ smironov ];
     platforms   = platforms.unix;
+    broken      = true;
   };
 
 }
diff --git a/pkgs/applications/science/math/scotch/default.nix b/pkgs/applications/science/math/scotch/default.nix
new file mode 100644
index 0000000000000..2e928bc8f344a
--- /dev/null
+++ b/pkgs/applications/science/math/scotch/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, bison, openmpi, flex, zlib}:
+
+stdenv.mkDerivation rec {
+  version = "6.0.4";
+  name = "scotch-${version}";
+  src_name = "scotch_${version}";
+
+  buildInputs = [ bison openmpi flex zlib ];
+
+  src = fetchurl {
+    url = "http://gforge.inria.fr/frs/download.php/file/34618/${src_name}.tar.gz";
+    sha256 = "f53f4d71a8345ba15e2dd4e102a35fd83915abf50ea73e1bf6efe1bc2b4220c7";
+  };
+
+  sourceRoot = "${src_name}/src";
+
+  preConfigure = ''
+    ln -s Make.inc/Makefile.inc.x86-64_pc_linux2 Makefile.inc
+  '';
+
+  buildFlags = [ "scotch ptscotch" ];
+  installFlags = [ "prefix=\${out}" ];
+
+  meta = {
+    description = "Graph and mesh/hypergraph partitioning, graph clustering, and sparse matrix ordering";
+    longDescription = ''
+      Scotch is a software package for graph and mesh/hypergraph partitioning, graph clustering, 
+      and sparse matrix ordering.
+    '';
+    homepage = "http://www.labri.fr/perso/pelegrin/scotch";
+    license = stdenv.lib.licenses.cecill-c;
+    maintainers = [ stdenv.lib.maintainers.bzizou ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
+
diff --git a/pkgs/applications/science/robotics/qgroundcontrol/0001-fix-gcc-cmath-namespace-issues.patch b/pkgs/applications/science/robotics/qgroundcontrol/0001-fix-gcc-cmath-namespace-issues.patch
new file mode 100644
index 0000000000000..e6c9ca38a989a
--- /dev/null
+++ b/pkgs/applications/science/robotics/qgroundcontrol/0001-fix-gcc-cmath-namespace-issues.patch
@@ -0,0 +1,140 @@
+From fffc383c10c7c194e427d78c83802c3b910fa1c2 Mon Sep 17 00:00:00 2001
+From: Patrick Callahan <pxcallahan@gmail.com>
+Date: Thu, 24 Mar 2016 18:17:57 -0700
+Subject: [PATCH] fix gcc cmath namespace issues
+
+---
+ src/Vehicle/Vehicle.cc        | 6 +++---
+ src/comm/QGCFlightGearLink.cc | 4 ++--
+ src/comm/QGCJSBSimLink.cc     | 4 ++--
+ src/uas/UAS.cc                | 8 ++++----
+ src/ui/QGCDataPlot2D.cc       | 4 ++--
+ 5 files changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/src/Vehicle/Vehicle.cc b/src/Vehicle/Vehicle.cc
+index a0d3605..205b1de 100644
+--- a/src/Vehicle/Vehicle.cc
++++ b/src/Vehicle/Vehicle.cc
+@@ -638,17 +638,17 @@ void Vehicle::setLongitude(double longitude){
+ 
+ void Vehicle::_updateAttitude(UASInterface*, double roll, double pitch, double yaw, quint64)
+ {
+-    if (isinf(roll)) {
++    if (std::isinf(roll)) {
+         _rollFact.setRawValue(0);
+     } else {
+         _rollFact.setRawValue(roll * (180.0 / M_PI));
+     }
+-    if (isinf(pitch)) {
++    if (std::isinf(pitch)) {
+         _pitchFact.setRawValue(0);
+     } else {
+         _pitchFact.setRawValue(pitch * (180.0 / M_PI));
+     }
+-    if (isinf(yaw)) {
++    if (std::isinf(yaw)) {
+         _headingFact.setRawValue(0);
+     } else {
+         yaw = yaw * (180.0 / M_PI);
+diff --git a/src/comm/QGCFlightGearLink.cc b/src/comm/QGCFlightGearLink.cc
+index 2a520fb..886aecf 100644
+--- a/src/comm/QGCFlightGearLink.cc
++++ b/src/comm/QGCFlightGearLink.cc
+@@ -230,7 +230,7 @@ void QGCFlightGearLink::updateControls(quint64 time, float rollAilerons, float p
+     Q_UNUSED(systemMode);
+     Q_UNUSED(navMode);
+ 
+-    if(!isnan(rollAilerons) && !isnan(pitchElevator) && !isnan(yawRudder) && !isnan(throttle))
++    if(!std::isnan(rollAilerons) && !std::isnan(pitchElevator) && !std::isnan(yawRudder) && !std::isnan(throttle))
+     {
+         QString state("%1\t%2\t%3\t%4\t%5\n");
+         state = state.arg(rollAilerons).arg(pitchElevator).arg(yawRudder).arg(true).arg(throttle);
+@@ -240,7 +240,7 @@ void QGCFlightGearLink::updateControls(quint64 time, float rollAilerons, float p
+     }
+     else
+     {
+-        qDebug() << "HIL: Got NaN values from the hardware: isnan output: roll: " << isnan(rollAilerons) << ", pitch: " << isnan(pitchElevator) << ", yaw: " << isnan(yawRudder) << ", throttle: " << isnan(throttle);
++        qDebug() << "HIL: Got NaN values from the hardware: std::isnan output: roll: " << std::isnan(rollAilerons) << ", pitch: " << std::isnan(pitchElevator) << ", yaw: " << std::isnan(yawRudder) << ", throttle: " << std::isnan(throttle);
+     }
+ }
+ 
+diff --git a/src/comm/QGCJSBSimLink.cc b/src/comm/QGCJSBSimLink.cc
+index 1210621..89db371 100644
+--- a/src/comm/QGCJSBSimLink.cc
++++ b/src/comm/QGCJSBSimLink.cc
+@@ -242,7 +242,7 @@ void QGCJSBSimLink::updateControls(quint64 time, float rollAilerons, float pitch
+     Q_UNUSED(systemMode);
+     Q_UNUSED(navMode);
+ 
+-    if(!isnan(rollAilerons) && !isnan(pitchElevator) && !isnan(yawRudder) && !isnan(throttle))
++    if(!std::isnan(rollAilerons) && !std::isnan(pitchElevator) && !std::isnan(yawRudder) && !std::isnan(throttle))
+     {
+         QString state("%1\t%2\t%3\t%4\t%5\n");
+         state = state.arg(rollAilerons).arg(pitchElevator).arg(yawRudder).arg(true).arg(throttle);
+@@ -250,7 +250,7 @@ void QGCJSBSimLink::updateControls(quint64 time, float rollAilerons, float pitch
+     }
+     else
+     {
+-        qDebug() << "HIL: Got NaN values from the hardware: isnan output: roll: " << isnan(rollAilerons) << ", pitch: " << isnan(pitchElevator) << ", yaw: " << isnan(yawRudder) << ", throttle: " << isnan(throttle);
++        qDebug() << "HIL: Got NaN values from the hardware: isnan output: roll: " << std::isnan(rollAilerons) << ", pitch: " << std::isnan(pitchElevator) << ", yaw: " << std::isnan(yawRudder) << ", throttle: " << std::isnan(throttle);
+     }
+     //qDebug() << "Updated controls" << state;
+ }
+diff --git a/src/uas/UAS.cc b/src/uas/UAS.cc
+index 4d5c1c2..ac88852 100644
+--- a/src/uas/UAS.cc
++++ b/src/uas/UAS.cc
+@@ -558,7 +558,7 @@ void UAS::receiveMessage(mavlink_message_t message)
+ 

+             setAltitudeAMSL(hud.alt);

+             setGroundSpeed(hud.groundspeed);

+-            if (!isnan(hud.airspeed))

++            if (!std::isnan(hud.airspeed))

+                 setAirSpeed(hud.airspeed);

+             speedZ = -hud.climb;

+             emit altitudeChanged(this, altitudeAMSL, altitudeRelative, -speedZ, time);

+@@ -654,7 +654,7 @@ void UAS::receiveMessage(mavlink_message_t message)
+ 

+                     float vel = pos.vel/100.0f;

+                     // Smaller than threshold and not NaN

+-                    if ((vel < 1000000) && !isnan(vel) && !isinf(vel)) {

++                    if ((vel < 1000000) && !std::isnan(vel) && !std::isinf(vel)) {

+                         setGroundSpeed(vel);

+                         emit speedChanged(this, groundSpeed, airSpeed, time);

+                     } else {

+@@ -1439,8 +1439,8 @@ void UAS::setExternalControlSetpoint(float roll, float pitch, float yaw, float t
+     if (countSinceLastTransmission++ >= 5) {

+         sendCommand = true;

+         countSinceLastTransmission = 0;

+-    } else if ((!isnan(roll) && roll != manualRollAngle) || (!isnan(pitch) && pitch != manualPitchAngle) ||

+-             (!isnan(yaw) && yaw != manualYawAngle) || (!isnan(thrust) && thrust != manualThrust) ||

++    } else if ((!std::isnan(roll) && roll != manualRollAngle) || (!std::isnan(pitch) && pitch != manualPitchAngle) ||

++             (!std::isnan(yaw) && yaw != manualYawAngle) || (!std::isnan(thrust) && thrust != manualThrust) ||

+              buttons != manualButtons) {

+         sendCommand = true;

+ 

+diff --git a/src/ui/QGCDataPlot2D.cc b/src/ui/QGCDataPlot2D.cc
+index 2e530b2..9d5a774 100644
+--- a/src/ui/QGCDataPlot2D.cc
++++ b/src/ui/QGCDataPlot2D.cc
+@@ -535,7 +535,7 @@ void QGCDataPlot2D::loadCsvLog(QString file, QString xAxisName, QString yAxisFil
+                 {
+                     bool okx = true;
+                     x = text.toDouble(&okx);
+-                    if (okx && !isnan(x) && !isinf(x))
++                    if (okx && !std::isnan(x) && !std::isinf(x))
+                     {
+                         headerfound = true;
+                     }
+@@ -561,7 +561,7 @@ void QGCDataPlot2D::loadCsvLog(QString file, QString xAxisName, QString yAxisFil
+                         y = text.toDouble(&oky);
+                         // Only INF is really an issue for the plot
+                         // NaN is fine
+-                        if (oky && !isnan(y) && !isinf(y) && text.length() > 0 && text != " " && text != "\n" && text != "\r" && text != "\t")
++                        if (oky && !std::isnan(y) && !std::isinf(y) && text.length() > 0 && text != " " && text != "\n" && text != "\r" && text != "\t")
+                         {
+                             // Only append definitely valid values
+                             xValues.value(curveName)->append(x);
+-- 
+2.7.4
+
diff --git a/pkgs/applications/science/robotics/qgroundcontrol/default.nix b/pkgs/applications/science/robotics/qgroundcontrol/default.nix
new file mode 100644
index 0000000000000..47a6ee44952bd
--- /dev/null
+++ b/pkgs/applications/science/robotics/qgroundcontrol/default.nix
@@ -0,0 +1,98 @@
+{ stdenv, fetchgit, git,  espeak, SDL, udev, doxygen, cmake, overrideCC#, gcc48
+  , qtbase, qtlocation, qtserialport, qtdeclarative, qtconnectivity, qtxmlpatterns
+  , qtsvg, qtquick1, qtquickcontrols, qtgraphicaleffects
+  , makeQtWrapper, lndir
+  , gst_all_1, qt_gstreamer1, pkgconfig, glibc
+  , version ? "2.9.4"
+}:
+
+stdenv.mkDerivation rec {
+  name = "qgroundcontrol-${version}";
+  buildInputs = [
+   SDL udev doxygen git
+  ] ++ gstInputs;
+
+  qtInputs = [
+    qtbase qtlocation qtserialport qtdeclarative qtconnectivity qtxmlpatterns qtsvg 
+    qtquick1 qtquickcontrols qtgraphicaleffects
+  ];
+
+  gstInputs = with gst_all_1; [
+    gstreamer gst-plugins-base
+  ];
+
+  enableParallelBuilding = true;
+  nativeBuildInputs = [
+    pkgconfig makeQtWrapper
+ ] ++ qtInputs;
+
+  patches = [ ./0001-fix-gcc-cmath-namespace-issues.patch ];
+
+  preConfigure = ''
+    git submodule init
+    git submodule update
+
+  '';
+
+  configurePhase = ''
+    mkdir build
+    pushd build
+
+    qmake ../qgroundcontrol.pro
+
+    popd
+  '';
+
+  preBuild = "pushd build/";
+  postBuild = "popd";
+
+  installPhase = ''
+    mkdir -p $out/share/applications
+    cp -v qgroundcontrol.desktop $out/share/applications
+    
+    mkdir -p $out/bin
+    cp -v build/release/qgroundcontrol "$out/bin/"
+    
+    mkdir -p $out/share/qgroundcontrol
+    cp -rv resources/ $out/share/qgroundcontrol
+    
+    mkdir -p $out/share/pixmaps
+    cp -v resources/icons/qgroundcontrol.png $out/share/pixmaps
+
+    # we need to link to our Qt deps in our own output if we want
+    # this package to work without being installed as a system pkg
+    mkdir -p $out/lib/qt5 $out/etc/xdg
+    for pkg in $qtInputs; do
+      if [[ -d $pkg/lib/qt5 ]]; then
+        for dir in lib/qt5 share etc/xdg; do
+          if [[ -d $pkg/$dir ]]; then
+            ${lndir}/bin/lndir "$pkg/$dir" "$out/$dir"
+          fi
+        done
+      fi
+    done
+  '';
+
+
+  postInstall = ''
+    wrapQtProgram "$out/bin/qgroundcontrol" \
+      --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH"
+  '';
+  
+
+  # TODO: package mavlink so we can build from a normal source tarball
+  src = fetchgit {
+    url = "https://github.com/mavlink/qgroundcontrol.git";
+    rev = "refs/tags/v${version}";
+    sha256 = "0rwn2ddlar58ydzdykvnab1anr4xzvb9x0sxx5rs037i49f6sqga";
+    fetchSubmodules = true;
+  };
+
+  meta = {
+    description = "provides full ground station support and configuration for the PX4 and APM Flight Stacks";
+    homepage = http://qgroundcontrol.org/;
+    license = stdenv.lib.licenses.gpl3Plus;
+    platforms = with stdenv.lib.platforms; linux;
+    maintainers = with stdenv.lib.maintainers; [ pxc ];
+  };
+}
diff --git a/pkgs/applications/search/catfish/default.nix b/pkgs/applications/search/catfish/default.nix
new file mode 100644
index 0000000000000..795d804038d81
--- /dev/null
+++ b/pkgs/applications/search/catfish/default.nix
@@ -0,0 +1,60 @@
+{ stdenv, fetchurl, file, which, intltool, findutils, xdg_utils, pycairo,
+  gnome3, pythonPackages, wrapGAppsHook }:
+
+pythonPackages.buildPythonApplication rec {
+  majorver = "1.4";
+  minorver = "1";
+  version = "${majorver}.${minorver}";
+  name = "catfish-${version}";
+
+  src = fetchurl {
+    url = "https://launchpad.net/catfish-search/${majorver}/${version}/+download/${name}.tar.bz2";
+    sha256 = "0dc9xq1l1w22xk1hg63mgwr0920jqxrwfzmkhif01yms1m7vfdv8";
+  };
+
+  nativeBuildInputs = [
+    pythonPackages.distutils_extra
+    file
+    which
+    intltool
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    gnome3.gtk
+    gnome3.dconf
+    pythonPackages.pyxdg
+    pythonPackages.ptyprocess
+    pycairo
+  ];
+
+  propagatedBuildInputs = [
+    pythonPackages.pygobject3
+    pythonPackages.pexpect
+    xdg_utils
+    findutils
+  ];
+  
+  preFixup = ''
+    for f in \
+      "$out/${pythonPackages.python.sitePackages}/catfish_lib/catfishconfig.py" \
+      "$out/share/applications/catfish.desktop"
+    do
+      substituteInPlace $f --replace "${pythonPackages.python}" "$out"
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A handy file search tool";
+    longDescription = ''
+      Catfish is a handy file searching tool. The interface is
+      intentionally lightweight and simple, using only GTK+3.
+      You can configure it to your needs by using several command line
+      options.
+    '';
+    homepage = https://launchpad.net/catfish-search;
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.romildo ];
+  };
+}
diff --git a/pkgs/applications/search/grepm/default.nix b/pkgs/applications/search/grepm/default.nix
new file mode 100644
index 0000000000000..99c149b79d9da
--- /dev/null
+++ b/pkgs/applications/search/grepm/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchurl, perlPackages, mutt }:
+
+stdenv.mkDerivation rec {
+  name = "grepm-${version}";
+  version = "0.6";
+
+  src = fetchurl {
+    url = "http://www.barsnick.net/sw/grepm";
+    sha256 = "0ppprhfw06779hz1b10qvq62gsw73shccsav982dyi6xmqb6jqji";
+  };
+
+  phases = [ "installPhase" ];
+
+  buildInputs = [ perlPackages.grepmail mutt ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp -a $src $out/bin/grepm
+    chmod +x $out/bin/grepm
+    sed -i \
+      -e "s:^grepmail:${perlPackages.grepmail}/bin/grepmail:" \
+      -e "s:^\( *\)mutt:\1${mutt}/bin/mutt:" \
+      $out/bin/grepm
+  '';
+  
+  meta = with stdenv.lib; {
+    description = "Wrapper for grepmail utilizing mutt";
+    homepage = http://www.barsnick.net/sw/grepm.html;
+    license = licenses.free;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.romildo ];
+  };
+}
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 2878fec3c0959..5083c73fb148a 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -9,7 +9,7 @@
 }:
 
 let
-  version = "2.7.1";
+  version = "2.7.4";
   svn = subversionClient.override { perlBindings = true; };
 in
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
-    sha256 = "1zkbdmh5gvxalr8l1cwnirqq5raijmp2d0s36s6qabrlvqvq2yj7";
+    sha256 = "0ys55v2xrhzj74jrrqx75xpr458klnyxshh8d8swfpp0zgg79rfy";
   };
 
   patches = [
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index 5f99836743089..9a3ce8bed224b 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, bundler, fetchFromGitHub, bundlerEnv, defaultGemConfig, libiconv, ruby
+{ stdenv, lib, bundler, fetchFromGitHub, bundlerEnv, libiconv, ruby
 , tzdata, git, nodejs, procps
 }:
 
@@ -24,7 +24,7 @@ in
 
 stdenv.mkDerivation rec {
   name = "gitlab-${version}";
-  version = "8.5.1";
+  version = "8.5.7";
 
   buildInputs = [ ruby bundler tzdata git nodejs procps ];
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     owner = "gitlabhq";
     repo = "gitlabhq";
     rev = "v${version}";
-    sha256 = "1pn5r4axzjkgdjr59y3wgxsd2n83zfd5bry1g2w4c2qw0wcw7zqb";
+    sha256 = "0n76dafndhp0rwnnvf12zby9xap5fhcplld86pq2wyvqabg4s9yj";
   };
 
   patches = [
diff --git a/pkgs/applications/version-management/gitlab/gemset.nix b/pkgs/applications/version-management/gitlab/gemset.nix
index f63a356a1f6d3..b06652781837f 100644
--- a/pkgs/applications/version-management/gitlab/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/gemset.nix
@@ -975,10 +975,10 @@
     dependencies = ["actionpack" "activesupport" "rake" "thor"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07vmyrppa1x80whdjxhjij93qh9wvnmnxpsgn6fr9x2lqmzdyq5l";
+      sha256 = "cfff64cbc0e409341003c35fa2e576e6a8cd8259a9894d09f15c6123be73f146";
       type = "gem";
     };
-    version = "4.2.5.1";
+    version = "4.2.5.2";
   };
   rails-html-sanitizer = {
     dependencies = ["loofah"];
@@ -1011,10 +1011,10 @@
     dependencies = ["actionmailer" "actionpack" "actionview" "activejob" "activemodel" "activerecord" "activesupport" "railties" "sprockets-rails"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "03j6hfsqdl0bay59m4qjj2081s4vnhqagpl14qpm4wfrqrgpkcqb";
+      sha256 = "aa93c1b9eb8b535eee58280504e30237f88217699fe9bb016e458e5122eefa2e";
       type = "gem";
     };
-    version = "4.2.5.1";
+    version = "4.2.5.2";
   };
   rack-test = {
     dependencies = ["rack"];
@@ -2906,10 +2906,10 @@
     dependencies = ["i18n" "json" "minitest" "thread_safe" "tzinfo"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "16zgsvzwwf4hx3ywi2lz0dcm6d1ljsy6zr5k2q41amd7g62d886d";
+      sha256 = "80ad345adf7e2b72c5d90753c0df91eacc34f4de02b34cfbf60bcf6c83483031";
       type = "gem";
     };
-    version = "4.2.5.1";
+    version = "4.2.5.2";
   };
   activerecord-session_store = {
     dependencies = ["actionpack" "activerecord" "railties"];
@@ -2940,55 +2940,55 @@
     dependencies = ["activemodel" "activesupport" "arel"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1qj5ii36yn9kb0ljnl05xgpgvs7j9l20yg2phsssy0j31g1ymmc5";
+      sha256 = "c2b1b6a4c6b8542c2464b457dce4cac4915efcbd3d5acfba57102e58474c33f2";
       type = "gem";
     };
-    version = "4.2.5.1";
+    version = "4.2.5.2";
   };
   activemodel = {
     dependencies = ["activesupport" "builder"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1zr83avw82infmzdzpilk6xpv5r9fr8pxgf5ql16b3vysp6va57p";
+      sha256 = "09ce967be3086b34ae9fcbd919e714b2bdf72b8ab6e89b64aa74627267d93962";
       type = "gem";
     };
-    version = "4.2.5.1";
+    version = "4.2.5.2";
   };
   activejob = {
     dependencies = ["activesupport" "globalid"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1xfj7lwp1v3k9zscavzq87wbbn6y825angz4zpx4xsvlwf3dn7jc";
+      sha256 = "cecb9bbc55292dee064ca479990c6e50fa3e2273aac6722ce058d18c22383026";
       type = "gem";
     };
-    version = "4.2.5.1";
+    version = "4.2.5.2";
   };
   actionview = {
     dependencies = ["activesupport" "builder" "erubis" "rails-dom-testing" "rails-html-sanitizer"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1dp1gqh0yxpyydza1ada0jjbpww97qhnkj9c9pm9rg5jbmpzg12m";
+      sha256 = "e8ce01cf6cc822ec023a15a856a0fae0e078ebb232b95b722c23af4117d2d635";
       type = "gem";
     };
-    version = "4.2.5.1";
+    version = "4.2.5.2";
   };
   actionpack = {
     dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "13shdiwjfyqvfb11k0wqhcd7p7ix168fxd5l8m2pnn0bzskpswxv";
+      sha256 = "a22e1818f06b707433c9a76867932929751b5d57edbeacc258635a7b23da12cf";
       type = "gem";
     };
-    version = "4.2.5.1";
+    version = "4.2.5.2";
   };
   actionmailer = {
     dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1fxn8f53nnpgan5xl9i5lszl1m8yk4q6ayc33d9xfzsnvhavpl4n";
+      sha256 = "8cee5f2f1e58c8ada17cca696377443c0cbc9675df2b7eef97a04318876484b5";
       type = "gem";
     };
-    version = "4.2.5.1";
+    version = "4.2.5.2";
   };
   ace-rails-ap = {
     source = {
@@ -3014,4 +3014,4 @@
     };
     version = "2.3.2";
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/version-management/rcs/default.nix b/pkgs/applications/version-management/rcs/default.nix
index a829af8aa235e..44f72c3f0fe7c 100644
--- a/pkgs/applications/version-management/rcs/default.nix
+++ b/pkgs/applications/version-management/rcs/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  NIX_CFLAGS_COMPILE = if stdenv.isDarwin then "-std=gnu99" else null;
+  NIX_CFLAGS_COMPILE = [ "-std=c99" ];
 
   meta = {
     homepage = http://www.gnu.org/software/rcs/;
diff --git a/pkgs/applications/version-management/smartgithg/default.nix b/pkgs/applications/version-management/smartgithg/default.nix
index 420031a810193..292d6fc934b5a 100644
--- a/pkgs/applications/version-management/smartgithg/default.nix
+++ b/pkgs/applications/version-management/smartgithg/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   name = "smartgithg-${version}";
-  version = "7_1_0";
+  version = "7_1_2";
 
   src = fetchurl {
-    url = "http://www.syntevo.com/downloads/smartgit/smartgit-linux-${version}.tar.gz";
-    sha256 = "0nlv2ipmv3z1j4642gfsrpsgc2y4mxngiz6mz3nidrbrkz0ylsvy";
+    url = "http://www.syntevo.com/static/smart/download/smartgit/smartgit-linux-${version}.tar.gz";
+    sha256 = "18jw4g2akhj6h9w8378kacv7ws35ndcnc3kkhci9iypwy432ak8d";
   };
 
   buildInputs = [
@@ -58,5 +58,6 @@ stdenv.mkDerivation rec {
     homepage = http://www.syntevo.com/smartgit/;
     license = licenses.unfree;
     platforms = platforms.linux;
+    maintainers = with stdenv.lib.maintainers; [ jraygauthier ];
   };
 }
diff --git a/pkgs/applications/version-management/subversion/default.nix b/pkgs/applications/version-management/subversion/default.nix
index 219dd0babb7de..08b07b64b68b0 100644
--- a/pkgs/applications/version-management/subversion/default.nix
+++ b/pkgs/applications/version-management/subversion/default.nix
@@ -17,13 +17,13 @@ assert javahlBindings -> jdk != null && perl != null;
 
 let
 
-  common = { version, sha1 }: stdenv.mkDerivation (rec {
+  common = { version, sha256 }: stdenv.mkDerivation (rec {
     inherit version;
     name = "subversion-${version}";
 
     src = fetchurl {
       url = "mirror://apache/subversion/${name}.tar.bz2";
-      inherit sha1;
+      inherit sha256;
     };
 
     buildInputs = [ zlib apr aprutil sqlite ]
@@ -89,12 +89,12 @@ in {
 
   subversion18 = common {
     version = "1.8.15";
-    sha1 = "680acf88f0db978fbbeac89ed63776d805b918ef";
+    sha256 = "0b68rjy1sjd66nqcswrm1bhda3vk2ngkgs6drcanmzbcd3vs366g";
   };
 
   subversion19 = common {
     version = "1.9.3";
-    sha1 = "27e8df191c92095f48314a415194ec37c682cbcf";
+    sha256 = "8bbf6bb125003d88ee1c22935a36b7b1ab7d957e0c8b5fbfe5cb6310b6e86ae0";
   };
 
 }
diff --git a/pkgs/applications/video/dvdbackup/default.nix b/pkgs/applications/video/dvdbackup/default.nix
new file mode 100644
index 0000000000000..cb2a69b53ca97
--- /dev/null
+++ b/pkgs/applications/video/dvdbackup/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, libdvdread, libdvdcss, dvdauthor }:
+
+stdenv.mkDerivation rec {
+  version = "0.4.2";
+  name = "dvdbackup-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/dvdbackup/${name}.tar.xz";
+    sha256 = "1rl3h7waqja8blmbpmwy01q9fgr5r0c32b8dy3pbf59bp3xmd37g";
+  };
+
+  buildInputs = [ libdvdread libdvdcss dvdauthor ];
+
+  meta = {
+    description = "A tool to rip video DVDs from the command line";
+    homepage = http://dvdbackup.sourceforge.net/;
+    license = stdenv.lib.licenses.gpl3Plus;
+    maintainers = [ stdenv.lib.maintainers.bradediger ];
+  };
+}
diff --git a/pkgs/applications/video/kodi/plugins.nix b/pkgs/applications/video/kodi/plugins.nix
index 96c47a15ef1ca..0ad638dd7054e 100644
--- a/pkgs/applications/video/kodi/plugins.nix
+++ b/pkgs/applications/video/kodi/plugins.nix
@@ -89,41 +89,46 @@ in
     };
   }).override { buildInputs = [ unzip ]; };
 
-  urlresolver = (mkKodiPlugin rec {
-
-    plugin = "urlresolver";
-    namespace = "script.module.urlresolver";
-    version = "2.10.0";
-
-    src = fetchFromGitHub {
-      name = plugin + "-" + version + ".tar.gz";
-      owner = "Eldorados";
-      repo = namespace;
-      rev = "72b9d978d90d54bb7a0224a1fd2407143e592984";
-      sha256 = "0r5glfvgy9ri3ar9zdkvix8lalr1kfp22fap2pqp739b6k2iqir6";
+  hyper-launcher = let
+    pname = "hyper-launcher";
+    version = "1.2.0";
+    src = fetchFromGitHub rec {
+      name = pname + "-" + version + ".tar.gz";
+      owner = "teeedubb";
+      repo = owner + "-xbmc-repo";
+      rev = "9bd170407436e736d2d709f8af9968238594669c";
+      sha256 = "019nqf7kixicnrzkg671x4yq723igjkhfl8hz5bifi9gx2qcy8hy";
     };
-
     meta = with stdenv.lib; {
-      homepage = "https://github.com/Eldorados/urlresolver";
-      description = "Resolve common video host URL's to be playable in XBMC/Kodi";
+      homepage = http://forum.kodi.tv/showthread.php?tid=258159;
+      description = "A ROM launcher for Kodi that uses HyperSpin assets.";
       maintainers = with maintainers; [ edwtjo ];
     };
-  }).override {
-    postPatch = "sed -i -e 's,settings_file = os.path.join(addon_path,settings_file = os.path.join(profile_path,g' lib/urlresolver/common.py";
+  in {
+    service = mkKodiPlugin {
+      plugin = pname + "-service";
+      namespace = "service.hyper.launcher";
+      inherit version src meta;
+    };
+    plugin = mkKodiPlugin {
+      plugin = pname;
+      namespace = "plugin.hyper.launcher";
+      inherit version src meta;
+    };
   };
 
   salts = mkKodiPlugin rec {
 
     plugin = "salts";
     namespace = "plugin.video.salts";
-    version = "2.0.6";
+    version = "2.0.19";
 
     src = fetchFromGitHub {
       name = plugin + "-" + version + ".tar.gz";
       owner = "tknorris";
       repo = plugin;
-      rev = "5100565bec5818cdcd8a891ab6a6d67b0018e070";
-      sha256 = "00nlcddmgzyi3462i12qikdryfwqzqd1i30rkp485ay16akyj0lr";
+      rev = "9c1882bad35cab9e62687847e097c37a576b900d";
+      sha256 = "0saq578xsxvyg1v8jg2m3131hfrr95gv74b2npxr7g715yyx5bjq";
     };
 
     meta = with stdenv.lib; {
@@ -137,14 +142,14 @@ in
 
     plugin = "svtplay";
     namespace = "plugin.video.svtplay";
-    version = "4.0.21";
+    version = "4.0.23";
 
     src = fetchFromGitHub {
       name = plugin + "-" + version + ".tar.gz";
       owner = "nilzen";
       repo = "xbmc-" + plugin;
-      rev = "1fb099dcddc65e58ca8691d19de657321b1b1fc2";
-      sha256 = "178krh8kzll7cprqwyhydb41b1jh961av875bm5yfdlplzaiynm0";
+      rev = "80b6d241adb046c105ceb63d637da3f7f3684f1a";
+      sha256 = "1236kanzl4dra78whpwic1r5iifaj3f27qycia9jr54z01id083s";
     };
 
     meta = with stdenv.lib; {
@@ -166,13 +171,13 @@ in
 
     plugin = "steam-launcher";
     namespace = "script.steam.launcher";
-    version = "3.1.1";
+    version = "3.1.4";
 
     src = fetchFromGitHub rec {
       owner = "teeedubb";
       repo = owner + "-xbmc-repo";
-      rev = "bb66db7c4927619485373699ff865a9b00e253bb";
-      sha256 = "1skjkz0h6nkg04vylhl4zzavf5lba75j0qbgdhb9g7h0a98jz7s4";
+      rev = "db67704c3e16bdcdd3bdfe2926c609f1f6bdc4fb";
+      sha256 = "001a7zs3a4jfzj8ylxv2klc33mipmqsd5aqax7q81fbgwdlndvbm";
     };
 
     meta = with stdenv.lib; {
@@ -191,23 +196,22 @@ in
     propagatedBuildinputs = [ steam ];
   };
 
-  t0mm0-common = mkKodiPlugin rec {
-
-    plugin = "t0mm0-common";
-    namespace = "script.module.t0mm0.common";
-    version = "0.0.1";
+  pdfreader = mkKodiPlugin rec {
+    plugin = "pdfreader";
+    namespace = "plugin.image.pdf";
+    version = "1.0.2";
 
-    src = fetchFromGitHub {
+    src = fetchFromGitHub rec {
       name = plugin + "-" + version + ".tar.gz";
-      owner = "t0mm0";
-      repo = "xbmc-urlresolver";
-      rev = "ab16933a996a9e77b572953c45e70900c723d6e1";
-      sha256 = "1yd00md8iirizzaiqy6fv1n2snydcpqvp2f9irzfzxxi3i9asb93";
+      owner = "teeedubb";
+      repo = owner + "-xbmc-repo";
+      rev = "0a405b95208ced8a1365ad3193eade8d1c2117ce";
+      sha256 = "1iv7d030z3xvlflvp4p5v3riqnwg9g0yvzxszy63v1a6x5kpjkqa";
     };
 
     meta = with stdenv.lib; {
-      homepage = "https://github.com/t0mm0/xbmc-urlresolver/";
-      description = "t0mm0's common stuff";
+      homepage = http://forum.kodi.tv/showthread.php?tid=187421;
+      descritpion = "A comic book reader";
       maintainers = with maintainers; [ edwtjo ];
     };
   };
@@ -241,7 +245,51 @@ in
     # them. Symlinking .so, as setting LD_LIBRARY_PATH is of no use
     installPhase = ''
       make install
-      ln -s $out/lib/kodi/addons/pvr.hts/pvr.hts.so $out/share/kodi/addons/pvr.hts
+      ln -s $out/lib/kodi/addons/pvr.hts/pvr.hts.so* $out/share/kodi/addons/pvr.hts
     '';
   };
+
+  t0mm0-common = mkKodiPlugin rec {
+
+    plugin = "t0mm0-common";
+    namespace = "script.module.t0mm0.common";
+    version = "0.0.1";
+
+    src = fetchFromGitHub {
+      name = plugin + "-" + version + ".tar.gz";
+      owner = "t0mm0";
+      repo = "xbmc-urlresolver";
+      rev = "ab16933a996a9e77b572953c45e70900c723d6e1";
+      sha256 = "1yd00md8iirizzaiqy6fv1n2snydcpqvp2f9irzfzxxi3i9asb93";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = "https://github.com/t0mm0/xbmc-urlresolver/";
+      description = "t0mm0's common stuff";
+      maintainers = with maintainers; [ edwtjo ];
+    };
+  };
+
+  urlresolver = (mkKodiPlugin rec {
+
+    plugin = "urlresolver";
+    namespace = "script.module.urlresolver";
+    version = "2.10.0";
+
+    src = fetchFromGitHub {
+      name = plugin + "-" + version + ".tar.gz";
+      owner = "Eldorados";
+      repo = namespace;
+      rev = "72b9d978d90d54bb7a0224a1fd2407143e592984";
+      sha256 = "0r5glfvgy9ri3ar9zdkvix8lalr1kfp22fap2pqp739b6k2iqir6";
+    };
+
+    meta = with stdenv.lib; {
+      homepage = "https://github.com/Eldorados/urlresolver";
+      description = "Resolve common video host URL's to be playable in XBMC/Kodi";
+      maintainers = with maintainers; [ edwtjo ];
+    };
+  }).override {
+    postPatch = "sed -i -e 's,settings_file = os.path.join(addon_path,settings_file = os.path.join(profile_path,g' lib/urlresolver/common.py";
+  };
 }
diff --git a/pkgs/applications/video/makemkv/default.nix b/pkgs/applications/video/makemkv/default.nix
index b65dfe921c490..30fd9a57c4b6d 100644
--- a/pkgs/applications/video/makemkv/default.nix
+++ b/pkgs/applications/video/makemkv/default.nix
@@ -4,17 +4,17 @@
 
 stdenv.mkDerivation rec {
   name = "makemkv-${ver}";
-  ver = "1.9.7";
+  ver = "1.9.9";
   builder = ./builder.sh;
 
   src_bin = fetchurl {
     url = "http://www.makemkv.com/download/makemkv-bin-${ver}.tar.gz";
-    sha256 = "1b1kdfs89ms2vyi4406ydw01py0mvvij01rx9anblgy10bc0yvfy";
+    sha256 = "1rsmsfyxjh18bdj93gy7whm4j6k1098zfak8napxsqfli7dyijb6";
   };
 
   src_oss = fetchurl {
     url = "http://www.makemkv.com/download/makemkv-oss-${ver}.tar.gz";
-    sha256 = "169fl1v3i133ihldyfq3akj3x30qsxndw7q52vv90gmn5r52bzb9";
+    sha256 = "070x8l88nv70abd9gy8jchs09mh09x6psjc0zs4vplk61cbqk3b0";
   };
 
   buildInputs = [openssl qt4 mesa zlib pkgconfig libav];
diff --git a/pkgs/applications/video/mjpg-streamer/default.nix b/pkgs/applications/video/mjpg-streamer/default.nix
index 7cacc4fcf05ef..5409cf9f2f7f0 100644
--- a/pkgs/applications/video/mjpg-streamer/default.nix
+++ b/pkgs/applications/video/mjpg-streamer/default.nix
@@ -1,34 +1,31 @@
-{stdenv, fetchsvn, pkgconfig, libjpeg, imagemagick, libv4l}:
+{ stdenv, fetchFromGitHub, cmake, libjpeg }:
 
 stdenv.mkDerivation rec {
-  rev = "182";
-  name = "mjpg-streamer-${rev}";
+  name = "mjpg-streamer-${version}";
+  version = "2016-03-08";
 
-  src = fetchsvn {
-    url = https://mjpg-streamer.svn.sourceforge.net/svnroot/mjpg-streamer/mjpg-streamer;
-    inherit rev;
-    sha256 = "008k2wk6xagprbiwk8fvzbz4dd6i8kzrr9n62gj5i1zdv7zcb16q";
+  src = fetchFromGitHub {
+    owner = "jacksonliam";
+    repo = "mjpg-streamer";
+    rev = "4060cb64e3557037fd404d10e1c1d076b672e9e8";
+    sha256 = "0g7y832jsz4ylmq9qp2l4fq6bm8l6dhsbi60fr5jfqpx4l0pia8m";
   };
 
-  patchPhase = ''
-    substituteInPlace Makefile "make -C plugins\/input_gspcav1" "# make -C plugins\/input_gspcav1"
-    substituteInPlace Makefile "cp plugins\/input_gspcav1\/input_gspcav1.so" "# cp plugins\/input_gspcav1\/input_gspcav1.so"
+  prePatch = ''
+    cd mjpg-streamer-experimental
   '';
 
-  postFixup = ''
-    patchelf --set-rpath "$(patchelf --print-rpath $out/bin/mjpg_streamer):$out/lib:$out/lib/plugins" $out/bin/mjpg_streamer
-  '';
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ libjpeg ];
 
-  makeFlags = "DESTDIR=$(out)";
-
-  preInstall = ''
-    mkdir -p $out/{bin,lib}
+  postFixup = ''
+    patchelf --set-rpath "$(patchelf --print-rpath $out/bin/mjpg_streamer):$out/lib/mjpg-streamer" $out/bin/mjpg_streamer
   '';
 
-  buildInputs = [ pkgconfig libjpeg imagemagick libv4l ];
-  
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://sourceforge.net/projects/mjpg-streamer/;
     description = "MJPG-streamer takes JPGs from Linux-UVC compatible webcams, filesystem or other input plugins and streams them as M-JPEG via HTTP to webbrowsers, VLC and other software";
+    platforms = platforms.linux;
+    licenses = licenses.gpl2;
   };
 }
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index 54bd2b5f97975..05bd5ad980bdb 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     (optional withGUI qt5.qtbase)
   ];
 
-  preConfigure = "./autogen.sh";
+  preConfigure = "./autogen.sh; patchShebangs .";
   buildPhase   = "./drake -j $NIX_BUILD_CORES";
   installPhase = "./drake install -j $NIX_BUILD_CORES";
 
diff --git a/pkgs/applications/video/pitivi/default.nix b/pkgs/applications/video/pitivi/default.nix
index f135630a9a1b5..d488a3718b745 100644
--- a/pkgs/applications/video/pitivi/default.nix
+++ b/pkgs/applications/video/pitivi/default.nix
@@ -23,7 +23,6 @@ in stdenv.mkDerivation rec {
     '';
     license     = licenses.lgpl21Plus;
     platforms   = platforms.linux;
-    maintainers = with maintainers; [ iyzsong ];
   };
 
   nativeBuildInputs = [ pkgconfig intltool itstool makeWrapper ];
diff --git a/pkgs/applications/video/popcorntime/default.nix b/pkgs/applications/video/popcorntime/default.nix
index e74c8e9a5a8db..f2bc3e7016184 100644
--- a/pkgs/applications/video/popcorntime/default.nix
+++ b/pkgs/applications/video/popcorntime/default.nix
@@ -1,53 +1,43 @@
-{ lib, stdenv, fetchurl, runCommand, makeWrapper, nwjs, zip }:
+{ lib, stdenv, fetchurl, makeWrapper, nwjs, zip }:
 
 let
-  version = "0.3.8-3";
+  arch = if stdenv.system == "x86_64-linux" then "64"
+    else if stdenv.system == "i686-linux"   then "32" 
+    else throw "Unsupported system ${stdenv.system}";
 
-  popcorntimePackage = stdenv.mkDerivation rec {
-    name = "popcorntime-${version}";
-    src = if stdenv.system == "x86_64-linux" then
-        fetchurl {
-          url = "http://get.popcorntime.io/build/Popcorn-Time-${version}-Linux-64.tar.xz";
-          sha256 = "0q8c6m9majgv5a6hjl1b2ndmq4xx05zbarsydhqkivhh9aymvxgm";
-        }
-      else if stdenv.system == "i686-linux" then
-        fetchurl {
-          url = "https://get.popcorntime.io/build/Popcorn-Time-${version}-Linux-32.tar.xz";
-          sha256 = "1dz1cp31qbwamm9pf8ydmzzhnb6d9z73bigdv3y74dgicz3dpr92";
-        }
-      else throw "Unsupported system ${stdenv.system}";
+in stdenv.mkDerivation rec {
+  name = "popcorntime-${version}";
+  version = "0.3.9";
 
-    sourceRoot = ".";
+  src = fetchurl {
+    url = "http://get.popcorntime.sh/build/Popcorn-Time-${version}-Linux-${arch}.tar.xz";
+    sha256 =
+      if arch == "64"
+      then "0qaqdz45frgiy440jyz6hikhklx2yp08qp94z82r03dkbf4a2hvx"
+      else "0y08a42pm681s97lkczdq5dblxl2jbr850hnl85hknl3ynag9kq4";
+  };
 
-    buildInputs = [ zip ];
+  dontPatchELF = true;
+  sourceRoot   = "linux${arch}";
+  buildInputs  = [ zip makeWrapper ];
 
-    buildPhase = ''
-      rm Popcorn-Time install
-      zip -r package.nw package.json src node_modules
-      cat ${nwjs}/bin/nw package.nw > Popcorn-Time
-      chmod 555 Popcorn-Time
-    '';
+  buildPhase = ''
+    rm Popcorn-Time
+    cat ${nwjs}/bin/nw nw.pak > Popcorn-Time
+    chmod 555 Popcorn-Time
+  '';
 
-    installPhase = ''
-      mkdir -p $out
-      cp -r * $out/
-    '';
+  installPhase = ''
+    mkdir -p $out/bin
+    cp -r * $out/
+    makeWrapper $out/Popcorn-Time $out/bin/popcorntime
+  '';
 
-    dontPatchELF = true;
+  meta = with stdenv.lib; {
+    homepage = https://popcorntime.sh/;
+    description = "An application that streams movies and TV shows from torrents";
+    license = stdenv.lib.licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ bobvanderlinden rnhmjoj ];
   };
-in
-  runCommand "popcorntime-${version}" {
-    buildInputs = [ makeWrapper ];
-    meta = with stdenv.lib; {
-      homepage = http://popcorntime.io/;
-      description = "An application that streams movies and TV shows from torrents";
-      license = stdenv.lib.licenses.gpl3;
-      platforms = platforms.linux;
-      maintainers = with maintainers; [ bobvanderlinden ];
-      broken = true;  # popcorntime.io is dead
-    };
-  }
-  ''
-    mkdir -p $out/bin
-    makeWrapper ${popcorntimePackage}/Popcorn-Time $out/bin/popcorntime
-  ''
+}
diff --git a/pkgs/applications/video/subtitleeditor/default.nix b/pkgs/applications/video/subtitleeditor/default.nix
index 7c42aebf2bcf8..c9655e2a4f27d 100644
--- a/pkgs/applications/video/subtitleeditor/default.nix
+++ b/pkgs/applications/video/subtitleeditor/default.nix
@@ -1,44 +1,65 @@
-{ stdenv, fetchurl, desktop_file_utils, enchant, gnome, gstreamer, gstreamermm,
-  gst_plugins_base, gst_plugins_good, intltool, hicolor_icon_theme,
-  libsigcxx, libxmlxx, makeWrapper, xdg_utils, pkgconfig } :
+{ stdenv, fetchurl, pkgconfig, autoconf, automake114x, intltool,
+  desktop_file_utils, enchant, gnome3, gst_all_1, hicolor_icon_theme,
+  libsigcxx, libxmlxx, xdg_utils, isocodes, wrapGAppsHook } :
 
 let
-  ver_maj = "0.41";
-  ver_min = "0";
+  ver_maj = "0.52";
+  ver_min = "1";
 in
 
 stdenv.mkDerivation rec {
   name = "subtitle-editor-${ver_maj}.${ver_min}";
 
-  buildInputs =  [
-    desktop_file_utils enchant gnome.gtk gnome.gtkmm gstreamer gstreamermm
-    gst_plugins_base gst_plugins_good intltool hicolor_icon_theme libsigcxx libxmlxx
-    makeWrapper xdg_utils pkgconfig
-  ];
-
   src = fetchurl {
     url = "http://download.gna.org/subtitleeditor/${ver_maj}/subtitleeditor-${ver_maj}.${ver_min}.tar.gz";
-    md5 = "3c21ccd8296001dcb1a02c62396db1b6";
+    sha256 = "1m8j2i27kjaycvp09b0knp9in61jd2dj852hrx5hvkrby70mygjv";
   };
 
+  nativeBuildInputs =  [
+    autoconf automake114x pkgconfig intltool wrapGAppsHook
+  ];
+
+  buildInputs =  [
+    desktop_file_utils
+    enchant
+    gnome3.gtk
+    gnome3.gtkmm
+    gst_all_1.gstreamer
+    gst_all_1.gstreamermm
+    gst_all_1.gst-plugins-base
+    gst_all_1.gst-plugins-good
+    hicolor_icon_theme
+    libsigcxx
+    libxmlxx
+    xdg_utils
+    isocodes
+  ];
+
+  NIX_CFLAGS_COMPILE = "-std=c++11 -DDEBUG";
+
+  enableParallelBuilding = true;
+
   doCheck = true;
 
-  postInstall = ''
-    wrapProgram "$out/bin/subtitleeditor" --prefix \
-      GST_PLUGIN_SYSTEM_PATH ":" "$GST_PLUGIN_SYSTEM_PATH"                                                     \
+  patches = [ ./subtitleeditor-0.52.1-build-fix.patch ];
+
+  preConfigure = ''
+    # ansi overrides -std, see src_configure
+    sed 's/\(CXXFLAGS\) -ansi/\1/' -i configure.ac configure
   '';
 
+  configureFlags = [ "--disable-debug" ];
 
   meta = {
-    description = "GTK+2 application to edit video subtitles";
+    description = "GTK+3 application to edit video subtitles";
     longDescription = ''
-      Subtitle Editor is a GTK+2 tool to edit subtitles for GNU/Linux/*BSD. It can be
-      used for new subtitles or as a tool to transform, edit, correct and refine
-      existing subtitle. This program also shows sound waves, which makes it easier
-      to synchronise subtitles to voices.
+      Subtitle Editor is a GTK+3 tool to edit subtitles for GNU/Linux/*BSD. It
+      can be used for new subtitles or as a tool to transform, edit, correct
+      and refine existing subtitle. This program also shows sound waves, which
+      makes it easier to synchronise subtitles to voices.
       '';
     homepage = http://home.gna.org/subtitleeditor;
-    license = stdenv.lib.licenses.gpl3;
+    license = stdenv.lib.licenses.gpl3Plus;
     maintainers = [ stdenv.lib.maintainers.plcplc ];
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/video/subtitleeditor/subtitleeditor-0.52.1-build-fix.patch b/pkgs/applications/video/subtitleeditor/subtitleeditor-0.52.1-build-fix.patch
new file mode 100644
index 0000000000000..9cce5d2d98f2c
--- /dev/null
+++ b/pkgs/applications/video/subtitleeditor/subtitleeditor-0.52.1-build-fix.patch
@@ -0,0 +1,55 @@
+Fix build errors with gcc-4.9.3 -std=c++11 (after disabling -ansi)
+
+https://gna.org/bugs/?23714
+
+https://bugs.gentoo.org/show_bug.cgi?id=550764
+https://bugs.gentoo.org/show_bug.cgi?id=566328
+
+--- a/src/subtitleview.cc	2015-12-24 01:52:29.322622155 +0100
++++ b/src/subtitleview.cc	2015-12-24 01:52:44.210491213 +0100
+@@ -1363,7 +1363,7 @@
+ 	{
+ 		int num;
+ 		std::istringstream ss(event->string);
+-		bool is_num = ss >> num != 0; 
++		bool is_num = static_cast<bool>(ss >> num) != 0; 
+ 		// Update only if it's different
+ 		if(is_num != get_enable_search())
+ 			set_enable_search(is_num);
+--- a/src/utility.h	2015-12-24 01:49:42.205104858 +0100
++++ b/src/utility.h	2015-12-24 01:50:23.387737071 +0100
+@@ -91,7 +91,7 @@
+ 	std::istringstream s(src);
+ 	// return s >> dest != 0;
+ 
+-	bool state = s >> dest != 0;
++	bool state = static_cast<bool>(s >> dest) != 0;
+ 
+ 	if(!state)
+ 		se_debug_message(SE_DEBUG_UTILITY, "string:'%s'failed.", src.c_str());
+--- a/plugins/actions/dialoguize/dialoguize.cc	2015-12-24 01:06:24.125428454 +0100
++++ b/plugins/actions/dialoguize/dialoguize.cc	2015-12-24 01:06:42.630277006 +0100
+@@ -23,7 +23,7 @@
+  *	along with this program. If not, see <http://www.gnu.org/licenses/>.
+  */
+  
+-#include <auto_ptr.h>
++#include <memory>
+ #include "extension/action.h"
+ #include "i18n.h"
+ #include "debug.h"
+--- a/plugins/actions/documentmanagement/documentmanagement.old	2015-12-24 01:17:13.914730337 +0100
++++ b/plugins/actions/documentmanagement/documentmanagement.cc	2015-12-24 01:17:23.339640430 +0100
+@@ -178,9 +178,9 @@
+ 
+ 		ui_id = ui->new_merge_id();
+ 
+-		#define ADD_UI(name) ui->add_ui(ui_id, "/menubar/menu-file/"name, name, name);
+-		#define ADD_OPEN_UI(name) ui->add_ui(ui_id, "/menubar/menu-file/menu-open/"name, name, name);
+-		#define ADD_SAVE_UI(name) ui->add_ui(ui_id, "/menubar/menu-file/menu-save/"name, name, name);
++		#define ADD_UI(name) ui->add_ui(ui_id, "/menubar/menu-file/" name, name, name);
++		#define ADD_OPEN_UI(name) ui->add_ui(ui_id, "/menubar/menu-file/menu-open/" name, name, name);
++		#define ADD_SAVE_UI(name) ui->add_ui(ui_id, "/menubar/menu-file/menu-save/" name, name, name);
+ 
+ 		ADD_UI("new-document");
+ 		ADD_OPEN_UI("open-document");
diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
index c8a40277f7a9f..65bb6e61117c3 100644
--- a/pkgs/applications/virtualization/docker/default.nix
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -11,13 +11,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "docker-${version}";
-  version = "1.10.0";
+  version = "1.10.3";
 
   src = fetchFromGitHub {
     owner = "docker";
     repo = "docker";
     rev = "v${version}";
-    sha256 = "0c3a504gjdh4mxvifi0wcppqhd786d1gxncf04dqlq3l5wisfbbw";
+    sha256 = "0bmrafi0p3fm681y165ps97jki0a8ihl9f0bmpvi22nmc1v0sv6l";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/virtualization/rkt/default.nix b/pkgs/applications/virtualization/rkt/default.nix
index 713928eafedd3..4845d0b6065dc 100644
--- a/pkgs/applications/virtualization/rkt/default.nix
+++ b/pkgs/applications/virtualization/rkt/default.nix
@@ -9,7 +9,7 @@ let
   stage1Flavours = [ "coreos" "fly" "host" ];
 
 in stdenv.mkDerivation rec {
-  version = "1.1.0";
+  version = "1.2.0";
   name = "rkt-${version}";
   BUILDDIR="build-${name}";
 
@@ -17,7 +17,7 @@ in stdenv.mkDerivation rec {
       rev = "v${version}";
       owner = "coreos";
       repo = "rkt";
-      sha256 = "1pl5gbfd9wr8nh2h249g7sjs31jz21g24mw375zki9gdhhnpn570";
+      sha256 = "0icsrh118mm3rabbcr0gd3b22m5rizdbqlrfp9d79g591p7bjh38";
   };
 
   stage1BaseImage = fetchurl {
diff --git a/pkgs/applications/window-managers/awesome/default.nix b/pkgs/applications/window-managers/awesome/default.nix
index 181983e48b0d7..2991169a7025b 100644
--- a/pkgs/applications/window-managers/awesome/default.nix
+++ b/pkgs/applications/window-managers/awesome/default.nix
@@ -3,7 +3,7 @@
 , xcb-util-cursor, makeWrapper, pango, gobjectIntrospection, unclutter
 , compton, procps, iproute, coreutils, curl, alsaUtils, findutils, xterm
 , which, dbus, nettools, git, asciidoc, doxygen
-#, xmlto, docbook_xml_dtd_45 , docbook_xsl
+, xmlto, docbook_xml_dtd_45, docbook_xsl, findXMLCatalogs
 }:
 
 let
@@ -26,25 +26,29 @@ stdenv.mkDerivation rec {
     platforms   = platforms.linux;
   };
 
-  buildInputs = [
+  nativeBuildInputs = [
     asciidoc
-    cairo
     cmake
-    dbus
     doxygen
+    imagemagick
+    makeWrapper
+    pkgconfig
+    xmlto docbook_xml_dtd_45 docbook_xsl findXMLCatalogs
+  ];
+
+  buildInputs = [
+    cairo
+    dbus
     gdk_pixbuf
     gobjectIntrospection
     git
-    imagemagick
     lgi
     libpthreadstubs
     libstartup_notification
     libxdg_basedir
     lua
-    makeWrapper
     nettools
     pango
-    pkgconfig
     xcb-util-cursor
     xorg.libXau
     xorg.libXdmcp
@@ -55,7 +59,6 @@ stdenv.mkDerivation rec {
     xorg.xcbutilkeysyms
     xorg.xcbutilrenderutil
     xorg.xcbutilwm
-    #xmlto docbook_xml_dtd_45 docbook_xsl
   ];
 
   #cmakeFlags = "-DGENERATE_MANPAGES=ON";
diff --git a/pkgs/applications/window-managers/clfswm/default.nix b/pkgs/applications/window-managers/clfswm/default.nix
index 3b07bc5a654df..5761d94526d15 100644
--- a/pkgs/applications/window-managers/clfswm/default.nix
+++ b/pkgs/applications/window-managers/clfswm/default.nix
@@ -46,5 +46,6 @@ stdenv.mkDerivation rec {
     license     = licenses.gpl3;
     maintainers = with maintainers; [ robgssp ];
     platforms   = platforms.linux;
+    broken      = true;
   };
 }
diff --git a/pkgs/applications/window-managers/i3/default.nix b/pkgs/applications/window-managers/i3/default.nix
index 0833fde8c9e2f..ada6e8e742e26 100644
--- a/pkgs/applications/window-managers/i3/default.nix
+++ b/pkgs/applications/window-managers/i3/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "i3-${version}";
-  version = "4.11";
+  version = "4.12";
 
   src = fetchurl {
     url = "http://i3wm.org/downloads/${name}.tar.bz2";
-    sha256 = "0bwqklb6irgjmgvj7mlyz4brr4lggfm3zqmvclvxcbyrzc31xkkq";
+    sha256 = "1d3q3lgpjbkmcwzjhp0dfr0jq847silcfg087slcnj95ikh1r7p1";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/window-managers/openbox/default.nix b/pkgs/applications/window-managers/openbox/default.nix
index 326cd2a49f441..ba0c812ef6a64 100644
--- a/pkgs/applications/window-managers/openbox/default.nix
+++ b/pkgs/applications/window-managers/openbox/default.nix
@@ -3,7 +3,8 @@
 , imlib2, pango, libstartup_notification, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "openbox-3.6.1";
+  name = "openbox-${version}";
+  version = "3.6.1";
 
   buildInputs = [
     pkgconfig libxml2
@@ -40,5 +41,6 @@ stdenv.mkDerivation rec {
     description = "X window manager for non-desktop embedded systems";
     homepage = http://openbox.org/;
     license = stdenv.lib.licenses.gpl2Plus;
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/window-managers/stumpwm/default.nix b/pkgs/applications/window-managers/stumpwm/default.nix
index 88faae64be70a..c47a464a4fcac 100644
--- a/pkgs/applications/window-managers/stumpwm/default.nix
+++ b/pkgs/applications/window-managers/stumpwm/default.nix
@@ -67,6 +67,10 @@ stdenv.mkDerivation rec {
     echo ${xdpyinfo} > $out/nix-support/xdpyinfo
   '';
 
+  passthru = {
+    inherit sbcl lispPackages;
+  };
+
   meta = with stdenv.lib; {
     description = "A tiling window manager for X11";
     homepage    = https://github.com/stumpwm/;
diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix
index fa81971885a49..7f494f3e0f22a 100644
--- a/pkgs/applications/window-managers/sway/default.nix
+++ b/pkgs/applications/window-managers/sway/default.nix
@@ -1,21 +1,23 @@
-{ lib, stdenv, fetchurl, makeWrapper, cmake, pkgconfig
-, wayland, wlc, libxkbcommon, pixman, fontconfig, pcre, json_c, asciidoc, libxslt, dbus_libs
+{ stdenv, fetchFromGitHub
+, makeWrapper, cmake, pkgconfig, asciidoc, libxslt, docbook_xsl
+, wayland, wlc, libxkbcommon, pixman, fontconfig, pcre, json_c, dbus_libs
 }:
 
 stdenv.mkDerivation rec {
   name = "sway-${version}";
   version = "git-2016-02-08";
-  repo = "https://github.com/SirCmpwn/sway";
-  rev = "16e904634c65128610537bed7fcb16ac3bb45165";
 
-  src = fetchurl {
-    url = "${repo}/archive/${rev}.tar.gz";
-    sha256 = "52d6c4b49fea69e2a2c1b44b858908b7736301bdb9ed483c294bc54bb40e872e";
+  src = fetchFromGitHub {
+    owner = "Sircmpwn";
+    repo = "sway";
+
+    rev = "16e904634c65128610537bed7fcb16ac3bb45165";
+    sha256 = "04qvdjaarglq3qsjbb9crjkad3y1v7s51bk82sl8w26c71jbhklg";
   };
 
-  nativeBuildInputs = [ cmake pkgconfig ];
+  nativeBuildInputs = [ makeWrapper cmake pkgconfig asciidoc libxslt docbook_xsl ];
 
-  buildInputs = [ makeWrapper wayland wlc libxkbcommon pixman fontconfig pcre json_c asciidoc libxslt dbus_libs ];
+  buildInputs = [ wayland wlc libxkbcommon pixman fontconfig pcre json_c dbus_libs ];
 
   patchPhase = ''
     sed -i s@/etc/sway@$out/etc/sway@g CMakeLists.txt;
@@ -24,17 +26,17 @@ stdenv.mkDerivation rec {
   makeFlags = "PREFIX=$(out)";
   installPhase = "PREFIX=$out make install";
 
-  LD_LIBRARY_PATH = lib.makeLibraryPath [ wlc dbus_libs ];
+  LD_LIBRARY_PATH = stdenv.lib.makeLibraryPath [ wlc dbus_libs ];
   preFixup = ''
     wrapProgram $out/bin/sway \
       --prefix LD_LIBRARY_PATH : "${LD_LIBRARY_PATH}";
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "i3-compatible window manager for Wayland";
     homepage    = "http://swaywm.org";
-    license     = lib.licenses.mit;
-    platforms   = lib.platforms.linux;
-    maintainers = with lib.maintainers; [ ];
+    license     = licenses.mit;
+    platforms   = platforms.linux;
+    maintainers = with maintainers; [ ];
   };
 }